<?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>227851</bug_id>
          
          <creation_ts>2021-07-10 13:56:03 -0700</creation_ts>
          <short_desc>[JSC] Update test262</short_desc>
          <delta_ts>2021-07-10 14:01:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>mark.lam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1776162</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-10 13:56:03 -0700</bug_when>
    <thetext>[JSC] Update test262</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776163</commentid>
    <comment_count>1</comment_count>
      <attachid>433270</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-10 13:57:12 -0700</bug_when>
    <thetext>Created attachment 433270
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776165</commentid>
    <comment_count>2</comment_count>
      <attachid>433270</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-07-10 13:58:40 -0700</bug_when>
    <thetext>Comment on attachment 433270
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776169</commentid>
    <comment_count>3</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-10 13:59:19 -0700</bug_when>
    <thetext>No EWS bot is running test262. Landing now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776172</commentid>
    <comment_count>4</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-10 14:00:47 -0700</bug_when>
    <thetext>Committed r279809 (239572@main): &lt;https://commits.webkit.org/239572@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776173</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-07-10 14:01:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/80422632&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433270</attachid>
            <date>2021-07-10 13:57:12 -0700</date>
            <delta_ts>2021-07-10 13:58:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227851-20210710135711.patch</filename>
            <type>text/plain</type>
            <size>883011</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5ODA4CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxv
ZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDM5Y2NhZWIzYThlNWQxY2RlZTJiZjliYTU5NWVl
YTU0MWM4YjkyZTEuLmEyNTM1NmQxMjg1OTE5NWM0ZTNkNmUxZGNiZjdhYTFlZTk0ZDNjYTQgMTAw
NjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNzQ3IEBACisyMDIxLTA3LTEwICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5j
b20+CisKKyAgICAgICAgW0pTQ10gVXBkYXRlIHRlc3QyNjIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzg1MQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogdGVzdDI2Mi9jb25maWcueWFtbDoKKyAgICAg
ICAgKiB0ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sOgorICAgICAgICAqIHRlc3QyNjIvaGFybmVz
cy9jb21wYXJlQXJyYXkuanM6CisgICAgICAgIChhc3NlcnQuY29tcGFyZUFycmF5KToKKyAgICAg
ICAgKiB0ZXN0MjYyL2hhcm5lc3MvcmVnRXhwVXRpbHMuanM6CisgICAgICAgIChidWlsZFN0cmlu
Zyk6CisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIHRlc3QyNjIvaGFybmVzcy9zdGEu
anM6CisgICAgICAgIChUZXN0MjYyRXJyb3IudGhyb3dlcik6CisgICAgICAgICogdGVzdDI2Mi9o
YXJuZXNzL3Rlc3RJbnRsLmpzOgorICAgICAgICAoZ2V0TG9jYWxlU3VwcG9ydEluZm8pOgorICAg
ICAgICAqIHRlc3QyNjIvbGF0ZXN0LWNoYW5nZXMtc3VtbWFyeS50eHQ6CisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9yZWdleHAvbGVnYWN5LW9jdGFsLWVz
Y2FwZS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29w
dGlvbnMtbWF4Ynl0ZWxlbmd0aC1kaW1pbnVpdGl2ZS5qczogQWRkZWQuCisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtZXhj
ZXNzaXZlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1uZWdhdGl2ZS5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5n
dGgtb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAgICAgKG9wdGlvbnMubWF4Qnl0ZUxlbmd0aC50b1N0
cmluZyk6CisgICAgICAgIChvcHRpb25zLm1heEJ5dGVMZW5ndGgudmFsdWVPZik6CisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5n
dGgtcG9pc29uZWQuanM6IEFkZGVkLgorICAgICAgICAob3B0aW9ucy5nZXQgbWF4Qnl0ZUxlbmd0
aCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25z
LW1heGJ5dGVsZW5ndGgtdW5kZWZpbmVkLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlvbnMtbm9uLW9iamVjdC5qczogQWRkZWQuCisg
ICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4
Qnl0ZUxlbmd0aC9kZXRhY2hlZC1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvaW52b2tl
ZC1hcy1hY2Nlc3Nvci5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9pbnZva2VkLWFzLWZ1bmMuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL21heEJ5dGVMZW5ndGgvbGVuZ3RoLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL25hbWUu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIv
cHJvdG90eXBlL21heEJ5dGVMZW5ndGgvcHJvcC1kZXNjLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3Ro
L3JldHVybi1tYXhieXRlbGVuZ3RoLW5vbi1yZXNpemFibGUuanM6IEFkZGVkLgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5n
dGgvcmV0dXJuLW1heGJ5dGVsZW5ndGgtcmVzaXphYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3Ro
L3RoaXMtaGFzLW5vLWFycmF5YnVmZmVyZGF0YS1pbnRlcm5hbC5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxl
bmd0aC90aGlzLWlzLW5vdC1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvdGhpcy1pcy1z
aGFyZWRhcnJheWJ1ZmZlci5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL2RldGFjaGVkLWJ1ZmZlci5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90
b3R5cGUvcmVzaXphYmxlL2ludm9rZWQtYXMtYWNjZXNzb3IuanM6IEFkZGVkLgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9p
bnZva2VkLWFzLWZ1bmMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9sZW5ndGguanM6IEFkZGVkLgorICAg
ICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6
YWJsZS9uYW1lLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Fy
cmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvcHJvcC1kZXNjLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFi
bGUvcmV0dXJuLXJlc2l6YWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMtaGFzLW5vLWFycmF5
YnVmZmVyZGF0YS1pbnRlcm5hbC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMtaXMtbm90LW9iamVj
dC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMtaXMtc2hhcmVkYXJyYXlidWZmZXIuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBl
L3Jlc2l6ZS9kZXNjcmlwdG9yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvZXh0ZW5zaWJsZS5qczogQWRkZWQu
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUv
cmVzaXplL2xlbmd0aC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL25hbWUuanM6IEFkZGVkLgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9uZXct
bGVuZ3RoLWV4Y2Vzc2l2ZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL25ldy1sZW5ndGgtbmVnYXRpdmUuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL3Jlc2l6ZS9uZXctbGVuZ3RoLW5vbi1udW1iZXIuanM6IEFkZGVkLgorICAgICAgICAo
bmV3TGVuZ3RoLnRvU3RyaW5nKToKKyAgICAgICAgKG5ld0xlbmd0aC52YWx1ZU9mKToKKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUv
bm9uY29uc3RydWN0b3IuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtZ3Jvdy5qczogQWRkZWQuCisg
ICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1
ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUtemVyby1leHBsaWNpdC5qczog
QWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUtemVyby1pbXBs
aWNpdC5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUu
anM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWls
dC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hyaW5rLXplcm8tZXhw
bGljaXQuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hyaW5rLXpl
cm8taW1wbGljaXQuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hy
aW5rLmpzOiBBZGRlZC4KKyAgICAgICAgKGNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvdGhpcy1pcy1kZXRhY2hlZC5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvcmVzaXplL3RoaXMtaXMtbm90LWFycmF5YnVmZmVyLW9iamVjdC5qczogQWRkZWQu
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUv
cmVzaXplL3RoaXMtaXMtbm90LW9iamVjdC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtbm90LXJl
c2l6YWJsZS1hcnJheWJ1ZmZlci1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS90aGlzLWlzLXNoYXJl
ZGFycmF5YnVmZmVyLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9kZXNjcmlwdG9yLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFu
c2Zlci9leHRlbnNpYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRvLWxhcmdlci5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvdHJhbnNmZXIvZnJvbS1maXhlZC10by1zYW1lLmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9m
cm9tLWZpeGVkLXRvLXNtYWxsZXIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL2Zyb20tZml4ZWQtdG8temVy
by5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvdHJhbnNmZXIvZnJvbS1yZXNpemFibGUtdG8tbGFyZ2VyLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90
cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by1zYW1lLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLXJl
c2l6YWJsZS10by1zbWFsbGVyLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by16
ZXJvLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9sZW5ndGguanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL25hbWUuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL3RyYW5zZmVyL25ldy1sZW5ndGgtZXhjZXNzaXZlLmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9u
ZXctbGVuZ3RoLW5vbi1udW1iZXIuanM6IEFkZGVkLgorICAgICAgICAobmV3TGVuZ3RoLnRvU3Ry
aW5nKToKKyAgICAgICAgKG5ld0xlbmd0aC52YWx1ZU9mKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9ub25jb25zdHJ1Y3Rv
ci5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvdHJhbnNmZXIvdGhpcy1pcy1kZXRhY2hlZC5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIv
dGhpcy1pcy1ub3QtYXJyYXlidWZmZXItb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci90aGlzLWlz
LW5vdC1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL3RoaXMtaXMtc2hhcmVkYXJyYXlidWZmZXIu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJv
dG90eXBlL2J5dGVMZW5ndGgvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpzOiBBZGRlZC4K
KyAgICAgICAgKGNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L3Byb3RvdHlwZS9ieXRlTGVuZ3RoL3Jlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanM6
IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1p
bnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1h
dXRvLmpzOiBBZGRlZC4KKyAgICAgICAgKGNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRlT2Zmc2V0L3Jlc2l6YWJsZS1hcnJheS1i
dWZmZXItZml4ZWQuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEJpZ0ludDY0L3Jlc2l6YWJs
ZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEJpZ1VpbnQ2NC9yZXNpemFibGUt
YnVmZmVyLmpzOiBBZGRlZC4KKyAgICAgICAgKGNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRGbG9hdDMyL3Jlc2l6YWJsZS1idWZm
ZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEZsb2F0NjQvcmVzaXphYmxlLWJ1ZmZlci5q
czogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0SW50MTYvcmVzaXphYmxlLWJ1ZmZlci5qczogQWRk
ZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9E
YXRhVmlldy9wcm90b3R5cGUvZ2V0SW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qczogQWRkZWQuCisg
ICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9wcm90b3R5cGUvZ2V0SW50OC9yZXNpemFibGUtYnVmZmVyLmpzOiBBZGRlZC4KKyAgICAgICAg
KGNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3Rv
dHlwZS9nZXRVaW50MTYvcmVzaXphYmxlLWJ1ZmZlci5qczogQWRkZWQuCisgICAgICAgIChjYXRj
aCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUv
Z2V0VWludDMyL3Jlc2l6YWJsZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgor
ICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldFVp
bnQ4L3Jlc2l6YWJsZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldEJpZ0ludDY0
L3Jlc2l6YWJsZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldEJpZ1VpbnQ2NC9y
ZXNpemFibGUtYnVmZmVyLmpzOiBBZGRlZC4KKyAgICAgICAgKGNhdGNoKToKKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRGbG9hdDMyL3Jlc2l6
YWJsZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gpOgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldEZsb2F0NjQvcmVzaXphYmxl
LWJ1ZmZlci5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0SW50MTYvcmVzaXphYmxlLWJ1ZmZl
ci5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0SW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qczog
QWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9EYXRhVmlldy9wcm90b3R5cGUvc2V0SW50OC9yZXNpemFibGUtYnVmZmVyLmpzOiBBZGRlZC4K
KyAgICAgICAgKGNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L3Byb3RvdHlwZS9zZXRVaW50MTYvcmVzaXphYmxlLWJ1ZmZlci5qczogQWRkZWQuCisgICAg
ICAgIChjYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9w
cm90b3R5cGUvc2V0VWludDMyL3Jlc2l6YWJsZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAo
Y2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90
eXBlL3NldFVpbnQ4L3Jlc2l6YWJsZS1idWZmZXIuanM6IEFkZGVkLgorICAgICAgICAoY2F0Y2gp
OgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvRXJyb3IvY2F1c2VfYWJydXB0Lmpz
OgorICAgICAgICAoaGFzKToKKyAgICAgICAgKG9wdGlvbnMuZ2V0IGNhdXNlKToKKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vZGVzY3JpcHRvci5qczogQWRk
ZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293
bi5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9pbmhlcml0ZWRfZXhpc3RzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXIuanM6
IEFkZGVkLgorICAgICAgICAoYmFzZS5nZXQgZm9vKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRl
ci5qczogQWRkZWQuCisgICAgICAgIChiYXNlLmdldCBmb28pOgorICAgICAgICAoYmFzZS5zZXQg
Zm9vKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFz
b3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlcl9jb25maWd1cmFibGVfZW51bWVyYWJsZS5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2FuZF9zZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1l
cmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJs
ZV9lbnVtZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlcl9ub25jb25m
aWd1cmFibGVfbm9uZW51bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2NvbmZpZ3Vy
YWJsZV9lbnVtZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfY29uZmlndXJhYmxlX25v
bmVudW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMv
T2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlcl9ub25jb25maWd1cmFibGVfZW51
bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmpl
Y3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVt
ZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9ub253cml0YWJsZV9jb25maWd1cmFibGVfZW51bWVy
YWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3Qv
aGFzT3duL2hhc293bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfY29uZmlndXJhYmxlX25vbmVudW1l
cmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi9oYXNvd25faW5oZXJpdGVkX25vbndyaXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9lbnVt
ZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9ub253cml0YWJsZV9ub25jb25maWd1cmFibGVfbm9u
ZW51bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9P
YmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfc2V0dGVyLmpzOiBBZGRlZC4KKyAgICAgICAg
KGJhc2Uuc2V0IGZvbyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3Qv
aGFzT3duL2hhc293bl9pbmhlcml0ZWRfc2V0dGVyX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
aGFzb3duX2luaGVyaXRlZF9zZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNv
d25faW5oZXJpdGVkX3NldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qczogQWRkZWQu
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9p
bmhlcml0ZWRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2lu
aGVyaXRlZF93cml0YWJsZV9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qczogQWRkZWQuCisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0
ZWRfd3JpdGFibGVfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVk
X3dyaXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93
cml0YWJsZV9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9ub25leGlzdGVu
dC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9vd25fZ2V0dGVyLmpzOiBBZGRlZC4KKyAgICAgICAgKG8uZ2V0IGZvbyk6Cisg
ICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25f
Z2V0dGVyX2FuZF9zZXR0ZXIuanM6IEFkZGVkLgorICAgICAgICAoby5nZXQgZm9vKToKKyAgICAg
ICAgKG8uc2V0IGZvbyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3Qv
aGFzT3duL2hhc293bl9vd25fZ2V0dGVyX2FuZF9zZXR0ZXJfY29uZmlndXJhYmxlX2VudW1lcmFi
bGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25fb3duX2dldHRlcl9hbmRfc2V0dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJh
YmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9o
YXNPd24vaGFzb3duX293bl9nZXR0ZXJfYW5kX3NldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVy
YWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3Qv
aGFzT3duL2hhc293bl9vd25fZ2V0dGVyX2FuZF9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVu
dW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hh
c293bl9vd25fZ2V0dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9n
ZXR0ZXJfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9ub25j
b25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fbm9ud3JpdGFibGVfY29uZmln
dXJhYmxlX2VudW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWls
dC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX25vbndyaXRhYmxlX25vbmNvbmZpZ3VyYWJs
ZV9lbnVtZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L09iamVjdC9oYXNPd24vaGFzb3duX293bl9ub253cml0ZWFibGVfY29uZmlndXJhYmxlX25vbmVu
dW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L2hhc093bi9oYXNvd25fb3duX25vbndyaXRlYWJsZV9ub25jb25maWd1cmFibGVfbm9uZW51
bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmpl
Y3QvaGFzT3duL2hhc293bl9vd25fcHJvcGVydHlfZXhpc3RzLmpzOiBBZGRlZC4KKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXIu
anM6IEFkZGVkLgorICAgICAgICAoby5zZXQgZm9vKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXJfY29uZmlndXJhYmxlX2Vu
dW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L2hhc093bi9oYXNvd25fb3duX3NldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L2hhc293bl9vd25fc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293
bl9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3dyaXRh
YmxlX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl93cml0YWJsZV9jb25maWd1
cmFibGVfbm9uZW51bWVyYWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fd3JpdGFibGVfbm9uY29uZmlndXJhYmxl
X2VudW1lcmFibGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMv
T2JqZWN0L2hhc093bi9oYXNvd25fb3duX3dyaXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVt
ZXJhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vbGVuZ3RoLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vbmFtZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL25vdC1hLWNvbnN0cnVjdG9yLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vcHJvdG90eXBlLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
c3ltYm9sX293bl9wcm9wZXJ0eS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJvbF9wcm9wZXJ0eV90b1ByaW1pdGl2ZS5qczogQWRk
ZWQuCisgICAgICAgICh3cmFwcGVyLlN5bWJvbC50b1ByaW1pdGl2ZSk6CisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJvbF9wcm9wZXJ0eV90b1N0cmlu
Zy5qczogQWRkZWQuCisgICAgICAgICh3cmFwcGVyLnRvU3RyaW5nKToKKyAgICAgICAgKHdyYXBw
ZXIudmFsdWVPZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL3N5bWJvbF9wcm9wZXJ0eV92YWx1ZU9mLmpzOiBBZGRlZC4KKyAgICAgICAgKHdyYXBwZXIu
dmFsdWVPZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L3Rvb2JqZWN0X2JlZm9yZV90b3Byb3BlcnR5a2V5LmpzOiBBZGRlZC4KKyAgICAgICAgKGNvZXJj
aWJsZUtleTEuZ2V0IHRvU3RyaW5nKToKKyAgICAgICAgKGNvZXJjaWJsZUtleTEuZ2V0IHZhbHVl
T2YpOgorICAgICAgICAoY29lcmNpYmxlS2V5Mi5TeW1ib2wudG9QcmltaXRpdmUpOgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi90b29iamVjdF9udWxsLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
dG9vYmplY3RfdW5kZWZpbmVkLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZlLWVsZW1lbnQtZnVuY3Rpb24tZXh0ZW5zaWJsZS5q
czogUmVtb3ZlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFj
ZS9yZXNvbHZlLWVsZW1lbnQtZnVuY3Rpb24tbmFtZS5qczogUmVtb3ZlZC4KKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZlLWVsZW1lbnQtZnVuY3Rp
b24tbm9uY29uc3RydWN0b3IuanM6IFJlbW92ZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9Qcm9taXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1bmN0aW9uLXByb3RvdHlwZS5q
czogUmVtb3ZlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5
QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1kaW1pbnVpdGl2ZS5qczogQWRkZWQuCisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1h
eGJ5dGVsZW5ndGgtZXhjZXNzaXZlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1uZWdhdGl2
ZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJh
eUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAgICAg
KG9wdGlvbnMubWF4Qnl0ZUxlbmd0aC50b1N0cmluZyk6CisgICAgICAgIChvcHRpb25zLm1heEJ5
dGVMZW5ndGgudmFsdWVPZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFy
ZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtcG9pc29uZWQuanM6IEFkZGVkLgor
ICAgICAgICAob3B0aW9ucy5nZXQgbWF4Qnl0ZUxlbmd0aCk6CisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtdW5k
ZWZpbmVkLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL29wdGlvbnMtbm9uLW9iamVjdC5qczogQWRkZWQuCisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9kZXNj
cmlwdG9yLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2V4dGVuc2libGUuanM6IEFkZGVkLgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dy
b3cvZ3Jvdy1sYXJnZXItc2l6ZS5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jv
dy9ncm93LXNhbWUtc2l6ZS5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICog
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9n
cm93LXNtYWxsZXItc2l6ZS5qczogQWRkZWQuCisgICAgICAgIChjYXRjaCk6CisgICAgICAgICog
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9s
ZW5ndGguanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVk
QXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvbmFtZS5qczogQWRkZWQuCisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9uZXct
bGVuZ3RoLWV4Y2Vzc2l2ZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9uZXctbGVuZ3RoLW5lZ2F0aXZl
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5
QnVmZmVyL3Byb3RvdHlwZS9ncm93L25ldy1sZW5ndGgtbm9uLW51bWJlci5qczogQWRkZWQuCisg
ICAgICAgIChuZXdMZW5ndGgudG9TdHJpbmcpOgorICAgICAgICAobmV3TGVuZ3RoLnZhbHVlT2Yp
OgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJv
dG90eXBlL2dyb3cvbm9uY29uc3RydWN0b3IuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvdGhpcy1pcy1u
b3QtYXJyYXlidWZmZXItb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L3RoaXMtaXMtbm90LW9i
amVjdC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRB
cnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLW5vdC1yZXNpemFibGUtYXJyYXlidWZm
ZXItb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1No
YXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L3RoaXMtaXMtc2hhcmVkYXJyYXlidWZmZXIu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlC
dWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL2ludm9rZWQtYXMtYWNjZXNzb3IuanM6IEFkZGVkLgor
ICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90
eXBlL2dyb3dhYmxlL2ludm9rZWQtYXMtZnVuYy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvd2FibGUvbGVu
Z3RoLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFy
cmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9uYW1lLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJs
ZS9wcm9wLWRlc2MuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMv
U2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3JldHVybi1ncm93YWJsZS5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZl
ci9wcm90b3R5cGUvZ3Jvd2FibGUvdGhpcy1oYXMtbm8tYXJyYXlidWZmZXJkYXRhLWludGVybmFs
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5
QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS90aGlzLWlzLWFycmF5YnVmZmVyLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3Rv
dHlwZS9ncm93YWJsZS90aGlzLWlzLW5vdC1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVM
ZW5ndGgvaW52b2tlZC1hcy1hY2Nlc3Nvci5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9p
bnZva2VkLWFzLWZ1bmMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1p
bnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvbGVuZ3RoLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVy
L3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL25hbWUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5n
dGgvcHJvcC1kZXNjLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhieXRl
bGVuZ3RoLWdyb3dhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhi
eXRlbGVuZ3RoLW5vbi1ncm93YWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlz
LWhhcy1uby1hcnJheWJ1ZmZlcmRhdGEtaW50ZXJuYWwuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVM
ZW5ndGgvdGhpcy1pcy1hcnJheWJ1ZmZlci5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90
aGlzLWlzLW5vdC1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWls
dC1pbnMvU3ltYm9sL2Zvci9kZXNjcmlwdGlvbi5qczogQWRkZWQuCisgICAgICAgIChzeW1ib2wu
U3ltYm9sLnRvU3RyaW5nKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBv
cmFsL25vdy9pbnN0YW50L2V4dGVuc2libGUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvbGVuZ3RoLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L25hbWUu
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93
L2luc3RhbnQvbm90LWEtY29uc3RydWN0b3IuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvcHJvcC1kZXNjLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L3Jl
dHVybi12YWx1ZS1kaXN0aW5jdC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UZW1wb3JhbC9ub3cvaW5zdGFudC9yZXR1cm4tdmFsdWUtcHJvdG90eXBlLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0
YW50L3JldHVybi12YWx1ZS12YWx1ZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGltZVpvbmUvZXh0ZW5zaWJsZS5qczogQWRkZWQuCisg
ICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGltZVpvbmUvbGVu
Z3RoLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFs
L25vdy90aW1lWm9uZS9uYW1lLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1RlbXBvcmFsL25vdy90aW1lWm9uZS9uZXctb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy90aW1lWm9uZS9ub3QtYS1j
b25zdHJ1Y3Rvci5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
ZW1wb3JhbC9ub3cvdGltZVpvbmUvcHJvcC1kZXNjLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy90aW1lWm9uZS9yZXR1cm4tdmFsdWUuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90
b3R5cGUvYXQvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qczogQWRkZWQu
CisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuY2F0Y2gpOgorICAg
ICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYnl0ZUxl
bmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanM6IEFkZGVkLgorICAgICAgICAodGVz
dFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVMZW5ndGgvcmVzaXphYmxlLWFycmF5LWJ1
ZmZlci1maXhlZC5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90
b3R5cGUvYnl0ZU9mZnNldC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanM6IEFkZGVkLgor
ICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXph
YmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheS9wcm90b3R5cGUvY29weVdpdGhpbi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQt
b2YtYm91bmRzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVj
dG9ycy5UQS5jYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5L3Byb3RvdHlwZS9lbnRyaWVzL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3Vu
ZHMuanM6IEFkZGVkLgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzLlRB
LmNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJv
dG90eXBlL2V2ZXJ5L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFk
ZGVkLgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToK
KyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5hcnJheS5ldmVyeSk6
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9m
aWxsL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFkZGVkLgorICAg
ICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToKKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbHRlci9yZXR1
cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRl
c3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5jYXRjaCk6CisgICAgICAgICh0ZXN0V2l0
aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuYXJyYXkuZmlsdGVyKToKKyAgICAgICAgKiB0ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbmQvcmV0dXJuLWFicnVw
dC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuY2F0Y2gpOgorICAgICAgICAodGVzdFdpdGhUeXBlZEFy
cmF5Q29uc3RydWN0b3JzLlRBLmFycmF5LmZpbmQpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZmluZEluZGV4L3JldHVybi1hYnJ1cHQtZnJv
bS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFkZGVkLgorICAgICAgICAodGVzdFdpdGhUeXBlZEFy
cmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToKKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy5UQS5hcnJheS5maW5kSW5kZXgpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZm9yRWFjaC9yZXR1cm4tYWJydXB0LWZyb20t
dGhpcy1vdXQtb2YtYm91bmRzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycy5UQS5jYXRjaCk6CisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMuVEEuYXJyYXkuZm9yRWFjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9pbmNsdWRlcy9yZXR1cm4tYWJydXB0LWZyb20tdGhp
cy1vdXQtb2YtYm91bmRzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy5UQS5jYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9pbmRleE9mL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1v
Zi1ib3VuZHMuanM6IEFkZGVkLgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0
b3JzLlRBLmNhdGNoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXkvcHJvdG90eXBlL2pvaW4vcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5q
czogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuY2F0
Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5
cGUva2V5cy9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzOiBBZGRlZC4K
KyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5jYXRjaCk6CisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9sYXN0SW5k
ZXhPZi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5jYXRjaCk6CisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9sZW5ndGgvcmVz
aXphYmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9sZW5ndGgvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5q
czogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMpOgorICAg
ICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvbWFwL3Jl
dHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFkZGVkLgorICAgICAgICAo
dGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToKKyAgICAgICAgKHRlc3RX
aXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5hcnJheS5tYXApOgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlL3JldHVybi1hYnJ1
cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFkZGVkLgorICAgICAgICAodGVzdFdpdGhU
eXBlZEFycmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToKKyAgICAgICAgKHRlc3RXaXRoVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy5UQS5hcnJheS5yZWR1Y2UpOgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlUmlnaHQvcmV0dXJuLWFicnVw
dC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuY2F0Y2gpOgorICAgICAgICAodGVzdFdpdGhUeXBlZEFy
cmF5Q29uc3RydWN0b3JzLlRBLmFycmF5LnJlZHVjZVJpZ2h0KToKKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3JldmVyc2UvcmV0dXJuLWFicnVw
dC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc2V0L3R5cGVkYXJyYXktYXJnLXNldC12YWx1
ZXMtc2FtZS1idWZmZXItc2FtZS10eXBlLXJlc2l6ZWQuanM6IEFkZGVkLgorICAgICAgICAodGVz
dFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3NldC90eXBlZGFycmF5LWFyZy10YXJnZXQtb3V0
LW9mLWJvdW5kcy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMuVEEuY2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheS9wcm90b3R5cGUvc2xpY2UvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5k
cy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEu
Y2F0Y2gpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90
b3R5cGUvc29tZS9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzOiBBZGRl
ZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5jYXRjaCk6Cisg
ICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuVEEuYXJyYXkuc29tZSk6Cisg
ICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9zb3J0
L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFkZGVkLgorICAgICAg
ICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToKKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5n
L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanM6IEFkZGVkLgorICAgICAg
ICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzLlRBLmNhdGNoKToKKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3ZhbHVlcy9yZXR1cm4t
YWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RX
aXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5UQS5jYXRjaCk6CisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvZXhj
ZXNzaXZlLW9mZnNldC10aHJvd3MtcmVzaXphYmxlLWFiLmpzOiBBZGRlZC4KKyAgICAgICAgKHRl
c3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL3R5cGVkYXJyYXktYXJnL291dC1v
Zi1ib3VuZHMtd2hlbi1zcGVjaWVzLXJldHJpZXZlZC1kaWZmZXJlbnQtdHlwZS5qczogQWRkZWQu
CisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuKToKKyAgICAgICAgKHRl
c3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycy5nZXQgdmFyKToKKyAgICAgICAgKHRlc3RXaXRo
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy5vbkdldFNwZWNpZXMpOgorICAgICAgICAodGVzdFdpdGhU
eXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3V0LW9mLWJvdW5k
cy13aGVuLXNwZWNpZXMtcmV0cmlldmVkLXNhbWUtdHlwZS5qczogQWRkZWQuCisgICAgICAgICh0
ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMuKToKKyAgICAgICAgKHRlc3RXaXRoVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy5nZXQgdmFyKToKKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy5vbkdldFNwZWNpZXMpOgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29u
c3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9kZXRhY2hlZC1i
dWZmZXItcmVhbG0uanM6IFJlbW92ZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9CaWdJ
bnQvZGV0YWNoZWQtYnVmZmVyLXRocm93cy1yZWFsbS5qczogQWRkZWQuCisgICAgICAgICh0ZXN0
V2l0aEJpZ0ludFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMpOgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJv
cGVydHkvQmlnSW50L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MuanM6IEFkZGVkLgorICAgICAgICAo
dGVzdFdpdGhCaWdJbnRUeXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93
blByb3BlcnR5L0JpZ0ludC9rZXktaXMtbm90LW51bWVyaWMtaW5kZXgtdGhyb3dzLmpzOiBBZGRl
ZC4KKyAgICAgICAgKHRlc3RXaXRoQmlnSW50VHlwZWRBcnJheUNvbnN0cnVjdG9ycyk6CisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVy
bmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1hY2Nlc3Nv
ci1kZXNjLXRocm93cy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aEJpZ0ludFR5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMuKToKKyAgICAgICAgKHRlc3RXaXRoQmlnSW50VHlwZWRBcnJheUNvbnN0
cnVjdG9ycy5nZXQgYXNzZXJ0KToKKyAgICAgICAgKHRlc3RXaXRoQmlnSW50VHlwZWRBcnJheUNv
bnN0cnVjdG9ycy5zZXQgYXNzZXJ0KToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0lu
dC9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2MtY29uZmlndXJhYmxlLmpzOgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVm
aW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmln
dXJhYmxlLXRocm93cy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aEJpZ0ludFR5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1p
cy1udW1lcmljaW5kZXgtZGVzYy1ub3QtZW51bWVyYWJsZS10aHJvd3MuanM6IEFkZGVkLgorICAg
ICAgICAodGVzdFdpdGhCaWdJbnRUeXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0Rl
ZmluZU93blByb3BlcnR5L0JpZ0ludC9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2Mtbm90LXdyaXRh
YmxlLXRocm93cy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aEJpZ0ludFR5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L3RvbnVtYmVy
LXZhbHVlLWRldGFjaGVkLWJ1ZmZlci5qczoKKyAgICAgICAgKHRlc3RXaXRoQmlnSW50VHlwZWRB
cnJheUNvbnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRhY2hlZC1i
dWZmZXItcmVhbG0uanM6IFJlbW92ZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRh
Y2hlZC1idWZmZXItdGhyb3dzLXJlYWxtLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRhY2hl
ZC1idWZmZXItdGhyb3dzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbm90LW51bWVy
aWMtaW5kZXgtdGhyb3dzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2lu
ZGV4LWFjY2Vzc29yLWRlc2MtdGhyb3dzLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy4pOgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3Ry
dWN0b3JzLmdldCBhc3NlcnQpOgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0
b3JzLnNldCBhc3NlcnQpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVy
aWNpbmRleC1kZXNjLWNvbmZpZ3VyYWJsZS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5
L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmlndXJhYmxlLXRocm93cy5qczogQWRk
ZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMpOgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMv
RGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5vdC1lbnVtZXJhYmxl
LXRocm93cy5qczogQWRkZWQuCisgICAgICAgICh0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVj
dG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVyaWNpbmRleC1kZXNj
LW5vdC13cml0YWJsZS10aHJvd3MuanM6IEFkZGVkLgorICAgICAgICAodGVzdFdpdGhUeXBlZEFy
cmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L3RvbnVtYmVyLXZh
bHVlLWRldGFjaGVkLWJ1ZmZlci5qczoKKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0
cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL2ludGVybmFscy9EZWxldGUva2V5LWlzLXN5bWJvbC5qczoKKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0hh
c1Byb3BlcnR5L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItYXV0by5qczogQWRkZWQuCisgICAgICAg
IChpbnNwZWN0KToKKyAgICAgICAgKHRlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyk6Cisg
ICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2lu
dGVybmFscy9IYXNQcm9wZXJ0eS9yZXNpemFibGUtYXJyYXktYnVmZmVyLWZpeGVkLmpzOiBBZGRl
ZC4KKyAgICAgICAgKGluc3BlY3QpOgorICAgICAgICAodGVzdFdpdGhUeXBlZEFycmF5Q29uc3Ry
dWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMvaW50ZXJuYWxzL093blByb3BlcnR5S2V5cy9pbnRlZ2VyLWluZGV4ZXMtcmVzaXph
YmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3RXaXRoVHlwZWRB
cnJheUNvbnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9Pd25Qcm9wZXJ0eUtleXMvaW50ZWdlci1pbmRl
eGVzLXJlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanM6IEFkZGVkLgorICAgICAgICAodGVz
dFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50
bDQwMi9EYXRlVGltZUZvcm1hdC9jb25zdHJ1Y3Rvci1vcHRpb25zLXN0eWxlLWNvbmZsaWN0Lmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBl
L2NhbGVuZGFycy9icmFuZGluZy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2lu
dGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxlbmRhcnMvbmFtZS5qczogQWRkZWQuCisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxlbmRhcnMvb3V0cHV0
LWFycmF5LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUv
cHJvdG90eXBlL2NhbGVuZGFycy9wcm9wLWRlc2MuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY29sbGF0aW9ucy9icmFuZGluZy5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9j
b2xsYXRpb25zL25hbWUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9pbnRsNDAy
L0xvY2FsZS9wcm90b3R5cGUvY29sbGF0aW9ucy9vdXRwdXQtYXJyYXktdmFsdWVzLmpzOiBBZGRl
ZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxh
dGlvbnMvb3V0cHV0LWFycmF5LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50
bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxhdGlvbnMvcHJvcC1kZXNjLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2hvdXJDeWNsZXMv
YnJhbmRpbmcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2Fs
ZS9wcm90b3R5cGUvaG91ckN5Y2xlcy9uYW1lLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2hvdXJDeWNsZXMvb3V0cHV0LWFycmF5LXZh
bHVlcy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3By
b3RvdHlwZS9ob3VyQ3ljbGVzL291dHB1dC1hcnJheS5qczogQWRkZWQuCisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL3Byb3AtZGVzYy5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlw
ZS9udW1iZXJpbmdTeXN0ZW1zL2JyYW5kaW5nLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJlcmluZ1N5c3RlbXMvbmFtZS5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9u
dW1iZXJpbmdTeXN0ZW1zL291dHB1dC1hcnJheS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2
Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9udW1iZXJpbmdTeXN0ZW1zL3Byb3AtZGVz
Yy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3Rv
dHlwZS90ZXh0SW5mby9icmFuZGluZy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90ZXh0SW5mby9uYW1lLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RleHRJbmZvL291dHB1
dC1vYmplY3Qta2V5cy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIv
TG9jYWxlL3Byb3RvdHlwZS90ZXh0SW5mby9vdXRwdXQtb2JqZWN0LmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RleHRJbmZvL3Byb3At
ZGVzYy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3By
b3RvdHlwZS90aW1lWm9uZXMvYnJhbmRpbmcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpvbmVzL25hbWUuanM6IEFkZGVkLgor
ICAgICAgICAqIHRlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpvbmVz
L291dHB1dC1hcnJheS1zb3J0ZWQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9p
bnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpvbmVzL291dHB1dC1hcnJheS5qczogQWRkZWQu
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1lWm9u
ZXMvb3V0cHV0LXVuZGVmaW5lZC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2lu
dGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1lWm9uZXMvcHJvcC1kZXNjLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3dlZWtJbmZvL2Jy
YW5kaW5nLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUv
cHJvdG90eXBlL3dlZWtJbmZvL25hbWUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vb3V0cHV0LW9iamVjdC1rZXlzLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBl
L3dlZWtJbmZvL291dHB1dC1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vcHJvcC1kZXNjLmpzOiBBZGRlZC4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvY29uc3RydWN0b3Ivc3Vw
cG9ydGVkTG9jYWxlc09mL2xvY2FsZXMtc3BlY2lmaWMuanM6CisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvaXN3b3Jk
bGlrZS5qczoKKyAgICAgICAgKG90aGVyX2dyYW51bGFyaXRpZXMuZm9yRWFjaCk6CisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRh
aW5pbmcvb25lLWluZGV4LmpzOgorICAgICAgICAodG9TdHJpbmcpOgorICAgICAgICAodmFsdWVP
Zik6CisgICAgICAgIChTeW1ib2wudG9QcmltaXRpdmUpOgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9pbnRsNDAyL1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9jb250YWluaW5nL291dC1vZi1i
b3VuZC1pbmRleC5qczoKKyAgICAgICAgKHRvU3RyaW5nKToKKyAgICAgICAgKHZhbHVlT2YpOgor
ICAgICAgICAoU3ltYm9sLnRvUHJpbWl0aXZlKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50
bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvY29udGFpbmluZy93b3JkLWlzd29yZGxp
a2UuanM6CisgICAgICAgIChpbnB1dHMuZm9yRWFjaCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvemVyby1pbmRl
eC5qczoKKyAgICAgICAgKHRvU3RyaW5nKToKKyAgICAgICAgKHZhbHVlT2YpOgorICAgICAgICAo
U3ltYm9sLnRvUHJpbWl0aXZlKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdt
ZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvc2VnbWVudC1ncmFwaGVtZS1pdGVyYWJsZS5qczoKKyAg
ICAgICAgKGNvbnN0LnYub2Yuc2VnLnNlZ21lbnQpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9p
bnRsNDAyL1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9zZWdtZW50LXNlbnRlbmNlLWl0ZXJh
YmxlLmpzOgorICAgICAgICAoY29uc3Qudi5vZi5zZWcuc2VnbWVudCk6CisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L3NlZ21lbnQtd29y
ZC1pdGVyYWJsZS5qczoKKyAgICAgICAgKGNvbnN0LnYub2Yuc2VnLnNlZ21lbnQpOgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9pbnRsNDAyL2ZhbGxiYWNrLWxvY2FsZXMtYXJlLXN1cHBvcnRlZC5q
czoKKyAgICAgICAgKHRlc3RXaXRoSW50bENvbnN0cnVjdG9ycyk6CisgICAgICAgICogdGVzdDI2
Mi90ZXN0L2ludGw0MDIvc3VwcG9ydGVkTG9jYWxlc09mLWNvbnNpc3RlbnQtd2l0aC1yZXNvbHZl
ZE9wdGlvbnMuanM6CisgICAgICAgICh0ZXN0V2l0aEludGxDb25zdHJ1Y3RvcnMpOgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9pbnRsNDAyL3N1cHBvcnRlZExvY2FsZXNPZi11bmljb2RlLWV4dGVu
c2lvbnMtaWdub3JlZC5qczoKKyAgICAgICAgKHRlc3RXaXRoSW50bENvbnN0cnVjdG9ycy4pOgor
ICAgICAgICAodGVzdFdpdGhJbnRsQ29uc3RydWN0b3JzKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXJyb3ctZnVuY3Rpb24vZXh0ZW5zaWJpbGl0eS5qczog
QWRkZWQuCisgICAgICAgIChhc3NlcnQuT2JqZWN0LmlzRXh0ZW5zaWJsZSk6CisgICAgICAgICog
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL3N5bnRheC9h
cnJvd3BhcmFtZXRlcnMtY292ZXItaW5pdGlhbGl6ZS0yLmpzOgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L1MxMS4xMy4xX0E3X1QxLmpzOiBS
ZW1vdmVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3Np
Z25tZW50L1MxMS4xMy4xX0E3X1QyLmpzOiBSZW1vdmVkLgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L3RhcmdldC1tZW1iZXItY29tcHV0ZWQt
cmVmZXJlbmNlLW51bGwuanM6IEFkZGVkLgorICAgICAgICAoRHVtbXlFcnJvcik6CisgICAgICAg
IChwcm9wKToKKyAgICAgICAgKGV4cHIpOgorICAgICAgICAocHJvcC50b1N0cmluZyk6CisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0
LW1lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzOiBBZGRlZC4KKyAgICAgICAg
KER1bW15RXJyb3IpOgorICAgICAgICAocHJvcCk6CisgICAgICAgIChleHByKToKKyAgICAgICAg
KHByb3AudG9TdHJpbmcpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9hc3NpZ25tZW50L3RhcmdldC1tZW1iZXItaWRlbnRpZmllci1yZWZlcmVuY2UtbnVsbC5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fz
c2lnbm1lbnQvdGFyZ2V0LW1lbWJlci1pZGVudGlmaWVyLXJlZmVyZW5jZS11bmRlZmluZWQuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3Np
Z25tZW50L3RhcmdldC1zdXBlci1jb21wdXRlZC1yZWZlcmVuY2UtbnVsbC5qczogQWRkZWQuCisg
ICAgICAgIChDLm0pOgorICAgICAgICAoQyk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0LXN1cGVyLWlkZW50aWZpZXItcmVmZXJl
bmNlLW51bGwuanM6IEFkZGVkLgorICAgICAgICAoQy5tKToKKyAgICAgICAgKEMpOgorICAgICAg
ICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9kZWxldGUvbWVtYmVyLWNvbXB1
dGVkLXJlZmVyZW5jZS1udWxsLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZGVsZXRlL21lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtdW5kZWZp
bmVkLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZGVsZXRlL21lbWJlci1pZGVudGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZGVsZXRlL21lbWJlci1p
ZGVudGlmaWVyLXJlZmVyZW5jZS11bmRlZmluZWQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9kZWxldGUvc3VwZXItcHJvcGVydHktbnVsbC1i
YXNlLmpzOiBBZGRlZC4KKyAgICAgICAgKEMubSk6CisgICAgICAgIChDKToKKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFt
LWFzc2VydC1lbnVtZXJhdGlvbi1hYnJ1cHQuanM6IEFkZGVkLgorICAgICAgICAob3B0aW9ucy5v
d25LZXlzKToKKyAgICAgICAgKG9wdGlvbnMudGhlbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtZW51
bWVyYXRpb24uanM6IEFkZGVkLgorICAgICAgICAob3B0aW9ucy5vd25LZXlzKToKKyAgICAgICAg
KG9wdGlvbnMuZ2V0IF8pOgorICAgICAgICAob3B0aW9ucy5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IpOgorICAgICAgICAob3B0aW9ucy50aGVuKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWFzc2VydC1ub24tb2Jq
ZWN0LmpzOiBBZGRlZC4KKyAgICAgICAgKHRlc3QpOgorICAgICAgICAoc3RyaW5nX2FwcGVhcmVk
X2hlcmUudGhlbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtdW5kZWZpbmVkLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHRoZW4pOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0LXZhbHVlLWFicnVwdC5qczogQWRkZWQu
CisgICAgICAgIChhc3NlcnQuZ2V0IHN0cmluZ19hcHBlYXJlZF9oZXJlKToKKyAgICAgICAgKHRo
ZW4pOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0LXZhbHVlLW5vbi1zdHJpbmcuanM6IEFkZGVkLgorICAg
ICAgICAodGVzdCk6CisgICAgICAgIChzdHJpbmdfYXBwZWFyZWRfaGVyZS50aGVuKToKKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5k
LXBhcmFtLWF3YWl0LWV4cHIuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXdhaXQtaWRlbnQuanM6
IEFkZGVkLgorICAgICAgICAoYXdhaXQpOgorICAgICAgICAoYXdhaXQudW5kZWZpbmVkLnRoZW4p
OgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1hYnJ1cHQtcmV0dXJuLmpzOiBBZGRlZC4KKyAgICAg
ICAgKGl0ZXIpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1hYnJ1cHQtdGhyb3cuanM6IEFkZGVk
LgorICAgICAgICAodGhyb3dFcnJvcik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1ldmFsdWF0aW9uLXNlcXVlbmNl
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWdldC1hc3NlcnQtZXJyb3IuanM6IEFkZGVkLgorICAg
ICAgICAob3B0aW9ucy5nZXQgYXNzZXJ0KToKKyAgICAgICAgKG9wdGlvbnMudGhlbik6CisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJu
ZC1wYXJhbS1pbi5qczogQWRkZWQuCisgICAgICAgIChwcm9taXNlLnRoZW4pOgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFy
YW0tbm9uLW9iamVjdC5qczogQWRkZWQuCisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKHN0cmlu
Z19hcHBlYXJlZF9oZXJlLnRoZW4pOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tdHJhaWxpbmctY29tbWEtZnVsZmls
bC5qczogQWRkZWQuCisgICAgICAgICh0aGVuKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXRyYWlsaW5nLWNvbW1h
LXJlamVjdC5qczogQWRkZWQuCisgICAgICAgIChpbXBvcnQudG9TdHJpbmcpOgorICAgICAgICAo
dGhlbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0LzJuZC1wYXJhbS15aWVsZC1leHByLmpzOiBBZGRlZC4KKyAgICAgICAgKGl0ZXIp
OgorICAgICAgICAocHJvbWlzZS50aGVuKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXlpZWxkLWlkZW50LWludmFs
aWQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0teWllbGQtaWRlbnQtdmFsaWQuanM6IEFkZGVkLgor
ICAgICAgICAoeWllbGQudGhlbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbV9GSVhUVVJFLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L2ludmFsaWQvbmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1ub3QtZXh0
ZW5zaWJsZS1hcmdzLmpzOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXJyb3ctbm90LWV4dGVu
c2libGUtYXJncy5qczoKKyAgICAgICAgKGxldC5mKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWFzeW5jLWFycm93LWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAg
ICAgIChhc3luYyBhd2FpdCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1m
dW5jdGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qczoKKyAgICAgICAgKGFz
eW5jIGF3YWl0KToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9u
LXJldHVybi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qczogUmVtb3Zl
ZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRl
bnNpYmxlLWFyZ3MuanM6CisgICAgICAgIChhc3luYyBmKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVz
dGVkLWFzeW5jLWZ1bmN0aW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAgICAgIChhc3lu
YyBmKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2Fp
dC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzOgorICAgICAgICAoYXN5bmMgZik6CisgICAgICAgICog
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUt
bm8tdHJhaWxpbmctY29tbWEuanM6IFJlbW92ZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1h
c3luYy1nZW4tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qczoKKyAgICAgICAgKGFzeW5jIGYp
OgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxlZC1ub3QtZXh0ZW5zaWJsZS1h
cmdzLmpzOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbm90LWV4dGVuc2libGUtYXJn
cy5qczoKKyAgICAgICAgKERPTk9URVZBTFVBVEUpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQt
ZG8td2hpbGUtbm90LWV4dGVuc2libGUtYXJncy5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWVsc2UtYnJhY2VsZXNzLW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAgICAgICogdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlk
L25lc3RlZC1lbHNlLW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1mdW5jdGlvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzOgorICAgICAgICAoZm4pOgorICAg
ICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9z
eW50YXgvaW52YWxpZC9uZXN0ZWQtZnVuY3Rpb24tcmV0dXJuLW5vdC1leHRlbnNpYmxlLWFyZ3Mu
anM6CisgICAgICAgIChmbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1pZi1icmFjZWxlc3Mt
bm90LWV4dGVuc2libGUtYXJncy5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWlmLWJyYWNl
bGVzcy1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qczogUmVtb3ZlZC4KKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWlmLW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAgICAgICog
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzOgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52
YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNzaW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAg
ICAgICh3aXRoLmltcG9ydCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLW5vdC1leHRl
bnNpYmxlLWFyZ3MuanM6CisgICAgICAgICh3aXRoKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvdG9wLWxl
dmVsLW5vdC1leHRlbnNpYmxlLWFyZ3MuanM6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL3RvcC1sZXZlbC1u
b3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qczogUmVtb3ZlZC4KKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3Zh
bGlkL25lc3RlZC1hcnJvdy1hc3NpZ25tZW50LWV4cHJlc3Npb24tdHJhaWxpbmctY29tbWEtZmly
c3QuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJvdy1hc3NpZ25tZW50
LWV4cHJlc3Npb24tbm90LWV4dGVuc2libGUtYXJncy5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3Rl
ZC1hcnJvdy1hc3NpZ25tZW50LWV4cHJlc3Npb24tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzOiBD
b3BpZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXJyb3ctYXNzaWdubWVudC1leHByZXNz
aW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXJyb3ct
dHJhaWxpbmctY29tbWEtZmlyc3QuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0
ZWQtYXJyb3ctbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMuCisgICAgICAgIChs
ZXQuZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXJyb3ctdHJhaWxpbmctY29tbWEtc2Vjb25k
LmpzOiBDb3BpZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXJyb3ctbm90LWV4dGVuc2li
bGUtYXJncy5qcy4KKyAgICAgICAgKGxldC5mKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3lu
Yy1hcnJvdy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1maXJzdC5qczogUmVuYW1lZCBm
cm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1hd2FpdC1ub3Qt
ZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1h
c3luYy1hcnJvdy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQuanM6IENvcGll
ZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1hd2FpdC1u
b3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgorICAgICAgICAoYXN5bmMgYXdhaXQpOgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
dmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLXJldHVybi1hd2FpdC10cmFpbGluZy1j
b21tYS1maXJzdC5qczogQ29waWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFycm93LWFz
c2lnbm1lbnQtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFs
aWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLXJldHVybi1hd2FpdC10cmFpbGluZy1jb21t
YS1zZWNvbmQuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJvdy1hc3Np
Z25tZW50LWV4cHJlc3Npb24tbm90LWV4dGVuc2libGUtYXJncy5qcy4KKyAgICAgICAgKGFzeW5j
IGF3YWl0KToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHlu
YW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC10cmFp
bGluZy1jb21tYS1maXJzdC5qczogQ29waWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFz
eW5jLWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMuCisgICAgICAgIChhc3lu
YyBmKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC10cmFpbGlu
Zy1jb21tYS1zZWNvbmQuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3lu
Yy1mdW5jdGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgorICAgICAgICAoYXN5bmMg
Zik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tcmV0dXJuLWF3YWl0LXRy
YWlsaW5nLWNvbW1hLWZpcnN0LmpzOiBDb3BpZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQt
YXN5bmMtZnVuY3Rpb24tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcy4KKyAgICAgICAgKGFz
eW5jIGYpOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2Fp
dC10cmFpbGluZy1jb21tYS1zZWNvbmQuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgorICAgICAg
ICAoYXN5bmMgZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tdHJhaWxp
bmctY29tbWEtZmlyc3QuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5
bmMtZnVuY3Rpb24tYXdhaXQtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMuCisg
ICAgICAgIChhc3luYyBmKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi10
cmFpbGluZy1jb21tYS1zZWNvbmQuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0
ZWQtYXN5bmMtZnVuY3Rpb24tbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMuCisg
ICAgICAgIChhc3luYyBmKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1nZW4tYXdhaXQt
dHJhaWxpbmctY29tbWEtZmlyc3QuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0
ZWQtYXN5bmMtZ2VuLWF3YWl0LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzLgor
ICAgICAgICAoYXN5bmMgZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZ2VuLWF3YWl0
LXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qczogQ29waWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVz
dGVkLWFzeW5jLWdlbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgorICAgICAgICAoYXN5
bmMgZik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxlZC10cmFpbGluZy1jb21t
YS1maXJzdC5qczogUmVuYW1lZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1ibG9jay1sYWJl
bGVkLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzLgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQv
bmVzdGVkLWJsb2NrLWxhYmVsZWQtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzOiBDb3BpZWQgZnJv
bSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxlZC1ub3QtZXh0ZW5zaWJsZS1hcmdz
LmpzLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLXRyYWlsaW5nLWNvbW1hLWZpcnN0Lmpz
OiBSZW5hbWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWJsb2NrLW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLXRyYWls
aW5nLWNvbW1hLXNlY29uZC5qczogQ29waWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWJs
b2NrLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZG8td2hp
bGUtdHJhaWxpbmctY29tbWEtZmlyc3QuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9u
ZXN0ZWQtZG8td2hpbGUtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMuCisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5
bnRheC92YWxpZC9uZXN0ZWQtZG8td2hpbGUtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzOiBDb3Bp
ZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZG8td2hpbGUtbm90LWV4dGVuc2libGUtYXJn
cy5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1lbHNlLWJyYWNlbGVzcy10cmFpbGluZy1jb21t
YS1maXJzdC5qczogUmVuYW1lZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1lbHNlLWJyYWNl
bGVzcy1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcy4KKyAgICAgICAgKiB0ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC1lbHNlLWJyYWNlbGVzcy10cmFpbGluZy1jb21tYS1zZWNvbmQuanM6IENvcGllZCBm
cm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1lbHNlLWJyYWNlbGVzcy1ub3QtZXh0ZW5zaWJsZS1h
cmdzLmpzLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmctY29tbWEtZmlyc3Qu
anM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1ub3QtZXh0ZW5zaWJs
ZS1uby10cmFpbGluZy1jb21tYS5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1lbHNlLXRyYWls
aW5nLWNvbW1hLXNlY29uZC5qczogQ29waWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWVs
c2Utbm90LWV4dGVuc2libGUtYXJncy5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlv
bi1yZXR1cm4tdHJhaWxpbmctY29tbWEtZmlyc3QuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZh
bGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4tbm90LWV4dGVuc2libGUtYXJncy5qcy4KKyAgICAg
ICAgKGZuKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHlu
YW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4tdHJhaWxpbmct
Y29tbWEtc2Vjb25kLmpzOiBDb3BpZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZnVuY3Rp
b24tcmV0dXJuLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMuCisgICAgICAgIChmbik6CisgICAgICAg
ICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC92YWxpZC9uZXN0ZWQtZnVuY3Rpb24tdHJhaWxpbmctY29tbWEtZmlyc3QuanM6IFJlbmFtZWQg
ZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZnVuY3Rpb24tbm90LWV4dGVuc2libGUtbm8tdHJh
aWxpbmctY29tbWEuanMuCisgICAgICAgIChmbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZnVu
Y3Rpb24tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzOiBSZW5hbWVkIGZyb20gSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFs
aWQvbmVzdGVkLWZ1bmN0aW9uLXJldHVybi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21t
YS5qcy4KKyAgICAgICAgKGZuKToKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1pZi1icmFjZWxlc3Mt
dHJhaWxpbmctY29tbWEtZmlyc3QuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0
ZWQtYXJyb3ctYXNzaWdubWVudC1leHByZXNzaW9uLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5n
LWNvbW1hLmpzLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWlmLWJyYWNlbGVzcy10cmFpbGluZy1j
b21tYS1zZWNvbmQuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJvdy1h
c3NpZ25tZW50LWV4cHJlc3Npb24tbm90LWV4dGVuc2libGUtYXJncy5qcy4KKyAgICAgICAgKiB0
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3Zh
bGlkL25lc3RlZC1pZi10cmFpbGluZy1jb21tYS1maXJzdC5qczogUmVuYW1lZCBmcm9tIEpTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC9pbnZhbGlkL25lc3RlZC1pZi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcy4K
KyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L3ZhbGlkL25lc3RlZC1pZi10cmFpbGluZy1jb21tYS1zZWNvbmQuanM6IENvcGll
ZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1pZi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgor
ICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLXdoaWxlLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzOiBSZW5h
bWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdoaWxlLW5vdC1leHRlbnNpYmxlLW5vLXRy
YWlsaW5nLWNvbW1hLmpzLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdoaWxlLXRyYWlsaW5nLWNv
bW1hLXNlY29uZC5qczogQ29waWVkIGZyb20gSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdoaWxlLW5v
dC1leHRlbnNpYmxlLWFyZ3MuanMuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNz
aW9uLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzOiBDb3BpZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9u
ZXN0ZWQtd2l0aC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzLgorICAgICAgICAod2l0aC5pbXBvcnQp
OgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi10cmFpbGluZy1jb21tYS1z
ZWNvbmQuanM6IENvcGllZCBmcm9tIEpTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLW5vdC1leHRl
bnNpYmxlLWFyZ3MuanMuCisgICAgICAgICh3aXRoLmltcG9ydCk6CisgICAgICAgICogdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9u
ZXN0ZWQtd2l0aC10cmFpbGluZy1jb21tYS1maXJzdC5qczogUmVuYW1lZCBmcm9tIEpTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC13aXRoLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzLgor
ICAgICAgICAod2l0aCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2l0aC10cmFpbGluZy1jb21t
YS1zZWNvbmQuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtd2l0aC1leHBy
ZXNzaW9uLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzLgorICAgICAgICAod2l0
aCk6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC92YWxpZC90b3AtbGV2ZWwtdHJhaWxpbmctY29tbWEtZmlyc3QuanM6IEFk
ZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvdG9wLWxldmVsLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLWZ1bGZpbGwuanM6IEFkZGVkLgorICAgICAgICAodGhl
bik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3RyYWlsaW5nLWNvbW1hLXJlamVjdC5qczogQWRkZWQuCisgICAgICAgIChpbXBvcnQu
dG9TdHJpbmcpOgorICAgICAgICAodGhlbik6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL3RlbXBsYXRlLWxpdGVyYWwvaW52YWxpZC1sZWdhY3ktb2N0YWwtZXNj
YXBlLXNlcXVlbmNlLTguanM6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL3RlbXBsYXRlLWxpdGVyYWwvaW52YWxpZC1sZWdhY3ktb2N0YWwtZXNjYXBlLXNlcXVl
bmNlLTkuanM6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL3Rl
bXBsYXRlLWxpdGVyYWwvaW52YWxpZC1sZWdhY3ktb2N0YWwtZXNjYXBlLXNlcXVlbmNlLmpzOgor
ICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1leHRlbnNpYmlsaXR5
LWFycmF5LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0
L2pzb24tZXh0ZW5zaWJpbGl0eS1vYmplY3QuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIv
dGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1pZGVtcG90ZW5jeS1pbmRpcmVjdF9GSVhUVVJFLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24taWRl
bXBvdGVuY3kuanM6IEFkZGVkLgorICAgICAgICAodGhlbik6CisgICAgICAgICogdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLWludmFsaWQuanM6IEFkZGVkLgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1uYW1lZC1iaW5kaW5ncy5qczogQWRkZWQu
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLWFycmF5
LmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24t
dmFsdWUtYm9vbGVhbi5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2ltcG9ydC9qc29uLXZhbHVlLW51bGwuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVz
dC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1udW1iZXIuanM6IEFkZGVkLgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1vYmplY3QuanM6IEFkZGVk
LgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1zdHJp
bmcuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNv
bi12aWEtbmFtZXNwYWNlLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvbGl0ZXJhbHMvbnVtZXJpYy9sZWdhY3ktb2N0YWwtaW50ZWdlci1zdHJpY3QuanM6CisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbGVnYWN5LW9jdGFs
LWludGVnZXIuanM6IFJlbmFtZWQgZnJvbSBKU1Rlc3RzL3Rlc3QyNjIvdGVzdC9hbm5leEIvbGFu
Z3VhZ2UvbGl0ZXJhbHMvbnVtZXJpYy9sZWdhY3ktb2N0YWwtaW50ZWdlci5qcy4KKyAgICAgICAg
KiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvbnVtZXJpYy9ub24tb2N0YWwtZGVjaW1h
bC1pbnRlZ2VyLXN0cmljdC5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0
ZXJhbHMvbnVtZXJpYy9ub24tb2N0YWwtZGVjaW1hbC1pbnRlZ2VyLmpzOiBSZW5hbWVkIGZyb20g
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYW5uZXhCL2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbm9u
LW9jdGFsLWRlY2ltYWwtaW50ZWdlci5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTEtc3Ry
aWN0LWV4cGxpY2l0LXByYWdtYS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
bGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTItc3RyaWN0
LWV4cGxpY2l0LXByYWdtYS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0
ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTMtc3RyaWN0LWV4
cGxpY2l0LXByYWdtYS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJh
bHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTQtc3RyaWN0LWV4cGxp
Y2l0LXByYWdtYS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMv
c3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTUtc3RyaWN0LWV4cGxpY2l0
LXByYWdtYS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3Ry
aW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTYtc3RyaWN0LWV4cGxpY2l0LXBy
YWdtYS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5n
L2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTctc3RyaWN0LWV4cGxpY2l0LXByYWdt
YS5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xl
Z2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTgtbm9uLXN0cmljdC5qczogQWRkZWQuCisg
ICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9u
LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS04LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanM6CisgICAg
ICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9j
dGFsLWVzY2FwZS1zZXF1ZW5jZS04LXN0cmljdC5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNl
LTktbm9uLXN0cmljdC5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LXN0cmlj
dC1leHBsaWNpdC1wcmFnbWEuanM6CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xp
dGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LXN0cmljdC5q
czoKKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2Fj
eS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLXN0cmljdC5qczoKKyAgICAgICAgKiB0ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1vY3RhbC1lc2NhcGUtc2VxdWVu
Y2Utc3RyaWN0LmpzOgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9z
dHJpbmcvbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS5qczogUmVuYW1lZCBmcm9tIEpTVGVz
dHMvdGVzdDI2Mi90ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW9j
dGFsLWVzY2FwZS1zZXF1ZW5jZS5qcy4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
bW9kdWxlLWNvZGUvZWFybHktZHVwLWFzc2VydC1rZXktZXhwb3J0LmpzOiBBZGRlZC4KKyAgICAg
ICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZWFybHktZHVwLWFzc2VydC1r
ZXktaW1wb3J0LW5vYmluZGluZy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL21vZHVsZS1jb2RlL2Vhcmx5LWR1cC1hc3NlcnQta2V5LWltcG9ydC13aXRoYmluZGlu
Zy5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2Rl
L2Vhcmx5LWV4cG9ydC1pbGwtZm9ybWVkLXN0cmluZy5qczoKKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZXZhbC1ndGJuZG5nLWluZGlyZWN0LWZhdXgtYXNzZXJ0
aW9uLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNv
ZGUvaW1wb3J0LWFzc2VydGlvbi0xX0ZJWFRVUkUuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLTJfRklYVFVSRS5q
czogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2lt
cG9ydC1hc3NlcnRpb24tM19GSVhUVVJFLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2VydGlvbi1lbXB0eS5qczogQWRkZWQu
CisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3Nl
cnRpb24ta2V5LWlkZW50aWZpZXJuYW1lLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2VydGlvbi1rZXktc3RyaW5nLWRvdWJs
ZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2Rl
L2ltcG9ydC1hc3NlcnRpb24ta2V5LXN0cmluZy1zaW5nbGUuanM6IEFkZGVkLgorICAgICAgICAq
IHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLW1hbnku
anM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9p
bXBvcnQtYXNzZXJ0aW9uLW5ld2xpbmVzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2VydGlvbi10cmxuZy1jb21tYS5qczog
QWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9y
dC1hc3NlcnRpb24tdmFsdWUtc3RyaW5nLWRvdWJsZS5qczogQWRkZWQuCisgICAgICAgICogdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24tdmFsdWUtc3Ry
aW5nLXNpbmdsZS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21v
ZHVsZS1jb2RlL2luc3RuLXN0YXItYXMtcHJvcHMtZGZsdC1za2lwLmpzOgorICAgICAgICAqIHRl
c3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS90b3AtbGV2ZWwtYXdhaXQvZGZzLWludmFy
aWFudC1hc3luY19GSVhUVVJFLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvbW9kdWxlLWNvZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZhcmlhbnQtZGlyZWN0LTFf
RklYVFVSRS5qczogQWRkZWQuCisgICAgICAgICogdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVs
ZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52YXJpYW50LWRpcmVjdC0yX0ZJWFRVUkUuanM6
IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS90b3At
bGV2ZWwtYXdhaXQvZGZzLWludmFyaWFudC1pbmRpcmVjdF9GSVhUVVJFLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvdG9wLWxldmVsLWF3YWl0
L2Rmcy1pbnZhcmlhbnQuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9zdGF0ZW1lbnRzL2Zvci1vZi9oZWFkLWxocy1hc3luYy1lc2NhcGVkLmpzOiBBZGRlZC4KKyAg
ICAgICAgKiB0ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3Itb2YvaGVhZC1saHMt
YXN5bmMtcGFyZW5zLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0MjYyL3Rlc3QyNjItUmV2aXNp
b24udHh0OgorCiAyMDIxLTA3LTA4ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+
CiAKICAgICAgICAgW0pTQ10gVXBkYXRlIEludGwuTG9jYWxlIHRlc3QgYWZ0ZXIgQXBwbGVJQ1Ug
dXBkYXRlCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvY29uZmlnLnlhbWwgYi9KU1Rlc3Rz
L3Rlc3QyNjIvY29uZmlnLnlhbWwKaW5kZXggNzc1NDJjZDM4NDBkNTUyYjI5OWQyOTkwZDM1Yjlj
NDBiNGM2Mzk3OC4uYTMxY2RmZTlkZTY3NjJhNWQxNWVlOTQ1MGU3MDFjNGM3ZmQwZDFiMiAxMDA2
NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL2NvbmZpZy55YW1sCisrKyBiL0pTVGVzdHMvdGVzdDI2
Mi9jb25maWcueWFtbApAQCAtMjQsNiArMjQsMTIgQEAgc2tpcDoKICAgICAtIHJlZ2V4cC1sb29r
YmVoaW5kCiAgICAgLSBsZWdhY3ktcmVnZXhwCiAgICAgLSBjbGVhbnVwU29tZQorICAgIC0gSW50
bC5Mb2NhbGUtaW5mbworICAgIC0gcmVzaXphYmxlLWFycmF5YnVmZmVyCisgICAgLSBPYmplY3Qu
aGFzT3duCisgICAgLSBUZW1wb3JhbAorICAgIC0gaW1wb3J0LWFzc2VydGlvbnMKKyAgICAtIGpz
b24tbW9kdWxlcwogICBwYXRoczoKICAgZmlsZXM6CiAgICAgIyBTbGlnaHRseSBkaWZmZXJlbnQg
Zm9ybWF0dGluZy4gV2Ugc2hvdWxkIHVwZGF0ZSB0ZXN0MjYyIHNpZGUuCmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvZXhwZWN0YXRpb25zLnlhbWwgYi9KU1Rlc3RzL3Rlc3QyNjIvZXhwZWN0
YXRpb25zLnlhbWwKaW5kZXggMzYyMmU4NzlhNjBmY2VkYjgyYzY1NzZlNTgzMzljNjQ0ZGMzNmVm
NC4uODJmODliYTk3OGFmNWE5ZTA5OTk5YjMwNzAzZDgwYjdhNTJiNWJkYSAxMDA2NDQKLS0tIGEv
SlNUZXN0cy90ZXN0MjYyL2V4cGVjdGF0aW9ucy55YW1sCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi9l
eHBlY3RhdGlvbnMueWFtbApAQCAtODIzLDEyICs4MjMsNiBAQCB0ZXN0L2J1aWx0LWlucy9SZWdF
eHAvcHJvdG90eXBlL2V4ZWMvdS1sYXN0aW5kZXgtYWR2LmpzOgogdGVzdC9idWlsdC1pbnMvUmVn
RXhwL3F1YW50aWZpZXItaW50ZWdlci1saW1pdC5qczoKICAgZGVmYXVsdDogJ1N5bnRheEVycm9y
OiBJbnZhbGlkIHJlZ3VsYXIgZXhwcmVzc2lvbjogbnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFu
dGlmaWVyJwogICBzdHJpY3QgbW9kZTogJ1N5bnRheEVycm9yOiBJbnZhbGlkIHJlZ3VsYXIgZXhw
cmVzc2lvbjogbnVtYmVyIHRvbyBsYXJnZSBpbiB7fSBxdWFudGlmaWVyJwotdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmln
SW50L3RvbnVtYmVyLXZhbHVlLWRldGFjaGVkLWJ1ZmZlci5qczoKLSAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YSwgMCwge3ZhbHVlOiB7dmFsdWVPZigp
IHskREVUQUNIQlVGRkVSKHRhLmJ1ZmZlcik7IHJldHVybiA0Mm47fX19KSBtdXN0IHJldHVybiBm
YWxzZSBFeHBlY3RlZCBTYW1lVmFsdWUowqt0cnVlwrssIMKrZmFsc2XCuykgdG8gYmUgdHJ1ZSAo
VGVzdGluZyB3aXRoIEJpZ0ludDY0QXJyYXkuKScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJy
b3I6IFJlZmxlY3QuZGVmaW5lUHJvcGVydHkodGEsIDAsIHt2YWx1ZToge3ZhbHVlT2YoKSB7JERF
VEFDSEJVRkZFUih0YS5idWZmZXIpOyByZXR1cm4gNDJuO319fSkgbXVzdCByZXR1cm4gZmFsc2Ug
RXhwZWN0ZWQgU2FtZVZhbHVlKMKrdHJ1ZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUgKFRlc3Rp
bmcgd2l0aCBCaWdJbnQ2NEFycmF5LiknCi10ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS90b251bWJlci12YWx1ZS1kZXRhY2hl
ZC1idWZmZXIuanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IFJlZmxlY3QuZGVmaW5lUHJv
cGVydHkodGEsIDAsIHt2YWx1ZToge3ZhbHVlT2YoKSB7JERFVEFDSEJVRkZFUih0YS5idWZmZXIp
OyByZXR1cm4gNDI7fX19ICkgbXVzdCByZXR1cm4gZmFsc2UgRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
dHJ1ZcK7LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXku
KScKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IFJlZmxlY3QuZGVmaW5lUHJvcGVydHko
dGEsIDAsIHt2YWx1ZToge3ZhbHVlT2YoKSB7JERFVEFDSEJVRkZFUih0YS5idWZmZXIpOyByZXR1
cm4gNDI7fX19ICkgbXVzdCByZXR1cm4gZmFsc2UgRXhwZWN0ZWQgU2FtZVZhbHVlKMKrdHJ1ZcK7
LCDCq2ZhbHNlwrspIHRvIGJlIHRydWUgKFRlc3Rpbmcgd2l0aCBGbG9hdDY0QXJyYXkuKScKIHRl
c3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9wcm90b3R5cGUvZm9ybWF0UmFuZ2UvZW4tVVMuanM6
CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzEvMy8yMDE5
4oCJ4oCT4oCJMS81LzIwMTnCuywgwqsxLzMvMjAxOSDigJMgMS81LzIwMTnCuykgdG8gYmUgdHJ1
ZScKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzEv
My8yMDE54oCJ4oCT4oCJMS81LzIwMTnCuywgwqsxLzMvMjAxOSDigJMgMS81LzIwMTnCuykgdG8g
YmUgdHJ1ZScKQEAgLTg4MCw2ICs4NzQsOSBAQCB0ZXN0L2ludGw0MDIvTG9jYWxlL2xpa2VseS1z
dWJ0YWdzLWdyYW5kZmF0aGVyZWQuanM6CiB0ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9t
aW5pbWl6ZS9yZW1vdmluZy1saWtlbHktc3VidGFncy1maXJzdC1hZGRzLWxpa2VseS1zdWJ0YWdz
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiAidW5kIi5taW5pbWl6ZSgpIHNob3VsZCBi
ZSAiZW4iIEV4cGVjdGVkIFNhbWVWYWx1ZSjCq2VuLXUtdmEtcG9zaXjCuywgwqtlbsK7KSB0byBi
ZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogInVuZCIubWluaW1pemUoKSBz
aG91bGQgYmUgImVuIiBFeHBlY3RlZCBTYW1lVmFsdWUowqtlbi11LXZhLXBvc2l4wrssIMKrZW7C
uykgdG8gYmUgdHJ1ZScKK3Rlc3QvaW50bDQwMi9zdXBwb3J0ZWRMb2NhbGVzT2YtdW5pY29kZS1l
eHRlbnNpb25zLWlnbm9yZWQuanM6CisgIGRlZmF1bHQ6ICJTeW50YXhFcnJvcjogVW5leHBlY3Rl
ZCB0b2tlbiAnKScuIEV4cGVjdGVkICc7JyBhZnRlciB2YXJpYWJsZSBkZWNsYXJhdGlvbi4iCisg
IHN0cmljdCBtb2RlOiAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJyknLiBFeHBlY3Rl
ZCAnOycgYWZ0ZXIgdmFyaWFibGUgZGVjbGFyYXRpb24uIgogdGVzdC9sYW5ndWFnZS9ibG9jay1z
Y29wZS9zeW50YXgvcmVkZWNsYXJhdGlvbi9hc3luYy1mdW5jdGlvbi1uYW1lLXJlZGVjbGFyYXRp
b24tYXR0ZW1wdC13aXRoLWFzeW5jLWZ1bmN0aW9uLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2Mjog
VGhpcyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0ZWQuJwogdGVzdC9sYW5ndWFnZS9i
bG9jay1zY29wZS9zeW50YXgvcmVkZWNsYXJhdGlvbi9hc3luYy1mdW5jdGlvbi1uYW1lLXJlZGVj
bGFyYXRpb24tYXR0ZW1wdC13aXRoLWFzeW5jLWdlbmVyYXRvci5qczoKQEAgLTEzMzIsMTIgKzEz
MjksNiBAQCB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL3Njb3BlLWJv
ZHktbGV4LWRpc3RpbmN0LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBh
IFN5bnRheEVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJvd24gYXQg
YWxsJwogdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hcnJvdy1mdW5jdGlvbi9zY29wZS1wYXJh
bS1yZXN0LWVsZW0tdmFyLW9wZW4uanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIFNhbWVWYWx1ZSjCq291dHNpZGXCuywgwqtpbnNpZGXCuykgdG8gYmUgdHJ1ZScKLXRlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC9TMTEuMTMuMV9BN19UMS5qczoKLSAgZGVm
YXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgYnV0IGdvdCBhIFRlc3Qy
NjJFcnJvcicKLSAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVy
cm9yIGJ1dCBnb3QgYSBUZXN0MjYyRXJyb3InCi10ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fz
c2lnbm1lbnQvUzExLjEzLjFfQTdfVDIuanM6Ci0gIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBUZXN0MjYyRXJyb3InCi0gIHN0cmljdCBtb2Rl
OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgVGVzdDI2MkVy
cm9yJwogdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L1MxMS4xMy4xX0E3X1Qz
LmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIER1bW15RXJyb3IgYnV0
IGdvdCBhIFRlc3QyNjJFcnJvcicKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVj
dGVkIGEgRHVtbXlFcnJvciBidXQgZ290IGEgVGVzdDI2MkVycm9yJwpAQCAtMTU4Myw2ICsxNTc0
LDkgQEAgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jb21wb3VuZC1hc3NpZ25tZW50L1MxMS4x
My4yX0E3LjhfVDQuanM6CiB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NvbXBvdW5kLWFzc2ln
bm1lbnQvUzExLjEzLjJfQTcuOV9UNC5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgdHJ1ZSBidXQgZ290IGZhbHNlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgdHJ1ZSBidXQgZ290IGZhbHNlJwordGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
ZWxldGUvc3VwZXItcHJvcGVydHktbnVsbC1iYXNlLmpzOgorICBkZWZhdWx0OiAnVGVzdDI2MkVy
cm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCisgIHN0
cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciBidXQgZ290IGEg
UmVmZXJlbmNlRXJyb3InCiB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L2NhdGNoL25lc3RlZC1hc3luYy1nZW4tYXdhaXQtZXZhbC1zY3JpcHQtY29kZS10YXJnZXQuanM6
CiAgIG1vZHVsZTogJ1Rlc3QyNjI6QXN5bmNUZXN0RmFpbHVyZTpUZXN0MjYyRXJyb3I6IFtvYmpl
Y3QgT2JqZWN0XScKIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvY2F0
Y2gvbmVzdGVkLWFzeW5jLWdlbi1yZXR1cm4tYXdhaXQtZXZhbC1zY3JpcHQtY29kZS10YXJnZXQu
anM6CkBAIC0xNzIyLDExICsxNzE2LDExIEBAIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFz
cy9lbGVtZW50cy9uZXN0ZWQtcHJpdmF0ZS1kaXJlY3QtZXZhbC1lcnItY29udGFpbnMtCiAgIGRl
ZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgU3ludGF4RXJyb3IgYnV0IGdvdCBhIFJl
ZmVyZW5jZUVycm9yJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBT
eW50YXhFcnJvciBidXQgZ290IGEgUmVmZXJlbmNlRXJyb3InCiB0ZXN0L2xhbmd1YWdlL3N0YXRl
bWVudHMvY2xhc3Mvc3ViY2xhc3MvZGVmYXVsdC1jb25zdHJ1Y3Rvci1zcHJlYWQtb3ZlcnJpZGUu
anM6Ci0gIGRlZmF1bHQ6ICdSYW5nZUVycm9yOiBNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBleGNl
ZWRlZC4nCi0gIHN0cmljdCBtb2RlOiAnUmFuZ2VFcnJvcjogTWF4aW11bSBjYWxsIHN0YWNrIHNp
emUgZXhjZWVkZWQuJworICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBAQGl0ZXJhdG9yIGludm9r
ZWQnCisgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBAQGl0ZXJhdG9yIGludm9rZWQnCiB0
ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY29uc3QvZHN0ci9hcnktaW5pdC1pdGVyLWdldC1lcnIt
YXJyYXktcHJvdG90eXBlLmpzOgotICBkZWZhdWx0OiAnVHlwZUVycm9yOiBTcHJlYWQgc3ludGF4
IHJlcXVpcmVzIC4uLml0ZXJhYmxlW1N5bWJvbC5pdGVyYXRvcl0gdG8gYmUgYSBmdW5jdGlvbicK
LSAgc3RyaWN0IG1vZGU6ICdUeXBlRXJyb3I6IFNwcmVhZCBzeW50YXggcmVxdWlyZXMgLi4uaXRl
cmFibGVbU3ltYm9sLml0ZXJhdG9yXSB0byBiZSBhIGZ1bmN0aW9uJworICBkZWZhdWx0OiAnVGVz
dDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2Vw
dGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKKyAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4
cGVjdGVkIGEgVHlwZUVycm9yIHRvIGJlIHRocm93biBidXQgbm8gZXhjZXB0aW9uIHdhcyB0aHJv
d24gYXQgYWxsJwogdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NvbnN0L2RzdHIvYXJ5LXB0cm4t
ZWxlbS1pZC1pdGVyLXZhbC1hcnJheS1wcm90b3R5cGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYy
RXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzPCuywgwqs0MsK7KSB0byBiZSB0cnVlJwogICBz
dHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrM8K7LCDCqzQy
wrspIHRvIGJlIHRydWUnCkBAIC0xODI1LDIwICsxODE5LDIwIEBAIHRlc3QvbGFuZ3VhZ2Uvc3Rh
dGVtZW50cy9mb3Itb2YvZHN0ci9vYmotaWQtcHV0LWxldC5qczoKICAgZGVmYXVsdDogJ1Rlc3Qy
NjJFcnJvcjogRXhwZWN0ZWQgYSBSZWZlcmVuY2VFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4
Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKICAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24g
d2FzIHRocm93biBhdCBhbGwnCiB0ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvZm9yL2RzdHIvY29u
c3QtYXJ5LWluaXQtaXRlci1nZXQtZXJyLWFycmF5LXByb3RvdHlwZS5qczoKLSAgZGVmYXVsdDog
J1R5cGVFcnJvcjogU3ByZWFkIHN5bnRheCByZXF1aXJlcyAuLi5pdGVyYWJsZVtTeW1ib2wuaXRl
cmF0b3JdIHRvIGJlIGEgZnVuY3Rpb24nCi0gIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBTcHJl
YWQgc3ludGF4IHJlcXVpcmVzIC4uLml0ZXJhYmxlW1N5bWJvbC5pdGVyYXRvcl0gdG8gYmUgYSBm
dW5jdGlvbicKKyAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3Ig
dG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCisgIHN0cmlj
dCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24g
YnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVt
ZW50cy9mb3IvZHN0ci9jb25zdC1hcnktcHRybi1lbGVtLWlkLWl0ZXItdmFsLWFycmF5LXByb3Rv
dHlwZS5qczoKICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKr
M8K7LCDCqzQywrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUowqszwrssIMKrNDLCuykgdG8gYmUgdHJ1ZScKIHRlc3QvbGFuZ3Vh
Z2Uvc3RhdGVtZW50cy9mb3IvZHN0ci9sZXQtYXJ5LWluaXQtaXRlci1nZXQtZXJyLWFycmF5LXBy
b3RvdHlwZS5qczoKLSAgZGVmYXVsdDogJ1R5cGVFcnJvcjogU3ByZWFkIHN5bnRheCByZXF1aXJl
cyAuLi5pdGVyYWJsZVtTeW1ib2wuaXRlcmF0b3JdIHRvIGJlIGEgZnVuY3Rpb24nCi0gIHN0cmlj
dCBtb2RlOiAnVHlwZUVycm9yOiBTcHJlYWQgc3ludGF4IHJlcXVpcmVzIC4uLml0ZXJhYmxlW1N5
bWJvbC5pdGVyYXRvcl0gdG8gYmUgYSBmdW5jdGlvbicKKyAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJv
cjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2Fz
IHRocm93biBhdCBhbGwnCisgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBh
IFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFs
bCcKIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3IvZHN0ci9sZXQtYXJ5LXB0cm4tZWxlbS1p
ZC1pdGVyLXZhbC1hcnJheS1wcm90b3R5cGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6
IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzPCuywgwqs0MsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3Qg
bW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrM8K7LCDCqzQywrspIHRv
IGJlIHRydWUnCiB0ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvZm9yL2RzdHIvdmFyLWFyeS1pbml0
LWl0ZXItZ2V0LWVyci1hcnJheS1wcm90b3R5cGUuanM6Ci0gIGRlZmF1bHQ6ICdUeXBlRXJyb3I6
IFNwcmVhZCBzeW50YXggcmVxdWlyZXMgLi4uaXRlcmFibGVbU3ltYm9sLml0ZXJhdG9yXSB0byBi
ZSBhIGZ1bmN0aW9uJwotICBzdHJpY3QgbW9kZTogJ1R5cGVFcnJvcjogU3ByZWFkIHN5bnRheCBy
ZXF1aXJlcyAuLi5pdGVyYWJsZVtTeW1ib2wuaXRlcmF0b3JdIHRvIGJlIGEgZnVuY3Rpb24nCisg
IGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEgVHlwZUVycm9yIGJ1dCBnb3QgYSBS
ZWZlcmVuY2VFcnJvcicKKyAgc3RyaWN0IG1vZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIGEg
VHlwZUVycm9yIGJ1dCBnb3QgYSBSZWZlcmVuY2VFcnJvcicKIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVt
ZW50cy9mb3IvZHN0ci92YXItYXJ5LXB0cm4tZWxlbS1pZC1pdGVyLXZhbC1hcnJheS1wcm90b3R5
cGUuanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzPC
uywgwqs0MsK7KSB0byBiZSB0cnVlJwogICBzdHJpY3QgbW9kZTogJ1Rlc3QyNjJFcnJvcjogRXhw
ZWN0ZWQgU2FtZVZhbHVlKMKrM8K7LCDCqzQywrspIHRvIGJlIHRydWUnCkBAIC0xODczLDggKzE4
NjcsOCBAQCB0ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvbGFiZWxlZC9sZXQtYXJyYXktd2l0aC1u
ZXdsaW5lLmpzOgogdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2xldC9ibG9jay1sb2NhbC1jbG9z
dXJlLXNldC1iZWZvcmUtaW5pdGlhbGl6YXRpb24uanM6CiAgIGRlZmF1bHQ6ICdUZXN0MjYyRXJy
b3I6IEV4cGVjdGVkIGEgUmVmZXJlbmNlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRp
b24gd2FzIHRocm93biBhdCBhbGwnCiB0ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvbGV0L2RzdHIv
YXJ5LWluaXQtaXRlci1nZXQtZXJyLWFycmF5LXByb3RvdHlwZS5qczoKLSAgZGVmYXVsdDogJ1R5
cGVFcnJvcjogU3ByZWFkIHN5bnRheCByZXF1aXJlcyAuLi5pdGVyYWJsZVtTeW1ib2wuaXRlcmF0
b3JdIHRvIGJlIGEgZnVuY3Rpb24nCi0gIHN0cmljdCBtb2RlOiAnVHlwZUVycm9yOiBTcHJlYWQg
c3ludGF4IHJlcXVpcmVzIC4uLml0ZXJhYmxlW1N5bWJvbC5pdGVyYXRvcl0gdG8gYmUgYSBmdW5j
dGlvbicKKyAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8g
YmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRocm93biBhdCBhbGwnCisgIHN0cmljdCBt
b2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5cGVFcnJvciB0byBiZSB0aHJvd24gYnV0
IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcKIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50
cy9sZXQvZHN0ci9hcnktcHRybi1lbGVtLWlkLWl0ZXItdmFsLWFycmF5LXByb3RvdHlwZS5qczoK
ICAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjogRXhwZWN0ZWQgU2FtZVZhbHVlKMKrM8K7LCDCqzQy
wrspIHRvIGJlIHRydWUnCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBT
YW1lVmFsdWUowqszwrssIMKrNDLCuykgdG8gYmUgdHJ1ZScKQEAgLTE5ODMsOCArMTk3Nyw4IEBA
IHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9zd2l0Y2gvc3ludGF4L3JlZGVjbGFyYXRpb24vdmFy
LW5hbWUtcmVkZWNsYXJhdGlvbi1hdHRlCiAgIGRlZmF1bHQ6ICdUZXN0MjYyOiBUaGlzIHN0YXRl
bWVudCBzaG91bGQgbm90IGJlIGV2YWx1YXRlZC4nCiAgIHN0cmljdCBtb2RlOiAnVGVzdDI2Mjog
VGhpcyBzdGF0ZW1lbnQgc2hvdWxkIG5vdCBiZSBldmFsdWF0ZWQuJwogdGVzdC9sYW5ndWFnZS9z
dGF0ZW1lbnRzL3ZhcmlhYmxlL2RzdHIvYXJ5LWluaXQtaXRlci1nZXQtZXJyLWFycmF5LXByb3Rv
dHlwZS5qczoKLSAgZGVmYXVsdDogJ1R5cGVFcnJvcjogU3ByZWFkIHN5bnRheCByZXF1aXJlcyAu
Li5pdGVyYWJsZVtTeW1ib2wuaXRlcmF0b3JdIHRvIGJlIGEgZnVuY3Rpb24nCi0gIHN0cmljdCBt
b2RlOiAnVHlwZUVycm9yOiBTcHJlYWQgc3ludGF4IHJlcXVpcmVzIC4uLml0ZXJhYmxlW1N5bWJv
bC5pdGVyYXRvcl0gdG8gYmUgYSBmdW5jdGlvbicKKyAgZGVmYXVsdDogJ1Rlc3QyNjJFcnJvcjog
RXhwZWN0ZWQgYSBUeXBlRXJyb3IgdG8gYmUgdGhyb3duIGJ1dCBubyBleGNlcHRpb24gd2FzIHRo
cm93biBhdCBhbGwnCisgIHN0cmljdCBtb2RlOiAnVGVzdDI2MkVycm9yOiBFeHBlY3RlZCBhIFR5
cGVFcnJvciB0byBiZSB0aHJvd24gYnV0IG5vIGV4Y2VwdGlvbiB3YXMgdGhyb3duIGF0IGFsbCcK
IHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy92YXJpYWJsZS9kc3RyL2FyeS1wdHJuLWVsZW0taWQt
aXRlci12YWwtYXJyYXktcHJvdG90eXBlLmpzOgogICBkZWZhdWx0OiAnVGVzdDI2MkVycm9yOiBF
eHBlY3RlZCBTYW1lVmFsdWUowqszwrssIMKrNDLCuykgdG8gYmUgdHJ1ZScKICAgc3RyaWN0IG1v
ZGU6ICdUZXN0MjYyRXJyb3I6IEV4cGVjdGVkIFNhbWVWYWx1ZSjCqzPCuywgwqs0MsK7KSB0byBi
ZSB0cnVlJwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL2hhcm5lc3MvY29tcGFyZUFycmF5
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL2hhcm5lc3MvY29tcGFyZUFycmF5LmpzCmluZGV4IDQzY2I0
NTMxNzk3YTEwY2RiZjg2YjVjZmU1MWMwZjI0NDAzZjdlNDUuLmFkZjI5NGI1ZTgyMWVhODMxNTFl
ZDZlZTg2MzM1YTFlMDM4OTcyYzcgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi9oYXJuZXNz
L2NvbXBhcmVBcnJheS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvaGFybmVzcy9jb21wYXJlQXJy
YXkuanMKQEAgLTMwLDcgKzMwLDggQEAgZnVuY3Rpb24gY29tcGFyZUFycmF5KGEsIGIpIHsKICAg
cmV0dXJuIGBbJHthcnJheS5tYXAoU3RyaW5nKS5qb2luKCcsICcpfV1gOwogfTsKIAotYXNzZXJ0
LmNvbXBhcmVBcnJheSA9IGZ1bmN0aW9uKGFjdHVhbCwgZXhwZWN0ZWQsIG1lc3NhZ2UgPSAnJykg
eworYXNzZXJ0LmNvbXBhcmVBcnJheSA9IGZ1bmN0aW9uKGFjdHVhbCwgZXhwZWN0ZWQsIG1lc3Nh
Z2UpIHsKKyAgbWVzc2FnZSAgPSBtZXNzYWdlID09PSB1bmRlZmluZWQgPyAnJyA6IG1lc3NhZ2U7
CiAgIGFzc2VydChhY3R1YWwgIT0gbnVsbCwgYEZpcnN0IGFyZ3VtZW50IHNob3VsZG4ndCBiZSBu
dWxsaXNoLiAke21lc3NhZ2V9YCk7CiAgIGFzc2VydChleHBlY3RlZCAhPSBudWxsLCBgU2Vjb25k
IGFyZ3VtZW50IHNob3VsZG4ndCBiZSBudWxsaXNoLiAke21lc3NhZ2V9YCk7CiAgIHZhciBmb3Jt
YXQgPSBjb21wYXJlQXJyYXkuZm9ybWF0OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL2hh
cm5lc3MvcmVnRXhwVXRpbHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvaGFybmVzcy9yZWdFeHBVdGls
cy5qcwppbmRleCBiZTcwMzlmZGEwOTM1NmE0YjJkOWJlY2JhYzM0OGFhN2ExOTc5Y2ZiLi41Mzhi
YzNmYTYxMTk0MjkyY2Y4MGEwZDQ1NzBlYmU3ZThlYzkxNDU2IDEwMDY0NAotLS0gYS9KU1Rlc3Rz
L3Rlc3QyNjIvaGFybmVzcy9yZWdFeHBVdGlscy5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvaGFy
bmVzcy9yZWdFeHBVdGlscy5qcwpAQCAtNiw3ICs2LDEyIEBACiBkZWZpbmVzOiBbYnVpbGRTdHJp
bmcsIHRlc3RQcm9wZXJ0eUVzY2FwZXMsIG1hdGNoVmFsaWRhdG9yXQogLS0tKi8KIAotZnVuY3Rp
b24gYnVpbGRTdHJpbmcoeyBsb25lQ29kZVBvaW50cywgcmFuZ2VzIH0pIHsKK2Z1bmN0aW9uIGJ1
aWxkU3RyaW5nKGFyZ3MpIHsKKyAgLy8gVXNlIG1lbWJlciBleHByZXNzaW9ucyByYXRoZXIgdGhh
biBkZXN0cnVjdHVyaW5nIGBhcmdzYCBmb3IgaW1wcm92ZWQKKyAgLy8gY29tcGF0aWJpbGl0eSB3
aXRoIGVuZ2luZXMgdGhhdCBvbmx5IGltcGxlbWVudCBhc3NpZ25tZW50IHBhdHRlcm5zCisgIC8v
IHBhcnRpYWxseSBvciBub3QgYXQgYWxsLgorICBjb25zdCBsb25lQ29kZVBvaW50cyA9IGFyZ3Mu
bG9uZUNvZGVQb2ludHM7CisgIGNvbnN0IHJhbmdlcyA9IGFyZ3MucmFuZ2VzOwogICBjb25zdCBD
SFVOS19TSVpFID0gMTAwMDA7CiAgIGxldCByZXN1bHQgPSBSZWZsZWN0LmFwcGx5KFN0cmluZy5m
cm9tQ29kZVBvaW50LCBudWxsLCBsb25lQ29kZVBvaW50cyk7CiAgIGZvciAobGV0IGkgPSAwOyBp
IDwgcmFuZ2VzLmxlbmd0aDsgaSsrKSB7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvaGFy
bmVzcy9zdGEuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvaGFybmVzcy9zdGEuanMKaW5kZXggYWM1OWQz
YTExMGUzNTk3ZTg2OGIxZTIyY2YxY2RhMWFjMTcxZjRmZS4uMjM4MDdhODIwNTkxOGVkMmMyMzlm
YTk3OGE5MzI1Mzc4Y2NhN2I5NiAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL2hhcm5lc3Mv
c3RhLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi9oYXJuZXNzL3N0YS5qcwpAQCAtMTgsOCArMTgs
OCBAQCBmdW5jdGlvbiBUZXN0MjYyRXJyb3IobWVzc2FnZSkgewogICByZXR1cm4gIlRlc3QyNjJF
cnJvcjogIiArIHRoaXMubWVzc2FnZTsKIH07CiAKLVRlc3QyNjJFcnJvci50aHJvd2VyID0gKC4u
LmFyZ3MpID0+IHsKLSAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvciguLi5hcmdzKTsKK1Rlc3QyNjJF
cnJvci50aHJvd2VyID0gKG1lc3NhZ2UpID0+IHsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvciht
ZXNzYWdlKTsKIH07CiAKIHZhciAkRVJST1IgPSBUZXN0MjYyRXJyb3IudGhyb3dlcjsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi9oYXJuZXNzL3Rlc3RJbnRsLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL2hhcm5lc3MvdGVzdEludGwuanMKaW5kZXggNmE1MWIwZjNhNjdmZWIzZmIwOGYwOTlmNjk3
MzQ3NjNlYjM4ZTFmNi4uZWY1ZDM2OWNjNzAwM2FhMTdlZTk0ZGEwOGFmNzM1YWY1NmEyN2I1NSAx
MDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL2hhcm5lc3MvdGVzdEludGwuanMKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL2hhcm5lc3MvdGVzdEludGwuanMKQEAgLTEyOCwxMiArMTI4LDEzIEBAIGZ1
bmN0aW9uIHRhaW50QXJyYXkoKSB7CiAgKiBHZXRzIGxvY2FsZSBzdXBwb3J0IGluZm8gZm9yIHRo
ZSBnaXZlbiBjb25zdHJ1Y3RvciBvYmplY3QsIHdoaWNoIG11c3QgYmUgb25lCiAgKiBvZiBJbnRs
IGNvbnN0cnVjdG9ycy4KICAqIEBwYXJhbSB7b2JqZWN0fSBDb25zdHJ1Y3RvciB0aGUgY29uc3Ry
dWN0b3IgZm9yIHdoaWNoIHRvIGdldCBsb2NhbGUgc3VwcG9ydCBpbmZvCisgKiBAcGFyYW0ge29i
amVjdH0gb3B0aW9ucyB0aGUgb3B0aW9ucyB3aGlsZSBjYWxsaW5nIHRoZSBjb25zdHJ1Y3Rvcgog
ICogQHJldHVybiB7b2JqZWN0fSBsb2NhbGUgc3VwcG9ydCBpbmZvIHdpdGggdGhlIGZvbGxvd2lu
ZyBwcm9wZXJ0aWVzOgogICogICBzdXBwb3J0ZWQ6IGFycmF5IG9mIGZ1bGx5IHN1cHBvcnRlZCBs
YW5ndWFnZSB0YWdzCiAgKiAgIGJ5RmFsbGJhY2s6IGFycmF5IG9mIGxhbmd1YWdlIHRhZ3MgdGhh
dCBhcmUgc3VwcG9ydGVkIHRocm91Z2ggZmFsbGJhY2tzCiAgKiAgIHVuc3VwcG9ydGVkOiBhcnJh
eSBvZiB1bnN1cHBvcnRlZCBsYW5ndWFnZSB0YWdzCiAgKi8KLWZ1bmN0aW9uIGdldExvY2FsZVN1
cHBvcnRJbmZvKENvbnN0cnVjdG9yKSB7CitmdW5jdGlvbiBnZXRMb2NhbGVTdXBwb3J0SW5mbyhD
b25zdHJ1Y3Rvciwgb3B0aW9ucykgewogICB2YXIgbGFuZ3VhZ2VzID0gWyJ6aCIsICJlcyIsICJl
biIsICJoaSIsICJ1ciIsICJhciIsICJqYSIsICJwYSJdOwogICB2YXIgc2NyaXB0cyA9IFsiTGF0
biIsICJIYW5zIiwgIkRldmEiLCAiQXJhYiIsICJKcGFuIiwgIkhhbnQiLCAiR3VydSJdOwogICB2
YXIgY291bnRyaWVzID0gWyJDTiIsICJJTiIsICJVUyIsICJQSyIsICJKUCIsICJUVyIsICJISyIs
ICJTRyIsICI0MTkiXTsKQEAgLTE2Myw3ICsxNjQsNyBAQCBmdW5jdGlvbiBnZXRMb2NhbGVTdXBw
b3J0SW5mbyhDb25zdHJ1Y3RvcikgewogICB2YXIgdW5zdXBwb3J0ZWQgPSBbXTsKICAgZm9yIChp
ID0gMDsgaSA8IGFsbFRhZ3MubGVuZ3RoOyBpKyspIHsKICAgICB2YXIgcmVxdWVzdCA9IGFsbFRh
Z3NbaV07Ci0gICAgdmFyIHJlc3VsdCA9IG5ldyBDb25zdHJ1Y3RvcihbcmVxdWVzdF0sIHtsb2Nh
bGVNYXRjaGVyOiAibG9va3VwIn0pLnJlc29sdmVkT3B0aW9ucygpLmxvY2FsZTsKKyAgICB2YXIg
cmVzdWx0ID0gbmV3IENvbnN0cnVjdG9yKFtyZXF1ZXN0XSwgb3B0aW9ucykucmVzb2x2ZWRPcHRp
b25zKCkubG9jYWxlOwogICAgIGlmIChyZXF1ZXN0ID09PSByZXN1bHQpIHsKICAgICAgIHN1cHBv
cnRlZC5wdXNoKHJlcXVlc3QpOwogICAgIH0gZWxzZSBpZiAocmVxdWVzdC5pbmRleE9mKHJlc3Vs
dCkgPT09IDApIHsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi9sYXRlc3QtY2hhbmdlcy1z
dW1tYXJ5LnR4dCBiL0pTVGVzdHMvdGVzdDI2Mi9sYXRlc3QtY2hhbmdlcy1zdW1tYXJ5LnR4dApp
bmRleCAxOTlhMzRhMjJmYTM0MTZlZjJlMDViNGY3NTY1ZGM4NzI3ZDA2YzQzLi5mOTdmNDBhYjk4
NjI4ZjMwNGE3MmYzOWVjMzZlOTIwMjYyN2E3NjI1IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3Qy
NjIvbGF0ZXN0LWNoYW5nZXMtc3VtbWFyeS50eHQKKysrIGIvSlNUZXN0cy90ZXN0MjYyL2xhdGVz
dC1jaGFuZ2VzLXN1bW1hcnkudHh0CkBAIC0xLDY3ICsxLDQ5OCBAQAotQSB0ZXN0L2J1aWx0LWlu
cy9BcnJheS9wcm90b3R5cGUvdG9TdHJpbmcvbm9uLWNhbGxhYmxlLWpvaW4tc3RyaW5nLXRhZy5q
cwotQSB0ZXN0L2J1aWx0LWlucy9CaWdJbnQvd3JhcHBlci1vYmplY3Qtb3JkaW5hcnktdG9wcmlt
aXRpdmUuanMKLUEgdGVzdC9idWlsdC1pbnMvRXJyb3IvY2F1c2VfYWJydXB0LmpzCi1BIHRlc3Qv
YnVpbHQtaW5zL0Vycm9yL2NhdXNlX3Byb3BlcnR5LmpzCi1BIHRlc3QvYnVpbHQtaW5zL0Vycm9y
L2NvbnN0cnVjdG9yLmpzCi1BIHRlc3QvYnVpbHQtaW5zL05hdGl2ZUVycm9ycy9BZ2dyZWdhdGVF
cnJvci9jYXVzZS1wcm9wZXJ0eS5qcwotQSB0ZXN0L2J1aWx0LWlucy9OYXRpdmVFcnJvcnMvY2F1
c2VfcHJvcGVydHlfbmF0aXZlX2Vycm9yLmpzCi1BIHRlc3QvYnVpbHQtaW5zL1N5bWJvbC9wcm90
b3R5cGUvU3ltYm9sLnRvUHJpbWl0aXZlL3JlZGVmaW5lZC1zeW1ib2wtd3JhcHBlci1vcmRpbmFy
eS10b3ByaW1pdGl2ZS5qcwotQSB0ZXN0L2J1aWx0LWlucy9TeW1ib2wvcHJvdG90eXBlL1N5bWJv
bC50b1ByaW1pdGl2ZS9yZW1vdmVkLXN5bWJvbC13cmFwcGVyLW9yZGluYXJ5LXRvcHJpbWl0aXZl
LmpzCi1NIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3MvY3BuLWNsYXNzLWV4cHItYWNj
ZXNzb3JzLWNvbXB1dGVkLXByb3BlcnR5LW5hbWUtZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24t
Y29hbGVzY2UuanMKLU0gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFzcy9jcG4tY2xhc3Mt
ZXhwci1hY2Nlc3NvcnMtY29tcHV0ZWQtcHJvcGVydHktbmFtZS1mcm9tLWFzc2lnbm1lbnQtZXhw
cmVzc2lvbi1sb2dpY2FsLWFuZC5qcwotTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNz
L2Nwbi1jbGFzcy1leHByLWFjY2Vzc29ycy1jb21wdXRlZC1wcm9wZXJ0eS1uYW1lLWZyb20tYXNz
aWdubWVudC1leHByZXNzaW9uLWxvZ2ljYWwtb3IuanMKLU0gdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9jbGFzcy9jcG4tY2xhc3MtZXhwci1jb21wdXRlZC1wcm9wZXJ0eS1uYW1lLWZyb20tYXNz
aWdubWVudC1leHByZXNzaW9uLWNvYWxlc2NlLmpzCi1NIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvY2xhc3MvY3BuLWNsYXNzLWV4cHItY29tcHV0ZWQtcHJvcGVydHktbmFtZS1mcm9tLWFzc2ln
bm1lbnQtZXhwcmVzc2lvbi1sb2dpY2FsLWFuZC5qcwotTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2NsYXNzL2Nwbi1jbGFzcy1leHByLWNvbXB1dGVkLXByb3BlcnR5LW5hbWUtZnJvbS1hc3Np
Z25tZW50LWV4cHJlc3Npb24tbG9naWNhbC1vci5qcwotTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2NsYXNzL2Nwbi1jbGFzcy1leHByLWZpZWxkcy1jb21wdXRlZC1wcm9wZXJ0eS1uYW1lLWZy
b20tYXNzaWdubWVudC1leHByZXNzaW9uLWNvYWxlc2NlLmpzCi1NIHRlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvY2xhc3MvY3BuLWNsYXNzLWV4cHItZmllbGRzLWNvbXB1dGVkLXByb3BlcnR5LW5h
bWUtZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24tbG9naWNhbC1hbmQuanMKLU0gdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9jbGFzcy9jcG4tY2xhc3MtZXhwci1maWVsZHMtY29tcHV0ZWQtcHJv
cGVydHktbmFtZS1mcm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1sb2dpY2FsLW9yLmpzCi1NIHRl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvY2xhc3MvY3BuLWNsYXNzLWV4cHItZmllbGRzLW1ldGhv
ZHMtY29tcHV0ZWQtcHJvcGVydHktbmFtZS1mcm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1jb2Fs
ZXNjZS5qcwotTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2NsYXNzL2Nwbi1jbGFzcy1leHBy
LWZpZWxkcy1tZXRob2RzLWNvbXB1dGVkLXByb3BlcnR5LW5hbWUtZnJvbS1hc3NpZ25tZW50LWV4
cHJlc3Npb24tbG9naWNhbC1hbmQuanMKLU0gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9jbGFz
cy9jcG4tY2xhc3MtZXhwci1maWVsZHMtbWV0aG9kcy1jb21wdXRlZC1wcm9wZXJ0eS1uYW1lLWZy
b20tYXNzaWdubWVudC1leHByZXNzaW9uLWxvZ2ljYWwtb3IuanMKLUEgdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9pbi9wcml2YXRlLWZpZWxkLWluLmpzCi1BIHRlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvaW4vcHJpdmF0ZS1maWVsZC1pbnZhbGlkLWFzc2lnbm1lbnQtdGFyZ2V0LmpzCi1BIHRl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvaW4vcHJpdmF0ZS1maWVsZC1pbnZhbGlkLWlkZW50aWZp
ZXItY29tcGxleC5qcwotQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2luL3ByaXZhdGUtZmll
bGQtaW52YWxpZC1pZGVudGlmaWVyLXNpbXBsZS5qcwotQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2luL3ByaXZhdGUtZmllbGQtaW52YWxpZC1yaHMuanMKLUEgdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9pbi9wcml2YXRlLWZpZWxkLXByZXNlbmNlLWFjY2Vzc29yLXNoYWRvd2VkLmpzCi1B
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvaW4vcHJpdmF0ZS1maWVsZC1wcmVzZW5jZS1hY2Nl
c3Nvci5qcwotQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2luL3ByaXZhdGUtZmllbGQtcHJl
c2VuY2UtZmllbGQtc2hhZG93ZWQuanMKLUEgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9pbi9w
cml2YXRlLWZpZWxkLXByZXNlbmNlLWZpZWxkLmpzCi1BIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvaW4vcHJpdmF0ZS1maWVsZC1wcmVzZW5jZS1tZXRob2Qtc2hhZG93ZWQuanMKLUEgdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9pbi9wcml2YXRlLWZpZWxkLXByZXNlbmNlLW1ldGhvZC5qcwot
QSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2luL3ByaXZhdGUtZmllbGQtcmhzLWF3YWl0LWFi
c2VudC5qcwotQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2luL3ByaXZhdGUtZmllbGQtcmhz
LWF3YWl0LXByZXNlbnQuanMKLUEgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9pbi9wcml2YXRl
LWZpZWxkLXJocy1ub24tb2JqZWN0LmpzCi1BIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvaW4v
cHJpdmF0ZS1maWVsZC1yaHMtdW5yZXNvbHZhYmxlLmpzCi1BIHRlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvaW4vcHJpdmF0ZS1maWVsZC1yaHMteWllbGQtYWJzZW50LmpzCi1BIHRlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvaW4vcHJpdmF0ZS1maWVsZC1yaHMteWllbGQtcHJlc2VudC5qcwotTSB0
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL29iamVjdC9jcG4tb2JqLWxpdC1jb21wdXRlZC1wcm9w
ZXJ0eS1uYW1lLWZyb20tYXNzaWdubWVudC1leHByZXNzaW9uLWNvYWxlc2NlLmpzCi1NIHRlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvb2JqZWN0L2Nwbi1vYmotbGl0LWNvbXB1dGVkLXByb3BlcnR5
LW5hbWUtZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24tbG9naWNhbC1hbmQuanMKLU0gdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9vYmplY3QvY3BuLW9iai1saXQtY29tcHV0ZWQtcHJvcGVydHkt
bmFtZS1mcm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1sb2dpY2FsLW9yLmpzCi1NIHRlc3QvbGFu
Z3VhZ2UvZnV0dXJlLXJlc2VydmVkLXdvcmRzL2ltcGxlbWVudHMuanMKLU0gdGVzdC9sYW5ndWFn
ZS9mdXR1cmUtcmVzZXJ2ZWQtd29yZHMvaW50ZXJmYWNlLmpzCi1NIHRlc3QvbGFuZ3VhZ2UvZnV0
dXJlLXJlc2VydmVkLXdvcmRzL3BhY2thZ2UuanMKLU0gdGVzdC9sYW5ndWFnZS9mdXR1cmUtcmVz
ZXJ2ZWQtd29yZHMvcHJpdmF0ZS5qcwotTSB0ZXN0L2xhbmd1YWdlL2Z1dHVyZS1yZXNlcnZlZC13
b3Jkcy9wcm90ZWN0ZWQuanMKLU0gdGVzdC9sYW5ndWFnZS9mdXR1cmUtcmVzZXJ2ZWQtd29yZHMv
cHVibGljLmpzCi1NIHRlc3QvbGFuZ3VhZ2UvZnV0dXJlLXJlc2VydmVkLXdvcmRzL3N0YXRpYy5q
cwotQSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2V4cG9ydC1leHBuYW1lLWJpbmRpbmctaW5k
ZXguanMKLUEgdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9leHBvcnQtZXhwbmFtZS1iaW5kaW5n
LWluZGV4X0ZJWFRVUkUuanMKLU0gdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2Nwbi1j
bGFzcy1kZWNsLWFjY2Vzc29ycy1jb21wdXRlZC1wcm9wZXJ0eS1uYW1lLWZyb20tYXNzaWdubWVu
dC1leHByZXNzaW9uLWNvYWxlc2NlLmpzCi1NIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFz
cy9jcG4tY2xhc3MtZGVjbC1hY2Nlc3NvcnMtY29tcHV0ZWQtcHJvcGVydHktbmFtZS1mcm9tLWFz
c2lnbm1lbnQtZXhwcmVzc2lvbi1sb2dpY2FsLWFuZC5qcwotTSB0ZXN0L2xhbmd1YWdlL3N0YXRl
bWVudHMvY2xhc3MvY3BuLWNsYXNzLWRlY2wtYWNjZXNzb3JzLWNvbXB1dGVkLXByb3BlcnR5LW5h
bWUtZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24tbG9naWNhbC1vci5qcwotTSB0ZXN0L2xhbmd1
YWdlL3N0YXRlbWVudHMvY2xhc3MvY3BuLWNsYXNzLWRlY2wtY29tcHV0ZWQtcHJvcGVydHktbmFt
ZS1mcm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1jb2FsZXNjZS5qcwotTSB0ZXN0L2xhbmd1YWdl
L3N0YXRlbWVudHMvY2xhc3MvY3BuLWNsYXNzLWRlY2wtY29tcHV0ZWQtcHJvcGVydHktbmFtZS1m
cm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1sb2dpY2FsLWFuZC5qcwotTSB0ZXN0L2xhbmd1YWdl
L3N0YXRlbWVudHMvY2xhc3MvY3BuLWNsYXNzLWRlY2wtY29tcHV0ZWQtcHJvcGVydHktbmFtZS1m
cm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1sb2dpY2FsLW9yLmpzCi1NIHRlc3QvbGFuZ3VhZ2Uv
c3RhdGVtZW50cy9jbGFzcy9jcG4tY2xhc3MtZGVjbC1maWVsZHMtY29tcHV0ZWQtcHJvcGVydHkt
bmFtZS1mcm9tLWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1jb2FsZXNjZS5qcwotTSB0ZXN0L2xhbmd1
YWdlL3N0YXRlbWVudHMvY2xhc3MvY3BuLWNsYXNzLWRlY2wtZmllbGRzLWNvbXB1dGVkLXByb3Bl
cnR5LW5hbWUtZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24tbG9naWNhbC1hbmQuanMKLU0gdGVz
dC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2Nwbi1jbGFzcy1kZWNsLWZpZWxkcy1jb21wdXRl
ZC1wcm9wZXJ0eS1uYW1lLWZyb20tYXNzaWdubWVudC1leHByZXNzaW9uLWxvZ2ljYWwtb3IuanMK
LU0gdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2Nwbi1jbGFzcy1kZWNsLWZpZWxkcy1t
ZXRob2RzLWNvbXB1dGVkLXByb3BlcnR5LW5hbWUtZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24t
Y29hbGVzY2UuanMKLU0gdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL2Nwbi1jbGFzcy1k
ZWNsLWZpZWxkcy1tZXRob2RzLWNvbXB1dGVkLXByb3BlcnR5LW5hbWUtZnJvbS1hc3NpZ25tZW50
LWV4cHJlc3Npb24tbG9naWNhbC1hbmQuanMKLU0gdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Ns
YXNzL2Nwbi1jbGFzcy1kZWNsLWZpZWxkcy1tZXRob2RzLWNvbXB1dGVkLXByb3BlcnR5LW5hbWUt
ZnJvbS1hc3NpZ25tZW50LWV4cHJlc3Npb24tbG9naWNhbC1vci5qcwotTSB0ZXN0L2xhbmd1YWdl
L3N0YXRlbWVudHMvY2xhc3MvcHJpdmF0ZS1ub24tc3RhdGljLWdldHRlci1zdGF0aWMtc2V0dGVy
LWVhcmx5LWVycm9yLmpzCi1NIHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9jbGFzcy9wcml2YXRl
LW5vbi1zdGF0aWMtc2V0dGVyLXN0YXRpYy1nZXR0ZXItZWFybHktZXJyb3IuanMKLU0gdGVzdC9s
YW5ndWFnZS9zdGF0ZW1lbnRzL2NsYXNzL3ByaXZhdGUtc3RhdGljLWdldHRlci1ub24tc3RhdGlj
LXNldHRlci1lYXJseS1lcnJvci5qcwotTSB0ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvY2xhc3Mv
cHJpdmF0ZS1zdGF0aWMtc2V0dGVyLW5vbi1zdGF0aWMtZ2V0dGVyLWVhcmx5LWVycm9yLmpzCi1B
IHRlc3QvbGFuZ3VhZ2Uvc3RhdGVtZW50cy9mb3ItYXdhaXQtb2YvaGVhZC1saHMtYXN5bmMuanMK
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitNIGhhcm5lc3MvY29tcGFyZUFycmF5LmpzCitN
IGhhcm5lc3MvcmVnRXhwVXRpbHMuanMKK00gaGFybmVzcy9zdGEuanMKK00gaGFybmVzcy90ZXN0
SW50bC5qcworTSB0ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9yZWdleHAvbGVnYWN5LW9j
dGFsLWVzY2FwZS5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5
dGVsZW5ndGgtZGltaW51aXRpdmUuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvb3B0
aW9ucy1tYXhieXRlbGVuZ3RoLWV4Y2Vzc2l2ZS5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1
ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtbmVnYXRpdmUuanMKK0EgdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLW9iamVjdC5qcworQSB0ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtcG9pc29uZWQuanMKK0EgdGVz
dC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLXVuZGVmaW5lZC5q
cworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW5vbi1vYmplY3QuanMKK0Eg
dGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvZGV0YWNo
ZWQtYnVmZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhC
eXRlTGVuZ3RoL2ludm9rZWQtYXMtYWNjZXNzb3IuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlC
dWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvaW52b2tlZC1hcy1mdW5jLmpzCitBIHRlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2xlbmd0aC5qcwor
QSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9uYW1l
LmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3Ro
L3Byb3AtZGVzYy5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4
Qnl0ZUxlbmd0aC9yZXR1cm4tbWF4Ynl0ZWxlbmd0aC1ub24tcmVzaXphYmxlLmpzCitBIHRlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhi
eXRlbGVuZ3RoLXJlc2l6YWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90
b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWhhcy1uby1hcnJheWJ1ZmZlcmRhdGEtaW50ZXJuYWwu
anMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgv
dGhpcy1pcy1ub3Qtb2JqZWN0LmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS9tYXhCeXRlTGVuZ3RoL3RoaXMtaXMtc2hhcmVkYXJyYXlidWZmZXIuanMKK0EgdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9kZXRhY2hlZC1idWZmZXIu
anMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9pbnZv
a2VkLWFzLWFjY2Vzc29yLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlw
ZS9yZXNpemFibGUvaW52b2tlZC1hcy1mdW5jLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvbGVuZ3RoLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvbmFtZS5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJh
eUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3Byb3AtZGVzYy5qcworQSB0ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3JldHVybi1yZXNpemFibGUuanMKK0Eg
dGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS90aGlzLWhhcy1u
by1hcnJheWJ1ZmZlcmRhdGEtaW50ZXJuYWwuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS90aGlzLWlzLW5vdC1vYmplY3QuanMKK0EgdGVzdC9idWls
dC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS90aGlzLWlzLXNoYXJlZGFycmF5
YnVmZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUv
ZGVzY3JpcHRvci5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVz
aXplL2V4dGVuc2libGUuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBl
L3Jlc2l6ZS9sZW5ndGguanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBl
L3Jlc2l6ZS9uYW1lLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9y
ZXNpemUvbmV3LWxlbmd0aC1leGNlc3NpdmUuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL3Jlc2l6ZS9uZXctbGVuZ3RoLW5lZ2F0aXZlLmpzCitBIHRlc3QvYnVpbHQt
aW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvbmV3LWxlbmd0aC1ub24tbnVtYmVyLmpz
CitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvbm9uY29uc3Ry
dWN0b3IuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9y
ZXNpemUtZ3Jvdy5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVz
aXplL3Jlc2l6ZS1zYW1lLXNpemUtemVyby1leHBsaWNpdC5qcworQSB0ZXN0L2J1aWx0LWlucy9B
cnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUtemVyby1pbXBsaWNp
dC5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6
ZS1zYW1lLXNpemUuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jl
c2l6ZS9yZXNpemUtc2hyaW5rLXplcm8tZXhwbGljaXQuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJy
YXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hyaW5rLXplcm8taW1wbGljaXQuanMK
K0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hy
aW5rLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvdGhp
cy1pcy1kZXRhY2hlZC5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUv
cmVzaXplL3RoaXMtaXMtbm90LWFycmF5YnVmZmVyLW9iamVjdC5qcworQSB0ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtbm90LW9iamVjdC5qcworQSB0
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtbm90LXJl
c2l6YWJsZS1hcnJheWJ1ZmZlci1vYmplY3QuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL3Jlc2l6ZS90aGlzLWlzLXNoYXJlZGFycmF5YnVmZmVyLmpzCitBIHRlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9kZXNjcmlwdG9yLmpzCitB
IHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9leHRlbnNpYmxl
LmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9t
LWZpeGVkLXRvLWxhcmdlci5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5
cGUvdHJhbnNmZXIvZnJvbS1maXhlZC10by1zYW1lLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRvLXNtYWxsZXIuanMKK0EgdGVz
dC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL2Zyb20tZml4ZWQtdG8t
emVyby5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIv
ZnJvbS1yZXNpemFibGUtdG8tbGFyZ2VyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by1zYW1lLmpzCitBIHRlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by1z
bWFsbGVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zl
ci9mcm9tLXJlc2l6YWJsZS10by16ZXJvLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS90cmFuc2Zlci9sZW5ndGguanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL3RyYW5zZmVyL25hbWUuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL3RyYW5zZmVyL25ldy1sZW5ndGgtZXhjZXNzaXZlLmpzCitBIHRlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9uZXctbGVuZ3RoLW5vbi1udW1i
ZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL25v
bmNvbnN0cnVjdG9yLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90
cmFuc2Zlci90aGlzLWlzLWRldGFjaGVkLmpzCitBIHRlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS90cmFuc2Zlci90aGlzLWlzLW5vdC1hcnJheWJ1ZmZlci1vYmplY3QuanMKK0Eg
dGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL3RoaXMtaXMtbm90
LW9iamVjdC5qcworQSB0ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNm
ZXIvdGhpcy1pcy1zaGFyZWRhcnJheWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9wcm90b3R5cGUvYnl0ZUxlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMKK0Eg
dGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvcmVzaXphYmxlLWFy
cmF5LWJ1ZmZlci1maXhlZC5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUv
Ynl0ZU9mZnNldC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMKK0EgdGVzdC9idWlsdC1p
bnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1m
aXhlZC5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0QmlnSW50NjQv
cmVzaXphYmxlLWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUv
Z2V0QmlnVWludDY0L3Jlc2l6YWJsZS1idWZmZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvRGF0YVZp
ZXcvcHJvdG90eXBlL2dldEZsb2F0MzIvcmVzaXphYmxlLWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0
LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0RmxvYXQ2NC9yZXNpemFibGUtYnVmZmVyLmpzCitB
IHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJbnQxNi9yZXNpemFibGUtYnVm
ZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJbnQzMi9yZXNp
emFibGUtYnVmZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJ
bnQ4L3Jlc2l6YWJsZS1idWZmZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90
eXBlL2dldFVpbnQxNi9yZXNpemFibGUtYnVmZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L3Byb3RvdHlwZS9nZXRVaW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0
LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0VWludDgvcmVzaXphYmxlLWJ1ZmZlci5qcworQSB0
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0QmlnSW50NjQvcmVzaXphYmxlLWJ1
ZmZlci5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0QmlnVWludDY0
L3Jlc2l6YWJsZS1idWZmZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBl
L3NldEZsb2F0MzIvcmVzaXphYmxlLWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9wcm90b3R5cGUvc2V0RmxvYXQ2NC9yZXNpemFibGUtYnVmZmVyLmpzCitBIHRlc3QvYnVpbHQt
aW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRJbnQxNi9yZXNpemFibGUtYnVmZmVyLmpzCitBIHRl
c3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRJbnQzMi9yZXNpemFibGUtYnVmZmVy
LmpzCitBIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRJbnQ4L3Jlc2l6YWJs
ZS1idWZmZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVpbnQx
Ni9yZXNpemFibGUtYnVmZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlw
ZS9zZXRVaW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9wcm90b3R5cGUvc2V0VWludDgvcmVzaXphYmxlLWJ1ZmZlci5qcworTSB0ZXN0L2J1aWx0LWlu
cy9FcnJvci9jYXVzZV9hYnJ1cHQuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9k
ZXNjcmlwdG9yLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duLmpzCitB
IHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9leGlzdHMuanMK
K0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlci5q
cworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVy
X2FuZF9zZXR0ZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5o
ZXJpdGVkX2dldHRlcl9hbmRfc2V0dGVyX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCitBIHRl
c3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3Nl
dHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmpl
Y3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2FuZF9zZXR0ZXJfbm9uY29uZmlndXJh
YmxlX2VudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25f
aW5oZXJpdGVkX2dldHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxl
LmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0
ZXJfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5q
cworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVy
X25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9o
YXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFi
bGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX25v
bndyaXRhYmxlX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09i
amVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9ub253cml0YWJsZV9jb25maWd1cmFibGVfbm9u
ZW51bWVyYWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhl
cml0ZWRfbm9ud3JpdGFibGVfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKK0EgdGVzdC9i
dWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX25vbndyaXRhYmxlX25vbmNv
bmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9zZXR0ZXIuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25faW5oZXJpdGVkX3NldHRlcl9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwor
QSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfc2V0dGVyX2Nv
bmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMK
K0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX3NldHRlcl9u
b25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3Qv
aGFzT3duL2hhc293bl9pbmhlcml0ZWRfd3JpdGFibGVfY29uZmlndXJhYmxlX2VudW1lcmFibGUu
anMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX3dyaXRh
YmxlX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93cml0YWJsZV9ub25jb25maWd1cmFibGVfZW51bWVy
YWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRf
d3JpdGFibGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25fbm9uZXhpc3RlbnQuanMKK0EgdGVzdC9idWlsdC1pbnMv
T2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlci5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmpl
Y3QvaGFzT3duL2hhc293bl9vd25fZ2V0dGVyX2FuZF9zZXR0ZXIuanMKK0EgdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9hbmRfc2V0dGVyX2NvbmZpZ3VyYWJs
ZV9lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293
bl9nZXR0ZXJfYW5kX3NldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcworQSB0ZXN0
L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fZ2V0dGVyX2FuZF9zZXR0ZXJfbm9u
Y29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9oYXNvd25fb3duX2dldHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJh
YmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJf
Y29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9oYXNvd25fb3duX2dldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcworQSB0ZXN0
L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fZ2V0dGVyX25vbmNvbmZpZ3VyYWJs
ZV9lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293
bl9nZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX25vbndyaXRhYmxlX2NvbmZpZ3VyYWJsZV9lbnVt
ZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9ub253
cml0YWJsZV9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9P
YmplY3QvaGFzT3duL2hhc293bl9vd25fbm9ud3JpdGVhYmxlX2NvbmZpZ3VyYWJsZV9ub25lbnVt
ZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9ub253
cml0ZWFibGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3Byb3BlcnR5X2V4aXN0cy5qcworQSB0ZXN0L2J1
aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fc2V0dGVyLmpzCitBIHRlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXJfY29uZmlndXJhYmxlX2VudW1lcmFi
bGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3NldHRlcl9j
b25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9vd25fc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCitBIHRl
c3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXJfbm9uY29uZmlndXJh
YmxlX25vbmVudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNv
d25fb3duX3dyaXRhYmxlX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCitBIHRlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl93cml0YWJsZV9jb25maWd1cmFibGVfbm9uZW51
bWVyYWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fd3Jp
dGFibGVfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L2hhc093bi9oYXNvd25fb3duX3dyaXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJh
YmxlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vbGVuZ3RoLmpzCitBIHRlc3Qv
YnVpbHQtaW5zL09iamVjdC9oYXNPd24vbmFtZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3Qv
aGFzT3duL25vdC1hLWNvbnN0cnVjdG9yLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vcHJvdG90eXBlLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vc3ltYm9sX293
bl9wcm9wZXJ0eS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJvbF9wcm9w
ZXJ0eV90b1ByaW1pdGl2ZS5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJv
bF9wcm9wZXJ0eV90b1N0cmluZy5qcworQSB0ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5
bWJvbF9wcm9wZXJ0eV92YWx1ZU9mLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
dG9vYmplY3RfYmVmb3JlX3RvcHJvcGVydHlrZXkuanMKK0EgdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi90b29iamVjdF9udWxsLmpzCitBIHRlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
dG9vYmplY3RfdW5kZWZpbmVkLmpzCitEIHRlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNv
bHZlLWVsZW1lbnQtZnVuY3Rpb24tZXh0ZW5zaWJsZS5qcworRCB0ZXN0L2J1aWx0LWlucy9Qcm9t
aXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1bmN0aW9uLW5hbWUuanMKK0QgdGVzdC9idWlsdC1p
bnMvUHJvbWlzZS9yYWNlL3Jlc29sdmUtZWxlbWVudC1mdW5jdGlvbi1ub25jb25zdHJ1Y3Rvci5q
cworRCB0ZXN0L2J1aWx0LWlucy9Qcm9taXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1bmN0aW9u
LXByb3RvdHlwZS5qcworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25z
LW1heGJ5dGVsZW5ndGgtZGltaW51aXRpdmUuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJy
YXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLWV4Y2Vzc2l2ZS5qcworQSB0ZXN0L2J1aWx0
LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtbmVnYXRpdmUuanMK
K0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3Ro
LW9iamVjdC5qcworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1h
eGJ5dGVsZW5ndGgtcG9pc29uZWQuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZm
ZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLXVuZGVmaW5lZC5qcworQSB0ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW5vbi1vYmplY3QuanMKK0EgdGVzdC9idWlsdC1pbnMv
U2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvZGVzY3JpcHRvci5qcworQSB0ZXN0L2J1
aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9leHRlbnNpYmxlLmpzCitB
IHRlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2dyb3ctbGFy
Z2VyLXNpemUuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBl
L2dyb3cvZ3Jvdy1zYW1lLXNpemUuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL2dyb3cvZ3Jvdy1zbWFsbGVyLXNpemUuanMKK0EgdGVzdC9idWlsdC1pbnMv
U2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvbGVuZ3RoLmpzCitBIHRlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L25hbWUuanMKK0EgdGVzdC9idWls
dC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvbmV3LWxlbmd0aC1leGNlc3Np
dmUuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cv
bmV3LWxlbmd0aC1uZWdhdGl2ZS5qcworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZl
ci9wcm90b3R5cGUvZ3Jvdy9uZXctbGVuZ3RoLW5vbi1udW1iZXIuanMKK0EgdGVzdC9idWlsdC1p
bnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvbm9uY29uc3RydWN0b3IuanMKK0Eg
dGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvdGhpcy1pcy1u
b3QtYXJyYXlidWZmZXItb2JqZWN0LmpzCitBIHRlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVm
ZmVyL3Byb3RvdHlwZS9ncm93L3RoaXMtaXMtbm90LW9iamVjdC5qcworQSB0ZXN0L2J1aWx0LWlu
cy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLW5vdC1yZXNpemFibGUt
YXJyYXlidWZmZXItb2JqZWN0LmpzCitBIHRlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVy
L3Byb3RvdHlwZS9ncm93L3RoaXMtaXMtc2hhcmVkYXJyYXlidWZmZXIuanMKK0EgdGVzdC9idWls
dC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL2ludm9rZWQtYXMtYWNj
ZXNzb3IuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dy
b3dhYmxlL2ludm9rZWQtYXMtZnVuYy5qcworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1
ZmZlci9wcm90b3R5cGUvZ3Jvd2FibGUvbGVuZ3RoLmpzCitBIHRlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9uYW1lLmpzCitBIHRlc3QvYnVpbHQtaW5z
L1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9wcm9wLWRlc2MuanMKK0EgdGVz
dC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3JldHVybi1n
cm93YWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUv
Z3Jvd2FibGUvdGhpcy1oYXMtbm8tYXJyYXlidWZmZXJkYXRhLWludGVybmFsLmpzCitBIHRlc3Qv
YnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS90aGlzLWlzLWFy
cmF5YnVmZmVyLmpzCitBIHRlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlw
ZS9ncm93YWJsZS90aGlzLWlzLW5vdC1vYmplY3QuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVk
QXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvaW52b2tlZC1hcy1hY2Nlc3Nvci5q
cworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxl
bmd0aC9pbnZva2VkLWFzLWZ1bmMuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvbGVuZ3RoLmpzCitBIHRlc3QvYnVpbHQtaW5zL1No
YXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL25hbWUuanMKK0EgdGVzdC9i
dWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvcHJvcC1k
ZXNjLmpzCitBIHRlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhC
eXRlTGVuZ3RoL3JldHVybi1tYXhieXRlbGVuZ3RoLWdyb3dhYmxlLmpzCitBIHRlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhi
eXRlbGVuZ3RoLW5vbi1ncm93YWJsZS5qcworQSB0ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1
ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWhhcy1uby1hcnJheWJ1ZmZlcmRhdGEt
aW50ZXJuYWwuanMKK0EgdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBl
L21heEJ5dGVMZW5ndGgvdGhpcy1pcy1hcnJheWJ1ZmZlci5qcworQSB0ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlzLW5vdC1vYmpl
Y3QuanMKK0EgdGVzdC9idWlsdC1pbnMvU3ltYm9sL2Zvci9kZXNjcmlwdGlvbi5qcworQSB0ZXN0
L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvaW5zdGFudC9leHRlbnNpYmxlLmpzCitBIHRlc3QvYnVp
bHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L2xlbmd0aC5qcworQSB0ZXN0L2J1aWx0LWlucy9U
ZW1wb3JhbC9ub3cvaW5zdGFudC9uYW1lLmpzCitBIHRlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25v
dy9pbnN0YW50L25vdC1hLWNvbnN0cnVjdG9yLmpzCitBIHRlc3QvYnVpbHQtaW5zL1RlbXBvcmFs
L25vdy9pbnN0YW50L3Byb3AtZGVzYy5qcworQSB0ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cv
aW5zdGFudC9yZXR1cm4tdmFsdWUtZGlzdGluY3QuanMKK0EgdGVzdC9idWlsdC1pbnMvVGVtcG9y
YWwvbm93L2luc3RhbnQvcmV0dXJuLXZhbHVlLXByb3RvdHlwZS5qcworQSB0ZXN0L2J1aWx0LWlu
cy9UZW1wb3JhbC9ub3cvaW5zdGFudC9yZXR1cm4tdmFsdWUtdmFsdWUuanMKK0EgdGVzdC9idWls
dC1pbnMvVGVtcG9yYWwvbm93L3RpbWVab25lL2V4dGVuc2libGUuanMKK0EgdGVzdC9idWlsdC1p
bnMvVGVtcG9yYWwvbm93L3RpbWVab25lL2xlbmd0aC5qcworQSB0ZXN0L2J1aWx0LWlucy9UZW1w
b3JhbC9ub3cvdGltZVpvbmUvbmFtZS5qcworQSB0ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cv
dGltZVpvbmUvbmV3LW9iamVjdC5qcworQSB0ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGlt
ZVpvbmUvbm90LWEtY29uc3RydWN0b3IuanMKK0EgdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93
L3RpbWVab25lL3Byb3AtZGVzYy5qcworQSB0ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGlt
ZVpvbmUvcmV0dXJuLXZhbHVlLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90
eXBlL2F0L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKK0EgdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYnl0ZUxlbmd0aC9yZXNpemFibGUtYXJyYXkt
YnVmZmVyLWF1dG8uanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYnl0
ZUxlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWZpeGVkLmpzCitBIHRlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1h
dXRvLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVPZmZzZXQv
cmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5L3Byb3RvdHlwZS9jb3B5V2l0aGluL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1i
b3VuZHMuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZW50cmllcy9y
ZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXkvcHJvdG90eXBlL2V2ZXJ5L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1v
Zi1ib3VuZHMuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZmlsbC9y
ZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbHRlci9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQt
b2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbmQv
cmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcworQSB0ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5L3Byb3RvdHlwZS9maW5kSW5kZXgvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMt
b3V0LW9mLWJvdW5kcy5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9m
b3JFYWNoL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKK0EgdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvaW5jbHVkZXMvcmV0dXJuLWFicnVwdC1mcm9t
LXRoaXMtb3V0LW9mLWJvdW5kcy5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3Rv
dHlwZS9pbmRleE9mL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKK0Eg
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvam9pbi9yZXR1cm4tYWJydXB0LWZy
b20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJv
dG90eXBlL2tleXMvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcworQSB0
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9sYXN0SW5kZXhPZi9yZXR1cm4tYWJy
dXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXkvcHJvdG90eXBlL2xlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMKK0EgdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvbGVuZ3RoL3Jlc2l6YWJsZS1hcnJheS1i
dWZmZXItZml4ZWQuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvbWFw
L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKK0EgdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91
dC1vZi1ib3VuZHMuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVk
dWNlUmlnaHQvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcworQSB0ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9yZXZlcnNlL3JldHVybi1hYnJ1cHQtZnJv
bS10aGlzLW91dC1vZi1ib3VuZHMuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90
b3R5cGUvc2V0L3R5cGVkYXJyYXktYXJnLXNldC12YWx1ZXMtc2FtZS1idWZmZXItc2FtZS10eXBl
LXJlc2l6ZWQuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc2V0L3R5
cGVkYXJyYXktYXJnLXRhcmdldC1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL3NsaWNlL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1i
b3VuZHMuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc29tZS9yZXR1
cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL3NvcnQvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJv
dW5kcy5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS90b0xvY2FsZVN0
cmluZy9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3ZhbHVlcy9yZXR1cm4tYWJydXB0LWZyb20tdGhp
cy1vdXQtb2YtYm91bmRzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMvY3RvcnMvYnVmZmVyLWFyZy9leGNlc3NpdmUtb2Zmc2V0LXRocm93cy1yZXNpemFibGUtYWIu
anMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBlZGFy
cmF5LWFyZy9vdXQtb2YtYm91bmRzLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50LXR5
cGUuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBl
ZGFycmF5LWFyZy9vdXQtb2YtYm91bmRzLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtc2FtZS10eXBl
LmpzCitEIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0Rl
ZmluZU93blByb3BlcnR5L0JpZ0ludC9kZXRhY2hlZC1idWZmZXItcmVhbG0uanMKK0EgdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVy
dHkvQmlnSW50L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MtcmVhbG0uanMKK0EgdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmln
SW50L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1u
b3QtbnVtZXJpYy1pbmRleC10aHJvd3MuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNv
bnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1l
cmljaW5kZXgtYWNjZXNzb3ItZGVzYy10aHJvd3MuanMKK00gdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1p
cy1udW1lcmljaW5kZXgtZGVzYy1jb25maWd1cmFibGUuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tl
eS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmlndXJhYmxlLXRocm93cy5qcworQSB0ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9w
ZXJ0eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5vdC1lbnVtZXJhYmxlLXRocm93
cy5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9E
ZWZpbmVPd25Qcm9wZXJ0eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5vdC13cml0
YWJsZS10aHJvd3MuanMKK00gdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9p
bnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L3RvbnVtYmVyLXZhbHVlLWRldGFjaGVk
LWJ1ZmZlci5qcworRCB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVy
bmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRhY2hlZC1idWZmZXItcmVhbG0uanMKK0EgdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVy
dHkvZGV0YWNoZWQtYnVmZmVyLXRocm93cy1yZWFsbS5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRhY2hlZC1i
dWZmZXItdGhyb3dzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
aW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2tleS1pcy1ub3QtbnVtZXJpYy1pbmRleC10aHJv
d3MuanMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMv
RGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVyaWNpbmRleC1hY2Nlc3Nvci1kZXNjLXRocm93
cy5qcworTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9E
ZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2MtY29uZmlndXJhYmxlLmpz
CitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmlu
ZU93blByb3BlcnR5L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmlndXJhYmxlLXRo
cm93cy5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFs
cy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2Mtbm90LWVudW1lcmFi
bGUtdGhyb3dzLmpzCitBIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50
ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3Qtd3Jp
dGFibGUtdGhyb3dzLmpzCitNIHRlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
aW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L3RvbnVtYmVyLXZhbHVlLWRldGFjaGVkLWJ1ZmZl
ci5qcworTSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9E
ZWxldGUva2V5LWlzLXN5bWJvbC5qcworQSB0ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2ludGVybmFscy9IYXNQcm9wZXJ0eS9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8u
anMKK0EgdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvSGFz
UHJvcGVydHkvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qcworQSB0ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9Pd25Qcm9wZXJ0eUtleXMvaW50ZWdl
ci1pbmRleGVzLXJlc2l6YWJsZS1hcnJheS1idWZmZXItYXV0by5qcworQSB0ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9Pd25Qcm9wZXJ0eUtleXMvaW50ZWdl
ci1pbmRleGVzLXJlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMKK0EgdGVzdC9pbnRsNDAy
L0RhdGVUaW1lRm9ybWF0L2NvbnN0cnVjdG9yLW9wdGlvbnMtc3R5bGUtY29uZmxpY3QuanMKK0Eg
dGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY2FsZW5kYXJzL2JyYW5kaW5nLmpzCitBIHRl
c3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NhbGVuZGFycy9uYW1lLmpzCitBIHRlc3QvaW50
bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NhbGVuZGFycy9vdXRwdXQtYXJyYXkuanMKK0EgdGVzdC9p
bnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY2FsZW5kYXJzL3Byb3AtZGVzYy5qcworQSB0ZXN0L2lu
dGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jb2xsYXRpb25zL2JyYW5kaW5nLmpzCitBIHRlc3QvaW50
bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxhdGlvbnMvbmFtZS5qcworQSB0ZXN0L2ludGw0MDIv
TG9jYWxlL3Byb3RvdHlwZS9jb2xsYXRpb25zL291dHB1dC1hcnJheS12YWx1ZXMuanMKK0EgdGVz
dC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY29sbGF0aW9ucy9vdXRwdXQtYXJyYXkuanMKK0Eg
dGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY29sbGF0aW9ucy9wcm9wLWRlc2MuanMKK0Eg
dGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvaG91ckN5Y2xlcy9icmFuZGluZy5qcworQSB0
ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL25hbWUuanMKK0EgdGVzdC9p
bnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvaG91ckN5Y2xlcy9vdXRwdXQtYXJyYXktdmFsdWVzLmpz
CitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2hvdXJDeWNsZXMvb3V0cHV0LWFycmF5
LmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2hvdXJDeWNsZXMvcHJvcC1kZXNj
LmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJlcmluZ1N5c3RlbXMvYnJh
bmRpbmcuanMKK0EgdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvbnVtYmVyaW5nU3lzdGVt
cy9uYW1lLmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJlcmluZ1N5c3Rl
bXMvb3V0cHV0LWFycmF5LmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJl
cmluZ1N5c3RlbXMvcHJvcC1kZXNjLmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBl
L3RleHRJbmZvL2JyYW5kaW5nLmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3Rl
eHRJbmZvL25hbWUuanMKK0EgdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGV4dEluZm8v
b3V0cHV0LW9iamVjdC1rZXlzLmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3Rl
eHRJbmZvL291dHB1dC1vYmplY3QuanMKK0EgdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUv
dGV4dEluZm8vcHJvcC1kZXNjLmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3Rp
bWVab25lcy9icmFuZGluZy5qcworQSB0ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1l
Wm9uZXMvbmFtZS5qcworQSB0ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1lWm9uZXMv
b3V0cHV0LWFycmF5LXNvcnRlZC5qcworQSB0ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90
aW1lWm9uZXMvb3V0cHV0LWFycmF5LmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBl
L3RpbWVab25lcy9vdXRwdXQtdW5kZWZpbmVkLmpzCitBIHRlc3QvaW50bDQwMi9Mb2NhbGUvcHJv
dG90eXBlL3RpbWVab25lcy9wcm9wLWRlc2MuanMKK0EgdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90
b3R5cGUvd2Vla0luZm8vYnJhbmRpbmcuanMKK0EgdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5
cGUvd2Vla0luZm8vbmFtZS5qcworQSB0ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS93ZWVr
SW5mby9vdXRwdXQtb2JqZWN0LWtleXMuanMKK0EgdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5
cGUvd2Vla0luZm8vb3V0cHV0LW9iamVjdC5qcworQSB0ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3Rv
dHlwZS93ZWVrSW5mby9wcm9wLWRlc2MuanMKK00gdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9jb25z
dHJ1Y3Rvci9zdXBwb3J0ZWRMb2NhbGVzT2YvbG9jYWxlcy1zcGVjaWZpYy5qcworTSB0ZXN0L2lu
dGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvaXN3b3JkbGlrZS5q
cworTSB0ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcv
b25lLWluZGV4LmpzCitNIHRlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQv
Y29udGFpbmluZy9vdXQtb2YtYm91bmQtaW5kZXguanMKK00gdGVzdC9pbnRsNDAyL1NlZ21lbnRl
ci9wcm90b3R5cGUvc2VnbWVudC9jb250YWluaW5nL3dvcmQtaXN3b3JkbGlrZS5qcworTSB0ZXN0
L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvemVyby1pbmRl
eC5qcworTSB0ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L3NlZ21lbnQt
Z3JhcGhlbWUtaXRlcmFibGUuanMKK00gdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9wcm90b3R5cGUv
c2VnbWVudC9zZWdtZW50LXNlbnRlbmNlLWl0ZXJhYmxlLmpzCitNIHRlc3QvaW50bDQwMi9TZWdt
ZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvc2VnbWVudC13b3JkLWl0ZXJhYmxlLmpzCitNIHRlc3Qv
aW50bDQwMi9mYWxsYmFjay1sb2NhbGVzLWFyZS1zdXBwb3J0ZWQuanMKK00gdGVzdC9pbnRsNDAy
L3N1cHBvcnRlZExvY2FsZXNPZi1jb25zaXN0ZW50LXdpdGgtcmVzb2x2ZWRPcHRpb25zLmpzCitN
IHRlc3QvaW50bDQwMi9zdXBwb3J0ZWRMb2NhbGVzT2YtdW5pY29kZS1leHRlbnNpb25zLWlnbm9y
ZWQuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hcnJvdy1mdW5jdGlvbi9leHRlbnNp
YmlsaXR5LmpzCitNIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXJyb3ctZnVuY3Rpb24vc3lu
dGF4L2Fycm93cGFyYW1ldGVycy1jb3Zlci1pbml0aWFsaXplLTIuanMKK0QgdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L1MxMS4xMy4xX0E3X1QxLmpzCitEIHRlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC9TMTEuMTMuMV9BN19UMi5qcworQSB0ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0LW1lbWJlci1jb21wdXRlZC1yZWZlcmVu
Y2UtbnVsbC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0
LW1lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzCitBIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQtbWVtYmVyLWlkZW50aWZpZXItcmVmZXJlbmNl
LW51bGwuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L3RhcmdldC1t
ZW1iZXItaWRlbnRpZmllci1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzCitBIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQtc3VwZXItY29tcHV0ZWQtcmVmZXJlbmNlLW51
bGwuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L3RhcmdldC1zdXBl
ci1pZGVudGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZGVsZXRlL21lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtbnVsbC5qcworQSB0ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2RlbGV0ZS9tZW1iZXItY29tcHV0ZWQtcmVmZXJlbmNlLXVuZGVmaW5l
ZC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2RlbGV0ZS9tZW1iZXItaWRlbnRpZmll
ci1yZWZlcmVuY2UtbnVsbC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2RlbGV0ZS9t
ZW1iZXItaWRlbnRpZmllci1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzCitBIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZGVsZXRlL3N1cGVyLXByb3BlcnR5LW51bGwtYmFzZS5qcworQSB0ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtZW51bWVy
YXRpb24tYWJydXB0LmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvMm5kLXBhcmFtLWFzc2VydC1lbnVtZXJhdGlvbi5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtbm9uLW9iamVjdC5qcworQSB0
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQt
dW5kZWZpbmVkLmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
Mm5kLXBhcmFtLWFzc2VydC12YWx1ZS1hYnJ1cHQuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0LXZhbHVlLW5vbi1zdHJpbmcuanMK
K0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXdh
aXQtZXhwci5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJu
ZC1wYXJhbS1hd2FpdC1pZGVudC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0LzJuZC1wYXJhbS1ldmFsdWF0aW9uLWFicnVwdC1yZXR1cm4uanMKK0EgdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1h
YnJ1cHQtdGhyb3cuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1zZXF1ZW5jZS5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1nZXQtYXNzZXJ0LWVycm9yLmpzCitBIHRl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWluLmpzCitB
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLW5vbi1v
YmplY3QuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQt
cGFyYW0tdHJhaWxpbmctY29tbWEtZnVsZmlsbC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS10cmFpbGluZy1jb21tYS1yZWplY3QuanMKK0Eg
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0teWllbGQt
ZXhwci5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1w
YXJhbS15aWVsZC1pZGVudC1pbnZhbGlkLmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXlpZWxkLWlkZW50LXZhbGlkLmpzCitBIHRlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtX0ZJWFRVUkUuanMKK00g
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9u
ZXN0ZWQtYXJyb3ctYXNzaWdubWVudC1leHByZXNzaW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMK
K00gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxp
ZC9uZXN0ZWQtYXJyb3ctbm90LWV4dGVuc2libGUtYXJncy5qcworTSB0ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJv
dy1mdW5jdGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCitNIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWFy
cm93LWZ1bmN0aW9uLXJldHVybi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCitNIHRlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWFzeW5jLWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKK00gdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5
bmMtZnVuY3Rpb24tbm90LWV4dGVuc2libGUtYXJncy5qcworTSB0ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlv
bi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcworTSB0ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1nZW4t
YXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcworTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1ibG9jay1sYWJlbGVkLW5vdC1l
eHRlbnNpYmxlLWFyZ3MuanMKK00gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbm90LWV4dGVuc2libGUtYXJncy5qcwor
TSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlk
L25lc3RlZC1kby13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCitNIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWVsc2UtYnJh
Y2VsZXNzLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKK00gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1ub3QtZXh0ZW5zaWJs
ZS1hcmdzLmpzCitNIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWZ1bmN0aW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKK00gdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0
ZWQtZnVuY3Rpb24tcmV0dXJuLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKK00gdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYtYnJh
Y2VsZXNzLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKK00gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYtbm90LWV4dGVuc2libGUt
YXJncy5qcworTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC9pbnZhbGlkL25lc3RlZC13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCitNIHRlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdp
dGgtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCitNIHRlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdpdGgtbm90LWV4
dGVuc2libGUtYXJncy5qcworTSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL3RvcC1sZXZlbC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCitEIHRl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvdG9w
LWxldmVsLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzCitBIHRlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hcnJvdy1h
c3NpZ25tZW50LWV4cHJlc3Npb24tdHJhaWxpbmctY29tbWEtZmlyc3QuanMKK1IwNjMgdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQt
YXN5bmMtYXJyb3ctZnVuY3Rpb24tcmV0dXJuLWF3YWl0LW5vdC1leHRlbnNpYmxlLW5vLXRyYWls
aW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1hcnJvdy1hc3NpZ25tZW50LWV4cHJlc3Npb24tdHJhaWxpbmctY29t
bWEtc2Vjb25kLmpzCitSMDY2IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFycm93LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5n
LWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L3ZhbGlkL25lc3RlZC1hcnJvdy10cmFpbGluZy1jb21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXJyb3ct
dHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCitSMDY0IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9u
LWF3YWl0LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1hcnJv
dy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtYXJy
b3ctZnVuY3Rpb24tYXdhaXQtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCitBIHRlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1h
cnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKK0EgdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVk
LWFzeW5jLWFycm93LWZ1bmN0aW9uLXJldHVybi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQu
anMKK1IwNjUgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
aW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tcmV0dXJuLWF3YWl0LW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1j
b21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tYXdhaXQtdHJhaWxpbmctY29tbWEt
c2Vjb25kLmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29t
bWEtZmlyc3QuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9z
eW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2FpdC10cmFpbGluZy1j
b21tYS1zZWNvbmQuanMKK1IwNjUgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tbm90LWV4dGVuc2libGUt
bm8tdHJhaWxpbmctY29tbWEuanMgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXRyYWlsaW5nLWNvbW1hLWZp
cnN0LmpzCitSMDY1IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLW5v
LXRyYWlsaW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi10cmFpbGluZy1jb21tYS1zZWNv
bmQuanMKK1IwNjMgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZ2VuLWF3YWl0LW5vdC1leHRlbnNpYmxlLW5vLXRyYWls
aW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1hc3luYy1nZW4tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMK
K0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQv
bmVzdGVkLWFzeW5jLWdlbi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKK1IwNjUgdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0
ZWQtYmxvY2stbGFiZWxlZC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyB0ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQt
YmxvY2stbGFiZWxlZC10cmFpbGluZy1jb21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxl
ZC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKK1IwNjUgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbm90LWV4dGVuc2li
bGUtbm8tdHJhaWxpbmctY29tbWEuanMgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLXRyYWlsaW5nLWNvbW1hLWZpcnN0Lmpz
CitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC1ibG9jay10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKK1IwNjUgdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZG8td2hp
bGUtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMgdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWRvLXdoaWxlLXRyYWls
aW5nLWNvbW1hLWZpcnN0LmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1kby13aGlsZS10cmFpbGluZy1jb21tYS1zZWNvbmQu
anMKK1IwNjUgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
aW52YWxpZC9uZXN0ZWQtZWxzZS1icmFjZWxlc3Mtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmct
Y29tbWEuanMgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
dmFsaWQvbmVzdGVkLWVsc2UtYnJhY2VsZXNzLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzCitSMDY0
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQv
bmVzdGVkLWlmLWJyYWNlbGVzcy1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyB0
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtZWxzZS1icmFjZWxlc3MtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCitSMDY2IHRlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWVs
c2Utbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMgdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmct
Y29tbWEtZmlyc3QuanMKK0EgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCitBIHRl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3Rl
ZC1mdW5jdGlvbi1yZXR1cm4tdHJhaWxpbmctY29tbWEtZmlyc3QuanMKK0EgdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWZ1bmN0aW9u
LXJldHVybi10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKK1IwNjUgdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZnVuY3Rpb24tcmV0
dXJuLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi10cmFp
bGluZy1jb21tYS1maXJzdC5qcworUjA2NSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlvbi1ub3QtZXh0ZW5zaWJsZS1u
by10cmFpbGluZy1jb21tYS5qcyB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZnVuY3Rpb24tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpz
CitSMDY0IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2lu
dmFsaWQvbmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1u
by10cmFpbGluZy1jb21tYS5qcyB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtaWYtYnJhY2VsZXNzLXRyYWlsaW5nLWNvbW1hLWZpcnN0
LmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3Zh
bGlkL25lc3RlZC1pZi1icmFjZWxlc3MtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCitSMDY2IHRl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVz
dGVkLWlmLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIHRlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1pZi10cmFpbGlu
Zy1jb21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtaWYtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCitSMDY2
IHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQv
bmVzdGVkLXdoaWxlLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIHRlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aGls
ZS10cmFpbGluZy1jb21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2hpbGUtdHJhaWxpbmctY29tbWEtc2Vj
b25kLmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L3ZhbGlkL25lc3RlZC13aXRoLWV4cHJlc3Npb24tdHJhaWxpbmctY29tbWEtZmlyc3QuanMKK0Eg
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVz
dGVkLXdpdGgtZXhwcmVzc2lvbi10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKK1IwNjYgdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQt
d2l0aC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyB0ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2l0aC10cmFpbGlu
Zy1jb21tYS1maXJzdC5qcworUjA2NCB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLWV4cHJlc3Npb24tbm90LWV4dGVuc2li
bGUtbm8tdHJhaWxpbmctY29tbWEuanMgdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpz
CitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L3RvcC1sZXZlbC10cmFpbGluZy1jb21tYS1maXJzdC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC90b3AtbGV2ZWwtdHJhaWxpbmctY29t
bWEtc2Vjb25kLmpzCitBIHRlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
dHJhaWxpbmctY29tbWEtZnVsZmlsbC5qcworQSB0ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXJlamVjdC5qcworTSB0ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL3RlbXBsYXRlLWxpdGVyYWwvaW52YWxpZC1sZWdhY3ktb2N0YWwtZXNjYXBlLXNl
cXVlbmNlLTguanMKK00gdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy90ZW1wbGF0ZS1saXRlcmFs
L2ludmFsaWQtbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LmpzCitNIHRlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvdGVtcGxhdGUtbGl0ZXJhbC9pbnZhbGlkLWxlZ2FjeS1vY3RhbC1lc2Nh
cGUtc2VxdWVuY2UuanMKK0EgdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1leHRlbnNpYmlsaXR5
LWFycmF5LmpzCitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tZXh0ZW5zaWJpbGl0eS1vYmpl
Y3QuanMKK0EgdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1pZGVtcG90ZW5jeS1pbmRpcmVjdF9G
SVhUVVJFLmpzCitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24taWRlbXBvdGVuY3kuanMKK0Eg
dGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1pZGVtcG90ZW5jeV9GSVhUVVJFLmpzb24KK0EgdGVz
dC9sYW5ndWFnZS9pbXBvcnQvanNvbi1pbnZhbGlkLmpzCitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0
L2pzb24taW52YWxpZF9GSVhUVVJFLmpzb24KK0EgdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1u
YW1lZC1iaW5kaW5ncy5qcworQSB0ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLW5hbWVkLWJpbmRp
bmdzX0ZJWFRVUkUuanNvbgorQSB0ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLWFycmF5
LmpzCitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtYXJyYXlfRklYVFVSRS5qc29u
CitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtYm9vbGVhbi5qcworQSB0ZXN0L2xh
bmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLWJvb2xlYW5fRklYVFVSRS5qc29uCitBIHRlc3QvbGFu
Z3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtbnVsbC5qcworQSB0ZXN0L2xhbmd1YWdlL2ltcG9ydC9q
c29uLXZhbHVlLW51bGxfRklYVFVSRS5qc29uCitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24t
dmFsdWUtbnVtYmVyLmpzCitBIHRlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtbnVtYmVy
X0ZJWFRVUkUuanNvbgorQSB0ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLW9iamVjdC5q
cworQSB0ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLW9iamVjdF9GSVhUVVJFLmpzb24K
K0EgdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1zdHJpbmcuanMKK0EgdGVzdC9sYW5n
dWFnZS9pbXBvcnQvanNvbi12YWx1ZS1zdHJpbmdfRklYVFVSRS5qc29uCitBIHRlc3QvbGFuZ3Vh
Z2UvaW1wb3J0L2pzb24tdmlhLW5hbWVzcGFjZS5qcworQSB0ZXN0L2xhbmd1YWdlL2ltcG9ydC9q
c29uLXZpYS1uYW1lc3BhY2VfRklYVFVSRS5qc29uCitNIHRlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMv
bnVtZXJpYy9sZWdhY3ktb2N0YWwtaW50ZWdlci1zdHJpY3QuanMKK1IwOTYgdGVzdC9hbm5leEIv
bGFuZ3VhZ2UvbGl0ZXJhbHMvbnVtZXJpYy9sZWdhY3ktb2N0YWwtaW50ZWdlci5qcyB0ZXN0L2xh
bmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbGVnYWN5LW9jdGFsLWludGVnZXIuanMKK00gdGVzdC9s
YW5ndWFnZS9saXRlcmFscy9udW1lcmljL25vbi1vY3RhbC1kZWNpbWFsLWludGVnZXItc3RyaWN0
LmpzCitSMDk4IHRlc3QvYW5uZXhCL2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbm9uLW9jdGFs
LWRlY2ltYWwtaW50ZWdlci5qcyB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbm9uLW9j
dGFsLWRlY2ltYWwtaW50ZWdlci5qcworTSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9s
ZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS0xLXN0cmljdC1leHBsaWNpdC1wcmFnbWEu
anMKK00gdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2Nh
cGUtc2VxdWVuY2UtMi1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCitNIHRlc3QvbGFuZ3VhZ2Uv
bGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTMtc3RyaWN0
LWV4cGxpY2l0LXByYWdtYS5qcworTSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdh
Y3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS00LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMK
K00gdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUt
c2VxdWVuY2UtNS1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCitNIHRlc3QvbGFuZ3VhZ2UvbGl0
ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTYtc3RyaWN0LWV4
cGxpY2l0LXByYWdtYS5qcworTSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3kt
bm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS03LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMKK0Eg
dGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2Vx
dWVuY2UtOC1ub24tc3RyaWN0LmpzCitNIHRlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xl
Z2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTgtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5q
cworTSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2Fw
ZS1zZXF1ZW5jZS04LXN0cmljdC5qcworQSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9s
ZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LW5vbi1zdHJpY3QuanMKK00gdGVzdC9s
YW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2Ut
OS1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCitNIHRlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3Ry
aW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTktc3RyaWN0LmpzCitNIHRlc3Qv
bGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNl
LXN0cmljdC5qcworTSB0ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktb2N0YWwt
ZXNjYXBlLXNlcXVlbmNlLXN0cmljdC5qcworUjA5OCB0ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRl
cmFscy9zdHJpbmcvbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS5qcyB0ZXN0L2xhbmd1YWdl
L2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktb2N0YWwtZXNjYXBlLXNlcXVlbmNlLmpzCitBIHRlc3Qv
bGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZWFybHktZHVwLWFzc2VydC1rZXktZXhwb3J0LmpzCitBIHRl
c3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZWFybHktZHVwLWFzc2VydC1rZXktaW1wb3J0LW5vYmlu
ZGluZy5qcworQSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2Vhcmx5LWR1cC1hc3NlcnQta2V5
LWltcG9ydC13aXRoYmluZGluZy5qcworTSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2Vhcmx5
LWV4cG9ydC1pbGwtZm9ybWVkLXN0cmluZy5qcworQSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2Rl
L2V2YWwtZ3RibmRuZy1pbmRpcmVjdC1mYXV4LWFzc2VydGlvbi5qcworQSB0ZXN0L2xhbmd1YWdl
L21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24tMV9GSVhUVVJFLmpzCitBIHRlc3QvbGFuZ3Vh
Z2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2VydGlvbi0yX0ZJWFRVUkUuanMKK0EgdGVzdC9sYW5n
dWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLTNfRklYVFVSRS5qcworQSB0ZXN0L2xh
bmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24tZW1wdHkuanMKK0EgdGVzdC9sYW5n
dWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLWtleS1pZGVudGlmaWVybmFtZS5qcwor
QSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24ta2V5LXN0cmluZy1k
b3VibGUuanMKK0EgdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLWtl
eS1zdHJpbmctc2luZ2xlLmpzCitBIHRlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFz
c2VydGlvbi1tYW55LmpzCitBIHRlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2Vy
dGlvbi1uZXdsaW5lcy5qcworQSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3Nl
cnRpb24tdHJsbmctY29tbWEuanMKK0EgdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQt
YXNzZXJ0aW9uLXZhbHVlLXN0cmluZy1kb3VibGUuanMKK0EgdGVzdC9sYW5ndWFnZS9tb2R1bGUt
Y29kZS9pbXBvcnQtYXNzZXJ0aW9uLXZhbHVlLXN0cmluZy1zaW5nbGUuanMKK00gdGVzdC9sYW5n
dWFnZS9tb2R1bGUtY29kZS9pbnN0bi1zdGFyLWFzLXByb3BzLWRmbHQtc2tpcC5qcworQSB0ZXN0
L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52YXJpYW50LWFzeW5j
X0ZJWFRVUkUuanMKK0EgdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS90b3AtbGV2ZWwtYXdhaXQv
ZGZzLWludmFyaWFudC1kaXJlY3QtMV9GSVhUVVJFLmpzCitBIHRlc3QvbGFuZ3VhZ2UvbW9kdWxl
LWNvZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZhcmlhbnQtZGlyZWN0LTJfRklYVFVSRS5qcwor
QSB0ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52YXJpYW50
LWluZGlyZWN0X0ZJWFRVUkUuanMKK0EgdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS90b3AtbGV2
ZWwtYXdhaXQvZGZzLWludmFyaWFudC5qcworQSB0ZXN0L2xhbmd1YWdlL3N0YXRlbWVudHMvZm9y
LW9mL2hlYWQtbGhzLWFzeW5jLWVzY2FwZWQuanMKK0EgdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRz
L2Zvci1vZi9oZWFkLWxocy1hc3luYy1wYXJlbnMuanMKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9hbm5leEIvbGFuZ3VhZ2UvbGl0
ZXJhbHMvbnVtZXJpYy9sZWdhY3ktb2N0YWwtaW50ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9udW1lcmljL2xlZ2FjeS1vY3RhbC1pbnRlZ2Vy
LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5NmNkZGI4NDdiMmRkYmU5ZTc0Zjlm
ODZlNTJhZjg3MzU0MzdhMjgxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9u
dW1lcmljL2xlZ2FjeS1vY3RhbC1pbnRlZ2VyLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAs
MCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDE2IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNl
bnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLWFkZGl0aW9u
YWwtc3ludGF4LW51bWVyaWMtbGl0ZXJhbHMKLWRlc2NyaXB0aW9uOiBNYXRoZW1hdGljYWwgdmFs
dWUgZm9yIExlZ2FjeU9jdGFsSW50ZWdlckxpdGVyYWwKLWluZm86IHwKLSAgICBOdW1lcmljTGl0
ZXJhbCA6OgotICAgICAgRGVjaW1hbExpdGVyYWwKLSAgICAgIEJpbmFyeUludGVnZXJMaXRlcmFs
Ci0gICAgICBPY3RhbEludGVnZXJMaXRlcmFsCi0gICAgICBIZXhJbnRlZ2VyTGl0ZXJhbAotICAg
ICAgTGVnYWN5T2N0YWxJbnRlZ2VyTGl0ZXJhbAotCi0gICAgIExlZ2FjeU9jdGFsSW50ZWdlckxp
dGVyYWwgOjoKLSAgICAgICAwIE9jdGFsRGlnaXQKLSAgICAgICBMZWdhY3lPY3RhbEludGVnZXJM
aXRlcmFsIE9jdGFsRGlnaXQKLWZsYWdzOiBbbm9TdHJpY3RdCi0tLS0qLwotCi0vLyBMZWdhY3lP
Y3RhbEludGVnZXJMaXRlcmFsIDo6Ci0vLyAgIDAgT2N0YWxEaWdpdAotYXNzZXJ0LnNhbWVWYWx1
ZSgwMCwgMCwgJzAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDAxLCAxLCAnMDEnKTsKLWFzc2VydC5z
YW1lVmFsdWUoMDIsIDIsICcwMicpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwMywgMywgJzAzJyk7Ci1h
c3NlcnQuc2FtZVZhbHVlKDA0LCA0LCAnMDQnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDUsIDUsICcw
NScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNiwgNiwgJzA2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3
LCA3LCAnMDcnKTsKLQotLy8gTGVnYWN5T2N0YWxJbnRlZ2VyTGl0ZXJhbCA6OgotLy8gICBMZWdh
Y3lPY3RhbEludGVnZXJMaXRlcmFsIE9jdGFsRGlnaXQKLWFzc2VydC5zYW1lVmFsdWUoMDAwLCAw
LCAnMDAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDAwMSwgMSwgJzAwMScpOwotYXNzZXJ0LnNhbWVW
YWx1ZSgwMDIsIDIsICcwMDInKTsKLWFzc2VydC5zYW1lVmFsdWUoMDAzLCAzLCAnMDAzJyk7Ci1h
c3NlcnQuc2FtZVZhbHVlKDAwNCwgNCwgJzAwNCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwMDUsIDUs
ICcwMDUnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDA2LCA2LCAnMDA2Jyk7Ci1hc3NlcnQuc2FtZVZh
bHVlKDAwNywgNywgJzAwNycpOwotCi1hc3NlcnQuc2FtZVZhbHVlKDA3MCwgNTYpOwotYXNzZXJ0
LnNhbWVWYWx1ZSgwNzEsIDU3KTsKLWFzc2VydC5zYW1lVmFsdWUoMDcyLCA1OCk7Ci1hc3NlcnQu
c2FtZVZhbHVlKDA3MywgNTkpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzQsIDYwKTsKLWFzc2VydC5z
YW1lVmFsdWUoMDc1LCA2MSk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3NiwgNjIpOwotYXNzZXJ0LnNh
bWVWYWx1ZSgwNzcsIDYzKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2FubmV4
Qi9sYW5ndWFnZS9saXRlcmFscy9udW1lcmljL25vbi1vY3RhbC1kZWNpbWFsLWludGVnZXIuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9hbm5leEIvbGFuZ3VhZ2UvbGl0ZXJhbHMvbnVtZXJpYy9u
b24tb2N0YWwtZGVjaW1hbC1pbnRlZ2VyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBkMDUzNWRmN2Q4ZjAwMTc2NzJjYTViMTEzMGE3MzQyOWQ2MGNhODBiLi4wMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2Fu
bmV4Qi9sYW5ndWFnZS9saXRlcmFscy9udW1lcmljL25vbi1vY3RhbC1kZWNpbWFsLWludGVnZXIu
anMKKysrIC9kZXYvbnVsbApAQCAtMSwxMTkgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDE2
IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCi0vKi0tLQotZXNpZDogc2VjLWFkZGl0aW9uYWwtc3ludGF4LW51bWVyaWMtbGl0ZXJhbHMK
LWRlc2NyaXB0aW9uOiBNYXRoZW1hdGljYWwgdmFsdWUgZm9yIE5vbk9jdGFsRGVjaW1hbEludGVn
ZXJMaXRlcmFsCi1pbmZvOiB8Ci0gICAgIERlY2ltYWxJbnRlZ2VyTGl0ZXJhbCA6OgotICAgICAg
IDAKLSAgICAgICBOb25aZXJvRGlnaXQgRGVjaW1hbERpZ2l0c1tvcHRdCi0gICAgICAgTm9uT2N0
YWxEZWNpbWFsSW50ZWdlckxpdGVyYWwKLQotICAgICBOb25PY3RhbERlY2ltYWxJbnRlZ2VyTGl0
ZXJhbCA6OgotICAgICAgIDAgTm9uT2N0YWxEaWdpdAotICAgICAgIExlZ2FjeU9jdGFsTGlrZURl
Y2ltYWxJbnRlZ2VyTGl0ZXJhbCBOb25PY3RhbERpZ2l0Ci0gICAgICAgTm9uT2N0YWxEZWNpbWFs
SW50ZWdlckxpdGVyYWwgRGVjaW1hbERpZ2l0Ci0KLSAgICAgTGVnYWN5T2N0YWxMaWtlRGVjaW1h
bEludGVnZXJMaXRlcmFsIDo6Ci0gICAgICAgMCBPY3RhbERpZ2l0Ci0gICAgICAgTGVnYWN5T2N0
YWxMaWtlRGVjaW1hbEludGVnZXJMaXRlcmFsIE9jdGFsRGlnaXQKLQotICAgICBOb25PY3RhbERp
Z2l0IDo6IG9uZSBvZgotICAgICAgIDggOQotZmxhZ3M6IFtub1N0cmljdF0KLS0tLSovCi0KLS8v
IE5vbk9jdGFsRGVjaW1hbEludGVnZXJMaXRlcmFsIDo6Ci0vLyAgIDAgTm9uT2N0YWxEaWdpdAot
YXNzZXJ0LnNhbWVWYWx1ZSgwOCwgOCwgJzA4Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA5LCA5LCAn
MDknKTsKLQotLy8gTm9uT2N0YWxEZWNpbWFsSW50ZWdlckxpdGVyYWwgOjoKLS8vICAgTGVnYWN5
T2N0YWxMaWtlRGVjaW1hbEludGVnZXJMaXRlcmFsIE5vbk9jdGFsRGlnaXQKLWFzc2VydC5zYW1l
VmFsdWUoMDA4LCA4LCAnMDA4Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDAxOCwgMTgsICcwMTgnKTsK
LWFzc2VydC5zYW1lVmFsdWUoMDI4LCAyOCwgJzAyOCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwMzgs
IDM4LCAnMDM4Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA0OCwgNDgsICcwNDgnKTsKLWFzc2VydC5z
YW1lVmFsdWUoMDU4LCA1OCwgJzA1OCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNjgsIDY4LCAnMDY4
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3OCwgNzgsICcwNzgnKTsKLWFzc2VydC5zYW1lVmFsdWUo
MDg4LCA4OCwgJzA4OCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwOTgsIDk4LCAnMDk4Jyk7Ci1hc3Nl
cnQuc2FtZVZhbHVlKDA3MDgsIDcwOCwgJzcwOCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzE4LCA3
MTgsICc3MTgnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDcyOCwgNzI4LCAnNzI4Jyk7Ci1hc3NlcnQu
c2FtZVZhbHVlKDA3MzgsIDczOCwgJzczOCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzQ4LCA3NDgs
ICc3NDgnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDc1OCwgNzU4LCAnNzU4Jyk7Ci1hc3NlcnQuc2Ft
ZVZhbHVlKDA3NjgsIDc2OCwgJzc2OCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzc4LCA3NzgsICc3
NzgnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDc4OCwgNzg4LCAnNzg4Jyk7Ci1hc3NlcnQuc2FtZVZh
bHVlKDA3OTgsIDc5OCwgJzc5OCcpOwotCi1hc3NlcnQuc2FtZVZhbHVlKDAwOSwgOSwgJzAwOScp
OwotYXNzZXJ0LnNhbWVWYWx1ZSgwMTksIDE5LCAnMDE5Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDAy
OSwgMjksICcwMjknKTsKLWFzc2VydC5zYW1lVmFsdWUoMDM5LCAzOSwgJzAzOScpOwotYXNzZXJ0
LnNhbWVWYWx1ZSgwNDksIDQ5LCAnMDQ5Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA1OSwgNTksICcw
NTknKTsKLWFzc2VydC5zYW1lVmFsdWUoMDY5LCA2OSwgJzA2OScpOwotYXNzZXJ0LnNhbWVWYWx1
ZSgwNzksIDc5LCAnMDc5Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA4OSwgODksICcwODknKTsKLWFz
c2VydC5zYW1lVmFsdWUoMDk5LCA5OSwgJzA5OScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzA5LCA3
MDksICcwNzA5Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3MTksIDcxOSwgJzA3MTknKTsKLWFzc2Vy
dC5zYW1lVmFsdWUoMDcyOSwgNzI5LCAnMDcyOScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzM5LCA3
MzksICcwNzM5Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3NDksIDc0OSwgJzA3NDknKTsKLWFzc2Vy
dC5zYW1lVmFsdWUoMDc1OSwgNzU5LCAnMDc1OScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzY5LCA3
NjksICcwNzY5Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3NzksIDc3OSwgJzA3NzknKTsKLWFzc2Vy
dC5zYW1lVmFsdWUoMDc4OSwgNzg5LCAnMDc4OScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzk5LCA3
OTksICcwNzk5Jyk7Ci0KLS8vIE5vbk9jdGFsRGVjaW1hbEludGVnZXJMaXRlcmFsIDo6Ci0vLyAg
IE5vbk9jdGFsRGVjaW1hbEludGVnZXJMaXRlcmFsIERlY2ltYWxEaWdpdAotYXNzZXJ0LnNhbWVW
YWx1ZSgwODAsIDgwLCAnMDgwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA4MSwgODEsICcwODEnKTsK
LWFzc2VydC5zYW1lVmFsdWUoMDgyLCA4MiwgJzA4MicpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwODMs
IDgzLCAnMDgzJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA4NCwgODQsICcwODQnKTsKLWFzc2VydC5z
YW1lVmFsdWUoMDg1LCA4NSwgJzA4NScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwODYsIDg2LCAnMDg2
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA4NywgODcsICcwODcnKTsKLWFzc2VydC5zYW1lVmFsdWUo
MDg4LCA4OCwgJzA4OCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwODksIDg5LCAnMDg5Jyk7Ci0KLWFz
c2VydC5zYW1lVmFsdWUoMDc4MCwgNzgwLCAnMDc4MCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzgx
LCA3ODEsICcwNzgxJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3ODIsIDc4MiwgJzA3ODInKTsKLWFz
c2VydC5zYW1lVmFsdWUoMDc4MywgNzgzLCAnMDc4MycpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzg0
LCA3ODQsICcwNzg0Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3ODUsIDc4NSwgJzA3ODUnKTsKLWFz
c2VydC5zYW1lVmFsdWUoMDc4NiwgNzg2LCAnMDc4NicpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwNzg3
LCA3ODcsICcwNzg3Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3ODgsIDc4OCwgJzA3ODgnKTsKLWFz
c2VydC5zYW1lVmFsdWUoMDc4OSwgNzg5LCAnMDc4OScpOwotCi1hc3NlcnQuc2FtZVZhbHVlKDA5
MCwgOTAsICcwOTAnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDkxLCA5MSwgJzA5MScpOwotYXNzZXJ0
LnNhbWVWYWx1ZSgwOTIsIDkyLCAnMDkyJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA5MywgOTMsICcw
OTMnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDk0LCA5NCwgJzA5NCcpOwotYXNzZXJ0LnNhbWVWYWx1
ZSgwOTUsIDk1LCAnMDk1Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA5NiwgOTYsICcwOTYnKTsKLWFz
c2VydC5zYW1lVmFsdWUoMDk3LCA5NywgJzA5NycpOwotYXNzZXJ0LnNhbWVWYWx1ZSgwOTgsIDk4
LCAnMDk4Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA5OSwgOTksICcwOTknKTsKLQotYXNzZXJ0LnNh
bWVWYWx1ZSgwNzkwLCA3OTAsICcwNzkwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3OTEsIDc5MSwg
JzA3OTEnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDc5MiwgNzkyLCAnMDc5MicpOwotYXNzZXJ0LnNh
bWVWYWx1ZSgwNzkzLCA3OTMsICcwNzkzJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3OTQsIDc5NCwg
JzA3OTQnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDc5NSwgNzk1LCAnMDc5NScpOwotYXNzZXJ0LnNh
bWVWYWx1ZSgwNzk2LCA3OTYsICcwNzk2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKDA3OTcsIDc5Nywg
JzA3OTcnKTsKLWFzc2VydC5zYW1lVmFsdWUoMDc5OCwgNzk4LCAnMDc5OCcpOwotYXNzZXJ0LnNh
bWVWYWx1ZSgwNzk5LCA3OTksICcwNzk5Jyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9hbm5leEIvbGFuZ3VhZ2UvbGl0ZXJhbHMvcmVnZXhwL2xlZ2FjeS1vY3RhbC1lc2NhcGUu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9hbm5leEIvbGFuZ3VhZ2UvbGl0ZXJhbHMvcmVnZXhw
L2xlZ2FjeS1vY3RhbC1lc2NhcGUuanMKaW5kZXggZTBhNGZhYzVlMzkzMjUwZDc2NTEwNzhmMmMw
YTQ3ZWNiYmIwMjA1ZC4uODU4ODVlMTZjMTcxNzkwNzE1YmYxMDJjYTE2N2Y4MDE3OGVkMTY3MiAx
MDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYW5uZXhCL2xhbmd1YWdlL2xpdGVyYWxz
L3JlZ2V4cC9sZWdhY3ktb2N0YWwtZXNjYXBlLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9yZWdleHAvbGVnYWN5LW9jdGFsLWVzY2FwZS5qcwpA
QCAtMjAsOCArMjAsOCBAQAogICAgICAgICBaZXJvVG9UaHJlZSBPY3RhbERpZ2l0IE9jdGFsRGln
aXQKIAogICAgIFRoZSBwcm9kdWN0aW9uIENoYXJhY3RlckVzY2FwZSA6OiBMZWdhY3lPY3RhbEVz
Y2FwZVNlcXVlbmNlIGV2YWx1YXRlcyBieQotICAgIGV2YWx1YXRpbmcgdGhlIFNWIG9mIHRoZSBM
ZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlIChzZWUgQi4xLjIpIGFuZAotICAgIHJldHVybmluZyBp
dHMgY2hhcmFjdGVyIHJlc3VsdC4KKyAgICBldmFsdWF0aW5nIHRoZSBTViBvZiB0aGUgTGVnYWN5
T2N0YWxFc2NhcGVTZXF1ZW5jZSBhbmQgcmV0dXJuaW5nIGl0cworICAgIGNoYXJhY3RlciByZXN1
bHQuCiAtLS0qLwogCiBhc3NlcnQuc2FtZVZhbHVlKC9cMS8uZXhlYygnXHgwMScpWzBdLCAnXHgw
MScsICdcXDEnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2FubmV4Qi9sYW5n
dWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2FubmV4Qi9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5
LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MTk4ZjQ2MzA3M2EwNDhmNjZjOTRhMDkwMjIxZDg5N2EwNWM0ODEzZC4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9hbm5l
eEIvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1vY3RhbC1lc2NhcGUtc2VxdWVuY2Uu
anMKKysrIC9kZXYvbnVsbApAQCAtMSwxNTIgKzAsMCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDE2
IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCi0vKi0tLQotZXNpZDogc2VjLWFkZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRlcmFscwot
ZXM2aWQ6IEIuMS4yCi1kZXNjcmlwdGlvbjogU3RyaW5nIHZhbHVlIGZvciBMZWdhY3lPY3RhbEVz
Y2FwZVNlcXVlbmNlCi1pbmZvOiB8Ci0gICAgRXNjYXBlU2VxdWVuY2UgOjoKLSAgICAgIENoYXJh
Y3RlckVzY2FwZVNlcXVlbmNlCi0gICAgICBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlCi0gICAg
ICBIZXhFc2NhcGVTZXF1ZW5jZQotICAgICAgVW5pY29kZUVzY2FwZVNlcXVlbmNlCi0KLSAgICBM
ZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlIDo6Ci0gICAgICBPY3RhbERpZ2l0IFtsb29rYWhlYWQg
4oiJIE9jdGFsRGlnaXRdCi0gICAgICBaZXJvVG9UaHJlZSBPY3RhbERpZ2l0IFtsb29rYWhlYWQg
4oiJIE9jdGFsRGlnaXRdCi0gICAgICBGb3VyVG9TZXZlbiBPY3RhbERpZ2l0Ci0gICAgICBaZXJv
VG9UaHJlZSBPY3RhbERpZ2l0IE9jdGFsRGlnaXQKLQotICAgIFplcm9Ub1RocmVlIDo6IG9uZSBv
ZgotICAgICAgMCAxIDIgMwotCi0gICAgRm91clRvU2V2ZW4gOjogb25lIG9mCi0gICAgICA0IDUg
NiA3Ci1mbGFnczogW25vU3RyaWN0XQotLS0tKi8KLQotLy8gTGVnYWN5T2N0YWxFc2NhcGVTZXF1
ZW5jZSA6OgotLy8gICBPY3RhbERpZ2l0IFtsb29rYWhlYWQg4oiJIE9jdGFsRGlnaXRdCi1hc3Nl
cnQuc2FtZVZhbHVlKCdcMCcsICdceDAwJywgJ1xcMCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDEn
LCAnXHgwMScsICdcXDEnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyJywgJ1x4MDInLCAnXFwyJyk7
Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMycsICdceDAzJywgJ1xcMycpOwotYXNzZXJ0LnNhbWVWYWx1
ZSgnXDQnLCAnXHgwNCcsICdcXDQnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1w1JywgJ1x4MDUnLCAn
XFw1Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNicsICdceDA2JywgJ1xcNicpOwotYXNzZXJ0LnNh
bWVWYWx1ZSgnXDcnLCAnXHgwNycsICdcXDcnKTsKLQotYXNzZXJ0LnNhbWVWYWx1ZSgnXDA4Jywg
J1x4MDA4JywgJ1xcMDgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wxOCcsICdceDAxOCcsICdcXDE4
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMjgnLCAnXHgwMjgnLCAnXFwyOCcpOwotYXNzZXJ0LnNh
bWVWYWx1ZSgnXDM4JywgJ1x4MDM4JywgJ1xcMzgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1w0OCcs
ICdceDA0OCcsICdcXDQ4Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNTgnLCAnXHgwNTgnLCAnXFw1
OCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDY4JywgJ1x4MDY4JywgJ1xcNjgnKTsKLWFzc2VydC5z
YW1lVmFsdWUoJ1w3OCcsICdceDA3OCcsICdcXDc4Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMDgn
LCAnXHgwMDgnLCAnXFwwOCcpOwotCi0vLyBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlIDo6Ci0v
LyAgIFplcm9Ub1RocmVlIE9jdGFsRGlnaXQgW2xvb2thaGVhZCDiiIkgT2N0YWxEaWdpdF0KLWFz
c2VydC5zYW1lVmFsdWUoJ1wwMCcsICdceDAwJywgJ1xcMDAnKTsKLWFzc2VydC5zYW1lVmFsdWUo
J1wwMScsICdceDAxJywgJ1xcMDEnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wwNicsICdceDA2Jywg
J1xcMDYnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wwNycsICdceDA3JywgJ1xcMDcnKTsKLWFzc2Vy
dC5zYW1lVmFsdWUoJ1wxMCcsICdceDA4JywgJ1xcMTAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wx
MScsICdceDA5JywgJ1xcMTEnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wxNicsICdceDBlJywgJ1xc
MTYnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wxNycsICdceDBmJywgJ1xcMTcnKTsKLWFzc2VydC5z
YW1lVmFsdWUoJ1wyMCcsICdceDEwJywgJ1xcMjAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyMScs
ICdceDExJywgJ1xcMjEnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyNicsICdceDE2JywgJ1xcMjYn
KTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyNycsICdceDE3JywgJ1xcMjcnKTsKLWFzc2VydC5zYW1l
VmFsdWUoJ1wzMCcsICdceDE4JywgJ1xcMzAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wzMScsICdc
eDE5JywgJ1xcMzEnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wzNicsICdceDFlJywgJ1xcMzYnKTsK
LWFzc2VydC5zYW1lVmFsdWUoJ1wzNycsICdceDFmJywgJ1xcMzcnKTsKLWFzc2VydC5zYW1lVmFs
dWUoJ1wwMDgnLCAnXHgwMDgnLCAnXFwwMDgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wwMTgnLCAn
XHgwMTgnLCAnXFwwMTgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wwNjgnLCAnXHgwNjgnLCAnXFww
NjgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wwNzgnLCAnXHgwNzgnLCAnXFwwNzgnKTsKLWFzc2Vy
dC5zYW1lVmFsdWUoJ1wxMDgnLCAnXHgwODgnLCAnXFwxMDgnKTsKLWFzc2VydC5zYW1lVmFsdWUo
J1wxMTgnLCAnXHgwOTgnLCAnXFwxMTgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wxNjgnLCAnXHgw
ZTgnLCAnXFwxNjgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wxNzgnLCAnXHgwZjgnLCAnXFwxNzgn
KTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyMDgnLCAnXHgxMDgnLCAnXFwyMDgnKTsKLWFzc2VydC5z
YW1lVmFsdWUoJ1wyMTgnLCAnXHgxMTgnLCAnXFwyMTgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wy
NjgnLCAnXHgxNjgnLCAnXFwyNjgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyNzgnLCAnXHgxNzgn
LCAnXFwyNzgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wzMDgnLCAnXHgxODgnLCAnXFwzMDgnKTsK
LWFzc2VydC5zYW1lVmFsdWUoJ1wzMTgnLCAnXHgxOTgnLCAnXFwzMTgnKTsKLWFzc2VydC5zYW1l
VmFsdWUoJ1wzNjgnLCAnXHgxZTgnLCAnXFwzNjgnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wzNzgn
LCAnXHgxZjgnLCAnXFwzNzgnKTsKLQotLy8gTGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5jZSA6Ogot
Ly8gICBGb3VyVG9TZXZlbiBPY3RhbERpZ2l0Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNDAnLCAnXHgy
MCcsICdcXDQwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNDEnLCAnXHgyMScsICdcXDQxJyk7Ci1h
c3NlcnQuc2FtZVZhbHVlKCdcNDYnLCAnXHgyNicsICdcXDQ2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVl
KCdcNDcnLCAnXHgyNycsICdcXDQ3Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNTAnLCAnXHgyOCcs
ICdcXDUwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNTEnLCAnXHgyOScsICdcXDUxJyk7Ci1hc3Nl
cnQuc2FtZVZhbHVlKCdcNTYnLCAnXHgyZScsICdcXDU2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdc
NTcnLCAnXHgyZicsICdcXDU3Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNjAnLCAnXHgzMCcsICdc
XDYwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNjEnLCAnXHgzMScsICdcXDYxJyk7Ci1hc3NlcnQu
c2FtZVZhbHVlKCdcNjYnLCAnXHgzNicsICdcXDY2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNjcn
LCAnXHgzNycsICdcXDY3Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNzAnLCAnXHgzOCcsICdcXDcw
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNzEnLCAnXHgzOScsICdcXDcxJyk7Ci1hc3NlcnQuc2Ft
ZVZhbHVlKCdcNzYnLCAnXHgzZScsICdcXDc2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNzcnLCAn
XHgzZicsICdcXDc3Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNDAwJywgJ1x4MjAwJywgJ1xcNDAw
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNDEwJywgJ1x4MjEwJywgJ1xcNDEwJyk7Ci1hc3NlcnQu
c2FtZVZhbHVlKCdcNDYwJywgJ1x4MjYwJywgJ1xcNDYwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdc
NDcwJywgJ1x4MjcwJywgJ1xcNDcwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNTAwJywgJ1x4Mjgw
JywgJ1xcNTAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNTEwJywgJ1x4MjkwJywgJ1xcNTEwJyk7
Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNTYwJywgJ1x4MmUwJywgJ1xcNTYwJyk7Ci1hc3NlcnQuc2Ft
ZVZhbHVlKCdcNTcwJywgJ1x4MmYwJywgJ1xcNTcwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNjAw
JywgJ1x4MzAwJywgJ1xcNjAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNjEwJywgJ1x4MzEwJywg
J1xcNjEwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNjYwJywgJ1x4MzYwJywgJ1xcNjYwJyk7Ci1h
c3NlcnQuc2FtZVZhbHVlKCdcNjcwJywgJ1x4MzcwJywgJ1xcNjcwJyk7Ci1hc3NlcnQuc2FtZVZh
bHVlKCdcNzAwJywgJ1x4MzgwJywgJ1xcNzAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNzEwJywg
J1x4MzkwJywgJ1xcNzEwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNzYwJywgJ1x4M2UwJywgJ1xc
NzYwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcNzcwJywgJ1x4M2YwJywgJ1xcNzcwJyk7Ci0KLS8v
IExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UgOjoKLS8vICAgWmVyb1RvVGhyZWUgT2N0YWxEaWdp
dCBPY3RhbERpZ2l0Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMDAwJywgJ1x4MDAnLCAnXFwwMDAnKTsK
LWFzc2VydC5zYW1lVmFsdWUoJ1wwMDEnLCAnXHgwMScsICdcXDAwMScpOwotYXNzZXJ0LnNhbWVW
YWx1ZSgnXDAxMCcsICdceDA4JywgJ1xcMDEwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMDA2Jywg
J1x4MDYnLCAnXFwwMDYnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wwNjAnLCAnXHgzMCcsICdcXDA2
MCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDAwNycsICdceDA3JywgJ1xcMDA3Jyk7Ci1hc3NlcnQu
c2FtZVZhbHVlKCdcMDcwJywgJ1x4MzgnLCAnXFwwNzAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1ww
NzcnLCAnXHgzZicsICdcXDA3NycpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDEwMCcsICdceDQwJywg
J1xcMTAwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMTAxJywgJ1x4NDEnLCAnXFwxMDEnKTsKLWFz
c2VydC5zYW1lVmFsdWUoJ1wxMTAnLCAnXHg0OCcsICdcXDExMCcpOwotYXNzZXJ0LnNhbWVWYWx1
ZSgnXDEwNicsICdceDQ2JywgJ1xcMTA2Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMTYwJywgJ1x4
NzAnLCAnXFwxNjAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wxMDcnLCAnXHg0NycsICdcXDEwNycp
OwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDE3MCcsICdceDc4JywgJ1xcMTcwJyk7Ci1hc3NlcnQuc2Ft
ZVZhbHVlKCdcMTc3JywgJ1x4N2YnLCAnXFwxNzcnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyMDAn
LCAnXHg4MCcsICdcXDIwMCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDIwMScsICdceDgxJywgJ1xc
MjAxJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMjEwJywgJ1x4ODgnLCAnXFwyMTAnKTsKLWFzc2Vy
dC5zYW1lVmFsdWUoJ1wyMDYnLCAnXHg4NicsICdcXDIwNicpOwotYXNzZXJ0LnNhbWVWYWx1ZSgn
XDI2MCcsICdceGIwJywgJ1xcMjYwJyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMjA3JywgJ1x4ODcn
LCAnXFwyMDcnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wyNzAnLCAnXHhiOCcsICdcXDI3MCcpOwot
YXNzZXJ0LnNhbWVWYWx1ZSgnXDI3NycsICdceGJmJywgJ1xcMjc3Jyk7Ci1hc3NlcnQuc2FtZVZh
bHVlKCdcMzAwJywgJ1x4YzAnLCAnXFwzMDAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wzMDEnLCAn
XHhjMScsICdcXDMwMScpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDMxMCcsICdceGM4JywgJ1xcMzEw
Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMzA2JywgJ1x4YzYnLCAnXFwzMDYnKTsKLWFzc2VydC5z
YW1lVmFsdWUoJ1wzNjAnLCAnXHhmMCcsICdcXDM2MCcpOwotYXNzZXJ0LnNhbWVWYWx1ZSgnXDMw
NycsICdceGM3JywgJ1xcMzA3Jyk7Ci1hc3NlcnQuc2FtZVZhbHVlKCdcMzcwJywgJ1x4ZjgnLCAn
XFwzNzAnKTsKLWFzc2VydC5zYW1lVmFsdWUoJ1wzNzcnLCAnXHhmZicsICdcXDM3NycpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlv
bnMtbWF4Ynl0ZWxlbmd0aC1kaW1pbnVpdGl2ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtZGltaW51aXRpdmUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNWZhNWJjM2IzZDBiZGU4ZTE2ZGUzMjc1NzVjNDdjNzU3MDgxMmJjZQotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtZGltaW51aXRpdmUuanMKQEAgLTAsMCArMSwyMiBAQAor
Ly8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZv
dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLWNv
bnN0cnVjdG9yCitkZXNjcmlwdGlvbjogfAorICBJbnZva2VkIHdpdGggYW4gb3B0aW9ucyBvYmpl
Y3Qgd2hvc2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IGlzIGxlc3MgdGhhbgorICB0aGUgbGVu
Z3RoLgoraW5mbzogfAorICBBcnJheUJ1ZmZlciggbGVuZ3RoIFsgLCBvcHRpb25zIF0gKQorCisg
IDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlv
bi4KKyAgMi4gTGV0IGJ5dGVMZW5ndGggYmUgPyBUb0luZGV4KGxlbmd0aCkuCisgIDMuIExldCBy
ZXF1ZXN0ZWRNYXhCeXRlTGVuZ3RoIGJlID8gR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0
aW9uKG9wdGlvbnMpLgorICA0LiBJZiByZXF1ZXN0ZWRNYXhCeXRlTGVuZ3RoIGlzIGVtcHR5LCB0
aGVuCisgICAgIGEuIFsuLi5dCisgIDUuIElmIGJ5dGVMZW5ndGggPiByZXF1ZXN0ZWRNYXhCeXRl
TGVuZ3RoLCB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgorZmVhdHVyZXM6IFtyZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQudGhyb3dzKFJhbmdlRXJyb3IsIGZ1bmN0
aW9uKCkgeworICBuZXcgQXJyYXlCdWZmZXIoMSwge21heEJ5dGVMZW5ndGg6IDB9KTsKK30pOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29w
dGlvbnMtbWF4Ynl0ZWxlbmd0aC1leGNlc3NpdmUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLWV4Y2Vzc2l2ZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4yMWFiMzJhZTVhZTg5NDFiZmY1ZGYzMmVmNzNhMmQyYjVlNjNiMWQxCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1leGNlc3NpdmUuanMKQEAgLTAsMCArMSwyOCBAQAorLy8g
Q29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLWNvbnN0
cnVjdG9yCitkZXNjcmlwdGlvbjogfAorICBJbnZva2VkIHdpdGggYW4gb3B0aW9ucyBvYmplY3Qg
d2hvc2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IGV4Y2VlZHMgdGhlCisgIG1heGltdW0gbGVu
Z3RoIHZhbHVlCitpbmZvOiB8CisgIEFycmF5QnVmZmVyKCBsZW5ndGggWyAsIG9wdGlvbnMgXSAp
CisKKyAgMS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5lZCwgdGhyb3cgYSBUeXBlRXJyb3IgZXhj
ZXB0aW9uLgorICAyLiBMZXQgYnl0ZUxlbmd0aCBiZSA/IFRvSW5kZXgobGVuZ3RoKS4KKyAgMy4g
TGV0IHJlcXVlc3RlZE1heEJ5dGVMZW5ndGggYmUgPyBHZXRBcnJheUJ1ZmZlck1heEJ5dGVMZW5n
dGhPcHRpb24ob3B0aW9ucykuCisgIFsuLi5dCisKKyAgMS4xLjUgR2V0QXJyYXlCdWZmZXJNYXhC
eXRlTGVuZ3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAgMS4gSWYgVHlwZShvcHRpb25zKSBpcyBu
b3QgT2JqZWN0LCByZXR1cm4gZW1wdHkuCisgIDIuIExldCBtYXhCeXRlTGVuZ3RoIGJlID8gR2V0
KG9wdGlvbnMsICJtYXhCeXRlTGVuZ3RoIikuCisgIDMuIElmIG1heEJ5dGVMZW5ndGggaXMgdW5k
ZWZpbmVkLCByZXR1cm4gZW1wdHkuCisgIDQuIFJldHVybiA/IFRvSW5kZXgobWF4Qnl0ZUxlbmd0
aCkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC50
aHJvd3MoUmFuZ2VFcnJvciwgZnVuY3Rpb24oKSB7CisgIC8vIE1hdGgucG93KDIsIDUzKSA9IDkw
MDcxOTkyNTQ3NDA5OTIKKyAgbmV3IEFycmF5QnVmZmVyKDAsIHsgbWF4Qnl0ZUxlbmd0aDogOTAw
NzE5OTI1NDc0MDk5MiB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1uZWdhdGl2ZS5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5
dGVsZW5ndGgtbmVnYXRpdmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGZkZDkwZjBkYWYyNDg3MDg5OGQ3ZTYz
YzhjM2ZkMmU4ODJmZGFjMAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtbmVnYXRpdmUuanMK
QEAgLTAsMCArMSwyNSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDog
c2VjLWFycmF5YnVmZmVyLWNvbnN0cnVjdG9yCitkZXNjcmlwdGlvbjogSW52b2tlZCB3aXRoIGFu
IG9wdGlvbnMgb2JqZWN0IHdob3NlIGBtYXhCeXRlTGVuZ3RoYCBwcm9wZXJ0eSBpcyBuZWdhdGl2
ZQoraW5mbzogfAorICBBcnJheUJ1ZmZlciggbGVuZ3RoIFsgLCBvcHRpb25zIF0gKQorCisgIDEu
IElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4K
KyAgMi4gTGV0IGJ5dGVMZW5ndGggYmUgPyBUb0luZGV4KGxlbmd0aCkuCisgIDMuIExldCByZXF1
ZXN0ZWRNYXhCeXRlTGVuZ3RoIGJlID8gR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9u
KG9wdGlvbnMpLgorICBbLi4uXQorCisgIDEuMS41IEdldEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0
aE9wdGlvbiAoIG9wdGlvbnMgKQorCisgIDEuIElmIFR5cGUob3B0aW9ucykgaXMgbm90IE9iamVj
dCwgcmV0dXJuIGVtcHR5LgorICAyLiBMZXQgbWF4Qnl0ZUxlbmd0aCBiZSA/IEdldChvcHRpb25z
LCAibWF4Qnl0ZUxlbmd0aCIpLgorICAzLiBJZiBtYXhCeXRlTGVuZ3RoIGlzIHVuZGVmaW5lZCwg
cmV0dXJuIGVtcHR5LgorICA0LiBSZXR1cm4gPyBUb0luZGV4KG1heEJ5dGVMZW5ndGgpLgorZmVh
dHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQudGhyb3dzKFJh
bmdlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBuZXcgQXJyYXlCdWZmZXIoMCwgeyBtYXhCeXRlTGVu
Z3RoOiAtMSB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL0FycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1vYmplY3QuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3Ro
LW9iamVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jY2FkM2EyYjk0NTNjNjRiZmQ2YTc0NjZjZmEwYjc0Mjky
ZjgxN2VjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1vYmplY3QuanMKQEAgLTAsMCArMSw0
NSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNl
bnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVm
ZmVyLWNvbnN0cnVjdG9yCitkZXNjcmlwdGlvbjogfAorICBJbnZva2VkIHdpdGggYW4gb3B0aW9u
cyBvYmplY3Qgd2hvc2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IGNhbm5vdCBiZQorICBjb2Vy
Y2VkIHRvIGEgcHJpbWl0aXZlIHZhbHVlCitpbmZvOiB8CisgIEFycmF5QnVmZmVyKCBsZW5ndGgg
WyAsIG9wdGlvbnMgXSApCisKKyAgMS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5lZCwgdGhyb3cg
YSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICAyLiBMZXQgYnl0ZUxlbmd0aCBiZSA/IFRvSW5kZXgo
bGVuZ3RoKS4KKyAgMy4gTGV0IHJlcXVlc3RlZE1heEJ5dGVMZW5ndGggYmUgPyBHZXRBcnJheUJ1
ZmZlck1heEJ5dGVMZW5ndGhPcHRpb24ob3B0aW9ucykuCisgIFsuLi5dCisKKyAgMS4xLjUgR2V0
QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAgMS4gSWYgVHlw
ZShvcHRpb25zKSBpcyBub3QgT2JqZWN0LCByZXR1cm4gZW1wdHkuCisgIDIuIExldCBtYXhCeXRl
TGVuZ3RoIGJlID8gR2V0KG9wdGlvbnMsICJtYXhCeXRlTGVuZ3RoIikuCisgIDMuIElmIG1heEJ5
dGVMZW5ndGggaXMgdW5kZWZpbmVkLCByZXR1cm4gZW1wdHkuCisgIDQuIFJldHVybiA/IFRvSW5k
ZXgobWF4Qnl0ZUxlbmd0aCkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK3ZhciBsb2cgPSBbXTsKK3ZhciBvcHRpb25zID0geworICBtYXhCeXRlTGVuZ3RoOiB7
CisgICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkgeworICAgICAgbG9nLnB1c2goJ3RvU3RyaW5nJyk7
CisgICAgICByZXR1cm4ge307CisgICAgfSwKKyAgICB2YWx1ZU9mOiBmdW5jdGlvbigpIHsKKyAg
ICAgIGxvZy5wdXNoKCd2YWx1ZU9mJyk7CisgICAgICByZXR1cm4ge307CisgICAgfQorICB9Cit9
OworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIG5ldyBBcnJheUJ1
ZmZlcigwLCBvcHRpb25zKTsKK30pOworCithc3NlcnQuc2FtZVZhbHVlKGxvZy5sZW5ndGgsIDIp
OworYXNzZXJ0LnNhbWVWYWx1ZShsb2dbMF0sICd2YWx1ZU9mJyk7Cithc3NlcnQuc2FtZVZhbHVl
KGxvZ1sxXSwgJ3RvU3RyaW5nJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLXBvaXNvbmVkLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0
ZWxlbmd0aC1wb2lzb25lZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNTkxODVkMDEyNTRmZmVkMjY3YmVhN2M4
MTIxZWQwMzQ3OTk1YzY3Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1wb2lzb25lZC5qcwpA
QCAtMCwwICsxLDI5IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBz
ZWMtYXJyYXlidWZmZXItY29uc3RydWN0b3IKK2Rlc2NyaXB0aW9uOiBJbnZva2VkIHdpdGggYW4g
b3B0aW9ucyBvYmplY3Qgd2hvc2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IHRocm93cworaW5m
bzogfAorICBBcnJheUJ1ZmZlciggbGVuZ3RoIFsgLCBvcHRpb25zIF0gKQorCisgIDEuIElmIE5l
d1RhcmdldCBpcyB1bmRlZmluZWQsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgMi4g
TGV0IGJ5dGVMZW5ndGggYmUgPyBUb0luZGV4KGxlbmd0aCkuCisgIDMuIExldCByZXF1ZXN0ZWRN
YXhCeXRlTGVuZ3RoIGJlID8gR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uKG9wdGlv
bnMpLgorICBbLi4uXQorCisgIDEuMS41IEdldEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aE9wdGlv
biAoIG9wdGlvbnMgKQorCisgIDEuIElmIFR5cGUob3B0aW9ucykgaXMgbm90IE9iamVjdCwgcmV0
dXJuIGVtcHR5LgorICAyLiBMZXQgbWF4Qnl0ZUxlbmd0aCBiZSA/IEdldChvcHRpb25zLCAibWF4
Qnl0ZUxlbmd0aCIpLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLwor
Cit2YXIgb3B0aW9ucyA9IHsKKyAgZ2V0IG1heEJ5dGVMZW5ndGgoKSB7CisgICAgdGhyb3cgbmV3
IFRlc3QyNjJFcnJvcigpOworICB9Cit9OworCithc3NlcnQudGhyb3dzKFRlc3QyNjJFcnJvciwg
ZnVuY3Rpb24oKSB7CisgIG5ldyBBcnJheUJ1ZmZlcigwLCBvcHRpb25zKTsKK30pOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlvbnMt
bWF4Ynl0ZWxlbmd0aC11bmRlZmluZWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLXVuZGVmaW5lZC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xYjM4NDRlMjdhMDdlMzFmNDgxNWY3NzdiOWExOWM3ZDk3ODE1ZTc2Ci0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL29wdGlv
bnMtbWF4Ynl0ZWxlbmd0aC11bmRlZmluZWQuanMKQEAgLTAsMCArMSwyNCBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLWNvbnN0cnVjdG9y
CitkZXNjcmlwdGlvbjogSW52b2tlZCB3aXRoIGFuIG9wdGlvbnMgb2JqZWN0IHdob3NlIGBtYXhC
eXRlTGVuZ3RoYCBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKK2luZm86IHwKKyAgQXJyYXlCdWZmZXIo
IGxlbmd0aCBbICwgb3B0aW9ucyBdICkKKworICAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVk
LCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDIuIExldCBieXRlTGVuZ3RoIGJlID8g
VG9JbmRleChsZW5ndGgpLgorICAzLiBMZXQgcmVxdWVzdGVkTWF4Qnl0ZUxlbmd0aCBiZSA/IEdl
dEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aE9wdGlvbihvcHRpb25zKS4KKyAgNC4gSWYgcmVxdWVz
dGVkTWF4Qnl0ZUxlbmd0aCBpcyBlbXB0eSwgdGhlbgorICAgICBhLiBSZXR1cm4gPyBBbGxvY2F0
ZUFycmF5QnVmZmVyKE5ld1RhcmdldCwgYnl0ZUxlbmd0aCkuCisKKyAgMS4xLjUgR2V0QXJyYXlC
dWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAgMS4gSWYgVHlwZShvcHRp
b25zKSBpcyBub3QgT2JqZWN0LCByZXR1cm4gZW1wdHkuCisgIDIuIExldCBtYXhCeXRlTGVuZ3Ro
IGJlID8gR2V0KG9wdGlvbnMsICJtYXhCeXRlTGVuZ3RoIikuCisgIDMuIElmIG1heEJ5dGVMZW5n
dGggaXMgdW5kZWZpbmVkLCByZXR1cm4gZW1wdHkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJh
eWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUobmV3IEFycmF5QnVmZmVyKDAsIHt9
KS5yZXNpemFibGUsIGZhbHNlKTsKK2Fzc2VydC5zYW1lVmFsdWUobmV3IEFycmF5QnVmZmVyKDAs
IHttYXhCeXRlTGVuZ3RoOiB1bmRlZmluZWR9KS5yZXNpemFibGUsIGZhbHNlKTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9vcHRpb25zLW5v
bi1vYmplY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIv
b3B0aW9ucy1ub24tb2JqZWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRmNTBmMDM1MDZmMGQxNTBkYzczOTU0
YjM3YTg4ODZmYzVmMTk4NWEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvb3B0aW9ucy1ub24tb2JqZWN0LmpzCkBAIC0wLDAgKzEs
MjcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1
ZmZlci1jb25zdHJ1Y3RvcgorZGVzY3JpcHRpb246IEludm9rZWQgd2l0aCBhIG5vbi1vYmplY3Qg
dmFsdWUgZm9yIG9wdGlvbnMKK2luZm86IHwKKyAgQXJyYXlCdWZmZXIoIGxlbmd0aCBbICwgb3B0
aW9ucyBdICkKKworICAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCB0aHJvdyBhIFR5cGVF
cnJvciBleGNlcHRpb24uCisgIDIuIExldCBieXRlTGVuZ3RoIGJlID8gVG9JbmRleChsZW5ndGgp
LgorICAzLiBMZXQgcmVxdWVzdGVkTWF4Qnl0ZUxlbmd0aCBiZSA/IEdldEFycmF5QnVmZmVyTWF4
Qnl0ZUxlbmd0aE9wdGlvbihvcHRpb25zKS4KKyAgNC4gSWYgcmVxdWVzdGVkTWF4Qnl0ZUxlbmd0
aCBpcyBlbXB0eSwgdGhlbgorICAgICBhLiBSZXR1cm4gPyBBbGxvY2F0ZUFycmF5QnVmZmVyKE5l
d1RhcmdldCwgYnl0ZUxlbmd0aCkuCisKKyAgMS4xLjUgR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVu
Z3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAgMS4gSWYgVHlwZShvcHRpb25zKSBpcyBub3QgT2Jq
ZWN0LCByZXR1cm4gZW1wdHkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK2Fzc2VydC5zYW1lVmFsdWUobmV3IEFycmF5QnVmZmVyKDAsIG51bGwpLnJlc2l6YWJs
ZSwgZmFsc2UsICdudWxsJyk7Cithc3NlcnQuc2FtZVZhbHVlKG5ldyBBcnJheUJ1ZmZlcigwLCB0
cnVlKS5yZXNpemFibGUsIGZhbHNlLCAnYm9vbGVhbicpOworYXNzZXJ0LnNhbWVWYWx1ZShuZXcg
QXJyYXlCdWZmZXIoMCwgU3ltYm9sKDMpKS5yZXNpemFibGUsIGZhbHNlLCAnc3ltYm9sJyk7Cith
c3NlcnQuc2FtZVZhbHVlKG5ldyBBcnJheUJ1ZmZlcigwLCAxbikucmVzaXphYmxlLCBmYWxzZSwg
J2JpZ2ludCcpOworYXNzZXJ0LnNhbWVWYWx1ZShuZXcgQXJyYXlCdWZmZXIoMCwgJ3N0cmluZycp
LnJlc2l6YWJsZSwgZmFsc2UsICdzdHJpbmcnKTsKK2Fzc2VydC5zYW1lVmFsdWUobmV3IEFycmF5
QnVmZmVyKDAsIDkpLnJlc2l6YWJsZSwgZmFsc2UsICdudW1iZXInKTsKK2Fzc2VydC5zYW1lVmFs
dWUobmV3IEFycmF5QnVmZmVyKDAsIHVuZGVmaW5lZCkucmVzaXphYmxlLCBmYWxzZSwgJ3VuZGVm
aW5lZCcpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2RldGFjaGVkLWJ1ZmZlci5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxl
bmd0aC9kZXRhY2hlZC1idWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmRmZGI5MTZjMjRhYmUzMGJlYzA1
ODEzZGUwMDY0MWYyZDdjNWRkMwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9kZXRhY2hl
ZC1idWZmZXIuanMKQEAgLTAsMCArMSwyMiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBW
OCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMg
Z292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisv
Ki0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0aAor
ZGVzY3JpcHRpb246IFJldHVybnMgMCBpZiB0aGUgYnVmZmVyIGlzIGRldGFjaGVkCitpbmZvOiB8
CisgIGdldCBBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aAorCisgIDEuIExldCBP
IGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChP
LCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBp
cyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElmIElzRGV0YWNoZWRC
dWZmZXIoTykgaXMgdHJ1ZSwgcmV0dXJuICsw8J2UvS4KKyAgWy4uLl0KK2luY2x1ZGVzOiBbZGV0
YWNoQXJyYXlCdWZmZXIuanNdCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK3ZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcigxKTsKKworJERFVEFDSEJVRkZFUihhYik7
CisKK2Fzc2VydC5zYW1lVmFsdWUoYWIubWF4Qnl0ZUxlbmd0aCwgMCk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5
dGVMZW5ndGgvaW52b2tlZC1hcy1hY2Nlc3Nvci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9pbnZva2VkLWFzLWFj
Y2Vzc29yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQxZDI1NDg4ZGQ2NGM2OThiMDdlN2ZkZGYzZDIwMTk3ZTQ0
YTlmZjMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvaW52b2tlZC1hcy1hY2Nlc3Nvci5q
cwpAQCAtMCwwICsxLDE3IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3Qg
YXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBi
eSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lk
OiBzZWMtZ2V0LWFycmF5YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitkZXNjcmlwdGlv
bjogUmVxdWlyZXMgdGhpcyB2YWx1ZSB0byBoYXZlIGEgW1tBcnJheUJ1ZmZlckRhdGFdXSBpbnRl
cm5hbCBzbG90CitpbmZvOiB8CisgIGdldCBBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxl
bmd0aAorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVx
dWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgWy4uLl0KK2ZlYXR1
cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnRocm93cyhUeXBl
RXJyb3IsIGZ1bmN0aW9uKCkgeworICBBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0
aDsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2ludm9rZWQtYXMtZnVuYy5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxl
bmd0aC9pbnZva2VkLWFzLWZ1bmMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2YxNmU0MWQxOTE0NGZmOWY2ZTdm
YjJhODRjMzJhOGM1MzM3YmM0NQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9pbnZva2Vk
LWFzLWZ1bmMuanMKQEAgLTAsMCArMSwyMyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBW
OCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMg
Z292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisv
Ki0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0aAor
ZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBleGNlcHRpb24gd2hlbiBpbnZva2VkIGFz
IGEgZnVuY3Rpb24KK2luZm86IHwKKyAgZ2V0IEFycmF5QnVmZmVyLnByb3RvdHlwZS5tYXhCeXRl
TGVuZ3RoCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBS
ZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgorICBbLi4uXQorZmVh
dHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgZ2V0dGVyID0gT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcigKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLCAn
bWF4Qnl0ZUxlbmd0aCcKKykuZ2V0OworCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBnZXR0ZXIs
ICdmdW5jdGlvbicpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7Cisg
IGdldHRlcigpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvbGVuZ3RoLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVu
Z3RoL2xlbmd0aC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYjY3MGQ0NDY5YzAyZGQyNmY4NjI3NTBlZDg1YmE2
MDA3ZDVhZTUyCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2xlbmd0aC5qcwpAQCAtMCww
ICsxLDMyIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNE
IGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0
LWFycmF5YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitkZXNjcmlwdGlvbjogPgorICBn
ZXQgQXJyYXlCdWZmZXIucHJvdG90eXBlLm1heEJ5dGVMZW5ndGgubGVuZ3RoIGlzIDAuCitpbmZv
OiB8CisgIGdldCBBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aAorCisgIDE3IEVD
TUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0czoKKyAgICBFdmVyeSBidWlsdC1pbiBG
dW5jdGlvbiBvYmplY3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIGhhcyBhIGxlbmd0aAorICAg
IHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIGFuIGludGVnZXIuIFVubGVzcyBvdGhlcndpc2Ugc3Bl
Y2lmaWVkLCB0aGlzCisgICAgdmFsdWUgaXMgZXF1YWwgdG8gdGhlIGxhcmdlc3QgbnVtYmVyIG9m
IG5hbWVkIGFyZ3VtZW50cyBzaG93biBpbiB0aGUKKyAgICBzdWJjbGF1c2UgaGVhZGluZ3MgZm9y
IHRoZSBmdW5jdGlvbiBkZXNjcmlwdGlvbiwgaW5jbHVkaW5nIG9wdGlvbmFsCisgICAgcGFyYW1l
dGVycy4gSG93ZXZlciwgcmVzdCBwYXJhbWV0ZXJzIHNob3duIHVzaW5nIHRoZSBmb3JtIOKAnC4u
Lm5hbWXigJ0KKyAgICBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSBkZWZhdWx0IGFyZ3VtZW50IGNv
dW50LgorCisgICAgVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSBsZW5ndGggcHJvcGVy
dHkgb2YgYSBidWlsdC1pbiBGdW5jdGlvbgorICAgIG9iamVjdCBoYXMgdGhlIGF0dHJpYnV0ZXMg
eyBbW1dyaXRhYmxlXV06IGZhbHNlLCBbW0VudW1lcmFibGVdXTogZmFsc2UsCisgICAgW1tDb25m
aWd1cmFibGVdXTogdHJ1ZSB9LgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1
cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwordmFyIGRlc2MgPSBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEFycmF5QnVmZmVyLnByb3RvdHlwZSwgJ21heEJ5dGVM
ZW5ndGgnKTsKKwordmVyaWZ5UHJvcGVydHkoZGVzYy5nZXQsICdsZW5ndGgnLCB7CisgIHZhbHVl
OiAwLAorICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBjb25maWd1
cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL25hbWUuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5n
dGgvbmFtZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNGQ4MzliYTYwYTAyZTY1NTFkNWI4NWNiMzRkNjNiYjUy
YjQ2NTEwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL25hbWUuanMKQEAgLTAsMCArMSwy
NCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNl
bnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJh
eWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0aAorZGVzY3JpcHRpb246ID4KKyAgZ2V0IEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5tYXhCeXRlTGVuZ3RoCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFu
ZGFyZCBCdWlsdC1pbiBPYmplY3RzCisKKyAgRnVuY3Rpb25zIHRoYXQgYXJlIHNwZWNpZmllZCBh
cyBnZXQgb3Igc2V0IGFjY2Vzc29yIGZ1bmN0aW9ucyBvZiBidWlsdC1pbgorICBwcm9wZXJ0aWVz
IGhhdmUgImdldCAiIG9yICJzZXQgIiBwcmVwZW5kZWQgdG8gdGhlIHByb3BlcnR5IG5hbWUgc3Ry
aW5nLgorCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoQXJyYXlCdWZmZXIucHJvdG90eXBlLCAnbWF4Qnl0ZUxlbmd0aCcpOworCit2
ZXJpZnlQcm9wZXJ0eShkZXNjLmdldCwgJ25hbWUnLCB7CisgIHZhbHVlOiAnZ2V0IG1heEJ5dGVM
ZW5ndGgnLAorICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBjb25m
aWd1cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3Byb3AtZGVzYy5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4
Qnl0ZUxlbmd0aC9wcm9wLWRlc2MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWY2NDgxZmNhMzlhOTQyNTIzMzIz
OTMxODI1MTI3ZDJhOTk2ZTljMwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9wcm9wLWRl
c2MuanMKQEAgLTAsMCArMSwyNSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9q
ZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQor
ZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0aAorZGVzY3Jp
cHRpb246ID4KKyAgIm1heEJ5dGVMZW5ndGgiIHByb3BlcnR5IG9mIEFycmF5QnVmZmVyLnByb3Rv
dHlwZQoraW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aCBpcyBh
biBhY2Nlc3NvciBwcm9wZXJ0eSB3aG9zZSBzZXQKKyAgYWNjZXNzb3IgZnVuY3Rpb24gaXMgdW5k
ZWZpbmVkLgorCisgIFNlY3Rpb24gMTc6IEV2ZXJ5IGFjY2Vzc29yIHByb3BlcnR5IGRlc2NyaWJl
ZCBpbiBjbGF1c2VzIDE4IHRocm91Z2ggMjYgYW5kIGluCisgIEFubmV4IEIuMiBoYXMgdGhlIGF0
dHJpYnV0ZXMge1tbRW51bWVyYWJsZV1dOiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9
CitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJy
YXlidWZmZXJdCistLS0qLworCit2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3IoQXJyYXlCdWZmZXIucHJvdG90eXBlLCAnbWF4Qnl0ZUxlbmd0aCcpOworCithc3NlcnQu
c2FtZVZhbHVlKGRlc2Muc2V0LCB1bmRlZmluZWQpOworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2Yg
ZGVzYy5nZXQsICdmdW5jdGlvbicpOworCit2ZXJpZnlQcm9wZXJ0eShBcnJheUJ1ZmZlci5wcm90
b3R5cGUsICdtYXhCeXRlTGVuZ3RoJywgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgY29uZmln
dXJhYmxlOiB0cnVlCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9yZXR1cm4tbWF4Ynl0ZWxl
bmd0aC1ub24tcmVzaXphYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Fy
cmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhieXRlbGVuZ3RoLW5v
bi1yZXNpemFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTQzNmIxNDlkZGUyNGRkZDY2MmNlY2FmMzNjYTJi
NmRkM2Y3ODZkYgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9yZXR1cm4tbWF4Ynl0ZWxl
bmd0aC1ub24tcmVzaXphYmxlLmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1nZXQtYXJyYXlidWZmZXIucHJvdG90eXBlLm1heGJ5
dGVsZW5ndGgKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gdmFsdWUgZnJvbSBbW0FycmF5QnVmZmVyQnl0
ZUxlbmd0aF1dIGludGVybmFsIHNsb3QKK2luZm86IHwKKyAgMjQuMS40LjEgZ2V0IEFycmF5QnVm
ZmVyLnByb3RvdHlwZS5tYXhCeXRlTGVuZ3RoCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFs
dWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJE
YXRhXV0pLgorICAzLiBJZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEg
VHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNC4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPKSBpcyB0cnVl
LCByZXR1cm4gKzDwnZS9LgorICA1LiBJZiBJc1Jlc2l6YWJsZUFycmF5QnVmZmVyKE8pIGlzIHRy
dWUsIHRoZW4KKyAgICAgWy4uLl0KKyAgNi4gRWxzZSwKKyAgICAgYS4gTGV0IGxlbmd0aCBiZSBP
LltbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0uCisgIDcuIFJldHVybiDwnZS9KGxlbmd0aCkuCitm
ZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBhYjEgPSBuZXcg
QXJyYXlCdWZmZXIoMCk7Cithc3NlcnQuc2FtZVZhbHVlKGFiMS5tYXhCeXRlTGVuZ3RoLCAwKTsK
KwordmFyIGFiMiA9IG5ldyBBcnJheUJ1ZmZlcig0Mik7Cithc3NlcnQuc2FtZVZhbHVlKGFiMi5t
YXhCeXRlTGVuZ3RoLCA0Mik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvcmV0dXJuLW1heGJ5dGVs
ZW5ndGgtcmVzaXphYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhieXRlbGVuZ3RoLXJlc2l6
YWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4xYWVkYTU3MGRiOTk4NGUwYzFkNzVkMWU2MGQ3ODgxNTg2MTEx
OGJiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Fy
cmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhieXRlbGVuZ3RoLXJl
c2l6YWJsZS5qcwpAQCAtMCwwICsxLDI4IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4
IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitlc2lkOiBzZWMtZ2V0LWFycmF5YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitk
ZXNjcmlwdGlvbjogUmV0dXJuIHZhbHVlIGZyb20gW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhd
XSBpbnRlcm5hbCBzbG90CitpbmZvOiB8CisgIDI0LjEuNC4xIGdldCBBcnJheUJ1ZmZlci5wcm90
b3R5cGUubWF4Qnl0ZUxlbmd0aAorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAy
LiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4K
KyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJv
ciBleGNlcHRpb24uCisgIDQuIElmIElzRGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgcmV0dXJu
ICsw8J2UvS4KKyAgNS4gSWYgSXNSZXNpemFibGVBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aGVu
CisgICAgIGEuIExldCBsZW5ndGggYmUgTy5bW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dLgor
ICA2LiBFbHNlLAorICAgICBbLi4uXQorICA3LiBSZXR1cm4g8J2UvShsZW5ndGgpLgorZmVhdHVy
ZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgYWIxID0gbmV3IEFycmF5
QnVmZmVyKDAsIHsgbWF4Qnl0ZUxlbmd0aDogMCB9KTsKK2Fzc2VydC5zYW1lVmFsdWUoYWIxLm1h
eEJ5dGVMZW5ndGgsIDApOworCit2YXIgYWIyID0gbmV3IEFycmF5QnVmZmVyKDAsIHsgbWF4Qnl0
ZUxlbmd0aDogMjMgfSk7Cithc3NlcnQuc2FtZVZhbHVlKGFiMi5tYXhCeXRlTGVuZ3RoLCAyMyk7
CisKK3ZhciBhYjMgPSBuZXcgQXJyYXlCdWZmZXIoNDIsIHsgbWF4Qnl0ZUxlbmd0aDogNDIgfSk7
Cithc3NlcnQuc2FtZVZhbHVlKGFiMy5tYXhCeXRlTGVuZ3RoLCA0Mik7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5
dGVMZW5ndGgvdGhpcy1oYXMtbm8tYXJyYXlidWZmZXJkYXRhLWludGVybmFsLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVu
Z3RoL3RoaXMtaGFzLW5vLWFycmF5YnVmZmVyZGF0YS1pbnRlcm5hbC5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5j
ZGNlNzAzYzY1NThkM2FkMGVkMWZkZDhkZWQyMWM3YWRmYTllOTc3Ci0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9t
YXhCeXRlTGVuZ3RoL3RoaXMtaGFzLW5vLWFycmF5YnVmZmVyZGF0YS1pbnRlcm5hbC5qcwpAQCAt
MCwwICsxLDM5IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMt
Z2V0LWFycmF5YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitkZXNjcmlwdGlvbjogPgor
ICBUaHJvd3MgYSBUeXBlRXJyb3IgZXhjZXB0aW9uIHdoZW4gYHRoaXNgIGRvZXMgbm90IGhhdmUg
YSBbW0FycmF5QnVmZmVyRGF0YV1dCisgIGludGVybmFsIHNsb3QKK2luZm86IHwKKyAgZ2V0IEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5tYXhCeXRlTGVuZ3RoCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRo
aXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlC
dWZmZXJEYXRhXV0pLgorICBbLi4uXQorZmVhdHVyZXM6IFtEYXRhVmlldywgSW50OEFycmF5LCBy
ZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcigKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLCAibWF4Qnl0ZUxl
bmd0aCIKKykuZ2V0OworCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBnZXR0ZXIsICJmdW5jdGlv
biIpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5j
YWxsKHt9KTsKK30pOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7Cisg
IGdldHRlci5jYWxsKFtdKTsKK30pOworCit2YXIgdGEgPSBuZXcgSW50OEFycmF5KDgpOworYXNz
ZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCh0YSk7Cit9
KTsKKwordmFyIGR2ID0gbmV3IERhdGFWaWV3KG5ldyBBcnJheUJ1ZmZlcig4KSwgMCk7Cithc3Nl
cnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKGR2KTsKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3RoaXMtaXMtbm90LW9iamVjdC5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0
aC90aGlzLWlzLW5vdC1vYmplY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2FlMjAzMDIzOWJkNGNmMTFmMzBl
YWYxMzZlMDA1ZjRlMzcxZGZmYgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlz
LW5vdC1vYmplY3QuanMKQEAgLTAsMCArMSw0OCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRo
ZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUg
aXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUu
CisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0
aAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBleGNlcHRpb24gd2hlbiBgdGhpc2Ag
aXMgbm90IE9iamVjdAoraW5mbzogfAorICBnZXQgQXJyYXlCdWZmZXIucHJvdG90eXBlLm1heEJ5
dGVMZW5ndGgKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/
IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIFsuLi5dCitm
ZWF0dXJlczogW1N5bWJvbCwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwordmFyIGdl
dHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoCisgIEFycmF5QnVmZmVyLnBy
b3RvdHlwZSwgIm1heEJ5dGVMZW5ndGgiCispLmdldDsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBl
b2YgZ2V0dGVyLCAiZnVuY3Rpb24iKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0
aW9uKCkgeworICBnZXR0ZXIuY2FsbCh1bmRlZmluZWQpOworfSwgInRoaXMgaXMgdW5kZWZpbmVk
Iik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNh
bGwobnVsbCk7Cit9LCAidGhpcyBpcyBudWxsIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwoNDIpOworfSwgInRoaXMgaXMgNDIiKTsKKwor
YXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCgiMSIp
OworfSwgInRoaXMgaXMgYSBzdHJpbmciKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1
bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCh0cnVlKTsKK30sICJ0aGlzIGlzIHRydWUiKTsKKwor
YXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbChmYWxz
ZSk7Cit9LCAidGhpcyBpcyBmYWxzZSIpOworCit2YXIgcyA9IFN5bWJvbCgicyIpOworYXNzZXJ0
LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbChzKTsKK30sICJ0
aGlzIGlzIGEgU3ltYm9sIik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvdGhpcy1pcy1zaGFyZWRh
cnJheWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlzLXNoYXJlZGFycmF5YnVmZmVyLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjY4OWRiZjkyNjA0MmEwZTIxYmYzMmJjOGRkYWU2MzQyMjM1N2IxYTIKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIv
cHJvdG90eXBlL21heEJ5dGVMZW5ndGgvdGhpcy1pcy1zaGFyZWRhcnJheWJ1ZmZlci5qcwpAQCAt
MCwwICsxLDMzIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMt
Z2V0LWFycmF5YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitkZXNjcmlwdGlvbjogVGhy
b3dzIGEgVHlwZUVycm9yIGV4Y2VwdGlvbiB3aGVuIGB0aGlzYCBpcyBhIFNoYXJlZEFycmF5QnVm
ZmVyCitpbmZvOiB8CisgIGdldCBBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aAor
CisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUlu
dGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJh
eUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIFsuLi5d
CitmZWF0dXJlczogW1NoYXJlZEFycmF5QnVmZmVyLCByZXNpemFibGUtYXJyYXlidWZmZXJdCist
LS0qLworCit2YXIgbWF4Qnl0ZUxlbmd0aCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoCisgIEFycmF5QnVmZmVyLnByb3RvdHlwZSwgIm1heEJ5dGVMZW5ndGgiCispOworCit2YXIg
Z2V0dGVyID0gbWF4Qnl0ZUxlbmd0aC5nZXQ7Cit2YXIgc2FiID0gbmV3IFNoYXJlZEFycmF5QnVm
ZmVyKDQpOworCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBnZXR0ZXIsICJmdW5jdGlvbiIpOwor
Cithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKHNh
Yik7Cit9LCAiYHRoaXNgIGNhbm5vdCBiZSBhIFNoYXJlZEFycmF5QnVmZmVyIik7CisKK09iamVj
dC5kZWZpbmVQcm9wZXJ0aWVzKHNhYiwgeyBtYXhCeXRlTGVuZ3RoOiBtYXhCeXRlTGVuZ3RoIH0p
OworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhYi5tYXhCeXRl
TGVuZ3RoOworfSwgImB0aGlzYCBjYW5ub3QgYmUgYSBTaGFyZWRBcnJheUJ1ZmZlciIpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS9yZXNpemFibGUvZGV0YWNoZWQtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvZGV0YWNoZWQtYnVmZmVy
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjg1YjYxOGEzZDJjMmQ1NzIxY2Q2Y2Y5MDZjMTg1MjQ3NGEyZDg1NTIK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlC
dWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9kZXRhY2hlZC1idWZmZXIuanMKQEAgLTAsMCArMSwz
NCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNl
bnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJh
eWJ1ZmZlci5wcm90b3R5cGUucmVzaXphYmxlCitkZXNjcmlwdGlvbjogVW5hZmZlY3RlZCBieSBi
dWZmZXIncyBhdHRhY2hlZG5lc3MKK2luZm86IHwKKyAgZ2V0IEFycmF5QnVmZmVyLnByb3RvdHlw
ZS5yZXNpemFibGUKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9y
bSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIDMuIElm
IElzU2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0
aW9uLgorICA0LiBSZXR1cm4gSXNSZXNpemFibGVBcnJheUJ1ZmZlcihPKS4KKworICBJc1Jlc2l6
YWJsZUFycmF5QnVmZmVyICggYXJyYXlCdWZmZXIgKQorCisgIDEuIEFzc2VydDogVHlwZShhcnJh
eUJ1ZmZlcikgaXMgT2JqZWN0IGFuZCBhcnJheUJ1ZmZlciBoYXMgYW4KKyAgICAgW1tBcnJheUJ1
ZmZlckRhdGFdXSBpbnRlcm5hbCBzbG90LgorICAyLiBJZiBidWZmZXIgaGFzIGFuIFtbQXJyYXlC
dWZmZXJNYXhCeXRlTGVuZ3RoXV0gaW50ZXJuYWwgc2xvdCwgcmV0dXJuIHRydWUuCisgIDMuIFJl
dHVybiBmYWxzZS4KK2luY2x1ZGVzOiBbZGV0YWNoQXJyYXlCdWZmZXIuanNdCitmZWF0dXJlczog
W3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBhYjEgPSBuZXcgQXJyYXlCdWZm
ZXIoMSk7CisKKyRERVRBQ0hCVUZGRVIoYWIxKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShhYjEucmVz
aXphYmxlLCBmYWxzZSk7CisKK3ZhciBhYjIgPSBuZXcgQXJyYXlCdWZmZXIoMSwge21heEJ5dGVM
ZW5ndGg6IDF9KTsKKworJERFVEFDSEJVRkZFUihhYjIpOworCithc3NlcnQuc2FtZVZhbHVlKGFi
Mi5yZXNpemFibGUsIHRydWUpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvaW52b2tlZC1hcy1hY2Nlc3Nv
ci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5
cGUvcmVzaXphYmxlL2ludm9rZWQtYXMtYWNjZXNzb3IuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDU4ZjUyY2I1
ZWMxZDc1M2VkMzI4OTE3Nzg4ZjVhYWVjODMxNGE3ZAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxl
L2ludm9rZWQtYXMtYWNjZXNzb3IuanMKQEAgLTAsMCArMSwxNyBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVz
aXphYmxlCitkZXNjcmlwdGlvbjogUmVxdWlyZXMgdGhpcyB2YWx1ZSB0byBoYXZlIGEgW1tBcnJh
eUJ1ZmZlckRhdGFdXSBpbnRlcm5hbCBzbG90CitpbmZvOiB8CisgIGdldCBBcnJheUJ1ZmZlci5w
cm90b3R5cGUucmVzaXphYmxlCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIu
IFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgor
ICBbLi4uXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3Nl
cnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIEFycmF5QnVmZmVyLnByb3RvdHlw
ZS5yZXNpemFibGU7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL2ludm9rZWQtYXMtZnVuYy5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVz
aXphYmxlL2ludm9rZWQtYXMtZnVuYy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43MTA3Y2I0ZGUyYjM4NmJmYTkz
OGRhOWFlNGVlNjY1ODJhZWJkOGU2Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvaW52b2tlZC1h
cy1mdW5jLmpzCkBAIC0wLDAgKzEsMjMgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjgg
cHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2VzaWQ6IHNlYy1nZXQtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6YWJsZQorZGVzY3Jp
cHRpb246IFRocm93cyBhIFR5cGVFcnJvciBleGNlcHRpb24gd2hlbiBpbnZva2VkIGFzIGEgZnVu
Y3Rpb24KK2luZm86IHwKKyAgZ2V0IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemFibGUKKwor
ICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRl
cm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIFsuLi5dCitmZWF0dXJlczogW3Jl
c2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBnZXR0ZXIgPSBPYmplY3QuZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUsICdyZXNpemFibGUn
CispLmdldDsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgZ2V0dGVyLCAnZnVuY3Rpb24nKTsK
KworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIoKTsKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS9yZXNpemFibGUvbGVuZ3RoLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvbGVuZ3RoLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjE3OTJiYzNjZDU5NjcxZjFiNDlkZmQ5YzdlZDE4MDZjOTM4NzEwOGEKLS0tIC9kZXYvbnVs
bAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90
eXBlL3Jlc2l6YWJsZS9sZW5ndGguanMKQEAgLTAsMCArMSwzMiBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVz
aXphYmxlCitkZXNjcmlwdGlvbjogPgorICBnZXQgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6
YWJsZS5sZW5ndGggaXMgMC4KK2luZm86IHwKKyAgZ2V0IEFycmF5QnVmZmVyLnByb3RvdHlwZS5y
ZXNpemVhYmxlCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgor
ICAgIEV2ZXJ5IGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCwgaW5jbHVkaW5nIGNvbnN0cnVjdG9y
cywgaGFzIGEgbGVuZ3RoCisgICAgcHJvcGVydHkgd2hvc2UgdmFsdWUgaXMgYW4gaW50ZWdlci4g
VW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoaXMKKyAgICB2YWx1ZSBpcyBlcXVhbCB0byB0
aGUgbGFyZ2VzdCBudW1iZXIgb2YgbmFtZWQgYXJndW1lbnRzIHNob3duIGluIHRoZQorICAgIHN1
YmNsYXVzZSBoZWFkaW5ncyBmb3IgdGhlIGZ1bmN0aW9uIGRlc2NyaXB0aW9uLCBpbmNsdWRpbmcg
b3B0aW9uYWwKKyAgICBwYXJhbWV0ZXJzLiBIb3dldmVyLCByZXN0IHBhcmFtZXRlcnMgc2hvd24g
dXNpbmcgdGhlIGZvcm0g4oCcLi4ubmFtZeKAnQorICAgIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhl
IGRlZmF1bHQgYXJndW1lbnQgY291bnQuCisKKyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmll
ZCwgdGhlIGxlbmd0aCBwcm9wZXJ0eSBvZiBhIGJ1aWx0LWluIEZ1bmN0aW9uCisgICAgb2JqZWN0
IGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbV3JpdGFibGVdXTogZmFsc2UsIFtbRW51bWVyYWJsZV1d
OiBmYWxzZSwKKyAgICBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczogW3Byb3Bl
cnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLwor
Cit2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXlCdWZmZXIu
cHJvdG90eXBlLCAncmVzaXphYmxlJyk7CisKK3ZlcmlmeVByb3BlcnR5KGRlc2MuZ2V0LCAnbGVu
Z3RoJywgeworICB2YWx1ZTogMCwKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIHdyaXRhYmxlOiBm
YWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL25hbWUu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBl
L3Jlc2l6YWJsZS9uYW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0NmEyMjc2OGM3YTU0YWJjN2UwNTBjNDAz
N2Y5MGVlOWNkZWVjZjgKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9uYW1lLmpzCkBAIC0wLDAg
KzEsMjQgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1nZXQt
YXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6YWJsZQorZGVzY3JpcHRpb246ID4KKyAgZ2V0IEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemFibGUKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJk
IEJ1aWx0LWluIE9iamVjdHMKKworICBGdW5jdGlvbnMgdGhhdCBhcmUgc3BlY2lmaWVkIGFzIGdl
dCBvciBzZXQgYWNjZXNzb3IgZnVuY3Rpb25zIG9mIGJ1aWx0LWluCisgIHByb3BlcnRpZXMgaGF2
ZSAiZ2V0ICIgb3IgInNldCAiIHByZXBlbmRlZCB0byB0aGUgcHJvcGVydHkgbmFtZSBzdHJpbmcu
CisKK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW3Jlc2l6YWJsZS1h
cnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcihBcnJheUJ1ZmZlci5wcm90b3R5cGUsICdyZXNpemFibGUnKTsKKwordmVyaWZ5UHJv
cGVydHkoZGVzYy5nZXQsICduYW1lJywgeworICB2YWx1ZTogJ2dldCByZXNpemFibGUnLAorICBl
bnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRy
dWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvcHJvcC1kZXNjLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvcHJvcC1kZXNj
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjkwZDc3OTA1YzNjNTI5NDdmZDMxZGRkOTcyOWE0MGM5OGRmMGIzNjkK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlC
dWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9wcm9wLWRlc2MuanMKQEAgLTAsMCArMSwyNSBAQAor
Ly8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZv
dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZl
ci5wcm90b3R5cGUucmVzaXphYmxlCitkZXNjcmlwdGlvbjogPgorICAicmVzaXphYmxlIiBwcm9w
ZXJ0eSBvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUKK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJv
dG90eXBlLnJlc2l6YWJsZSBpcyBhbiBhY2Nlc3NvciBwcm9wZXJ0eSB3aG9zZSBzZXQgYWNjZXNz
b3IKKyAgZnVuY3Rpb24gaXMgdW5kZWZpbmVkLgorCisgIFNlY3Rpb24gMTc6IEV2ZXJ5IGFjY2Vz
c29yIHByb3BlcnR5IGRlc2NyaWJlZCBpbiBjbGF1c2VzIDE4IHRocm91Z2ggMjYgYW5kIGluCisg
IEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMge1tbRW51bWVyYWJsZV1dOiBmYWxzZSwgW1tD
b25maWd1cmFibGVdXTogdHJ1ZSB9CitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVh
dHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgZGVzYyA9IE9iamVj
dC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQXJyYXlCdWZmZXIucHJvdG90eXBlLCAncmVzaXph
YmxlJyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoZGVzYy5zZXQsIHVuZGVmaW5lZCk7Cithc3NlcnQu
c2FtZVZhbHVlKHR5cGVvZiBkZXNjLmdldCwgJ2Z1bmN0aW9uJyk7CisKK3ZlcmlmeVByb3BlcnR5
KEFycmF5QnVmZmVyLnByb3RvdHlwZSwgJ3Jlc2l6YWJsZScsIHsKKyAgZW51bWVyYWJsZTogZmFs
c2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS9yZXR1cm4t
cmVzaXphYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS9yZXNpemFibGUvcmV0dXJuLXJlc2l6YWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYWJj
NWIyYTc5N2U1MmM5MzdjMjdkOWJhMzYxNDMxMTc4YjBmMzNjCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNp
emFibGUvcmV0dXJuLXJlc2l6YWJsZS5qcwpAQCAtMCwwICsxLDI5IEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LWFycmF5YnVmZmVyLnByb3RvdHlwZS5y
ZXNpemFibGUKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gdmFsdWUgYWNjb3JkaW5nIHRvIFtbQXJyYXlC
dWZmZXJNYXhCeXRlTGVuZ3RoXV0gaW50ZXJuYWwgc2xvdAoraW5mbzogfAorICBnZXQgQXJyYXlC
dWZmZXIucHJvdG90eXBlLnJlc2l6YWJsZQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVl
LgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0
YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5
cGVFcnJvciBleGNlcHRpb24uCisgIDQuIFJldHVybiBJc1Jlc2l6YWJsZUFycmF5QnVmZmVyKE8p
LgorCisgIElzUmVzaXphYmxlQXJyYXlCdWZmZXIgKCBhcnJheUJ1ZmZlciApCisKKyAgMS4gQXNz
ZXJ0OiBUeXBlKGFycmF5QnVmZmVyKSBpcyBPYmplY3QgYW5kIGFycmF5QnVmZmVyIGhhcyBhbgor
ICAgICBbW0FycmF5QnVmZmVyRGF0YV1dIGludGVybmFsIHNsb3QuCisgIDIuIElmIGJ1ZmZlciBo
YXMgYW4gW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSBpbnRlcm5hbCBzbG90LCByZXR1cm4g
dHJ1ZS4KKyAgMy4gUmV0dXJuIGZhbHNlLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZm
ZXJdCistLS0qLworCit2YXIgYWIxID0gbmV3IEFycmF5QnVmZmVyKDEpOworCithc3NlcnQuc2Ft
ZVZhbHVlKGFiMS5yZXNpemFibGUsIGZhbHNlKTsKKwordmFyIGFiMiA9IG5ldyBBcnJheUJ1ZmZl
cigxLCB7bWF4Qnl0ZUxlbmd0aDogMX0pOworCithc3NlcnQuc2FtZVZhbHVlKGFiMi5yZXNpemFi
bGUsIHRydWUpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Fy
cmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvdGhpcy1oYXMtbm8tYXJyYXlidWZmZXJkYXRh
LWludGVybmFsLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVy
L3Byb3RvdHlwZS9yZXNpemFibGUvdGhpcy1oYXMtbm8tYXJyYXlidWZmZXJkYXRhLWludGVybmFs
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmMzODg5MzVmYmQ3ODJlMDk1YjAxMjYxYmIxNTdhYzdkNDQ0NDYwZTAK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlC
dWZmZXIvcHJvdG90eXBlL3Jlc2l6YWJsZS90aGlzLWhhcy1uby1hcnJheWJ1ZmZlcmRhdGEtaW50
ZXJuYWwuanMKQEAgLTAsMCArMSwzOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVzaXphYmxlCitkZXNjcmlw
dGlvbjogPgorICBUaHJvd3MgYSBUeXBlRXJyb3IgZXhjZXB0aW9uIHdoZW4gYHRoaXNgIGRvZXMg
bm90IGhhdmUgYSBbW0FycmF5QnVmZmVyRGF0YV1dCisgIGludGVybmFsIHNsb3QKK2luZm86IHwK
KyAgZ2V0IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemFibGUKKworICAxLiBMZXQgTyBiZSB0
aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tB
cnJheUJ1ZmZlckRhdGFdXSkuCisgIFsuLi5dCitmZWF0dXJlczogW0RhdGFWaWV3LCBJbnQ4QXJy
YXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBnZXR0ZXIgPSBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUsICJyZXNp
emFibGUiCispLmdldDsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgZ2V0dGVyLCAiZnVuY3Rp
b24iKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIu
Y2FsbCh7fSk7Cit9KTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgewor
ICBnZXR0ZXIuY2FsbChbXSk7Cit9KTsKKwordmFyIHRhID0gbmV3IEludDhBcnJheSg4KTsKK2Fz
c2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwodGEpOwor
fSk7CisKK3ZhciBkdiA9IG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCksIDApOworYXNz
ZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbChkdik7Cit9
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMtaXMtbm90LW9iamVjdC5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMt
aXMtbm90LW9iamVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZDg3ZGRlN2VhOTI5OTljODk0M2E3MTJlMzAz
MDRjYzFiODc0NDE4Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemFibGUvdGhpcy1pcy1ub3Qtb2JqZWN0
LmpzCkBAIC0wLDAgKzEsNDggQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVj
dCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Vz
aWQ6IHNlYy1nZXQtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6YWJsZQorZGVzY3JpcHRpb246
IFRocm93cyBhIFR5cGVFcnJvciBleGNlcHRpb24gd2hlbiBgdGhpc2AgaXMgbm90IE9iamVjdAor
aW5mbzogfAorICBnZXQgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6YWJsZQorCisgIDEuIExl
dCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xv
dChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbU3ltYm9sLCBy
ZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcigKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLCAicmVzaXphYmxl
IgorKS5nZXQ7CisKK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIGdldHRlciwgImZ1bmN0aW9uIik7
CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwo
dW5kZWZpbmVkKTsKK30sICJ0aGlzIGlzIHVuZGVmaW5lZCIpOworCithc3NlcnQudGhyb3dzKFR5
cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKG51bGwpOworfSwgInRoaXMgaXMg
bnVsbCIpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRl
ci5jYWxsKDQyKTsKK30sICJ0aGlzIGlzIDQyIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwoIjEiKTsKK30sICJ0aGlzIGlzIGEgc3RyaW5n
Iik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNh
bGwodHJ1ZSk7Cit9LCAidGhpcyBpcyB0cnVlIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwoZmFsc2UpOworfSwgInRoaXMgaXMgZmFsc2Ui
KTsKKwordmFyIHMgPSBTeW1ib2woInMiKTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5j
dGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwocyk7Cit9LCAidGhpcyBpcyBhIFN5bWJvbCIpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS9yZXNpemFibGUvdGhpcy1pcy1zaGFyZWRhcnJheWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMt
aXMtc2hhcmVkYXJyYXlidWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDQ5Y2RjMTI5ZmYyZDRiNGUyMTI4
M2E2YzdlNmQ5NjA2MjM4Yzg5OAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXphYmxlL3RoaXMtaXMtc2hh
cmVkYXJyYXlidWZmZXIuanMKQEAgLTAsMCArMSwzMyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIx
IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVzaXphYmxl
CitkZXNjcmlwdGlvbjogVGhyb3dzIGEgVHlwZUVycm9yIGV4Y2VwdGlvbiB3aGVuIGB0aGlzYCBp
cyBhIFNoYXJlZEFycmF5QnVmZmVyCitpbmZvOiB8CisgIGdldCBBcnJheUJ1ZmZlci5wcm90b3R5
cGUucmVzaXphYmxlCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZv
cm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgorICAzLiBJ
ZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2Vw
dGlvbi4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbU2hhcmVkQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1h
cnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciByZXNpemFibGUgPSBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUsICJyZXNpemFibGUiCispOwor
Cit2YXIgZ2V0dGVyID0gcmVzaXphYmxlLmdldDsKK3ZhciBzYWIgPSBuZXcgU2hhcmVkQXJyYXlC
dWZmZXIoNCk7CisKK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIGdldHRlciwgImZ1bmN0aW9uIik7
CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwo
c2FiKTsKK30sICJgdGhpc2AgY2Fubm90IGJlIGEgU2hhcmVkQXJyYXlCdWZmZXIiKTsKKworT2Jq
ZWN0LmRlZmluZVByb3BlcnRpZXMoc2FiLCB7IHJlc2l6YWJsZTogcmVzaXphYmxlIH0pOworCith
c3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhYi5yZXNpemFibGU7Cit9
LCAiYHRoaXNgIGNhbm5vdCBiZSBhIFNoYXJlZEFycmF5QnVmZmVyIik7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6
ZS9kZXNjcmlwdG9yLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvdHlwZS9yZXNpemUvZGVzY3JpcHRvci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45NTczNTljZWM2
MjlmNzIxNzg4NTM5ZjI3MTA4NDUyYzIyMDRiNmMxCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvZGVz
Y3JpcHRvci5qcwpAQCAtMCwwICsxLDIyIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4
IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitlc2lkOiBzZWMtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246
ID4KKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSBoYXMgZGVmYXVsdCBkYXRhIHByb3Bl
cnR5IGF0dHJpYnV0ZXMuCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUg
KCBuZXdMZW5ndGggKQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0
czoKKyAgICBFdmVyeSBvdGhlciBkYXRhIHByb3BlcnR5IGRlc2NyaWJlZCBpbiBjbGF1c2VzIDE4
IHRocm91Z2ggMjYgYW5kIGluCisgICAgQW5uZXggQi4yIGhhcyB0aGUgYXR0cmlidXRlcyB7IFtb
V3JpdGFibGVdXTogdHJ1ZSwgW1tFbnVtZXJhYmxlXV06IGZhbHNlLAorICAgIFtbQ29uZmlndXJh
YmxlXV06IHRydWUgfSB1bmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZC4KK2luY2x1ZGVzOiBbcHJv
cGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSov
CisKK3ZlcmlmeVByb3BlcnR5KEFycmF5QnVmZmVyLnByb3RvdHlwZSwgJ3Jlc2l6ZScsIHsKKyAg
ZW51bWVyYWJsZTogZmFsc2UsCisgIHdyaXRhYmxlOiB0cnVlLAorICBjb25maWd1cmFibGU6IHRy
dWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5
QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvZXh0ZW5zaWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL2V4dGVuc2libGUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTRjNjI3YzEzOGVjYjcwMTMxMDQzOWIyODc5MGU3YjAxMjkzMmIwNAotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvcmVzaXplL2V4dGVuc2libGUuanMKQEAgLTAsMCArMSwxNSBAQAorLy8gQ29w
eXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlw
ZS5yZXNpemUKK2Rlc2NyaXB0aW9uOiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplIGlzIGV4
dGVuc2libGUuCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgKCBuZXdM
ZW5ndGggKQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0czoKKyAg
ICBVbmxlc3Mgc3BlY2lmaWVkIG90aGVyd2lzZSwgdGhlIFtbRXh0ZW5zaWJsZV1dIGludGVybmFs
IHNsb3QKKyAgICBvZiBhIGJ1aWx0LWluIG9iamVjdCBpbml0aWFsbHkgaGFzIHRoZSB2YWx1ZSB0
cnVlLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQo
T2JqZWN0LmlzRXh0ZW5zaWJsZShBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplKSk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90
eXBlL3Jlc2l6ZS9sZW5ndGguanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJy
YXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9sZW5ndGguanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDMwNTU2NTAz
NDNjNzZhMWM5MjUwN2VjZWVjZDZhOWJhNjg2ZjZkYwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL2xl
bmd0aC5qcwpAQCAtMCwwICsxLDMwIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHBy
b2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zl
cm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0t
Citlc2lkOiBzZWMtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246ID4K
KyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZS5sZW5ndGggaXMgMS4KK2luZm86IHwKKyAg
QXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSAoIG5ld0xlbmd0aCApCisKKyAgMTcgRUNNQVNj
cmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgorICAgIEV2ZXJ5IGJ1aWx0LWluIEZ1bmN0
aW9uIG9iamVjdCwgaW5jbHVkaW5nIGNvbnN0cnVjdG9ycywgaGFzIGEgbGVuZ3RoCisgICAgcHJv
cGVydHkgd2hvc2UgdmFsdWUgaXMgYW4gaW50ZWdlci4gVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZp
ZWQsIHRoaXMKKyAgICB2YWx1ZSBpcyBlcXVhbCB0byB0aGUgbGFyZ2VzdCBudW1iZXIgb2YgbmFt
ZWQgYXJndW1lbnRzIHNob3duIGluIHRoZQorICAgIHN1YmNsYXVzZSBoZWFkaW5ncyBmb3IgdGhl
IGZ1bmN0aW9uIGRlc2NyaXB0aW9uLCBpbmNsdWRpbmcgb3B0aW9uYWwKKyAgICBwYXJhbWV0ZXJz
LiBIb3dldmVyLCByZXN0IHBhcmFtZXRlcnMgc2hvd24gdXNpbmcgdGhlIGZvcm0g4oCcLi4ubmFt
ZeKAnQorICAgIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIGRlZmF1bHQgYXJndW1lbnQgY291bnQu
CisKKyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhlIGxlbmd0aCBwcm9wZXJ0eSBv
ZiBhIGJ1aWx0LWluIEZ1bmN0aW9uCisgICAgb2JqZWN0IGhhcyB0aGUgYXR0cmlidXRlcyB7IFtb
V3JpdGFibGVdXTogZmFsc2UsIFtbRW51bWVyYWJsZV1dOiBmYWxzZSwKKyAgICBbW0NvbmZpZ3Vy
YWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6
IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2ZXJpZnlQcm9wZXJ0eShBcnJheUJ1
ZmZlci5wcm90b3R5cGUucmVzaXplLCAnbGVuZ3RoJywgeworICB2YWx1ZTogMSwKKyAgZW51bWVy
YWJsZTogZmFsc2UsCisgIHdyaXRhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvcmVzaXplL25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9uYW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxODI0
MmNmNTM1MjY0Yzg0ODdkZjUzNDdhMDU1MTU0MTlmZWYxZWMKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6
ZS9uYW1lLmpzCkBAIC0wLDAgKzEsMjcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjgg
cHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVzaXplCitkZXNjcmlwdGlvbjog
PgorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLm5hbWUgaXMgInJlc2l6ZSIuCitpbmZv
OiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgKCBuZXdMZW5ndGggKQorCisgIDE3
IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0czoKKyAgICBFdmVyeSBidWlsdC1p
biBGdW5jdGlvbiBvYmplY3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIHRoYXQgaXMgbm90Cisg
ICAgaWRlbnRpZmllZCBhcyBhbiBhbm9ueW1vdXMgZnVuY3Rpb24gaGFzIGEgbmFtZSBwcm9wZXJ0
eSB3aG9zZSB2YWx1ZQorICAgIGlzIGEgU3RyaW5nLgorCisgICAgVW5sZXNzIG90aGVyd2lzZSBz
cGVjaWZpZWQsIHRoZSBuYW1lIHByb3BlcnR5IG9mIGEgYnVpbHQtaW4gRnVuY3Rpb24KKyAgICBv
YmplY3QsIGlmIGl0IGV4aXN0cywgaGFzIHRoZSBhdHRyaWJ1dGVzIHsgW1tXcml0YWJsZV1dOiBm
YWxzZSwKKyAgICBbW0VudW1lcmFibGVdXTogZmFsc2UsIFtbQ29uZmlndXJhYmxlXV06IHRydWUg
fS4KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQoraW5jbHVkZXM6IFtwcm9wZXJ0
eUhlbHBlci5qc10KKy0tLSovCisKK3ZlcmlmeVByb3BlcnR5KEFycmF5QnVmZmVyLnByb3RvdHlw
ZS5yZXNpemUsICduYW1lJywgeworICB2YWx1ZTogJ3Jlc2l6ZScsCisgIGVudW1lcmFibGU6IGZh
bHNlLAorICB3cnRpYWJsZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90
eXBlL3Jlc2l6ZS9uZXctbGVuZ3RoLWV4Y2Vzc2l2ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL25ldy1sZW5ndGgtZXhjZXNz
aXZlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjQ4ZDQ2NDBhMmExMjI3NzBhNWQ3ZTEyMzY2ZGQ5MDMzM2U5OWE0
OWEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJy
YXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9uZXctbGVuZ3RoLWV4Y2Vzc2l2ZS5qcwpAQCAtMCww
ICsxLDI1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNE
IGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJy
YXlidWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIGEgUmFu
Z2VFcnJvciB0aGUgbmV3TGVuZ3RoIHZhbHVlIGlzIGxhcmdlciB0aGFuIHRoZSBtYXggYnl0ZSBs
ZW5ndGgKK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSAoIG5ld0xlbmd0
aCApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1
aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0pLgorICAzLiBJ
ZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2Vw
dGlvbi4KKyAgNC4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVF
cnJvciBleGNlcHRpb24uCisgIDUuIExldCBuZXdCeXRlTGVuZ3RoIGJlID8gVG9JbnRlZ2VyT3JJ
bmZpbml0eShuZXdMZW5ndGgpLgorICA2LiBJZiBuZXdCeXRlTGVuZ3RoIDwgMCBvciBuZXdCeXRl
TGVuZ3RoID4gTy5bW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dLAorICAgICB0aHJvdyBhIFJh
bmdlRXJyb3IgZXhjZXB0aW9uLgorICBbLi4uXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXli
dWZmZXJdCistLS0qLworCit2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoNCwge21heEJ5dGVMZW5n
dGg6IDR9KTsKKworYXNzZXJ0LnRocm93cyhSYW5nZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIu
cmVzaXplKDUpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9uZXctbGVuZ3RoLW5lZ2F0aXZlLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNp
emUvbmV3LWxlbmd0aC1uZWdhdGl2ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZGJmY2M2MzU0ZGNmOWY4MTY3
Zjk4ZGI5ZjA2Y2U5YzIzMTVkYjZmCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvbmV3LWxlbmd0aC1u
ZWdhdGl2ZS5qcwpAQCAtMCwwICsxLDI1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4
IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitlc2lkOiBzZWMtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246
ID4KKyAgVGhyb3dzIGEgUmFuZ2VFcnJvciB0aGUgbmV3TGVuZ3RoIHZhbHVlIGlzIGxlc3MgdGhh
biB6ZXJvCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgKCBuZXdMZW5n
dGggKQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVx
dWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAgMy4g
SWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNl
cHRpb24uCisgIDQuIElmIElzRGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBl
RXJyb3IgZXhjZXB0aW9uLgorICA1LiBMZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdlck9y
SW5maW5pdHkobmV3TGVuZ3RoKS4KKyAgNi4gSWYgbmV3Qnl0ZUxlbmd0aCA8IDAgb3IgbmV3Qnl0
ZUxlbmd0aCA+IE8uW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSwKKyAgICAgdGhyb3cgYSBS
YW5nZUVycm9yIGV4Y2VwdGlvbi4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5
YnVmZmVyXQorLS0tKi8KKwordmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDQsIHttYXhCeXRlTGVu
Z3RoOiA0fSk7CisKK2Fzc2VydC50aHJvd3MoUmFuZ2VFcnJvciwgZnVuY3Rpb24oKSB7CisgIGFi
LnJlc2l6ZSgtMSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL25ldy1sZW5ndGgtbm9uLW51bWJlci5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUv
cmVzaXplL25ldy1sZW5ndGgtbm9uLW51bWJlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMjBlYzk4N2NhNTFj
ZGRjYzRhM2I2OGM1MDdkZWVkYWUwNDY3NjU2Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvbmV3LWxl
bmd0aC1ub24tbnVtYmVyLmpzCkBAIC0wLDAgKzEsMzcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAy
MSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBj
b2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVzaXplCitkZXNj
cmlwdGlvbjogVGhyb3dzIGEgVHlwZUVycm9yIGlmIHByb3ZpZGVkIGxlbmd0aCBjYW5ub3QgYmUg
Y29lcmNlZCB0byBhIG51bWJlcgoraW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVz
aXplICggbmV3TGVuZ3RoICkKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4g
UGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5n
dGhdXSkuCisgIDMuIElmIElzU2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBU
eXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBJZiBJc0RldGFjaGVkQnVmZmVyKE8pIGlzIHRydWUs
IHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4gTGV0IG5ld0J5dGVMZW5ndGggYmUg
PyBUb0ludGVnZXJPckluZmluaXR5KG5ld0xlbmd0aCkuCisgIFsuLi5dCitmZWF0dXJlczogW3Jl
c2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBsb2cgPSBbXTsKK3ZhciBuZXdMZW5n
dGggPSB7CisgIHRvU3RyaW5nOiBmdW5jdGlvbigpIHsKKyAgICBsb2cucHVzaCgndG9TdHJpbmcn
KTsKKyAgICByZXR1cm4ge307CisgIH0sCisgIHZhbHVlT2Y6IGZ1bmN0aW9uKCkgeworICAgIGxv
Zy5wdXNoKCd2YWx1ZU9mJyk7CisgICAgcmV0dXJuIHt9OworICB9Cit9OwordmFyIGFiID0gbmV3
IEFycmF5QnVmZmVyKDAsIHttYXhCeXRlTGVuZ3RoOiA0fSk7CisKK2Fzc2VydC50aHJvd3MoVHlw
ZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIucmVzaXplKG5ld0xlbmd0aCk7Cit9KTsKKworYXNz
ZXJ0LnNhbWVWYWx1ZShsb2cubGVuZ3RoLCAyKTsKK2Fzc2VydC5zYW1lVmFsdWUobG9nWzBdLCAn
dmFsdWVPZicpOworYXNzZXJ0LnNhbWVWYWx1ZShsb2dbMV0sICd0b1N0cmluZycpOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlw
ZS9yZXNpemUvbm9uY29uc3RydWN0b3IuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9ub25jb25zdHJ1Y3Rvci5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lN2Q0MWNhZWY2MGI3YjMxNGRlNGM1YTYxNzMzNzJhOTMxYTdmNTcwCi0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS9yZXNpemUvbm9uY29uc3RydWN0b3IuanMKQEAgLTAsMCArMSwyNSBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS5y
ZXNpemUKK2Rlc2NyaXB0aW9uOiA+CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgaXMg
bm90IGEgY29uc3RydWN0b3IgZnVuY3Rpb24uCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3Rv
dHlwZS5yZXNpemUgKCBuZXdMZW5ndGggKQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVp
bHQtaW4gT2JqZWN0czoKKyAgICBCdWlsdC1pbiBmdW5jdGlvbiBvYmplY3RzIHRoYXQgYXJlIG5v
dCBpZGVudGlmaWVkIGFzIGNvbnN0cnVjdG9ycyBkbyBub3QKKyAgICBpbXBsZW1lbnQgdGhlIFtb
Q29uc3RydWN0XV0gaW50ZXJuYWwgbWV0aG9kIHVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkCisg
ICAgaW4gdGhlIGRlc2NyaXB0aW9uIG9mIGEgcGFydGljdWxhciBmdW5jdGlvbi4KK2ZlYXR1cmVz
OiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAg
T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEFycmF5QnVmZmVyLnByb3RvdHlw
ZS5yZXNpemUsICdwcm90b3R5cGUnKSwKKyAgZmFsc2UKKyk7CisKK3ZhciBhcnJheUJ1ZmZlciA9
IG5ldyBBcnJheUJ1ZmZlcig4KTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigp
IHsKKyAgbmV3IGFycmF5QnVmZmVyLnJlc2l6ZSgpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNp
emUtZ3Jvdy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1ncm93LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA2YTFlZTdiMjQ4NDJm
YTIyNmNjMTA1MTg3MzA0NzU0YTIzMTk2ZWEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUt
Z3Jvdy5qcwpAQCAtMCwwICsxLDc3IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHBy
b2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zl
cm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0t
Citlc2lkOiBzZWMtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246IEJl
aGF2aW9yIHdoZW4gYXR0ZW1wdGluZyB0byBncm93IGEgcmVzaXphYmxlIGFycmF5IGJ1ZmZlcgor
aW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplICggbmV3TGVuZ3RoICkKKwor
ICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRl
cm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIDMuIElmIElzU2hh
cmVkQXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgor
ICA0LiBJZiBJc0RldGFjaGVkQnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4
Y2VwdGlvbi4KKyAgNS4gTGV0IG5ld0J5dGVMZW5ndGggYmUgPyBUb0ludGVnZXJPckluZmluaXR5
KG5ld0xlbmd0aCkuCisgIDYuIElmIG5ld0J5dGVMZW5ndGggPCAwIG9yIG5ld0J5dGVMZW5ndGgg
PiBPLltbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0sCisgICAgIHRocm93IGEgUmFuZ2VFcnJv
ciBleGNlcHRpb24uCisgIDcuIExldCBob3N0SGFuZGxlZCBiZSA/IEhvc3RSZXNpemVBcnJheUJ1
ZmZlcihPLCBuZXdCeXRlTGVuZ3RoKS4KKyAgWy4uLl0KKworICBIb3N0UmVzaXplQXJyYXlCdWZm
ZXIgKCBidWZmZXIsIG5ld0J5dGVMZW5ndGggKQorCisgIFRoZSBpbXBsZW1lbnRhdGlvbiBvZiBI
b3N0UmVzaXplQXJyYXlCdWZmZXIgbXVzdCBjb25mb3JtIHRvIHRoZSBmb2xsb3dpbmcKKyAgcmVx
dWlyZW1lbnRzOgorCisgIC0gVGhlIGFic3RyYWN0IG9wZXJhdGlvbiBkb2VzIG5vdCBkZXRhY2gg
YnVmZmVyLgorICAtIFRoZSBhYnN0cmFjdCBvcGVyYXRpb24gbWF5IGNvbXBsZXRlIG5vcm1hbGx5
IG9yIGFicnVwdGx5LgorICAtIElmIHRoZSBhYnN0cmFjdCBvcGVyYXRpb24gY29tcGxldGVzIG5v
cm1hbGx5IHdpdGggaGFuZGxlZCwKKyAgICBidWZmZXIuW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhd
XSBpcyBuZXdCeXRlTGVuZ3RoLgorICAtIFRoZSByZXR1cm4gdmFsdWUgaXMgZWl0aGVyIGhhbmRs
ZWQgb3IgdW5oYW5kbGVkLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0q
LworCit2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoNCwge21heEJ5dGVMZW5ndGg6IDV9KTsKK3Zh
ciBjYXVnaHQgPSBmYWxzZTsKK3ZhciByZXN1bHQ7CisKKy8vIElmIHRoZSBob3N0IGNob29zZXMg
dG8gdGhyb3cgYXMgYWxsb3dlZCBieSB0aGUgc3BlY2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisv
LyBiZWhhdmlvciB3aWxsIGJlIGlkZW50aWNhbCB0byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZm
ZXIucHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZv
bGxvd2luZyBhc3NlcnRpb24gcHJldmVudHMgdGhpcyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4g
cnVudGltZXMgd2hpY2ggaGF2ZSBub3QgaW1wbGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5z
YW1lVmFsdWUodHlwZW9mIGFiLnJlc2l6ZSwgJ2Z1bmN0aW9uJyk7CisKK3RyeSB7CisgIHJlc3Vs
dCA9IGFiLnJlc2l6ZSg1KTsKK30gY2F0Y2ggKF8pIHsKKyAgY2F1Z2h0ID0gdHJ1ZTsKK30KKwor
dHJ5IHsKKyAgYWIuc2xpY2UoKTsKK30gY2F0Y2ggKF8pIHsKKyAgdGhyb3cgbmV3IFRlc3QyNjJF
cnJvcignVGhlIEFycmF5QnVmZmVyIHVuZGVyIHRlc3Qgd2FzIGRldGFjaGVkJyk7Cit9CisKKy8v
IE9uZSBvZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlvbnMgbXVzdCBiZSBtZXQ6CisvLwor
Ly8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgcmV0dXJucyBhbiBhYnJ1cHQgY29tcGxldGlvbgor
Ly8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgaGFuZGxlcyB0aGUgcmVzaXplIG9wZXJhdGlvbiBh
bmQgY29uZm9ybXMgdG8gdGhlCisvLyAgIGludmFyaWVudCByZWdhcmRpbmcgW1tBcnJheUJ1ZmZl
ckJ5dGVMZW5ndGhdXQorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgZG9lcyBub3QgaGFuZGxl
IHRoZSByZXNpemUgb3BlcmF0aW9uLCBhbmQgdGhlCisvLyAgIGByZXNpemVgIG1ldGhvZCB1cGRh
dGVzIFtbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0KKy8vCisvLyBUaGUgZmluYWwgdHdvIGNvbmRp
dGlvbnMgYXJlIGluZGlzdGluZ3Vpc2hhYmxlLgorYXNzZXJ0KGNhdWdodCB8fCBhYi5ieXRlTGVu
Z3RoID09PSA1LCAnYnl0ZUxlbmd0aCcpOworCisvLyBPbmUgb2YgdGhlIGZvbGxvd2luZyB0aHJl
ZSBjb25kaXRpb25zIG11c3QgYmUgbWV0OgorLy8KKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVy
IHJldHVybnMgYW4gYWJydXB0IGNvbXBsZXRpb24KKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVy
IGhhbmRsZXMgdGhlIHJlc2l6ZSBvcGVyYXRpb24sIGFuZCB0aGUgYHJlc2l6ZWAKKy8vICAgbWV0
aG9kIHJldHVybnMgZWFybHkKKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIGRvZXMgbm90IGhh
bmRsZSB0aGUgcmVzaXplIG9wZXJhdGlvbiwgYW5kIHRoZQorLy8gICBgcmVzaXplYCBtZXRob2Qg
ZXhlY3V0ZXMgaXRzIGZpbmFsIHN0ZXBzCisvLworLy8gQWxsIHRocmVlIGNvbmRpdGlvbnMgaGF2
ZSB0aGUgc2FtZSBlZmZlY3Qgb24gdGhlIHZhbHVlIG9mIGByZXN1bHRgLgorYXNzZXJ0LnNhbWVW
YWx1ZShyZXN1bHQsIHVuZGVmaW5lZCwgJ25vcm1hbCBjb21wbGV0aW9uIHZhbHVlJyk7CisKKy8v
IFRoZSBjb250ZW50cyBvZiB0aGUgQXJyYXlCdWZmZXIgYXJlIG5vdCBndWFyYW50ZWVkIGJ5IHRo
ZSBob3N0LWRlZmluZWQKKy8vIGFic3RyYWN0IG9wZXJhdGlvbiwgc28gdGhleSBhcmUgbm90IGFz
c2VydGVkIGluIHRoaXMgdGVzdC4KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUtemVy
by1leHBsaWNpdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUtemVyby1leHBsaWNpdC5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5mYzNkNzA3ZTlmN2U2MDI5MzQ3ZTliZDI4YmJkZTkwYTBiYWU0MTZkCi0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3By
b3RvdHlwZS9yZXNpemUvcmVzaXplLXNhbWUtc2l6ZS16ZXJvLWV4cGxpY2l0LmpzCkBAIC0wLDAg
KzEsNzggQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJh
eWJ1ZmZlci5wcm90b3R5cGUucmVzaXplCitkZXNjcmlwdGlvbjogPgorICBCZWhhdmlvciB3aGVu
IGF0dGVtcHRpbmcgdG8gcmVzZXQgdGhlIHNpemUgb2YgYSByZXNpemFibGUgYXJyYXkgYnVmZmVy
IHRvIHplcm8gZXhwbGljaXRseQoraW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVz
aXplICggbmV3TGVuZ3RoICkKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4g
UGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5n
dGhdXSkuCisgIDMuIElmIElzU2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBU
eXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBJZiBJc0RldGFjaGVkQnVmZmVyKE8pIGlzIHRydWUs
IHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4gTGV0IG5ld0J5dGVMZW5ndGggYmUg
PyBUb0ludGVnZXJPckluZmluaXR5KG5ld0xlbmd0aCkuCisgIDYuIElmIG5ld0J5dGVMZW5ndGgg
PCAwIG9yIG5ld0J5dGVMZW5ndGggPiBPLltbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0sCisg
ICAgIHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCisgIDcuIExldCBob3N0SGFuZGxlZCBi
ZSA/IEhvc3RSZXNpemVBcnJheUJ1ZmZlcihPLCBuZXdCeXRlTGVuZ3RoKS4KKyAgWy4uLl0KKwor
ICBIb3N0UmVzaXplQXJyYXlCdWZmZXIgKCBidWZmZXIsIG5ld0J5dGVMZW5ndGggKQorCisgIFRo
ZSBpbXBsZW1lbnRhdGlvbiBvZiBIb3N0UmVzaXplQXJyYXlCdWZmZXIgbXVzdCBjb25mb3JtIHRv
IHRoZSBmb2xsb3dpbmcKKyAgcmVxdWlyZW1lbnRzOgorCisgIC0gVGhlIGFic3RyYWN0IG9wZXJh
dGlvbiBkb2VzIG5vdCBkZXRhY2ggYnVmZmVyLgorICAtIFRoZSBhYnN0cmFjdCBvcGVyYXRpb24g
bWF5IGNvbXBsZXRlIG5vcm1hbGx5IG9yIGFicnVwdGx5LgorICAtIElmIHRoZSBhYnN0cmFjdCBv
cGVyYXRpb24gY29tcGxldGVzIG5vcm1hbGx5IHdpdGggaGFuZGxlZCwKKyAgICBidWZmZXIuW1tB
cnJheUJ1ZmZlckJ5dGVMZW5ndGhdXSBpcyBuZXdCeXRlTGVuZ3RoLgorICAtIFRoZSByZXR1cm4g
dmFsdWUgaXMgZWl0aGVyIGhhbmRsZWQgb3IgdW5oYW5kbGVkLgorZmVhdHVyZXM6IFtyZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoMCwge21h
eEJ5dGVMZW5ndGg6IDB9KTsKK3ZhciBjYXVnaHQgPSBmYWxzZTsKK3ZhciByZXN1bHQ7CisKKy8v
IElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxsb3dlZCBieSB0aGUgc3BlY2lmaWNh
dGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxsIGJlIGlkZW50aWNhbCB0byB0aGUg
Y2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhhcyBub3QgYmVl
biBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRpb24gcHJldmVudHMgdGhpcyB0ZXN0
IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2ggaGF2ZSBub3QgaW1wbGVtZW50ZWQg
dGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIGFiLnJlc2l6ZSwgJ2Z1bmN0aW9u
Jyk7CisKK3RyeSB7CisgIHJlc3VsdCA9IGFiLnJlc2l6ZSgwKTsKK30gY2F0Y2ggKF8pIHsKKyAg
Y2F1Z2h0ID0gdHJ1ZTsKK30KKwordHJ5IHsKKyAgYWIuc2xpY2UoKTsKK30gY2F0Y2ggKF8pIHsK
KyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcignVGhlIEFycmF5QnVmZmVyIHVuZGVyIHRlc3Qgd2Fz
IGRldGFjaGVkJyk7Cit9CisKKy8vIE9uZSBvZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlv
bnMgbXVzdCBiZSBtZXQ6CisvLworLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgcmV0dXJucyBh
biBhYnJ1cHQgY29tcGxldGlvbgorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgaGFuZGxlcyB0
aGUgcmVzaXplIG9wZXJhdGlvbiBhbmQgY29uZm9ybXMgdG8gdGhlCisvLyAgIGludmFyaWVudCBy
ZWdhcmRpbmcgW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXQorLy8gLSBIb3N0UmVzaXplQXJyYXlC
dWZmZXIgZG9lcyBub3QgaGFuZGxlIHRoZSByZXNpemUgb3BlcmF0aW9uLCBhbmQgdGhlCisvLyAg
IGByZXNpemVgIG1ldGhvZCB1cGRhdGVzIFtbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0KKy8vCisv
LyBUaGUgZmluYWwgdHdvIGNvbmRpdGlvbnMgYXJlIGluZGlzdGluZ3Vpc2hhYmxlLgorYXNzZXJ0
KGNhdWdodCB8fCBhYi5ieXRlTGVuZ3RoID09PSAwLCAnYnl0ZUxlbmd0aCcpOworCisvLyBPbmUg
b2YgdGhlIGZvbGxvd2luZyB0aHJlZSBjb25kaXRpb25zIG11c3QgYmUgbWV0OgorLy8KKy8vIC0g
SG9zdFJlc2l6ZUFycmF5QnVmZmVyIHJldHVybnMgYW4gYWJydXB0IGNvbXBsZXRpb24KKy8vIC0g
SG9zdFJlc2l6ZUFycmF5QnVmZmVyIGhhbmRsZXMgdGhlIHJlc2l6ZSBvcGVyYXRpb24sIGFuZCB0
aGUgYHJlc2l6ZWAKKy8vICAgbWV0aG9kIHJldHVybnMgZWFybHkKKy8vIC0gSG9zdFJlc2l6ZUFy
cmF5QnVmZmVyIGRvZXMgbm90IGhhbmRsZSB0aGUgcmVzaXplIG9wZXJhdGlvbiwgYW5kIHRoZQor
Ly8gICBgcmVzaXplYCBtZXRob2QgZXhlY3V0ZXMgaXRzIGZpbmFsIHN0ZXBzCisvLworLy8gQWxs
IHRocmVlIGNvbmRpdGlvbnMgaGF2ZSB0aGUgc2FtZSBlZmZlY3Qgb24gdGhlIHZhbHVlIG9mIGBy
ZXN1bHRgLgorYXNzZXJ0LnNhbWVWYWx1ZShyZXN1bHQsIHVuZGVmaW5lZCwgJ25vcm1hbCBjb21w
bGV0aW9uIHZhbHVlJyk7CisKKy8vIFRoZSBjb250ZW50cyBvZiB0aGUgQXJyYXlCdWZmZXIgYXJl
IG5vdCBndWFyYW50ZWVkIGJ5IHRoZSBob3N0LWRlZmluZWQKKy8vIGFic3RyYWN0IG9wZXJhdGlv
biwgc28gdGhleSBhcmUgbm90IGFzc2VydGVkIGluIHRoaXMgdGVzdC4KZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXpl
L3Jlc2l6ZS1zYW1lLXNpemUtemVyby1pbXBsaWNpdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUt
emVyby1pbXBsaWNpdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMmQxNjlmMDZiNWYyNmQ2ZWIxZDFlYzUyMmY3
ZDQ5MWQyYmQ5MWE0Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvcmVzaXplLXNhbWUtc2l6ZS16ZXJv
LWltcGxpY2l0LmpzCkBAIC0wLDAgKzEsNzggQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUg
VjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
LyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5cGUucmVzaXplCitkZXNjcmlwdGlv
bjogPgorICBCZWhhdmlvciB3aGVuIGF0dGVtcHRpbmcgdG8gcmVzZXQgdGhlIHNpemUgb2YgYSBy
ZXNpemFibGUgYXJyYXkgYnVmZmVyIHRvIHplcm8gZXhwbGljaXRseQoraW5mbzogfAorICBBcnJh
eUJ1ZmZlci5wcm90b3R5cGUucmVzaXplICggbmV3TGVuZ3RoICkKKworICAxLiBMZXQgTyBiZSB0
aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tB
cnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIDMuIElmIElzU2hhcmVkQXJyYXlCdWZmZXIo
TykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBJZiBJc0RldGFj
aGVkQnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4g
TGV0IG5ld0J5dGVMZW5ndGggYmUgPyBUb0ludGVnZXJPckluZmluaXR5KG5ld0xlbmd0aCkuCisg
IDYuIElmIG5ld0J5dGVMZW5ndGggPCAwIG9yIG5ld0J5dGVMZW5ndGggPiBPLltbQXJyYXlCdWZm
ZXJNYXhCeXRlTGVuZ3RoXV0sCisgICAgIHRocm93IGEgUmFuZ2VFcnJvciBleGNlcHRpb24uCisg
IDcuIExldCBob3N0SGFuZGxlZCBiZSA/IEhvc3RSZXNpemVBcnJheUJ1ZmZlcihPLCBuZXdCeXRl
TGVuZ3RoKS4KKyAgWy4uLl0KKworICBIb3N0UmVzaXplQXJyYXlCdWZmZXIgKCBidWZmZXIsIG5l
d0J5dGVMZW5ndGggKQorCisgIFRoZSBpbXBsZW1lbnRhdGlvbiBvZiBIb3N0UmVzaXplQXJyYXlC
dWZmZXIgbXVzdCBjb25mb3JtIHRvIHRoZSBmb2xsb3dpbmcKKyAgcmVxdWlyZW1lbnRzOgorCisg
IC0gVGhlIGFic3RyYWN0IG9wZXJhdGlvbiBkb2VzIG5vdCBkZXRhY2ggYnVmZmVyLgorICAtIFRo
ZSBhYnN0cmFjdCBvcGVyYXRpb24gbWF5IGNvbXBsZXRlIG5vcm1hbGx5IG9yIGFicnVwdGx5Lgor
ICAtIElmIHRoZSBhYnN0cmFjdCBvcGVyYXRpb24gY29tcGxldGVzIG5vcm1hbGx5IHdpdGggaGFu
ZGxlZCwKKyAgICBidWZmZXIuW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXSBpcyBuZXdCeXRlTGVu
Z3RoLgorICAtIFRoZSByZXR1cm4gdmFsdWUgaXMgZWl0aGVyIGhhbmRsZWQgb3IgdW5oYW5kbGVk
LgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgYWIgPSBu
ZXcgQXJyYXlCdWZmZXIoMCwge21heEJ5dGVMZW5ndGg6IDB9KTsKK3ZhciBjYXVnaHQgPSBmYWxz
ZTsKK3ZhciByZXN1bHQ7CisKKy8vIElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxs
b3dlZCBieSB0aGUgc3BlY2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxs
IGJlIGlkZW50aWNhbCB0byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJl
c2l6ZWAKKy8vIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRp
b24gcHJldmVudHMgdGhpcyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2gg
aGF2ZSBub3QgaW1wbGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9m
IGFiLnJlc2l6ZSwgJ2Z1bmN0aW9uJyk7CisKK3RyeSB7CisgIHJlc3VsdCA9IGFiLnJlc2l6ZSgp
OworfSBjYXRjaCAoXykgeworICBjYXVnaHQgPSB0cnVlOworfQorCit0cnkgeworICBhYi5zbGlj
ZSgpOworfSBjYXRjaCAoXykgeworICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdUaGUgQXJyYXlC
dWZmZXIgdW5kZXIgdGVzdCB3YXMgZGV0YWNoZWQnKTsKK30KKworLy8gT25lIG9mIHRoZSBmb2xs
b3dpbmcgdGhyZWUgY29uZGl0aW9ucyBtdXN0IGJlIG1ldDoKKy8vCisvLyAtIEhvc3RSZXNpemVB
cnJheUJ1ZmZlciByZXR1cm5zIGFuIGFicnVwdCBjb21wbGV0aW9uCisvLyAtIEhvc3RSZXNpemVB
cnJheUJ1ZmZlciBoYW5kbGVzIHRoZSByZXNpemUgb3BlcmF0aW9uIGFuZCBjb25mb3JtcyB0byB0
aGUKKy8vICAgaW52YXJpZW50IHJlZ2FyZGluZyBbW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dCisv
LyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZlciBkb2VzIG5vdCBoYW5kbGUgdGhlIHJlc2l6ZSBvcGVy
YXRpb24sIGFuZCB0aGUKKy8vICAgYHJlc2l6ZWAgbWV0aG9kIHVwZGF0ZXMgW1tBcnJheUJ1ZmZl
ckJ5dGVMZW5ndGhdXQorLy8KKy8vIFRoZSBmaW5hbCB0d28gY29uZGl0aW9ucyBhcmUgaW5kaXN0
aW5ndWlzaGFibGUuCithc3NlcnQoY2F1Z2h0IHx8IGFiLmJ5dGVMZW5ndGggPT09IDAsICdieXRl
TGVuZ3RoJyk7CisKKy8vIE9uZSBvZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlvbnMgbXVz
dCBiZSBtZXQ6CisvLworLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgcmV0dXJucyBhbiBhYnJ1
cHQgY29tcGxldGlvbgorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgaGFuZGxlcyB0aGUgcmVz
aXplIG9wZXJhdGlvbiwgYW5kIHRoZSBgcmVzaXplYAorLy8gICBtZXRob2QgcmV0dXJucyBlYXJs
eQorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgZG9lcyBub3QgaGFuZGxlIHRoZSByZXNpemUg
b3BlcmF0aW9uLCBhbmQgdGhlCisvLyAgIGByZXNpemVgIG1ldGhvZCBleGVjdXRlcyBpdHMgZmlu
YWwgc3RlcHMKKy8vCisvLyBBbGwgdGhyZWUgY29uZGl0aW9ucyBoYXZlIHRoZSBzYW1lIGVmZmVj
dCBvbiB0aGUgdmFsdWUgb2YgYHJlc3VsdGAuCithc3NlcnQuc2FtZVZhbHVlKHJlc3VsdCwgdW5k
ZWZpbmVkLCAnbm9ybWFsIGNvbXBsZXRpb24gdmFsdWUnKTsKKworLy8gVGhlIGNvbnRlbnRzIG9m
IHRoZSBBcnJheUJ1ZmZlciBhcmUgbm90IGd1YXJhbnRlZWQgYnkgdGhlIGhvc3QtZGVmaW5lZAor
Ly8gYWJzdHJhY3Qgb3BlcmF0aW9uLCBzbyB0aGV5IGFyZSBub3QgYXNzZXJ0ZWQgaW4gdGhpcyB0
ZXN0LgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvdHlwZS9yZXNpemUvcmVzaXplLXNhbWUtc2l6ZS5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1l
LXNpemUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYmNjYjJmOWI5MjA5NDNkZWMzNjU2YWI5NDI3YjA3M2Q2NmFh
YTgyYgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9B
cnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zYW1lLXNpemUuanMKQEAgLTAsMCAr
MSw3OCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBs
aWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5
YnVmZmVyLnByb3RvdHlwZS5yZXNpemUKK2Rlc2NyaXB0aW9uOiA+CisgIEJlaGF2aW9yIHdoZW4g
YXR0ZW1wdGluZyB0byByZXNldCB0aGUgc2l6ZSBvZiBhIHJlc2l6YWJsZSBhcnJheSBidWZmZXIK
K2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSAoIG5ld0xlbmd0aCApCisK
KyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50
ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0pLgorICAzLiBJZiBJc1No
YXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4K
KyAgNC4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBl
eGNlcHRpb24uCisgIDUuIExldCBuZXdCeXRlTGVuZ3RoIGJlID8gVG9JbnRlZ2VyT3JJbmZpbml0
eShuZXdMZW5ndGgpLgorICA2LiBJZiBuZXdCeXRlTGVuZ3RoIDwgMCBvciBuZXdCeXRlTGVuZ3Ro
ID4gTy5bW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dLAorICAgICB0aHJvdyBhIFJhbmdlRXJy
b3IgZXhjZXB0aW9uLgorICA3LiBMZXQgaG9zdEhhbmRsZWQgYmUgPyBIb3N0UmVzaXplQXJyYXlC
dWZmZXIoTywgbmV3Qnl0ZUxlbmd0aCkuCisgIFsuLi5dCisKKyAgSG9zdFJlc2l6ZUFycmF5QnVm
ZmVyICggYnVmZmVyLCBuZXdCeXRlTGVuZ3RoICkKKworICBUaGUgaW1wbGVtZW50YXRpb24gb2Yg
SG9zdFJlc2l6ZUFycmF5QnVmZmVyIG11c3QgY29uZm9ybSB0byB0aGUgZm9sbG93aW5nCisgIHJl
cXVpcmVtZW50czoKKworICAtIFRoZSBhYnN0cmFjdCBvcGVyYXRpb24gZG9lcyBub3QgZGV0YWNo
IGJ1ZmZlci4KKyAgLSBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIG1heSBjb21wbGV0ZSBub3JtYWxs
eSBvciBhYnJ1cHRseS4KKyAgLSBJZiB0aGUgYWJzdHJhY3Qgb3BlcmF0aW9uIGNvbXBsZXRlcyBu
b3JtYWxseSB3aXRoIGhhbmRsZWQsCisgICAgYnVmZmVyLltbQXJyYXlCdWZmZXJCeXRlTGVuZ3Ro
XV0gaXMgbmV3Qnl0ZUxlbmd0aC4KKyAgLSBUaGUgcmV0dXJuIHZhbHVlIGlzIGVpdGhlciBoYW5k
bGVkIG9yIHVuaGFuZGxlZC4KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0t
Ki8KKwordmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDQsIHttYXhCeXRlTGVuZ3RoOiA0fSk7Cit2
YXIgY2F1Z2h0ID0gZmFsc2U7Cit2YXIgcmVzdWx0OworCisvLyBJZiB0aGUgaG9zdCBjaG9vc2Vz
IHRvIHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBvYnNlcnZlZAor
Ly8gYmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUgYEFycmF5QnVm
ZmVyLnByb3RvdHlwZS5yZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuIFRoZSBm
b2xsb3dpbmcgYXNzZXJ0aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBwYXNzaW5nIGlu
IHJ1bnRpbWVzIHdoaWNoIGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2QuCithc3NlcnQu
c2FtZVZhbHVlKHR5cGVvZiBhYi5yZXNpemUsICdmdW5jdGlvbicpOworCit0cnkgeworICByZXN1
bHQgPSBhYi5yZXNpemUoNCk7Cit9IGNhdGNoIChfKSB7CisgIGNhdWdodCA9IHRydWU7Cit9CisK
K3RyeSB7CisgIGFiLnNsaWNlKCk7Cit9IGNhdGNoIChfKSB7CisgIHRocm93IG5ldyBUZXN0MjYy
RXJyb3IoJ1RoZSBBcnJheUJ1ZmZlciB1bmRlciB0ZXN0IHdhcyBkZXRhY2hlZCcpOworfQorCisv
LyBPbmUgb2YgdGhlIGZvbGxvd2luZyB0aHJlZSBjb25kaXRpb25zIG11c3QgYmUgbWV0OgorLy8K
Ky8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIHJldHVybnMgYW4gYWJydXB0IGNvbXBsZXRpb24K
Ky8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIGhhbmRsZXMgdGhlIHJlc2l6ZSBvcGVyYXRpb24g
YW5kIGNvbmZvcm1zIHRvIHRoZQorLy8gICBpbnZhcmllbnQgcmVnYXJkaW5nIFtbQXJyYXlCdWZm
ZXJCeXRlTGVuZ3RoXV0KKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIGRvZXMgbm90IGhhbmRs
ZSB0aGUgcmVzaXplIG9wZXJhdGlvbiwgYW5kIHRoZQorLy8gICBgcmVzaXplYCBtZXRob2QgdXBk
YXRlcyBbW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dCisvLworLy8gVGhlIGZpbmFsIHR3byBjb25k
aXRpb25zIGFyZSBpbmRpc3Rpbmd1aXNoYWJsZS4KK2Fzc2VydChjYXVnaHQgfHwgYWIuYnl0ZUxl
bmd0aCA9PT0gNCwgJ2J5dGVMZW5ndGgnKTsKKworLy8gT25lIG9mIHRoZSBmb2xsb3dpbmcgdGhy
ZWUgY29uZGl0aW9ucyBtdXN0IGJlIG1ldDoKKy8vCisvLyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZl
ciByZXR1cm5zIGFuIGFicnVwdCBjb21wbGV0aW9uCisvLyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZl
ciBoYW5kbGVzIHRoZSByZXNpemUgb3BlcmF0aW9uLCBhbmQgdGhlIGByZXNpemVgCisvLyAgIG1l
dGhvZCByZXR1cm5zIGVhcmx5CisvLyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZlciBkb2VzIG5vdCBo
YW5kbGUgdGhlIHJlc2l6ZSBvcGVyYXRpb24sIGFuZCB0aGUKKy8vICAgYHJlc2l6ZWAgbWV0aG9k
IGV4ZWN1dGVzIGl0cyBmaW5hbCBzdGVwcworLy8KKy8vIEFsbCB0aHJlZSBjb25kaXRpb25zIGhh
dmUgdGhlIHNhbWUgZWZmZWN0IG9uIHRoZSB2YWx1ZSBvZiBgcmVzdWx0YC4KK2Fzc2VydC5zYW1l
VmFsdWUocmVzdWx0LCB1bmRlZmluZWQsICdub3JtYWwgY29tcGxldGlvbiB2YWx1ZScpOworCisv
LyBUaGUgY29udGVudHMgb2YgdGhlIEFycmF5QnVmZmVyIGFyZSBub3QgZ3VhcmFudGVlZCBieSB0
aGUgaG9zdC1kZWZpbmVkCisvLyBhYnN0cmFjdCBvcGVyYXRpb24sIHNvIHRoZXkgYXJlIG5vdCBh
c3NlcnRlZCBpbiB0aGlzIHRlc3QuCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hyaW5rLXplcm8t
ZXhwbGljaXQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIv
cHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hyaW5rLXplcm8tZXhwbGljaXQuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNzQyNWI5YWMxYWVkMDdkYjA4M2QwNjliYmVhZDM3ZmRjYzQ3YjJmOAotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5
cGUvcmVzaXplL3Jlc2l6ZS1zaHJpbmstemVyby1leHBsaWNpdC5qcwpAQCAtMCwwICsxLDc3IEBA
CisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2Ug
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXlidWZmZXIu
cHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246IEJlaGF2aW9yIHdoZW4gYXR0ZW1wdGluZyB0
byBzaHJpbmsgYSByZXNpemFibGUgYXJyYXkgYnVmZmVyIHRvIHplcm8gZXhwbGljaXRseQoraW5m
bzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplICggbmV3TGVuZ3RoICkKKworICAx
LiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5h
bFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIDMuIElmIElzU2hhcmVk
QXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0
LiBJZiBJc0RldGFjaGVkQnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2Vw
dGlvbi4KKyAgNS4gTGV0IG5ld0J5dGVMZW5ndGggYmUgPyBUb0ludGVnZXJPckluZmluaXR5KG5l
d0xlbmd0aCkuCisgIDYuIElmIG5ld0J5dGVMZW5ndGggPCAwIG9yIG5ld0J5dGVMZW5ndGggPiBP
LltbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0sCisgICAgIHRocm93IGEgUmFuZ2VFcnJvciBl
eGNlcHRpb24uCisgIDcuIExldCBob3N0SGFuZGxlZCBiZSA/IEhvc3RSZXNpemVBcnJheUJ1ZmZl
cihPLCBuZXdCeXRlTGVuZ3RoKS4KKyAgWy4uLl0KKworICBIb3N0UmVzaXplQXJyYXlCdWZmZXIg
KCBidWZmZXIsIG5ld0J5dGVMZW5ndGggKQorCisgIFRoZSBpbXBsZW1lbnRhdGlvbiBvZiBIb3N0
UmVzaXplQXJyYXlCdWZmZXIgbXVzdCBjb25mb3JtIHRvIHRoZSBmb2xsb3dpbmcKKyAgcmVxdWly
ZW1lbnRzOgorCisgIC0gVGhlIGFic3RyYWN0IG9wZXJhdGlvbiBkb2VzIG5vdCBkZXRhY2ggYnVm
ZmVyLgorICAtIFRoZSBhYnN0cmFjdCBvcGVyYXRpb24gbWF5IGNvbXBsZXRlIG5vcm1hbGx5IG9y
IGFicnVwdGx5LgorICAtIElmIHRoZSBhYnN0cmFjdCBvcGVyYXRpb24gY29tcGxldGVzIG5vcm1h
bGx5IHdpdGggaGFuZGxlZCwKKyAgICBidWZmZXIuW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXSBp
cyBuZXdCeXRlTGVuZ3RoLgorICAtIFRoZSByZXR1cm4gdmFsdWUgaXMgZWl0aGVyIGhhbmRsZWQg
b3IgdW5oYW5kbGVkLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLwor
Cit2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoNCwge21heEJ5dGVMZW5ndGg6IDR9KTsKK3ZhciBj
YXVnaHQgPSBmYWxzZTsKK3ZhciByZXN1bHQ7CisKKy8vIElmIHRoZSBob3N0IGNob29zZXMgdG8g
dGhyb3cgYXMgYWxsb3dlZCBieSB0aGUgc3BlY2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisvLyBi
ZWhhdmlvciB3aWxsIGJlIGlkZW50aWNhbCB0byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIu
cHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxv
d2luZyBhc3NlcnRpb24gcHJldmVudHMgdGhpcyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVu
dGltZXMgd2hpY2ggaGF2ZSBub3QgaW1wbGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1l
VmFsdWUodHlwZW9mIGFiLnJlc2l6ZSwgJ2Z1bmN0aW9uJyk7CisKK3RyeSB7CisgIHJlc3VsdCA9
IGFiLnJlc2l6ZSgwKTsKK30gY2F0Y2ggKF8pIHsKKyAgY2F1Z2h0ID0gdHJ1ZTsKK30KKwordHJ5
IHsKKyAgYWIuc2xpY2UoKTsKK30gY2F0Y2ggKF8pIHsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJv
cignVGhlIEFycmF5QnVmZmVyIHVuZGVyIHRlc3Qgd2FzIGRldGFjaGVkJyk7Cit9CisKKy8vIE9u
ZSBvZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlvbnMgbXVzdCBiZSBtZXQ6CisvLworLy8g
LSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgcmV0dXJucyBhbiBhYnJ1cHQgY29tcGxldGlvbgorLy8g
LSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgaGFuZGxlcyB0aGUgcmVzaXplIG9wZXJhdGlvbiBhbmQg
Y29uZm9ybXMgdG8gdGhlCisvLyAgIGludmFyaWVudCByZWdhcmRpbmcgW1tBcnJheUJ1ZmZlckJ5
dGVMZW5ndGhdXQorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgZG9lcyBub3QgaGFuZGxlIHRo
ZSByZXNpemUgb3BlcmF0aW9uLCBhbmQgdGhlCisvLyAgIGByZXNpemVgIG1ldGhvZCB1cGRhdGVz
IFtbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0KKy8vCisvLyBUaGUgZmluYWwgdHdvIGNvbmRpdGlv
bnMgYXJlIGluZGlzdGluZ3Vpc2hhYmxlLgorYXNzZXJ0KGNhdWdodCB8fCBhYi5ieXRlTGVuZ3Ro
ID09PSAwLCAnYnl0ZUxlbmd0aCcpOworCisvLyBPbmUgb2YgdGhlIGZvbGxvd2luZyB0aHJlZSBj
b25kaXRpb25zIG11c3QgYmUgbWV0OgorLy8KKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIHJl
dHVybnMgYW4gYWJydXB0IGNvbXBsZXRpb24KKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIGhh
bmRsZXMgdGhlIHJlc2l6ZSBvcGVyYXRpb24sIGFuZCB0aGUgYHJlc2l6ZWAKKy8vICAgbWV0aG9k
IHJldHVybnMgZWFybHkKKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIGRvZXMgbm90IGhhbmRs
ZSB0aGUgcmVzaXplIG9wZXJhdGlvbiwgYW5kIHRoZQorLy8gICBgcmVzaXplYCBtZXRob2QgZXhl
Y3V0ZXMgaXRzIGZpbmFsIHN0ZXBzCisvLworLy8gQWxsIHRocmVlIGNvbmRpdGlvbnMgaGF2ZSB0
aGUgc2FtZSBlZmZlY3Qgb24gdGhlIHZhbHVlIG9mIGByZXN1bHRgLgorYXNzZXJ0LnNhbWVWYWx1
ZShyZXN1bHQsIHVuZGVmaW5lZCwgJ25vcm1hbCBjb21wbGV0aW9uIHZhbHVlJyk7CisKKy8vIFRo
ZSBjb250ZW50cyBvZiB0aGUgQXJyYXlCdWZmZXIgYXJlIG5vdCBndWFyYW50ZWVkIGJ5IHRoZSBo
b3N0LWRlZmluZWQKKy8vIGFic3RyYWN0IG9wZXJhdGlvbiwgc28gdGhleSBhcmUgbm90IGFzc2Vy
dGVkIGluIHRoaXMgdGVzdC4KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3Jlc2l6ZS1zaHJpbmstemVyby1pbXBs
aWNpdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90
b3R5cGUvcmVzaXplL3Jlc2l6ZS1zaHJpbmstemVyby1pbXBsaWNpdC5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44
M2IxYzgxMmE0MGY4NGVlZmI4OTI3NzlmOWY5MGRkMDg5MzI3MjM0Ci0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9y
ZXNpemUvcmVzaXplLXNocmluay16ZXJvLWltcGxpY2l0LmpzCkBAIC0wLDAgKzEsNzcgQEAKKy8v
IENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90
b3R5cGUucmVzaXplCitkZXNjcmlwdGlvbjogQmVoYXZpb3Igd2hlbiBhdHRlbXB0aW5nIHRvIHNo
cmluayBhIHJlc2l6YWJsZSBhcnJheSBidWZmZXIgdG8gemVybyBpbXBsaWNpdGx5CitpbmZvOiB8
CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgKCBuZXdMZW5ndGggKQorCisgIDEuIExl
dCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xv
dChPLCBbW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJh
eUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElm
IElzRGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9u
LgorICA1LiBMZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdlck9ySW5maW5pdHkobmV3TGVu
Z3RoKS4KKyAgNi4gSWYgbmV3Qnl0ZUxlbmd0aCA8IDAgb3IgbmV3Qnl0ZUxlbmd0aCA+IE8uW1tB
cnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSwKKyAgICAgdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2Vw
dGlvbi4KKyAgNy4gTGV0IGhvc3RIYW5kbGVkIGJlID8gSG9zdFJlc2l6ZUFycmF5QnVmZmVyKE8s
IG5ld0J5dGVMZW5ndGgpLgorICBbLi4uXQorCisgIEhvc3RSZXNpemVBcnJheUJ1ZmZlciAoIGJ1
ZmZlciwgbmV3Qnl0ZUxlbmd0aCApCisKKyAgVGhlIGltcGxlbWVudGF0aW9uIG9mIEhvc3RSZXNp
emVBcnJheUJ1ZmZlciBtdXN0IGNvbmZvcm0gdG8gdGhlIGZvbGxvd2luZworICByZXF1aXJlbWVu
dHM6CisKKyAgLSBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIGRvZXMgbm90IGRldGFjaCBidWZmZXIu
CisgIC0gVGhlIGFic3RyYWN0IG9wZXJhdGlvbiBtYXkgY29tcGxldGUgbm9ybWFsbHkgb3IgYWJy
dXB0bHkuCisgIC0gSWYgdGhlIGFic3RyYWN0IG9wZXJhdGlvbiBjb21wbGV0ZXMgbm9ybWFsbHkg
d2l0aCBoYW5kbGVkLAorICAgIGJ1ZmZlci5bW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dIGlzIG5l
d0J5dGVMZW5ndGguCisgIC0gVGhlIHJldHVybiB2YWx1ZSBpcyBlaXRoZXIgaGFuZGxlZCBvciB1
bmhhbmRsZWQuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3Zh
ciBhYiA9IG5ldyBBcnJheUJ1ZmZlcig0LCB7bWF4Qnl0ZUxlbmd0aDogNH0pOwordmFyIGNhdWdo
dCA9IGZhbHNlOwordmFyIHJlc3VsdDsKKworLy8gSWYgdGhlIGhvc3QgY2hvb3NlcyB0byB0aHJv
dyBhcyBhbGxvd2VkIGJ5IHRoZSBzcGVjaWZpY2F0aW9uLCB0aGUgb2JzZXJ2ZWQKKy8vIGJlaGF2
aW9yIHdpbGwgYmUgaWRlbnRpY2FsIHRvIHRoZSBjYXNlIHdoZXJlIGBBcnJheUJ1ZmZlci5wcm90
b3R5cGUucmVzaXplYAorLy8gaGFzIG5vdCBiZWVuIGltcGxlbWVudGVkLiBUaGUgZm9sbG93aW5n
IGFzc2VydGlvbiBwcmV2ZW50cyB0aGlzIHRlc3QgZnJvbQorLy8gcGFzc2luZyBpbiBydW50aW1l
cyB3aGljaCBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0aGUgbWV0aG9kLgorYXNzZXJ0LnNhbWVWYWx1
ZSh0eXBlb2YgYWIucmVzaXplLCAnZnVuY3Rpb24nKTsKKwordHJ5IHsKKyAgcmVzdWx0ID0gYWIu
cmVzaXplKCk7Cit9IGNhdGNoIChfKSB7CisgIGNhdWdodCA9IHRydWU7Cit9CisKK3RyeSB7Cisg
IGFiLnNsaWNlKCk7Cit9IGNhdGNoIChfKSB7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ1Ro
ZSBBcnJheUJ1ZmZlciB1bmRlciB0ZXN0IHdhcyBkZXRhY2hlZCcpOworfQorCisvLyBPbmUgb2Yg
dGhlIGZvbGxvd2luZyB0aHJlZSBjb25kaXRpb25zIG11c3QgYmUgbWV0OgorLy8KKy8vIC0gSG9z
dFJlc2l6ZUFycmF5QnVmZmVyIHJldHVybnMgYW4gYWJydXB0IGNvbXBsZXRpb24KKy8vIC0gSG9z
dFJlc2l6ZUFycmF5QnVmZmVyIGhhbmRsZXMgdGhlIHJlc2l6ZSBvcGVyYXRpb24gYW5kIGNvbmZv
cm1zIHRvIHRoZQorLy8gICBpbnZhcmllbnQgcmVnYXJkaW5nIFtbQXJyYXlCdWZmZXJCeXRlTGVu
Z3RoXV0KKy8vIC0gSG9zdFJlc2l6ZUFycmF5QnVmZmVyIGRvZXMgbm90IGhhbmRsZSB0aGUgcmVz
aXplIG9wZXJhdGlvbiwgYW5kIHRoZQorLy8gICBgcmVzaXplYCBtZXRob2QgdXBkYXRlcyBbW0Fy
cmF5QnVmZmVyQnl0ZUxlbmd0aF1dCisvLworLy8gVGhlIGZpbmFsIHR3byBjb25kaXRpb25zIGFy
ZSBpbmRpc3Rpbmd1aXNoYWJsZS4KK2Fzc2VydChjYXVnaHQgfHwgYWIuYnl0ZUxlbmd0aCA9PT0g
MCwgJ2J5dGVMZW5ndGgnKTsKKworLy8gT25lIG9mIHRoZSBmb2xsb3dpbmcgdGhyZWUgY29uZGl0
aW9ucyBtdXN0IGJlIG1ldDoKKy8vCisvLyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZlciByZXR1cm5z
IGFuIGFicnVwdCBjb21wbGV0aW9uCisvLyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZlciBoYW5kbGVz
IHRoZSByZXNpemUgb3BlcmF0aW9uLCBhbmQgdGhlIGByZXNpemVgCisvLyAgIG1ldGhvZCByZXR1
cm5zIGVhcmx5CisvLyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZlciBkb2VzIG5vdCBoYW5kbGUgdGhl
IHJlc2l6ZSBvcGVyYXRpb24sIGFuZCB0aGUKKy8vICAgYHJlc2l6ZWAgbWV0aG9kIGV4ZWN1dGVz
IGl0cyBmaW5hbCBzdGVwcworLy8KKy8vIEFsbCB0aHJlZSBjb25kaXRpb25zIGhhdmUgdGhlIHNh
bWUgZWZmZWN0IG9uIHRoZSB2YWx1ZSBvZiBgcmVzdWx0YC4KK2Fzc2VydC5zYW1lVmFsdWUocmVz
dWx0LCB1bmRlZmluZWQsICdub3JtYWwgY29tcGxldGlvbiB2YWx1ZScpOworCisvLyBUaGUgY29u
dGVudHMgb2YgdGhlIEFycmF5QnVmZmVyIGFyZSBub3QgZ3VhcmFudGVlZCBieSB0aGUgaG9zdC1k
ZWZpbmVkCisvLyBhYnN0cmFjdCBvcGVyYXRpb24sIHNvIHRoZXkgYXJlIG5vdCBhc3NlcnRlZCBp
biB0aGlzIHRlc3QuCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
QXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS9yZXNpemUtc2hyaW5rLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvcmVzaXpl
LXNocmluay5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMWI4MDA1MDM1NTJmMjFjMTU1MmRlNDAyZjk1YmY4YWUx
YTY2MmI1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvcmVzaXplLXNocmluay5qcwpAQCAtMCwwICsx
LDc3IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXli
dWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246IEJlaGF2aW9yIHdoZW4gYXR0ZW1w
dGluZyB0byBzaHJpbmsgYSByZXNpemFibGUgYXJyYXkgYnVmZmVyCitpbmZvOiB8CisgIEFycmF5
QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgKCBuZXdMZW5ndGggKQorCisgIDEuIExldCBPIGJlIHRo
ZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0Fy
cmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihP
KSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElmIElzRGV0YWNo
ZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA1LiBM
ZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdlck9ySW5maW5pdHkobmV3TGVuZ3RoKS4KKyAg
Ni4gSWYgbmV3Qnl0ZUxlbmd0aCA8IDAgb3IgbmV3Qnl0ZUxlbmd0aCA+IE8uW1tBcnJheUJ1ZmZl
ck1heEJ5dGVMZW5ndGhdXSwKKyAgICAgdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4KKyAg
Ny4gTGV0IGhvc3RIYW5kbGVkIGJlID8gSG9zdFJlc2l6ZUFycmF5QnVmZmVyKE8sIG5ld0J5dGVM
ZW5ndGgpLgorICBbLi4uXQorCisgIEhvc3RSZXNpemVBcnJheUJ1ZmZlciAoIGJ1ZmZlciwgbmV3
Qnl0ZUxlbmd0aCApCisKKyAgVGhlIGltcGxlbWVudGF0aW9uIG9mIEhvc3RSZXNpemVBcnJheUJ1
ZmZlciBtdXN0IGNvbmZvcm0gdG8gdGhlIGZvbGxvd2luZworICByZXF1aXJlbWVudHM6CisKKyAg
LSBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIGRvZXMgbm90IGRldGFjaCBidWZmZXIuCisgIC0gVGhl
IGFic3RyYWN0IG9wZXJhdGlvbiBtYXkgY29tcGxldGUgbm9ybWFsbHkgb3IgYWJydXB0bHkuCisg
IC0gSWYgdGhlIGFic3RyYWN0IG9wZXJhdGlvbiBjb21wbGV0ZXMgbm9ybWFsbHkgd2l0aCBoYW5k
bGVkLAorICAgIGJ1ZmZlci5bW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dIGlzIG5ld0J5dGVMZW5n
dGguCisgIC0gVGhlIHJldHVybiB2YWx1ZSBpcyBlaXRoZXIgaGFuZGxlZCBvciB1bmhhbmRsZWQu
CitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBhYiA9IG5l
dyBBcnJheUJ1ZmZlcig0LCB7bWF4Qnl0ZUxlbmd0aDogNH0pOwordmFyIGNhdWdodCA9IGZhbHNl
OwordmFyIHJlc3VsdDsKKworLy8gSWYgdGhlIGhvc3QgY2hvb3NlcyB0byB0aHJvdyBhcyBhbGxv
d2VkIGJ5IHRoZSBzcGVjaWZpY2F0aW9uLCB0aGUgb2JzZXJ2ZWQKKy8vIGJlaGF2aW9yIHdpbGwg
YmUgaWRlbnRpY2FsIHRvIHRoZSBjYXNlIHdoZXJlIGBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVz
aXplYAorLy8gaGFzIG5vdCBiZWVuIGltcGxlbWVudGVkLiBUaGUgZm9sbG93aW5nIGFzc2VydGlv
biBwcmV2ZW50cyB0aGlzIHRlc3QgZnJvbQorLy8gcGFzc2luZyBpbiBydW50aW1lcyB3aGljaCBo
YXZlIG5vdCBpbXBsZW1lbnRlZCB0aGUgbWV0aG9kLgorYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2Yg
YWIucmVzaXplLCAnZnVuY3Rpb24nKTsKKwordHJ5IHsKKyAgcmVzdWx0ID0gYWIucmVzaXplKDMp
OworfSBjYXRjaCAoXykgeworICBjYXVnaHQgPSB0cnVlOworfQorCit0cnkgeworICBhYi5zbGlj
ZSgpOworfSBjYXRjaCAoXykgeworICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdUaGUgQXJyYXlC
dWZmZXIgdW5kZXIgdGVzdCB3YXMgZGV0YWNoZWQnKTsKK30KKworLy8gT25lIG9mIHRoZSBmb2xs
b3dpbmcgdGhyZWUgY29uZGl0aW9ucyBtdXN0IGJlIG1ldDoKKy8vCisvLyAtIEhvc3RSZXNpemVB
cnJheUJ1ZmZlciByZXR1cm5zIGFuIGFicnVwdCBjb21wbGV0aW9uCisvLyAtIEhvc3RSZXNpemVB
cnJheUJ1ZmZlciBoYW5kbGVzIHRoZSByZXNpemUgb3BlcmF0aW9uIGFuZCBjb25mb3JtcyB0byB0
aGUKKy8vICAgaW52YXJpZW50IHJlZ2FyZGluZyBbW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dCisv
LyAtIEhvc3RSZXNpemVBcnJheUJ1ZmZlciBkb2VzIG5vdCBoYW5kbGUgdGhlIHJlc2l6ZSBvcGVy
YXRpb24sIGFuZCB0aGUKKy8vICAgYHJlc2l6ZWAgbWV0aG9kIHVwZGF0ZXMgW1tBcnJheUJ1ZmZl
ckJ5dGVMZW5ndGhdXQorLy8KKy8vIFRoZSBmaW5hbCB0d28gY29uZGl0aW9ucyBhcmUgaW5kaXN0
aW5ndWlzaGFibGUuCithc3NlcnQoY2F1Z2h0IHx8IGFiLmJ5dGVMZW5ndGggPT09IDMsICdieXRl
TGVuZ3RoJyk7CisKKy8vIE9uZSBvZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlvbnMgbXVz
dCBiZSBtZXQ6CisvLworLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgcmV0dXJucyBhbiBhYnJ1
cHQgY29tcGxldGlvbgorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgaGFuZGxlcyB0aGUgcmVz
aXplIG9wZXJhdGlvbiwgYW5kIHRoZSBgcmVzaXplYAorLy8gICBtZXRob2QgcmV0dXJucyBlYXJs
eQorLy8gLSBIb3N0UmVzaXplQXJyYXlCdWZmZXIgZG9lcyBub3QgaGFuZGxlIHRoZSByZXNpemUg
b3BlcmF0aW9uLCBhbmQgdGhlCisvLyAgIGByZXNpemVgIG1ldGhvZCBleGVjdXRlcyBpdHMgZmlu
YWwgc3RlcHMKKy8vCisvLyBBbGwgdGhyZWUgY29uZGl0aW9ucyBoYXZlIHRoZSBzYW1lIGVmZmVj
dCBvbiB0aGUgdmFsdWUgb2YgYHJlc3VsdGAuCithc3NlcnQuc2FtZVZhbHVlKHJlc3VsdCwgdW5k
ZWZpbmVkLCAnbm9ybWFsIGNvbXBsZXRpb24gdmFsdWUnKTsKKworLy8gVGhlIGNvbnRlbnRzIG9m
IHRoZSBBcnJheUJ1ZmZlciBhcmUgbm90IGd1YXJhbnRlZWQgYnkgdGhlIGhvc3QtZGVmaW5lZAor
Ly8gYWJzdHJhY3Qgb3BlcmF0aW9uLCBzbyB0aGV5IGFyZSBub3QgYXNzZXJ0ZWQgaW4gdGhpcyB0
ZXN0LgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVm
ZmVyL3Byb3RvdHlwZS9yZXNpemUvdGhpcy1pcy1kZXRhY2hlZC5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtZGV0
YWNoZWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uN2NlYTY1Y2I4MjE4NDFiOTkxNjZjYWRkMmYyZjhkYjI0NDgy
ZDMyNQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9B
cnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtZGV0YWNoZWQuanMKQEAgLTAsMCAr
MSwyNyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBs
aWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5
YnVmZmVyLnByb3RvdHlwZS5yZXNpemUKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBhIFR5cGVF
cnJvciBpZiBgdGhpc2AgZG9lcyBub3QgaGF2ZSBhbiBbW0FycmF5QnVmZmVyRGF0YV1dIGludGVy
bmFsIHNsb3QuCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUgKCBuZXdM
ZW5ndGggKQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8g
UmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAg
My4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBl
eGNlcHRpb24uCisgIDQuIElmIElzRGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBU
eXBlRXJyb3IgZXhjZXB0aW9uLgorICBbLi4uXQoraW5jbHVkZXM6IFtkZXRhY2hBcnJheUJ1ZmZl
ci5qc10KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0
LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwgJ2Z1bmN0aW9u
Jyk7CisKK3ZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcigxKTsKKworJERFVEFDSEJVRkZFUihhYik7
CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIucmVzaXplKCk7
Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1
ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtbm90LWFycmF5YnVmZmVyLW9iamVjdC5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVz
aXplL3RoaXMtaXMtbm90LWFycmF5YnVmZmVyLW9iamVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMjU5Zjkz
MWUwNjM1OTkwNjI4ZmM5ZTk3Y2JmNDliZGE2NzY5ODdhCi0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUv
dGhpcy1pcy1ub3QtYXJyYXlidWZmZXItb2JqZWN0LmpzCkBAIC0wLDAgKzEsMjggQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5
cGUucmVzaXplCitkZXNjcmlwdGlvbjogPgorICBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYHRoaXNg
IGRvZXMgbm90IGhhdmUgYW4gW1tBcnJheUJ1ZmZlckRhdGFdXSBpbnRlcm5hbCBzbG90LgoraW5m
bzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplICggbmV3TGVuZ3RoICkKKworICAx
LiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5h
bFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIFsuLi5dCitmZWF0dXJl
czogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUodHlw
ZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsICdmdW5jdGlvbicpOworCithc3NlcnQu
dGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5y
ZXNpemUoKTsKK30sICdgdGhpc2AgdmFsdWUgaXMgdGhlIEFycmF5QnVmZmVyIHByb3RvdHlwZScp
OworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIEFycmF5QnVmZmVy
LnByb3RvdHlwZS5yZXNpemUuY2FsbCh7fSk7Cit9LCAnYHRoaXNgIHZhbHVlIGlzIGFuIG9iamVj
dCcpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIEFycmF5QnVm
ZmVyLnByb3RvdHlwZS5yZXNpemUuY2FsbChbXSk7Cit9LCAnYHRoaXNgIHZhbHVlIGlzIGFuIGFy
cmF5Jyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlC
dWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS90aGlzLWlzLW5vdC1vYmplY3QuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS90aGlzLWlz
LW5vdC1vYmplY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjI3NGY4YjgwODRlMjkzNDE4ZTBmZmJlZmM4OTFl
NjEyMjliNjUxMgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtbm90LW9iamVjdC5qcwpA
QCAtMCwwICsxLDQ0IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBz
ZWMtYXJyYXlidWZmZXIucHJvdG90eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246IFRocm93cyBhIFR5
cGVFcnJvciBpZiBgdGhpc2AgdmFsdWVpcyBub3QgYW4gb2JqZWN0LgoraW5mbzogfAorICBBcnJh
eUJ1ZmZlci5wcm90b3R5cGUucmVzaXplICggbmV3TGVuZ3RoICkKKworICAxLiBMZXQgTyBiZSB0
aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tB
cnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIFsuLi5dCitmZWF0dXJlczogW3Jlc2l6YWJs
ZS1hcnJheWJ1ZmZlciwgU3ltYm9sLCBCaWdJbnRdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVl
KHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAiZnVuY3Rpb24iKTsKKworYXNz
ZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBBcnJheUJ1ZmZlci5wcm90b3R5
cGUucmVzaXplLmNhbGwodW5kZWZpbmVkKTsKK30sICJgdGhpc2AgdmFsdWUgaXMgdW5kZWZpbmVk
Iik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZm
ZXIucHJvdG90eXBlLnJlc2l6ZS5jYWxsKG51bGwpOworfSwgImB0aGlzYCB2YWx1ZSBpcyBudWxs
Iik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZm
ZXIucHJvdG90eXBlLnJlc2l6ZS5jYWxsKHRydWUpOworfSwgImB0aGlzYCB2YWx1ZSBpcyBCb29s
ZWFuIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlC
dWZmZXIucHJvdG90eXBlLnJlc2l6ZS5jYWxsKCIiKTsKK30sICJgdGhpc2AgdmFsdWUgaXMgU3Ry
aW5nIik7CisKK3ZhciBzeW1ib2wgPSBTeW1ib2woKTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZS5jYWxsKHN5bWJv
bCk7Cit9LCAiYHRoaXNgIHZhbHVlIGlzIFN5bWJvbCIpOworCithc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgZnVuY3Rpb24oKSB7CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUuY2FsbCgx
KTsKK30sICJgdGhpc2AgdmFsdWUgaXMgTnVtYmVyIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVy
cm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZS5jYWxsKDFu
KTsKK30sICJgdGhpc2AgdmFsdWUgaXMgYmlnaW50Iik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Jlc2l6ZS90aGlzLWlz
LW5vdC1yZXNpemFibGUtYXJyYXlidWZmZXItb2JqZWN0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvdGhpcy1pcy1ub3QtcmVz
aXphYmxlLWFycmF5YnVmZmVyLW9iamVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNjc0MzMwYjQzYmRhM2Rh
ZDg5NmZjNjVhNTFlZDkxOTYwZWEwZTBlCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS9yZXNpemUvdGhpcy1pcy1u
b3QtcmVzaXphYmxlLWFycmF5YnVmZmVyLW9iamVjdC5qcwpAQCAtMCwwICsxLDM4IEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXlidWZmZXIucHJvdG90
eXBlLnJlc2l6ZQorZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIGEgVHlwZUVycm9yIGlmIGB0aGlz
YCBkb2VzIG5vdCBoYXZlIGFuIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0gaW50ZXJuYWwg
c2xvdC4KK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSAoIG5ld0xlbmd0
aCApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1
aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0pLgorICBbLi4u
XQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgYWI7CisK
K2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsICdm
dW5jdGlvbicpOworCithYiA9IG5ldyBBcnJheUJ1ZmZlcig0KTsKK2Fzc2VydC50aHJvd3MoVHlw
ZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIucmVzaXplKDApOworfSwgJ3plcm8gYnl0ZSBsZW5n
dGgnKTsKKworYWIgPSBuZXcgQXJyYXlCdWZmZXIoNCk7Cithc3NlcnQudGhyb3dzKFR5cGVFcnJv
ciwgZnVuY3Rpb24oKSB7CisgIGFiLnJlc2l6ZSgzKTsKK30sICdzbWFsbGVyIGJ5dGUgbGVuZ3Ro
Jyk7CisKK2FiID0gbmV3IEFycmF5QnVmZmVyKDQpOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3Is
IGZ1bmN0aW9uKCkgeworICBhYi5yZXNpemUoNCk7Cit9LCAnc2FtZSBieXRlIGxlbmd0aCcpOwor
CithYiA9IG5ldyBBcnJheUJ1ZmZlcig0KTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5j
dGlvbigpIHsKKyAgYWIucmVzaXplKDUpOworfSwgJ2xhcmdlciBieXRlIGxlbmd0aCcpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS9yZXNpemUvdGhpcy1pcy1zaGFyZWRhcnJheWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtc2hh
cmVkYXJyYXlidWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmY5MWUxZjdiZmM0Nzc1MmQ2NDQzMjhmZTI5
ZjZlOGUyMzdhOTU2OQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvcmVzaXplL3RoaXMtaXMtc2hhcmVkYXJyYXli
dWZmZXIuanMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS5yZXNpemUKK2Rlc2NyaXB0aW9uOiBU
aHJvd3MgYSBUeXBlRXJyb3IgaWYgYHRoaXNgIHZhbHVlIGlzIGEgU2hhcmVkQXJyYXlCdWZmZXIK
K2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSAoIG5ld0xlbmd0aCApCisK
KyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50
ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0pLgorICAzLiBJZiBJc1No
YXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4K
KyAgWy4uLl0KK2ZlYXR1cmVzOiBbU2hhcmVkQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1
ZmZlcl0KKy0tLSovCisKK3ZhciBzYWIgPSBuZXcgU2hhcmVkQXJyYXlCdWZmZXIoMCk7CisKK2Fz
c2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZmZXIucHJvdG90
eXBlLnJlc2l6ZS5jYWxsKHNhYik7Cit9LCAnYHRoaXNgIHZhbHVlIGNhbm5vdCBiZSBhIFNoYXJl
ZEFycmF5QnVmZmVyJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL2Rlc2NyaXB0b3IuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL2Rl
c2NyaXB0b3IuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTJjNTgyNWRjOWRmZTUyM2QwYzk2NjUyYThiNDg4M2M4
OWZlNmE1NwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvZGVzY3JpcHRvci5qcwpAQCAtMCwwICsx
LDIyIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXli
dWZmZXIucHJvdG90eXBlLnRyYW5zZmVyCitkZXNjcmlwdGlvbjogPgorICBBcnJheUJ1ZmZlci5w
cm90b3R5cGUudHJhbnNmZXIgaGFzIGRlZmF1bHQgZGF0YSBwcm9wZXJ0eSBhdHRyaWJ1dGVzLgor
aW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBbIG5ld0xlbmd0aCBd
ICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVjdHM6CisgICAgRXZl
cnkgb3RoZXIgZGF0YSBwcm9wZXJ0eSBkZXNjcmliZWQgaW4gY2xhdXNlcyAxOCB0aHJvdWdoIDI2
IGFuZCBpbgorICAgIEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06
IHRydWUsIFtbRW51bWVyYWJsZV1dOiBmYWxzZSwKKyAgICBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVl
IH0gdW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQuCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVy
LmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2ZXJpZnlQ
cm9wZXJ0eShBcnJheUJ1ZmZlci5wcm90b3R5cGUsICd0cmFuc2ZlcicsIHsKKyAgZW51bWVyYWJs
ZTogZmFsc2UsCisgIHdyaXRhYmxlOiB0cnVlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3By
b3RvdHlwZS90cmFuc2Zlci9leHRlbnNpYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9leHRlbnNpYmxlLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjdkNDE2ZThiZTlhNjZkZGUwZmFkNTAwYmU5ZTk0Zjg3ZGZjYTcwYmUKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL3RyYW5zZmVyL2V4dGVuc2libGUuanMKQEAgLTAsMCArMSwxNSBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS50
cmFuc2ZlcgorZGVzY3JpcHRpb246IEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciBpcyBl
eHRlbnNpYmxlLgoraW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBb
IG5ld0xlbmd0aCBdICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVj
dHM6CisgICAgVW5sZXNzIHNwZWNpZmllZCBvdGhlcndpc2UsIHRoZSBbW0V4dGVuc2libGVdXSBp
bnRlcm5hbCBzbG90CisgICAgb2YgYSBidWlsdC1pbiBvYmplY3QgaW5pdGlhbGx5IGhhcyB0aGUg
dmFsdWUgdHJ1ZS4KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwor
YXNzZXJ0KE9iamVjdC5pc0V4dGVuc2libGUoQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVy
KSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL3RyYW5zZmVyL2Zyb20tZml4ZWQtdG8tbGFyZ2VyLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9t
LWZpeGVkLXRvLWxhcmdlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZjExM2Q3MTIxZTljZTE1NGMwOTUxOGRm
NmQ4ODNjMzM2MzU1Mzc5Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRvLWxh
cmdlci5qcwpAQCAtMCwwICsxLDU1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHBy
b2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zl
cm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0t
Citlc2lkOiBzZWMtYXJyYXlidWZmZXIucHJvdG90eXBlLnRyYW5zZmVyCitkZXNjcmlwdGlvbjog
VHJhbnNmZXJpbmcgZnJvbSBhIGZpeGVkLXNpemUgQXJyYXlCdWZmZXIgaW50byBhIGxhcmdlciBB
cnJheUJ1ZmZlcgoraW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBb
IG5ld0xlbmd0aCBdICkKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVy
Zm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIDMu
IElmIElzU2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhj
ZXB0aW9uLgorICA0LiBJZiBJc0RldGFjaGVkQnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlw
ZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4gSWYgbmV3TGVuZ3RoIGlzIHVuZGVmaW5lZCwgbGV0IG5l
d0J5dGVMZW5ndGggYmUKKyAgICAgTy5bW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dLgorICA2LiBF
bHNlLCBsZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdlck9ySW5maW5pdHkobmV3TGVuZ3Ro
KS4KKyAgNy4gTGV0IG5ldyBiZSA/IENvbnN0cnVjdCglQXJyYXlCdWZmZXIlLCDCqyDwnZS9KG5l
d0J5dGVMZW5ndGgpIMK7KS4KKyAgOC4gTk9URTogVGhpcyBtZXRob2QgcmV0dXJucyBhIGZpeGVk
LWxlbmd0aCBBcnJheUJ1ZmZlci4KKyAgOS4gTGV0IGNvcHlMZW5ndGggYmUgbWluKG5ld0J5dGVM
ZW5ndGgsIE8uW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXSkuCisgIDEwLiBMZXQgZnJvbUJsb2Nr
IGJlIE8uW1tBcnJheUJ1ZmZlckRhdGFdXS4KKyAgMTEuIExldCB0b0Jsb2NrIGJlIG5ldy5bW0Fy
cmF5QnVmZmVyRGF0YV1dLgorICAxMi4gUGVyZm9ybSBDb3B5RGF0YUJsb2NrQnl0ZXModG9CbG9j
aywgMCwgZnJvbUJsb2NrLCAwLCBjb3B5TGVuZ3RoKS4KKyAgMTMuIE5PVEU6IE5laXRoZXIgY3Jl
YXRpb24gb2YgdGhlIG5ldyBEYXRhIEJsb2NrIG5vciBjb3B5aW5nIGZyb20gdGhlIG9sZAorICAg
ICAgRGF0YSBCbG9jayBhcmUgb2JzZXJ2YWJsZS4gSW1wbGVtZW50YXRpb25zIHJlc2VydmUgdGhl
IHJpZ2h0IHRvIGltcGxlbWVudAorICAgICAgdGhpcyBtZXRob2QgYXMgYSB6ZXJvLWNvcHkgbW92
ZSBvciBhIHJlYWxsb2MuCisgIDE0LiBQZXJmb3JtICEgRGV0YWNoQXJyYXlCdWZmZXIoTykuCisg
IDE1LiBSZXR1cm4gbmV3LgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0q
LworCit2YXIgc291cmNlID0gbmV3IEFycmF5QnVmZmVyKDQpOworCit2YXIgc291cmNlQXJyYXkg
PSBuZXcgVWludDhBcnJheShzb3VyY2UpOworc291cmNlQXJyYXlbMF0gPSAxOworc291cmNlQXJy
YXlbMV0gPSAyOworc291cmNlQXJyYXlbMl0gPSAzOworc291cmNlQXJyYXlbM10gPSA0OworCit2
YXIgZGVzdCA9IHNvdXJjZS50cmFuc2Zlcig1KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShzb3VyY2Uu
Ynl0ZUxlbmd0aCwgMCwgJ3NvdXJjZS5ieXRlTGVuZ3RoJyk7Cithc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgZnVuY3Rpb24oKSB7CisgIHNvdXJjZS5zbGljZSgpOworfSk7CisKK2Fzc2VydC5zYW1l
VmFsdWUoZGVzdC5yZXNpemFibGUsIGZhbHNlLCAnZGVzdC5yZXNpemFibGUnKTsKK2Fzc2VydC5z
YW1lVmFsdWUoZGVzdC5ieXRlTGVuZ3RoLCA1LCAnZGVzdC5ieXRlTGVuZ3RoJyk7Cithc3NlcnQu
c2FtZVZhbHVlKGRlc3QubWF4Qnl0ZUxlbmd0aCwgNSwgJ2Rlc3QubWF4Qnl0ZUxlbmd0aCcpOwor
Cit2YXIgZGVzdEFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoZGVzdCk7CisKK2Fzc2VydC5zYW1lVmFs
dWUoZGVzdEFycmF5WzBdLCAxLCAnZGVzdEFycmF5WzBdJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRl
c3RBcnJheVsxXSwgMiwgJ2Rlc3RBcnJheVsxXScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0QXJy
YXlbMl0sIDMsICdkZXN0QXJyYXlbMl0nKTsKK2Fzc2VydC5zYW1lVmFsdWUoZGVzdEFycmF5WzNd
LCA0LCAnZGVzdEFycmF5WzNdJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3RBcnJheVs0XSwgMCwg
J2Rlc3RBcnJheVs0XScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRvLXNhbWUuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3Ry
YW5zZmVyL2Zyb20tZml4ZWQtdG8tc2FtZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jOGMwMGUwYThiY2ViYWRj
OGYwOTczMjhmNDYwMmI1OGEwZTI5ZmQyCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZp
eGVkLXRvLXNhbWUuanMKQEAgLTAsMCArMSw1NiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRo
ZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUg
aXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUu
CisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlcgorZGVzY3Jp
cHRpb246IHwKKyAgVHJhbnNmZXJpbmcgZnJvbSBhIGZpeGVkLXNpemUgQXJyYXlCdWZmZXIgaW50
byBhbiBBcnJheUJ1ZmZlciB3aXRoIHRoZSBzYW1lCisgIGJ5dGUgbGVuZ3RoCitpbmZvOiB8Cisg
IEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciAoIFsgbmV3TGVuZ3RoIF0gKQorCisgIDEu
IExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFs
U2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZl
cihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElmIElzRGV0
YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA1
LiBJZiBuZXdMZW5ndGggaXMgdW5kZWZpbmVkLCBsZXQgbmV3Qnl0ZUxlbmd0aCBiZQorICAgICBP
LltbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0uCisgIDYuIEVsc2UsIGxldCBuZXdCeXRlTGVuZ3Ro
IGJlID8gVG9JbnRlZ2VyT3JJbmZpbml0eShuZXdMZW5ndGgpLgorICA3LiBMZXQgbmV3IGJlID8g
Q29uc3RydWN0KCVBcnJheUJ1ZmZlciUsIMKrIPCdlL0obmV3Qnl0ZUxlbmd0aCkgwrspLgorICA4
LiBOT1RFOiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgZml4ZWQtbGVuZ3RoIEFycmF5QnVmZmVyLgor
ICA5LiBMZXQgY29weUxlbmd0aCBiZSBtaW4obmV3Qnl0ZUxlbmd0aCwgTy5bW0FycmF5QnVmZmVy
Qnl0ZUxlbmd0aF1dKS4KKyAgMTAuIExldCBmcm9tQmxvY2sgYmUgTy5bW0FycmF5QnVmZmVyRGF0
YV1dLgorICAxMS4gTGV0IHRvQmxvY2sgYmUgbmV3LltbQXJyYXlCdWZmZXJEYXRhXV0uCisgIDEy
LiBQZXJmb3JtIENvcHlEYXRhQmxvY2tCeXRlcyh0b0Jsb2NrLCAwLCBmcm9tQmxvY2ssIDAsIGNv
cHlMZW5ndGgpLgorICAxMy4gTk9URTogTmVpdGhlciBjcmVhdGlvbiBvZiB0aGUgbmV3IERhdGEg
QmxvY2sgbm9yIGNvcHlpbmcgZnJvbSB0aGUgb2xkCisgICAgICBEYXRhIEJsb2NrIGFyZSBvYnNl
cnZhYmxlLiBJbXBsZW1lbnRhdGlvbnMgcmVzZXJ2ZSB0aGUgcmlnaHQgdG8gaW1wbGVtZW50Cisg
ICAgICB0aGlzIG1ldGhvZCBhcyBhIHplcm8tY29weSBtb3ZlIG9yIGEgcmVhbGxvYy4KKyAgMTQu
IFBlcmZvcm0gISBEZXRhY2hBcnJheUJ1ZmZlcihPKS4KKyAgMTUuIFJldHVybiBuZXcuCitmZWF0
dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBzb3VyY2UgPSBuZXcg
QXJyYXlCdWZmZXIoNCk7CisKK3ZhciBzb3VyY2VBcnJheSA9IG5ldyBVaW50OEFycmF5KHNvdXJj
ZSk7Citzb3VyY2VBcnJheVswXSA9IDE7Citzb3VyY2VBcnJheVsxXSA9IDI7Citzb3VyY2VBcnJh
eVsyXSA9IDM7Citzb3VyY2VBcnJheVszXSA9IDQ7CisKK3ZhciBkZXN0ID0gc291cmNlLnRyYW5z
ZmVyKCk7CisKK2Fzc2VydC5zYW1lVmFsdWUoc291cmNlLmJ5dGVMZW5ndGgsIDAsICdzb3VyY2Uu
Ynl0ZUxlbmd0aCcpOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBz
b3VyY2Uuc2xpY2UoKTsKK30pOworCithc3NlcnQuc2FtZVZhbHVlKGRlc3QucmVzaXphYmxlLCBm
YWxzZSwgJ2Rlc3QucmVzaXphYmxlJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3QuYnl0ZUxlbmd0
aCwgNCwgJ2Rlc3QuYnl0ZUxlbmd0aCcpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0Lm1heEJ5dGVM
ZW5ndGgsIDQsICdkZXN0Lm1heEJ5dGVMZW5ndGgnKTsKKwordmFyIGRlc3RBcnJheSA9IG5ldyBV
aW50OEFycmF5KGRlc3QpOworCithc3NlcnQuc2FtZVZhbHVlKGRlc3RBcnJheVswXSwgMSwgJ2Rl
c3RBcnJheVswXScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0QXJyYXlbMV0sIDIsICdkZXN0QXJy
YXlbMV0nKTsKK2Fzc2VydC5zYW1lVmFsdWUoZGVzdEFycmF5WzJdLCAzLCAnZGVzdEFycmF5WzJd
Jyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3RBcnJheVszXSwgNCwgJ2Rlc3RBcnJheVszXScpOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3By
b3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRvLXNtYWxsZXIuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL2Zyb20tZml4
ZWQtdG8tc21hbGxlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYjMxNWQ1YWIwNTE0NjlmYzFjMWU2MDE5ZTFm
MDYyM2EzMGEyOTQxCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRvLXNtYWxs
ZXIuanMKQEAgLTAsMCArMSw1MyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9q
ZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQor
ZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlcgorZGVzY3JpcHRpb246IFRy
YW5zZmVyaW5nIGZyb20gYSBmaXhlZC1zaXplIEFycmF5QnVmZmVyIGludG8gYSBzbWFsbGVyIEFy
cmF5QnVmZmVyCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciAoIFsg
bmV3TGVuZ3RoIF0gKQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJm
b3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4g
SWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNl
cHRpb24uCisgIDQuIElmIElzRGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBl
RXJyb3IgZXhjZXB0aW9uLgorICA1LiBJZiBuZXdMZW5ndGggaXMgdW5kZWZpbmVkLCBsZXQgbmV3
Qnl0ZUxlbmd0aCBiZQorICAgICBPLltbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0uCisgIDYuIEVs
c2UsIGxldCBuZXdCeXRlTGVuZ3RoIGJlID8gVG9JbnRlZ2VyT3JJbmZpbml0eShuZXdMZW5ndGgp
LgorICA3LiBMZXQgbmV3IGJlID8gQ29uc3RydWN0KCVBcnJheUJ1ZmZlciUsIMKrIPCdlL0obmV3
Qnl0ZUxlbmd0aCkgwrspLgorICA4LiBOT1RFOiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgZml4ZWQt
bGVuZ3RoIEFycmF5QnVmZmVyLgorICA5LiBMZXQgY29weUxlbmd0aCBiZSBtaW4obmV3Qnl0ZUxl
bmd0aCwgTy5bW0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dKS4KKyAgMTAuIExldCBmcm9tQmxvY2sg
YmUgTy5bW0FycmF5QnVmZmVyRGF0YV1dLgorICAxMS4gTGV0IHRvQmxvY2sgYmUgbmV3LltbQXJy
YXlCdWZmZXJEYXRhXV0uCisgIDEyLiBQZXJmb3JtIENvcHlEYXRhQmxvY2tCeXRlcyh0b0Jsb2Nr
LCAwLCBmcm9tQmxvY2ssIDAsIGNvcHlMZW5ndGgpLgorICAxMy4gTk9URTogTmVpdGhlciBjcmVh
dGlvbiBvZiB0aGUgbmV3IERhdGEgQmxvY2sgbm9yIGNvcHlpbmcgZnJvbSB0aGUgb2xkCisgICAg
ICBEYXRhIEJsb2NrIGFyZSBvYnNlcnZhYmxlLiBJbXBsZW1lbnRhdGlvbnMgcmVzZXJ2ZSB0aGUg
cmlnaHQgdG8gaW1wbGVtZW50CisgICAgICB0aGlzIG1ldGhvZCBhcyBhIHplcm8tY29weSBtb3Zl
IG9yIGEgcmVhbGxvYy4KKyAgMTQuIFBlcmZvcm0gISBEZXRhY2hBcnJheUJ1ZmZlcihPKS4KKyAg
MTUuIFJldHVybiBuZXcuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSov
CisKK3ZhciBzb3VyY2UgPSBuZXcgQXJyYXlCdWZmZXIoNCk7CisKK3ZhciBzb3VyY2VBcnJheSA9
IG5ldyBVaW50OEFycmF5KHNvdXJjZSk7Citzb3VyY2VBcnJheVswXSA9IDE7Citzb3VyY2VBcnJh
eVsxXSA9IDI7Citzb3VyY2VBcnJheVsyXSA9IDM7Citzb3VyY2VBcnJheVszXSA9IDQ7CisKK3Zh
ciBkZXN0ID0gc291cmNlLnRyYW5zZmVyKDMpOworCithc3NlcnQuc2FtZVZhbHVlKHNvdXJjZS5i
eXRlTGVuZ3RoLCAwLCAnc291cmNlLmJ5dGVMZW5ndGgnKTsKK2Fzc2VydC50aHJvd3MoVHlwZUVy
cm9yLCBmdW5jdGlvbigpIHsKKyAgc291cmNlLnNsaWNlKCk7Cit9KTsKKworYXNzZXJ0LnNhbWVW
YWx1ZShkZXN0LnJlc2l6YWJsZSwgZmFsc2UsICdkZXN0LnJlc2l6YWJsZScpOworYXNzZXJ0LnNh
bWVWYWx1ZShkZXN0LmJ5dGVMZW5ndGgsIDMsICdkZXN0LmJ5dGVMZW5ndGgnKTsKK2Fzc2VydC5z
YW1lVmFsdWUoZGVzdC5tYXhCeXRlTGVuZ3RoLCAzLCAnZGVzdC5tYXhCeXRlTGVuZ3RoJyk7CisK
K3ZhciBkZXN0QXJyYXkgPSBuZXcgVWludDhBcnJheShkZXN0KTsKKworYXNzZXJ0LnNhbWVWYWx1
ZShkZXN0QXJyYXlbMF0sIDEsICdkZXN0QXJyYXlbMF0nKTsKK2Fzc2VydC5zYW1lVmFsdWUoZGVz
dEFycmF5WzFdLCAyLCAnZGVzdEFycmF5WzFdJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3RBcnJh
eVsyXSwgMywgJ2Rlc3RBcnJheVsyXScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLWZpeGVkLXRv
LXplcm8uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL3RyYW5zZmVyL2Zyb20tZml4ZWQtdG8temVyby5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNmNhMTA3
NDI2MzRhNzQzYTVjYmNjNWJiZDM2Mjk1ZjMxMTdkNDg4Ci0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zl
ci9mcm9tLWZpeGVkLXRvLXplcm8uanMKQEAgLTAsMCArMSw0NyBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS50cmFuc2Zl
cgorZGVzY3JpcHRpb246IFRyYW5zZmVyaW5nIGZyb20gYSBmaXhlZC1zaXplIEFycmF5QnVmZmVy
IGludG8gYSB6ZXJvLWxlbmd0aCBBcnJheUJ1ZmZlcgoraW5mbzogfAorICBBcnJheUJ1ZmZlci5w
cm90b3R5cGUudHJhbnNmZXIgKCBbIG5ld0xlbmd0aCBdICkKKworICAxLiBMZXQgTyBiZSB0aGUg
dGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJh
eUJ1ZmZlckRhdGFdXSkuCisgIDMuIElmIElzU2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgdHJ1ZSwg
dGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBJZiBJc0RldGFjaGVkQnVmZmVyKE8p
IGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4gSWYgbmV3TGVuZ3Ro
IGlzIHVuZGVmaW5lZCwgbGV0IG5ld0J5dGVMZW5ndGggYmUKKyAgICAgTy5bW0FycmF5QnVmZmVy
Qnl0ZUxlbmd0aF1dLgorICA2LiBFbHNlLCBsZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdl
ck9ySW5maW5pdHkobmV3TGVuZ3RoKS4KKyAgNy4gTGV0IG5ldyBiZSA/IENvbnN0cnVjdCglQXJy
YXlCdWZmZXIlLCDCqyDwnZS9KG5ld0J5dGVMZW5ndGgpIMK7KS4KKyAgOC4gTk9URTogVGhpcyBt
ZXRob2QgcmV0dXJucyBhIGZpeGVkLWxlbmd0aCBBcnJheUJ1ZmZlci4KKyAgOS4gTGV0IGNvcHlM
ZW5ndGggYmUgbWluKG5ld0J5dGVMZW5ndGgsIE8uW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXSku
CisgIDEwLiBMZXQgZnJvbUJsb2NrIGJlIE8uW1tBcnJheUJ1ZmZlckRhdGFdXS4KKyAgMTEuIExl
dCB0b0Jsb2NrIGJlIG5ldy5bW0FycmF5QnVmZmVyRGF0YV1dLgorICAxMi4gUGVyZm9ybSBDb3B5
RGF0YUJsb2NrQnl0ZXModG9CbG9jaywgMCwgZnJvbUJsb2NrLCAwLCBjb3B5TGVuZ3RoKS4KKyAg
MTMuIE5PVEU6IE5laXRoZXIgY3JlYXRpb24gb2YgdGhlIG5ldyBEYXRhIEJsb2NrIG5vciBjb3B5
aW5nIGZyb20gdGhlIG9sZAorICAgICAgRGF0YSBCbG9jayBhcmUgb2JzZXJ2YWJsZS4gSW1wbGVt
ZW50YXRpb25zIHJlc2VydmUgdGhlIHJpZ2h0IHRvIGltcGxlbWVudAorICAgICAgdGhpcyBtZXRo
b2QgYXMgYSB6ZXJvLWNvcHkgbW92ZSBvciBhIHJlYWxsb2MuCisgIDE0LiBQZXJmb3JtICEgRGV0
YWNoQXJyYXlCdWZmZXIoTykuCisgIDE1LiBSZXR1cm4gbmV3LgorZmVhdHVyZXM6IFtyZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgc291cmNlID0gbmV3IEFycmF5QnVmZmVyKDQp
OworCit2YXIgc291cmNlQXJyYXkgPSBuZXcgVWludDhBcnJheShzb3VyY2UpOworc291cmNlQXJy
YXlbMF0gPSAxOworc291cmNlQXJyYXlbMV0gPSAyOworc291cmNlQXJyYXlbMl0gPSAzOworc291
cmNlQXJyYXlbM10gPSA0OworCit2YXIgZGVzdCA9IHNvdXJjZS50cmFuc2ZlcigwKTsKKworYXNz
ZXJ0LnNhbWVWYWx1ZShzb3VyY2UuYnl0ZUxlbmd0aCwgMCwgJ3NvdXJjZS5ieXRlTGVuZ3RoJyk7
Cithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNvdXJjZS5zbGljZSgp
OworfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoZGVzdC5yZXNpemFibGUsIGZhbHNlLCAnZGVzdC5y
ZXNpemFibGUnKTsKK2Fzc2VydC5zYW1lVmFsdWUoZGVzdC5ieXRlTGVuZ3RoLCAwLCAnZGVzdC5i
eXRlTGVuZ3RoJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3QubWF4Qnl0ZUxlbmd0aCwgMCwgJ2Rl
c3QubWF4Qnl0ZUxlbmd0aCcpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by1s
YXJnZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJv
dG90eXBlL3RyYW5zZmVyL2Zyb20tcmVzaXphYmxlLXRvLWxhcmdlci5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
MDQ5YmNmM2YzZjU3YWMwYzU1NDViYjBkMDEwNjA5MzQ1MjJlOTZlCi0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90
cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by1sYXJnZXIuanMKQEAgLTAsMCArMSw1NSBAQAorLy8g
Q29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3Rv
dHlwZS50cmFuc2ZlcgorZGVzY3JpcHRpb246IFRyYW5zZmVyaW5nIGZyb20gYSByZXNpemFibGUg
QXJyYXlCdWZmZXIgaW50byBhIGxhcmdlciBBcnJheUJ1ZmZlcgoraW5mbzogfAorICBBcnJheUJ1
ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBbIG5ld0xlbmd0aCBdICkKKworICAxLiBMZXQgTyBi
ZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywg
W1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIDMuIElmIElzU2hhcmVkQXJyYXlCdWZmZXIoTykgaXMg
dHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBJZiBJc0RldGFjaGVkQnVm
ZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4gSWYgbmV3
TGVuZ3RoIGlzIHVuZGVmaW5lZCwgbGV0IG5ld0J5dGVMZW5ndGggYmUKKyAgICAgTy5bW0FycmF5
QnVmZmVyQnl0ZUxlbmd0aF1dLgorICA2LiBFbHNlLCBsZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRv
SW50ZWdlck9ySW5maW5pdHkobmV3TGVuZ3RoKS4KKyAgNy4gTGV0IG5ldyBiZSA/IENvbnN0cnVj
dCglQXJyYXlCdWZmZXIlLCDCqyDwnZS9KG5ld0J5dGVMZW5ndGgpIMK7KS4KKyAgOC4gTk9URTog
VGhpcyBtZXRob2QgcmV0dXJucyBhIGZpeGVkLWxlbmd0aCBBcnJheUJ1ZmZlci4KKyAgOS4gTGV0
IGNvcHlMZW5ndGggYmUgbWluKG5ld0J5dGVMZW5ndGgsIE8uW1tBcnJheUJ1ZmZlckJ5dGVMZW5n
dGhdXSkuCisgIDEwLiBMZXQgZnJvbUJsb2NrIGJlIE8uW1tBcnJheUJ1ZmZlckRhdGFdXS4KKyAg
MTEuIExldCB0b0Jsb2NrIGJlIG5ldy5bW0FycmF5QnVmZmVyRGF0YV1dLgorICAxMi4gUGVyZm9y
bSBDb3B5RGF0YUJsb2NrQnl0ZXModG9CbG9jaywgMCwgZnJvbUJsb2NrLCAwLCBjb3B5TGVuZ3Ro
KS4KKyAgMTMuIE5PVEU6IE5laXRoZXIgY3JlYXRpb24gb2YgdGhlIG5ldyBEYXRhIEJsb2NrIG5v
ciBjb3B5aW5nIGZyb20gdGhlIG9sZAorICAgICAgRGF0YSBCbG9jayBhcmUgb2JzZXJ2YWJsZS4g
SW1wbGVtZW50YXRpb25zIHJlc2VydmUgdGhlIHJpZ2h0IHRvIGltcGxlbWVudAorICAgICAgdGhp
cyBtZXRob2QgYXMgYSB6ZXJvLWNvcHkgbW92ZSBvciBhIHJlYWxsb2MuCisgIDE0LiBQZXJmb3Jt
ICEgRGV0YWNoQXJyYXlCdWZmZXIoTykuCisgIDE1LiBSZXR1cm4gbmV3LgorZmVhdHVyZXM6IFty
ZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgc291cmNlID0gbmV3IEFycmF5QnVm
ZmVyKDQsIHsgbWF4Qnl0ZUxlbmd0aDogOCB9KTsKKwordmFyIHNvdXJjZUFycmF5ID0gbmV3IFVp
bnQ4QXJyYXkoc291cmNlKTsKK3NvdXJjZUFycmF5WzBdID0gMTsKK3NvdXJjZUFycmF5WzFdID0g
MjsKK3NvdXJjZUFycmF5WzJdID0gMzsKK3NvdXJjZUFycmF5WzNdID0gNDsKKwordmFyIGRlc3Qg
PSBzb3VyY2UudHJhbnNmZXIoNSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoc291cmNlLmJ5dGVMZW5n
dGgsIDAsICdzb3VyY2UuYnl0ZUxlbmd0aCcpOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1
bmN0aW9uKCkgeworICBzb3VyY2Uuc2xpY2UoKTsKK30pOworCithc3NlcnQuc2FtZVZhbHVlKGRl
c3QucmVzaXphYmxlLCBmYWxzZSwgJ2Rlc3QucmVzaXphYmxlJyk7Cithc3NlcnQuc2FtZVZhbHVl
KGRlc3QuYnl0ZUxlbmd0aCwgNSwgJ2Rlc3QuYnl0ZUxlbmd0aCcpOworYXNzZXJ0LnNhbWVWYWx1
ZShkZXN0Lm1heEJ5dGVMZW5ndGgsIDUsICdkZXN0Lm1heEJ5dGVMZW5ndGgnKTsKKwordmFyIGRl
c3RBcnJheSA9IG5ldyBVaW50OEFycmF5KGRlc3QpOworCithc3NlcnQuc2FtZVZhbHVlKGRlc3RB
cnJheVswXSwgMSwgJ2Rlc3RBcnJheVswXScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0QXJyYXlb
MV0sIDIsICdkZXN0QXJyYXlbMV0nKTsKK2Fzc2VydC5zYW1lVmFsdWUoZGVzdEFycmF5WzJdLCAz
LCAnZGVzdEFycmF5WzJdJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3RBcnJheVszXSwgNCwgJ2Rl
c3RBcnJheVszXScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0QXJyYXlbNF0sIDAsICdkZXN0QXJy
YXlbNF0nKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJh
eUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvZnJvbS1yZXNpemFibGUtdG8tc2FtZS5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNm
ZXIvZnJvbS1yZXNpemFibGUtdG8tc2FtZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNzE0MWI0Y2U5OTVhMGE1
N2IxZWU4MjRhNDg2OTE4ZDZlNDc2ZWIzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9mcm9tLXJl
c2l6YWJsZS10by1zYW1lLmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAy
MSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBj
b2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIKK2Rl
c2NyaXB0aW9uOiB8CisgIFRyYW5zZmVyaW5nIGZyb20gYSByZXNpemFibGUgQXJyYXlCdWZmZXIg
aW50byBhbiBBcnJheUJ1ZmZlciB3aXRoIHRoZSBzYW1lCisgIGJ5dGUgbGVuZ3RoCitpbmZvOiB8
CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciAoIFsgbmV3TGVuZ3RoIF0gKQorCisg
IDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVy
bmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1
ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElmIElz
RGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgor
ICA1LiBJZiBuZXdMZW5ndGggaXMgdW5kZWZpbmVkLCBsZXQgbmV3Qnl0ZUxlbmd0aCBiZQorICAg
ICBPLltbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0uCisgIDYuIEVsc2UsIGxldCBuZXdCeXRlTGVu
Z3RoIGJlID8gVG9JbnRlZ2VyT3JJbmZpbml0eShuZXdMZW5ndGgpLgorICA3LiBMZXQgbmV3IGJl
ID8gQ29uc3RydWN0KCVBcnJheUJ1ZmZlciUsIMKrIPCdlL0obmV3Qnl0ZUxlbmd0aCkgwrspLgor
ICA4LiBOT1RFOiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgZml4ZWQtbGVuZ3RoIEFycmF5QnVmZmVy
LgorICA5LiBMZXQgY29weUxlbmd0aCBiZSBtaW4obmV3Qnl0ZUxlbmd0aCwgTy5bW0FycmF5QnVm
ZmVyQnl0ZUxlbmd0aF1dKS4KKyAgMTAuIExldCBmcm9tQmxvY2sgYmUgTy5bW0FycmF5QnVmZmVy
RGF0YV1dLgorICAxMS4gTGV0IHRvQmxvY2sgYmUgbmV3LltbQXJyYXlCdWZmZXJEYXRhXV0uCisg
IDEyLiBQZXJmb3JtIENvcHlEYXRhQmxvY2tCeXRlcyh0b0Jsb2NrLCAwLCBmcm9tQmxvY2ssIDAs
IGNvcHlMZW5ndGgpLgorICAxMy4gTk9URTogTmVpdGhlciBjcmVhdGlvbiBvZiB0aGUgbmV3IERh
dGEgQmxvY2sgbm9yIGNvcHlpbmcgZnJvbSB0aGUgb2xkCisgICAgICBEYXRhIEJsb2NrIGFyZSBv
YnNlcnZhYmxlLiBJbXBsZW1lbnRhdGlvbnMgcmVzZXJ2ZSB0aGUgcmlnaHQgdG8gaW1wbGVtZW50
CisgICAgICB0aGlzIG1ldGhvZCBhcyBhIHplcm8tY29weSBtb3ZlIG9yIGEgcmVhbGxvYy4KKyAg
MTQuIFBlcmZvcm0gISBEZXRhY2hBcnJheUJ1ZmZlcihPKS4KKyAgMTUuIFJldHVybiBuZXcuCitm
ZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBzb3VyY2UgPSBu
ZXcgQXJyYXlCdWZmZXIoNCwgeyBtYXhCeXRlTGVuZ3RoOiA4IH0pOworCit2YXIgc291cmNlQXJy
YXkgPSBuZXcgVWludDhBcnJheShzb3VyY2UpOworc291cmNlQXJyYXlbMF0gPSAxOworc291cmNl
QXJyYXlbMV0gPSAyOworc291cmNlQXJyYXlbMl0gPSAzOworc291cmNlQXJyYXlbM10gPSA0Owor
Cit2YXIgZGVzdCA9IHNvdXJjZS50cmFuc2ZlcigpOworCithc3NlcnQuc2FtZVZhbHVlKHNvdXJj
ZS5ieXRlTGVuZ3RoLCAwLCAnc291cmNlLmJ5dGVMZW5ndGgnKTsKK2Fzc2VydC50aHJvd3MoVHlw
ZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgc291cmNlLnNsaWNlKCk7Cit9KTsKKworYXNzZXJ0LnNh
bWVWYWx1ZShkZXN0LnJlc2l6YWJsZSwgZmFsc2UsICdkZXN0LnJlc2l6YWJsZScpOworYXNzZXJ0
LnNhbWVWYWx1ZShkZXN0LmJ5dGVMZW5ndGgsIDQsICdkZXN0LmJ5dGVMZW5ndGgnKTsKK2Fzc2Vy
dC5zYW1lVmFsdWUoZGVzdC5tYXhCeXRlTGVuZ3RoLCA0LCAnZGVzdC5tYXhCeXRlTGVuZ3RoJyk7
CisKK3ZhciBkZXN0QXJyYXkgPSBuZXcgVWludDhBcnJheShkZXN0KTsKKworYXNzZXJ0LnNhbWVW
YWx1ZShkZXN0QXJyYXlbMF0sIDEsICdkZXN0QXJyYXlbMF0nKTsKK2Fzc2VydC5zYW1lVmFsdWUo
ZGVzdEFycmF5WzFdLCAyLCAnZGVzdEFycmF5WzFdJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRlc3RB
cnJheVsyXSwgMywgJ2Rlc3RBcnJheVsyXScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0QXJyYXlb
M10sIDQsICdkZXN0QXJyYXlbM10nKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvZnJvbS1yZXNpemFibGUt
dG8tc21hbGxlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvdHJhbnNmZXIvZnJvbS1yZXNpemFibGUtdG8tc21hbGxlci5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5hNjMzMjI3NmE1MmNkZWJlNTQwNzgxMDc1ZDc4YmE3M2ViNTZkMjVlCi0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS90cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by1zbWFsbGVyLmpzCkBAIC0wLDAgKzEsNTMg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZl
ci5wcm90b3R5cGUudHJhbnNmZXIKK2Rlc2NyaXB0aW9uOiBUcmFuc2ZlcmluZyBmcm9tIGEgcmVz
aXphYmxlIEFycmF5QnVmZmVyIGludG8gYSBzbWFsbGVyIEFycmF5QnVmZmVyCitpbmZvOiB8Cisg
IEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciAoIFsgbmV3TGVuZ3RoIF0gKQorCisgIDEu
IExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFs
U2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZl
cihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElmIElzRGV0
YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA1
LiBJZiBuZXdMZW5ndGggaXMgdW5kZWZpbmVkLCBsZXQgbmV3Qnl0ZUxlbmd0aCBiZQorICAgICBP
LltbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0uCisgIDYuIEVsc2UsIGxldCBuZXdCeXRlTGVuZ3Ro
IGJlID8gVG9JbnRlZ2VyT3JJbmZpbml0eShuZXdMZW5ndGgpLgorICA3LiBMZXQgbmV3IGJlID8g
Q29uc3RydWN0KCVBcnJheUJ1ZmZlciUsIMKrIPCdlL0obmV3Qnl0ZUxlbmd0aCkgwrspLgorICA4
LiBOT1RFOiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgZml4ZWQtbGVuZ3RoIEFycmF5QnVmZmVyLgor
ICA5LiBMZXQgY29weUxlbmd0aCBiZSBtaW4obmV3Qnl0ZUxlbmd0aCwgTy5bW0FycmF5QnVmZmVy
Qnl0ZUxlbmd0aF1dKS4KKyAgMTAuIExldCBmcm9tQmxvY2sgYmUgTy5bW0FycmF5QnVmZmVyRGF0
YV1dLgorICAxMS4gTGV0IHRvQmxvY2sgYmUgbmV3LltbQXJyYXlCdWZmZXJEYXRhXV0uCisgIDEy
LiBQZXJmb3JtIENvcHlEYXRhQmxvY2tCeXRlcyh0b0Jsb2NrLCAwLCBmcm9tQmxvY2ssIDAsIGNv
cHlMZW5ndGgpLgorICAxMy4gTk9URTogTmVpdGhlciBjcmVhdGlvbiBvZiB0aGUgbmV3IERhdGEg
QmxvY2sgbm9yIGNvcHlpbmcgZnJvbSB0aGUgb2xkCisgICAgICBEYXRhIEJsb2NrIGFyZSBvYnNl
cnZhYmxlLiBJbXBsZW1lbnRhdGlvbnMgcmVzZXJ2ZSB0aGUgcmlnaHQgdG8gaW1wbGVtZW50Cisg
ICAgICB0aGlzIG1ldGhvZCBhcyBhIHplcm8tY29weSBtb3ZlIG9yIGEgcmVhbGxvYy4KKyAgMTQu
IFBlcmZvcm0gISBEZXRhY2hBcnJheUJ1ZmZlcihPKS4KKyAgMTUuIFJldHVybiBuZXcuCitmZWF0
dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBzb3VyY2UgPSBuZXcg
QXJyYXlCdWZmZXIoNCwgeyBtYXhCeXRlTGVuZ3RoOiA4IH0pOworCit2YXIgc291cmNlQXJyYXkg
PSBuZXcgVWludDhBcnJheShzb3VyY2UpOworc291cmNlQXJyYXlbMF0gPSAxOworc291cmNlQXJy
YXlbMV0gPSAyOworc291cmNlQXJyYXlbMl0gPSAzOworc291cmNlQXJyYXlbM10gPSA0OworCit2
YXIgZGVzdCA9IHNvdXJjZS50cmFuc2ZlcigzKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShzb3VyY2Uu
Ynl0ZUxlbmd0aCwgMCwgJ3NvdXJjZS5ieXRlTGVuZ3RoJyk7Cithc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgZnVuY3Rpb24oKSB7CisgIHNvdXJjZS5zbGljZSgpOworfSk7CisKK2Fzc2VydC5zYW1l
VmFsdWUoZGVzdC5yZXNpemFibGUsIGZhbHNlLCAnZGVzdC5yZXNpemFibGUnKTsKK2Fzc2VydC5z
YW1lVmFsdWUoZGVzdC5ieXRlTGVuZ3RoLCAzLCAnZGVzdC5ieXRlTGVuZ3RoJyk7Cithc3NlcnQu
c2FtZVZhbHVlKGRlc3QubWF4Qnl0ZUxlbmd0aCwgMywgJ2Rlc3QubWF4Qnl0ZUxlbmd0aCcpOwor
Cit2YXIgZGVzdEFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoZGVzdCk7CisKK2Fzc2VydC5zYW1lVmFs
dWUoZGVzdEFycmF5WzBdLCAxLCAnZGVzdEFycmF5WzBdJyk7Cithc3NlcnQuc2FtZVZhbHVlKGRl
c3RBcnJheVsxXSwgMiwgJ2Rlc3RBcnJheVsxXScpOworYXNzZXJ0LnNhbWVWYWx1ZShkZXN0QXJy
YXlbMl0sIDMsICdkZXN0QXJyYXlbMl0nKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvZnJvbS1yZXNpemFi
bGUtdG8temVyby5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZl
ci9wcm90b3R5cGUvdHJhbnNmZXIvZnJvbS1yZXNpemFibGUtdG8temVyby5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yMDNkOWMwNWFhNTZiM2I1NzE5OTdkMzBlYjUwYTNjN2EzOGVjZDIyCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlw
ZS90cmFuc2Zlci9mcm9tLXJlc2l6YWJsZS10by16ZXJvLmpzCkBAIC0wLDAgKzEsNDcgQEAKKy8v
IENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90
b3R5cGUudHJhbnNmZXIKK2Rlc2NyaXB0aW9uOiBUcmFuc2ZlcmluZyBmcm9tIGEgcmVzaXphYmxl
IEFycmF5QnVmZmVyIGludG8gYSB6ZXJvLWxlbmd0aCBBcnJheUJ1ZmZlcgoraW5mbzogfAorICBB
cnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBbIG5ld0xlbmd0aCBdICkKKworICAxLiBM
ZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNs
b3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIDMuIElmIElzU2hhcmVkQXJyYXlCdWZmZXIo
TykgaXMgdHJ1ZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBJZiBJc0RldGFj
aGVkQnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgNS4g
SWYgbmV3TGVuZ3RoIGlzIHVuZGVmaW5lZCwgbGV0IG5ld0J5dGVMZW5ndGggYmUKKyAgICAgTy5b
W0FycmF5QnVmZmVyQnl0ZUxlbmd0aF1dLgorICA2LiBFbHNlLCBsZXQgbmV3Qnl0ZUxlbmd0aCBi
ZSA/IFRvSW50ZWdlck9ySW5maW5pdHkobmV3TGVuZ3RoKS4KKyAgNy4gTGV0IG5ldyBiZSA/IENv
bnN0cnVjdCglQXJyYXlCdWZmZXIlLCDCqyDwnZS9KG5ld0J5dGVMZW5ndGgpIMK7KS4KKyAgOC4g
Tk9URTogVGhpcyBtZXRob2QgcmV0dXJucyBhIGZpeGVkLWxlbmd0aCBBcnJheUJ1ZmZlci4KKyAg
OS4gTGV0IGNvcHlMZW5ndGggYmUgbWluKG5ld0J5dGVMZW5ndGgsIE8uW1tBcnJheUJ1ZmZlckJ5
dGVMZW5ndGhdXSkuCisgIDEwLiBMZXQgZnJvbUJsb2NrIGJlIE8uW1tBcnJheUJ1ZmZlckRhdGFd
XS4KKyAgMTEuIExldCB0b0Jsb2NrIGJlIG5ldy5bW0FycmF5QnVmZmVyRGF0YV1dLgorICAxMi4g
UGVyZm9ybSBDb3B5RGF0YUJsb2NrQnl0ZXModG9CbG9jaywgMCwgZnJvbUJsb2NrLCAwLCBjb3B5
TGVuZ3RoKS4KKyAgMTMuIE5PVEU6IE5laXRoZXIgY3JlYXRpb24gb2YgdGhlIG5ldyBEYXRhIEJs
b2NrIG5vciBjb3B5aW5nIGZyb20gdGhlIG9sZAorICAgICAgRGF0YSBCbG9jayBhcmUgb2JzZXJ2
YWJsZS4gSW1wbGVtZW50YXRpb25zIHJlc2VydmUgdGhlIHJpZ2h0IHRvIGltcGxlbWVudAorICAg
ICAgdGhpcyBtZXRob2QgYXMgYSB6ZXJvLWNvcHkgbW92ZSBvciBhIHJlYWxsb2MuCisgIDE0LiBQ
ZXJmb3JtICEgRGV0YWNoQXJyYXlCdWZmZXIoTykuCisgIDE1LiBSZXR1cm4gbmV3LgorZmVhdHVy
ZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgc291cmNlID0gbmV3IEFy
cmF5QnVmZmVyKDQsIHsgbWF4Qnl0ZUxlbmd0aDogOCB9KTsKKwordmFyIHNvdXJjZUFycmF5ID0g
bmV3IFVpbnQ4QXJyYXkoc291cmNlKTsKK3NvdXJjZUFycmF5WzBdID0gMTsKK3NvdXJjZUFycmF5
WzFdID0gMjsKK3NvdXJjZUFycmF5WzJdID0gMzsKK3NvdXJjZUFycmF5WzNdID0gNDsKKwordmFy
IGRlc3QgPSBzb3VyY2UudHJhbnNmZXIoMCk7CisKK2Fzc2VydC5zYW1lVmFsdWUoc291cmNlLmJ5
dGVMZW5ndGgsIDAsICdzb3VyY2UuYnl0ZUxlbmd0aCcpOworYXNzZXJ0LnRocm93cyhUeXBlRXJy
b3IsIGZ1bmN0aW9uKCkgeworICBzb3VyY2Uuc2xpY2UoKTsKK30pOworCithc3NlcnQuc2FtZVZh
bHVlKGRlc3QucmVzaXphYmxlLCBmYWxzZSwgJ2Rlc3QucmVzaXphYmxlJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKGRlc3QuYnl0ZUxlbmd0aCwgMCwgJ2Rlc3QuYnl0ZUxlbmd0aCcpOworYXNzZXJ0LnNh
bWVWYWx1ZShkZXN0Lm1heEJ5dGVMZW5ndGgsIDAsICdkZXN0Lm1heEJ5dGVMZW5ndGgnKTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90
b3R5cGUvdHJhbnNmZXIvbGVuZ3RoLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9sZW5ndGguanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjBi
ZTEwNzQ3YjliYTdiYWM3YWY5Y2YyYTk1OGE0MzI3OTc4NTc0MgotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJh
bnNmZXIvbGVuZ3RoLmpzCkBAIC0wLDAgKzEsMzAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0
aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2Rl
IGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxl
LgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIKK2Rlc2Ny
aXB0aW9uOiA+CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2Zlci5sZW5ndGggaXMgMC4K
K2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyICggWyBuZXdMZW5ndGgg
XSApCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgorICAgIEV2
ZXJ5IGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCwgaW5jbHVkaW5nIGNvbnN0cnVjdG9ycywgaGFz
IGEgbGVuZ3RoCisgICAgcHJvcGVydHkgd2hvc2UgdmFsdWUgaXMgYW4gaW50ZWdlci4gVW5sZXNz
IG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoaXMKKyAgICB2YWx1ZSBpcyBlcXVhbCB0byB0aGUgbGFy
Z2VzdCBudW1iZXIgb2YgbmFtZWQgYXJndW1lbnRzIHNob3duIGluIHRoZQorICAgIHN1YmNsYXVz
ZSBoZWFkaW5ncyBmb3IgdGhlIGZ1bmN0aW9uIGRlc2NyaXB0aW9uLCBpbmNsdWRpbmcgb3B0aW9u
YWwKKyAgICBwYXJhbWV0ZXJzLiBIb3dldmVyLCByZXN0IHBhcmFtZXRlcnMgc2hvd24gdXNpbmcg
dGhlIGZvcm0g4oCcLi4ubmFtZeKAnQorICAgIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIGRlZmF1
bHQgYXJndW1lbnQgY291bnQuCisKKyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhl
IGxlbmd0aCBwcm9wZXJ0eSBvZiBhIGJ1aWx0LWluIEZ1bmN0aW9uCisgICAgb2JqZWN0IGhhcyB0
aGUgYXR0cmlidXRlcyB7IFtbV3JpdGFibGVdXTogZmFsc2UsIFtbRW51bWVyYWJsZV1dOiBmYWxz
ZSwKKyAgICBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczogW3Byb3BlcnR5SGVs
cGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2ZXJp
ZnlQcm9wZXJ0eShBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIsICdsZW5ndGgnLCB7Cisg
IHZhbHVlOiAwLAorICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBj
b25maWd1cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9uYW1lLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9u
YW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjJiNzQ3MDViOTY0MmZlNGIyMTVhNjBmM2E4NTUxODE2MWU1NWE5
OTAKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJy
YXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL25hbWUuanMKQEAgLTAsMCArMSwyNyBAQAorLy8g
Q29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3Rv
dHlwZS50cmFuc2ZlcgorZGVzY3JpcHRpb246ID4KKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRy
YW5zZmVyLm5hbWUgaXMgInRyYW5zZmVyIi4KK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90
eXBlLnRyYW5zZmVyICggWyBuZXdMZW5ndGggXSApCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFy
ZCBCdWlsdC1pbiBPYmplY3RzOgorICAgIEV2ZXJ5IGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCwg
aW5jbHVkaW5nIGNvbnN0cnVjdG9ycywgdGhhdCBpcyBub3QKKyAgICBpZGVudGlmaWVkIGFzIGFu
IGFub255bW91cyBmdW5jdGlvbiBoYXMgYSBuYW1lIHByb3BlcnR5IHdob3NlIHZhbHVlCisgICAg
aXMgYSBTdHJpbmcuCisKKyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhlIG5hbWUg
cHJvcGVydHkgb2YgYSBidWlsdC1pbiBGdW5jdGlvbgorICAgIG9iamVjdCwgaWYgaXQgZXhpc3Rz
LCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06IGZhbHNlLAorICAgIFtbRW51bWVy
YWJsZV1dOiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9LgorZmVhdHVyZXM6IFtyZXNp
emFibGUtYXJyYXlidWZmZXJdCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorLS0tKi8K
KwordmVyaWZ5UHJvcGVydHkoQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyLCAnbmFtZScs
IHsKKyAgdmFsdWU6ICd0cmFuc2ZlcicsCisgIGVudW1lcmFibGU6IGZhbHNlLAorICB3cnRpYWJs
ZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL25l
dy1sZW5ndGgtZXhjZXNzaXZlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Fy
cmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9uZXctbGVuZ3RoLWV4Y2Vzc2l2ZS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hOWY3NDM5MzYzMTVkNjBkN2M1Y2RiODI2NjgwMzg2NDUwYTU4NDMyCi0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3By
b3RvdHlwZS90cmFuc2Zlci9uZXctbGVuZ3RoLWV4Y2Vzc2l2ZS5qcwpAQCAtMCwwICsxLDI4IEBA
CisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2Ug
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXlidWZmZXIu
cHJvdG90eXBlLnRyYW5zZmVyCitkZXNjcmlwdGlvbjogPgorICBUaHJvd3MgYSBSYW5nZUVycm9y
IHRoZSBuZXdMZW5ndGggdmFsdWUgaXMgdG9vIGxhcmdlIHRvIGNyZWF0ZSBhIG5ldworICBBcnJh
eUJ1ZmZlci4KK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyICggWyBu
ZXdMZW5ndGggXSApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZv
cm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgorICAzLiBJ
ZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2Vw
dGlvbi4KKyAgNC4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVF
cnJvciBleGNlcHRpb24uCisgIDUuIElmIG5ld0xlbmd0aCBpcyB1bmRlZmluZWQsIGxldCBuZXdC
eXRlTGVuZ3RoIGJlCisgICAgIE8uW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXS4KKyAgNi4gRWxz
ZSwgbGV0IG5ld0J5dGVMZW5ndGggYmUgPyBUb0ludGVnZXJPckluZmluaXR5KG5ld0xlbmd0aCku
CisgIDcuIExldCBuZXcgYmUgPyBDb25zdHJ1Y3QoJUFycmF5QnVmZmVyJSwgwqsg8J2UvShuZXdC
eXRlTGVuZ3RoKSDCuykuCisgIFsuLi5dCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZl
cl0KKy0tLSovCisKK3ZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcigwKTsKKworYXNzZXJ0LnRocm93
cyhSYW5nZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgLy8gTWF0aC5wb3coMiwgNTMpID0gOTAwNzE5
OTI1NDc0MDk5MgorICBhYi50cmFuc2Zlcig5MDA3MTk5MjU0NzQwOTkyKTsKK30pOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlw
ZS90cmFuc2Zlci9uZXctbGVuZ3RoLW5vbi1udW1iZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL25ldy1sZW5ndGgtbm9u
LW51bWJlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iY2ViNzU1MTEwYTk1ZGFjMmNlODZjY2MwNTA0MTk1MDU5
NjNhYzljCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci9uZXctbGVuZ3RoLW5vbi1udW1iZXIuanMK
QEAgLTAsMCArMSwzOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDog
c2VjLWFycmF5YnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlcgorZGVzY3JpcHRpb246IFRocm93cyBh
IFR5cGVFcnJvciBpZiBwcm92aWRlZCBsZW5ndGggY2Fubm90IGJlIGNvZXJjZWQgdG8gYSBudW1i
ZXIKK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyICggWyBuZXdMZW5n
dGggXSApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBS
ZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgorICAzLiBJZiBJc1No
YXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4K
KyAgNC4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBl
eGNlcHRpb24uCisgIDUuIElmIG5ld0xlbmd0aCBpcyB1bmRlZmluZWQsIGxldCBuZXdCeXRlTGVu
Z3RoIGJlCisgICAgIE8uW1tBcnJheUJ1ZmZlckJ5dGVMZW5ndGhdXS4KKyAgNi4gRWxzZSwgbGV0
IG5ld0J5dGVMZW5ndGggYmUgPyBUb0ludGVnZXJPckluZmluaXR5KG5ld0xlbmd0aCkuCisgIFsu
Li5dCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBsb2cg
PSBbXTsKK3ZhciBuZXdMZW5ndGggPSB7CisgIHRvU3RyaW5nOiBmdW5jdGlvbigpIHsKKyAgICBs
b2cucHVzaCgndG9TdHJpbmcnKTsKKyAgICByZXR1cm4ge307CisgIH0sCisgIHZhbHVlT2Y6IGZ1
bmN0aW9uKCkgeworICAgIGxvZy5wdXNoKCd2YWx1ZU9mJyk7CisgICAgcmV0dXJuIHt9OworICB9
Cit9OwordmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDApOworCithc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgZnVuY3Rpb24oKSB7CisgIGFiLnRyYW5zZmVyKG5ld0xlbmd0aCk7Cit9KTsKKworYXNz
ZXJ0LnNhbWVWYWx1ZShsb2cubGVuZ3RoLCAyKTsKK2Fzc2VydC5zYW1lVmFsdWUobG9nWzBdLCAn
dmFsdWVPZicpOworYXNzZXJ0LnNhbWVWYWx1ZShsb2dbMV0sICd0b1N0cmluZycpOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlw
ZS90cmFuc2Zlci9ub25jb25zdHJ1Y3Rvci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvbm9uY29uc3RydWN0b3IuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMWRmOWMyMGJmY2QwNDEzZWI3YTA3MGE5ZDdlNDY4OWZjOWM2NDdhZgotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvdHJhbnNmZXIvbm9uY29uc3RydWN0b3IuanMKQEAgLTAsMCArMSwyNSBAQAorLy8g
Q29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWFycmF5YnVmZmVyLnByb3Rv
dHlwZS50cmFuc2ZlcgorZGVzY3JpcHRpb246ID4KKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRy
YW5zZmVyIGlzIG5vdCBhIGNvbnN0cnVjdG9yIGZ1bmN0aW9uLgoraW5mbzogfAorICBBcnJheUJ1
ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBbIG5ld0xlbmd0aCBdICkKKworICAxNyBFQ01BU2Ny
aXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVjdHM6CisgICAgQnVpbHQtaW4gZnVuY3Rpb24gb2Jq
ZWN0cyB0aGF0IGFyZSBub3QgaWRlbnRpZmllZCBhcyBjb25zdHJ1Y3RvcnMgZG8gbm90CisgICAg
aW1wbGVtZW50IHRoZSBbW0NvbnN0cnVjdF1dIGludGVybmFsIG1ldGhvZCB1bmxlc3Mgb3RoZXJ3
aXNlIHNwZWNpZmllZAorICAgIGluIHRoZSBkZXNjcmlwdGlvbiBvZiBhIHBhcnRpY3VsYXIgZnVu
Y3Rpb24uCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2Vy
dC5zYW1lVmFsdWUoCisgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBcnJh
eUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIsICdwcm90b3R5cGUnKSwKKyAgZmFsc2UKKyk7CisK
K3ZhciBhcnJheUJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcig4KTsKK2Fzc2VydC50aHJvd3MoVHlw
ZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgbmV3IGFycmF5QnVmZmVyLnRyYW5zZmVyKCk7Cit9KTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9w
cm90b3R5cGUvdHJhbnNmZXIvdGhpcy1pcy1kZXRhY2hlZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvdGhpcy1pcy1kZXRh
Y2hlZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40MzBmMTgwNzgwODM0OGE4Mzk2NzE2NDVlMTI1YmFiZDM0MzI0
ZTdlCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Fy
cmF5QnVmZmVyL3Byb3RvdHlwZS90cmFuc2Zlci90aGlzLWlzLWRldGFjaGVkLmpzCkBAIC0wLDAg
KzEsMjcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJh
eWJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBhIFR5
cGVFcnJvciBpZiBgdGhpc2AgZG9lcyBub3QgaGF2ZSBhbiBbW0FycmF5QnVmZmVyRGF0YV1dIGlu
dGVybmFsIHNsb3QuCitpbmZvOiB8CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciAo
IFsgbmV3TGVuZ3RoIF0gKQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQ
ZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAg
My4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aHJvdyBhIFR5cGVFcnJvciBl
eGNlcHRpb24uCisgIDQuIElmIElzRGV0YWNoZWRCdWZmZXIoTykgaXMgdHJ1ZSwgdGhyb3cgYSBU
eXBlRXJyb3IgZXhjZXB0aW9uLgorICBbLi4uXQoraW5jbHVkZXM6IFtkZXRhY2hBcnJheUJ1ZmZl
ci5qc10KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0
LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyLCAnZnVuY3Rp
b24nKTsKKwordmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDEpOworCiskREVUQUNIQlVGRkVSKGFi
KTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBhYi50cmFuc2Zl
cigpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJy
YXlCdWZmZXIvcHJvdG90eXBlL3RyYW5zZmVyL3RoaXMtaXMtbm90LWFycmF5YnVmZmVyLW9iamVj
dC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5
cGUvdHJhbnNmZXIvdGhpcy1pcy1ub3QtYXJyYXlidWZmZXItb2JqZWN0LmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjU3MWJkMWIyMDg5MDg2NjM5MTEzY2VkNWY2MTgwNDYwNDVhMTdiYmIKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvQXJyYXlCdWZmZXIvcHJvdG90eXBl
L3RyYW5zZmVyL3RoaXMtaXMtbm90LWFycmF5YnVmZmVyLW9iamVjdC5qcwpAQCAtMCwwICsxLDI4
IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vu
c2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtYXJyYXlidWZm
ZXIucHJvdG90eXBlLnRyYW5zZmVyCitkZXNjcmlwdGlvbjogPgorICBUaHJvd3MgYSBUeXBlRXJy
b3IgaWYgYHRoaXNgIGRvZXMgbm90IGhhdmUgYW4gW1tBcnJheUJ1ZmZlckRhdGFdXSBpbnRlcm5h
bCBzbG90LgoraW5mbzogfAorICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIgKCBbIG5l
d0xlbmd0aCBdICkKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9y
bSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIFsuLi5d
CitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1l
VmFsdWUodHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2ZlciwgJ2Z1bmN0aW9uJyk7
CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZmZXIu
cHJvdG90eXBlLnRyYW5zZmVyKCk7Cit9LCAnYHRoaXNgIHZhbHVlIGlzIHRoZSBBcnJheUJ1ZmZl
ciBwcm90b3R5cGUnKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgewor
ICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIuY2FsbCh7fSk7Cit9LCAnYHRoaXNgIHZh
bHVlIGlzIGFuIG9iamVjdCcpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24o
KSB7CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2Zlci5jYWxsKFtdKTsKK30sICdgdGhp
c2AgdmFsdWUgaXMgYW4gYXJyYXknKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvdGhpcy1pcy1ub3Qtb2Jq
ZWN0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3Rv
dHlwZS90cmFuc2Zlci90aGlzLWlzLW5vdC1vYmplY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2M1NDAxZjNm
NzljMThhODBjY2EyODlkMzZmMWYyMmJjYTg4NWUzNAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIv
dGhpcy1pcy1ub3Qtb2JqZWN0LmpzCkBAIC0wLDAgKzEsNDQgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIK
K2Rlc2NyaXB0aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYHRoaXNgIHZhbHVlaXMgbm90IGFu
IG9iamVjdC4KK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyICggWyBu
ZXdMZW5ndGggXSApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZv
cm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgorICBbLi4u
XQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXIsIFN5bWJvbCwgQmlnSW50XQorLS0t
Ki8KKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5z
ZmVyLCAiZnVuY3Rpb24iKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkg
eworICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIuY2FsbCh1bmRlZmluZWQpOworfSwg
ImB0aGlzYCB2YWx1ZSBpcyB1bmRlZmluZWQiKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3Is
IGZ1bmN0aW9uKCkgeworICBBcnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIuY2FsbChudWxs
KTsKK30sICJgdGhpc2AgdmFsdWUgaXMgbnVsbCIpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJv
ciwgZnVuY3Rpb24oKSB7CisgIEFycmF5QnVmZmVyLnByb3RvdHlwZS50cmFuc2Zlci5jYWxsKHRy
dWUpOworfSwgImB0aGlzYCB2YWx1ZSBpcyBCb29sZWFuIik7CisKK2Fzc2VydC50aHJvd3MoVHlw
ZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyLmNh
bGwoIiIpOworfSwgImB0aGlzYCB2YWx1ZSBpcyBTdHJpbmciKTsKKwordmFyIHN5bWJvbCA9IFN5
bWJvbCgpOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBBcnJheUJ1
ZmZlci5wcm90b3R5cGUudHJhbnNmZXIuY2FsbChzeW1ib2wpOworfSwgImB0aGlzYCB2YWx1ZSBp
cyBTeW1ib2wiKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBB
cnJheUJ1ZmZlci5wcm90b3R5cGUudHJhbnNmZXIuY2FsbCgxKTsKK30sICJgdGhpc2AgdmFsdWUg
aXMgTnVtYmVyIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAg
QXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyLmNhbGwoMW4pOworfSwgImB0aGlzYCB2YWx1
ZSBpcyBiaWdpbnQiKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9BcnJheUJ1ZmZlci9wcm90b3R5cGUvdHJhbnNmZXIvdGhpcy1pcy1zaGFyZWRhcnJheWJ1ZmZl
ci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9BcnJheUJ1ZmZlci9wcm90b3R5
cGUvdHJhbnNmZXIvdGhpcy1pcy1zaGFyZWRhcnJheWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MWUx
YjE0NDQwNmJmNmE3NTJmOTFkNWI5MjFkOGMwNmJkYzAzZTIwCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0FycmF5QnVmZmVyL3Byb3RvdHlwZS90cmFu
c2Zlci90aGlzLWlzLXNoYXJlZGFycmF5YnVmZmVyLmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1hcnJheWJ1ZmZlci5wcm90b3R5
cGUudHJhbnNmZXIKK2Rlc2NyaXB0aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYHRoaXNgIHZh
bHVlIGlzIGEgU2hhcmVkQXJyYXlCdWZmZXIKK2luZm86IHwKKyAgQXJyYXlCdWZmZXIucHJvdG90
eXBlLnRyYW5zZmVyICggWyBuZXdMZW5ndGggXSApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMg
dmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZm
ZXJEYXRhXV0pLgorICAzLiBJZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIHRydWUsIHRocm93
IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbU2hhcmVkQXJyYXlC
dWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBzYWIgPSBuZXcgU2hh
cmVkQXJyYXlCdWZmZXIoMCk7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigp
IHsKKyAgQXJyYXlCdWZmZXIucHJvdG90eXBlLnRyYW5zZmVyLmNhbGwoc2FiKTsKK30sICdgdGhp
c2AgdmFsdWUgY2Fubm90IGJlIGEgU2hhcmVkQXJyYXlCdWZmZXInKTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvYnl0ZUxlbmd0
aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvcmVzaXphYmxlLWFycmF5LWJ1
ZmZlci1hdXRvLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY0MmNjZjQ1YTYxZTc4MmExMmViZjYxMzU2MWI2Nzlm
MzI0ZWE4MzQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvRGF0YVZpZXcvcHJvdG90eXBlL2J5dGVMZW5ndGgvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1h
dXRvLmpzCkBAIC0wLDAgKzEsNDcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1nZXQtZGF0YXZpZXcucHJvdG90eXBlLmJ5dGVsZW5ndGgKK2Rlc2NyaXB0aW9u
OiB8CisgIHRocm93cyBhIFR5cGVFcnJvciBpZiB0aGUgdW5kZXJseWluZyBBcnJheUJ1ZmZlciBp
cyByZXNpemVkIGJleW9uZCB0aGUKKyAgYm91bmRhcnkgb2YgdGhlIGR5bmFtaWNhbGx5LXNpemVk
IERhdGFWaWV3IGluc3RhbmNlCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKKy8vIElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxsb3dlZCBieSB0aGUg
c3BlY2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxsIGJlIGlkZW50aWNh
bCB0byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhh
cyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRpb24gcHJldmVudHMg
dGhpcyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2ggaGF2ZSBub3QgaW1w
bGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5QnVmZmVy
LnByb3RvdHlwZS5yZXNpemUsICJmdW5jdGlvbiIpOworCit2YXIgYWIgPSBuZXcgQXJyYXlCdWZm
ZXIoNCwge21heEJ5dGVMZW5ndGg6IDV9KTsKK3ZhciBkYXRhVmlldyA9IG5ldyBEYXRhVmlldyhh
YiwgMSk7Cit2YXIgZXhwZWN0ZWQgPSAzOworCithc3NlcnQuc2FtZVZhbHVlKGRhdGFWaWV3LmJ5
dGVMZW5ndGgsIGV4cGVjdGVkKTsKKwordHJ5IHsKKyAgYWIucmVzaXplKDUpOworICBleHBlY3Rl
ZCA9IDQ7Cit9IGNhdGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVlKGRhdGFWaWV3LmJ5dGVM
ZW5ndGgsIGV4cGVjdGVkLCAiZm9sbG93aW5nIGdyb3ciKTsKKwordHJ5IHsKKyAgYWIucmVzaXpl
KDMpOworICBleHBlY3RlZCA9IDI7Cit9IGNhdGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVl
KGRhdGFWaWV3LmJ5dGVMZW5ndGgsIGV4cGVjdGVkLCAiZm9sbG93aW5nIHNocmluayAod2l0aGlu
IGJvdW5kcykiKTsKKwordHJ5IHsKKyAgYWIucmVzaXplKDEpOworICBleHBlY3RlZCA9IFR5cGVF
cnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWQgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fz
c2VydC50aHJvd3MoZXhwZWN0ZWQsIGZ1bmN0aW9uKCkgeworICBkYXRhVmlldy5ieXRlTGVuZ3Ro
OworICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCd0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNj
ZXNzZnVsbHknKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRlTGVuZ3RoL3Jlc2l6YWJsZS1hcnJheS1idWZmZXIt
Zml4ZWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90
eXBlL2J5dGVMZW5ndGgvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mZGM0YWI1YjU3YzNjZmEzZTI3ODE2YTYwYjNhODQzNjU1OWVlZDcxCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9i
eXRlTGVuZ3RoL3Jlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMKQEAgLTAsMCArMSw0NSBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1kYXRhdmll
dy5wcm90b3R5cGUuYnl0ZWxlbmd0aAorZGVzY3JpcHRpb246IHwKKyAgdGhyb3dzIGEgVHlwZUVy
cm9yIGlmIHRoZSB1bmRlcmx5aW5nIEFycmF5QnVmZmVyIGlzIHJlc2l6ZWQgYmV5b25kIHRoZQor
ICBib3VuZGFyeSBvZiB0aGUgZml4ZWQtc2l6ZWQgRGF0YVZpZXcgaW5zdGFuY2UKK2ZlYXR1cmVz
OiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworLy8gSWYgdGhlIGhvc3QgY2hvb3Nl
cyB0byB0aHJvdyBhcyBhbGxvd2VkIGJ5IHRoZSBzcGVjaWZpY2F0aW9uLCB0aGUgb2JzZXJ2ZWQK
Ky8vIGJlaGF2aW9yIHdpbGwgYmUgaWRlbnRpY2FsIHRvIHRoZSBjYXNlIHdoZXJlIGBBcnJheUJ1
ZmZlci5wcm90b3R5cGUucmVzaXplYAorLy8gaGFzIG5vdCBiZWVuIGltcGxlbWVudGVkLiBUaGUg
Zm9sbG93aW5nIGFzc2VydGlvbiBwcmV2ZW50cyB0aGlzIHRlc3QgZnJvbQorLy8gcGFzc2luZyBp
biBydW50aW1lcyB3aGljaCBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0aGUgbWV0aG9kLgorYXNzZXJ0
LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwgImZ1bmN0aW9u
Iik7CisKK3ZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcig0LCB7bWF4Qnl0ZUxlbmd0aDogNX0pOwor
dmFyIGRhdGFWaWV3ID0gbmV3IERhdGFWaWV3KGFiLCAxLCAyKTsKKworYXNzZXJ0LnNhbWVWYWx1
ZShkYXRhVmlldy5ieXRlTGVuZ3RoLCAyKTsKKwordHJ5IHsKKyAgYWIucmVzaXplKDUpOworfSBj
YXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShkYXRhVmlldy5ieXRlTGVuZ3RoLCAyLCAi
Zm9sbG93aW5nIGdyb3ciKTsKKwordHJ5IHsKKyAgYWIucmVzaXplKDMpOworfSBjYXRjaCAoXykg
e30KKworYXNzZXJ0LnNhbWVWYWx1ZShkYXRhVmlldy5ieXRlTGVuZ3RoLCAyLCAiZm9sbG93aW5n
IHNocmluayAod2l0aGluIGJvdW5kcykiKTsKKwordmFyIGV4cGVjdGVkRXJyb3I7Cit0cnkgewor
ICBhYi5yZXNpemUoMik7CisgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9IGNhdGNoIChf
KSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2VydC50aHJvd3Mo
ZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIGRhdGFWaWV3LmJ5dGVMZW5ndGg7CisgIHRo
cm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxs
eScpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0
YVZpZXcvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRl
T2Zmc2V0L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItYXV0by5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jOWQ4MGI2
ODQ5NWQ3NzFkZGNjNzhlODEyZmI1OTY4YTYxNGY2NjdkCi0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRlT2Zmc2V0
L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItYXV0by5qcwpAQCAtMCwwICsxLDQ1IEBACisvLyBDb3B5
cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LWRhdGF2aWV3LnByb3RvdHlw
ZS5ieXRlb2Zmc2V0CitkZXNjcmlwdGlvbjogfAorICB0aHJvd3MgYSBUeXBlRXJyb3IgaWYgdGhl
IHVuZGVybHlpbmcgQXJyYXlCdWZmZXIgaXMgcmVzaXplZCBiZXlvbmQgdGhlCisgIGJvdW5kYXJ5
IG9mIHRoZSBkeW5hbWljYWxseS1zaXplZCBEYXRhVmlldyBpbnN0YW5jZQorZmVhdHVyZXM6IFty
ZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCisvLyBJZiB0aGUgaG9zdCBjaG9vc2VzIHRv
IHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBvYnNlcnZlZAorLy8g
YmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUgYEFycmF5QnVmZmVy
LnByb3RvdHlwZS5yZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuIFRoZSBmb2xs
b3dpbmcgYXNzZXJ0aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBwYXNzaW5nIGluIHJ1
bnRpbWVzIHdoaWNoIGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2QuCithc3NlcnQuc2Ft
ZVZhbHVlKHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAiZnVuY3Rpb24iKTsK
KwordmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDQsIHttYXhCeXRlTGVuZ3RoOiA1fSk7Cit2YXIg
ZGF0YVZpZXcgPSBuZXcgRGF0YVZpZXcoYWIsIDEpOworCithc3NlcnQuc2FtZVZhbHVlKGRhdGFW
aWV3LmJ5dGVPZmZzZXQsIDEpOworCit0cnkgeworICBhYi5yZXNpemUoNSk7Cit9IGNhdGNoIChf
KSB7fQorCithc3NlcnQuc2FtZVZhbHVlKGRhdGFWaWV3LmJ5dGVPZmZzZXQsIDEsICJmb2xsb3dp
bmcgZ3JvdyIpOworCit0cnkgeworICBhYi5yZXNpemUoMyk7Cit9IGNhdGNoIChfKSB7fQorCith
c3NlcnQuc2FtZVZhbHVlKGRhdGFWaWV3LmJ5dGVPZmZzZXQsIDEsICJmb2xsb3dpbmcgc2hyaW5r
ICh3aXRoaW4gYm91bmRzKSIpOworCit2YXIgZXhwZWN0ZWRFcnJvcjsKK3RyeSB7CisgIGFiLnJl
c2l6ZSgxKTsKKyAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAg
ZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKK30KKworYXNzZXJ0LnRocm93cyhleHBlY3Rl
ZEVycm9yLCBmdW5jdGlvbigpIHsKKyAgZGF0YVZpZXcuYnl0ZU9mZnNldDsKKyAgdGhyb3cgbmV3
IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlvbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7Cit9
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9w
cm90b3R5cGUvYnl0ZU9mZnNldC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWZpeGVkLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9ieXRlT2Zmc2V0
L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTM4MDc0Mzk4ZGVj
MjM1Zjg2NDFhMmViN2IwYTYyNGE5YmFlMDQ2ZgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvYnl0ZU9mZnNldC9yZXNp
emFibGUtYXJyYXktYnVmZmVyLWZpeGVkLmpzCkBAIC0wLDAgKzEsNDUgQEAKKy8vIENvcHlyaWdo
dCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1nZXQtZGF0YXZpZXcucHJvdG90eXBlLmJ5
dGVvZmZzZXQKK2Rlc2NyaXB0aW9uOiB8CisgIHRocm93cyBhIFR5cGVFcnJvciBpZiB0aGUgdW5k
ZXJseWluZyBBcnJheUJ1ZmZlciBpcyByZXNpemVkIGJleW9uZCB0aGUKKyAgYm91bmRhcnkgb2Yg
dGhlIGZpeGVkLXNpemVkIERhdGFWaWV3IGluc3RhbmNlCitmZWF0dXJlczogW3Jlc2l6YWJsZS1h
cnJheWJ1ZmZlcl0KKy0tLSovCisKKy8vIElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMg
YWxsb3dlZCBieSB0aGUgc3BlY2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3
aWxsIGJlIGlkZW50aWNhbCB0byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBl
LnJlc2l6ZWAKKy8vIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3Nl
cnRpb24gcHJldmVudHMgdGhpcyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hp
Y2ggaGF2ZSBub3QgaW1wbGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlw
ZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsICJmdW5jdGlvbiIpOworCit2YXIgYWIg
PSBuZXcgQXJyYXlCdWZmZXIoNCwge21heEJ5dGVMZW5ndGg6IDV9KTsKK3ZhciBkYXRhVmlldyA9
IG5ldyBEYXRhVmlldyhhYiwgMSwgMik7CisKK2Fzc2VydC5zYW1lVmFsdWUoZGF0YVZpZXcuYnl0
ZU9mZnNldCwgMSk7CisKK3RyeSB7CisgIGFiLnJlc2l6ZSg1KTsKK30gY2F0Y2ggKF8pIHt9CisK
K2Fzc2VydC5zYW1lVmFsdWUoZGF0YVZpZXcuYnl0ZU9mZnNldCwgMSwgImZvbGxvd2luZyBncm93
Iik7CisKK3RyeSB7CisgIGFiLnJlc2l6ZShCUEUgKiAzKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fz
c2VydC5zYW1lVmFsdWUoZGF0YVZpZXcuYnl0ZU9mZnNldCwgMSwgImZvbGxvd2luZyBzaHJpbmsg
KHdpdGhpbiBib3VuZHMpIik7CisKK3ZhciBleHBlY3RlZEVycm9yOwordHJ5IHsKKyAgYWIucmVz
aXplKDIpOworICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOworfSBjYXRjaCAoXykgeworICBl
eHBlY3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworfQorCithc3NlcnQudGhyb3dzKGV4cGVjdGVk
RXJyb3IsIGZ1bmN0aW9uKCkgeworICBkYXRhVmlldy5ieXRlT2Zmc2V0OworICB0aHJvdyBuZXcg
VGVzdDI2MkVycm9yKCd0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3By
b3RvdHlwZS9nZXRCaWdJbnQ2NC9yZXNpemFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRCaWdJbnQ2NC9yZXNpemFibGUt
YnVmZmVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM2MjUwMDIzYjM4NDI1MDI4OTMyZGU3YjRjZWE2MGU0YTVi
Y2UyYjMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvcHJvdG90eXBlL2dldEJpZ0ludDY0L3Jlc2l6YWJsZS1idWZmZXIuanMKQEAgLTAs
MCArMSw0MSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWRh
dGF2aWV3LnByb3RvdHlwZS5nZXRiaWdpbnQ2NAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVF
cnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6IFtEYXRhVmlldywgQXJy
YXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFs
dWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24n
LAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwordmFy
IGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2YXIg
c2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0cnkgeworICBidWZmZXIu
cmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdl
dEJpZ0ludDY0KDApLCAwbiwgJ2ZvbGxvd2luZyBncm93Jyk7CisKK3RyeSB7CisgIGJ1ZmZlci5y
ZXNpemUoMTYpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuZ2V0
QmlnSW50NjQoMCksIDBuLCAnZm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcyknKTsKKwor
dmFyIGV4cGVjdGVkRXJyb3I7Cit0cnkgeworICBidWZmZXIucmVzaXplKDgpOworICBleHBlY3Rl
ZEVycm9yID0gVHlwZUVycm9yOworfSBjYXRjaCAoXykgeworICBleHBlY3RlZEVycm9yID0gVGVz
dDI2MkVycm9yOworfQorCithc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsIGZ1bmN0aW9uKCkg
eworICBzYW1wbGUuZ2V0QmlnSW50NjQoMCk7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3Ro
ZSBvcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworfSk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEJpZ1Vp
bnQ2NC9yZXNpemFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRCaWdVaW50NjQvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41MWUwMDkyMDUyYjQ3ZmIxMTFiMWQ3MmZmOTU4ZTBhYWM4NDYyZWYwCi0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3Rv
dHlwZS9nZXRCaWdVaW50NjQvcmVzaXphYmxlLWJ1ZmZlci5qcwpAQCAtMCwwICsxLDQxIEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZGF0YXZpZXcucHJvdG90
eXBlLmdldGJpZ3VpbnQ2NAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBpZiBidWZm
ZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6IFtEYXRhVmlldywgQXJyYXlCdWZmZXIsIHJl
c2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVv
ZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVt
ZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwordmFyIGJ1ZmZlciA9IG5l
dyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3
IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDMyKTsK
K30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdldEJpZ1VpbnQ2NCgw
KSwgMG4sICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDE2KTsK
K30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdldEJpZ1VpbnQ2NCgw
KSwgMG4sICdmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKScpOworCit2YXIgZXhwZWN0
ZWRFcnJvcjsKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVkRXJyb3IgPSBU
eXBlRXJyb3I7Cit9IGNhdGNoIChfKSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7
Cit9CisKK2Fzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhbXBs
ZS5nZXRCaWdVaW50NjQoMCk7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVyYXRp
b24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEZsb2F0MzIvcmVzaXph
YmxlLWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9w
cm90b3R5cGUvZ2V0RmxvYXQzMi9yZXNpemFibGUtYnVmZmVyLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg3ZjE4
NzhlYTg3ZGIzZTZkZTk1MzczZjZjYTZjMjhlZjJjY2FjMDAKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEZsb2F0
MzIvcmVzaXphYmxlLWJ1ZmZlci5qcwpAQCAtMCwwICsxLDQxIEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZGF0YXZpZXcucHJvdG90eXBlLmdldGZsb2F0MzIK
K2Rlc2NyaXB0aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYnVmZmVyIGlzIG91dC1vZi1ib3Vu
ZHMKK2ZlYXR1cmVzOiBbRGF0YVZpZXcsIEFycmF5QnVmZmVyLCByZXNpemFibGUtYXJyYXlidWZm
ZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJv
dG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIu
cHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3ZhciBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIoMjQs
IHttYXhCeXRlTGVuZ3RoOiAzMn0pOwordmFyIHNhbXBsZSA9IG5ldyBEYXRhVmlldyhidWZmZXIs
IDAsIDE2KTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgzMik7Cit9IGNhdGNoIChfKSB7fQor
Cithc3NlcnQuc2FtZVZhbHVlKHNhbXBsZS5nZXRGbG9hdDMyKDApLCAwLCAnZm9sbG93aW5nIGdy
b3cnKTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgxNik7Cit9IGNhdGNoIChfKSB7fQorCith
c3NlcnQuc2FtZVZhbHVlKHNhbXBsZS5nZXRGbG9hdDMyKDApLCAwLCAnZm9sbG93aW5nIHNocmlu
ayAod2l0aGluIGJvdW5kcyknKTsKKwordmFyIGV4cGVjdGVkRXJyb3I7Cit0cnkgeworICBidWZm
ZXIucmVzaXplKDgpOworICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOworfSBjYXRjaCAoXykg
eworICBleHBlY3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworfQorCithc3NlcnQudGhyb3dzKGV4
cGVjdGVkRXJyb3IsIGZ1bmN0aW9uKCkgeworICBzYW1wbGUuZ2V0RmxvYXQzMigwKTsKKyAgdGhy
b3cgbmV3IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlvbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5
Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRh
Vmlldy9wcm90b3R5cGUvZ2V0RmxvYXQ2NC9yZXNpemFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRGbG9hdDY0L3Jlc2l6
YWJsZS1idWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzdhZDU3YjRkYWU0ZDVmYWFkZmZkNDRiZjZiMDQ5
Yjc4MTdkNjg1MwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0RmxvYXQ2NC9yZXNpemFibGUtYnVmZmVyLmpzCkBA
IC0wLDAgKzEsNDEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRo
b3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNl
Yy1kYXRhdmlldy5wcm90b3R5cGUuZ2V0ZmxvYXQ2NAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5
cGVFcnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6IFtEYXRhVmlldywg
QXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1l
VmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rp
b24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwor
dmFyIGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2
YXIgc2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0cnkgeworICBidWZm
ZXIucmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxl
LmdldEZsb2F0NjQoMCksIDAsICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkgeworICBidWZmZXIu
cmVzaXplKDE2KTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdl
dEZsb2F0NjQoMCksIDAsICdmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKScpOworCit2
YXIgZXhwZWN0ZWRFcnJvcjsKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVk
RXJyb3IgPSBUeXBlRXJyb3I7Cit9IGNhdGNoIChfKSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0
MjYyRXJyb3I7Cit9CisKK2Fzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7
CisgIHNhbXBsZS5nZXRGbG9hdDY0KDApOworICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCd0aGUg
b3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJbnQxNi9y
ZXNpemFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFW
aWV3L3Byb3RvdHlwZS9nZXRJbnQxNi9yZXNpemFibGUtYnVmZmVyLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNh
ZjY2NDYxZGUzYWFiY2ZiMzE4Y2M1Yjc1Y2YwMzA3ZDE1NGU5YjIKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldElu
dDE2L3Jlc2l6YWJsZS1idWZmZXIuanMKQEAgLTAsMCArMSw0MSBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWRhdGF2aWV3LnByb3RvdHlwZS5nZXRpbnQxNgor
ZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5k
cworZmVhdHVyZXM6IFtEYXRhVmlldywgQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZl
cl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90
b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5w
cm90b3R5cGUucmVzaXplJworKTsKKwordmFyIGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwg
e21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwg
MCwgMTYpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisK
K2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdldEludDE2KDApLCAwLCAnZm9sbG93aW5nIGdyb3cn
KTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgxNik7Cit9IGNhdGNoIChfKSB7fQorCithc3Nl
cnQuc2FtZVZhbHVlKHNhbXBsZS5nZXRJbnQxNigwKSwgMCwgJ2ZvbGxvd2luZyBzaHJpbmsgKHdp
dGhpbiBib3VuZHMpJyk7CisKK3ZhciBleHBlY3RlZEVycm9yOwordHJ5IHsKKyAgYnVmZmVyLnJl
c2l6ZSg4KTsKKyAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAg
ZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKK30KKworYXNzZXJ0LnRocm93cyhleHBlY3Rl
ZEVycm9yLCBmdW5jdGlvbigpIHsKKyAgc2FtcGxlLmdldEludDE2KDApOworICB0aHJvdyBuZXcg
VGVzdDI2MkVycm9yKCd0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3By
b3RvdHlwZS9nZXRJbnQzMi9yZXNpemFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJbnQzMi9yZXNpemFibGUtYnVmZmVy
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjkxM2NlNjE5NTkxOWE0MjFjYzhjYjkyNTcxYmNmNTRkMjZiNjk0NTQK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZp
ZXcvcHJvdG90eXBlL2dldEludDMyL3Jlc2l6YWJsZS1idWZmZXIuanMKQEAgLTAsMCArMSw0MSBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWRhdGF2aWV3LnBy
b3RvdHlwZS5nZXRpbnQzMgorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBpZiBidWZm
ZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6IFtEYXRhVmlldywgQXJyYXlCdWZmZXIsIHJl
c2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVv
ZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVt
ZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwordmFyIGJ1ZmZlciA9IG5l
dyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3
IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDMyKTsK
K30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdldEludDMyKDApLCAw
LCAnZm9sbG93aW5nIGdyb3cnKTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgxNik7Cit9IGNh
dGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVlKHNhbXBsZS5nZXRJbnQzMigwKSwgMCwgJ2Zv
bGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpJyk7CisKK3ZhciBleHBlY3RlZEVycm9yOwor
dHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSg4KTsKKyAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsK
K30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKK30KKworYXNz
ZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCBmdW5jdGlvbigpIHsKKyAgc2FtcGxlLmdldEludDMy
KDApOworICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCd0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCBz
dWNjZXNzZnVsbHknKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJbnQ4L3Jlc2l6YWJsZS1idWZmZXIuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldEludDgv
cmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYjRiZDJlNjcyM2U3MDM1MGNjZDcwYjAx
ZTNiOGM5M2MwMzIwOWEwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRJbnQ4L3Jlc2l6YWJsZS1idWZmZXIuanMK
QEAgLTAsMCArMSw0MSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDog
c2VjLWRhdGF2aWV3LnByb3RvdHlwZS5nZXRpbnQ4CitkZXNjcmlwdGlvbjogVGhyb3dzIGEgVHlw
ZUVycm9yIGlmIGJ1ZmZlciBpcyBvdXQtb2YtYm91bmRzCitmZWF0dXJlczogW0RhdGFWaWV3LCBB
cnJheUJ1ZmZlciwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVW
YWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlv
bicsCisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit2
YXIgYnVmZmVyID0gbmV3IEFycmF5QnVmZmVyKDI0LCB7bWF4Qnl0ZUxlbmd0aDogMzJ9KTsKK3Zh
ciBzYW1wbGUgPSBuZXcgRGF0YVZpZXcoYnVmZmVyLCAwLCAxNik7CisKK3RyeSB7CisgIGJ1ZmZl
ci5yZXNpemUoMzIpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUu
Z2V0SW50OCgwKSwgMCwgJ2ZvbGxvd2luZyBncm93Jyk7CisKK3RyeSB7CisgIGJ1ZmZlci5yZXNp
emUoMTYpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuZ2V0SW50
OCgwKSwgMCwgJ2ZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpJyk7CisKK3ZhciBleHBl
Y3RlZEVycm9yOwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSg4KTsKKyAgZXhwZWN0ZWRFcnJvciA9
IFR5cGVFcnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJv
cjsKK30KKworYXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCBmdW5jdGlvbigpIHsKKyAgc2Ft
cGxlLmdldEludDgoMCk7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVyYXRpb24g
Y29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL2dldFVpbnQxNi9yZXNpemFibGUt
YnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3Rv
dHlwZS9nZXRVaW50MTYvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNzY3MDk3MjEy
MWNkNGE5M2YzODE2MzU5MDJlZTNmZmNlMzhlZjdlCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRVaW50MTYvcmVz
aXphYmxlLWJ1ZmZlci5qcwpAQCAtMCwwICsxLDQxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEg
dGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8qLS0tCitlc2lkOiBzZWMtZGF0YXZpZXcucHJvdG90eXBlLmdldHVpbnQxNgorZGVzY3Jp
cHRpb246IFRocm93cyBhIFR5cGVFcnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5kcworZmVh
dHVyZXM6IFtEYXRhVmlldywgQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUu
cmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5
cGUucmVzaXplJworKTsKKwordmFyIGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwge21heEJ5
dGVMZW5ndGg6IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYp
OworCit0cnkgeworICBidWZmZXIucmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2Vy
dC5zYW1lVmFsdWUoc2FtcGxlLmdldFVpbnQxNigwKSwgMCwgJ2ZvbGxvd2luZyBncm93Jyk7CisK
K3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoMTYpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNh
bWVWYWx1ZShzYW1wbGUuZ2V0VWludDE2KDApLCAwLCAnZm9sbG93aW5nIHNocmluayAod2l0aGlu
IGJvdW5kcyknKTsKKwordmFyIGV4cGVjdGVkRXJyb3I7Cit0cnkgeworICBidWZmZXIucmVzaXpl
KDgpOworICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOworfSBjYXRjaCAoXykgeworICBleHBl
Y3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworfQorCithc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJy
b3IsIGZ1bmN0aW9uKCkgeworICBzYW1wbGUuZ2V0VWludDE2KDApOworICB0aHJvdyBuZXcgVGVz
dDI2MkVycm9yKCd0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKK30pOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3Rv
dHlwZS9nZXRVaW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0VWludDMyL3Jlc2l6YWJsZS1idWZmZXIu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYjRhYWI3OTNlMmE2YmM3YjkzZWQzYTQ5MDUzZjI4MjgyOGY5ZTY0OAot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmll
dy9wcm90b3R5cGUvZ2V0VWludDMyL3Jlc2l6YWJsZS1idWZmZXIuanMKQEAgLTAsMCArMSw0MSBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWRhdGF2aWV3LnBy
b3RvdHlwZS5nZXR1aW50MzIKK2Rlc2NyaXB0aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYnVm
ZmVyIGlzIG91dC1vZi1ib3VuZHMKK2ZlYXR1cmVzOiBbRGF0YVZpZXcsIEFycmF5QnVmZmVyLCBy
ZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBl
b2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxl
bWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3ZhciBidWZmZXIgPSBu
ZXcgQXJyYXlCdWZmZXIoMjQsIHttYXhCeXRlTGVuZ3RoOiAzMn0pOwordmFyIHNhbXBsZSA9IG5l
dyBEYXRhVmlldyhidWZmZXIsIDAsIDE2KTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgzMik7
Cit9IGNhdGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVlKHNhbXBsZS5nZXRVaW50MzIoMCks
IDAsICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDE2KTsKK30g
Y2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLmdldFVpbnQzMigwKSwgMCwg
J2ZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpJyk7CisKK3ZhciBleHBlY3RlZEVycm9y
OwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSg4KTsKKyAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJv
cjsKK30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKK30KKwor
YXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCBmdW5jdGlvbigpIHsKKyAgc2FtcGxlLmdldFVp
bnQzMigwKTsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlvbiBjb21wbGV0
ZWQgc3VjY2Vzc2Z1bGx5Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0VWludDgvcmVzaXphYmxlLWJ1ZmZlci5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvZ2V0
VWludDgvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YzNlOTJjNTNjNjczNWI2ZmQx
ZGU0NjgzNzkxMmNmNmIzNzJhMjJlCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9nZXRVaW50OC9yZXNpemFibGUtYnVm
ZmVyLmpzCkBAIC0wLDAgKzEsNDEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1kYXRhdmlldy5wcm90b3R5cGUuZ2V0dWludDgKK2Rlc2NyaXB0aW9uOiBUaHJv
d3MgYSBUeXBlRXJyb3IgaWYgYnVmZmVyIGlzIG91dC1vZi1ib3VuZHMKK2ZlYXR1cmVzOiBbRGF0
YVZpZXcsIEFycmF5QnVmZmVyLCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3Nl
cnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAg
J2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScK
Kyk7CisKK3ZhciBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIoMjQsIHttYXhCeXRlTGVuZ3RoOiAz
Mn0pOwordmFyIHNhbXBsZSA9IG5ldyBEYXRhVmlldyhidWZmZXIsIDAsIDE2KTsKKwordHJ5IHsK
KyAgYnVmZmVyLnJlc2l6ZSgzMik7Cit9IGNhdGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVl
KHNhbXBsZS5nZXRVaW50OCgwKSwgMCwgJ2ZvbGxvd2luZyBncm93Jyk7CisKK3RyeSB7CisgIGJ1
ZmZlci5yZXNpemUoMTYpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1w
bGUuZ2V0VWludDgoMCksIDAsICdmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKScpOwor
Cit2YXIgZXhwZWN0ZWRFcnJvcjsKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoOCk7CisgIGV4cGVj
dGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9IGNhdGNoIChfKSB7CisgIGV4cGVjdGVkRXJyb3IgPSBU
ZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24o
KSB7CisgIHNhbXBsZS5nZXRVaW50OCgwKTsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndGhl
IG9wZXJhdGlvbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0QmlnSW50
NjQvcmVzaXphYmxlLWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9E
YXRhVmlldy9wcm90b3R5cGUvc2V0QmlnSW50NjQvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi40ZGZkZGJiYmU0NDBhNjAyMTg4ZTk4MjM5NjRmOWFjMzkyYzc0NjFmCi0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlw
ZS9zZXRCaWdJbnQ2NC9yZXNpemFibGUtYnVmZmVyLmpzCkBAIC0wLDAgKzEsNDEgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1kYXRhdmlldy5wcm90b3R5cGUu
c2V0YmlnaW50NjQKK2Rlc2NyaXB0aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYnVmZmVyIGlz
IG91dC1vZi1ib3VuZHMKK2ZlYXR1cmVzOiBbRGF0YVZpZXcsIEFycmF5QnVmZmVyLCByZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJy
YXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMg
QXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3ZhciBidWZmZXIgPSBuZXcgQXJy
YXlCdWZmZXIoMjQsIHttYXhCeXRlTGVuZ3RoOiAzMn0pOwordmFyIHNhbXBsZSA9IG5ldyBEYXRh
VmlldyhidWZmZXIsIDAsIDE2KTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgzMik7Cit9IGNh
dGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVlKHNhbXBsZS5zZXRCaWdJbnQ2NCgwLCAxMG4p
LCB1bmRlZmluZWQsICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkgeworICBidWZmZXIucmVzaXpl
KDE2KTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLnNldEJpZ0lu
dDY0KDAsIDIwbiksIHVuZGVmaW5lZCwgJ2ZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMp
Jyk7CisKK3ZhciBleHBlY3RlZEVycm9yOwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSg4KTsKKyAg
ZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWRFcnJv
ciA9IFRlc3QyNjJFcnJvcjsKK30KKworYXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCBmdW5j
dGlvbigpIHsKKyAgc2FtcGxlLnNldEJpZ0ludDY0KDAsIDMwbik7CisgIHRocm93IG5ldyBUZXN0
MjYyRXJyb3IoJ3RoZSBvcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworfSk7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90
eXBlL3NldEJpZ1VpbnQ2NC9yZXNpemFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRCaWdVaW50NjQvcmVzaXphYmxlLWJ1
ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4wMjYzZjBkOGFmMWIyYTEyM2EzNTJhYjEzODdiMmM5N2NkYWQ1
Y2VmCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0Rh
dGFWaWV3L3Byb3RvdHlwZS9zZXRCaWdVaW50NjQvcmVzaXphYmxlLWJ1ZmZlci5qcwpAQCAtMCww
ICsxLDQxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNE
IGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZGF0
YXZpZXcucHJvdG90eXBlLnNldGJpZ3VpbnQ2NAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVF
cnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6IFtEYXRhVmlldywgQXJy
YXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFs
dWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24n
LAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwordmFy
IGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2YXIg
c2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0cnkgeworICBidWZmZXIu
cmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLnNl
dEJpZ1VpbnQ2NCgwLCAxMG4pLCB1bmRlZmluZWQsICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkg
eworICBidWZmZXIucmVzaXplKDE2KTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFs
dWUoc2FtcGxlLnNldEJpZ1VpbnQ2NCgwLCAyMG4pLCB1bmRlZmluZWQsICdmb2xsb3dpbmcgc2hy
aW5rICh3aXRoaW4gYm91bmRzKScpOworCit2YXIgZXhwZWN0ZWRFcnJvcjsKK3RyeSB7CisgIGJ1
ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9IGNhdGNoIChf
KSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2VydC50aHJvd3Mo
ZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhbXBsZS5zZXRCaWdVaW50NjQoMCwgMzBu
KTsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlvbiBjb21wbGV0ZWQgc3Vj
Y2Vzc2Z1bGx5Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0RmxvYXQzMi9yZXNpemFibGUtYnVmZmVyLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRGbG9h
dDMyL3Jlc2l6YWJsZS1idWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjUyYjQ3ODk4NDE5NTdhMGViNzRj
Njk3NWNkMDA0ZmQ2OWUwYTdmMQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0RmxvYXQzMi9yZXNpemFibGUtYnVm
ZmVyLmpzCkBAIC0wLDAgKzEsNDEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1kYXRhdmlldy5wcm90b3R5cGUuc2V0ZmxvYXQzMgorZGVzY3JpcHRpb246IFRo
cm93cyBhIFR5cGVFcnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6IFtE
YXRhVmlldywgQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fz
c2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAor
ICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXpl
JworKTsKKwordmFyIGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5ndGg6
IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0cnkg
eworICBidWZmZXIucmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFs
dWUoc2FtcGxlLnNldEZsb2F0MzIoMCwgMTApLCB1bmRlZmluZWQsICdmb2xsb3dpbmcgZ3Jvdycp
OworCit0cnkgeworICBidWZmZXIucmVzaXplKDE2KTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2Vy
dC5zYW1lVmFsdWUoc2FtcGxlLnNldEZsb2F0MzIoMCwgMjApLCB1bmRlZmluZWQsICdmb2xsb3dp
bmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKScpOworCit2YXIgZXhwZWN0ZWRFcnJvcjsKK3RyeSB7
CisgIGJ1ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9IGNh
dGNoIChfKSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2VydC50
aHJvd3MoZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhbXBsZS5zZXRGbG9hdDMyKDAs
IDMwKTsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlvbiBjb21wbGV0ZWQg
c3VjY2Vzc2Z1bGx5Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0RmxvYXQ2NC9yZXNpemFibGUtYnVmZmVyLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRG
bG9hdDY0L3Jlc2l6YWJsZS1idWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzZkZWQ5ZWUzYTJjMmZlNzhj
NWM1OTQ1NjM5NDRkY2EzNjMyZmQyMgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0RmxvYXQ2NC9yZXNpemFibGUt
YnVmZmVyLmpzCkBAIC0wLDAgKzEsNDEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjgg
cHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2VzaWQ6IHNlYy1kYXRhdmlldy5wcm90b3R5cGUuc2V0ZmxvYXQ2NAorZGVzY3JpcHRpb246
IFRocm93cyBhIFR5cGVFcnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5kcworZmVhdHVyZXM6
IFtEYXRhVmlldywgQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisK
K2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXpl
LAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVz
aXplJworKTsKKwordmFyIGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwge21heEJ5dGVMZW5n
dGg6IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwgMCwgMTYpOworCit0
cnkgeworICBidWZmZXIucmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1l
VmFsdWUoc2FtcGxlLnNldEZsb2F0NjQoMCwgMTApLCB1bmRlZmluZWQsICdmb2xsb3dpbmcgZ3Jv
dycpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDE2KTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fz
c2VydC5zYW1lVmFsdWUoc2FtcGxlLnNldEZsb2F0NjQoMCwgMjApLCB1bmRlZmluZWQsICdmb2xs
b3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKScpOworCit2YXIgZXhwZWN0ZWRFcnJvcjsKK3Ry
eSB7CisgIGJ1ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9
IGNhdGNoIChfKSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2Vy
dC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhbXBsZS5zZXRGbG9hdDY0
KDAsIDMwKTsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlvbiBjb21wbGV0
ZWQgc3VjY2Vzc2Z1bGx5Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0SW50MTYvcmVzaXphYmxlLWJ1ZmZlci5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0
SW50MTYvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNDdhMTFhYmYzOWE4MjdmZmJk
NWI4YmYxZTFiOWNmODI0OTMxOWMzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRJbnQxNi9yZXNpemFibGUtYnVm
ZmVyLmpzCkBAIC0wLDAgKzEsNDEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1kYXRhdmlldy5wcm90b3R5cGUuc2V0aW50MTYKK2Rlc2NyaXB0aW9uOiBUaHJv
d3MgYSBUeXBlRXJyb3IgaWYgYnVmZmVyIGlzIG91dC1vZi1ib3VuZHMKK2ZlYXR1cmVzOiBbRGF0
YVZpZXcsIEFycmF5QnVmZmVyLCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3Nl
cnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAg
J2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScK
Kyk7CisKK3ZhciBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIoMjQsIHttYXhCeXRlTGVuZ3RoOiAz
Mn0pOwordmFyIHNhbXBsZSA9IG5ldyBEYXRhVmlldyhidWZmZXIsIDAsIDE2KTsKKwordHJ5IHsK
KyAgYnVmZmVyLnJlc2l6ZSgzMik7Cit9IGNhdGNoIChfKSB7fQorCithc3NlcnQuc2FtZVZhbHVl
KHNhbXBsZS5zZXRJbnQxNigwLCAxMCksIHVuZGVmaW5lZCwgJ2ZvbGxvd2luZyBncm93Jyk7CisK
K3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoMTYpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNh
bWVWYWx1ZShzYW1wbGUuc2V0SW50MTYoMCwgMjApLCB1bmRlZmluZWQsICdmb2xsb3dpbmcgc2hy
aW5rICh3aXRoaW4gYm91bmRzKScpOworCit2YXIgZXhwZWN0ZWRFcnJvcjsKK3RyeSB7CisgIGJ1
ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9IGNhdGNoIChf
KSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2VydC50aHJvd3Mo
ZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhbXBsZS5zZXRJbnQxNigwLCAzMCk7Cisg
IHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3Nm
dWxseScpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
RGF0YVZpZXcvcHJvdG90eXBlL3NldEludDMyL3Jlc2l6YWJsZS1idWZmZXIuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldEludDMyL3Jlc2l6
YWJsZS1idWZmZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmVlMjQ2MGEyZDRiNzgzMGY4Y2UxY2QzYWY3MjU5
OGEzY2E0ZDlkNwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0SW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qcwpAQCAt
MCwwICsxLDQxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMt
ZGF0YXZpZXcucHJvdG90eXBlLnNldGludDMyCitkZXNjcmlwdGlvbjogVGhyb3dzIGEgVHlwZUVy
cm9yIGlmIGJ1ZmZlciBpcyBvdXQtb2YtYm91bmRzCitmZWF0dXJlczogW0RhdGFWaWV3LCBBcnJh
eUJ1ZmZlciwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1
ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbics
CisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit2YXIg
YnVmZmVyID0gbmV3IEFycmF5QnVmZmVyKDI0LCB7bWF4Qnl0ZUxlbmd0aDogMzJ9KTsKK3ZhciBz
YW1wbGUgPSBuZXcgRGF0YVZpZXcoYnVmZmVyLCAwLCAxNik7CisKK3RyeSB7CisgIGJ1ZmZlci5y
ZXNpemUoMzIpOworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuc2V0
SW50MzIoMCwgMTApLCB1bmRlZmluZWQsICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkgeworICBi
dWZmZXIucmVzaXplKDE2KTsKK30gY2F0Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2Ft
cGxlLnNldEludDMyKDAsIDIwKSwgdW5kZWZpbmVkLCAnZm9sbG93aW5nIHNocmluayAod2l0aGlu
IGJvdW5kcyknKTsKKwordmFyIGV4cGVjdGVkRXJyb3I7Cit0cnkgeworICBidWZmZXIucmVzaXpl
KDgpOworICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOworfSBjYXRjaCAoXykgeworICBleHBl
Y3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworfQorCithc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJy
b3IsIGZ1bmN0aW9uKCkgeworICBzYW1wbGUuc2V0SW50MzIoMCwgMzApOworICB0aHJvdyBuZXcg
VGVzdDI2MkVycm9yKCd0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3By
b3RvdHlwZS9zZXRJbnQ4L3Jlc2l6YWJsZS1idWZmZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldEludDgvcmVzaXphYmxlLWJ1ZmZlci5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43YWI1ZjA3ODQxYTU5NjM2NDM0NTA0YzMxN2Q3YjA0M2ZjMmE2MzBmCi0t
LSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L3Byb3RvdHlwZS9zZXRJbnQ4L3Jlc2l6YWJsZS1idWZmZXIuanMKQEAgLTAsMCArMSw0MSBAQAor
Ly8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZv
dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWRhdGF2aWV3LnByb3Rv
dHlwZS5zZXRpbnQ4CitkZXNjcmlwdGlvbjogVGhyb3dzIGEgVHlwZUVycm9yIGlmIGJ1ZmZlciBp
cyBvdXQtb2YtYm91bmRzCitmZWF0dXJlczogW0RhdGFWaWV3LCBBcnJheUJ1ZmZlciwgcmVzaXph
YmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRz
IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit2YXIgYnVmZmVyID0gbmV3IEFy
cmF5QnVmZmVyKDI0LCB7bWF4Qnl0ZUxlbmd0aDogMzJ9KTsKK3ZhciBzYW1wbGUgPSBuZXcgRGF0
YVZpZXcoYnVmZmVyLCAwLCAxNik7CisKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoMzIpOworfSBj
YXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuc2V0SW50OCgwLCAxMCksIHVu
ZGVmaW5lZCwgJ2ZvbGxvd2luZyBncm93Jyk7CisKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoMTYp
OworfSBjYXRjaCAoXykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuc2V0SW50OCgwLCAy
MCksIHVuZGVmaW5lZCwgJ2ZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpJyk7CisKK3Zh
ciBleHBlY3RlZEVycm9yOwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSg4KTsKKyAgZXhwZWN0ZWRF
cnJvciA9IFR5cGVFcnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWRFcnJvciA9IFRlc3Qy
NjJFcnJvcjsKK30KKworYXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCBmdW5jdGlvbigpIHsK
KyAgc2FtcGxlLnNldEludDgoMCwgMzApOworICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCd0aGUg
b3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRVaW50MTYv
cmVzaXphYmxlLWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRh
Vmlldy9wcm90b3R5cGUvc2V0VWludDE2L3Jlc2l6YWJsZS1idWZmZXIuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NmM2ZWQ3ZTRhNjJkMjVlZjMzYjdlMWU0NmQxNzdlMzg0MTc3NTQ3NgotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0
VWludDE2L3Jlc2l6YWJsZS1idWZmZXIuanMKQEAgLTAsMCArMSw0MSBAQAorLy8gQ29weXJpZ2h0
IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWRhdGF2aWV3LnByb3RvdHlwZS5zZXR1aW50
MTYKK2Rlc2NyaXB0aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYnVmZmVyIGlzIG91dC1vZi1i
b3VuZHMKK2ZlYXR1cmVzOiBbRGF0YVZpZXcsIEFycmF5QnVmZmVyLCByZXNpemFibGUtYXJyYXli
dWZmZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIu
cHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZm
ZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3ZhciBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIo
MjQsIHttYXhCeXRlTGVuZ3RoOiAzMn0pOwordmFyIHNhbXBsZSA9IG5ldyBEYXRhVmlldyhidWZm
ZXIsIDAsIDE2KTsKKwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgzMik7Cit9IGNhdGNoIChfKSB7
fQorCithc3NlcnQuc2FtZVZhbHVlKHNhbXBsZS5zZXRVaW50MTYoMCwgMTApLCB1bmRlZmluZWQs
ICdmb2xsb3dpbmcgZ3JvdycpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDE2KTsKK30gY2F0
Y2ggKF8pIHt9CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLnNldFVpbnQxNigwLCAyMCksIHVu
ZGVmaW5lZCwgJ2ZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpJyk7CisKK3ZhciBleHBl
Y3RlZEVycm9yOwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSg4KTsKKyAgZXhwZWN0ZWRFcnJvciA9
IFR5cGVFcnJvcjsKK30gY2F0Y2ggKF8pIHsKKyAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJv
cjsKK30KKworYXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCBmdW5jdGlvbigpIHsKKyAgc2Ft
cGxlLnNldFVpbnQxNigwLCAzMCk7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVy
YXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRGF0YVZpZXcvcHJvdG90eXBlL3NldFVpbnQzMi9yZXNp
emFibGUtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3
L3Byb3RvdHlwZS9zZXRVaW50MzIvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YWE2
MTYwYmMwZGY1MzRjNTgzZTIwYzI0YWZkNDgzM2MxOGIxMGJiCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRVaW50
MzIvcmVzaXphYmxlLWJ1ZmZlci5qcwpAQCAtMCwwICsxLDQxIEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZGF0YXZpZXcucHJvdG90eXBlLnNldHVpbnQzMgor
ZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBpZiBidWZmZXIgaXMgb3V0LW9mLWJvdW5k
cworZmVhdHVyZXM6IFtEYXRhVmlldywgQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJheWJ1ZmZl
cl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90
b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5w
cm90b3R5cGUucmVzaXplJworKTsKKwordmFyIGJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigyNCwg
e21heEJ5dGVMZW5ndGg6IDMyfSk7Cit2YXIgc2FtcGxlID0gbmV3IERhdGFWaWV3KGJ1ZmZlciwg
MCwgMTYpOworCit0cnkgeworICBidWZmZXIucmVzaXplKDMyKTsKK30gY2F0Y2ggKF8pIHt9CisK
K2Fzc2VydC5zYW1lVmFsdWUoc2FtcGxlLnNldFVpbnQzMigwLCAxMCksIHVuZGVmaW5lZCwgJ2Zv
bGxvd2luZyBncm93Jyk7CisKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoMTYpOworfSBjYXRjaCAo
Xykge30KKworYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuc2V0VWludDMyKDAsIDIwKSwgdW5kZWZp
bmVkLCAnZm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcyknKTsKKwordmFyIGV4cGVjdGVk
RXJyb3I7Cit0cnkgeworICBidWZmZXIucmVzaXplKDgpOworICBleHBlY3RlZEVycm9yID0gVHlw
ZUVycm9yOworfSBjYXRjaCAoXykgeworICBleHBlY3RlZEVycm9yID0gVGVzdDI2MkVycm9yOwor
fQorCithc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsIGZ1bmN0aW9uKCkgeworICBzYW1wbGUu
c2V0VWludDMyKDAsIDMwKTsKKyAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndGhlIG9wZXJhdGlv
biBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90b3R5cGUvc2V0VWludDgvcmVzaXphYmxl
LWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9EYXRhVmlldy9wcm90
b3R5cGUvc2V0VWludDgvcmVzaXphYmxlLWJ1ZmZlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMmRiZTg4NDQ4
ZDUyNDkxNmIwYTU4YjFlM2Q5MDliOTc4MGYxYjMwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL0RhdGFWaWV3L3Byb3RvdHlwZS9zZXRVaW50OC9yZXNp
emFibGUtYnVmZmVyLmpzCkBAIC0wLDAgKzEsNDEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0
aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2Rl
IGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxl
LgorLyotLS0KK2VzaWQ6IHNlYy1kYXRhdmlldy5wcm90b3R5cGUuc2V0dWludDgKK2Rlc2NyaXB0
aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgaWYgYnVmZmVyIGlzIG91dC1vZi1ib3VuZHMKK2ZlYXR1
cmVzOiBbRGF0YVZpZXcsIEFycmF5QnVmZmVyLCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0q
LworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJl
c2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBl
LnJlc2l6ZScKKyk7CisKK3ZhciBidWZmZXIgPSBuZXcgQXJyYXlCdWZmZXIoMjQsIHttYXhCeXRl
TGVuZ3RoOiAzMn0pOwordmFyIHNhbXBsZSA9IG5ldyBEYXRhVmlldyhidWZmZXIsIDAsIDE2KTsK
KwordHJ5IHsKKyAgYnVmZmVyLnJlc2l6ZSgzMik7Cit9IGNhdGNoIChfKSB7fQorCithc3NlcnQu
c2FtZVZhbHVlKHNhbXBsZS5zZXRVaW50OCgwLCAxMCksIHVuZGVmaW5lZCwgJ2ZvbGxvd2luZyBn
cm93Jyk7CisKK3RyeSB7CisgIGJ1ZmZlci5yZXNpemUoMTYpOworfSBjYXRjaCAoXykge30KKwor
YXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGUuc2V0VWludDgoMCwgMjApLCB1bmRlZmluZWQsICdmb2xs
b3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKScpOworCit2YXIgZXhwZWN0ZWRFcnJvcjsKK3Ry
eSB7CisgIGJ1ZmZlci5yZXNpemUoOCk7CisgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7Cit9
IGNhdGNoIChfKSB7CisgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7Cit9CisKK2Fzc2Vy
dC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgZnVuY3Rpb24oKSB7CisgIHNhbXBsZS5zZXRVaW50OCgw
LCAzMCk7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVyYXRpb24gY29tcGxldGVk
IHN1Y2Nlc3NmdWxseScpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvRXJyb3IvY2F1c2VfYWJydXB0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL0Vycm9yL2NhdXNlX2FicnVwdC5qcwppbmRleCAwMjNlY2RhZDllZTNmNjVkNjI4MjA5
ZjEzYjlmZTZlNWZmYjczMzcyLi40MGNmYmY1N2Y1OGZjOTc0MmEwYjFmZGE0N2NmNjQyYjVhODQz
YzEyIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvRXJyb3IvY2F1
c2VfYWJydXB0LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9FcnJvci9j
YXVzZV9hYnJ1cHQuanMKQEAgLTIyLDI5ICsyMiwzMSBAQAogLS0tKi8KIAogdmFyIG1lc3NhZ2Ug
PSAibXktbWVzc2FnZSI7Cit2YXIgb3B0aW9uczsKKwogLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAv
LyBDSEVDSyMwCitvcHRpb25zID0gbmV3IFByb3h5KHt9LCB7CisgIGhhcyh0YXJnZXQsIHByb3Ap
IHsKKyAgICBpZiAocHJvcCA9PT0gImNhdXNlIikgeworICAgICAgdGhyb3cgbmV3IFRlc3QyNjJF
cnJvcigiSGFzUHJvcGVydHkiKTsKKyAgICB9CisgICAgcmV0dXJuIHByb3AgaW4gdGFyZ2V0Owor
ICB9LAorfSk7CiBhc3NlcnQudGhyb3dzKFRlc3QyNjJFcnJvciwgZnVuY3Rpb24gKCkgewotICB2
YXIgb3B0aW9ucyA9IG5ldyBQcm94eSh7fSwgewotICAgIGhhcyh0YXJnZXQsIHByb3ApIHsKLSAg
ICAgIGlmIChwcm9wID09PSAiY2F1c2UiKSB7Ci0gICAgICAgIHRocm93IG5ldyBUZXN0MjYyRXJy
b3IoIkhhc1Byb3BlcnR5Iik7Ci0gICAgICB9Ci0gICAgICByZXR1cm4gcHJvcCBpbiB0YXJnZXQ7
Ci0gICAgfSwKLSAgfSk7Ci0gIHZhciBlcnJvciA9IG5ldyBFcnJvcihtZXNzYWdlLCBvcHRpb25z
KTsKKyAgbmV3IEVycm9yKG1lc3NhZ2UsIG9wdGlvbnMpOwogfSwgIkhhc1Byb3BlcnR5Iik7CiAv
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8KIAogLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAvLyBDSEVDSyMx
CitvcHRpb25zID0geworICBnZXQgY2F1c2UoKSB7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJv
cigiR2V0IENhdXNlIik7CisgIH0sCit9OwogYXNzZXJ0LnRocm93cyhUZXN0MjYyRXJyb3IsIGZ1
bmN0aW9uICgpIHsKLSAgdmFyIG9wdGlvbnMgPSB7Ci0gICAgZ2V0IGNhdXNlKCkgewotICAgICAg
dGhyb3cgbmV3IFRlc3QyNjJFcnJvcigiR2V0IENhdXNlIik7Ci0gICAgfSwKLSAgfTsKLSAgdmFy
IGVycm9yID0gbmV3IEVycm9yKG1lc3NhZ2UsIG9wdGlvbnMpOworICBuZXcgRXJyb3IobWVzc2Fn
ZSwgb3B0aW9ucyk7CiB9LCAiR2V0IENhdXNlIik7CiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2Rl
c2NyaXB0b3IuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9kZXNjcmlwdG9yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2YjNiMTQ3ZjI4ZmFkMTgwZmUzYWM1YzIxOGVm
MTc0MTQ4NTM2Y2IKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvT2JqZWN0L2hhc093bi9kZXNjcmlwdG9yLmpzCkBAIC0wLDAgKzEsMTUgQEAKKy8vIENv
cHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjog
VGVzdGluZyBkZXNjcmlwdG9yIHByb3BlcnR5IG9mIE9iamVjdC5oYXNPd24KK2luY2x1ZGVzOgor
ICAgIC0gcHJvcGVydHlIZWxwZXIuanMKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtP
YmplY3QuaGFzT3duXQorLS0tKi8KKwordmVyaWZ5V3JpdGFibGUoT2JqZWN0LCAiaGFzT3duIik7
Cit2ZXJpZnlOb3RFbnVtZXJhYmxlKE9iamVjdCwgImhhc093biIpOwordmVyaWZ5Q29uZmlndXJh
YmxlKE9iamVjdCwgImhhc093biIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlZTMwOTA4Yjdk
ZDY5Y2FkMDdkNThmODI4NTFmM2Y2ZGRiZmQzMzkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd24uanMKQEAgLTAsMCAr
MSwxOSBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgoraW5m
bzogfAorICAgIE9iamVjdC5oYXNPd24gKCBfT18sIF9QXyApCisKKyAgICAxLiBMZXQgX29ial8g
YmUgPyBUb09iamVjdChfT18pLgorICAgIDIuIExldCBfa2V5XyBiZSA/IFRvUHJvcGVydHlLZXko
X1BfKS4KKyAgICAzLiBSZXR1cm4gPyBIYXNPd25Qcm9wZXJ0eShfb2JqXywgX2tleV8pLgorZGVz
Y3JpcHRpb246ID4KKyAgICBDaGVja2luZyB0eXBlIG9mIHRoZSBPYmplY3QuaGFzT3duIGFuZCB0
aGUgcmV0dXJuZWQgcmVzdWx0CithdXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0
Lmhhc093bl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIE9iamVjdC5oYXNPd24s
ICdmdW5jdGlvbicpOworYXNzZXJ0KE9iamVjdC5oYXNPd24oT2JqZWN0LCAnaGFzT3duJykpOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
aGFzb3duX2luaGVyaXRlZF9leGlzdHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2V4aXN0cy5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
NTNlZGQwYmQ4MTA0MTZiOTg3NTZkODgxMjhiYmY4OTY0NjJlMTFjCi0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2lu
aGVyaXRlZF9leGlzdHMuanMKQEAgLTAsMCArMSwxNiBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIx
IEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0t
LQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiBQcm9wZXJ0aWVzIC0gW1tI
YXNPd25Qcm9wZXJ0eV1dIChvbGQgc3R5bGUgaW5oZXJpdGVkIHByb3BlcnR5KQorYXV0aG9yOiBK
YW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgYmFzZSA9
IHsKKyAgZm9vOiA0MgorfTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0
LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3du
KG8sICJmb28iKScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXIuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlci5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi45MDQ3YTk5Zjc1NWFmZTdlMjFkYzg3ZjcxMWY5MmE1ZGRlNzZiNWE5Ci0t
LSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9o
YXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXIuanMKQEAgLTAsMCArMSwxOCBAQAorLy8gQ29w
eXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiBQ
cm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChsaXRlcmFsIGluaGVyaXRlZCBnZXR0ZXIg
cHJvcGVydHkpCithdXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0K
Ky0tLSovCisKK3ZhciBiYXNlID0geworICBnZXQgZm9vKCkgeworICAgIHJldHVybiA0MjsKKyAg
fQorfTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShP
YmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3duKG8sICJmb28iKScp
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlci5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2Fu
ZF9zZXR0ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGJjNTU4MzVhYzk5NDk0ZjViYWZmOTk4ODY4NmQxMjBi
NDY2YWI2YwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2FuZF9zZXR0ZXIuanMKQEAg
LTAsMCArMSwyMiBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5o
YXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHld
XSAobGl0ZXJhbCBpbmhlcml0ZWQgZ2V0dGVyL3NldHRlcgorICAgIHByb3BlcnR5KQorYXV0aG9y
OiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgYmFz
ZSA9IHsKKyAgZ2V0IGZvbygpIHsKKyAgICByZXR1cm4gNDI7CisgIH0sCisgIHNldCBmb28oeCkg
eworICB9Cit9OwordmFyIG8gPSBPYmplY3QuY3JlYXRlKGJhc2UpOworCithc3NlcnQuc2FtZVZh
bHVlKE9iamVjdC5oYXNPd24obywgImZvbyIpLCBmYWxzZSwgJ09iamVjdC5oYXNPd24obywgImZv
byIpJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlcl9hbmRfc2V0dGVyX2NvbmZpZ3VyYWJsZV9l
bnVtZXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlcl9jb25maWd1cmFibGVfZW51bWVy
YWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yNTFjZTdmOTU2YmYxY2IxNDkzYjI3MWZiMTFmYzg2NWU3MDM1
YzJmCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09i
amVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlcl9jb25maWd1cmFi
bGVfZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDI1IEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEg
SmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0t
Citlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246ID4KKyAgICBQcm9wZXJ0aWVz
IC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChjb25maWd1cmFibGUsIGVudW1lcmFibGUKKyAgICBpbmhl
cml0ZWQgZ2V0dGVyL3NldHRlciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVy
ZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZp
bmVQcm9wZXJ0eShiYXNlLCAiZm9vIiwgeworICBnZXQ6IGZ1bmN0aW9uKCkgeworICAgIHJldHVy
biA0MjsKKyAgfSwKKyAgc2V0OiBmdW5jdGlvbigpIHs7CisgIH0sCisgIGVudW1lcmFibGU6IHRy
dWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7Cit2YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFz
ZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIGZhbHNlLCAn
T2JqZWN0Lmhhc093bihvLCAiZm9vIiknKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2FuZF9z
ZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlcl9hbmRfc2V0
dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIyMjZkZjAxNjg1
MDhmNjg4ZWY5MmRkMDRlODVkYjM4ZmQ0ZmRkN2UKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dl
dHRlcl9hbmRfc2V0dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEs
MjQgQEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitk
ZXNjcmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKGNvbmZp
Z3VyYWJsZSwgbm9uLWVudW1lcmFibGUKKyAgICBpbmhlcml0ZWQgZ2V0dGVyL3NldHRlciBwcm9w
ZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0t
Ki8KKwordmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCAiZm9vIiwg
eworICBnZXQ6IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiA0MjsKKyAgfSwKKyAgc2V0OiBmdW5j
dGlvbigpIHs7CisgIH0sCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7Cit2YXIgbyA9IE9iamVj
dC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9v
IiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIiknKTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRf
Z2V0dGVyX2FuZF9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX2dl
dHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjJjYzczNTYyMjU0OTcwMmJjZDNlZTA1ODhiMzU5YWFkNDQxZTAyNTYKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25f
aW5oZXJpdGVkX2dldHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpz
CkBAIC0wLDAgKzEsMjQgQEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmpl
Y3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3Bl
cnR5XV0gKG5vbi1jb25maWd1cmFibGUsIGVudW1lcmFibGUKKyAgICBpbmhlcml0ZWQgZ2V0dGVy
L3NldHRlciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3Qu
aGFzT3duXQorLS0tKi8KKwordmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShi
YXNlLCAiZm9vIiwgeworICBnZXQ6IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiA0MjsKKyAgfSwK
KyAgc2V0OiBmdW5jdGlvbigpIHs7CisgIH0sCisgIGVudW1lcmFibGU6IHRydWUKK30pOwordmFy
IG8gPSBPYmplY3QuY3JlYXRlKGJhc2UpOworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNP
d24obywgImZvbyIpLCBmYWxzZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpJyk7CmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25f
aW5oZXJpdGVkX2dldHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxl
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3du
X2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlcl9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJs
ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zMTc3YWRjNWIwNGUxYjUwMjgzZjgwMmFkNzJjNThmMTgxMjc1NWMy
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0ZXJfYW5kX3NldHRlcl9ub25jb25maWd1cmFi
bGVfbm9uZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDIzIEBACisvLyBDb3B5cmlnaHQgKGMpIDIw
MjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8q
LS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246ID4KKyAgICBQcm9wZXJ0
aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChub24tY29uZmlndXJhYmxlLCBub24tZW51bWVyYWJs
ZQorICAgIGluaGVyaXRlZCBnZXR0ZXIvc2V0dGVyIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBL
eWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgYmFzZSA9IHt9Owor
T2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsICJmb28iLCB7CisgIGdldDogZnVuY3Rpb24oKSB7
CisgICAgcmV0dXJuIDQyOworICB9LAorICBzZXQ6IGZ1bmN0aW9uKCkgezsKKyAgfQorfSk7Cit2
YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhh
c093bihvLCAiZm9vIiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIiknKTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293
bl9pbmhlcml0ZWRfZ2V0dGVyX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9nZXR0
ZXJfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmYzZDg2YWJiMWJkOTVm
Zjk1N2FhMjkwOGQ0YjY3NWU0MDNmMjY1NAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVy
X2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEsMjMgQEAKKy8vIENvcHlyaWdo
dCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICAg
IFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKGNvbmZpZ3VyYWJsZSwgZW51bWVyYWJs
ZQorICAgIGluaGVyaXRlZCBnZXR0ZXIgcHJvcGVydHkpCithdXRob3I6IEphbWllIEt5bGUKK2Zl
YXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBiYXNlID0ge307CitPYmplY3Qu
ZGVmaW5lUHJvcGVydHkoYmFzZSwgImZvbyIsIHsKKyAgZ2V0OiBmdW5jdGlvbigpIHsKKyAgICBy
ZXR1cm4gNDI7CisgIH0sCisgIGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1
ZQorfSk7Cit2YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUo
T2JqZWN0Lmhhc093bihvLCAiZm9vIiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIikn
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2lu
aGVyaXRlZF9nZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OWY4ZjUxZWIwZjg5OGZjM2JiZDBjMjgyOTcxMDZkY2YzODc5MWU4OQotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9p
bmhlcml0ZWRfZ2V0dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEs
MjIgQEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitk
ZXNjcmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKGNvbmZp
Z3VyYWJsZSwgbm9uLWVudW1lcmFibGUKKyAgICBpbmhlcml0ZWQgZ2V0dGVyIHByb3BlcnR5KQor
YXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2
YXIgYmFzZSA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsICJmb28iLCB7CisgIGdl
dDogZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIDQyOworICB9LAorICBjb25maWd1cmFibGU6IHRy
dWUKK30pOwordmFyIG8gPSBPYmplY3QuY3JlYXRlKGJhc2UpOworCithc3NlcnQuc2FtZVZhbHVl
KE9iamVjdC5oYXNPd24obywgImZvbyIpLCBmYWxzZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIp
Jyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25faW5oZXJpdGVkX2dldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9p
bmhlcml0ZWRfZ2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmViOWQ3ZjIzNTMwMjFiNDVhMmZhMzRlMTc0ZWU5Y2E5NTY1MjNiZDcKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25f
aW5oZXJpdGVkX2dldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpAQCAtMCwwICsx
LDIyIEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgor
ZGVzY3JpcHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChub24t
Y29uZmlndXJhYmxlLCBlbnVtZXJhYmxlCisgICAgaW5oZXJpdGVkIGdldHRlciBwcm9wZXJ0eSkK
K2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwor
dmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCAiZm9vIiwgeworICBn
ZXQ6IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiA0MjsKKyAgfSwKKyAgZW51bWVyYWJsZTogdHJ1
ZQorfSk7Cit2YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUo
T2JqZWN0Lmhhc093bihvLCAiZm9vIiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIikn
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9pbmhlcml0ZWRfZ2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxl
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3du
X2luaGVyaXRlZF9nZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uOTg5ZmZmZTFkMTVmYjZmY2QxNTgxNmQ0MTRhMGZiNTBjZTJlMjA3YwotLS0gL2Rldi9u
dWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hh
c293bl9pbmhlcml0ZWRfZ2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCkBA
IC0wLDAgKzEsMjEgQEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vu
c2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3Qu
aGFzb3duCitkZXNjcmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5
XV0gKG5vbi1jb25maWd1cmFibGUsIG5vbi1lbnVtZXJhYmxlCisgICAgaW5oZXJpdGVkIGdldHRl
ciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3du
XQorLS0tKi8KKwordmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCAi
Zm9vIiwgeworICBnZXQ6IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiA0MjsKKyAgfQorfSk7Cit2
YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhh
c093bihvLCAiZm9vIiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIiknKTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293
bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVk
X25vbndyaXRhYmxlX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZlYTFk
YzY4NGY5MzZmYTY2M2IzMDM5NDBiODI2ZGVmODAzMjhmMDQKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJp
dGVkX25vbndyaXRhYmxlX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEsMjEg
QEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNj
cmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKG5vbi13cml0
YWJsZSwgY29uZmlndXJhYmxlLAorICAgIGVudW1lcmFibGUgaW5oZXJpdGVkIHZhbHVlIHByb3Bl
cnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0q
LworCit2YXIgYmFzZSA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsICJmb28iLCB7
CisgIHZhbHVlOiA0MiwKKyAgY29uZmlndXJhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVl
Cit9KTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShP
YmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3duKG8sICJmb28iKScp
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9ub253cml0YWJsZV9jb25maWd1cmFibGVfbm9uZW51bWVyYWJs
ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293
bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uN2VlZjQzMzU1MDRmNzgxMTlhOTg3NThmZmU0YTIyNjgxYzc2NTM2MQotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L2hhc293bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUu
anMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9i
amVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJv
cGVydHldXSAobm9uLXdyaXRhYmxlLCBjb25maWd1cmFibGUsCisgICAgbm9uLWVudW1lcmFibGUg
aW5oZXJpdGVkIHZhbHVlIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczog
W09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgYmFzZSA9IHt9OworT2JqZWN0LmRlZmluZVBy
b3BlcnR5KGJhc2UsICJmb28iLCB7CisgIHZhbHVlOiA0MiwKKyAgY29uZmlndXJhYmxlOiB0cnVl
Cit9KTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShP
YmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3duKG8sICJmb28iKScp
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9ub253cml0YWJsZV9ub25jb25maWd1cmFibGVfZW51bWVyYWJs
ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293
bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uODE5OGE0NTQwMWQ2MDYyNDM5MmMwNDJhMDgwYzMzNDhjNjM2ZDFlMAotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L2hhc293bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUu
anMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9i
amVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJv
cGVydHldXSAobm9uLXdyaXRhYmxlLCBub24tY29uZmlndXJhYmxlLAorICAgIGVudW1lcmFibGUg
aW5oZXJpdGVkIHZhbHVlIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczog
W09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgYmFzZSA9IHt9OworT2JqZWN0LmRlZmluZVBy
b3BlcnR5KGJhc2UsICJmb28iLCB7CisgIHZhbHVlOiA0MiwKKyAgZW51bWVyYWJsZTogdHJ1ZQor
fSk7Cit2YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2Jq
ZWN0Lmhhc093bihvLCAiZm9vIiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIiknKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L2hhc293bl9pbmhlcml0ZWRfbm9ud3JpdGFibGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFi
bGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNv
d25faW5oZXJpdGVkX25vbndyaXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjJlMTgzNWIxNmJhZTgzYTEyMzdjYzI4MGEzNzM3Y2M3ZTlkNDhjMzUKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25faW5oZXJpdGVkX25vbndyaXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVt
ZXJhYmxlLmpzCkBAIC0wLDAgKzEsMTkgQEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBL
eWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6
IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hh
c093blByb3BlcnR5XV0gKG5vbi13cml0YWJsZSwgbm9uLWNvbmZpZ3VyYWJsZSwKKyAgICBub24t
ZW51bWVyYWJsZSBpbmhlcml0ZWQgdmFsdWUgcHJvcGVydHkpCithdXRob3I6IEphbWllIEt5bGUK
K2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBiYXNlID0ge307CitPYmpl
Y3QuZGVmaW5lUHJvcGVydHkoYmFzZSwgImZvbyIsIHsKKyAgdmFsdWU6IDQyCit9KTsKK3ZhciBv
ID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3du
KG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3duKG8sICJmb28iKScpOwpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2lu
aGVyaXRlZF9zZXR0ZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi9oYXNvd25faW5oZXJpdGVkX3NldHRlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZmJiOGVmYjcy
NjBmZmFiZGRhMGQ2OTQwYTExM2NlYjZmMWM5M2EwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9z
ZXR0ZXIuanMKQEAgLTAsMCArMSwxNyBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5
bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDog
c2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9w
ZXJ0eV1dIChsaXRlcmFsIGluaGVyaXRlZCBzZXR0ZXIgcHJvcGVydHkpCithdXRob3I6IEphbWll
IEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBiYXNlID0gewor
ICBzZXQgZm9vKHgpIHsKKyAgfQorfTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKwor
YXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3Qu
aGFzT3duKG8sICJmb28iKScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9zZXR0ZXJfY29uZmlndXJhYmxl
X2VudW1lcmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25faW5oZXJpdGVkX3NldHRlcl9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4wNWQzNTI4NDA4Y2E4NzcxOTFkNjkyYWRiOTVhNTY2YTJiMzJlYTIzCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9zZXR0ZXJfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKQEAg
LTAsMCArMSwyMiBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5o
YXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHld
XSAoY29uZmlndXJhYmxlLCBlbnVtZXJhYmxlCisgICAgaW5oZXJpdGVkIHNldHRlciBwcm9wZXJ0
eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8K
KwordmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCAiZm9vIiwgewor
ICBzZXQ6IGZ1bmN0aW9uKCkgezsKKyAgfSwKKyAgZW51bWVyYWJsZTogdHJ1ZSwKKyAgY29uZmln
dXJhYmxlOiB0cnVlCit9KTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0
LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3du
KG8sICJmb28iKScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9zZXR0ZXJfY29uZmlndXJhYmxlX25vbmVu
dW1lcmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9oYXNvd25faW5oZXJpdGVkX3NldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5iNDdlNzdhODExZDc0NmY1ZWRjZWQxZTRkMWE5ZmM3MDBmZTg2N2U2Ci0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX2luaGVyaXRlZF9zZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMK
QEAgLTAsMCArMSwyMSBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVj
dC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVy
dHldXSAoY29uZmlndXJhYmxlLCBub24tZW51bWVyYWJsZQorICAgIGluaGVyaXRlZCBzZXR0ZXIg
cHJvcGVydHkpCithdXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0K
Ky0tLSovCisKK3ZhciBiYXNlID0ge307CitPYmplY3QuZGVmaW5lUHJvcGVydHkoYmFzZSwgImZv
byIsIHsKKyAgc2V0OiBmdW5jdGlvbigpIHs7CisgIH0sCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQor
fSk7Cit2YXIgbyA9IE9iamVjdC5jcmVhdGUoYmFzZSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2Jq
ZWN0Lmhhc093bihvLCAiZm9vIiksIGZhbHNlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIiknKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3du
L2hhc293bl9pbmhlcml0ZWRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVy
aXRlZF9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTVi
MGFhMjM1ZTdjN2E0OTQwYTY2ZWVkZWZlMzNlNjc0ZDZhMGNmOAotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhl
cml0ZWRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEsMjEg
QEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNj
cmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKG5vbi1jb25m
aWd1cmFibGUsIGVudW1lcmFibGUKKyAgICBpbmhlcml0ZWQgc2V0dGVyIHByb3BlcnR5KQorYXV0
aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIg
YmFzZSA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsICJmb28iLCB7CisgIHNldDog
ZnVuY3Rpb24oKSB7OworICB9LAorICBlbnVtZXJhYmxlOiB0cnVlCit9KTsKK3ZhciBvID0gT2Jq
ZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJm
b28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3duKG8sICJmb28iKScpOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRl
ZF9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX3NldHRlcl9u
b25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40OTU1YzEzNDI4ZGQ4
NzZkYjZlZjI5YjM0OTI4ZjMwN2M5MDAzOWQzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF9zZXR0
ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMCBAQAorLy8g
Q29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9u
OiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAobm9uLWNvbmZpZ3VyYWJs
ZSwgbm9uLWVudW1lcmFibGUKKyAgICBpbmhlcml0ZWQgc2V0dGVyIHByb3BlcnR5KQorYXV0aG9y
OiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgYmFz
ZSA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsICJmb28iLCB7CisgIHNldDogZnVu
Y3Rpb24oKSB7OworICB9Cit9KTsKK3ZhciBvID0gT2JqZWN0LmNyZWF0ZShiYXNlKTsKKworYXNz
ZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgZmFsc2UsICdPYmplY3QuaGFz
T3duKG8sICJmb28iKScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93cml0YWJsZV9jb25maWd1cmFibGVf
ZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9pbmhlcml0ZWRfd3JpdGFibGVfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOGFjMzBjYmUwZTViNDUwMzViNTMwNzdkMGViMGMwYjMzOGZiZjM2ZAotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9pbmhlcml0ZWRfd3JpdGFibGVfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMK
QEAgLTAsMCArMSwyMiBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVj
dC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVy
dHldXSAod3JpdGFibGUsIGNvbmZpZ3VyYWJsZSwKKyAgICBlbnVtZXJhYmxlIGluaGVyaXRlZCB2
YWx1ZSBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFz
T3duXQorLS0tKi8KKwordmFyIGJhc2UgPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNl
LCAiZm9vIiwgeworICB2YWx1ZTogNDIsCisgIHdyaXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxl
OiB0cnVlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwordmFyIG8gPSBPYmplY3QuY3JlYXRl
KGJhc2UpOworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24obywgImZvbyIpLCBmYWxz
ZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX3dyaXRhYmxl
X2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93cml0YWJsZV9jb25maWd1cmFi
bGVfbm9uZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NjIyNjQ1YTRhMGNmNmJmMTcwYTk1MGNk
ZGJjYzU1N2E3ODlmZWNjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93cml0YWJsZV9jb25maWd1
cmFibGVfbm9uZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDIxIEBACisvLyBDb3B5cmlnaHQgKGMp
IDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMg
Z292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisK
Ky8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246ID4KKyAgICBQcm9w
ZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dICh3cml0YWJsZSwgY29uZmlndXJhYmxlLAorICAg
IG5vbi1lbnVtZXJhYmxlIGluaGVyaXRlZCB2YWx1ZSBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUg
S3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIGJhc2UgPSB7fTsK
K09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCAiZm9vIiwgeworICB2YWx1ZTogNDIsCisgIHdy
aXRhYmxlOiB0cnVlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwordmFyIG8gPSBPYmplY3Qu
Y3JlYXRlKGJhc2UpOworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24obywgImZvbyIp
LCBmYWxzZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25faW5oZXJpdGVkX3dy
aXRhYmxlX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93cml0YWJsZV9ub25j
b25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNjM2MDEyZTE3NWE0ZmUxZjUy
NzhmMmI4NDMxNmUyY2QyMjFkYWJjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRlZF93cml0YWJsZV9u
b25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDIxIEBACisvLyBDb3B5cmln
aHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246ID4KKyAg
ICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dICh3cml0YWJsZSwgbm9uLWNvbmZpZ3Vy
YWJsZSwKKyAgICBlbnVtZXJhYmxlIGluaGVyaXRlZCB2YWx1ZSBwcm9wZXJ0eSkKK2F1dGhvcjog
SmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIGJhc2Ug
PSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCAiZm9vIiwgeworICB2YWx1ZTogNDIs
CisgIHdyaXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVlCit9KTsKK3ZhciBvID0gT2Jq
ZWN0LmNyZWF0ZShiYXNlKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJm
b28iKSwgZmFsc2UsICdPYmplY3QuaGFzT3duKG8sICJmb28iKScpOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX2luaGVyaXRl
ZF93cml0YWJsZV9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRfd3JpdGFi
bGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2E0MWZmZjQ3
ZDFjNjRiMjgwYjFiOWRhOTQ2Yzc3MTg3NWY4Zjc2NAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9pbmhlcml0ZWRf
d3JpdGFibGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMCBA
QAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2Ny
aXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAod3JpdGFibGUs
IG5vbi1jb25maWd1cmFibGUsCisgICAgbm9uLWVudW1lcmFibGUgaW5oZXJpdGVkIHZhbHVlIHBy
b3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCist
LS0qLworCit2YXIgYmFzZSA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsICJmb28i
LCB7CisgIHZhbHVlOiA0MiwKKyAgd3JpdGFibGU6IHRydWUKK30pOwordmFyIG8gPSBPYmplY3Qu
Y3JlYXRlKGJhc2UpOworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24obywgImZvbyIp
LCBmYWxzZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fbm9uZXhpc3RlbnQu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25f
bm9uZXhpc3RlbnQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGMzNzM2ZWY1Yjc1MTEwYjNhYWE1YWE0M2M0ODNh
ZmUxNzQ0MGQ3ZAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9ub25leGlzdGVudC5qcwpAQCAtMCwwICsxLDEzIEBA
CisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3Jp
cHRpb246IFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKHByb3BlcnR5IGRvZXMgbm90
IGV4aXN0KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCist
LS0qLworCit2YXIgbyA9IHt9OworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24obywg
ImZvbyIpLCBmYWxzZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpJyk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dl
dHRlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hh
c293bl9vd25fZ2V0dGVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3NDg4MDQ2NjAwYzBlZjg2Yzk1ZWViZmRi
NmQxMDExN2MzMjE1NjcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlci5qcwpAQCAtMCwwICsxLDE3
IEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVz
Y3JpcHRpb246IFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKGxpdGVyYWwgb3duIGdl
dHRlciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFz
T3duXQorLS0tKi8KKwordmFyIG8gPSB7CisgIGdldCBmb28oKSB7CisgICAgcmV0dXJuIDQyOwor
ICB9Cit9OworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24obywgImZvbyIpLCB0cnVl
LCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIikgIT09IHRydWUnKTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fZ2V0dGVy
X2FuZF9zZXR0ZXIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hh
c093bi9oYXNvd25fb3duX2dldHRlcl9hbmRfc2V0dGVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVhMGU5ZDg5
Y2RmY2U1ODYzZWI0Yjc5ZDRkMDYyNjIzMmY1OTY0YmMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRl
cl9hbmRfc2V0dGVyLmpzCkBAIC0wLDAgKzEsMjEgQEAKKy8vIENvcHlyaWdodCAoYykgMjAyMSBK
YW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0K
K2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICAgIFByb3BlcnRpZXMg
LSBbW0hhc093blByb3BlcnR5XV0gKGxpdGVyYWwgb3duIGdldHRlci9zZXR0ZXIKKyAgICBwcm9w
ZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0t
Ki8KKwordmFyIG8gPSB7CisgIGdldCBmb28oKSB7CisgICAgcmV0dXJuIDQyOworICB9LAorICBz
ZXQgZm9vKHgpIHsKKyAgfQorfTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8s
ICJmb28iKSwgdHJ1ZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNv
d25fb3duX2dldHRlcl9hbmRfc2V0dGVyX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0
ZXJfYW5kX3NldHRlcl9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNDE4
NjBiNTI1OTgzY2I5ODExYzU5MzZlN2Y0OGI1Yzc1MWNkNDE3Ci0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9n
ZXR0ZXJfYW5kX3NldHRlcl9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDI0
IEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVz
Y3JpcHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChjb25maWd1
cmFibGUsIGVudW1lcmFibGUgb3duCisgICAgZ2V0dGVyL3NldHRlciBwcm9wZXJ0eSkKK2F1dGhv
cjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIG8g
PSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeworICBnZXQ6IGZ1bmN0aW9u
KCkgeworICAgIHJldHVybiA0MjsKKyAgfSwKKyAgc2V0OiBmdW5jdGlvbigpIHs7CisgIH0sCisg
IGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CisKK2Fzc2VydC5z
YW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFzT3duKG8s
ICJmb28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJfYW5kX3NldHRlcl9jb25maWd1
cmFibGVfbm9uZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9P
YmplY3QvaGFzT3duL2hhc293bl9vd25fZ2V0dGVyX2FuZF9zZXR0ZXJfY29uZmlndXJhYmxlX25v
bmVudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTJiZDAxYjRiNGE4ZjgzNjM2MDBhNTQ3OGJhZWUy
ZTMxMmVkMTc3ZgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fZ2V0dGVyX2FuZF9zZXR0ZXJfY29uZmlndXJh
YmxlX25vbmVudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMyBAQAorLy8gQ29weXJpZ2h0IChjKSAy
MDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisv
Ki0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVy
dGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAoY29uZmlndXJhYmxlLCBub24tZW51bWVyYWJsZSBv
d24KKyAgICBnZXR0ZXIvc2V0dGVyIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0
dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgbyA9IHt9OworT2JqZWN0LmRlZmlu
ZVByb3BlcnR5KG8sICJmb28iLCB7CisgIGdldDogZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIDQy
OworICB9LAorICBzZXQ6IGZ1bmN0aW9uKCkgezsKKyAgfSwKKyAgY29uZmlndXJhYmxlOiB0cnVl
Cit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgdHJ1ZSwg
J09iamVjdC5oYXNPd24obywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9h
bmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJfYW5kX3NldHRl
cl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZDgyZWRlYjZmMTE1
Y2Q5NTUwMmI5YmI3NWY3NTJiY2M4NTA4YWNjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJfYW5k
X3NldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDIzIEBACisv
LyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRp
b246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChub24tY29uZmlndXJh
YmxlLCBlbnVtZXJhYmxlIG93bgorICAgIGdldHRlci9zZXR0ZXIgcHJvcGVydHkpCithdXRob3I6
IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBvID0g
e307CitPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImZvbyIsIHsKKyAgZ2V0OiBmdW5jdGlvbigp
IHsKKyAgICByZXR1cm4gNDI7CisgIH0sCisgIHNldDogZnVuY3Rpb24oKSB7OworICB9LAorICBl
bnVtZXJhYmxlOiB0cnVlCit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8s
ICJmb28iKSwgdHJ1ZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNv
d25fb3duX2dldHRlcl9hbmRfc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293
bl9nZXR0ZXJfYW5kX3NldHRlcl9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wMWEzZmJmOTE3YjI3OWEwYmVkZjViNThmZTU4MDhlZDA2NzNjZjI4Ci0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
aGFzb3duX293bl9nZXR0ZXJfYW5kX3NldHRlcl9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJs
ZS5qcwpAQCAtMCwwICsxLDIyIEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4g
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMt
b2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Q
cm9wZXJ0eV1dIChub24tY29uZmlndXJhYmxlLCBub24tZW51bWVyYWJsZQorICAgIG93biBnZXR0
ZXIvc2V0dGVyIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVj
dC5oYXNPd25dCistLS0qLworCit2YXIgbyA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KG8s
ICJmb28iLCB7CisgIGdldDogZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIDQyOworICB9LAorICBz
ZXQ6IGZ1bmN0aW9uKCkgezsKKyAgfQorfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhh
c093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0gdHJ1ZScp
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX293bl9nZXR0ZXJfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9j
b25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZTVjNTRkZmIwZTRlYmNkZTY1
N2E2NjJmNjI2MmVhYTU0NzNmYWFiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJfY29uZmlndXJh
YmxlX2VudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMiBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIx
IEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0t
LQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGll
cyAtIFtbSGFzT3duUHJvcGVydHldXSAoY29uZmlndXJhYmxlLCBlbnVtZXJhYmxlIG93bgorICAg
IGdldHRlciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3Qu
aGFzT3duXQorLS0tKi8KKwordmFyIG8gPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAi
Zm9vIiwgeworICBnZXQ6IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiA0MjsKKyAgfSwKKyAgZW51
bWVyYWJsZTogdHJ1ZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKKworYXNzZXJ0LnNhbWVW
YWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgdHJ1ZSwgJ09iamVjdC5oYXNPd24obywgImZv
byIpICE9PSB0cnVlJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVy
YWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hh
c293bl9vd25fZ2V0dGVyX2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjM5ZDkyMThhNWYxZDEyZjRiYzgyMDIyZDNmMjJmZjY2YWYyMWQ4OGIKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25f
b3duX2dldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDIxIEBA
CisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3Jp
cHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChjb25maWd1cmFi
bGUsIG5vbi1lbnVtZXJhYmxlIG93bgorICAgIGdldHRlciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFt
aWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIG8gPSB7fTsK
K09iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeworICBnZXQ6IGZ1bmN0aW9uKCkgewor
ICAgIHJldHVybiA0MjsKKyAgfSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKKworYXNzZXJ0
LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgdHJ1ZSwgJ09iamVjdC5oYXNPd24o
bywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9ub25jb25maWd1cmFibGVf
ZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9vd25fZ2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjg3Mzg1OTc0YjU1NGIyNTAxMWZjNDEyM2NkMmFkZGJlYmM1MmNiYzIKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9o
YXNvd25fb3duX2dldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpAQCAtMCwwICsx
LDIxIEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgor
ZGVzY3JpcHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChub24t
Y29uZmlndXJhYmxlLCBlbnVtZXJhYmxlIG93bgorICAgIGdldHRlciBwcm9wZXJ0eSkKK2F1dGhv
cjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIG8g
PSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeworICBnZXQ6IGZ1bmN0aW9u
KCkgeworICAgIHJldHVybiA0MjsKKyAgfSwKKyAgZW51bWVyYWJsZTogdHJ1ZQorfSk7CisKK2Fz
c2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFz
T3duKG8sICJmb28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJfbm9uY29uZmlndXJh
YmxlX25vbmVudW1lcmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L2hhc093bi9oYXNvd25fb3duX2dldHRlcl9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJs
ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jZjVlZjBkZTY5MDBiZDRlYmM2NTBhZTQ5N2EwM2E1M2FlMGQ2MjU5
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX293bl9nZXR0ZXJfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUu
anMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9i
amVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJv
cGVydHldXSAobm9uLWNvbmZpZ3VyYWJsZSwgbm9uLWVudW1lcmFibGUKKyAgICBvd24gZ2V0dGVy
IHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25d
CistLS0qLworCit2YXIgbyA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7
CisgIGdldDogZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIDQyOworICB9Cit9KTsKKworYXNzZXJ0
LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgdHJ1ZSwgJ09iamVjdC5oYXNPd24o
bywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX25vbndyaXRhYmxlX2NvbmZpZ3VyYWJs
ZV9lbnVtZXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9o
YXNPd24vaGFzb3duX293bl9ub253cml0YWJsZV9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5jM2EwYjQzN2FiMGQzYTQyNzMxNmY0ZjVmMDQzNTc3OGYxOGVmNDZkCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNP
d24vaGFzb3duX293bl9ub253cml0YWJsZV9jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpAQCAt
MCwwICsxLDIwIEBACisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhh
c293bgorZGVzY3JpcHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1d
IChub24td3JpdGFibGUsIGNvbmZpZ3VyYWJsZSwKKyAgICBlbnVtZXJhYmxlIG93biB2YWx1ZSBw
cm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQor
LS0tKi8KKwordmFyIG8gPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgewor
ICB2YWx1ZTogNDIsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKKyAgZW51bWVyYWJsZTogdHJ1ZQor
fSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdP
YmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9ub253cml0YWJs
ZV9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fbm9ud3JpdGFibGVfbm9uY29uZmlndXJh
YmxlX2VudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWY5ZGRkODcyNTc2NDgzZjkwZDAyYzQ1YTJk
NDE0MTFhNmFlMjg4ZgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fbm9ud3JpdGFibGVfbm9uY29uZmlndXJh
YmxlX2VudW1lcmFibGUuanMKQEAgLTAsMCArMSwxOSBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIx
IEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0t
LQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGll
cyAtIFtbSGFzT3duUHJvcGVydHldXSAobm9uLXdyaXRhYmxlLCBub24tY29uZmlndXJhYmxlLAor
ICAgIGVudW1lcmFibGUgb3duIHZhbHVlIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitm
ZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgbyA9IHt9OworT2JqZWN0LmRl
ZmluZVByb3BlcnR5KG8sICJmb28iLCB7CisgIHZhbHVlOiA0MiwKKyAgZW51bWVyYWJsZTogdHJ1
ZQorfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUs
ICdPYmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9ub253cml0
ZWFibGVfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX25vbndyaXRlYWJsZV9jb25maWd1
cmFibGVfbm9uZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYjM5NjQ2NWQyNWZiZDc2OWMxZGJi
ZmJhNTU3N2IwMmQ3YWMwMTk0Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9ub253cml0ZWFibGVfY29uZmln
dXJhYmxlX25vbmVudW1lcmFibGUuanMKQEAgLTAsMCArMSwxOSBAQAorLy8gQ29weXJpZ2h0IChj
KSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
CisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJv
cGVydGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAobm9uLXdyaXRhYmxlLCBjb25maWd1cmFibGUs
CisgICAgbm9uLWVudW1lcmFibGUgb3duIHZhbHVlIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBL
eWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgbyA9IHt9OworT2Jq
ZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7CisgIHZhbHVlOiA0MiwKKyAgY29uZmlndXJh
YmxlOiB0cnVlCit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28i
KSwgdHJ1ZSwgJ09iamVjdC5oYXNPd24obywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3du
X25vbndyaXRlYWJsZV9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fbm9ud3JpdGVh
YmxlX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVkZmRmZDMx
MDk2NDliOGU0MDViNWIwODQ5YTU0NzY0NWJlMDkyOGIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX25vbndy
aXRlYWJsZV9ub25jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcwpAQCAtMCwwICsxLDE4IEBA
CisvLyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3Jp
cHRpb246ID4KKyAgICBQcm9wZXJ0aWVzIC0gW1tIYXNPd25Qcm9wZXJ0eV1dIChub24td3JpdGFi
bGUsIG5vbi1jb25maWd1cmFibGUsCisgICAgbm9uLWVudW1lcmFibGUgb3duIHZhbHVlIHByb3Bl
cnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0q
LworCit2YXIgbyA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7CisgIHZh
bHVlOiA0MgorfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiks
IHRydWUsICdPYmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9w
cm9wZXJ0eV9leGlzdHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi9oYXNvd25fb3duX3Byb3BlcnR5X2V4aXN0cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMmUyNzA2
NDkwNDIzN2Q4ZTRlMzY5ZjQzNzZiNzUzYzA4Y2IwZWFmCi0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9wcm9w
ZXJ0eV9leGlzdHMuanMKQEAgLTAsMCArMSwxNSBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEph
bWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQor
ZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiBQcm9wZXJ0aWVzIC0gW1tIYXNP
d25Qcm9wZXJ0eV1dIChvbGQgc3R5bGUgb3duIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxl
CitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgbyA9IHsKKyAgZm9vOiA0
MgorfTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuaGFzT3duKG8sICJmb28iKSwgdHJ1ZSwg
J09iamVjdC5oYXNPd24obywgImZvbyIpICE9PSB0cnVlJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3NldHRlci5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9v
d25fc2V0dGVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0YzAyMTY3MGQyN2U4YzkyNzJmMDdlNWJiNDYzOTk2
OGUxYzZkODMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3NldHRlci5qcwpAQCAtMCwwICsxLDE2IEBACisv
LyBDb3B5cmlnaHQgKGMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRp
b246IFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKGxpdGVyYWwgb3duIHNldHRlciBw
cm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQor
LS0tKi8KKwordmFyIG8gPSB7CisgIHNldCBmb28oeCkgeworICB9Cit9OworCithc3NlcnQuc2Ft
ZVZhbHVlKE9iamVjdC5oYXNPd24obywgImZvbyIpLCB0cnVlLCAnT2JqZWN0Lmhhc093bihvLCAi
Zm9vIikgIT09IHRydWUnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fc2V0dGVyX2NvbmZpZ3VyYWJsZV9lbnVtZXJh
YmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFz
b3duX293bl9zZXR0ZXJfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWRk
NTA5YWI2NzU4ZGZjY2ZkNWE5YjhkODEzYjM0NjYyYTdmMWZhNAotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25f
c2V0dGVyX2NvbmZpZ3VyYWJsZV9lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEsMjEgQEAKKy8vIENv
cHlyaWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjog
PgorICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKGNvbmZpZ3VyYWJsZSwgZW51
bWVyYWJsZSBvd24KKyAgICBzZXR0ZXIgcHJvcGVydHkpCithdXRob3I6IEphbWllIEt5bGUKK2Zl
YXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBvID0ge307CitPYmplY3QuZGVm
aW5lUHJvcGVydHkobywgImZvbyIsIHsKKyAgc2V0OiBmdW5jdGlvbigpIHs7CisgIH0sCisgIGVu
dW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CisKK2Fzc2VydC5zYW1l
VmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFzT3duKG8sICJm
b28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1l
cmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9o
YXNvd25fb3duX3NldHRlcl9jb25maWd1cmFibGVfbm9uZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5kZGI2ZDFiZDMwODlhYWE0YTZjYjMyMjdhODgxOTU4ODRiMzZiYWYyCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3du
X293bl9zZXR0ZXJfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMCBA
QAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2Ny
aXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAoY29uZmlndXJh
YmxlLCBub24tZW51bWVyYWJsZSBvd24KKyAgICBzZXR0ZXIgcHJvcGVydHkpCithdXRob3I6IEph
bWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBvID0ge307
CitPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImZvbyIsIHsKKyAgc2V0OiBmdW5jdGlvbigpIHs7
CisgIH0sCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2Jq
ZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0g
dHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXJfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3du
X3NldHRlcl9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZWZmOWIy
YTg5Mjg1YTIyYTNhNWQ3YmQ5OTFmNzAzMTA2Y2Y1ZGI0Ci0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0
ZXJfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29w
eXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+
CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAobm9uLWNvbmZpZ3VyYWJsZSwg
ZW51bWVyYWJsZSBvd24KKyAgICBzZXR0ZXIgcHJvcGVydHkpCithdXRob3I6IEphbWllIEt5bGUK
K2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBvID0ge307CitPYmplY3Qu
ZGVmaW5lUHJvcGVydHkobywgImZvbyIsIHsKKyAgc2V0OiBmdW5jdGlvbigpIHs7CisgIH0sCisg
IGVudW1lcmFibGU6IHRydWUKK30pOworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24o
bywgImZvbyIpLCB0cnVlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIikgIT09IHRydWUnKTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hh
c293bl9vd25fc2V0dGVyX25vbmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl9zZXR0ZXJf
bm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjhhMjljYjY5Nzg1
N2VlMTRhMTdmMDA3ZjQyNGE5N2E4MzJiNmJhMQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fc2V0dGVyX25v
bmNvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEsMTkgQEAKKy8vIENvcHly
aWdodCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgor
ICAgIFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKG5vbi1jb25maWd1cmFibGUsIG5v
bi1lbnVtZXJhYmxlCisgICAgb3duIHNldHRlciBwcm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3ls
ZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIG8gPSB7fTsKK09iamVj
dC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeworICBzZXQ6IGZ1bmN0aW9uKCkgezsKKyAgfQor
fSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdP
YmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl93cml0YWJsZV9j
b25maWd1cmFibGVfZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9PYmplY3QvaGFzT3duL2hhc293bl9vd25fd3JpdGFibGVfY29uZmlndXJhYmxlX2VudW1lcmFi
bGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZDkxZDQ0Njk4MjM2MDgxY2Q1ODJkODA1MGIwZTUxMDQxODZkY2U4
ZQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmpl
Y3QvaGFzT3duL2hhc293bl9vd25fd3JpdGFibGVfY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMK
QEAgLTAsMCArMSwyMSBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVj
dC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVy
dHldXSAod3JpdGFibGUsIGNvbmZpZ3VyYWJsZSwKKyAgICBlbnVtZXJhYmxlIG93biB2YWx1ZSBw
cm9wZXJ0eSkKK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQor
LS0tKi8KKwordmFyIG8gPSB7fTsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgewor
ICB2YWx1ZTogNDIsCisgIHdyaXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVlLAorICBj
b25maWd1cmFibGU6IHRydWUKK30pOworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24o
bywgImZvbyIpLCB0cnVlLCAnT2JqZWN0Lmhhc093bihvLCAiZm9vIikgIT09IHRydWUnKTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hh
c293bl9vd25fd3JpdGFibGVfY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3dyaXRhYmxl
X2NvbmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU1YmNiZTE5MTE0NjNm
ZTBhODEwOTBmMjI2ZjQ5MzY5N2U4MWUwNzIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9oYXNvd25fb3duX3dyaXRhYmxlX2Nv
bmZpZ3VyYWJsZV9ub25lbnVtZXJhYmxlLmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIENvcHlyaWdo
dCAoYykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICAg
IFByb3BlcnRpZXMgLSBbW0hhc093blByb3BlcnR5XV0gKHdyaXRhYmxlLCBjb25maWd1cmFibGUs
CisgICAgbm9uLWVudW1lcmFibGUgb3duIHZhbHVlIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBL
eWxlCitmZWF0dXJlczogW09iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgbyA9IHt9OworT2Jq
ZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7CisgIHZhbHVlOiA0MiwKKyAgd3JpdGFibGU6
IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoT2Jq
ZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFzT3duKG8sICJmb28iKSAhPT0g
dHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVj
dC9oYXNPd24vaGFzb3duX293bl93cml0YWJsZV9ub25jb25maWd1cmFibGVfZW51bWVyYWJsZS5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9v
d25fd3JpdGFibGVfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWEw
NTUyMmRkNTk4NjY3ZTY3YTgxMjdlN2M1MzJiM2FiOTI0OWRjZQotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL2hhc293bl9vd25f
d3JpdGFibGVfbm9uY29uZmlndXJhYmxlX2VudW1lcmFibGUuanMKQEAgLTAsMCArMSwyMCBAQAor
Ly8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgor
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0
aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVydHldXSAod3JpdGFibGUsIG5v
bi1jb25maWd1cmFibGUsCisgICAgZW51bWVyYWJsZSBvd24gdmFsdWUgcHJvcGVydHkpCithdXRo
b3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBv
ID0ge307CitPYmplY3QuZGVmaW5lUHJvcGVydHkobywgImZvbyIsIHsKKyAgdmFsdWU6IDQyLAor
ICB3cml0YWJsZTogdHJ1ZSwKKyAgZW51bWVyYWJsZTogdHJ1ZQorfSk7CisKK2Fzc2VydC5zYW1l
VmFsdWUoT2JqZWN0Lmhhc093bihvLCAiZm9vIiksIHRydWUsICdPYmplY3QuaGFzT3duKG8sICJm
b28iKSAhPT0gdHJ1ZScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL09iamVjdC9oYXNPd24vaGFzb3duX293bl93cml0YWJsZV9ub25jb25maWd1cmFibGVfbm9u
ZW51bWVyYWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9vd25fd3JpdGFibGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjY5MjU4NDZiZDIyNTYyMzA0MDA0MTZmYjE2Y2FmZmJiMDZkNGJjNgotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFz
T3duL2hhc293bl9vd25fd3JpdGFibGVfbm9uY29uZmlndXJhYmxlX25vbmVudW1lcmFibGUuanMK
QEAgLTAsMCArMSwxOSBAQAorLy8gQ29weXJpZ2h0IChjKSAyMDIxIEphbWllIEt5bGUuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVj
dC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgUHJvcGVydGllcyAtIFtbSGFzT3duUHJvcGVy
dHldXSAod3JpdGFibGUsIG5vbi1jb25maWd1cmFibGUsCisgICAgbm9uLWVudW1lcmFibGUgb3du
IHZhbHVlIHByb3BlcnR5KQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5o
YXNPd25dCistLS0qLworCit2YXIgbyA9IHt9OworT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJm
b28iLCB7CisgIHZhbHVlOiA0MiwKKyAgd3JpdGFibGU6IHRydWUKK30pOworCithc3NlcnQuc2Ft
ZVZhbHVlKE9iamVjdC5oYXNPd24obywgImZvbyIpLCB0cnVlLCAnT2JqZWN0Lmhhc093bihvLCAi
Zm9vIikgIT09IHRydWUnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9PYmplY3QvaGFzT3duL2xlbmd0aC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9PYmplY3QvaGFzT3duL2xlbmd0aC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40N2M2YWJiMGFiNDZkMjI2
MTJiYjliZDFlYzIzZGQ2NGI5ZjNmMjc2Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vbGVuZ3RoLmpzCkBAIC0wLDAgKzEsMzEg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSBKYW1pZSBLeWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1vYmplY3QuaGFzb3duCitkZXNj
cmlwdGlvbjogPgorICBPYmplY3QuaGFzT3duLmxlbmd0aCBpcyAyLgoraW5mbzogfAorICBPYmpl
Y3QuaGFzT3duICggX09fLCBfUF8gKQorCisgIEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4g
T2JqZWN0cworCisgIEV2ZXJ5IGJ1aWx0LWluIGZ1bmN0aW9uIG9iamVjdCwgaW5jbHVkaW5nIGNv
bnN0cnVjdG9ycywgaGFzIGEgImxlbmd0aCIKKyAgcHJvcGVydHkgd2hvc2UgdmFsdWUgaXMgYW4g
aW50ZWdlci4gVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoaXMKKyAgdmFsdWUgaXMgZXF1
YWwgdG8gdGhlIGxhcmdlc3QgbnVtYmVyIG9mIG5hbWVkIGFyZ3VtZW50cyBzaG93biBpbiB0aGUK
KyAgc3ViY2xhdXNlIGhlYWRpbmdzIGZvciB0aGUgZnVuY3Rpb24gZGVzY3JpcHRpb24uCisKKyAg
VW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSAibGVuZ3RoIiBwcm9wZXJ0eSBvZiBhIGJ1
aWx0LWluIEZ1bmN0aW9uCisgIG9iamVjdCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxl
XV06IGZhbHNlLCBbW0VudW1lcmFibGVdXTogZmFsc2UsCisgIFtbQ29uZmlndXJhYmxlXV06IHRy
dWUgfS4KK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCithdXRob3I6IEphbWllIEt5bGUK
K2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZlcmlmeVByb3BlcnR5KE9iamVj
dC5oYXNPd24sICJsZW5ndGgiLCB7CisgIHZhbHVlOiAyLAorICB3cml0YWJsZTogZmFsc2UsCisg
IGVudW1lcmFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUsCit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL25hbWUuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9uYW1lLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmQ2ODU5ZGY4OWJkYzhiOWZiMzdkNWMwMjRkZjMxZTQ4M2Y1NTVlMDIKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9uYW1lLmpzCkBAIC0wLDAgKzEsMjggQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSBKYW1pZSBL
eWxlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6
IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICBPYmplY3QuaGFzT3duLm5hbWUg
aXMgImhhc093biIuCitpbmZvOiB8CisgIE9iamVjdC5oYXNPd24gKCBfT18sIF9QXyApCisKKyAg
MTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgorICAgIEV2ZXJ5IGJ1aWx0
LWluIEZ1bmN0aW9uIG9iamVjdCwgaW5jbHVkaW5nIGNvbnN0cnVjdG9ycywgdGhhdCBpcyBub3QK
KyAgICBpZGVudGlmaWVkIGFzIGFuIGFub255bW91cyBmdW5jdGlvbiBoYXMgYSBuYW1lIHByb3Bl
cnR5IHdob3NlIHZhbHVlCisgICAgaXMgYSBTdHJpbmcuCisKKyAgICBVbmxlc3Mgb3RoZXJ3aXNl
IHNwZWNpZmllZCwgdGhlIG5hbWUgcHJvcGVydHkgb2YgYSBidWlsdC1pbiBGdW5jdGlvbgorICAg
IG9iamVjdCwgaWYgaXQgZXhpc3RzLCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06
IGZhbHNlLAorICAgIFtbRW51bWVyYWJsZV1dOiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1
ZSB9LgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2F1dGhvcjogSmFtaWUgS3lsZQor
ZmVhdHVyZXM6IFtPYmplY3QuaGFzT3duXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZShPYmpl
Y3QuaGFzT3duLm5hbWUsICJoYXNPd24iKTsKKwordmVyaWZ5Tm90RW51bWVyYWJsZShPYmplY3Qu
aGFzT3duLCAibmFtZSIpOwordmVyaWZ5Tm90V3JpdGFibGUoT2JqZWN0Lmhhc093biwgIm5hbWUi
KTsKK3ZlcmlmeUNvbmZpZ3VyYWJsZShPYmplY3QuaGFzT3duLCAibmFtZSIpOwpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vbm90LWEtY29u
c3RydWN0b3IuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9ub3QtYS1jb25zdHJ1Y3Rvci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MDFkOTRiMzJlN2UyN2NkMjlkNTNl
OTdmZDQwMTg3MmEyZGFjMDRjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vbm90LWEtY29uc3RydWN0b3IuanMKQEAgLTAsMCAr
MSwzMyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWVjbWFzY3JpcHQtc3Rh
bmRhcmQtYnVpbHQtaW4tb2JqZWN0cworZGVzY3JpcHRpb246ID4KKyAgT2JqZWN0Lmhhc093biBk
b2VzIG5vdCBpbXBsZW1lbnQgW1tDb25zdHJ1Y3RdXSwgaXMgbm90IG5ldy1hYmxlCitpbmZvOiB8
CisgIEVDTUFTY3JpcHQgRnVuY3Rpb24gT2JqZWN0cworCisgIEJ1aWx0LWluIGZ1bmN0aW9uIG9i
amVjdHMgdGhhdCBhcmUgbm90IGlkZW50aWZpZWQgYXMgY29uc3RydWN0b3JzIGRvIG5vdAorICBp
bXBsZW1lbnQgdGhlIFtbQ29uc3RydWN0XV0gaW50ZXJuYWwgbWV0aG9kIHVubGVzcyBvdGhlcndp
c2Ugc3BlY2lmaWVkIGluCisgIHRoZSBkZXNjcmlwdGlvbiBvZiBhIHBhcnRpY3VsYXIgZnVuY3Rp
b24uCisKKyAgc2VjLWV2YWx1YXRlbmV3CisKKyAgLi4uCisgIDcuIElmIElzQ29uc3RydWN0b3Io
Y29uc3RydWN0b3IpIGlzIGZhbHNlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIC4u
LgoraW5jbHVkZXM6IFtpc0NvbnN0cnVjdG9yLmpzXQorYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0
dXJlczogW1JlZmxlY3QuY29uc3RydWN0LCBhcnJvdy1mdW5jdGlvbiwgT2JqZWN0Lmhhc093bl0K
Ky0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIGlzQ29uc3RydWN0b3IoT2JqZWN0Lmhhc093
biksCisgIGZhbHNlLAorICAnaXNDb25zdHJ1Y3RvcihPYmplY3QuaGFzT3duKSBtdXN0IHJldHVy
biBmYWxzZScKKyk7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCAoKSA9PiB7CisgIG5ldyBP
YmplY3QuaGFzT3duKCcnKTsKK30sICdgbmV3IE9iamVjdC5oYXNPd24oXCdcJylgIHRocm93cyBU
eXBlRXJyb3InKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9P
YmplY3QvaGFzT3duL3Byb3RvdHlwZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9PYmplY3QvaGFzT3duL3Byb3RvdHlwZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMDAwM2U2N2MwZDYyYjIy
ZWZiYzU1MTJiNjJjYTQwZDNhN2I5NjIwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vcHJvdG90eXBlLmpzCkBAIC0wLDAgKzEs
MTMgQEAKKy8vIENvcHlyaWdodCAyMDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2luZm86
IE9iamVjdC5oYXNPd24gaGFzIG5vdCBwcm90b3R5cGUgcHJvcGVydHkKK2Rlc2NyaXB0aW9uOiA+
CisgICAgQ2hlY2tpbmcgaWYgb2J0YWluaW5nIHRoZSBwcm90b3R5cGUgcHJvcGVydHkgb2YgT2Jq
ZWN0Lmhhc093biBmYWlscworYXV0aG9yOiBKYW1pZSBLeWxlCitmZWF0dXJlczogW09iamVjdC5o
YXNPd25dCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5oYXNPd24ucHJvdG90eXBl
LCB1bmRlZmluZWQpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L09iamVjdC9oYXNPd24vc3ltYm9sX293bl9wcm9wZXJ0eS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJvbF9vd25fcHJvcGVydHkuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZjEwZGQwODRmYzk3NzQ5ODk4ZGU3ZWJjODIyMWZhYWVlNzAwOTBlOAotLS0gL2Rldi9u
dWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5
bWJvbF9vd25fcHJvcGVydHkuanMKQEAgLTAsMCArMSwzMiBAQAorLy8gQ29weXJpZ2h0IChDKSAy
MDIxIEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisv
Ki0tLQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiBPYmplY3QuaGFzT3du
IGNhbGxlZCB3aXRoIHN5bWJvbCBwcm9wZXJ0eSBrZXkKK2luZm86IHwKKyAgT2JqZWN0Lmhhc093
biAoIF9PXywgX1BfICkKKworICAxLiBMZXQgX29ial8gYmUgPyBUb09iamVjdChfT18pLgorICAx
LiBMZXQgX2tleV8gYmUgPyBUb1Byb3BlcnR5S2V5KF9QXykuCisgIC4uLgorYXV0aG9yOiBKYW1p
ZSBLeWxlCitmZWF0dXJlczogW1N5bWJvbCwgT2JqZWN0Lmhhc093bl0KKy0tLSovCisKK3ZhciBv
YmogPSB7fTsKK3ZhciBzeW0gPSBTeW1ib2woKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgT2Jq
ZWN0Lmhhc093bihvYmosIHN5bSksCisgIGZhbHNlLAorICAiUmV0dXJucyBmYWxzZSBpZiBzeW1i
b2wgb3duIHByb3BlcnR5IG5vdCBmb3VuZCIKKyk7CisKK29ialtzeW1dID0gMDsKKworYXNzZXJ0
LnNhbWVWYWx1ZSgKKyAgT2JqZWN0Lmhhc093bihvYmosIHN5bSksCisgIHRydWUsCisgICJSZXR1
cm5zIHRydWUgaWYgc3ltYm9sIG93biBwcm9wZXJ0eSBmb3VuZCIKKyk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9zeW1ib2xfcHJvcGVy
dHlfdG9QcmltaXRpdmUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0
L2hhc093bi9zeW1ib2xfcHJvcGVydHlfdG9QcmltaXRpdmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTRmZWU3
ZjhlMWQ3ZjVkNWI3YjdiZTdhMzViNTkxODg4MDViNmRmMgotLS0gL2Rldi9udWxsCisrKyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJvbF9wcm9wZXJ0
eV90b1ByaW1pdGl2ZS5qcwpAQCAtMCwwICsxLDM1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEg
SmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0t
Citlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246IE9iamVjdC5oYXNPd24gd2l0
aCBzeW1ib2wgYW5kIEBAdG9QcmltaXRpdmUgY29udmVyc2lvbgoraW5mbzogfAorICBPYmplY3Qu
aGFzT3duICggX09fLCBfUF8gKQorCisgIDEuIExldCBfb2JqXyBiZSA/IFRvT2JqZWN0KF9PXyku
CisgIDEuIExldCBfa2V5XyBiZSA/IFRvUHJvcGVydHlLZXkoX1BfKS4KKyAgLi4uCithdXRob3I6
IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbU3ltYm9sLnRvUHJpbWl0aXZlLCBPYmplY3QuaGFzT3du
XQorLS0tKi8KKwordmFyIG9iaiA9IHt9OwordmFyIHN5bSA9IFN5bWJvbCgpOworCit2YXIgY2Fs
bENvdW50ID0gMDsKK3ZhciB3cmFwcGVyID0ge307Cit3cmFwcGVyW1N5bWJvbC50b1ByaW1pdGl2
ZV0gPSBmdW5jdGlvbigpIHsKKyAgY2FsbENvdW50ICs9IDE7CisgIHJldHVybiBzeW07Cit9Owor
CitvYmpbc3ltXSA9IDA7CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIE9iamVjdC5oYXNPd24ob2Jq
LCB3cmFwcGVyKSwKKyAgdHJ1ZSwKKyAgIlJldHVybnMgdHJ1ZSBpZiBzeW1ib2wgb3duIHByb3Bl
cnR5IGZvdW5kIgorKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShjYWxsQ291bnQsIDEsICJ0b1ByaW1p
dGl2ZSBtZXRob2QgY2FsbGVkIGV4YWN0bHkgb25jZSIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vc3ltYm9sX3Byb3BlcnR5X3RvU3Ry
aW5nLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vc3lt
Ym9sX3Byb3BlcnR5X3RvU3RyaW5nLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNmYzg3MGI1ZWI1ODQxNTFiNWUx
NzcyMDBlZWVjNWRmMzRlNDU3MzQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi9zeW1ib2xfcHJvcGVydHlfdG9TdHJpbmcuanMK
QEAgLTAsMCArMSwzOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIEphbWllIEt5bGUuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVj
dC5oYXNvd24KK2Rlc2NyaXB0aW9uOiBPYmplY3QuaGFzT3duIHdpdGggc3ltYm9sIGFuZCB0b1N0
cmluZyBjb252ZXJzaW9uCitpbmZvOiB8CisgIE9iamVjdC5oYXNPd24gKCBfT18sIF9QXyApCisK
KyAgMS4gTGV0IF9vYmpfIGJlID8gVG9PYmplY3QoX09fKS4KKyAgMS4gTGV0IF9rZXlfIGJlID8g
VG9Qcm9wZXJ0eUtleShfUF8pLgorICAuLi4KK2F1dGhvcjogSmFtaWUgS3lsZQorZmVhdHVyZXM6
IFtTeW1ib2wsIE9iamVjdC5oYXNPd25dCistLS0qLworCit2YXIgb2JqID0ge307Cit2YXIgc3lt
ID0gU3ltYm9sKCk7CisKK3ZhciBjYWxsQ291bnQgPSAwOwordmFyIHdyYXBwZXIgPSB7CisgIHRv
U3RyaW5nOiBmdW5jdGlvbigpIHsKKyAgICBjYWxsQ291bnQgKz0gMTsKKyAgICByZXR1cm4gc3lt
OworICB9LAorICB2YWx1ZU9mOiBmdW5jdGlvbiAoKSB7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJF
cnJvcigidmFsdWVPZigpIGNhbGxlZCIpCisgIH0KK307CisKK29ialtzeW1dID0gMDsKKworYXNz
ZXJ0LnNhbWVWYWx1ZSgKKyAgT2JqZWN0Lmhhc093bihvYmosIHdyYXBwZXIpLAorICB0cnVlLAor
ICAiUmV0dXJucyB0cnVlIGlmIHN5bWJvbCBvd24gcHJvcGVydHkgZm91bmQiCispOworCithc3Nl
cnQuc2FtZVZhbHVlKGNhbGxDb3VudCwgMSwgInRvU3RyaW5nIG1ldGhvZCBjYWxsZWQgZXhhY3Rs
eSBvbmNlIik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2Jq
ZWN0L2hhc093bi9zeW1ib2xfcHJvcGVydHlfdmFsdWVPZi5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3N5bWJvbF9wcm9wZXJ0eV92YWx1ZU9mLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjgyYTFhZTFlMWIyNTEzNzUyODg4NjM2YjY2NTJmMjFjZDI3OTk3MjQKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093
bi9zeW1ib2xfcHJvcGVydHlfdmFsdWVPZi5qcwpAQCAtMCwwICsxLDM3IEBACisvLyBDb3B5cmln
aHQgKEMpIDIwMjEgSmFtaWUgS3lsZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisKKy8qLS0tCitlc2lkOiBzZWMtb2JqZWN0Lmhhc293bgorZGVzY3JpcHRpb246IE9iamVj
dC5oYXNPd24gd2l0aCBzeW1ib2wgYW5kIHZhbHVlT2YgY29udmVyc2lvbgoraW5mbzogfAorICBP
YmplY3QuaGFzT3duICggX09fLCBfUF8gKQorCisgIDEuIExldCBfb2JqXyBiZSA/IFRvT2JqZWN0
KF9PXykuCisgIDIuIExldCBfa2V5XyBiZSA/IFRvUHJvcGVydHlLZXkoX1BfKS4KKyAgLi4uCith
dXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbU3ltYm9sLCBPYmplY3QuaGFzT3duXQorLS0t
Ki8KKwordmFyIG9iaiA9IHt9OwordmFyIHN5bSA9IFN5bWJvbCgpOworCit2YXIgY2FsbENvdW50
ID0gMDsKK3ZhciB3cmFwcGVyID0geworICB2YWx1ZU9mOiBmdW5jdGlvbigpIHsKKyAgICBjYWxs
Q291bnQgKz0gMTsKKyAgICByZXR1cm4gc3ltOworICB9LAorICB0b1N0cmluZzogbnVsbAorfTsK
Kworb2JqW3N5bV0gPSAwOworCithc3NlcnQuc2FtZVZhbHVlKAorICBPYmplY3QuaGFzT3duKG9i
aiwgd3JhcHBlciksCisgIHRydWUsCisgICJSZXR1cm5zIHRydWUgaWYgc3ltYm9sIG93biBwcm9w
ZXJ0eSBmb3VuZCIKKyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoY2FsbENvdW50LCAxLCAidmFsdWVP
ZiBtZXRob2QgY2FsbGVkIGV4YWN0bHkgb25jZSIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vdG9vYmplY3RfYmVmb3JlX3RvcHJvcGVy
dHlrZXkuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi90
b29iamVjdF9iZWZvcmVfdG9wcm9wZXJ0eWtleS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMzhkNmM4OTYxOTk4
OTIzNDVjN2I0ZTExOGU5YzZkZjIwOTVmYjA1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24vdG9vYmplY3RfYmVmb3JlX3RvcHJv
cGVydHlrZXkuanMKQEAgLTAsMCArMSw0OCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIEphbWll
IEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5
IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6
IHNlYy1vYmplY3QuaGFzb3duCitkZXNjcmlwdGlvbjogPgorICBUb09iamVjdCBpcyBwZXJmb3Jt
ZWQgYmVmb3JlIFRvUHJvcGVydHlLZXkuCitpbmZvOiB8CisgIE9iamVjdC5oYXNPd24gKCBfT18s
IF9QXyApCisKKyAgMS4gTGV0IF9vYmpfIGJlID8gVG9PYmplY3QoX09fKS4KKyAgMi4gTGV0IF9r
ZXlfIGJlID8gVG9Qcm9wZXJ0eUtleShfUF8pLgorCisgIFRvUHJvcGVydHlLZXkgKCBhcmd1bWVu
dCApCisKKyAgMS4gTGV0IGtleSBiZSA/IFRvUHJpbWl0aXZlKGFyZ3VtZW50LCBoaW50IFN0cmlu
ZykuCithdXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbU3ltYm9sLnRvUHJpbWl0aXZlLCBP
YmplY3QuaGFzT3duXQorLS0tKi8KKwordmFyIGNhbGxDb3VudDEgPSAwOwordmFyIGNvZXJjaWJs
ZUtleTEgPSB7CisgIGdldCB0b1N0cmluZygpIHsKKyAgICBjYWxsQ291bnQxKys7CisgICAgdGhy
b3cgbmV3IFRlc3QyNjJFcnJvcigpOworICB9LAorICBnZXQgdmFsdWVPZigpIHsKKyAgICBjYWxs
Q291bnQxKys7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigpOworICB9LAorfTsKKworYXNz
ZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBPYmplY3QuaGFzT3duKG51bGws
IGNvZXJjaWJsZUtleTEpOworfSk7Cithc3NlcnQuc2FtZVZhbHVlKGNhbGxDb3VudDEsIDAsICJ0
b1N0cmluZyBhbmQgdmFsdWVPZiBtdXN0IG5vdCBiZSBjYWxsZWQiKTsKKworCit2YXIgY2FsbENv
dW50MiA9IDA7Cit2YXIgY29lcmNpYmxlS2V5MiA9IHt9OworY29lcmNpYmxlS2V5MltTeW1ib2wu
dG9QcmltaXRpdmVdID0gZnVuY3Rpb24oKSB7CisgIGNhbGxDb3VudDIrKzsKKyAgdGhyb3cgbmV3
IFRlc3QyNjJFcnJvcigpOworfTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9u
KCkgeworICBPYmplY3QuaGFzT3duKHVuZGVmaW5lZCwgY29lcmNpYmxlS2V5Mik7Cit9KTsKK2Fz
c2VydC5zYW1lVmFsdWUoY2FsbENvdW50MiwgMCwgIlN5bWJvbC50b1ByaW1pdGl2ZSBtdXN0IG5v
dCBiZSBjYWxsZWQiKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9PYmplY3QvaGFzT3duL3Rvb2JqZWN0X251bGwuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvT2JqZWN0L2hhc093bi90b29iamVjdF9udWxsLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxZTVm
M2RjOGJlODNjZDY1ODU2ZDkzMWMzNGRiODQ2NTI5NWMzZDQKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvT2JqZWN0L2hhc093bi90b29iamVjdF9udWxs
LmpzCkBAIC0wLDAgKzEsMTUgQEAKKy8vIENvcHlyaWdodCAyMDIxIEphbWllIEt5bGUuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLW9iamVj
dC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgTGV0IE8gYmUgdGhlIHJlc3VsdCBvZiBjYWxs
aW5nIFRvT2JqZWN0IHBhc3NpbmcgdGhlIHRoaXMgdmFsdWUgYXMKKyAgICB0aGUgYXJndW1lbnQu
CithdXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0Lmhhc093bl0KKy0tLSovCisK
K2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgT2JqZWN0Lmhhc093bihu
dWxsLCAnZm9vJyk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9PYmplY3QvaGFzT3duL3Rvb2JqZWN0X3VuZGVmaW5lZC5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9PYmplY3QvaGFzT3duL3Rvb2JqZWN0X3VuZGVmaW5lZC5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5hMmNkNzc3MTc1NTIwZDc2NTA3YjVjYzVhOWJkYTRhNzU4OWViNjQ0Ci0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL09iamVjdC9oYXNPd24v
dG9vYmplY3RfdW5kZWZpbmVkLmpzCkBAIC0wLDAgKzEsMTUgQEAKKy8vIENvcHlyaWdodCAyMDIx
IEphbWllIEt5bGUuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0t
LQorZXNpZDogc2VjLW9iamVjdC5oYXNvd24KK2Rlc2NyaXB0aW9uOiA+CisgICAgTGV0IE8gYmUg
dGhlIHJlc3VsdCBvZiBjYWxsaW5nIFRvT2JqZWN0IHBhc3NpbmcgdGhlIHRoaXMgdmFsdWUgYXMK
KyAgICB0aGUgYXJndW1lbnQuCithdXRob3I6IEphbWllIEt5bGUKK2ZlYXR1cmVzOiBbT2JqZWN0
Lmhhc093bl0KKy0tLSovCisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsK
KyAgT2JqZWN0Lmhhc093bih1bmRlZmluZWQsICdmb28nKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZlLWVsZW1lbnQt
ZnVuY3Rpb24tZXh0ZW5zaWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9Q
cm9taXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1bmN0aW9uLWV4dGVuc2libGUuanMKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRlNmE0YmMzYzBiMGY1ZDYxNGM0YWQ0Y2Y1NDMyNjMx
ODNjMDAwY2IuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZlLWVsZW1l
bnQtZnVuY3Rpb24tZXh0ZW5zaWJsZS5qcworKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAK
LS8vIENvcHlyaWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCi0KLS8qLS0tCi1lc2lkOiBzZWMtcHJvbWlzZS5yYWNlLXJlc29sdmUt
ZWxlbWVudC1mdW5jdGlvbnMKLWRlc2NyaXB0aW9uOiBUaGUgW1tFeHRlbnNpYmxlXV0gc2xvdCBv
ZiBQcm9taXNlLnJhY2UgUmVzb2x2ZSBFbGVtZW50IGZ1bmN0aW9ucwotaW5mbzogfAotICAxNyBF
Q01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVjdHM6Ci0gICAgVW5sZXNzIHNwZWNpZmll
ZCBvdGhlcndpc2UsIHRoZSBbW0V4dGVuc2libGVdXSBpbnRlcm5hbCBzbG90Ci0gICAgb2YgYSBi
dWlsdC1pbiBvYmplY3QgaW5pdGlhbGx5IGhhcyB0aGUgdmFsdWUgdHJ1ZS4KLS0tLSovCi0KLWxl
dCByZXNvbHZlRWxlbWVudEZ1bmN0aW9uOwotbGV0IHRoZW5hYmxlID0gewotICB0aGVuKGZ1bGZp
bGwpIHsKLSAgICByZXNvbHZlRWxlbWVudEZ1bmN0aW9uID0gZnVsZmlsbDsKLSAgfQotfTsKLQot
ZnVuY3Rpb24gTm90UHJvbWlzZShleGVjdXRvcikgewotICBleGVjdXRvcigoKSA9PiB7fSwgKCkg
PT4ge30pOwotfQotTm90UHJvbWlzZS5yZXNvbHZlID0gZnVuY3Rpb24odikgewotICByZXR1cm4g
djsKLX07Ci1Qcm9taXNlLnJhY2UuY2FsbChOb3RQcm9taXNlLCBbdGhlbmFibGVdKTsKLQotYXNz
ZXJ0KE9iamVjdC5pc0V4dGVuc2libGUocmVzb2x2ZUVsZW1lbnRGdW5jdGlvbikpOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZl
LWVsZW1lbnQtZnVuY3Rpb24tbmFtZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9Qcm9taXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1bmN0aW9uLW5hbWUuanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc4YTc0MTYyOGQ3NWNhYTQxYWJlOWMyMWZkMTk4ZDgzOWY2
ZGRhM2UuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZlLWVsZW1lbnQt
ZnVuY3Rpb24tbmFtZS5qcworKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLS8vIENvcHly
aWdodCAoQykgMjAyMCBSaWNrIFdhbGRyb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBUaGlz
IGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNF
IGZpbGUuCi0KLS8qLS0tCi1lc2lkOiBzZWMtcHJvbWlzZS5yYWNlLXJlc29sdmUtZWxlbWVudC1m
dW5jdGlvbnMKLWRlc2NyaXB0aW9uOiBUaGUgYG5hbWVgIHByb3BlcnR5IG9mIFByb21pc2UucmFj
ZSBSZXNvbHZlIEVsZW1lbnQgZnVuY3Rpb25zCi1pbmZvOiB8Ci0gIEEgcHJvbWlzZSByZXNvbHZl
IGZ1bmN0aW9uIGlzIGFuIGFub255bW91cyBidWlsdC1pbiBmdW5jdGlvbi4KLQotICAxNyBFQ01B
U2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVjdHM6Ci0gICAgRXZlcnkgYnVpbHQtaW4gZnVu
Y3Rpb24gb2JqZWN0LCBpbmNsdWRpbmcgY29uc3RydWN0b3JzLCBoYXMgYSBgbmFtZWAKLSAgICBw
cm9wZXJ0eSB3aG9zZSB2YWx1ZSBpcyBhIFN0cmluZy4gRnVuY3Rpb25zIHRoYXQgYXJlIGlkZW50
aWZpZWQgYXMKLSAgICBhbm9ueW1vdXMgZnVuY3Rpb25zIHVzZSB0aGUgZW1wdHkgc3RyaW5nIGFz
IHRoZSB2YWx1ZSBvZiB0aGUgYG5hbWVgCi0gICAgcHJvcGVydHkuCi0gICAgVW5sZXNzIG90aGVy
d2lzZSBzcGVjaWZpZWQsIHRoZSBgbmFtZWAgcHJvcGVydHkgb2YgYSBidWlsdC1pbiBmdW5jdGlv
bgotICAgIG9iamVjdCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06ICpmYWxzZSos
IFtbRW51bWVyYWJsZV1dOiAqZmFsc2UqLAotICAgIFtbQ29uZmlndXJhYmxlXV06ICp0cnVlKiB9
LgotaW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KLS0tLSovCi0KLWxldCByZXNvbHZlRWxl
bWVudEZ1bmN0aW9uOwotbGV0IHRoZW5hYmxlID0gewotICB0aGVuKGZ1bGZpbGwpIHsKLSAgICBy
ZXNvbHZlRWxlbWVudEZ1bmN0aW9uID0gZnVsZmlsbDsKLSAgfQotfTsKLQotZnVuY3Rpb24gTm90
UHJvbWlzZShleGVjdXRvcikgewotICBleGVjdXRvcigoKSA9PiB7fSwgKCkgPT4ge30pOwotfQot
Tm90UHJvbWlzZS5yZXNvbHZlID0gZnVuY3Rpb24odikgewotICByZXR1cm4gdjsKLX07Ci1Qcm9t
aXNlLnJhY2UuY2FsbChOb3RQcm9taXNlLCBbdGhlbmFibGVdKTsKLQotdmVyaWZ5UHJvcGVydHko
cmVzb2x2ZUVsZW1lbnRGdW5jdGlvbiwgIm5hbWUiLCB7Ci0gIHZhbHVlOiAiIiwgd3JpdGFibGU6
IGZhbHNlLCBlbnVtZXJhYmxlOiBmYWxzZSwgY29uZmlndXJhYmxlOiB0cnVlCi19KTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9Qcm9taXNlL3JhY2UvcmVzb2x2
ZS1lbGVtZW50LWZ1bmN0aW9uLW5vbmNvbnN0cnVjdG9yLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL1Byb21pc2UvcmFjZS9yZXNvbHZlLWVsZW1lbnQtZnVuY3Rpb24tbm9uY29u
c3RydWN0b3IuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGI3NDVmMGVhNDJlYjc1
YzU4YWY3N2FmZGIzMWI4Yzc3YzM1OGQxMWEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1Byb21pc2Uv
cmFjZS9yZXNvbHZlLWVsZW1lbnQtZnVuY3Rpb24tbm9uY29uc3RydWN0b3IuanMKKysrIC9kZXYv
bnVsbApAQCAtMSwzMiArMCwwIEBACi0vLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9u
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBC
U0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotCi0vKi0tLQotZXNpZDogc2Vj
LXByb21pc2UucmFjZS1yZXNvbHZlLWVsZW1lbnQtZnVuY3Rpb25zCi1kZXNjcmlwdGlvbjogUHJv
bWlzZS5yYWNlIFJlc29sdmUgRWxlbWVudCBmdW5jdGlvbnMgYXJlIG5vdCBjb25zdHJ1Y3RvcnMK
LWluZm86IHwKLSAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgotICAg
IEJ1aWx0LWluIGZ1bmN0aW9uIG9iamVjdHMgdGhhdCBhcmUgbm90IGlkZW50aWZpZWQgYXMgY29u
c3RydWN0b3JzIGRvIG5vdAotICAgIGltcGxlbWVudCB0aGUgW1tDb25zdHJ1Y3RdXSBpbnRlcm5h
bCBtZXRob2QgdW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQKLSAgICBpbiB0aGUgZGVzY3JpcHRp
b24gb2YgYSBwYXJ0aWN1bGFyIGZ1bmN0aW9uLgotLS0tKi8KLQotbGV0IHJlc29sdmVFbGVtZW50
RnVuY3Rpb247Ci1sZXQgdGhlbmFibGUgPSB7Ci0gIHRoZW4oZnVsZmlsbCkgewotICAgIHJlc29s
dmVFbGVtZW50RnVuY3Rpb24gPSBmdWxmaWxsOwotICB9Ci19OwotCi1mdW5jdGlvbiBOb3RQcm9t
aXNlKGV4ZWN1dG9yKSB7Ci0gIGV4ZWN1dG9yKCgpID0+IHt9LCAoKSA9PiB7fSk7Ci19Ci1Ob3RQ
cm9taXNlLnJlc29sdmUgPSBmdW5jdGlvbih2KSB7Ci0gIHJldHVybiB2OwotfTsKLVByb21pc2Uu
cmFjZS5jYWxsKE5vdFByb21pc2UsIFt0aGVuYWJsZV0pOwotCi1hc3NlcnQuc2FtZVZhbHVlKE9i
amVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyZXNvbHZlRWxlbWVudEZ1bmN0aW9u
LCAncHJvdG90eXBlJyksIGZhbHNlKTsKLWFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAoKSA9PiB7
Ci0gIG5ldyByZXNvbHZlRWxlbWVudEZ1bmN0aW9uKCk7Ci19KTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9Qcm9taXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1
bmN0aW9uLXByb3RvdHlwZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9Qcm9t
aXNlL3JhY2UvcmVzb2x2ZS1lbGVtZW50LWZ1bmN0aW9uLXByb3RvdHlwZS5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggYmZlZmViNDkwM2FlNWQ0MDdhZmEyZmM1NWY5YmNiNGE1ZjRj
M2EwMC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvUHJvbWlzZS9yYWNlL3Jlc29sdmUtZWxlbWVudC1m
dW5jdGlvbi1wcm90b3R5cGUuanMKKysrIC9kZXYvbnVsbApAQCAtMSwzMCArMCwwIEBACi0vLyBD
b3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgotCi0vKi0tLQotZXNpZDogc2VjLXByb21pc2UucmFjZS1yZXNvbHZlLWVsZW1l
bnQtZnVuY3Rpb25zCi1kZXNjcmlwdGlvbjogVGhlIFtbUHJvdG90eXBlXV0gb2YgUHJvbWlzZS5y
YWNlIFJlc29sdmUgRWxlbWVudCBmdW5jdGlvbnMKLWluZm86IHwKLSAgMTcgRUNNQVNjcmlwdCBT
dGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgotICAgIFVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVk
IGV2ZXJ5IGJ1aWx0LWluIGZ1bmN0aW9uIGFuZCBldmVyeSBidWlsdC1pbgotICAgIGNvbnN0cnVj
dG9yIGhhcyB0aGUgRnVuY3Rpb24gcHJvdG90eXBlIG9iamVjdCwgd2hpY2ggaXMgdGhlIGluaXRp
YWwKLSAgICB2YWx1ZSBvZiB0aGUgZXhwcmVzc2lvbiBGdW5jdGlvbi5wcm90b3R5cGUgKDE5LjIu
MyksIGFzIHRoZSB2YWx1ZSBvZgotICAgIGl0cyBbW1Byb3RvdHlwZV1dIGludGVybmFsIHNsb3Qu
Ci0tLS0qLwotCi1sZXQgcmVzb2x2ZUVsZW1lbnRGdW5jdGlvbjsKLWxldCB0aGVuYWJsZSA9IHsK
LSAgdGhlbihmdWxmaWxsKSB7Ci0gICAgcmVzb2x2ZUVsZW1lbnRGdW5jdGlvbiA9IGZ1bGZpbGw7
Ci0gIH0KLX07Ci0KLWZ1bmN0aW9uIE5vdFByb21pc2UoZXhlY3V0b3IpIHsKLSAgZXhlY3V0b3Io
KCkgPT4ge30sICgpID0+IHt9KTsKLX0KLU5vdFByb21pc2UucmVzb2x2ZSA9IGZ1bmN0aW9uKHYp
IHsKLSAgcmV0dXJuIHY7Ci19OwotUHJvbWlzZS5yYWNlLmNhbGwoTm90UHJvbWlzZSwgW3RoZW5h
YmxlXSk7Ci0KLWFzc2VydC5zYW1lVmFsdWUoT2JqZWN0LmdldFByb3RvdHlwZU9mKHJlc29sdmVF
bGVtZW50RnVuY3Rpb24pLCBGdW5jdGlvbi5wcm90b3R5cGUpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0
ZWxlbmd0aC1kaW1pbnVpdGl2ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtZGltaW51aXRpdmUuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNzU2MmJlM2VhZjdjNTZmNTljMDY4ZWM2OTBiMTZmYThjNTY2NWFjYwotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1
ZmZlci9vcHRpb25zLW1heGJ5dGVsZW5ndGgtZGltaW51aXRpdmUuanMKQEAgLTAsMCArMSwyMiBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5
YnVmZmVyLWNvbnN0cnVjdG9yCitkZXNjcmlwdGlvbjogfAorICBJbnZva2VkIHdpdGggYW4gb3B0
aW9ucyBvYmplY3Qgd2hvc2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IGlzIGxlc3MgdGhhbgor
ICB0aGUgbGVuZ3RoLgoraW5mbzogfAorICBTaGFyZWRBcnJheUJ1ZmZlciggbGVuZ3RoIFsgLCBv
cHRpb25zIF0gKQorCisgIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQsIHRocm93IGEgVHlw
ZUVycm9yIGV4Y2VwdGlvbi4KKyAgMi4gTGV0IGJ5dGVMZW5ndGggYmUgPyBUb0luZGV4KGxlbmd0
aCkuCisgIDMuIExldCByZXF1ZXN0ZWRNYXhCeXRlTGVuZ3RoIGJlID8gR2V0QXJyYXlCdWZmZXJN
YXhCeXRlTGVuZ3RoT3B0aW9uKG9wdGlvbnMpLgorICA0LiBJZiByZXF1ZXN0ZWRNYXhCeXRlTGVu
Z3RoIGlzIGVtcHR5LCB0aGVuCisgICAgIGEuIFsuLi5dCisgIDUuIElmIGJ5dGVMZW5ndGggPiBy
ZXF1ZXN0ZWRNYXhCeXRlTGVuZ3RoLCB0aHJvdyBhIFJhbmdlRXJyb3IgZXhjZXB0aW9uLgorZmVh
dHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQudGhyb3dzKFJh
bmdlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBuZXcgU2hhcmVkQXJyYXlCdWZmZXIoMSwge21heEJ5
dGVMZW5ndGg6IDB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1leGNlc3NpdmUu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0
aW9ucy1tYXhieXRlbGVuZ3RoLWV4Y2Vzc2l2ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43N2ZlYzhhZjU1ZThm
NGM0MzViNTBmOGE4NDM1MzJkZGVjMTMxZjZiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxl
bmd0aC1leGNlc3NpdmUuanMKQEAgLTAsMCArMSwyOCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIx
IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5YnVmZmVyLWNvbnN0cnVjdG9yCitkZXNj
cmlwdGlvbjogfAorICBJbnZva2VkIHdpdGggYW4gb3B0aW9ucyBvYmplY3Qgd2hvc2UgYG1heEJ5
dGVMZW5ndGhgIHByb3BlcnR5IGV4Y2VlZHMgdGhlCisgIG1heGltdW0gbGVuZ3RoIHZhbHVlCitp
bmZvOiB8CisgIFNoYXJlZEFycmF5QnVmZmVyKCBsZW5ndGggWyAsIG9wdGlvbnMgXSApCisKKyAg
MS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5lZCwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9u
LgorICAyLiBMZXQgYnl0ZUxlbmd0aCBiZSA/IFRvSW5kZXgobGVuZ3RoKS4KKyAgMy4gTGV0IHJl
cXVlc3RlZE1heEJ5dGVMZW5ndGggYmUgPyBHZXRBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhPcHRp
b24ob3B0aW9ucykuCisgIFsuLi5dCisKKyAgMS4xLjUgR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVu
Z3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAgMS4gSWYgVHlwZShvcHRpb25zKSBpcyBub3QgT2Jq
ZWN0LCByZXR1cm4gZW1wdHkuCisgIDIuIExldCBtYXhCeXRlTGVuZ3RoIGJlID8gR2V0KG9wdGlv
bnMsICJtYXhCeXRlTGVuZ3RoIikuCisgIDMuIElmIG1heEJ5dGVMZW5ndGggaXMgdW5kZWZpbmVk
LCByZXR1cm4gZW1wdHkuCisgIDQuIFJldHVybiA/IFRvSW5kZXgobWF4Qnl0ZUxlbmd0aCkuCitm
ZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC50aHJvd3Mo
UmFuZ2VFcnJvciwgZnVuY3Rpb24oKSB7CisgIC8vIE1hdGgucG93KDIsIDUzKSA9IDkwMDcxOTky
NTQ3NDA5OTIKKyAgbmV3IFNoYXJlZEFycmF5QnVmZmVyKDAsIHsgbWF4Qnl0ZUxlbmd0aDogOTAw
NzE5OTI1NDc0MDk5MiB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1uZWdhdGl2
ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9v
cHRpb25zLW1heGJ5dGVsZW5ndGgtbmVnYXRpdmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzQ3ZjMzY2VlNGY0
Y2UyYTUwZGY4ZTMwNDJiZTA2MTI4YjcwYzk1OAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW1heGJ5dGVs
ZW5ndGgtbmVnYXRpdmUuanMKQEAgLTAsMCArMSwyNSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIx
IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5YnVmZmVyLWNvbnN0cnVjdG9yCitkZXNj
cmlwdGlvbjogSW52b2tlZCB3aXRoIGFuIG9wdGlvbnMgb2JqZWN0IHdob3NlIGBtYXhCeXRlTGVu
Z3RoYCBwcm9wZXJ0eSBpcyBuZWdhdGl2ZQoraW5mbzogfAorICBTaGFyZWRBcnJheUJ1ZmZlcigg
bGVuZ3RoIFsgLCBvcHRpb25zIF0gKQorCisgIDEuIElmIE5ld1RhcmdldCBpcyB1bmRlZmluZWQs
IHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgMi4gTGV0IGJ5dGVMZW5ndGggYmUgPyBU
b0luZGV4KGxlbmd0aCkuCisgIDMuIExldCByZXF1ZXN0ZWRNYXhCeXRlTGVuZ3RoIGJlID8gR2V0
QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uKG9wdGlvbnMpLgorICBbLi4uXQorCisgIDEu
MS41IEdldEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aE9wdGlvbiAoIG9wdGlvbnMgKQorCisgIDEu
IElmIFR5cGUob3B0aW9ucykgaXMgbm90IE9iamVjdCwgcmV0dXJuIGVtcHR5LgorICAyLiBMZXQg
bWF4Qnl0ZUxlbmd0aCBiZSA/IEdldChvcHRpb25zLCAibWF4Qnl0ZUxlbmd0aCIpLgorICAzLiBJ
ZiBtYXhCeXRlTGVuZ3RoIGlzIHVuZGVmaW5lZCwgcmV0dXJuIGVtcHR5LgorICA0LiBSZXR1cm4g
PyBUb0luZGV4KG1heEJ5dGVMZW5ndGgpLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZm
ZXJdCistLS0qLworCithc3NlcnQudGhyb3dzKFJhbmdlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBu
ZXcgU2hhcmVkQXJyYXlCdWZmZXIoMCwgeyBtYXhCeXRlTGVuZ3RoOiAtMSB9KTsKK30pOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVy
L29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1vYmplY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLW9iamVjdC5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5hMGViZGRmODg1NTYxNTAwZjIwMzg4Y2NlODk1MzRjZWM2MjU3YWU0Ci0t
LSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFy
cmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1vYmplY3QuanMKQEAgLTAsMCArMSw0NSBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5
YnVmZmVyLWNvbnN0cnVjdG9yCitkZXNjcmlwdGlvbjogfAorICBJbnZva2VkIHdpdGggYW4gb3B0
aW9ucyBvYmplY3Qgd2hvc2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IGNhbm5vdCBiZQorICBj
b2VyY2VkIHRvIGEgcHJpbWl0aXZlIHZhbHVlCitpbmZvOiB8CisgIFNoYXJlZEFycmF5QnVmZmVy
KCBsZW5ndGggWyAsIG9wdGlvbnMgXSApCisKKyAgMS4gSWYgTmV3VGFyZ2V0IGlzIHVuZGVmaW5l
ZCwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICAyLiBMZXQgYnl0ZUxlbmd0aCBiZSA/
IFRvSW5kZXgobGVuZ3RoKS4KKyAgMy4gTGV0IHJlcXVlc3RlZE1heEJ5dGVMZW5ndGggYmUgPyBH
ZXRBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhPcHRpb24ob3B0aW9ucykuCisgIFsuLi5dCisKKyAg
MS4xLjUgR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAg
MS4gSWYgVHlwZShvcHRpb25zKSBpcyBub3QgT2JqZWN0LCByZXR1cm4gZW1wdHkuCisgIDIuIExl
dCBtYXhCeXRlTGVuZ3RoIGJlID8gR2V0KG9wdGlvbnMsICJtYXhCeXRlTGVuZ3RoIikuCisgIDMu
IElmIG1heEJ5dGVMZW5ndGggaXMgdW5kZWZpbmVkLCByZXR1cm4gZW1wdHkuCisgIDQuIFJldHVy
biA/IFRvSW5kZXgobWF4Qnl0ZUxlbmd0aCkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1
ZmZlcl0KKy0tLSovCisKK3ZhciBsb2cgPSBbXTsKK3ZhciBvcHRpb25zID0geworICBtYXhCeXRl
TGVuZ3RoOiB7CisgICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkgeworICAgICAgbG9nLnB1c2goJ3Rv
U3RyaW5nJyk7CisgICAgICByZXR1cm4ge307CisgICAgfSwKKyAgICB2YWx1ZU9mOiBmdW5jdGlv
bigpIHsKKyAgICAgIGxvZy5wdXNoKCd2YWx1ZU9mJyk7CisgICAgICByZXR1cm4ge307CisgICAg
fQorICB9Cit9OworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIG5l
dyBTaGFyZWRBcnJheUJ1ZmZlcigwLCBvcHRpb25zKTsKK30pOworCithc3NlcnQuc2FtZVZhbHVl
KGxvZy5sZW5ndGgsIDIpOworYXNzZXJ0LnNhbWVWYWx1ZShsb2dbMF0sICd2YWx1ZU9mJyk7Cith
c3NlcnQuc2FtZVZhbHVlKGxvZ1sxXSwgJ3RvU3RyaW5nJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRl
bGVuZ3RoLXBvaXNvbmVkLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC1wb2lzb25lZC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yYWU1YWFjNzJiZGU3ODJkYjUwOTQ4MzE1ZTUxZTQ3Njg1OTQ5MTQ0Ci0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29w
dGlvbnMtbWF4Ynl0ZWxlbmd0aC1wb2lzb25lZC5qcwpAQCAtMCwwICsxLDI5IEBACisvLyBDb3B5
cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtc2hhcmVkYXJyYXlidWZmZXItY29u
c3RydWN0b3IKK2Rlc2NyaXB0aW9uOiBJbnZva2VkIHdpdGggYW4gb3B0aW9ucyBvYmplY3Qgd2hv
c2UgYG1heEJ5dGVMZW5ndGhgIHByb3BlcnR5IHRocm93cworaW5mbzogfAorICBTaGFyZWRBcnJh
eUJ1ZmZlciggbGVuZ3RoIFsgLCBvcHRpb25zIF0gKQorCisgIDEuIElmIE5ld1RhcmdldCBpcyB1
bmRlZmluZWQsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAgMi4gTGV0IGJ5dGVMZW5n
dGggYmUgPyBUb0luZGV4KGxlbmd0aCkuCisgIDMuIExldCByZXF1ZXN0ZWRNYXhCeXRlTGVuZ3Ro
IGJlID8gR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uKG9wdGlvbnMpLgorICBbLi4u
XQorCisgIDEuMS41IEdldEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aE9wdGlvbiAoIG9wdGlvbnMg
KQorCisgIDEuIElmIFR5cGUob3B0aW9ucykgaXMgbm90IE9iamVjdCwgcmV0dXJuIGVtcHR5Lgor
ICAyLiBMZXQgbWF4Qnl0ZUxlbmd0aCBiZSA/IEdldChvcHRpb25zLCAibWF4Qnl0ZUxlbmd0aCIp
LgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgb3B0aW9u
cyA9IHsKKyAgZ2V0IG1heEJ5dGVMZW5ndGgoKSB7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJv
cigpOworICB9Cit9OworCithc3NlcnQudGhyb3dzKFRlc3QyNjJFcnJvciwgZnVuY3Rpb24oKSB7
CisgIG5ldyBTaGFyZWRBcnJheUJ1ZmZlcigwLCBvcHRpb25zKTsKK30pOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL29wdGlvbnMt
bWF4Ynl0ZWxlbmd0aC11bmRlZmluZWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0aW9ucy1tYXhieXRlbGVuZ3RoLXVuZGVmaW5lZC5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi45YTUzOWM4YTFkM2NmZmE2NDVmYzYzODI2MGIwMWQ3MjA5ZDNjYTJiCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5
QnVmZmVyL29wdGlvbnMtbWF4Ynl0ZWxlbmd0aC11bmRlZmluZWQuanMKQEAgLTAsMCArMSwyNCBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5
YnVmZmVyLWNvbnN0cnVjdG9yCitkZXNjcmlwdGlvbjogSW52b2tlZCB3aXRoIGFuIG9wdGlvbnMg
b2JqZWN0IHdob3NlIGBtYXhCeXRlTGVuZ3RoYCBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKK2luZm86
IHwKKyAgU2hhcmVkQXJyYXlCdWZmZXIoIGxlbmd0aCBbICwgb3B0aW9ucyBdICkKKworICAxLiBJ
ZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVkLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisg
IDIuIExldCBieXRlTGVuZ3RoIGJlID8gVG9JbmRleChsZW5ndGgpLgorICAzLiBMZXQgcmVxdWVz
dGVkTWF4Qnl0ZUxlbmd0aCBiZSA/IEdldEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aE9wdGlvbihv
cHRpb25zKS4KKyAgNC4gSWYgcmVxdWVzdGVkTWF4Qnl0ZUxlbmd0aCBpcyBlbXB0eSwgdGhlbgor
ICAgICBhLiBSZXR1cm4gPyBBbGxvY2F0ZVNoYXJlZEFycmF5QnVmZmVyKE5ld1RhcmdldCwgYnl0
ZUxlbmd0aCkuCisKKyAgMS4xLjUgR2V0QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uICgg
b3B0aW9ucyApCisKKyAgMS4gSWYgVHlwZShvcHRpb25zKSBpcyBub3QgT2JqZWN0LCByZXR1cm4g
ZW1wdHkuCisgIDIuIExldCBtYXhCeXRlTGVuZ3RoIGJlID8gR2V0KG9wdGlvbnMsICJtYXhCeXRl
TGVuZ3RoIikuCisgIDMuIElmIG1heEJ5dGVMZW5ndGggaXMgdW5kZWZpbmVkLCByZXR1cm4gZW1w
dHkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5z
YW1lVmFsdWUobmV3IFNoYXJlZEFycmF5QnVmZmVyKDAsIHt9KS5yZXNpemFibGUsIGZhbHNlKTsK
K2Fzc2VydC5zYW1lVmFsdWUobmV3IFNoYXJlZEFycmF5QnVmZmVyKDAsIHttYXhCeXRlTGVuZ3Ro
OiB1bmRlZmluZWR9KS5yZXNpemFibGUsIGZhbHNlKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9vcHRpb25zLW5vbi1vYmplY3Qu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0
aW9ucy1ub24tb2JqZWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNkZDljOTBkODg0Mjg4MmIyMGMwOTQ1M2Fh
Y2NjZjRkMjRmYWI3YzYKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvb3B0aW9ucy1ub24tb2JqZWN0LmpzCkBAIC0wLDAg
KzEsMjcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1zaGFy
ZWRhcnJheWJ1ZmZlci1jb25zdHJ1Y3RvcgorZGVzY3JpcHRpb246IEludm9rZWQgd2l0aCBhIG5v
bi1vYmplY3QgdmFsdWUgZm9yIG9wdGlvbnMKK2luZm86IHwKKyAgU2hhcmVkQXJyYXlCdWZmZXIo
IGxlbmd0aCBbICwgb3B0aW9ucyBdICkKKworICAxLiBJZiBOZXdUYXJnZXQgaXMgdW5kZWZpbmVk
LCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDIuIExldCBieXRlTGVuZ3RoIGJlID8g
VG9JbmRleChsZW5ndGgpLgorICAzLiBMZXQgcmVxdWVzdGVkTWF4Qnl0ZUxlbmd0aCBiZSA/IEdl
dEFycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aE9wdGlvbihvcHRpb25zKS4KKyAgNC4gSWYgcmVxdWVz
dGVkTWF4Qnl0ZUxlbmd0aCBpcyBlbXB0eSwgdGhlbgorICAgICBhLiBSZXR1cm4gPyBBbGxvY2F0
ZUFycmF5QnVmZmVyKE5ld1RhcmdldCwgYnl0ZUxlbmd0aCkuCisKKyAgMS4xLjUgR2V0QXJyYXlC
dWZmZXJNYXhCeXRlTGVuZ3RoT3B0aW9uICggb3B0aW9ucyApCisKKyAgMS4gSWYgVHlwZShvcHRp
b25zKSBpcyBub3QgT2JqZWN0LCByZXR1cm4gZW1wdHkuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1h
cnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUobmV3IFNoYXJlZEFycmF5QnVm
ZmVyKDAsIG51bGwpLnJlc2l6YWJsZSwgZmFsc2UsICdudWxsJyk7Cithc3NlcnQuc2FtZVZhbHVl
KG5ldyBTaGFyZWRBcnJheUJ1ZmZlcigwLCB0cnVlKS5yZXNpemFibGUsIGZhbHNlLCAnYm9vbGVh
bicpOworYXNzZXJ0LnNhbWVWYWx1ZShuZXcgU2hhcmVkQXJyYXlCdWZmZXIoMCwgU3ltYm9sKDMp
KS5yZXNpemFibGUsIGZhbHNlLCAnc3ltYm9sJyk7Cithc3NlcnQuc2FtZVZhbHVlKG5ldyBTaGFy
ZWRBcnJheUJ1ZmZlcigwLCAxbikucmVzaXphYmxlLCBmYWxzZSwgJ2JpZ2ludCcpOworYXNzZXJ0
LnNhbWVWYWx1ZShuZXcgU2hhcmVkQXJyYXlCdWZmZXIoMCwgJ3N0cmluZycpLnJlc2l6YWJsZSwg
ZmFsc2UsICdzdHJpbmcnKTsKK2Fzc2VydC5zYW1lVmFsdWUobmV3IFNoYXJlZEFycmF5QnVmZmVy
KDAsIDkpLnJlc2l6YWJsZSwgZmFsc2UsICdudW1iZXInKTsKK2Fzc2VydC5zYW1lVmFsdWUobmV3
IFNoYXJlZEFycmF5QnVmZmVyKDAsIHVuZGVmaW5lZCkucmVzaXphYmxlLCBmYWxzZSwgJ3VuZGVm
aW5lZCcpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2Rlc2NyaXB0b3IuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvZGVzY3Jp
cHRvci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4yMTViNjFjOWFlZmE4NDg1MjQ0OGZlMmM1MDdlOWRjODRkM2Ix
ZTcwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1No
YXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2Rlc2NyaXB0b3IuanMKQEAgLTAsMCArMSwy
MiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNl
bnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFy
cmF5YnVmZmVyLnByb3RvdHlwZS5ncm93CitkZXNjcmlwdGlvbjogPgorICBTaGFyZWRBcnJheUJ1
ZmZlci5wcm90b3R5cGUuZ3JvdyBoYXMgZGVmYXVsdCBkYXRhIHByb3BlcnR5IGF0dHJpYnV0ZXMu
CitpbmZvOiB8CisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93ICggbmV3TGVuZ3Ro
ICkKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVjdHM6CisgICAgRXZl
cnkgb3RoZXIgZGF0YSBwcm9wZXJ0eSBkZXNjcmliZWQgaW4gY2xhdXNlcyAxOCB0aHJvdWdoIDI2
IGFuZCBpbgorICAgIEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06
IHRydWUsIFtbRW51bWVyYWJsZV1dOiBmYWxzZSwKKyAgICBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVl
IH0gdW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQuCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVy
LmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2ZXJpZnlQ
cm9wZXJ0eShTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUsICdncm93JywgeworICBlbnVtZXJh
YmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlC
dWZmZXIvcHJvdG90eXBlL2dyb3cvZXh0ZW5zaWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9leHRlbnNpYmxlLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjU1YmZlNGY5YjI1NjM2OWI0ZTA4MDVhMDk2OWY1ODIyNzU0NWQ2OGQKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJy
YXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvZXh0ZW5zaWJsZS5qcwpAQCAtMCwwICsxLDE1IEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtc2hhcmVkYXJyYXlidWZm
ZXIucHJvdG90eXBlLmdyb3cKK2Rlc2NyaXB0aW9uOiBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5
cGUuZ3JvdyBpcyBleHRlbnNpYmxlLgoraW5mbzogfAorICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90
b3R5cGUuZ3JvdyAoIG5ld0xlbmd0aCApCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWls
dC1pbiBPYmplY3RzOgorICAgIFVubGVzcyBzcGVjaWZpZWQgb3RoZXJ3aXNlLCB0aGUgW1tFeHRl
bnNpYmxlXV0gaW50ZXJuYWwgc2xvdAorICAgIG9mIGEgYnVpbHQtaW4gb2JqZWN0IGluaXRpYWxs
eSBoYXMgdGhlIHZhbHVlIHRydWUuCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0K
Ky0tLSovCisKK2Fzc2VydChPYmplY3QuaXNFeHRlbnNpYmxlKFNoYXJlZEFycmF5QnVmZmVyLnBy
b3RvdHlwZS5ncm93KSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvZ3Jvdy1sYXJnZXItc2l6ZS5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5
cGUvZ3Jvdy9ncm93LWxhcmdlci1zaXplLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM5OTljMzFmZDU1YzcxYWIz
OTlkY2RlMWNjNWIwNDY4MDU3MGE2MzQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvZ3Jvdy1s
YXJnZXItc2l6ZS5qcwpAQCAtMCwwICsxLDQ3IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhl
IFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBp
cyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4K
Ky8qLS0tCitlc2lkOiBzZWMtc2hhcmVkYXJyYXlidWZmZXIucHJvdG90eXBlLmdyb3cKK2Rlc2Ny
aXB0aW9uOiA+CisgIEJlaGF2aW9yIHdoZW4gYXR0ZW1wdGluZyB0byBncm93IGEgZ3Jvd2FibGUg
YXJyYXkgYnVmZmVyIHRvIGEgbGFyZ2VyIHNpemUKK2luZm86IHwKKyAgU2hhcmVkQXJyYXlCdWZm
ZXIucHJvdG90eXBlLmdyb3cgKCBuZXdMZW5ndGggKQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlz
IHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVm
ZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyBm
YWxzZSB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIExldCBuZXdCeXRlTGVuZ3Ro
IGJlID8gVG9JbnRlZ2VyT3JJbmZpbml0eShuZXdMZW5ndGgpLgorICA1LiBMZXQgaG9zdEhhbmRs
ZWQgYmUgPyBIb3N0R3Jvd1NoYXJlZEFycmF5QnVmZmVyKE8sIG5ld0J5dGVMZW5ndGgpLgorICA2
LiBJZiBob3N0SGFuZGxlZCBpcyBoYW5kbGVkLCByZXR1cm4gdW5kZWZpbmVkLgorICBbLi4uXQor
ZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgc2FiID0gbmV3
IFNoYXJlZEFycmF5QnVmZmVyKDQsIHttYXhCeXRlTGVuZ3RoOiA1fSk7Cit2YXIgcmVzdWx0Owor
CisvLyBJZiB0aGUgaG9zdCBjaG9vc2VzIHRvIHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNp
ZmljYXRpb24sIHRoZSBvYnNlcnZlZAorLy8gYmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8g
dGhlIGNhc2Ugd2hlcmUKKy8vIGBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3Jvd2AgaGFz
IG5vdCBiZWVuIGltcGxlbWVudGVkLiBUaGUgZm9sbG93aW5nCisvLyBhc3NlcnRpb24gcHJldmVu
dHMgdGhpcyB0ZXN0IGZyb20gcGFzc2luZyBpbiBydW50aW1lcyB3aGljaCBoYXZlIG5vdAorLy8g
aW1wbGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIHNhYi5ncm93
LCAnZnVuY3Rpb24nKTsKKwordHJ5IHsKKyAgcmVzdWx0ID0gYWIuZ3Jvdyg1KTsKK30gY2F0Y2gg
KF8pIHt9CisKKy8vIE9uZSBvZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlvbnMgbXVzdCBi
ZSBtZXQ6CisvLworLy8gLSBIb3N0R3Jvd1NoYXJlZEFycmF5QnVmZmVyIHJldHVybnMgYW4gYWJy
dXB0IGNvbXBsZXRpb24KKy8vIC0gSG9zdEdyb3dTaGFyZWRBcnJheUJ1ZmZlciBoYW5kbGVzIHRo
ZSBncm93IG9wZXJhdGlvbiwgYW5kIHRoZSBgZ3Jvd2AKKy8vICAgbWV0aG9kIHJldHVybnMgZWFy
bHkKKy8vIC0gSG9zdEdyb3dTaGFyZWRBcnJheUJ1ZmZlciBkb2VzIG5vdCBoYW5kbGUgdGhlIGdy
b3cgb3BlcmF0aW9uLCBhbmQgdGhlCisvLyAgIGBncm93YCBtZXRob2QgZXhlY3V0ZXMgaXRzIGZp
bmFsIHN0ZXBzCisvLworLy8gQWxsIHRocmVlIGNvbmRpdGlvbnMgaGF2ZSB0aGUgc2FtZSBlZmZl
Y3Qgb24gdGhlIHZhbHVlIG9mIGByZXN1bHRgLgorYXNzZXJ0LnNhbWVWYWx1ZShyZXN1bHQsIHVu
ZGVmaW5lZCwgJ25vcm1hbCBjb21wbGV0aW9uIHZhbHVlJyk7CisKKy8vIE5laXRoZXIgdGhlIGxl
bmd0aCBub3IgdGhlIGNvbnRlbnRzIG9mIHRoZSBTaGFyZWRBcnJheUJ1ZmZlciBhcmUgZ3VhcmFu
dGVlZAorLy8gYnkgdGhlIGhvc3QtZGVmaW5lZCBhYnN0cmFjdCBvcGVyYXRpb24sIHNvIHRoZXkg
YXJlIG5vdCBhc3NlcnRlZCBpbiB0aGlzCisvLyB0ZXN0LgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2dy
b3ctc2FtZS1zaXplLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFy
cmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2dyb3ctc2FtZS1zaXplLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ2
NWYzZjFhODRhN2E2NzQ5OWUwNDFmMjY2MTEzODJjZDIyNjJjZjkKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90
eXBlL2dyb3cvZ3Jvdy1zYW1lLXNpemUuanMKQEAgLTAsMCArMSw0NyBAQAorLy8gQ29weXJpZ2h0
IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5YnVmZmVyLnByb3RvdHlw
ZS5ncm93CitkZXNjcmlwdGlvbjogPgorICBCZWhhdmlvciB3aGVuIGF0dGVtcHRpbmcgdG8gZ3Jv
dyBhIGdyb3dhYmxlIGFycmF5IGJ1ZmZlciB0byBpdHMgY3VycmVudCBzaXplCitpbmZvOiB8Cisg
IFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93ICggbmV3TGVuZ3RoICkKKworICAxLiBM
ZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNs
b3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIDMuIElmIElzU2hhcmVkQXJy
YXlCdWZmZXIoTykgaXMgZmFsc2UgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBM
ZXQgbmV3Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdlck9ySW5maW5pdHkobmV3TGVuZ3RoKS4KKyAg
NS4gTGV0IGhvc3RIYW5kbGVkIGJlID8gSG9zdEdyb3dTaGFyZWRBcnJheUJ1ZmZlcihPLCBuZXdC
eXRlTGVuZ3RoKS4KKyAgNi4gSWYgaG9zdEhhbmRsZWQgaXMgaGFuZGxlZCwgcmV0dXJuIHVuZGVm
aW5lZC4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8K
KwordmFyIHNhYiA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcig0LCB7bWF4Qnl0ZUxlbmd0aDogNX0p
OwordmFyIHJlc3VsdDsKKworLy8gSWYgdGhlIGhvc3QgY2hvb3NlcyB0byB0aHJvdyBhcyBhbGxv
d2VkIGJ5IHRoZSBzcGVjaWZpY2F0aW9uLCB0aGUgb2JzZXJ2ZWQKKy8vIGJlaGF2aW9yIHdpbGwg
YmUgaWRlbnRpY2FsIHRvIHRoZSBjYXNlIHdoZXJlCisvLyBgU2hhcmVkQXJyYXlCdWZmZXIucHJv
dG90eXBlLmdyb3dgIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZworLy8g
YXNzZXJ0aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tIHBhc3NpbmcgaW4gcnVudGltZXMgd2hp
Y2ggaGF2ZSBub3QKKy8vIGltcGxlbWVudGVkIHRoZSBtZXRob2QuCithc3NlcnQuc2FtZVZhbHVl
KHR5cGVvZiBzYWIuZ3JvdywgJ2Z1bmN0aW9uJyk7CisKK3RyeSB7CisgIHJlc3VsdCA9IGFiLmdy
b3coNCk7Cit9IGNhdGNoIChfKSB7fQorCisvLyBPbmUgb2YgdGhlIGZvbGxvd2luZyB0aHJlZSBj
b25kaXRpb25zIG11c3QgYmUgbWV0OgorLy8KKy8vIC0gSG9zdEdyb3dTaGFyZWRBcnJheUJ1ZmZl
ciByZXR1cm5zIGFuIGFicnVwdCBjb21wbGV0aW9uCisvLyAtIEhvc3RHcm93U2hhcmVkQXJyYXlC
dWZmZXIgaGFuZGxlcyB0aGUgZ3JvdyBvcGVyYXRpb24sIGFuZCB0aGUgYGdyb3dgCisvLyAgIG1l
dGhvZCByZXR1cm5zIGVhcmx5CisvLyAtIEhvc3RHcm93U2hhcmVkQXJyYXlCdWZmZXIgZG9lcyBu
b3QgaGFuZGxlIHRoZSBncm93IG9wZXJhdGlvbiwgYW5kIHRoZQorLy8gICBgZ3Jvd2AgbWV0aG9k
IGV4ZWN1dGVzIGl0cyBmaW5hbCBzdGVwcworLy8KKy8vIEFsbCB0aHJlZSBjb25kaXRpb25zIGhh
dmUgdGhlIHNhbWUgZWZmZWN0IG9uIHRoZSB2YWx1ZSBvZiBgcmVzdWx0YC4KK2Fzc2VydC5zYW1l
VmFsdWUocmVzdWx0LCB1bmRlZmluZWQsICdub3JtYWwgY29tcGxldGlvbiB2YWx1ZScpOworCisv
LyBOZWl0aGVyIHRoZSBsZW5ndGggbm9yIHRoZSBjb250ZW50cyBvZiB0aGUgU2hhcmVkQXJyYXlC
dWZmZXIgYXJlIGd1YXJhbnRlZWQKKy8vIGJ5IHRoZSBob3N0LWRlZmluZWQgYWJzdHJhY3Qgb3Bl
cmF0aW9uLCBzbyB0aGV5IGFyZSBub3QgYXNzZXJ0ZWQgaW4gdGhpcworLy8gdGVzdC4KZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9w
cm90b3R5cGUvZ3Jvdy9ncm93LXNtYWxsZXItc2l6ZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9ncm93LXNtYWxsZXIt
c2l6ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45ZjdmMDUwMTdiN2YyODIxZjZmYTUxMWIzYmM5MDBjNmE5NWM1
YzhiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1No
YXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2dyb3ctc21hbGxlci1zaXplLmpzCkBAIC0w
LDAgKzEsNDcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3Jz
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBC
U0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1z
aGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3JvdworZGVzY3JpcHRpb246ID4KKyAgQmVoYXZp
b3Igd2hlbiBhdHRlbXB0aW5nIHRvIGdyb3cgYSBncm93YWJsZSBhcnJheSBidWZmZXIgdG8gYSBz
bWFsbGVyIHNpemUKK2luZm86IHwKKyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cg
KCBuZXdMZW5ndGggKQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJm
b3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1d
KS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZlcihPKSBpcyBmYWxzZSB0aHJvdyBhIFR5cGVF
cnJvciBleGNlcHRpb24uCisgIDQuIExldCBuZXdCeXRlTGVuZ3RoIGJlID8gVG9JbnRlZ2VyT3JJ
bmZpbml0eShuZXdMZW5ndGgpLgorICA1LiBMZXQgaG9zdEhhbmRsZWQgYmUgPyBIb3N0R3Jvd1No
YXJlZEFycmF5QnVmZmVyKE8sIG5ld0J5dGVMZW5ndGgpLgorICA2LiBJZiBob3N0SGFuZGxlZCBp
cyBoYW5kbGVkLCByZXR1cm4gdW5kZWZpbmVkLgorICBbLi4uXQorZmVhdHVyZXM6IFtyZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgc2FiID0gbmV3IFNoYXJlZEFycmF5QnVmZmVy
KDQsIHttYXhCeXRlTGVuZ3RoOiA1fSk7Cit2YXIgcmVzdWx0OworCisvLyBJZiB0aGUgaG9zdCBj
aG9vc2VzIHRvIHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBvYnNl
cnZlZAorLy8gYmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUKKy8v
IGBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3Jvd2AgaGFzIG5vdCBiZWVuIGltcGxlbWVu
dGVkLiBUaGUgZm9sbG93aW5nCisvLyBhc3NlcnRpb24gcHJldmVudHMgdGhpcyB0ZXN0IGZyb20g
cGFzc2luZyBpbiBydW50aW1lcyB3aGljaCBoYXZlIG5vdAorLy8gaW1wbGVtZW50ZWQgdGhlIG1l
dGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIHNhYi5ncm93LCAnZnVuY3Rpb24nKTsKKwor
dHJ5IHsKKyAgcmVzdWx0ID0gYWIuZ3JvdygzKTsKK30gY2F0Y2ggKF8pIHt9CisKKy8vIE9uZSBv
ZiB0aGUgZm9sbG93aW5nIHRocmVlIGNvbmRpdGlvbnMgbXVzdCBiZSBtZXQ6CisvLworLy8gLSBI
b3N0R3Jvd1NoYXJlZEFycmF5QnVmZmVyIHJldHVybnMgYW4gYWJydXB0IGNvbXBsZXRpb24KKy8v
IC0gSG9zdEdyb3dTaGFyZWRBcnJheUJ1ZmZlciBoYW5kbGVzIHRoZSBncm93IG9wZXJhdGlvbiwg
YW5kIHRoZSBgZ3Jvd2AKKy8vICAgbWV0aG9kIHJldHVybnMgZWFybHkKKy8vIC0gSG9zdEdyb3dT
aGFyZWRBcnJheUJ1ZmZlciBkb2VzIG5vdCBoYW5kbGUgdGhlIGdyb3cgb3BlcmF0aW9uLCBhbmQg
dGhlCisvLyAgIGBncm93YCBtZXRob2QgZXhlY3V0ZXMgaXRzIGZpbmFsIHN0ZXBzCisvLworLy8g
QWxsIHRocmVlIGNvbmRpdGlvbnMgaGF2ZSB0aGUgc2FtZSBlZmZlY3Qgb24gdGhlIHZhbHVlIG9m
IGByZXN1bHRgLgorYXNzZXJ0LnNhbWVWYWx1ZShyZXN1bHQsIHVuZGVmaW5lZCwgJ25vcm1hbCBj
b21wbGV0aW9uIHZhbHVlJyk7CisKKy8vIE5laXRoZXIgdGhlIGxlbmd0aCBub3IgdGhlIGNvbnRl
bnRzIG9mIHRoZSBTaGFyZWRBcnJheUJ1ZmZlciBhcmUgZ3VhcmFudGVlZAorLy8gYnkgdGhlIGhv
c3QtZGVmaW5lZCBhYnN0cmFjdCBvcGVyYXRpb24sIHNvIHRoZXkgYXJlIG5vdCBhc3NlcnRlZCBp
biB0aGlzCisvLyB0ZXN0LgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L2xlbmd0aC5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9s
ZW5ndGguanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDQ0MmY5MGMyMWMyMWE2MzhmZjcwNjQ2Zjc3ZmMzZTkwZWVj
MTcxYQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9sZW5ndGguanMKQEAgLTAsMCArMSwzMCBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5
YnVmZmVyLnByb3RvdHlwZS5ncm93CitkZXNjcmlwdGlvbjogPgorICBTaGFyZWRBcnJheUJ1ZmZl
ci5wcm90b3R5cGUuZ3Jvdy5sZW5ndGggaXMgMS4KK2luZm86IHwKKyAgU2hhcmVkQXJyYXlCdWZm
ZXIucHJvdG90eXBlLmdyb3cgKCBuZXdMZW5ndGggKQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRh
cmQgQnVpbHQtaW4gT2JqZWN0czoKKyAgICBFdmVyeSBidWlsdC1pbiBGdW5jdGlvbiBvYmplY3Qs
IGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIGhhcyBhIGxlbmd0aAorICAgIHByb3BlcnR5IHdob3Nl
IHZhbHVlIGlzIGFuIGludGVnZXIuIFVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLCB0aGlzCisg
ICAgdmFsdWUgaXMgZXF1YWwgdG8gdGhlIGxhcmdlc3QgbnVtYmVyIG9mIG5hbWVkIGFyZ3VtZW50
cyBzaG93biBpbiB0aGUKKyAgICBzdWJjbGF1c2UgaGVhZGluZ3MgZm9yIHRoZSBmdW5jdGlvbiBk
ZXNjcmlwdGlvbiwgaW5jbHVkaW5nIG9wdGlvbmFsCisgICAgcGFyYW1ldGVycy4gSG93ZXZlciwg
cmVzdCBwYXJhbWV0ZXJzIHNob3duIHVzaW5nIHRoZSBmb3JtIOKAnC4uLm5hbWXigJ0KKyAgICBh
cmUgbm90IGluY2x1ZGVkIGluIHRoZSBkZWZhdWx0IGFyZ3VtZW50IGNvdW50LgorCisgICAgVW5s
ZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSBsZW5ndGggcHJvcGVydHkgb2YgYSBidWlsdC1p
biBGdW5jdGlvbgorICAgIG9iamVjdCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06
IGZhbHNlLCBbW0VudW1lcmFibGVdXTogZmFsc2UsCisgICAgW1tDb25maWd1cmFibGVdXTogdHJ1
ZSB9LgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbcmVzaXphYmxl
LWFycmF5YnVmZmVyXQorLS0tKi8KKwordmVyaWZ5UHJvcGVydHkoU2hhcmVkQXJyYXlCdWZmZXIu
cHJvdG90eXBlLmdyb3csICdsZW5ndGgnLCB7CisgIHZhbHVlOiAxLAorICBlbnVtZXJhYmxlOiBm
YWxzZSwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVy
L3Byb3RvdHlwZS9ncm93L25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
U2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvbmFtZS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mODE5
NDQ4YzRmZjIxNTM2N2NlNDI1MzUyODJjNzhjODI3N2ZhNGVhCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlw
ZS9ncm93L25hbWUuanMKQEAgLTAsMCArMSwyNyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRo
ZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUg
aXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUu
CisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5YnVmZmVyLnByb3RvdHlwZS5ncm93CitkZXNj
cmlwdGlvbjogPgorICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3Jvdy5uYW1lIGlzICJn
cm93Ii4KK2luZm86IHwKKyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cgKCBuZXdM
ZW5ndGggKQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0czoKKyAg
ICBFdmVyeSBidWlsdC1pbiBGdW5jdGlvbiBvYmplY3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMs
IHRoYXQgaXMgbm90CisgICAgaWRlbnRpZmllZCBhcyBhbiBhbm9ueW1vdXMgZnVuY3Rpb24gaGFz
IGEgbmFtZSBwcm9wZXJ0eSB3aG9zZSB2YWx1ZQorICAgIGlzIGEgU3RyaW5nLgorCisgICAgVW5s
ZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSBuYW1lIHByb3BlcnR5IG9mIGEgYnVpbHQtaW4g
RnVuY3Rpb24KKyAgICBvYmplY3QsIGlmIGl0IGV4aXN0cywgaGFzIHRoZSBhdHRyaWJ1dGVzIHsg
W1tXcml0YWJsZV1dOiBmYWxzZSwKKyAgICBbW0VudW1lcmFibGVdXTogZmFsc2UsIFtbQ29uZmln
dXJhYmxlXV06IHRydWUgfS4KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQoraW5j
bHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KKy0tLSovCisKK3ZlcmlmeVByb3BlcnR5KFNoYXJl
ZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93LCAnbmFtZScsIHsKKyAgdmFsdWU6ICdncm93JywK
KyAgZW51bWVyYWJsZTogZmFsc2UsCisgIHdydGlhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxl
OiB0cnVlCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9uZXctbGVuZ3RoLWV4Y2Vzc2l2ZS5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5
cGUvZ3Jvdy9uZXctbGVuZ3RoLWV4Y2Vzc2l2ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYWQyZDViY2VmNWQ5
MjE5MTg1MWY5YTg0NTkzZjUyM2ZlNjI2NzE3Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L25l
dy1sZW5ndGgtZXhjZXNzaXZlLmpzCkBAIC0wLDAgKzEsMjQgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3Jv
dworZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIGEgUmFuZ2VFcnJvciB0aGUgbmV3TGVuZ3RoIHZh
bHVlIGlzIGxhcmdlciB0aGFuIHRoZSBtYXggYnl0ZSBsZW5ndGgKK2luZm86IHwKKyAgU2hhcmVk
QXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cgKCBuZXdMZW5ndGggKQorCisgIDEuIExldCBPIGJl
IHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBb
W0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1ZmZl
cihPKSBpcyBmYWxzZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICA0LiBMZXQgbmV3
Qnl0ZUxlbmd0aCBiZSA/IFRvSW50ZWdlck9ySW5maW5pdHkobmV3TGVuZ3RoKS4KKyAgNS4gSWYg
bmV3Qnl0ZUxlbmd0aCA8IDAgb3IgbmV3Qnl0ZUxlbmd0aCA+IE8uW1tBcnJheUJ1ZmZlck1heEJ5
dGVMZW5ndGhdXSwKKyAgICAgdGhyb3cgYSBSYW5nZUVycm9yIGV4Y2VwdGlvbi4KKyAgWy4uLl0K
K2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwordmFyIGFiID0gbmV3
IFNoYXJlZEFycmF5QnVmZmVyKDQsIHttYXhCeXRlTGVuZ3RoOiA0fSk7CisKK2Fzc2VydC50aHJv
d3MoUmFuZ2VFcnJvciwgZnVuY3Rpb24oKSB7CisgIGFiLmdyb3coNSk7Cit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90
b3R5cGUvZ3Jvdy9uZXctbGVuZ3RoLW5lZ2F0aXZlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L25ldy1sZW5ndGgtbmVn
YXRpdmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNzUzMzE5MWFjMzgxMzgwYTk5M2E1NzU0YjAxNjNmNGY2YzAw
MmU0NQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9uZXctbGVuZ3RoLW5lZ2F0aXZlLmpzCkBA
IC0wLDAgKzEsMjQgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRo
b3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRo
ZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNl
Yy1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3JvdworZGVzY3JpcHRpb246ID4KKyAgVGhy
b3dzIGEgUmFuZ2VFcnJvciB0aGUgbmV3TGVuZ3RoIHZhbHVlIGlzIGxlc3MgdGhhbiB6ZXJvCitp
bmZvOiB8CisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93ICggbmV3TGVuZ3RoICkK
KworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVpcmVJ
bnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSkuCisgIDMuIElmIElz
U2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgZmFsc2UsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlv
bi4KKyAgNC4gTGV0IG5ld0J5dGVMZW5ndGggYmUgPyBUb0ludGVnZXJPckluZmluaXR5KG5ld0xl
bmd0aCkuCisgIDUuIElmIG5ld0J5dGVMZW5ndGggPCAwIG9yIG5ld0J5dGVMZW5ndGggPiBPLltb
QXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0sCisgICAgIHRocm93IGEgUmFuZ2VFcnJvciBleGNl
cHRpb24uCisgIFsuLi5dCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSov
CisKK3ZhciBhYiA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcig0LCB7bWF4Qnl0ZUxlbmd0aDogNH0p
OworCithc3NlcnQudGhyb3dzKFJhbmdlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBhYi5ncm93KC0x
KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L25ldy1sZW5ndGgtbm9uLW51bWJlci5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUv
Z3Jvdy9uZXctbGVuZ3RoLW5vbi1udW1iZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjA4ZTIzYjZhM2ExMTY3
ZTUxN2JlMjk5NGVkOWQxYzUwZDZiZWQ3NgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9uZXct
bGVuZ3RoLW5vbi1udW1iZXIuanMKQEAgLTAsMCArMSwzNiBAQAorLy8gQ29weXJpZ2h0IChDKSAy
MDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlz
IGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNF
IGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXNoYXJlZGFycmF5YnVmZmVyLnByb3RvdHlwZS5ncm93
CitkZXNjcmlwdGlvbjogVGhyb3dzIGEgVHlwZUVycm9yIGlmIHByb3ZpZGVkIGxlbmd0aCBjYW5u
b3QgYmUgY29lcmNlZCB0byBhIG51bWJlcgoraW5mbzogfAorICBTaGFyZWRBcnJheUJ1ZmZlci5w
cm90b3R5cGUuZ3JvdyAoIG5ld0xlbmd0aCApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFs
dWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJN
YXhCeXRlTGVuZ3RoXV0pLgorICAzLiBJZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIGZhbHNl
LCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIExldCBuZXdCeXRlTGVuZ3RoIGJl
ID8gVG9JbnRlZ2VyT3JJbmZpbml0eShuZXdMZW5ndGgpLgorICBbLi4uXQorZmVhdHVyZXM6IFty
ZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgbG9nID0gW107Cit2YXIgbmV3TGVu
Z3RoID0geworICB0b1N0cmluZzogZnVuY3Rpb24oKSB7CisgICAgbG9nLnB1c2goJ3RvU3RyaW5n
Jyk7CisgICAgcmV0dXJuIHt9OworICB9LAorICB2YWx1ZU9mOiBmdW5jdGlvbigpIHsKKyAgICBs
b2cucHVzaCgndmFsdWVPZicpOworICAgIHJldHVybiB7fTsKKyAgfQorfTsKK3ZhciBhYiA9IG5l
dyBTaGFyZWRBcnJheUJ1ZmZlcigwLCB7bWF4Qnl0ZUxlbmd0aDogNH0pOworCithc3NlcnQudGhy
b3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGFiLmdyb3cobmV3TGVuZ3RoKTsKK30pOwor
Cithc3NlcnQuc2FtZVZhbHVlKGxvZy5sZW5ndGgsIDIpOworYXNzZXJ0LnNhbWVWYWx1ZShsb2db
MF0sICd2YWx1ZU9mJyk7Cithc3NlcnQuc2FtZVZhbHVlKGxvZ1sxXSwgJ3RvU3RyaW5nJyk7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZm
ZXIvcHJvdG90eXBlL2dyb3cvbm9uY29uc3RydWN0b3IuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvbm9uY29uc3RydWN0
b3IuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uODllZTA0ZTQ1ZDgxZjliYTYwOTVkZDg0YTcwNjAwOWU0MmRmOTRh
MgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFy
ZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy9ub25jb25zdHJ1Y3Rvci5qcwpAQCAtMCwwICsx
LDI1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtc2hhcmVk
YXJyYXlidWZmZXIucHJvdG90eXBlLmdyb3cKK2Rlc2NyaXB0aW9uOiA+CisgIFNoYXJlZEFycmF5
QnVmZmVyLnByb3RvdHlwZS5ncm93IGlzIG5vdCBhIGNvbnN0cnVjdG9yIGZ1bmN0aW9uLgoraW5m
bzogfAorICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3JvdyAoIG5ld0xlbmd0aCApCisK
KyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgorICAgIEJ1aWx0LWlu
IGZ1bmN0aW9uIG9iamVjdHMgdGhhdCBhcmUgbm90IGlkZW50aWZpZWQgYXMgY29uc3RydWN0b3Jz
IGRvIG5vdAorICAgIGltcGxlbWVudCB0aGUgW1tDb25zdHJ1Y3RdXSBpbnRlcm5hbCBtZXRob2Qg
dW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQKKyAgICBpbiB0aGUgZGVzY3JpcHRpb24gb2YgYSBw
YXJ0aWN1bGFyIGZ1bmN0aW9uLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCist
LS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3Bl
cnR5LmNhbGwoU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3csICdwcm90b3R5cGUnKSwK
KyAgZmFsc2UKKyk7CisKK3ZhciBhcnJheUJ1ZmZlciA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcig4
KTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgbmV3IGFycmF5QnVm
ZmVyLmdyb3coKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L3RoaXMtaXMtbm90LWFycmF5YnVm
ZmVyLW9iamVjdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJh
eUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLW5vdC1hcnJheWJ1ZmZlci1vYmplY3QuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMWIwNGY0ZGYyNzU2ZDU5ZTI4OWE4MmFmMzc3OWI5YzkxNjcwNTcyNgotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJh
eUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLW5vdC1hcnJheWJ1ZmZlci1vYmplY3QuanMK
QEAgLTAsMCArMSwyOCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDog
c2VjLXNoYXJlZGFycmF5YnVmZmVyLnByb3RvdHlwZS5ncm93CitkZXNjcmlwdGlvbjogPgorICBU
aHJvd3MgYSBUeXBlRXJyb3IgaWYgYHRoaXNgIGRvZXMgbm90IGhhdmUgYW4gW1tBcnJheUJ1ZmZl
ckRhdGFdXSBpbnRlcm5hbCBzbG90LgoraW5mbzogfAorICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90
b3R5cGUuZ3JvdyAoIG5ld0xlbmd0aCApCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUu
CisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJNYXhC
eXRlTGVuZ3RoXV0pLgorICBbLi4uXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJd
CistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlci5wcm90
b3R5cGUuZ3JvdywgJ2Z1bmN0aW9uJyk7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5j
dGlvbigpIHsKKyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3coKTsKK30sICdgdGhp
c2AgdmFsdWUgaXMgdGhlIFNoYXJlZEFycmF5QnVmZmVyIHByb3RvdHlwZScpOworCithc3NlcnQu
dGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3Rv
dHlwZS5ncm93LmNhbGwoe30pOworfSwgJ2B0aGlzYCB2YWx1ZSBpcyBhbiBvYmplY3QnKTsKKwor
YXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBTaGFyZWRBcnJheUJ1ZmZl
ci5wcm90b3R5cGUuZ3Jvdy5jYWxsKFtdKTsKK30sICdgdGhpc2AgdmFsdWUgaXMgYW4gYXJyYXkn
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJh
eUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLW5vdC1vYmplY3QuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvdGhp
cy1pcy1ub3Qtb2JqZWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkNGIzODY5NDAwZjljY2ZkYWFhMTE3OTUy
NDFmZWRkNGFmMWMyOWUKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvdGhpcy1pcy1ub3Qtb2Jq
ZWN0LmpzCkBAIC0wLDAgKzEsNDQgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3JvdworZGVzY3JpcHRpb246
IFRocm93cyBhIFR5cGVFcnJvciBpZiBgdGhpc2AgdmFsdWVpcyBub3QgYW4gb2JqZWN0LgoraW5m
bzogfAorICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3JvdyAoIG5ld0xlbmd0aCApCisK
KyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50
ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3RoXV0pLgorICBbLi4uXQorZmVh
dHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXIsIFN5bWJvbCwgQmlnSW50XQorLS0tKi8KKwor
YXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cs
ICJmdW5jdGlvbiIpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7Cisg
IFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93LmNhbGwodW5kZWZpbmVkKTsKK30sICJg
dGhpc2AgdmFsdWUgaXMgdW5kZWZpbmVkIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBm
dW5jdGlvbigpIHsKKyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cuY2FsbChudWxs
KTsKK30sICJgdGhpc2AgdmFsdWUgaXMgbnVsbCIpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJv
ciwgZnVuY3Rpb24oKSB7CisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93LmNhbGwo
dHJ1ZSk7Cit9LCAiYHRoaXNgIHZhbHVlIGlzIEJvb2xlYW4iKTsKKworYXNzZXJ0LnRocm93cyhU
eXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3Jv
dy5jYWxsKCIiKTsKK30sICJgdGhpc2AgdmFsdWUgaXMgU3RyaW5nIik7CisKK3ZhciBzeW1ib2wg
PSBTeW1ib2woKTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgU2hh
cmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cuY2FsbChzeW1ib2wpOworfSwgImB0aGlzYCB2
YWx1ZSBpcyBTeW1ib2wiKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkg
eworICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3Jvdy5jYWxsKDEpOworfSwgImB0aGlz
YCB2YWx1ZSBpcyBOdW1iZXIiKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9u
KCkgeworICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUuZ3Jvdy5jYWxsKDFuKTsKK30sICJg
dGhpc2AgdmFsdWUgaXMgYmlnaW50Iik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvdGhpcy1pcy1ub3Qt
cmVzaXphYmxlLWFycmF5YnVmZmVyLW9iamVjdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLW5vdC1yZXNp
emFibGUtYXJyYXlidWZmZXItb2JqZWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU3ZjU0MzI5Y2MxOGVjZGNk
MDM1MWYwZTllYjY4ZmQyYWI1NGQ5MjUKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3cvdGhpcy1p
cy1ub3QtcmVzaXphYmxlLWFycmF5YnVmZmVyLW9iamVjdC5qcwpAQCAtMCwwICsxLDM4IEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtc2hhcmVkYXJyYXlidWZm
ZXIucHJvdG90eXBlLmdyb3cKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBhIFR5cGVFcnJvciBp
ZiBgdGhpc2AgZG9lcyBub3QgaGF2ZSBhbiBbW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dIGlu
dGVybmFsIHNsb3QuCitpbmZvOiB8CisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93
ICggbmV3TGVuZ3RoICkKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVy
Zm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlck1heEJ5dGVMZW5ndGhd
XSkuCisgIFsuLi5dCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisK
K3ZhciBhYjsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgU2hhcmVkQXJyYXlCdWZmZXIucHJv
dG90eXBlLmdyb3csICdmdW5jdGlvbicpOworCithYiA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcig0
KTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIuZ3JvdygwKTsK
K30sICd6ZXJvIGJ5dGUgbGVuZ3RoJyk7CisKK2FiID0gbmV3IFNoYXJlZEFycmF5QnVmZmVyKDQp
OworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBhYi5ncm93KDMpOwor
fSwgJ3NtYWxsZXIgYnl0ZSBsZW5ndGgnKTsKKworYWIgPSBuZXcgU2hhcmVkQXJyYXlCdWZmZXIo
NCk7Cithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGFiLmdyb3coNCk7
Cit9LCAnc2FtZSBieXRlIGxlbmd0aCcpOworCithYiA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcig0
KTsKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIuZ3Jvdyg1KTsK
K30sICdsYXJnZXIgYnl0ZSBsZW5ndGgnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLXNo
YXJlZGFycmF5YnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93L3RoaXMtaXMtc2hhcmVkYXJyYXlidWZmZXIuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWIxN2Y0OWMzY2ExM2NmMjhlZmIwNzIzMWQwYjcyZDY1MDg1MTZmYQotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJh
eUJ1ZmZlci9wcm90b3R5cGUvZ3Jvdy90aGlzLWlzLXNoYXJlZGFycmF5YnVmZmVyLmpzCkBAIC0w
LDAgKzEsMjAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3Jz
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBC
U0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1z
aGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3JvdworZGVzY3JpcHRpb246IFRocm93cyBhIFR5
cGVFcnJvciBpZiBgdGhpc2AgdmFsdWUgaXMgYW4gQXJyYXlCdWZmZXIKK2luZm86IHwKKyAgU2hh
cmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3cgKCBuZXdMZW5ndGggKQorCisgIDEuIExldCBP
IGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChP
LCBbW0FycmF5QnVmZmVyTWF4Qnl0ZUxlbmd0aF1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJheUJ1
ZmZlcihPKSBpcyBmYWxzZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICBbLi4uXQor
ZmVhdHVyZXM6IFtBcnJheUJ1ZmZlciwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwor
dmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDApOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwg
ZnVuY3Rpb24oKSB7CisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93LmNhbGwoYWIp
OworfSwgJ2B0aGlzYCB2YWx1ZSBjYW5ub3QgYmUgYW4gQXJyYXlCdWZmZXInKTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90
b3R5cGUvZ3Jvd2FibGUvaW52b2tlZC1hcy1hY2Nlc3Nvci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvd2FibGUvaW52b2tl
ZC1hcy1hY2Nlc3Nvci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jM2E4ODM1ODY0YzNmNTc4ZTliNmQ2NzllNTg3
NTM4MTNmMTBiNDRjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9pbnZva2VkLWFzLWFj
Y2Vzc29yLmpzCkBAIC0wLDAgKzEsMTcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjgg
cHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2VzaWQ6IHNlYy1nZXQtc2hhcmVkYXJyYXlidWZmZXIucHJvdG90eXBlLmdyb3dhYmxlCitk
ZXNjcmlwdGlvbjogUmVxdWlyZXMgdGhpcyB2YWx1ZSB0byBoYXZlIGEgW1tBcnJheUJ1ZmZlckRh
dGFdXSBpbnRlcm5hbCBzbG90CitpbmZvOiB8CisgIGdldCBTaGFyZWRBcnJheUJ1ZmZlci5wcm90
b3R5cGUuZ3Jvd2FibGUKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVy
Zm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIFsu
Li5dCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC50
aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90
eXBlLmdyb3dhYmxlOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL2ludm9rZWQtYXMtZnVu
Yy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9w
cm90b3R5cGUvZ3Jvd2FibGUvaW52b2tlZC1hcy1mdW5jLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIxYmUzNmNh
NmVlNzE3N2I1MzkyNzM5NGE5ZWIwMDg3YjIxODU5YzAKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dy
b3dhYmxlL2ludm9rZWQtYXMtZnVuYy5qcwpAQCAtMCwwICsxLDIzIEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LXNoYXJlZGFycmF5YnVmZmVyLnByb3Rv
dHlwZS5ncm93YWJsZQorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBleGNlcHRpb24g
d2hlbiBpbnZva2VkIGFzIGEgZnVuY3Rpb24KK2luZm86IHwKKyAgZ2V0IFNoYXJlZEFycmF5QnVm
ZmVyLnByb3RvdHlwZS5ncm93YWJsZQorCisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgor
ICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1d
KS4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwor
dmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoCisgIFNoYXJlZEFy
cmF5QnVmZmVyLnByb3RvdHlwZSwgJ2dyb3dhYmxlJworKS5nZXQ7CisKK2Fzc2VydC5zYW1lVmFs
dWUodHlwZW9mIGdldHRlciwgJ2Z1bmN0aW9uJyk7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyKCk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvd2FibGUv
bGVuZ3RoLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVm
ZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9sZW5ndGguanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDIzNzA0NjAxMTM0
MDdhMDkzNDY5YTI4YTFjNWQ4MGJmODZkMmQ0MwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvd2Fi
bGUvbGVuZ3RoLmpzCkBAIC0wLDAgKzEsMzIgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUg
VjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
LyotLS0KK2VzaWQ6IHNlYy1nZXQtc2hhcmVkYXJyYXlidWZmZXIucHJvdG90eXBlLmdyb3dhYmxl
CitkZXNjcmlwdGlvbjogPgorICBnZXQgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLmdyb3dh
YmxlLmxlbmd0aCBpcyAwLgoraW5mbzogfAorICBnZXQgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90
eXBlLnJlc2l6ZWFibGUKKworICAxNyBFQ01BU2NyaXB0IFN0YW5kYXJkIEJ1aWx0LWluIE9iamVj
dHM6CisgICAgRXZlcnkgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0LCBpbmNsdWRpbmcgY29uc3Ry
dWN0b3JzLCBoYXMgYSBsZW5ndGgKKyAgICBwcm9wZXJ0eSB3aG9zZSB2YWx1ZSBpcyBhbiBpbnRl
Z2VyLiBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhpcworICAgIHZhbHVlIGlzIGVxdWFs
IHRvIHRoZSBsYXJnZXN0IG51bWJlciBvZiBuYW1lZCBhcmd1bWVudHMgc2hvd24gaW4gdGhlCisg
ICAgc3ViY2xhdXNlIGhlYWRpbmdzIGZvciB0aGUgZnVuY3Rpb24gZGVzY3JpcHRpb24sIGluY2x1
ZGluZyBvcHRpb25hbAorICAgIHBhcmFtZXRlcnMuIEhvd2V2ZXIsIHJlc3QgcGFyYW1ldGVycyBz
aG93biB1c2luZyB0aGUgZm9ybSDigJwuLi5uYW1l4oCdCisgICAgYXJlIG5vdCBpbmNsdWRlZCBp
biB0aGUgZGVmYXVsdCBhcmd1bWVudCBjb3VudC4KKworICAgIFVubGVzcyBvdGhlcndpc2Ugc3Bl
Y2lmaWVkLCB0aGUgbGVuZ3RoIHByb3BlcnR5IG9mIGEgYnVpbHQtaW4gRnVuY3Rpb24KKyAgICBv
YmplY3QgaGFzIHRoZSBhdHRyaWJ1dGVzIHsgW1tXcml0YWJsZV1dOiBmYWxzZSwgW1tFbnVtZXJh
YmxlXV06IGZhbHNlLAorICAgIFtbQ29uZmlndXJhYmxlXV06IHRydWUgfS4KK2luY2x1ZGVzOiBb
cHJvcGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW3Jlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK3ZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihTaGFyZWRB
cnJheUJ1ZmZlci5wcm90b3R5cGUsICdncm93YWJsZScpOworCit2ZXJpZnlQcm9wZXJ0eShkZXNj
LmdldCwgJ2xlbmd0aCcsIHsKKyAgdmFsdWU6IDAsCisgIGVudW1lcmFibGU6IGZhbHNlLAorICB3
cml0YWJsZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBl
L2dyb3dhYmxlL25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVk
QXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL25hbWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWVlOWVk
ZDc5OTc2MmQ1NWRiOTY4MDRiYjRhMWRjYjJjMjI3ODVmZAotLS0gL2Rldi9udWxsCisrKyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUv
Z3Jvd2FibGUvbmFtZS5qcwpAQCAtMCwwICsxLDI0IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEg
dGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LXNoYXJlZGFycmF5YnVmZmVyLnByb3RvdHlwZS5ncm93
YWJsZQorZGVzY3JpcHRpb246ID4KKyAgZ2V0IFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5n
cm93YWJsZQorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0cworCisg
IEZ1bmN0aW9ucyB0aGF0IGFyZSBzcGVjaWZpZWQgYXMgZ2V0IG9yIHNldCBhY2Nlc3NvciBmdW5j
dGlvbnMgb2YgYnVpbHQtaW4KKyAgcHJvcGVydGllcyBoYXZlICJnZXQgIiBvciAic2V0ICIgcHJl
cGVuZGVkIHRvIHRoZSBwcm9wZXJ0eSBuYW1lIHN0cmluZy4KKworaW5jbHVkZXM6IFtwcm9wZXJ0
eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwor
dmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKFNoYXJlZEFycmF5QnVm
ZmVyLnByb3RvdHlwZSwgJ2dyb3dhYmxlJyk7CisKK3ZlcmlmeVByb3BlcnR5KGRlc2MuZ2V0LCAn
bmFtZScsIHsKKyAgdmFsdWU6ICdnZXQgZ3Jvd2FibGUnLAorICBlbnVtZXJhYmxlOiBmYWxzZSwK
KyAgd3JpdGFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3Rv
dHlwZS9ncm93YWJsZS9wcm9wLWRlc2MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3Byb3AtZGVzYy5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44OGI4NjU3MWY5NzFjYzQ0M2FhNzQ5YWZkM2VlZWMyYmJmMzY5MTAyCi0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVm
ZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9wcm9wLWRlc2MuanMKQEAgLTAsMCArMSwyNSBAQAorLy8g
Q29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1
ZmZlci5wcm90b3R5cGUuZ3Jvd2FibGUKK2Rlc2NyaXB0aW9uOiA+CisgICJncm93YWJsZSIgcHJv
cGVydHkgb2YgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlCitpbmZvOiB8CisgIFNoYXJlZEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5ncm93YWJsZSBpcyBhbiBhY2Nlc3NvciBwcm9wZXJ0eSB3aG9z
ZSBzZXQgYWNjZXNzb3IKKyAgZnVuY3Rpb24gaXMgdW5kZWZpbmVkLgorCisgIFNlY3Rpb24gMTc6
IEV2ZXJ5IGFjY2Vzc29yIHByb3BlcnR5IGRlc2NyaWJlZCBpbiBjbGF1c2VzIDE4IHRocm91Z2gg
MjYgYW5kIGluCisgIEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMge1tbRW51bWVyYWJsZV1d
OiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9CitpbmNsdWRlczogW3Byb3BlcnR5SGVs
cGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIg
ZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoU2hhcmVkQXJyYXlCdWZmZXIu
cHJvdG90eXBlLCAnZ3Jvd2FibGUnKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShkZXNjLnNldCwgdW5k
ZWZpbmVkKTsKK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIGRlc2MuZ2V0LCAnZnVuY3Rpb24nKTsK
KwordmVyaWZ5UHJvcGVydHkoU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLCAnZ3Jvd2FibGUn
LCB7CisgIGVudW1lcmFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVy
L3Byb3RvdHlwZS9ncm93YWJsZS9yZXR1cm4tZ3Jvd2FibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3JldHVy
bi1ncm93YWJsZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYzRiZGIwZDBmZWQwMDBiNWZlYjM5NTllM2Y3M2Rm
NTFiNjg1YTkzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS9yZXR1cm4tZ3Jvd2FibGUu
anMKQEAgLTAsMCArMSwyOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0
IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNp
ZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3Jvd2FibGUKK2Rlc2NyaXB0
aW9uOiBSZXR1cm4gdmFsdWUgYWNjb3JkaW5nIHRvIFtbQXJyYXlCdWZmZXJNYXhCeXRlTGVuZ3Ro
XV0gaW50ZXJuYWwgc2xvdAoraW5mbzogfAorICBnZXQgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90
eXBlLmdyb3dhYmxlCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRoaXMgdmFsdWUuCisgIDIuIFBlcmZv
cm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlCdWZmZXJEYXRhXV0pLgorICAzLiBJ
ZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIGZhbHNlLCB0aHJvdyBhIFR5cGVFcnJvciBleGNl
cHRpb24uCisgIDQuIFJldHVybiBJc1Jlc2l6YWJsZUFycmF5QnVmZmVyKE8pLgorCisgIElzUmVz
aXphYmxlQXJyYXlCdWZmZXIgKCBhcnJheUJ1ZmZlciApCisKKyAgMS4gQXNzZXJ0OiBUeXBlKGFy
cmF5QnVmZmVyKSBpcyBPYmplY3QgYW5kIGFycmF5QnVmZmVyIGhhcyBhbgorICAgICBbW0FycmF5
QnVmZmVyRGF0YV1dIGludGVybmFsIHNsb3QuCisgIDIuIElmIGJ1ZmZlciBoYXMgYW4gW1tBcnJh
eUJ1ZmZlck1heEJ5dGVMZW5ndGhdXSBpbnRlcm5hbCBzbG90LCByZXR1cm4gdHJ1ZS4KKyAgMy4g
UmV0dXJuIGZhbHNlLgorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLwor
Cit2YXIgc2FiMSA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcigxKTsKKworYXNzZXJ0LnNhbWVWYWx1
ZShzYWIxLmdyb3dhYmxlLCBmYWxzZSk7CisKK3ZhciBzYWIyID0gbmV3IFNoYXJlZEFycmF5QnVm
ZmVyKDEsIHttYXhCeXRlTGVuZ3RoOiAxfSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoc2FiMi5ncm93
YWJsZSwgdHJ1ZSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
U2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3RoaXMtaGFzLW5vLWFycmF5YnVm
ZmVyZGF0YS1pbnRlcm5hbC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFy
ZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvZ3Jvd2FibGUvdGhpcy1oYXMtbm8tYXJyYXlidWZmZXJk
YXRhLWludGVybmFsLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFjNjY2Y2M1NzEzYzhlZGZjYTc5NDk0MDFhYTZk
NWY4YzQwMmI2MWYKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3RoaXMtaGFzLW5vLWFy
cmF5YnVmZmVyZGF0YS1pbnRlcm5hbC5qcwpAQCAtMCwwICsxLDM5IEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LXNoYXJlZGFycmF5YnVmZmVyLnByb3Rv
dHlwZS5ncm93YWJsZQorZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIGEgVHlwZUVycm9yIGV4Y2Vw
dGlvbiB3aGVuIGB0aGlzYCBkb2VzIG5vdCBoYXZlIGEgW1tBcnJheUJ1ZmZlckRhdGFdXQorICBp
bnRlcm5hbCBzbG90CitpbmZvOiB8CisgIGdldCBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUu
Z3Jvd2FibGUKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/
IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIFsuLi5dCitm
ZWF0dXJlczogW0RhdGFWaWV3LCBJbnQ4QXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK3ZhciBnZXR0ZXIgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKAorICBT
aGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUsICJncm93YWJsZSIKKykuZ2V0OworCithc3NlcnQu
c2FtZVZhbHVlKHR5cGVvZiBnZXR0ZXIsICJmdW5jdGlvbiIpOworCithc3NlcnQudGhyb3dzKFR5
cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKHt9KTsKK30pOworCithc3NlcnQu
dGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKFtdKTsKK30pOwor
Cit2YXIgdGEgPSBuZXcgSW50OEFycmF5KDgpOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1
bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCh0YSk7Cit9KTsKKwordmFyIGR2ID0gbmV3IERhdGFW
aWV3KG5ldyBTaGFyZWRBcnJheUJ1ZmZlcig4KSwgMCk7Cithc3NlcnQudGhyb3dzKFR5cGVFcnJv
ciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKGR2KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9n
cm93YWJsZS90aGlzLWlzLWFycmF5YnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS90aGlzLWlzLWFycmF5
YnVmZmVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJlNDFkZGM3ZjY0YzdiN2MxOTYwMzk4MjM0MWNmY2Q2NDUw
MTc0MzkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
U2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3RoaXMtaXMtYXJyYXlidWZmZXIu
anMKQEAgLTAsMCArMSwzMyBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0
IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNp
ZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3Jvd2FibGUKK2Rlc2NyaXB0
aW9uOiBUaHJvd3MgYSBUeXBlRXJyb3IgZXhjZXB0aW9uIHdoZW4gYHRoaXNgIGlzIGFuIFNoYXJl
ZEFycmF5QnVmZmVyCitpbmZvOiB8CisgIGdldCBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUu
Z3Jvd2FibGUKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/
IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIDMuIElmIElz
U2hhcmVkQXJyYXlCdWZmZXIoTykgaXMgZmFsc2UsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlv
bi4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbU2hhcmVkQXJyYXlCdWZmZXIsIHJlc2l6YWJsZS1hcnJh
eWJ1ZmZlcl0KKy0tLSovCisKK3ZhciBncm93YWJsZSA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoCisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZSwgImdyb3dhYmxlIgorKTsK
KwordmFyIGdldHRlciA9IGdyb3dhYmxlLmdldDsKK3ZhciBhYiA9IG5ldyBTaGFyZWRBcnJheUJ1
ZmZlcig0KTsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgZ2V0dGVyLCAiZnVuY3Rpb24iKTsK
KworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbChh
Yik7Cit9LCAiYHRoaXNgIGNhbm5vdCBiZSBhbiBTaGFyZWRBcnJheUJ1ZmZlciIpOworCitPYmpl
Y3QuZGVmaW5lUHJvcGVydGllcyhhYiwgeyBncm93YWJsZTogZ3Jvd2FibGUgfSk7CisKK2Fzc2Vy
dC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgYWIuZ3Jvd2FibGU7Cit9LCAiYHRo
aXNgIGNhbm5vdCBiZSBhbiBTaGFyZWRBcnJheUJ1ZmZlciIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93
YWJsZS90aGlzLWlzLW5vdC1vYmplY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBlL2dyb3dhYmxlL3RoaXMtaXMtbm90LW9iamVj
dC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lNTViOGZkMGVkMThjYmY0NWQ5MTU4MDk1ZTM4N2VjOGI5OGY5YTEw
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9ncm93YWJsZS90aGlzLWlzLW5vdC1vYmplY3QuanMKQEAg
LTAsMCArMSw0OCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhv
cnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhl
IEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2Vj
LWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUuZ3Jvd2FibGUKK2Rlc2NyaXB0aW9uOiBU
aHJvd3MgYSBUeXBlRXJyb3IgZXhjZXB0aW9uIHdoZW4gYHRoaXNgIGlzIG5vdCBPYmplY3QKK2lu
Zm86IHwKKyAgZ2V0IFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZS5ncm93YWJsZQorCisgIDEu
IExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFs
U2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbU3ltYm9s
LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIgZ2V0dGVyID0gT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcigKKyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLCAi
Z3Jvd2FibGUiCispLmdldDsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgZ2V0dGVyLCAiZnVu
Y3Rpb24iKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0
ZXIuY2FsbCh1bmRlZmluZWQpOworfSwgInRoaXMgaXMgdW5kZWZpbmVkIik7CisKK2Fzc2VydC50
aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwobnVsbCk7Cit9LCAi
dGhpcyBpcyBudWxsIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsK
KyAgZ2V0dGVyLmNhbGwoNDIpOworfSwgInRoaXMgaXMgNDIiKTsKKworYXNzZXJ0LnRocm93cyhU
eXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCgiMSIpOworfSwgInRoaXMgaXMg
YSBzdHJpbmciKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBn
ZXR0ZXIuY2FsbCh0cnVlKTsKK30sICJ0aGlzIGlzIHRydWUiKTsKKworYXNzZXJ0LnRocm93cyhU
eXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbChmYWxzZSk7Cit9LCAidGhpcyBp
cyBmYWxzZSIpOworCit2YXIgcyA9IFN5bWJvbCgicyIpOworYXNzZXJ0LnRocm93cyhUeXBlRXJy
b3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbChzKTsKK30sICJ0aGlzIGlzIGEgU3ltYm9s
Iik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJy
YXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvaW52b2tlZC1hcy1hY2Nlc3Nvci5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5
cGUvbWF4Qnl0ZUxlbmd0aC9pbnZva2VkLWFzLWFjY2Vzc29yLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE1OGQ1
OTliNDRhYzdjMDhhNTdkNDRiYjE4ZDY4MWFlZjI3ZjY4OWIKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJvdG90eXBl
L21heEJ5dGVMZW5ndGgvaW52b2tlZC1hcy1hY2Nlc3Nvci5qcwpAQCAtMCwwICsxLDE3IEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LXNoYXJlZGFycmF5
YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitkZXNjcmlwdGlvbjogUmVxdWlyZXMgdGhp
cyB2YWx1ZSB0byBoYXZlIGEgW1tBcnJheUJ1ZmZlckRhdGFdXSBpbnRlcm5hbCBzbG90CitpbmZv
OiB8CisgIGdldCBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aAorCisg
IDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVy
bmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbcmVz
aXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1
bmN0aW9uKCkgeworICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aDsK
K30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFy
cmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2ludm9rZWQtYXMtZnVuYy5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUv
bWF4Qnl0ZUxlbmd0aC9pbnZva2VkLWFzLWZ1bmMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDA3YzJhMzhhYWQy
Mzg0YzgzMThjZDZhODA5MzdmZmU4YTY1NjZmMAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0
ZUxlbmd0aC9pbnZva2VkLWFzLWZ1bmMuanMKQEAgLTAsMCArMSwyMyBAQAorLy8gQ29weXJpZ2h0
IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90
b3R5cGUubWF4Ynl0ZWxlbmd0aAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBleGNl
cHRpb24gd2hlbiBpbnZva2VkIGFzIGEgZnVuY3Rpb24KK2luZm86IHwKKyAgZ2V0IFNoYXJlZEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5tYXhCeXRlTGVuZ3RoCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRo
aXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlC
dWZmZXJEYXRhXV0pLgorICBbLi4uXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJd
CistLS0qLworCit2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcigK
KyAgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLCAnbWF4Qnl0ZUxlbmd0aCcKKykuZ2V0Owor
Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBnZXR0ZXIsICdmdW5jdGlvbicpOworCithc3NlcnQu
dGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlcigpOworfSk7CmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJyYXlCdWZmZXIvcHJv
dG90eXBlL21heEJ5dGVMZW5ndGgvbGVuZ3RoLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2xlbmd0aC5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43YjRhNmU3ODFjOGJmNGExNWIyZjY0ZTM3N2I4YWIzY2Y5MDQwNDdlCi0t
LSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFy
cmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL2xlbmd0aC5qcwpAQCAtMCwwICsxLDMy
IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vu
c2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LXNoYXJl
ZGFycmF5YnVmZmVyLnByb3RvdHlwZS5tYXhieXRlbGVuZ3RoCitkZXNjcmlwdGlvbjogPgorICBn
ZXQgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLm1heEJ5dGVMZW5ndGgubGVuZ3RoIGlzIDAu
CitpbmZvOiB8CisgIGdldCBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0
aAorCisgIDE3IEVDTUFTY3JpcHQgU3RhbmRhcmQgQnVpbHQtaW4gT2JqZWN0czoKKyAgICBFdmVy
eSBidWlsdC1pbiBGdW5jdGlvbiBvYmplY3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIGhhcyBh
IGxlbmd0aAorICAgIHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIGFuIGludGVnZXIuIFVubGVzcyBv
dGhlcndpc2Ugc3BlY2lmaWVkLCB0aGlzCisgICAgdmFsdWUgaXMgZXF1YWwgdG8gdGhlIGxhcmdl
c3QgbnVtYmVyIG9mIG5hbWVkIGFyZ3VtZW50cyBzaG93biBpbiB0aGUKKyAgICBzdWJjbGF1c2Ug
aGVhZGluZ3MgZm9yIHRoZSBmdW5jdGlvbiBkZXNjcmlwdGlvbiwgaW5jbHVkaW5nIG9wdGlvbmFs
CisgICAgcGFyYW1ldGVycy4gSG93ZXZlciwgcmVzdCBwYXJhbWV0ZXJzIHNob3duIHVzaW5nIHRo
ZSBmb3JtIOKAnC4uLm5hbWXigJ0KKyAgICBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSBkZWZhdWx0
IGFyZ3VtZW50IGNvdW50LgorCisgICAgVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSBs
ZW5ndGggcHJvcGVydHkgb2YgYSBidWlsdC1pbiBGdW5jdGlvbgorICAgIG9iamVjdCBoYXMgdGhl
IGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06IGZhbHNlLCBbW0VudW1lcmFibGVdXTogZmFsc2Us
CisgICAgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9LgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBl
ci5qc10KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwordmFyIGRl
c2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKFNoYXJlZEFycmF5QnVmZmVyLnBy
b3RvdHlwZSwgJ21heEJ5dGVMZW5ndGgnKTsKKwordmVyaWZ5UHJvcGVydHkoZGVzYy5nZXQsICds
ZW5ndGgnLCB7CisgIHZhbHVlOiAwLAorICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6
IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRl
TGVuZ3RoL25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU2hhcmVkQXJy
YXlCdWZmZXIvcHJvdG90eXBlL21heEJ5dGVMZW5ndGgvbmFtZS5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMWM2
NjhmZTMzYzVlMzcyMWMxZTVmYWEwMTFjMzkyYTg3Y2ExYmJmCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlw
ZS9tYXhCeXRlTGVuZ3RoL25hbWUuanMKQEAgLTAsMCArMSwyNCBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5
cGUubWF4Ynl0ZWxlbmd0aAorZGVzY3JpcHRpb246ID4KKyAgZ2V0IFNoYXJlZEFycmF5QnVmZmVy
LnByb3RvdHlwZS5tYXhCeXRlTGVuZ3RoCisKKyAgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWls
dC1pbiBPYmplY3RzCisKKyAgRnVuY3Rpb25zIHRoYXQgYXJlIHNwZWNpZmllZCBhcyBnZXQgb3Ig
c2V0IGFjY2Vzc29yIGZ1bmN0aW9ucyBvZiBidWlsdC1pbgorICBwcm9wZXJ0aWVzIGhhdmUgImdl
dCAiIG9yICJzZXQgIiBwcmVwZW5kZWQgdG8gdGhlIHByb3BlcnR5IG5hbWUgc3RyaW5nLgorCitp
bmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXli
dWZmZXJdCistLS0qLworCit2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLCAnbWF4Qnl0ZUxlbmd0aCcpOworCit2ZXJp
ZnlQcm9wZXJ0eShkZXNjLmdldCwgJ25hbWUnLCB7CisgIHZhbHVlOiAnZ2V0IG1heEJ5dGVMZW5n
dGgnLAorICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBjb25maWd1
cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3Byb3AtZGVzYy5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90
b3R5cGUvbWF4Qnl0ZUxlbmd0aC9wcm9wLWRlc2MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjJmOGE2Y2U3ZjEx
ZGNmNGE2MWRlMjMxMzUzMDdlZWJiZGJkNDcwMgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0
ZUxlbmd0aC9wcm9wLWRlc2MuanMKQEAgLTAsMCArMSwyNSBAQAorLy8gQ29weXJpZ2h0IChDKSAy
MDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlz
IGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNF
IGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUu
bWF4Ynl0ZWxlbmd0aAorZGVzY3JpcHRpb246ID4KKyAgIm1heEJ5dGVMZW5ndGgiIHByb3BlcnR5
IG9mIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZQoraW5mbzogfAorICBTaGFyZWRBcnJheUJ1
ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aCBpcyBhbiBhY2Nlc3NvciBwcm9wZXJ0eSB3aG9z
ZSBzZXQKKyAgYWNjZXNzb3IgZnVuY3Rpb24gaXMgdW5kZWZpbmVkLgorCisgIFNlY3Rpb24gMTc6
IEV2ZXJ5IGFjY2Vzc29yIHByb3BlcnR5IGRlc2NyaWJlZCBpbiBjbGF1c2VzIDE4IHRocm91Z2gg
MjYgYW5kIGluCisgIEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMge1tbRW51bWVyYWJsZV1d
OiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9CitpbmNsdWRlczogW3Byb3BlcnR5SGVs
cGVyLmpzXQorZmVhdHVyZXM6IFtyZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCit2YXIg
ZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoU2hhcmVkQXJyYXlCdWZmZXIu
cHJvdG90eXBlLCAnbWF4Qnl0ZUxlbmd0aCcpOworCithc3NlcnQuc2FtZVZhbHVlKGRlc2Muc2V0
LCB1bmRlZmluZWQpOworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgZGVzYy5nZXQsICdmdW5jdGlv
bicpOworCit2ZXJpZnlQcm9wZXJ0eShTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUsICdtYXhC
eXRlTGVuZ3RoJywgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVl
Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRB
cnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9yZXR1cm4tbWF4Ynl0ZWxlbmd0aC1n
cm93YWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1
ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9yZXR1cm4tbWF4Ynl0ZWxlbmd0aC1ncm93YWJs
ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40ZWQ2MGJmNzkzYWIyMGI1MTMxZTQ3ZThlYjU1OGQxYTNhNTlhYWE2
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJl
ZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVybi1tYXhieXRlbGVuZ3Ro
LWdyb3dhYmxlLmpzCkBAIC0wLDAgKzEsMjcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUg
VjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
LyotLS0KK2VzaWQ6IHNlYy1nZXQtc2hhcmVkYXJyYXlidWZmZXIucHJvdG90eXBlLm1heGJ5dGVs
ZW5ndGgKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gdmFsdWUgZnJvbSBbW0FycmF5QnVmZmVyTWF4Qnl0
ZUxlbmd0aF1dIGludGVybmFsIHNsb3QKK2luZm86IHwKKyAgMjQuMS40LjEgZ2V0IFNoYXJlZEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5tYXhCeXRlTGVuZ3RoCisKKyAgMS4gTGV0IE8gYmUgdGhlIHRo
aXMgdmFsdWUuCisgIDIuIFBlcmZvcm0gPyBSZXF1aXJlSW50ZXJuYWxTbG90KE8sIFtbQXJyYXlC
dWZmZXJEYXRhXV0pLgorICAzLiBJZiBJc1NoYXJlZEFycmF5QnVmZmVyKE8pIGlzIGZhbHNlLCB0
aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCisgIDQuIElmIElzUmVzaXphYmxlQXJyYXlCdWZm
ZXIoTykgaXMgdHJ1ZSwgdGhlbgorICAgICBhLiBMZXQgbGVuZ3RoIGJlIE8uW1tBcnJheUJ1ZmZl
ck1heEJ5dGVMZW5ndGhdXS4KKyAgNS4gRWxzZSwKKyAgICAgWy4uLl0KKyAgNi4gUmV0dXJuIPCd
lL0obGVuZ3RoKS4KK2ZlYXR1cmVzOiBbcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwor
dmFyIGFiMSA9IG5ldyBTaGFyZWRBcnJheUJ1ZmZlcigwLCB7IG1heEJ5dGVMZW5ndGg6IDAgfSk7
Cithc3NlcnQuc2FtZVZhbHVlKGFiMS5tYXhCeXRlTGVuZ3RoLCAwKTsKKwordmFyIGFiMiA9IG5l
dyBTaGFyZWRBcnJheUJ1ZmZlcigwLCB7IG1heEJ5dGVMZW5ndGg6IDIzIH0pOworYXNzZXJ0LnNh
bWVWYWx1ZShhYjIubWF4Qnl0ZUxlbmd0aCwgMjMpOworCit2YXIgYWIzID0gbmV3IFNoYXJlZEFy
cmF5QnVmZmVyKDQyLCB7IG1heEJ5dGVMZW5ndGg6IDQyIH0pOworYXNzZXJ0LnNhbWVWYWx1ZShh
YjMubWF4Qnl0ZUxlbmd0aCwgNDIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3JldHVy
bi1tYXhieXRlbGVuZ3RoLW5vbi1ncm93YWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC9yZXR1cm4t
bWF4Ynl0ZWxlbmd0aC1ub24tZ3Jvd2FibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzk1N2Y3ODRjMWRkMzVh
MTcwMWFmNDczZDFhYjhiZTFhMmYyZGYyNAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxl
bmd0aC9yZXR1cm4tbWF4Ynl0ZWxlbmd0aC1ub24tZ3Jvd2FibGUuanMKQEAgLTAsMCArMSwyNCBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1zaGFyZWRh
cnJheWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0aAorZGVzY3JpcHRpb246IFJldHVybiB2
YWx1ZSBmcm9tIFtbQXJyYXlCdWZmZXJCeXRlTGVuZ3RoXV0gaW50ZXJuYWwgc2xvdAoraW5mbzog
fAorICAyNC4xLjQuMSBnZXQgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBlLm1heEJ5dGVMZW5n
dGgKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVyZm9ybSA/IFJlcXVp
cmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIDMuIElmIElzU2hhcmVk
QXJyYXlCdWZmZXIoTykgaXMgZmFsc2UsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbi4KKyAg
NC4gSWYgSXNSZXNpemFibGVBcnJheUJ1ZmZlcihPKSBpcyB0cnVlLCB0aGVuCisgICAgIFsuLi5d
CisgIDUuIEVsc2UsCisgICAgIGEuIExldCBsZW5ndGggYmUgTy5bW0FycmF5QnVmZmVyQnl0ZUxl
bmd0aF1dLgorICA2LiBSZXR1cm4g8J2UvShsZW5ndGgpLgorZmVhdHVyZXM6IFtyZXNpemFibGUt
YXJyYXlidWZmZXJdCistLS0qLworCit2YXIgYWIxID0gbmV3IFNoYXJlZEFycmF5QnVmZmVyKDAp
OworYXNzZXJ0LnNhbWVWYWx1ZShhYjEubWF4Qnl0ZUxlbmd0aCwgMCk7CisKK3ZhciBhYjIgPSBu
ZXcgU2hhcmVkQXJyYXlCdWZmZXIoNDIpOworYXNzZXJ0LnNhbWVWYWx1ZShhYjIubWF4Qnl0ZUxl
bmd0aCwgNDIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1No
YXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3RoaXMtaGFzLW5vLWFycmF5
YnVmZmVyZGF0YS1pbnRlcm5hbC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWhhcy1uby1hcnJh
eWJ1ZmZlcmRhdGEtaW50ZXJuYWwuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmMwMGZiYzE1OGIwMzkxYzYwYTJl
NDIyMTAxMGYyNmIzOTQ1NmVhNAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90
aGlzLWhhcy1uby1hcnJheWJ1ZmZlcmRhdGEtaW50ZXJuYWwuanMKQEAgLTAsMCArMSwzOSBAQAor
Ly8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZv
dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC1zaGFyZWRhcnJh
eWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0aAorZGVzY3JpcHRpb246ID4KKyAgVGhyb3dz
IGEgVHlwZUVycm9yIGV4Y2VwdGlvbiB3aGVuIGB0aGlzYCBkb2VzIG5vdCBoYXZlIGEgW1tBcnJh
eUJ1ZmZlckRhdGFdXQorICBpbnRlcm5hbCBzbG90CitpbmZvOiB8CisgIGdldCBTaGFyZWRBcnJh
eUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aAorCisgIDEuIExldCBPIGJlIHRoZSB0aGlz
IHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUludGVybmFsU2xvdChPLCBbW0FycmF5QnVm
ZmVyRGF0YV1dKS4KKyAgWy4uLl0KK2ZlYXR1cmVzOiBbRGF0YVZpZXcsIEludDhBcnJheSwgcmVz
aXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwordmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3IoCisgIFNoYXJlZEFycmF5QnVmZmVyLnByb3RvdHlwZSwgIm1heEJ5
dGVMZW5ndGgiCispLmdldDsKKworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgZ2V0dGVyLCAiZnVu
Y3Rpb24iKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0
ZXIuY2FsbCh7fSk7Cit9KTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkg
eworICBnZXR0ZXIuY2FsbChbXSk7Cit9KTsKKwordmFyIHRhID0gbmV3IEludDhBcnJheSg4KTsK
K2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwodGEp
OworfSk7CisKK3ZhciBkdiA9IG5ldyBEYXRhVmlldyhuZXcgU2hhcmVkQXJyYXlCdWZmZXIoOCks
IDApOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2Fs
bChkdik7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9T
aGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlzLWFycmF5YnVm
ZmVyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVy
L3Byb3RvdHlwZS9tYXhCeXRlTGVuZ3RoL3RoaXMtaXMtYXJyYXlidWZmZXIuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTNjZWI0MDdmNmMzMDk0OGRlYjJhZWY4ODRiZDg1ODgyYTFhYTFlMQotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9w
cm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlzLWFycmF5YnVmZmVyLmpzCkBAIC0wLDAgKzEs
MzMgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1nZXQtc2hh
cmVkYXJyYXlidWZmZXIucHJvdG90eXBlLm1heGJ5dGVsZW5ndGgKK2Rlc2NyaXB0aW9uOiBUaHJv
d3MgYSBUeXBlRXJyb3IgZXhjZXB0aW9uIHdoZW4gYHRoaXNgIGlzIGFuIEFycmF5QnVmZmVyCitp
bmZvOiB8CisgIGdldCBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUubWF4Qnl0ZUxlbmd0aAor
CisgIDEuIExldCBPIGJlIHRoZSB0aGlzIHZhbHVlLgorICAyLiBQZXJmb3JtID8gUmVxdWlyZUlu
dGVybmFsU2xvdChPLCBbW0FycmF5QnVmZmVyRGF0YV1dKS4KKyAgMy4gSWYgSXNTaGFyZWRBcnJh
eUJ1ZmZlcihPKSBpcyBmYWxzZSwgdGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorICBbLi4u
XQorZmVhdHVyZXM6IFtBcnJheUJ1ZmZlciwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8K
KwordmFyIG1heEJ5dGVMZW5ndGggPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKAor
ICBTaGFyZWRBcnJheUJ1ZmZlci5wcm90b3R5cGUsICJtYXhCeXRlTGVuZ3RoIgorKTsKKwordmFy
IGdldHRlciA9IG1heEJ5dGVMZW5ndGguZ2V0OwordmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKDQp
OworCithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBnZXR0ZXIsICJmdW5jdGlvbiIpOworCithc3Nl
cnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGdldHRlci5jYWxsKGFiKTsKK30s
ICJgdGhpc2AgY2Fubm90IGJlIGFuIEFycmF5QnVmZmVyIik7CisKK09iamVjdC5kZWZpbmVQcm9w
ZXJ0aWVzKHNhYiwgeyBtYXhCeXRlTGVuZ3RoOiBtYXhCeXRlTGVuZ3RoIH0pOworCithc3NlcnQu
dGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGFiLm1heEJ5dGVMZW5ndGg7Cit9LCAi
YHRoaXNgIGNhbm5vdCBiZSBhbiBBcnJheUJ1ZmZlciIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1NoYXJlZEFycmF5QnVmZmVyL3Byb3RvdHlwZS9tYXhCeXRl
TGVuZ3RoL3RoaXMtaXMtbm90LW9iamVjdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlzLW5v
dC1vYmplY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWFmYTNjZjg1NzM5OWI3OTc4Mzc4ZTgxY2IwZmM1MTc2
NDA1NGQ4YwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9TaGFyZWRBcnJheUJ1ZmZlci9wcm90b3R5cGUvbWF4Qnl0ZUxlbmd0aC90aGlzLWlzLW5vdC1v
YmplY3QuanMKQEAgLTAsMCArMSw0OCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLWdldC1zaGFyZWRhcnJheWJ1ZmZlci5wcm90b3R5cGUubWF4Ynl0ZWxlbmd0
aAorZGVzY3JpcHRpb246IFRocm93cyBhIFR5cGVFcnJvciBleGNlcHRpb24gd2hlbiBgdGhpc2Ag
aXMgbm90IE9iamVjdAoraW5mbzogfAorICBnZXQgU2hhcmVkQXJyYXlCdWZmZXIucHJvdG90eXBl
Lm1heEJ5dGVMZW5ndGgKKworICAxLiBMZXQgTyBiZSB0aGUgdGhpcyB2YWx1ZS4KKyAgMi4gUGVy
Zm9ybSA/IFJlcXVpcmVJbnRlcm5hbFNsb3QoTywgW1tBcnJheUJ1ZmZlckRhdGFdXSkuCisgIFsu
Li5dCitmZWF0dXJlczogW1N5bWJvbCwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKwor
dmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoCisgIFNoYXJlZEFy
cmF5QnVmZmVyLnByb3RvdHlwZSwgIm1heEJ5dGVMZW5ndGgiCispLmdldDsKKworYXNzZXJ0LnNh
bWVWYWx1ZSh0eXBlb2YgZ2V0dGVyLCAiZnVuY3Rpb24iKTsKKworYXNzZXJ0LnRocm93cyhUeXBl
RXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCh1bmRlZmluZWQpOworfSwgInRoaXMg
aXMgdW5kZWZpbmVkIik7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsK
KyAgZ2V0dGVyLmNhbGwobnVsbCk7Cit9LCAidGhpcyBpcyBudWxsIik7CisKK2Fzc2VydC50aHJv
d3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgZ2V0dGVyLmNhbGwoNDIpOworfSwgInRoaXMg
aXMgNDIiKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0
ZXIuY2FsbCgiMSIpOworfSwgInRoaXMgaXMgYSBzdHJpbmciKTsKKworYXNzZXJ0LnRocm93cyhU
eXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2FsbCh0cnVlKTsKK30sICJ0aGlzIGlz
IHRydWUiKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0
ZXIuY2FsbChmYWxzZSk7Cit9LCAidGhpcyBpcyBmYWxzZSIpOworCit2YXIgcyA9IFN5bWJvbCgi
cyIpOworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICBnZXR0ZXIuY2Fs
bChzKTsKK30sICJ0aGlzIGlzIGEgU3ltYm9sIik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvU3ltYm9sL2Zvci9kZXNjcmlwdGlvbi5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9TeW1ib2wvZm9yL2Rlc2NyaXB0aW9uLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljc2NjUwNjcyNTRlOGU3MDk3ZDc1MjIwOTQ2NDJmZWJmYWU0MGJjMDcKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvU3ltYm9sL2Zvci9kZXNjcmlwdGlv
bi5qcwpAQCAtMCwwICsxLDE4IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2pl
Y3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitl
c2lkOiBzZWMtc3ltYm9sLmZvcgorZGVzY3JpcHRpb246IEFzc2lnbnMgdGhlIHN0cmluZyB2YWx1
ZSB0byB0aGUgW1tEZXNjcmlwdGlvbl1dIHNsb3QKK2luZm86IHwKKyAgICAxLiBMZXQgc3RyaW5n
S2V5IGJlID8gVG9TdHJpbmcoa2V5KS4KKyAgICBbLi4uXQorICAgIDQuIExldCBuZXdTeW1ib2wg
YmUgYSBuZXcgdW5pcXVlIFN5bWJvbCB2YWx1ZSB3aG9zZSBbW0Rlc2NyaXB0aW9uXV0gdmFsdWUK
KyAgICAgICBpcyBzdHJpbmdLZXkuCisgICAgWy4uLl0KKyAgICA2LiBSZXR1cm4gbmV3U3ltYm9s
LgorZmVhdHVyZXM6IFtTeW1ib2wsIFN5bWJvbC5wcm90b3R5cGUuZGVzY3JpcHRpb25dCistLS0q
LworCit2YXIgc3ltYm9sID0gU3ltYm9sLmZvcih7dG9TdHJpbmc6IGZ1bmN0aW9uKCkgeyByZXR1
cm4gJ3Rlc3QyNjInOyB9fSk7CisKK2Fzc2VydC5zYW1lVmFsdWUoc3ltYm9sLmRlc2NyaXB0aW9u
LCAndGVzdDI2MicpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1RlbXBvcmFsL25vdy9pbnN0YW50L2V4dGVuc2libGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvZXh0ZW5zaWJsZS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zNzJhZTgwM2E3NjNmYTY1NTE5NmY4NGUwZTk4YjM5MWQ0ZThiMzFiCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50
L2V4dGVuc2libGUuanMKQEAgLTAsMCArMSw5IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhl
IFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBp
cyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4K
Ky8qLS0tCitlc2lkOiBzZWMtdGVtcG9yYWwubm93Lmluc3RhbnQKK2Rlc2NyaXB0aW9uOiBUZW1w
b3JhbC5ub3cuaW5zdGFudCBpcyBleHRlbnNpYmxlLgorZmVhdHVyZXM6IFtUZW1wb3JhbF0KKy0t
LSovCisKK2Fzc2VydChPYmplY3QuaXNFeHRlbnNpYmxlKFRlbXBvcmFsLm5vdy5pbnN0YW50KSk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93
L2luc3RhbnQvbGVuZ3RoLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBv
cmFsL25vdy9pbnN0YW50L2xlbmd0aC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NDQwMmIwNTU2ODU3MGU0NmU4
NjFlMWY1OTAxNjg0NmNmNDQyOThiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L2xlbmd0aC5qcwpAQCAtMCwwICsx
LDE1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtdGVtcG9y
YWwubm93Lmluc3RhbnQKK2Rlc2NyaXB0aW9uOiBUZW1wb3JhbC5ub3cuaW5zdGFudC5sZW5ndGgg
aXMgMAoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbVGVtcG9yYWxd
CistLS0qLworCit2ZXJpZnlQcm9wZXJ0eShUZW1wb3JhbC5ub3cuaW5zdGFudCwgImxlbmd0aCIs
IHsKKyAgdmFsdWU6IDAsCisgIHdyaXRhYmxlOiBmYWxzZSwKKyAgZW51bWVyYWJsZTogZmFsc2Us
CisgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L25hbWUuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvbmFtZS5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi44ZWNhYjVjYWE2ZTY5ZjBjZGJkOWIwOTQ2ZDMwNGNkMzVkODY5ZGQyCi0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0
YW50L25hbWUuanMKQEAgLTAsMCArMSwxNiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBW
OCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMg
Z292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisv
Ki0tLQorZXNpZDogc2VjLXRlbXBvcmFsLm5vdy5pbnN0YW50CitkZXNjcmlwdGlvbjogVGVtcG9y
YWwubm93Lmluc3RhbnQubmFtZSBpcyAiaW5zdGFudCIuCitpbmNsdWRlczogW3Byb3BlcnR5SGVs
cGVyLmpzXQorZmVhdHVyZXM6IFtUZW1wb3JhbF0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUo
VGVtcG9yYWwubm93Lmluc3RhbnQubmFtZSwgJ2luc3RhbnQnKTsKKwordmVyaWZ5UHJvcGVydHko
VGVtcG9yYWwubm93Lmluc3RhbnQsICduYW1lJywgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAg
d3JpdGFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L25vdC1h
LWNvbnN0cnVjdG9yLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFs
L25vdy9pbnN0YW50L25vdC1hLWNvbnN0cnVjdG9yLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE2NGJjYTZjZmI0
OWI3NTU4MjQwNjFlODBlYTVjZTU1MzgyYTUwYzkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvbm90LWEtY29uc3Ry
dWN0b3IuanMKQEAgLTAsMCArMSwxNCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLXRlbXBvcmFsLm5vdy5pbnN0YW50CitkZXNjcmlwdGlvbjogVGVtcG9yYWwu
bm93Lmluc3RhbnQgZG9lcyBub3QgaW1wbGVtZW50IFtbQ29uc3RydWN0XV0KK2luY2x1ZGVzOiBb
aXNDb25zdHJ1Y3Rvci5qc10KK2ZlYXR1cmVzOiBbUmVmbGVjdC5jb25zdHJ1Y3QsIFRlbXBvcmFs
XQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZShpc0NvbnN0cnVjdG9yKFRlbXBvcmFsLm5vdy5p
bnN0YW50KSwgZmFsc2UsICdpc0NvbnN0cnVjdG9yKFRlbXBvcmFsLm5vdy5pbnN0YW50KSBtdXN0
IHJldHVybiBmYWxzZScpOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4geworICBu
ZXcgVGVtcG9yYWwubm93Lmluc3RhbnQoKTsKK30sICdgbmV3IFRlbXBvcmFsLm5vdy5pbnN0YW50
KClgIHRocm93cyBUeXBlRXJyb3InKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvaW5zdGFudC9wcm9wLWRlc2MuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvcHJvcC1kZXNjLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjE3ZjNhOTJhNTVkOTg4ZDgzYjdjNjAyNDhiYTQwNDgzNDZhY2ViNWUKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93
L2luc3RhbnQvcHJvcC1kZXNjLmpzCkBAIC0wLDAgKzEsMTQgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy10ZW1wb3JhbC5ub3cuaW5zdGFudAorZGVzY3JpcHRp
b246IFRoZSAiaW5zdGFudCIgcHJvcGVydHkgb2YgVGVtcG9yYWwubm93CitpbmNsdWRlczogW3By
b3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtUZW1wb3JhbF0KKy0tLSovCisKK3ZlcmlmeVBy
b3BlcnR5KFRlbXBvcmFsLm5vdywgJ2luc3RhbnQnLCB7CisgIGVudW1lcmFibGU6IGZhbHNlLAor
ICB3cml0YWJsZTogdHJ1ZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvaW5zdGFudC9yZXR1
cm4tdmFsdWUtZGlzdGluY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVt
cG9yYWwvbm93L2luc3RhbnQvcmV0dXJuLXZhbHVlLWRpc3RpbmN0LmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgw
NjVkMDFmOTI3MmE1MDBhMTdkMGEwYjYzZDliZGVkMDZiN2QyMjUKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvcmV0
dXJuLXZhbHVlLWRpc3RpbmN0LmpzCkBAIC0wLDAgKzEsMTIgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy10ZW1wb3JhbC5ub3cuaW5zdGFudAorZGVzY3JpcHRp
b246IEVhY2ggaW52b2NhdGlvbiBvZiB0aGUgZnVuY3Rpb24gcHJvZHVjZXMgYSBkaXN0aW5jdCBv
YmplY3QgdmFsdWUKK2ZlYXR1cmVzOiBbVGVtcG9yYWxdCistLS0qLworCit2YXIgaW5zdGFudDEg
PSBUZW1wb3JhbC5ub3cuaW5zdGFudCgpOwordmFyIGluc3RhbnQyID0gVGVtcG9yYWwubm93Lmlu
c3RhbnQoKTsKKworYXNzZXJ0Lm5vdFNhbWVWYWx1ZShpbnN0YW50MSwgaW5zdGFudDIpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0
YW50L3JldHVybi12YWx1ZS1wcm90b3R5cGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWls
dC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvcmV0dXJuLXZhbHVlLXByb3RvdHlwZS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5lYjRhNGMxMmZkMWIwNDEwNGExYzllYTdkZGViMTVlODg4OWViOTVkCi0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9p
bnN0YW50L3JldHVybi12YWx1ZS1wcm90b3R5cGUuanMKQEAgLTAsMCArMSwxMiBAQAorLy8gQ29w
eXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXRlbXBvcmFsLm5vdy5pbnN0YW50
CitkZXNjcmlwdGlvbjogVGVtcG9yYWwubm93Lmluc3RhbnQgcmV0dXJucyBhbiBpbnN0YW5jZSBv
ZiB0aGUgSW5zdGFudCBjb25zdHJ1Y3RvcgorZmVhdHVyZXM6IFtUZW1wb3JhbF0KKy0tLSovCisK
K2Fzc2VydC5zYW1lVmFsdWUoCisgIE9iamVjdC5nZXRQcm90b3R5cGVPZihUZW1wb3JhbC5ub3cu
aW5zdGFudCgpKSwKKyAgVGVtcG9yYWwuSW5zdGFudC5wcm90b3R5cGUKKyk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L2luc3RhbnQvcmV0
dXJuLXZhbHVlLXZhbHVlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBv
cmFsL25vdy9pbnN0YW50L3JldHVybi12YWx1ZS12YWx1ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iYTExZjVh
OTNhMTVhOTU5NzZlYWUxMDNiYzQwYjMwYzE0MmRjYTk3Ci0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy9pbnN0YW50L3JldHVybi12
YWx1ZS12YWx1ZS5qcwpAQCAtMCwwICsxLDE2IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhl
IFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBp
cyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4K
Ky8qLS0tCitlc2lkOiBzZWMtdGVtcG9yYWwubm93Lmluc3RhbnQKK2Rlc2NyaXB0aW9uOiA+Cisg
IFRlbXBvcmFsLm5vdy5pbnN0YW50IHJldHVybnMgYW4gSW5zdGFudCBkZXNjcmliaW5nIHRoZSBj
dXJyZW50IG1vbWVudCBpbiB0aW1lCisgIChhcyBjb3Jyb2JvcmF0ZWQgYnkgYERhdGUubm93YCkK
K2ZlYXR1cmVzOiBbVGVtcG9yYWwsIEJpZ0ludF0KKy0tLSovCisKK3ZhciBub3dCZWZvcmUgPSBE
YXRlLm5vdygpOwordmFyIHNlY29uZHMgPSBOdW1iZXIoVGVtcG9yYWwubm93Lmluc3RhbnQoKS5l
cG9jaE5hbm9zZWNvbmRzIC8gMTAwMDAwMG4pOwordmFyIG5vd0FmdGVyID0gRGF0ZS5ub3coKTsK
KworYXNzZXJ0KHNlY29uZHMgPj0gbm93QmVmb3JlLCAnYmVmb3JlJyk7Cithc3NlcnQoc2Vjb25k
cyA8PSBub3dBZnRlciwgJ2FmdGVyJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L3RpbWVab25lL2V4dGVuc2libGUuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L3RpbWVab25lL2V4dGVuc2libGUu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMWI2NmFlMzE3YjMxZDkyNmI3M2FjNWY1ODg1MjFlMzA4OTBlNGI2ZQot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3Jh
bC9ub3cvdGltZVpvbmUvZXh0ZW5zaWJsZS5qcwpAQCAtMCwwICsxLDE1IEBACisvLyBDb3B5cmln
aHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhl
IExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy10ZW1wb3JhbC5ub3cudGltZXpvbmUK
K2Rlc2NyaXB0aW9uOiBUZW1wb3JhbC5ub3cudGltZVpvbmUgaXMgZXh0ZW5zaWJsZS4KK2luZm86
IHwKKyAgIyMgMTcgRUNNQVNjcmlwdCBTdGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzCisKKyAgVW5s
ZXNzIHNwZWNpZmllZCBvdGhlcndpc2UsIHRoZSBbW0V4dGVuc2libGVdXSBpbnRlcm5hbCBzbG90
CisgIG9mIGEgYnVpbHQtaW4gb2JqZWN0IGluaXRpYWxseSBoYXMgdGhlIHZhbHVlIHRydWUuCitm
ZWF0dXJlczogW1RlbXBvcmFsXQorLS0tKi8KKworYXNzZXJ0KE9iamVjdC5pc0V4dGVuc2libGUo
VGVtcG9yYWwubm93LnRpbWVab25lKSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L3RpbWVab25lL2xlbmd0aC5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGltZVpvbmUvbGVuZ3RoLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjFjNDYwZDJkN2RlMTcyODljMWMyNzM4Njk2ODdmYTcwM2RjMmRiYjgKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L3Rp
bWVab25lL2xlbmd0aC5qcwpAQCAtMCwwICsxLDI1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjAg
SWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0t
Citlc2lkOiBzZWMtdGVtcG9yYWwubm93LnRpbWV6b25lCitkZXNjcmlwdGlvbjogVGVtcG9yYWwu
bm93LnRpbWVab25lLmxlbmd0aCBpcyAwCitpbmZvOiB8CisgICAgRXZlcnkgYnVpbHQtaW4gZnVu
Y3Rpb24gb2JqZWN0LCBpbmNsdWRpbmcgY29uc3RydWN0b3JzLCBoYXMgYSAibGVuZ3RoIiBwcm9w
ZXJ0eSB3aG9zZSB2YWx1ZSBpcworICAgIGFuIGludGVnZXIuIFVubGVzcyBvdGhlcndpc2Ugc3Bl
Y2lmaWVkLCB0aGlzIHZhbHVlIGlzIGVxdWFsIHRvIHRoZSBsYXJnZXN0IG51bWJlciBvZiBuYW1l
ZAorICAgIGFyZ3VtZW50cyBzaG93biBpbiB0aGUgc3ViY2xhdXNlIGhlYWRpbmdzIGZvciB0aGUg
ZnVuY3Rpb24gZGVzY3JpcHRpb24uIE9wdGlvbmFsIHBhcmFtZXRlcnMKKyAgICAod2hpY2ggYXJl
IGluZGljYXRlZCB3aXRoIGJyYWNrZXRzOiBbIF0pIG9yIHJlc3QgcGFyYW1ldGVycyAod2hpY2gg
YXJlIHNob3duIHVzaW5nIHRoZSBmb3JtCisgICAgwqsuLi5uYW1lwrspIGFyZSBub3QgaW5jbHVk
ZWQgaW4gdGhlIGRlZmF1bHQgYXJndW1lbnQgY291bnQuCisKKyAgICBVbmxlc3Mgb3RoZXJ3aXNl
IHNwZWNpZmllZCwgdGhlICJsZW5ndGgiIHByb3BlcnR5IG9mIGEgYnVpbHQtaW4gZnVuY3Rpb24g
b2JqZWN0IGhhcyB0aGUKKyAgICBhdHRyaWJ1dGVzIHsgW1tXcml0YWJsZV1dOiBmYWxzZSwgW1tF
bnVtZXJhYmxlXV06IGZhbHNlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczog
W3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtUZW1wb3JhbF0KKy0tLSovCisKK3Zlcmlm
eVByb3BlcnR5KFRlbXBvcmFsLm5vdy50aW1lWm9uZSwgImxlbmd0aCIsIHsKKyAgdmFsdWU6IDAs
CisgIHdyaXRhYmxlOiBmYWxzZSwKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJs
ZTogdHJ1ZSwKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1RlbXBvcmFsL25vdy90aW1lWm9uZS9uYW1lLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1RlbXBvcmFsL25vdy90aW1lWm9uZS9uYW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIxOGZkMmQ4
YzdhYWE0YmZjYTQ4MmVlODY4ZDhjMmNiM2MwZmFkMWUKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L3RpbWVab25lL25hbWUuanMK
QEAgLTAsMCArMSwyNiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lk
OiBzZWMtdGVtcG9yYWwubm93LnRpbWV6b25lCitkZXNjcmlwdGlvbjogVGVtcG9yYWwubm93LnRp
bWVab25lLm5hbWUgaXMgInRpbWVab25lIi4KK2luZm86IHwKKyAgIyMgMTcgRUNNQVNjcmlwdCBT
dGFuZGFyZCBCdWlsdC1pbiBPYmplY3RzOgorICBFdmVyeSBidWlsdC1pbiBGdW5jdGlvbiBvYmpl
Y3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIHRoYXQgaXMgbm90CisgIGlkZW50aWZpZWQgYXMg
YW4gYW5vbnltb3VzIGZ1bmN0aW9uIGhhcyBhIG5hbWUgcHJvcGVydHkgd2hvc2UgdmFsdWUgaXMg
YQorICBTdHJpbmcuCisKKyAgVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSBuYW1lIHBy
b3BlcnR5IG9mIGEgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0LAorICBpZiBpdCBleGlzdHMsIGhh
cyB0aGUgYXR0cmlidXRlcyB7IFtbV3JpdGFibGVdXTogZmFsc2UsIFtbRW51bWVyYWJsZV1dOgor
ICBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9LgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhl
bHBlci5qc10KK2ZlYXR1cmVzOiBbVGVtcG9yYWxdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVl
KFRlbXBvcmFsLm5vdy50aW1lWm9uZS5uYW1lLCAndGltZVpvbmUnKTsKKwordmVyaWZ5UHJvcGVy
dHkoVGVtcG9yYWwubm93LnRpbWVab25lLCAnbmFtZScsIHsKKyAgZW51bWVyYWJsZTogZmFsc2Us
CisgIHdyaXRhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGltZVpvbmUv
bmV3LW9iamVjdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9u
b3cvdGltZVpvbmUvbmV3LW9iamVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYTk4MjQyZDYwZmRiYjViNjli
YzkzNTkxOWNlY2QxZTBjMTE2ZWUzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy90aW1lWm9uZS9uZXctb2JqZWN0LmpzCkBAIC0w
LDAgKzEsMTMgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMCBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2Ug
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy10ZW1wb3JhbC5u
b3cudGltZXpvbmUKK2Rlc2NyaXB0aW9uOiBFYWNoIGludm9jYXRpb24gb2YgdGhlIGZ1bmN0aW9u
IHByb2R1Y2VzIGEgZGlzdGluY3Qgb2JqZWN0IHZhbHVlCitmZWF0dXJlczogW1RlbXBvcmFsXQor
LS0tKi8KKworY29uc3QgdHogPSBUZW1wb3JhbC5ub3cudGltZVpvbmU7Citjb25zdCB0ejEgPSB0
eigpOworY29uc3QgdHoyID0gdHooKTsKK2Fzc2VydC5ub3RTYW1lVmFsdWUodHoxLCB0ejIpOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy90
aW1lWm9uZS9ub3QtYS1jb25zdHJ1Y3Rvci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9UZW1wb3JhbC9ub3cvdGltZVpvbmUvbm90LWEtY29uc3RydWN0b3IuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNTc5YWExZGMxMmE3ZDEzYmMwMzg1NDVhMGU3OGUwZjJmZWJkZmQwNAotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGltZVpv
bmUvbm90LWEtY29uc3RydWN0b3IuanMKQEAgLTAsMCArMSwyMSBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtdGVtcG9yYWwubm93LnRpbWV6b25lCitkZXNj
cmlwdGlvbjogVGVtcG9yYWwubm93LnRpbWVab25lIGRvZXMgbm90IGltcGxlbWVudCBbW0NvbnN0
cnVjdF1dCitpbmZvOiB8CisgIEVDTUFTY3JpcHQgRnVuY3Rpb24gT2JqZWN0cworCisgIEJ1aWx0
LWluIGZ1bmN0aW9uIG9iamVjdHMgdGhhdCBhcmUgbm90IGlkZW50aWZpZWQgYXMgY29uc3RydWN0
b3JzIGRvIG5vdAorICBpbXBsZW1lbnQgdGhlIFtbQ29uc3RydWN0XV0gaW50ZXJuYWwgbWV0aG9k
IHVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkIGluCisgIHRoZSBkZXNjcmlwdGlvbiBvZiBhIHBh
cnRpY3VsYXIgZnVuY3Rpb24uCitpbmNsdWRlczogW2lzQ29uc3RydWN0b3IuanNdCitmZWF0dXJl
czogW1JlZmxlY3QuY29uc3RydWN0LCBUZW1wb3JhbF0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFs
dWUoaXNDb25zdHJ1Y3RvcihUZW1wb3JhbC5ub3cudGltZVpvbmUpLCBmYWxzZSwgJ2lzQ29uc3Ry
dWN0b3IoVGVtcG9yYWwubm93LnRpbWVab25lKSBtdXN0IHJldHVybiBmYWxzZScpOworCithc3Nl
cnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4geworICBuZXcgVGVtcG9yYWwubm93LnRpbWVab25l
KCk7Cit9LCAnYG5ldyBUZW1wb3JhbC5ub3cudGltZVpvbmUoKWAgdGhyb3dzIFR5cGVFcnJvcicp
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25v
dy90aW1lWm9uZS9wcm9wLWRlc2MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
VGVtcG9yYWwvbm93L3RpbWVab25lL3Byb3AtZGVzYy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNGI4N2M5YmZk
MjQ0YjAxNGJhOWUzNTU2MWRjMDhhZjVjYTdiZGJiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1RlbXBvcmFsL25vdy90aW1lWm9uZS9wcm9wLWRlc2Mu
anMKQEAgLTAsMCArMSwxOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0
IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitl
c2lkOiBzZWMtdGVtcG9yYWwubm93LnRpbWV6b25lCitkZXNjcmlwdGlvbjogVGhlICJ0aW1lWm9u
ZSIgcHJvcGVydHkgb2YgVGVtcG9yYWwubm93CitpbmZvOiB8CisgIFNlY3Rpb24gMTc6IEV2ZXJ5
IG90aGVyIGRhdGEgcHJvcGVydHkgZGVzY3JpYmVkIGluIGNsYXVzZXMgMTggdGhyb3VnaCAyNgor
ICBhbmQgaW4gQW5uZXggQi4yIGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbV3JpdGFibGVdXTogdHJ1
ZSwKKyAgW1tFbnVtZXJhYmxlXV06IGZhbHNlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0gdW5s
ZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQuCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQor
ZmVhdHVyZXM6IFtUZW1wb3JhbF0KKy0tLSovCisKK3ZlcmlmeVByb3BlcnR5KFRlbXBvcmFsLm5v
dywgJ3RpbWVab25lJywgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgd3JpdGFibGU6IHRydWUs
CisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVGVtcG9yYWwvbm93L3RpbWVab25lL3JldHVybi12YWx1ZS5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UZW1wb3JhbC9ub3cvdGltZVpvbmUvcmV0dXJu
LXZhbHVlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVlY2JlOWI1OWRiNjYzZjU4ZWM5MGEyNTkwZWM5ZTRiZTc5
M2Q5OGYKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
VGVtcG9yYWwvbm93L3RpbWVab25lL3JldHVybi12YWx1ZS5qcwpAQCAtMCwwICsxLDE1IEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy10ZW1wb3JhbC5ub3cu
dGltZXpvbmUKK2Rlc2NyaXB0aW9uOiBUZW1wb3JhbC5ub3cudGltZVpvbmUgcmV0dXJucyBhbiBp
bnN0YW5jZSBvZiB0aGUgVGltZVpvbmUgY29uc3RydWN0b3IKK2luZm86IHwKKyAgMS4gUmV0dXJu
ID8gU3lzdGVtVGltZVpvbmUoKS4KK2ZlYXR1cmVzOiBbVGVtcG9yYWxdCistLS0qLworCithc3Nl
cnQuc2FtZVZhbHVlKAorICBPYmplY3QuZ2V0UHJvdG90eXBlT2YoVGVtcG9yYWwubm93LnRpbWVa
b25lKCkpLAorICBUZW1wb3JhbC5UaW1lWm9uZS5wcm90b3R5cGUKKyk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvcmV0
dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9hdC9yZXR1cm4tYWJydXB0LWZyb20t
dGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE1MmIzZDU4YTUxYzY5ZDQ5YjNiNjM5
NjlkM2IzZmZhYjVlNmVjZDkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYXQvcmV0dXJuLWFicnVwdC1mcm9tLXRo
aXMtb3V0LW9mLWJvdW5kcy5qcwpAQCAtMCwwICsxLDU2IEBACisvLyBDb3B5cmlnaHQgKEMpIDIw
MjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5hdAorZGVzY3Jp
cHRpb246IFJldHVybiBhYnJ1cHQgd2hlbiAidGhpcyIgdmFsdWUgZmFpbHMgYnVmZmVyIGJvdW5k
YXJ5IGNoZWNrcworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlw
ZWRBcnJheSwgVHlwZWRBcnJheS5wcm90b3R5cGUuYXQsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0K
Ky0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlw
ZS5hdCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgVHlwZWRBcnJheS5wcm90b3R5cGUu
YXQnCispOworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90
eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJv
dG90eXBlLnJlc2l6ZScKKyk7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9
PiB7CisgIHZhciBCUEUgPSBUQS5CWVRFU19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFy
cmF5QnVmZmVyKEJQRSAqIDQsIHttYXhCeXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJh
eSA9IG5ldyBUQShhYiwgQlBFLCAyKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1
KTsKKyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgZ3JvdzoKKyAg
YXJyYXkuYXQoMCk7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgIH0gY2F0
Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5k
cyk6CisgIGFycmF5LmF0KDApOworCisgIHZhciBleHBlY3RlZEVycm9yOworICB0cnkgeworICAg
IGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOworICB9
IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMgcGVybWl0dGVkIHRvIGZhaWwgYW55ICJy
ZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAgLy8gZGlzY3JldGlvbi4gSWYgdGhhdCBv
Y2N1cnMsIHRoZSBhdCBvcGVyYXRpb24gc2hvdWxkIGNvbXBsZXRlCisgICAgLy8gc3VjY2Vzc2Z1
bGx5LgorICAgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7CisgIH0KKworICBhc3NlcnQu
dGhyb3dzKGV4cGVjdGVkRXJyb3IsICgpID0+IHsKKyAgICBhcnJheS5hdCgwKTsKKyAgICB0aHJv
dyBuZXcgVGVzdDI2MkVycm9yKCdhdCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgIH0pOwor
fSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvYnl0ZUxlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYnl0ZUxl
bmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDUwYjljYmU5
NWU3NDc2NWJiNDk4MTYyNTNhYTdhNGQzYTQ4MzI0OAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9ieXRlTGVuZ3Ro
L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItYXV0by5qcwpAQCAtMCwwICsxLDQ2IEBACisvLyBDb3B5
cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LSV0eXBlZGFycmF5JS5wcm90
b3R5cGUuYnl0ZW9mZnNldAorZGVzY3JpcHRpb246IHwKKyAgcmVzZXQgdG8gMCBpZiB0aGUgdW5k
ZXJseWluZyBBcnJheUJ1ZmZlciBpcyByZXNpemVkIGJleW9uZCB0aGUgYm91bmRhcnkgb2YKKyAg
dGhlIGR5bmFtaWNhbGx5LXNpemVkIFR5cGVkQXJyYXkgaW5zdGFuY2UKK2luY2x1ZGVzOiBbdGVz
dFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1
ZmZlcl0KKy0tLSovCisKKy8vIElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxsb3dl
ZCBieSB0aGUgc3BlY2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxsIGJl
IGlkZW50aWNhbCB0byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6
ZWAKKy8vIGhhcyBub3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRpb24g
cHJldmVudHMgdGhpcyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2ggaGF2
ZSBub3QgaW1wbGVtZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsICJmdW5jdGlvbiIpOworCit0ZXN0V2l0aFR5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BF
Ul9FTEVNRU5UOworICB2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVM
ZW5ndGg6IEJQRSAqIDV9KTsKKyAgdmFyIGFycmF5ID0gbmV3IFRBKGFiLCBCUEUpOworICB2YXIg
ZXhwZWN0ZWQgPSBCUEUgKiAzOworCisgIGFzc2VydC5zYW1lVmFsdWUoYXJyYXkuYnl0ZUxlbmd0
aCwgZXhwZWN0ZWQpOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDUpOworICAgIGV4
cGVjdGVkID0gQlBFICogNDsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVl
KGFycmF5LmJ5dGVMZW5ndGgsIGV4cGVjdGVkLCAiZm9sbG93aW5nIGdyb3ciKTsKKworICB0cnkg
eworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZCA9IEJQRSAqIDI7CisgIH0g
Y2F0Y2ggKF8pIHt9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJheS5ieXRlTGVuZ3RoLCBleHBl
Y3RlZCwgImZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpIik7CisKKyAgdHJ5IHsKKyAg
ICBhYi5yZXNpemUoQlBFKTsKKyAgICBleHBlY3RlZCA9IDA7CisgIH0gY2F0Y2ggKF8pIHt9CisK
KyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJheS5ieXRlTGVuZ3RoLCBleHBlY3RlZCwgImZvbGxvd2lu
ZyBzaHJpbmsgKG91dCBvZiBib3VuZHMpIik7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9ieXRlTGVuZ3RoL3Jlc2l6
YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheS9wcm90b3R5cGUvYnl0ZUxlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVy
LWZpeGVkLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI3NWI3YjU2MDZjNDljNzM4NWNiMTA4ZmU1OGZiY2M1N2Rh
YmI5MTYKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheS9wcm90b3R5cGUvYnl0ZUxlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWZp
eGVkLmpzCkBAIC0wLDAgKzEsNDYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1nZXQtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5ieXRlbGVuZ3RoCitkZXNjcmlw
dGlvbjogfAorICByZXNldCB0byAwIGlmIHRoZSB1bmRlcmx5aW5nIEFycmF5QnVmZmVyIGlzIHJl
c2l6ZWQgYmV5b25kIHRoZSBib3VuZGFyeSBvZgorICB0aGUgZml4ZWQtc2l6ZWQgVHlwZWRBcnJh
eSBpbnN0YW5jZQoraW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlw
ZWRBcnJheSwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworLy8gSWYgdGhlIGhvc3Qg
Y2hvb3NlcyB0byB0aHJvdyBhcyBhbGxvd2VkIGJ5IHRoZSBzcGVjaWZpY2F0aW9uLCB0aGUgb2Jz
ZXJ2ZWQKKy8vIGJlaGF2aW9yIHdpbGwgYmUgaWRlbnRpY2FsIHRvIHRoZSBjYXNlIHdoZXJlIGBB
cnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplYAorLy8gaGFzIG5vdCBiZWVuIGltcGxlbWVudGVk
LiBUaGUgZm9sbG93aW5nIGFzc2VydGlvbiBwcmV2ZW50cyB0aGlzIHRlc3QgZnJvbQorLy8gcGFz
c2luZyBpbiBydW50aW1lcyB3aGljaCBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0aGUgbWV0aG9kLgor
YXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwgImZ1
bmN0aW9uIik7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhmdW5jdGlvbihUQSkg
eworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJh
eUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJyYXkg
PSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJheS5ieXRlTGVu
Z3RoLCBCUEUgKiAyKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgfSBj
YXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVlKGFycmF5LmJ5dGVMZW5ndGgsIEJQRSAq
IDIsICJmb2xsb3dpbmcgZ3JvdyIpOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMp
OworICB9IGNhdGNoIChfKSB7fQorCisgIGFzc2VydC5zYW1lVmFsdWUoYXJyYXkuYnl0ZUxlbmd0
aCwgQlBFICogMiwgImZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpIik7CisKKyAgdmFy
IGV4cGVjdGVkOworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAyKTsKKyAgICBleHBlY3Rl
ZCA9IDA7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICBleHBlY3RlZCA9IEJQRSAqIDI7CisgIH0KKwor
ICBhc3NlcnQuc2FtZVZhbHVlKGFycmF5LmJ5dGVMZW5ndGgsIGV4cGVjdGVkLCAiZm9sbG93aW5n
IHNocmluayAob3V0IG9mIGJvdW5kcykiKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXph
YmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1h
dXRvLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjI2MTMyOGZiOTU5NTE3YTFiZDUyODMwNTA1ZjZjMTBmZDM3MDc5
OTAKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheS9wcm90b3R5cGUvYnl0ZU9mZnNldC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8u
anMKQEAgLTAsMCArMSw0NiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0
IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNp
ZDogc2VjLWdldC0ldHlwZWRhcnJheSUucHJvdG90eXBlLmJ5dGVvZmZzZXQKK2Rlc2NyaXB0aW9u
OiB8CisgIHJlc2V0IHRvIDAgaWYgdGhlIHVuZGVybHlpbmcgQXJyYXlCdWZmZXIgaXMgcmVzaXpl
ZCBiZXlvbmQgdGhlIGJvdW5kYXJ5IG9mCisgIHRoZSBkeW5hbWljYWxseS1zaXplZCBUeXBlZEFy
cmF5IGluc3RhbmNlCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtU
eXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCisvLyBJZiB0aGUgaG9z
dCBjaG9vc2VzIHRvIHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBv
YnNlcnZlZAorLy8gYmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUg
YEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50
ZWQuIFRoZSBmb2xsb3dpbmcgYXNzZXJ0aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBw
YXNzaW5nIGluIHJ1bnRpbWVzIHdoaWNoIGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2Qu
Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAi
ZnVuY3Rpb24iKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1bmN0aW9uKFRB
KSB7CisgIHZhciBCUEUgPSBUQS5CWVRFU19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFy
cmF5QnVmZmVyKEJQRSAqIDQsIHttYXhCeXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJh
eSA9IG5ldyBUQShhYiwgQlBFKTsKKworICBhc3NlcnQuc2FtZVZhbHVlKGFycmF5LmJ5dGVPZmZz
ZXQsIEJQRSk7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2gg
KF8pIHt9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJheS5ieXRlT2Zmc2V0LCBCUEUsICJmb2xs
b3dpbmcgZ3JvdyIpOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICB9IGNh
dGNoIChfKSB7fQorCisgIGFzc2VydC5zYW1lVmFsdWUoYXJyYXkuYnl0ZU9mZnNldCwgQlBFLCAi
Zm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcykiKTsKKworICB2YXIgZXhwZWN0ZWQ7Cisg
IHRyeSB7CisgICAgYWIucmVzaXplKEJQRSk7CisgICAgZXhwZWN0ZWQgPSAwOworICB9IGNhdGNo
IChfKSB7CisgICAgZXhwZWN0ZWQgPSBCUEU7CisgIH0KKworICBhc3NlcnQuc2FtZVZhbHVlKGFy
cmF5LmJ5dGVPZmZzZXQsIGV4cGVjdGVkLCAiZm9sbG93aW5nIHNocmluayAob3V0IG9mIGJvdW5k
cykiKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXkvcHJvdG90eXBlL2J5dGVPZmZzZXQvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhl
ZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlw
ZS9ieXRlT2Zmc2V0L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZTNmYTFiZDZiOTY3OGZmM2M5NTZiMjMwYzg1YzA1N2MyMDI0OGZlZgotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9i
eXRlT2Zmc2V0L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMKQEAgLTAsMCArMSw0NiBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC0ldHlwZWRh
cnJheSUucHJvdG90eXBlLmJ5dGVvZmZzZXQKK2Rlc2NyaXB0aW9uOiB8CisgIHJlc2V0IHRvIDAg
aWYgdGhlIHVuZGVybHlpbmcgQXJyYXlCdWZmZXIgaXMgcmVzaXplZCBiZXlvbmQgdGhlIGJvdW5k
YXJ5IG9mCisgIHRoZSBmaXhlZC1zaXplZCBUeXBlZEFycmF5IGluc3RhbmNlCitpbmNsdWRlczog
W3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJy
YXlidWZmZXJdCistLS0qLworCisvLyBJZiB0aGUgaG9zdCBjaG9vc2VzIHRvIHRocm93IGFzIGFs
bG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBvYnNlcnZlZAorLy8gYmVoYXZpb3Igd2ls
bCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUgYEFycmF5QnVmZmVyLnByb3RvdHlwZS5y
ZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuIFRoZSBmb2xsb3dpbmcgYXNzZXJ0
aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBwYXNzaW5nIGluIHJ1bnRpbWVzIHdoaWNo
IGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2QuCithc3NlcnQuc2FtZVZhbHVlKHR5cGVv
ZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAiZnVuY3Rpb24iKTsKKwordGVzdFdpdGhU
eXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1bmN0aW9uKFRBKSB7CisgIHZhciBCUEUgPSBUQS5CWVRF
U19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKEJQRSAqIDQsIHttYXhC
eXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9IG5ldyBUQShhYiwgQlBFLCAyKTsK
KworICBhc3NlcnQuc2FtZVZhbHVlKGFycmF5LmJ5dGVPZmZzZXQsIEJQRSk7CisKKyAgdHJ5IHsK
KyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgYXNzZXJ0LnNh
bWVWYWx1ZShhcnJheS5ieXRlT2Zmc2V0LCBCUEUsICJmb2xsb3dpbmcgZ3JvdyIpOworCisgIHRy
eSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7fQorCisgIGFzc2Vy
dC5zYW1lVmFsdWUoYXJyYXkuYnl0ZU9mZnNldCwgQlBFLCAiZm9sbG93aW5nIHNocmluayAod2l0
aGluIGJvdW5kcykiKTsKKworICB2YXIgZXhwZWN0ZWQ7CisgIHRyeSB7CisgICAgYWIucmVzaXpl
KEJQRSAqIDIpOworICAgIGV4cGVjdGVkID0gMDsKKyAgfSBjYXRjaCAoXykgeworICAgIGV4cGVj
dGVkID0gQlBFOworICB9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJheS5ieXRlT2Zmc2V0LCBl
eHBlY3RlZCwgImZvbGxvd2luZyBzaHJpbmsgKG91dCBvZiBib3VuZHMpIik7Cit9KTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlw
ZS9jb3B5V2l0aGluL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvY29weVdp
dGhpbi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjFlNDUyMDAxZTg1MDg2MzkxZjJlN2VhNDNkOWMyNWVkYjlhMWE4NTYKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUv
Y29weVdpdGhpbi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0w
LDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3Jz
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBC
U0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0l
dHlwZWRhcnJheSUucHJvdG90eXBlLmNvcHl3aXRoaW4KK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJy
dXB0IHdoZW4gInRoaXMiIHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1
ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJs
ZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBl
ZEFycmF5LnByb3RvdHlwZS5jb3B5V2l0aGluLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50
cyBUeXBlZEFycmF5LnByb3RvdHlwZS5jb3B5V2l0aGluJworKTsKKworYXNzZXJ0LnNhbWVWYWx1
ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbics
CisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0
V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNf
UEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0
ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisK
KyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAg
Ly8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6CisgIGFycmF5LmNvcHlXaXRoaW4obmV3IFRBKCks
IDApOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7
fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpOgorICBh
cnJheS5jb3B5V2l0aGluKG5ldyBUQSgpLCAwKTsKKworICB2YXIgZXhwZWN0ZWRFcnJvcjsKKyAg
dHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAgZXhwZWN0ZWRFcnJvciA9IFR5cGVF
cnJvcjsKKyAgfSBjYXRjaCAoXykgeworICAgIC8vIFRoZSBob3N0IGlzIHBlcm1pdHRlZCB0byBm
YWlsIGFueSAicmVzaXplIiBvcGVyYXRpb24gYXQgaXRzIG93bgorICAgIC8vIGRpc2NyZXRpb24u
IElmIHRoYXQgb2NjdXJzLCB0aGUgY29weVdpdGhpbiBvcGVyYXRpb24gc2hvdWxkIGNvbXBsZXRl
CisgICAgLy8gc3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7
CisgIH0KKworICBhc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgpID0+IHsKKyAgICBhcnJh
eS5jb3B5V2l0aGluKG5ldyBUQSgpLCAwKTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdj
b3B5V2l0aGluIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9l
bnRyaWVzL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZW50cmllcy9yZXR1
cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4ZGNjZjJk
YzFlOGRmNTY3NWM1NGE4YzI1MTk2NDY3OTM0YjAyZDcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZW50cmllcy9y
ZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAK
Ky8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBm
b3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUu
cHJvdG90eXBlLmVudHJpZXMKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJydXB0IHdoZW4gInRoaXMi
IHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1ZGVzOiBbdGVzdFR5cGVk
QXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0K
Ky0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlw
ZS5lbnRyaWVzLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBUeXBlZEFycmF5LnByb3Rv
dHlwZS5lbnRyaWVzJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVm
ZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIEFycmF5
QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBh
YiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOwor
ICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNp
emUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5n
IGdyb3c6CisgIGFycmF5LmVudHJpZXMoKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUg
KiAzKTsKKyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgc2hyaW5r
ICh3aXRoaW4gYm91bmRzKToKKyAgYXJyYXkuZW50cmllcygpOworCisgIHZhciBleHBlY3RlZEVy
cm9yOworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZEVycm9y
ID0gVHlwZUVycm9yOworICB9IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMgcGVybWl0
dGVkIHRvIGZhaWwgYW55ICJyZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAgLy8gZGlz
Y3JldGlvbi4gSWYgdGhhdCBvY2N1cnMsIHRoZSBlbnRyaWVzIG9wZXJhdGlvbiBzaG91bGQgY29t
cGxldGUKKyAgICAvLyBzdWNjZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJF
cnJvcjsKKyAgfQorCisgIGFzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAg
IGFycmF5LmVudHJpZXMoKTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdlbnRyaWVzIGNv
bXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9ldmVyeS9yZXR1cm4t
YWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2V2ZXJ5L3JldHVybi1hYnJ1cHQtZnJvbS10
aGlzLW91dC1vZi1ib3VuZHMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2ExYzJhZDdmZTk2ZWMyY2FkMmJjNTlh
YzRlZTk0ZGEwZDY3YTBlNQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9ldmVyeS9yZXR1cm4tYWJydXB0LWZyb20t
dGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLmV2ZXJ5Citk
ZXNjcmlwdGlvbjogUmV0dXJuIGFicnVwdCB3aGVuICJ0aGlzIiB2YWx1ZSBmYWlscyBidWZmZXIg
Ym91bmRhcnkgY2hlY2tzCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6
IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQuc2Ft
ZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuZXZlcnksCisgICdmdW5jdGlv
bicsCisgICdpbXBsZW1lbnRzIFR5cGVkQXJyYXkucHJvdG90eXBlLmV2ZXJ5JworKTsKKworYXNz
ZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisg
ICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUn
CispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBF
ID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUg
KiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIs
IEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2gg
KF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6CisgIGFycmF5LmV2ZXJ5KCgp
ID0+IHt9KTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgfSBjYXRjaCAo
Xykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKToK
KyAgYXJyYXkuZXZlcnkoKCkgPT4ge30pOworCisgIHZhciBleHBlY3RlZEVycm9yOworICB0cnkg
eworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9y
OworICB9IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMgcGVybWl0dGVkIHRvIGZhaWwg
YW55ICJyZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAgLy8gZGlzY3JldGlvbi4gSWYg
dGhhdCBvY2N1cnMsIHRoZSBldmVyeSBvcGVyYXRpb24gc2hvdWxkIGNvbXBsZXRlCisgICAgLy8g
c3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7CisgIH0KKwor
ICBhc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgpID0+IHsKKyAgICBhcnJheS5ldmVyeSgo
KSA9PiB7fSk7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcignZXZlcnkgY29tcGxldGVkIHN1
Y2Nlc3NmdWxseScpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbGwvcmV0dXJuLWFicnVwdC1mcm9t
LXRoaXMtb3V0LW9mLWJvdW5kcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9maWxsL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1i
b3VuZHMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDkyNzgzYTJjNGJhZWMxZTAxNDQ4NWM3NjE5NzkzNWE4MTNk
NjQ3MgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9maWxsL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1i
b3VuZHMuanMKQEAgLTAsMCArMSw1NiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUuZmlsbAorZGVzY3JpcHRpb246IFJl
dHVybiBhYnJ1cHQgd2hlbiAidGhpcyIgdmFsdWUgZmFpbHMgYnVmZmVyIGJvdW5kYXJ5IGNoZWNr
cworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwg
cmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlw
ZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmZpbGwsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1l
bnRzIFR5cGVkQXJyYXkucHJvdG90eXBlLmZpbGwnCispOworCithc3NlcnQuc2FtZVZhbHVlKAor
ICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAg
J2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3Rlc3RXaXRo
VHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9PiB7CisgIHZhciBCUEUgPSBUQS5CWVRFU19QRVJf
RUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKEJQRSAqIDQsIHttYXhCeXRlTGVu
Z3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9IG5ldyBUQShhYiwgQlBFLCAyKTsKKworICB0
cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgfSBjYXRjaCAoXykge30KKworICAvLyBu
byBlcnJvciBmb2xsb3dpbmcgZ3JvdzoKKyAgYXJyYXkuZmlsbCgwKTsKKworICB0cnkgeworICAg
IGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBm
b2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKToKKyAgYXJyYXkuZmlsbCgwKTsKKworICB2
YXIgZXhwZWN0ZWRFcnJvcjsKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAg
ZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKKyAgfSBjYXRjaCAoXykgeworICAgIC8vIFRoZSBo
b3N0IGlzIHBlcm1pdHRlZCB0byBmYWlsIGFueSAicmVzaXplIiBvcGVyYXRpb24gYXQgaXRzIG93
bgorICAgIC8vIGRpc2NyZXRpb24uIElmIHRoYXQgb2NjdXJzLCB0aGUgZmlsbCBvcGVyYXRpb24g
c2hvdWxkIGNvbXBsZXRlCisgICAgLy8gc3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3Ig
PSBUZXN0MjYyRXJyb3I7CisgIH0KKworICBhc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgp
ID0+IHsKKyAgICBhcnJheS5maWxsKDApOworICAgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ2Zp
bGwgY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbHRlci9y
ZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbHRlci9yZXR1cm4tYWJydXB0
LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEwYmZmMjM0ODYwZDVlZGFk
YjFmZTY5NGI4ZTViZWRkZGRmMzNiM2EKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZmlsdGVyL3JldHVybi1hYnJ1
cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKQEAgLTAsMCArMSw1NiBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUu
ZmlsdGVyCitkZXNjcmlwdGlvbjogUmV0dXJuIGFicnVwdCB3aGVuICJ0aGlzIiB2YWx1ZSBmYWls
cyBidWZmZXIgYm91bmRhcnkgY2hlY2tzCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQor
ZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCith
c3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUuZmlsdGVyLAor
ICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS5maWx0ZXIn
CispOworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBl
LnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90
eXBlLnJlc2l6ZScKKyk7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9PiB7
CisgIHZhciBCUEUgPSBUQS5CWVRFU19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5
QnVmZmVyKEJQRSAqIDQsIHttYXhCeXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9
IG5ldyBUQShhYiwgQlBFLCAyKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsK
KyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgZ3JvdzoKKyAgYXJy
YXkuZmlsdGVyKCgpID0+IHt9KTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsK
KyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgc2hyaW5rICh3aXRo
aW4gYm91bmRzKToKKyAgYXJyYXkuZmlsdGVyKCgpID0+IHt9KTsKKworICB2YXIgZXhwZWN0ZWRF
cnJvcjsKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAgZXhwZWN0ZWRFcnJv
ciA9IFR5cGVFcnJvcjsKKyAgfSBjYXRjaCAoXykgeworICAgIC8vIFRoZSBob3N0IGlzIHBlcm1p
dHRlZCB0byBmYWlsIGFueSAicmVzaXplIiBvcGVyYXRpb24gYXQgaXRzIG93bgorICAgIC8vIGRp
c2NyZXRpb24uIElmIHRoYXQgb2NjdXJzLCB0aGUgZmlsdGVyIG9wZXJhdGlvbiBzaG91bGQgY29t
cGxldGUKKyAgICAvLyBzdWNjZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJF
cnJvcjsKKyAgfQorCisgIGFzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAg
IGFycmF5LmZpbHRlcigoKSA9PiB7fSk7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcignZmls
dGVyIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9maW5kL3Jl
dHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZmluZC9yZXR1cm4tYWJydXB0LWZy
b20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNmZmM2ZjI4OThlYmVmZjQ5NWIz
OTAzMTUxYTQ4YzQ5ZWI2ODZiZGQKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvZmluZC9yZXR1cm4tYWJydXB0LWZy
b20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAo
QykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLmZpbmQK
K2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJydXB0IHdoZW4gInRoaXMiIHZhbHVlIGZhaWxzIGJ1ZmZl
ciBib3VuZGFyeSBjaGVja3MKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJl
czogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5z
YW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5maW5kLAorICAnZnVuY3Rp
b24nLAorICAnaW1wbGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS5maW5kJworKTsKKworYXNz
ZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisg
ICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUn
CispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBF
ID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUg
KiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIs
IEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2gg
KF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6CisgIGFycmF5LmZpbmQoKCkg
PT4ge30pOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChf
KSB7fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpOgor
ICBhcnJheS5maW5kKCgpID0+IHt9KTsKKworICB2YXIgZXhwZWN0ZWRFcnJvcjsKKyAgdHJ5IHsK
KyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsK
KyAgfSBjYXRjaCAoXykgeworICAgIC8vIFRoZSBob3N0IGlzIHBlcm1pdHRlZCB0byBmYWlsIGFu
eSAicmVzaXplIiBvcGVyYXRpb24gYXQgaXRzIG93bgorICAgIC8vIGRpc2NyZXRpb24uIElmIHRo
YXQgb2NjdXJzLCB0aGUgZmluZCBvcGVyYXRpb24gc2hvdWxkIGNvbXBsZXRlCisgICAgLy8gc3Vj
Y2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7CisgIH0KKworICBh
c3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgpID0+IHsKKyAgICBhcnJheS5maW5kKCgpID0+
IHt9KTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdmaW5kIGNvbXBsZXRlZCBzdWNjZXNz
ZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9maW5kSW5kZXgvcmV0dXJuLWFicnVwdC1mcm9t
LXRoaXMtb3V0LW9mLWJvdW5kcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9maW5kSW5kZXgvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0
LW9mLWJvdW5kcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNjk2YjNhNzIwNzZkYWYzM2U4MmY0N2IwMzBkZWY1
MDBmYjY4N2UxCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZpbmRJbmRleC9yZXR1cm4tYWJydXB0LWZyb20tdGhp
cy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAy
MSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBj
b2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLmZpbmRpbmRleAor
ZGVzY3JpcHRpb246IFJldHVybiBhYnJ1cHQgd2hlbiAidGhpcyIgdmFsdWUgZmFpbHMgYnVmZmVy
IGJvdW5kYXJ5IGNoZWNrcworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVz
OiBbVHlwZWRBcnJheSwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNh
bWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmZpbmRJbmRleCwKKyAgJ2Z1
bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgVHlwZWRBcnJheS5wcm90b3R5cGUuZmluZEluZGV4Jwor
KTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5y
ZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlw
ZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4gewor
ICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1
ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJyYXkgPSBu
ZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7Cisg
IH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6CisgIGFycmF5
LmZpbmRJbmRleCgoKSA9PiB7fSk7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7
CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIHNocmluayAod2l0
aGluIGJvdW5kcyk6CisgIGFycmF5LmZpbmRJbmRleCgoKSA9PiB7fSk7CisKKyAgdmFyIGV4cGVj
dGVkRXJyb3I7CisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICAgIGV4cGVjdGVk
RXJyb3IgPSBUeXBlRXJyb3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICAvLyBUaGUgaG9zdCBpcyBw
ZXJtaXR0ZWQgdG8gZmFpbCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9uIGF0IGl0cyBvd24KKyAgICAv
LyBkaXNjcmV0aW9uLiBJZiB0aGF0IG9jY3VycywgdGhlIGZpbmRJbmRleCBvcGVyYXRpb24gc2hv
dWxkIGNvbXBsZXRlCisgICAgLy8gc3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3IgPSBU
ZXN0MjYyRXJyb3I7CisgIH0KKworICBhc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgpID0+
IHsKKyAgICBhcnJheS5maW5kSW5kZXgoKCkgPT4ge30pOworICAgIHRocm93IG5ldyBUZXN0MjYy
RXJyb3IoJ2ZpbmRJbmRleCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgIH0pOworfSk7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90
b3R5cGUvZm9yRWFjaC9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2ZvckVh
Y2gvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
Zjc2YTlhNzY3NWVmYTIxOGI0ODRmZmJmMWJmM2I3MzVmMTRlN2UwCi0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2Zv
ckVhY2gvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpAQCAtMCwwICsx
LDU2IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtJXR5cGVk
YXJyYXklLnByb3RvdHlwZS5mb3JlYWNoCitkZXNjcmlwdGlvbjogUmV0dXJuIGFicnVwdCB3aGVu
ICJ0aGlzIiB2YWx1ZSBmYWlscyBidWZmZXIgYm91bmRhcnkgY2hlY2tzCitpbmNsdWRlczogW3Rl
c3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJyYXli
dWZmZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5w
cm90b3R5cGUuZm9yRWFjaCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgVHlwZWRBcnJh
eS5wcm90b3R5cGUuZm9yRWFjaCcKKyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBB
cnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50
cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwordGVzdFdpdGhUeXBlZEFycmF5
Q29uc3RydWN0b3JzKFRBID0+IHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BFUl9FTEVNRU5UOwor
ICB2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVMZW5ndGg6IEJQRSAq
IDV9KTsKKyAgdmFyIGFycmF5ID0gbmV3IFRBKGFiLCBCUEUsIDIpOworCisgIHRyeSB7CisgICAg
YWIucmVzaXplKEJQRSAqIDUpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9yIGZv
bGxvd2luZyBncm93OgorICBhcnJheS5mb3JFYWNoKCgpID0+IHt9KTsKKworICB0cnkgeworICAg
IGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBm
b2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKToKKyAgYXJyYXkuZm9yRWFjaCgoKSA9PiB7
fSk7CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAq
IDMpOworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAg
ICAvLyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFpbCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9u
IGF0IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJZiB0aGF0IG9jY3VycywgdGhlIGZvckVh
Y2ggb3BlcmF0aW9uIHNob3VsZCBjb21wbGV0ZQorICAgIC8vIHN1Y2Nlc3NmdWxseS4KKyAgICBl
eHBlY3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworICB9CisKKyAgYXNzZXJ0LnRocm93cyhleHBl
Y3RlZEVycm9yLCAoKSA9PiB7CisgICAgYXJyYXkuZm9yRWFjaCgoKSA9PiB7fSk7CisgICAgdGhy
b3cgbmV3IFRlc3QyNjJFcnJvcignZm9yRWFjaCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7Cisg
IH0pOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheS9wcm90b3R5cGUvaW5jbHVkZXMvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9m
LWJvdW5kcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3By
b3RvdHlwZS9pbmNsdWRlcy9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjdmODkwMDYwZjZiMDE1ZGE1MjgzM2I0NTI4MTk3MjA4OWVmYTczZTIKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvaW5jbHVkZXMvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5k
cy5qcwpAQCAtMCwwICsxLDU2IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2pl
Y3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitl
c2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5pbmNsdWRlcworZGVzY3JpcHRpb246IFJl
dHVybiBhYnJ1cHQgd2hlbiAidGhpcyIgdmFsdWUgZmFpbHMgYnVmZmVyIGJvdW5kYXJ5IGNoZWNr
cworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwg
cmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlw
ZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLmluY2x1ZGVzLAorICAnZnVuY3Rpb24nLAorICAnaW1w
bGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS5pbmNsdWRlcycKKyk7CisKK2Fzc2VydC5zYW1l
VmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rp
b24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwor
dGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRBID0+IHsKKyAgdmFyIEJQRSA9IFRBLkJZ
VEVTX1BFUl9FTEVNRU5UOworICB2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoQlBFICogNCwge21h
eEJ5dGVMZW5ndGg6IEJQRSAqIDV9KTsKKyAgdmFyIGFycmF5ID0gbmV3IFRBKGFiLCBCUEUsIDIp
OworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDUpOworICB9IGNhdGNoIChfKSB7fQor
CisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBncm93OgorICBhcnJheS5pbmNsdWRlcygwKTsKKwor
ICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgfSBjYXRjaCAoXykge30KKworICAv
LyBubyBlcnJvciBmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKToKKyAgYXJyYXkuaW5j
bHVkZXMoMCk7CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRyeSB7CisgICAgYWIucmVzaXpl
KEJQRSAqIDMpOworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7CisgIH0gY2F0Y2ggKF8p
IHsKKyAgICAvLyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFpbCBhbnkgInJlc2l6ZSIgb3Bl
cmF0aW9uIGF0IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJZiB0aGF0IG9jY3VycywgdGhl
IGluY2x1ZGVzIG9wZXJhdGlvbiBzaG91bGQgY29tcGxldGUKKyAgICAvLyBzdWNjZXNzZnVsbHku
CisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKKyAgfQorCisgIGFzc2VydC50aHJv
d3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAgIGFycmF5LmluY2x1ZGVzKDApOworICAgIHRo
cm93IG5ldyBUZXN0MjYyRXJyb3IoJ2luY2x1ZGVzIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsK
KyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS9pbmRleE9mL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1v
Zi1ib3VuZHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9w
cm90b3R5cGUvaW5kZXhPZi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmU4MWIwNGEwM2YxMzJiY2UyZGMyNWYzYmQ3MzRhOGIxMjU0ZjY5YmMKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvaW5kZXhPZi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRz
LmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVj
dCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Vz
aWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLmluZGV4b2YKK2Rlc2NyaXB0aW9uOiBSZXR1
cm4gYWJydXB0IHdoZW4gInRoaXMiIHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MK
K2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJl
c2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVv
ZiBUeXBlZEFycmF5LnByb3RvdHlwZS5pbmRleE9mLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVt
ZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS5pbmRleE9mJworKTsKKworYXNzZXJ0LnNhbWVWYWx1
ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbics
CisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0
V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNf
UEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0
ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisK
KyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAg
Ly8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6CisgIGFycmF5LmluZGV4T2YoMCk7CisKKyAgdHJ5
IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8g
ZXJyb3IgZm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcyk6CisgIGFycmF5LmluZGV4T2Yo
MCk7CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAq
IDMpOworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAg
ICAvLyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFpbCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9u
IGF0IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJZiB0aGF0IG9jY3VycywgdGhlIGluZGV4
T2Ygb3BlcmF0aW9uIHNob3VsZCBjb21wbGV0ZQorICAgIC8vIHN1Y2Nlc3NmdWxseS4KKyAgICBl
eHBlY3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworICB9CisKKyAgYXNzZXJ0LnRocm93cyhleHBl
Y3RlZEVycm9yLCAoKSA9PiB7CisgICAgYXJyYXkuaW5kZXhPZigwKTsKKyAgICB0aHJvdyBuZXcg
VGVzdDI2MkVycm9yKCdpbmRleE9mIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
L3Byb3RvdHlwZS9qb2luL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvam9p
bi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI0
NmNkOGNkNjYzOWZhMzc1NTMwZjk1ODhjYTZlNjE5OTM5MmVkM2UKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvam9p
bi9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJh
eSUucHJvdG90eXBlLmpvaW4KK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJydXB0IHdoZW4gInRoaXMi
IHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1ZGVzOiBbdGVzdFR5cGVk
QXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0K
Ky0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlw
ZS5qb2luLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlw
ZS5qb2luJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnBy
b3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVy
LnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMo
VEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5l
dyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIg
YXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBF
ICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6
CisgIGFycmF5LmpvaW4oMCk7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7Cisg
IH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIHNocmluayAod2l0aGlu
IGJvdW5kcyk6CisgIGFycmF5LmpvaW4oMCk7CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRy
eSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJy
b3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICAvLyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFp
bCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9uIGF0IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJ
ZiB0aGF0IG9jY3VycywgdGhlIGpvaW4gb3BlcmF0aW9uIHNob3VsZCBjb21wbGV0ZQorICAgIC8v
IHN1Y2Nlc3NmdWxseS4KKyAgICBleHBlY3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworICB9CisK
KyAgYXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCAoKSA9PiB7CisgICAgYXJyYXkuam9pbigw
KTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdqb2luIGNvbXBsZXRlZCBzdWNjZXNzZnVs
bHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9rZXlzL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91
dC1vZi1ib3VuZHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUva2V5cy9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjc4Yzc3MjcyMDUxNDlkYjEyOGMzNGY5OWE3ZWUzMTViYzc5NjVmMDkKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUva2V5cy9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpz
CkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBh
dXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5
IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6
IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLmtleXMKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJy
dXB0IHdoZW4gInRoaXMiIHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1
ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJs
ZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBl
ZEFycmF5LnByb3RvdHlwZS5rZXlzLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBUeXBl
ZEFycmF5LnByb3RvdHlwZS5rZXlzJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9m
IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1l
bnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7
CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBF
ICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAg
ICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3Ig
Zm9sbG93aW5nIGdyb3c6CisgIGFycmF5LmtleXMoKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6
ZShCUEUgKiAzKTsKKyAgfSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcg
c2hyaW5rICh3aXRoaW4gYm91bmRzKToKKyAgYXJyYXkua2V5cygpOworCisgIHZhciBleHBlY3Rl
ZEVycm9yOworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZEVy
cm9yID0gVHlwZUVycm9yOworICB9IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMgcGVy
bWl0dGVkIHRvIGZhaWwgYW55ICJyZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAgLy8g
ZGlzY3JldGlvbi4gSWYgdGhhdCBvY2N1cnMsIHRoZSBrZXlzIG9wZXJhdGlvbiBzaG91bGQgY29t
cGxldGUKKyAgICAvLyBzdWNjZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJF
cnJvcjsKKyAgfQorCisgIGFzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAg
IGFycmF5LmtleXMoKTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdrZXlzIGNvbXBsZXRl
ZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9sYXN0SW5kZXhPZi9yZXR1cm4t
YWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
YnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2xhc3RJbmRleE9mL3JldHVybi1hYnJ1cHQt
ZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODQ2ZWVjZWI3ZGVkZjUzYmFi
NWRhNmM3ODY5NWU5YjBjZTQ0MmRjMAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9sYXN0SW5kZXhPZi9yZXR1cm4t
YWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90
eXBlLmxhc3RpbmRleG9mCitkZXNjcmlwdGlvbjogUmV0dXJuIGFicnVwdCB3aGVuICJ0aGlzIiB2
YWx1ZSBmYWlscyBidWZmZXIgYm91bmRhcnkgY2hlY2tzCitpbmNsdWRlczogW3Rlc3RUeXBlZEFy
cmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCist
LS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUu
bGFzdEluZGV4T2YsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIFR5cGVkQXJyYXkucHJv
dG90eXBlLmxhc3RJbmRleE9mJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRz
IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7Cisg
IHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICog
NX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBh
Yi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9s
bG93aW5nIGdyb3c6CisgIGFycmF5Lmxhc3RJbmRleE9mKDApOworCisgIHRyeSB7CisgICAgYWIu
cmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9yIGZvbGxv
d2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpOgorICBhcnJheS5sYXN0SW5kZXhPZigwKTsKKwor
ICB2YXIgZXhwZWN0ZWRFcnJvcjsKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7Cisg
ICAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKKyAgfSBjYXRjaCAoXykgeworICAgIC8vIFRo
ZSBob3N0IGlzIHBlcm1pdHRlZCB0byBmYWlsIGFueSAicmVzaXplIiBvcGVyYXRpb24gYXQgaXRz
IG93bgorICAgIC8vIGRpc2NyZXRpb24uIElmIHRoYXQgb2NjdXJzLCB0aGUgbGFzdEluZGV4T2Yg
b3BlcmF0aW9uIHNob3VsZCBjb21wbGV0ZQorICAgIC8vIHN1Y2Nlc3NmdWxseS4KKyAgICBleHBl
Y3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworICB9CisKKyAgYXNzZXJ0LnRocm93cyhleHBlY3Rl
ZEVycm9yLCAoKSA9PiB7CisgICAgYXJyYXkubGFzdEluZGV4T2YoMCk7CisgICAgdGhyb3cgbmV3
IFRlc3QyNjJFcnJvcignbGFzdEluZGV4T2YgY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworICB9
KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXkvcHJvdG90eXBlL2xlbmd0aC9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvbGVuZ3Ro
L3Jlc2l6YWJsZS1hcnJheS1idWZmZXItYXV0by5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43N2UxMjYzYTVjMDNh
N2VjZTdkYjM3YzU3NjVmMDIzYmNmZDJhODA2Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL2xlbmd0aC9yZXNpemFi
bGUtYXJyYXktYnVmZmVyLWF1dG8uanMKQEAgLTAsMCArMSw0NiBAQAorLy8gQ29weXJpZ2h0IChD
KSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWdldC0ldHlwZWRhcnJheSUucHJvdG90eXBlLmxl
bmd0aAorZGVzY3JpcHRpb246IHwKKyAgcmVzZXQgdG8gMCBpZiB0aGUgdW5kZXJseWluZyBBcnJh
eUJ1ZmZlciBpcyByZXNpemVkIGJleW9uZCB0aGUgYm91bmRhcnkgb2YKKyAgdGhlIGR5bmFtaWNh
bGx5LXNpemVkIFR5cGVkQXJyYXkgaW5zdGFuY2UKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXku
anNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSov
CisKKy8vIElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxsb3dlZCBieSB0aGUgc3Bl
Y2lmaWNhdGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxsIGJlIGlkZW50aWNhbCB0
byB0aGUgY2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhhcyBu
b3QgYmVlbiBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRpb24gcHJldmVudHMgdGhp
cyB0ZXN0IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2ggaGF2ZSBub3QgaW1wbGVt
ZW50ZWQgdGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5QnVmZmVyLnBy
b3RvdHlwZS5yZXNpemUsICJmdW5jdGlvbiIpOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BFUl9FTEVNRU5UOwor
ICB2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVMZW5ndGg6IEJQRSAq
IDV9KTsKKyAgdmFyIGFycmF5ID0gbmV3IFRBKGFiLCBCUEUpOworICB2YXIgZXhwZWN0ZWQgPSAz
OworCisgIGFzc2VydC5zYW1lVmFsdWUoYXJyYXkubGVuZ3RoLCBleHBlY3RlZCwgImluaXRpYWwg
dmFsdWUiKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgICBleHBlY3Rl
ZCA9IDQ7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJheS5sZW5n
dGgsIGV4cGVjdGVkLCAiZm9sbG93aW5nIGdyb3ciKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6
ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZCA9IDI7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgYXNz
ZXJ0LnNhbWVWYWx1ZShhcnJheS5sZW5ndGgsIGV4cGVjdGVkLCAiZm9sbG93aW5nIHNocmluayAo
d2l0aGluIGJvdW5kcykiKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUpOworICAgIGV4
cGVjdGVkID0gMDsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVlKGFycmF5
Lmxlbmd0aCwgZXhwZWN0ZWQsICJmb2xsb3dpbmcgc2hyaW5rIChvdXQgb2YgYm91bmRzKSIpOwor
fSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJh
eS9wcm90b3R5cGUvbGVuZ3RoL3Jlc2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvbGVuZ3RoL3Jl
c2l6YWJsZS1hcnJheS1idWZmZXItZml4ZWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGMwNzE0MjIzZmRmNjBi
ZWE4MjRlNmQ2OWFjMjViZTg3ZjU2ZTBkYQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9sZW5ndGgvcmVzaXphYmxl
LWFycmF5LWJ1ZmZlci1maXhlZC5qcwpAQCAtMCwwICsxLDQ2IEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtZ2V0LSV0eXBlZGFycmF5JS5wcm90b3R5cGUubGVu
Z3RoCitkZXNjcmlwdGlvbjogfAorICByZXNldCB0byAwIGlmIHRoZSB1bmRlcmx5aW5nIEFycmF5
QnVmZmVyIGlzIHJlc2l6ZWQgYmV5b25kIHRoZSBib3VuZGFyeSBvZgorICB0aGUgZml4ZWQtc2l6
ZWQgVHlwZWRBcnJheSBpbnN0YW5jZQoraW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2Zl
YXR1cmVzOiBbVHlwZWRBcnJheSwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworLy8g
SWYgdGhlIGhvc3QgY2hvb3NlcyB0byB0aHJvdyBhcyBhbGxvd2VkIGJ5IHRoZSBzcGVjaWZpY2F0
aW9uLCB0aGUgb2JzZXJ2ZWQKKy8vIGJlaGF2aW9yIHdpbGwgYmUgaWRlbnRpY2FsIHRvIHRoZSBj
YXNlIHdoZXJlIGBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplYAorLy8gaGFzIG5vdCBiZWVu
IGltcGxlbWVudGVkLiBUaGUgZm9sbG93aW5nIGFzc2VydGlvbiBwcmV2ZW50cyB0aGlzIHRlc3Qg
ZnJvbQorLy8gcGFzc2luZyBpbiBydW50aW1lcyB3aGljaCBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0
aGUgbWV0aG9kLgorYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBl
LnJlc2l6ZSwgImZ1bmN0aW9uIik7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhm
dW5jdGlvbihUQSkgeworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBh
YiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOwor
ICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShh
cnJheS5sZW5ndGgsIDIsICJpbml0aWFsIHZhbHVlIik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNp
emUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShhcnJh
eS5sZW5ndGgsIDIsICJmb2xsb3dpbmcgZ3JvdyIpOworCisgIHRyeSB7CisgICAgYWIucmVzaXpl
KEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7fQorCisgIGFzc2VydC5zYW1lVmFsdWUoYXJyYXku
bGVuZ3RoLCAyLCAiZm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcykiKTsKKworICB2YXIg
ZXhwZWN0ZWQ7CisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDIpOworICAgIGV4cGVjdGVk
ID0gMDsKKyAgfSBjYXRjaCAoXykgeworICAgIGV4cGVjdGVkID0gMjsKKyAgfQorCisgIGFzc2Vy
dC5zYW1lVmFsdWUoYXJyYXkubGVuZ3RoLCBleHBlY3RlZCwgImZvbGxvd2luZyBzaHJpbmsgKG91
dCBvZiBib3VuZHMpIik7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9tYXAvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMt
b3V0LW9mLWJvdW5kcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5L3Byb3RvdHlwZS9tYXAvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xODZkODU2OTdlNWFlMTIwMDM2YjAwNmMxNTA4MWYwZmMyN2FiOWU5Ci0t
LSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXkvcHJvdG90eXBlL21hcC9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpz
CkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBh
dXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5
IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6
IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLm1hcAorZGVzY3JpcHRpb246IFJldHVybiBhYnJ1
cHQgd2hlbiAidGhpcyIgdmFsdWUgZmFpbHMgYnVmZmVyIGJvdW5kYXJ5IGNoZWNrcworaW5jbHVk
ZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwgcmVzaXphYmxl
LWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVk
QXJyYXkucHJvdG90eXBlLm1hcCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgVHlwZWRB
cnJheS5wcm90b3R5cGUubWFwJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRz
IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7Cisg
IHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICog
NX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBh
Yi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9s
bG93aW5nIGdyb3c6CisgIGFycmF5Lm1hcCgoKSA9PiB7fSk7CisKKyAgdHJ5IHsKKyAgICBhYi5y
ZXNpemUoQlBFICogMyk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93
aW5nIHNocmluayAod2l0aGluIGJvdW5kcyk6CisgIGFycmF5Lm1hcCgoKSA9PiB7fSk7CisKKyAg
dmFyIGV4cGVjdGVkRXJyb3I7CisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICAg
IGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICAvLyBUaGUg
aG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFpbCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9uIGF0IGl0cyBv
d24KKyAgICAvLyBkaXNjcmV0aW9uLiBJZiB0aGF0IG9jY3VycywgdGhlIG1hcCBvcGVyYXRpb24g
c2hvdWxkIGNvbXBsZXRlCisgICAgLy8gc3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3Ig
PSBUZXN0MjYyRXJyb3I7CisgIH0KKworICBhc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgp
ID0+IHsKKyAgICBhcnJheS5tYXAoKCkgPT4ge30pOworICAgIHRocm93IG5ldyBUZXN0MjYyRXJy
b3IoJ21hcCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgIH0pOworfSk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVk
dWNlL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlL3JldHVybi1h
YnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzcxN2Y2MmVmYTMx
OWY0YjdiNmMwNjNhNTJiN2ZjNTQ0MzhlMzQ5YQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9yZWR1Y2UvcmV0dXJu
LWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpAQCAtMCwwICsxLDU2IEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3Rv
dHlwZS5yZWR1Y2UKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJydXB0IHdoZW4gInRoaXMiIHZhbHVl
IGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXku
anNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSov
CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5yZWR1
Y2UsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIFR5cGVkQXJyYXkucHJvdG90eXBlLnJl
ZHVjZScKKyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90
b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5w
cm90b3R5cGUucmVzaXplJworKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRB
ID0+IHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BFUl9FTEVNRU5UOworICB2YXIgYWIgPSBuZXcg
QXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVMZW5ndGg6IEJQRSAqIDV9KTsKKyAgdmFyIGFy
cmF5ID0gbmV3IFRBKGFiLCBCUEUsIDIpOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAq
IDUpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBncm93Ogor
ICBhcnJheS5yZWR1Y2UoKCkgPT4ge30pOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAq
IDMpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBzaHJpbmsg
KHdpdGhpbiBib3VuZHMpOgorICBhcnJheS5yZWR1Y2UoKCkgPT4ge30pOworCisgIHZhciBleHBl
Y3RlZEVycm9yOworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3Rl
ZEVycm9yID0gVHlwZUVycm9yOworICB9IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMg
cGVybWl0dGVkIHRvIGZhaWwgYW55ICJyZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAg
Ly8gZGlzY3JldGlvbi4gSWYgdGhhdCBvY2N1cnMsIHRoZSByZWR1Y2Ugb3BlcmF0aW9uIHNob3Vs
ZCBjb21wbGV0ZQorICAgIC8vIHN1Y2Nlc3NmdWxseS4KKyAgICBleHBlY3RlZEVycm9yID0gVGVz
dDI2MkVycm9yOworICB9CisKKyAgYXNzZXJ0LnRocm93cyhleHBlY3RlZEVycm9yLCAoKSA9PiB7
CisgICAgYXJyYXkucmVkdWNlKCgpID0+IHt9KTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9y
KCdyZWR1Y2UgY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3Jl
ZHVjZVJpZ2h0L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmVkdWNlUmln
aHQvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45
MjIwOTliNzk1ZDNiZDM2ZmFlM2Y4M2ZiZDc0MjNkNmIyOTU5NDc3Ci0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3Jl
ZHVjZVJpZ2h0L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMKQEAgLTAs
MCArMSw1NiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLSV0
eXBlZGFycmF5JS5wcm90b3R5cGUucmVkdWNlcmlnaHQKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJy
dXB0IHdoZW4gInRoaXMiIHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1
ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJs
ZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBl
ZEFycmF5LnByb3RvdHlwZS5yZWR1Y2VSaWdodCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVu
dHMgVHlwZWRBcnJheS5wcm90b3R5cGUucmVkdWNlUmlnaHQnCispOworCithc3NlcnQuc2FtZVZh
bHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9u
JywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3Rl
c3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9PiB7CisgIHZhciBCUEUgPSBUQS5CWVRF
U19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKEJQRSAqIDQsIHttYXhC
eXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9IG5ldyBUQShhYiwgQlBFLCAyKTsK
KworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgfSBjYXRjaCAoXykge30KKwor
ICAvLyBubyBlcnJvciBmb2xsb3dpbmcgZ3JvdzoKKyAgYXJyYXkucmVkdWNlUmlnaHQoKCkgPT4g
e30pOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7
fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpOgorICBh
cnJheS5yZWR1Y2VSaWdodCgoKSA9PiB7fSk7CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRy
eSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJy
b3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICAvLyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFp
bCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9uIGF0IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJ
ZiB0aGF0IG9jY3VycywgdGhlIHJlZHVjZVJpZ2h0IG9wZXJhdGlvbiBzaG91bGQgY29tcGxldGUK
KyAgICAvLyBzdWNjZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsK
KyAgfQorCisgIGFzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAgIGFycmF5
LnJlZHVjZVJpZ2h0KCgpID0+IHt9KTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdyZWR1
Y2VSaWdodCBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgIH0pOworfSk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvcmV2
ZXJzZS9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3JldmVyc2UvcmV0dXJu
LWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZTYyMjA1MzFi
ZTgxZTNhZTlmMGQ0Y2NjMzU3ODdmOTRiMTg1ZTZkCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3JldmVyc2UvcmV0
dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpAQCAtMCwwICsxLDU2IEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnBy
b3RvdHlwZS5yZXZlcnNlCitkZXNjcmlwdGlvbjogUmV0dXJuIGFicnVwdCB3aGVuICJ0aGlzIiB2
YWx1ZSBmYWlscyBidWZmZXIgYm91bmRhcnkgY2hlY2tzCitpbmNsdWRlczogW3Rlc3RUeXBlZEFy
cmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCist
LS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUu
cmV2ZXJzZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgVHlwZWRBcnJheS5wcm90b3R5
cGUucmV2ZXJzZScKKyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZl
ci5wcm90b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1
ZmZlci5wcm90b3R5cGUucmVzaXplJworKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0
b3JzKFRBID0+IHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BFUl9FTEVNRU5UOworICB2YXIgYWIg
PSBuZXcgQXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVMZW5ndGg6IEJQRSAqIDV9KTsKKyAg
dmFyIGFycmF5ID0gbmV3IFRBKGFiLCBCUEUsIDIpOworCisgIHRyeSB7CisgICAgYWIucmVzaXpl
KEJQRSAqIDUpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBn
cm93OgorICBhcnJheS5yZXZlcnNlKCk7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICog
Myk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIHNocmluayAo
d2l0aGluIGJvdW5kcyk6CisgIGFycmF5LnJldmVyc2UoKTsKKworICB2YXIgZXhwZWN0ZWRFcnJv
cjsKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAgZXhwZWN0ZWRFcnJvciA9
IFR5cGVFcnJvcjsKKyAgfSBjYXRjaCAoXykgeworICAgIC8vIFRoZSBob3N0IGlzIHBlcm1pdHRl
ZCB0byBmYWlsIGFueSAicmVzaXplIiBvcGVyYXRpb24gYXQgaXRzIG93bgorICAgIC8vIGRpc2Ny
ZXRpb24uIElmIHRoYXQgb2NjdXJzLCB0aGUgcmV2ZXJzZSBvcGVyYXRpb24gc2hvdWxkIGNvbXBs
ZXRlCisgICAgLy8gc3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVjdGVkRXJyb3IgPSBUZXN0MjYyRXJy
b3I7CisgIH0KKworICBhc3NlcnQudGhyb3dzKGV4cGVjdGVkRXJyb3IsICgpID0+IHsKKyAgICBh
cnJheS5yZXZlcnNlKCk7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcigncmV2ZXJzZSBjb21w
bGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgIH0pOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc2V0L3R5cGVkYXJyYXkt
YXJnLXNldC12YWx1ZXMtc2FtZS1idWZmZXItc2FtZS10eXBlLXJlc2l6ZWQuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc2V0L3R5cGVkYXJy
YXktYXJnLXNldC12YWx1ZXMtc2FtZS1idWZmZXItc2FtZS10eXBlLXJlc2l6ZWQuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uM2JkNGJmNjI1OWNjYTEzOWM3YzgwYzU0MDYwMGMxMjNiODM2NmNlOQotLS0gL2Rldi9u
dWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3Rv
dHlwZS9zZXQvdHlwZWRhcnJheS1hcmctc2V0LXZhbHVlcy1zYW1lLWJ1ZmZlci1zYW1lLXR5cGUt
cmVzaXplZC5qcwpAQCAtMCwwICsxLDQ1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4
IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnByb3RvdHlwZS5zZXQtdHlwZWRhcnJheS1vZmZz
ZXQKK2Rlc2NyaXB0aW9uOiA+CisgIFNldCB2YWx1ZXMgZnJvbSBkaWZmZXJlbnQgaW5zdGFuY2Vz
IHVzaW5nIHRoZSBzYW1lIGJ1ZmZlciBhbmQgc2FtZQorICBjb25zdHJ1Y3RvciB3aGVuIHVuZGVy
bHlpbmcgQXJyYXlCdWZmZXIgaGFzIGJlZW4gcmVzaXplZAoraW5jbHVkZXM6IFt0ZXN0VHlwZWRB
cnJheS5qcywgY29tcGFyZUFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFi
bGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgQXJy
YXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMg
QXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgeworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1F
TlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDog
QlBFICogNX0pOworICB2YXIgc291cmNlID0gbmV3IFRBKGFiKTsKKyAgdmFyIHRhcmdldCA9IG5l
dyBUQShhYik7CisgIHZhciBleHBlY3RlZCA9IFsxMCwgMjAsIDMwLCA0MF07CisKKyAgc291cmNl
WzBdID0gMTA7CisgIHNvdXJjZVsxXSA9IDIwOworICBzb3VyY2VbMl0gPSAzMDsKKyAgc291cmNl
WzNdID0gNDA7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgICAgZXhwZWN0
ZWQgPSBbMTAsIDIwLCAzMCwgNDAsIDBdOworICB9IGNhdGNoIChfKSB7fQorCisgIHRhcmdldC5z
ZXQoc291cmNlKTsKKyAgYXNzZXJ0KGNvbXBhcmVBcnJheSh0YXJnZXQsIGV4cGVjdGVkKSwgJ2Zv
bGxvd2luZyBncm93Jyk7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAg
ZXhwZWN0ZWQgPSBbMTAsIDIwLCAzMF07CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgdGFyZ2V0LnNl
dChzb3VyY2UpOworICBhc3NlcnQoY29tcGFyZUFycmF5KHRhcmdldCwgZXhwZWN0ZWQpLCAnZm9s
bG93aW5nIHNocmluaycpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc2V0L3R5cGVkYXJyYXktYXJnLXRhcmdldC1v
dXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXkvcHJvdG90eXBlL3NldC90eXBlZGFycmF5LWFyZy10YXJnZXQtb3V0LW9mLWJvdW5kcy5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4wNGVlODZiMTNmMDYyNDhkMThjMGQyY2FmMGMzOTNjNTUyNWEzYjc1Ci0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXkv
cHJvdG90eXBlL3NldC90eXBlZGFycmF5LWFyZy10YXJnZXQtb3V0LW9mLWJvdW5kcy5qcwpAQCAt
MCwwICsxLDQzIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMt
JXR5cGVkYXJyYXklLnByb3RvdHlwZS5zZXQtdHlwZWRhcnJheS1vZmZzZXQKK2Rlc2NyaXB0aW9u
OiBFcnJvciB3aGVuIHRhcmdldCBUeXBlZEFycmF5IGZhaWxzIGJvdW5kYXJ5IGNoZWNrcworaW5j
bHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwgcmVzaXph
YmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIFR5
cGVkQXJyYXkucHJvdG90eXBlLnNldCwKKyAgJ2Z1bmN0aW9uJywKKyAgJ2ltcGxlbWVudHMgVHlw
ZWRBcnJheS5wcm90b3R5cGUuc2V0JworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9m
IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1l
bnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7
CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBF
ICogNH0pOworICB2YXIgdGFyZ2V0ID0gbmV3IFRBKGFiLCAwLCA0KTsKKyAgdmFyIHNvdXJjZSA9
IG5ldyBUQShuZXcgQXJyYXlCdWZmZXIoQlBFICogNCkpOworCisgIHZhciBleHBlY3RlZEVycm9y
OworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZEVycm9yID0g
VHlwZUVycm9yOworICB9IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMgcGVybWl0dGVk
IHRvIGZhaWwgYW55ICJyZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAgLy8gZGlzY3Jl
dGlvbi4gSWYgdGhhdCBvY2N1cnMsIHRoZSByZXZlcnNlIG9wZXJhdGlvbiBzaG91bGQgY29tcGxl
dGUKKyAgICAvLyBzdWNjZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJv
cjsKKyAgfQorCisgIGFzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAgIHRh
cmdldC5zZXQoc291cmNlLCAwKTsKKyAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdUaGUgYHNl
dGAgb3BlcmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuJyk7CisgIH0pOworfSk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5
cGUvc2xpY2UvcmV0dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9zbGljZS9yZXR1
cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjVkZWUzZDU2
MjRiMTk4N2Q5Y2VkNzhhNTgxOTAxNmUwYTA3MTUzZWIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc2xpY2UvcmV0
dXJuLWFicnVwdC1mcm9tLXRoaXMtb3V0LW9mLWJvdW5kcy5qcwpAQCAtMCwwICsxLDU2IEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtJXR5cGVkYXJyYXklLnBy
b3RvdHlwZS5zbGljZQorZGVzY3JpcHRpb246IFJldHVybiBhYnJ1cHQgd2hlbiAidGhpcyIgdmFs
dWUgZmFpbHMgYnVmZmVyIGJvdW5kYXJ5IGNoZWNrcworaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJh
eS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheSwgcmVzaXphYmxlLWFycmF5YnVmZmVyXQorLS0t
Ki8KKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIFR5cGVkQXJyYXkucHJvdG90eXBlLnNs
aWNlLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS5z
bGljZScKKyk7CisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90
b3R5cGUucmVzaXplLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBBcnJheUJ1ZmZlci5w
cm90b3R5cGUucmVzaXplJworKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKFRB
ID0+IHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BFUl9FTEVNRU5UOworICB2YXIgYWIgPSBuZXcg
QXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVMZW5ndGg6IEJQRSAqIDV9KTsKKyAgdmFyIGFy
cmF5ID0gbmV3IFRBKGFiLCBCUEUsIDIpOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAq
IDUpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9yIGZvbGxvd2luZyBncm93Ogor
ICBhcnJheS5zbGljZSgwKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAg
fSBjYXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4g
Ym91bmRzKToKKyAgYXJyYXkuc2xpY2UoMCk7CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRy
eSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMpOworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJy
b3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICAvLyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFp
bCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9uIGF0IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJ
ZiB0aGF0IG9jY3VycywgdGhlIHNsaWNlIG9wZXJhdGlvbiBzaG91bGQgY29tcGxldGUKKyAgICAv
LyBzdWNjZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKKyAgfQor
CisgIGFzc2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAgIGFycmF5LnNsaWNl
KDApOworICAgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3NsaWNlIGNvbXBsZXRlZCBzdWNjZXNz
ZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS9zb21lL3JldHVybi1hYnJ1cHQtZnJvbS10aGlz
LW91dC1vZi1ib3VuZHMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheS9wcm90b3R5cGUvc29tZS9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRz
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjhiNDU3Y2RiMzc2MzgyYTJlNWM2M2QyNjA1ZGFlN2MzYThhMTBjNDgK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheS9wcm90b3R5cGUvc29tZS9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRz
LmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVj
dCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Vz
aWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLnNvbWUKK2Rlc2NyaXB0aW9uOiBSZXR1cm4g
YWJydXB0IHdoZW4gInRoaXMiIHZhbHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2lu
Y2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6
YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBU
eXBlZEFycmF5LnByb3RvdHlwZS5zb21lLAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBU
eXBlZEFycmF5LnByb3RvdHlwZS5zb21lJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlw
ZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBs
ZW1lbnRzIEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1F
TlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDog
QlBFICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsK
KyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJy
b3IgZm9sbG93aW5nIGdyb3c6CisgIGFycmF5LnNvbWUoKCkgPT4ge30pOworCisgIHRyeSB7Cisg
ICAgYWIucmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7fQorCisgIC8vIG5vIGVycm9y
IGZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpOgorICBhcnJheS5zb21lKCgpID0+IHt9
KTsKKworICB2YXIgZXhwZWN0ZWRFcnJvcjsKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICog
Myk7CisgICAgZXhwZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKKyAgfSBjYXRjaCAoXykgeworICAg
IC8vIFRoZSBob3N0IGlzIHBlcm1pdHRlZCB0byBmYWlsIGFueSAicmVzaXplIiBvcGVyYXRpb24g
YXQgaXRzIG93bgorICAgIC8vIGRpc2NyZXRpb24uIElmIHRoYXQgb2NjdXJzLCB0aGUgc29tZSBv
cGVyYXRpb24gc2hvdWxkIGNvbXBsZXRlCisgICAgLy8gc3VjY2Vzc2Z1bGx5LgorICAgIGV4cGVj
dGVkRXJyb3IgPSBUZXN0MjYyRXJyb3I7CisgIH0KKworICBhc3NlcnQudGhyb3dzKGV4cGVjdGVk
RXJyb3IsICgpID0+IHsKKyAgICBhcnJheS5zb21lKCgpID0+IHt9KTsKKyAgICB0aHJvdyBuZXcg
VGVzdDI2MkVycm9yKCdzb21lIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9KTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5L3By
b3RvdHlwZS9zb3J0L3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1ib3VuZHMuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc29ydC9y
ZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjExYzcz
ZDZlZjMyZDIwZDE1MjliMzBhMzk0NDVkZDEzZTE4Yzk0YWYKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheS9wcm90b3R5cGUvc29ydC9y
ZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAK
Ky8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBm
b3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUu
cHJvdG90eXBlLnNvcnQKK2Rlc2NyaXB0aW9uOiBSZXR1cm4gYWJydXB0IHdoZW4gInRoaXMiIHZh
bHVlIGZhaWxzIGJ1ZmZlciBib3VuZGFyeSBjaGVja3MKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJy
YXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0t
LSovCisKK2Fzc2VydC5zYW1lVmFsdWUoCisgIHR5cGVvZiBUeXBlZEFycmF5LnByb3RvdHlwZS5z
b3J0LAorICAnZnVuY3Rpb24nLAorICAnaW1wbGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS5z
b3J0JworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFycmF5QnVmZmVyLnByb3Rv
dHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIEFycmF5QnVmZmVyLnBy
b3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoVEEg
PT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBB
cnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgYXJy
YXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICog
NSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9sbG93aW5nIGdyb3c6Cisg
IGFycmF5LnNvcnQoKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgfSBj
YXRjaCAoXykge30KKworICAvLyBubyBlcnJvciBmb2xsb3dpbmcgc2hyaW5rICh3aXRoaW4gYm91
bmRzKToKKyAgYXJyYXkuc29ydCgpOworCisgIHZhciBleHBlY3RlZEVycm9yOworICB0cnkgewor
ICAgIGFiLnJlc2l6ZShCUEUgKiAzKTsKKyAgICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOwor
ICB9IGNhdGNoIChfKSB7CisgICAgLy8gVGhlIGhvc3QgaXMgcGVybWl0dGVkIHRvIGZhaWwgYW55
ICJyZXNpemUiIG9wZXJhdGlvbiBhdCBpdHMgb3duCisgICAgLy8gZGlzY3JldGlvbi4gSWYgdGhh
dCBvY2N1cnMsIHRoZSBzb3J0IG9wZXJhdGlvbiBzaG91bGQgY29tcGxldGUKKyAgICAvLyBzdWNj
ZXNzZnVsbHkuCisgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKKyAgfQorCisgIGFz
c2VydC50aHJvd3MoZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAgIGFycmF5LnNvcnQoKTsKKyAg
ICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdzb3J0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsK
KyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9U
eXBlZEFycmF5L3Byb3RvdHlwZS90b0xvY2FsZVN0cmluZy9yZXR1cm4tYWJydXB0LWZyb20tdGhp
cy1vdXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXkvcHJvdG90eXBlL3RvTG9jYWxlU3RyaW5nL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91
dC1vZi1ib3VuZHMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzQyYWFhNjUwZGQ4ZDU2MzU3MjQ5NmNmNjNlZTIx
OTllYTIxYjZiYgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5L3Byb3RvdHlwZS90b0xvY2FsZVN0cmluZy9yZXR1cm4tYWJydXB0LWZy
b20tdGhpcy1vdXQtb2YtYm91bmRzLmpzCkBAIC0wLDAgKzEsNTYgQEAKKy8vIENvcHlyaWdodCAo
QykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy0ldHlwZWRhcnJheSUucHJvdG90eXBlLnRvbG9j
YWxlc3RyaW5nCitkZXNjcmlwdGlvbjogUmV0dXJuIGFicnVwdCB3aGVuICJ0aGlzIiB2YWx1ZSBm
YWlscyBidWZmZXIgYm91bmRhcnkgY2hlY2tzCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5Lmpz
XQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLwor
Cithc3NlcnQuc2FtZVZhbHVlKAorICB0eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUudG9Mb2Nh
bGVTdHJpbmcsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRzIFR5cGVkQXJyYXkucHJvdG90
eXBlLnRvTG9jYWxlU3RyaW5nJworKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgKKyAgdHlwZW9mIEFy
cmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUsCisgICdmdW5jdGlvbicsCisgICdpbXBsZW1lbnRz
IEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemUnCispOworCit0ZXN0V2l0aFR5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMoVEEgPT4geworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7Cisg
IHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICog
NX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgdHJ5IHsKKyAgICBh
Yi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9s
bG93aW5nIGdyb3c6CisgIGFycmF5LnRvTG9jYWxlU3RyaW5nKCk7CisKKyAgdHJ5IHsKKyAgICBh
Yi5yZXNpemUoQlBFICogMyk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8gZXJyb3IgZm9s
bG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcyk6CisgIGFycmF5LnRvTG9jYWxlU3RyaW5nKCk7
CisKKyAgdmFyIGV4cGVjdGVkRXJyb3I7CisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSAqIDMp
OworICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICAv
LyBUaGUgaG9zdCBpcyBwZXJtaXR0ZWQgdG8gZmFpbCBhbnkgInJlc2l6ZSIgb3BlcmF0aW9uIGF0
IGl0cyBvd24KKyAgICAvLyBkaXNjcmV0aW9uLiBJZiB0aGF0IG9jY3VycywgdGhlIHRvTG9jYWxl
U3RyaW5nIG9wZXJhdGlvbiBzaG91bGQgY29tcGxldGUKKyAgICAvLyBzdWNjZXNzZnVsbHkuCisg
ICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKKyAgfQorCisgIGFzc2VydC50aHJvd3Mo
ZXhwZWN0ZWRFcnJvciwgKCkgPT4geworICAgIGFycmF5LnRvTG9jYWxlU3RyaW5nKCk7CisgICAg
dGhyb3cgbmV3IFRlc3QyNjJFcnJvcigndG9Mb2NhbGVTdHJpbmcgY29tcGxldGVkIHN1Y2Nlc3Nm
dWxseScpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXkvcHJvdG90eXBlL3ZhbHVlcy9yZXR1cm4tYWJydXB0LWZyb20tdGhp
cy1vdXQtb2YtYm91bmRzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXkvcHJvdG90eXBlL3ZhbHVlcy9yZXR1cm4tYWJydXB0LWZyb20tdGhpcy1vdXQtb2YtYm91
bmRzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjVmZjYwMGE4NjI4ZTM3ZmZiNzZjODJjOGQ3Zjk4ZmVjOGNiYzA2
NTcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheS9wcm90b3R5cGUvdmFsdWVzL3JldHVybi1hYnJ1cHQtZnJvbS10aGlzLW91dC1vZi1i
b3VuZHMuanMKQEAgLTAsMCArMSw1NiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLSV0eXBlZGFycmF5JS5wcm90b3R5cGUudmFsdWVzCitkZXNjcmlwdGlvbjog
UmV0dXJuIGFicnVwdCB3aGVuICJ0aGlzIiB2YWx1ZSBmYWlscyBidWZmZXIgYm91bmRhcnkgY2hl
Y2tzCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5
LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKAorICB0
eXBlb2YgVHlwZWRBcnJheS5wcm90b3R5cGUudmFsdWVzLAorICAnZnVuY3Rpb24nLAorICAnaW1w
bGVtZW50cyBUeXBlZEFycmF5LnByb3RvdHlwZS52YWx1ZXMnCispOworCithc3NlcnQuc2FtZVZh
bHVlKAorICB0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwKKyAgJ2Z1bmN0aW9u
JywKKyAgJ2ltcGxlbWVudHMgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZScKKyk7CisKK3Rl
c3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhUQSA9PiB7CisgIHZhciBCUEUgPSBUQS5CWVRF
U19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKEJQRSAqIDQsIHttYXhC
eXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9IG5ldyBUQShhYiwgQlBFLCAyKTsK
KworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgfSBjYXRjaCAoXykge30KKwor
ICAvLyBubyBlcnJvciBmb2xsb3dpbmcgZ3JvdzoKKyAgYXJyYXkudmFsdWVzKCk7CisKKyAgdHJ5
IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgLy8gbm8g
ZXJyb3IgZm9sbG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcyk6CisgIGFycmF5LnZhbHVlcygp
OworCisgIHZhciBleHBlY3RlZEVycm9yOworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiAz
KTsKKyAgICBleHBlY3RlZEVycm9yID0gVHlwZUVycm9yOworICB9IGNhdGNoIChfKSB7CisgICAg
Ly8gVGhlIGhvc3QgaXMgcGVybWl0dGVkIHRvIGZhaWwgYW55ICJyZXNpemUiIG9wZXJhdGlvbiBh
dCBpdHMgb3duCisgICAgLy8gZGlzY3JldGlvbi4gSWYgdGhhdCBvY2N1cnMsIHRoZSB2YWx1ZXMg
b3BlcmF0aW9uIHNob3VsZCBjb21wbGV0ZQorICAgIC8vIHN1Y2Nlc3NmdWxseS4KKyAgICBleHBl
Y3RlZEVycm9yID0gVGVzdDI2MkVycm9yOworICB9CisKKyAgYXNzZXJ0LnRocm93cyhleHBlY3Rl
ZEVycm9yLCAoKSA9PiB7CisgICAgYXJyYXkudmFsdWVzKCk7CisgICAgdGhyb3cgbmV3IFRlc3Qy
NjJFcnJvcigndmFsdWVzIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHknKTsKKyAgfSk7Cit9KTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3Ry
dWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvZXhjZXNzaXZlLW9mZnNldC10aHJvd3MtcmVzaXphYmxl
LWFiLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1
Y3RvcnMvY3RvcnMvYnVmZmVyLWFyZy9leGNlc3NpdmUtb2Zmc2V0LXRocm93cy1yZXNpemFibGUt
YWIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNmRlM2YzMDMyNTFiOGNkZTJiYmZhOTZkZjEzMjE3MzM3YTI4M2Iw
MgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBl
ZEFycmF5Q29uc3RydWN0b3JzL2N0b3JzL2J1ZmZlci1hcmcvZXhjZXNzaXZlLW9mZnNldC10aHJv
d3MtcmVzaXphYmxlLWFiLmpzCkBAIC0wLDAgKzEsMjIgQEAKKy8vIENvcHlyaWdodCAoQykgMjAy
MSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBj
b2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLyotLS0KK2VzaWQ6IHNlYy10eXBlZGFycmF5LWJ1ZmZlci1ieXRlb2Zmc2V0LWxlbmd0
aAorZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIGEgUmFuZ2VFcnJvciBmb3IgcmVzaXphYmxlIEFy
cmF5QnVmZmVycyB3aGVuIG9mZnNldCA+IGJ5dGVMZW5ndGgKK2luY2x1ZGVzOiBbdGVzdFR5cGVk
QXJyYXkuanNdCitmZWF0dXJlczogW1R5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0K
Ky0tLSovCisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgewor
ICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBidWZmZXIgPSBuZXcgQXJy
YXlCdWZmZXIoQlBFLCB7bWF4Qnl0ZUxlbmd0aDogQlBFfSk7CisKKyAgYXNzZXJ0LnRocm93cyhS
YW5nZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBuZXcgVEEoYnVmZmVyLCBCUEUgKiAyKTsKKyAg
fSk7CisKKyAgYXNzZXJ0LnRocm93cyhSYW5nZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBuZXcg
VEEoYnVmZmVyLCBCUEUgKiAyLCB1bmRlZmluZWQpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3Rv
cnMvdHlwZWRhcnJheS1hcmcvb3V0LW9mLWJvdW5kcy13aGVuLXNwZWNpZXMtcmV0cmlldmVkLWRp
ZmZlcmVudC10eXBlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3V0LW9mLWJvdW5kcy13aGVuLXNw
ZWNpZXMtcmV0cmlldmVkLWRpZmZlcmVudC10eXBlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ2YmNkYWM1NmE2
NDcwNmJhYzBhYTAyYmE0YTEyNGE3NzRhMGRhZjMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBl
ZGFycmF5LWFyZy9vdXQtb2YtYm91bmRzLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtZGlmZmVyZW50
LXR5cGUuanMKQEAgLTAsMCArMSw4MCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLXR5cGVkYXJyYXktdHlwZWRhcnJheQorZGVzY3JpcHRpb246ID4KKyAgRXJy
b3Igd2hlbiBhIFR5cGVkQXJyYXkgaXMgY3JlYXRlZCBmcm9tIGFub3RoZXIgVHlwZWRBcnJheSB3
aXRoIGEgZGlmZmVyZW50CisgIGVsZW1lbnQtdHlwZSBhbmQgU3BlY2llc0NvbnN0cnVjdG9yIGNh
dXNlcyB0aGUgInNvdXJjZSIgYXJyYXkgdG8gZ28KKyAgb3V0LW9mLWJvdW5kcy4KK2luY2x1ZGVz
OiBbdGVzdFR5cGVkQXJyYXkuanMsIGNvbXBhcmVBcnJheS5qc10KK2ZlYXR1cmVzOiBbVHlwZWRB
cnJheSwgU3ltYm9sLnNwZWNpZXMsIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKKy8v
IElmIHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxsb3dlZCBieSB0aGUgc3BlY2lmaWNh
dGlvbiwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxsIGJlIGlkZW50aWNhbCB0byB0aGUg
Y2FzZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhhcyBub3QgYmVl
biBpbXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRpb24gcHJldmVudHMgdGhpcyB0ZXN0
IGZyb20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2ggaGF2ZSBub3QgaW1wbGVtZW50ZWQg
dGhlIG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlw
ZS5yZXNpemUsICdmdW5jdGlvbicpOworCit0ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMo
ZnVuY3Rpb24oVEEpIHsKKyAgdmFyIEJQRSA9IFRBLkJZVEVTX1BFUl9FTEVNRU5UOworICB2YXIg
VGFyZ2V0Q3RvciA9IFRBICE9PSBJbnQzMkFycmF5ID8gSW50MzJBcnJheSA6IFVpbnQzMkFycmF5
OworICB2YXIgYWIgPSBuZXcgQXJyYXlCdWZmZXIoQlBFICogNCwge21heEJ5dGVMZW5ndGg6IEJQ
RSAqIDV9KTsKKyAgdmFyIHNwZWNpZXNDb25zdHJ1Y3RvciA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0
eShmdW5jdGlvbigpe30uYmluZCgpLCAncHJvdG90eXBlJywgeworICAgIGdldDogZnVuY3Rpb24o
KSB7CisgICAgICByZXR1cm4gbnVsbDsKKyAgICB9CisgIH0pOworICB2YXIgb25HZXRTcGVjaWVz
OworICBhYi5jb25zdHJ1Y3RvciA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgU3ltYm9sLnNw
ZWNpZXMsIHsKKyAgICBnZXQ6IGZ1bmN0aW9uKCkgeworICAgICAgb25HZXRTcGVjaWVzKCk7Cisg
ICAgICByZXR1cm4gc3BlY2llc0NvbnN0cnVjdG9yOworICAgIH0KKyAgfSk7CisgIHZhciBzb3Vy
Y2UgPSBuZXcgVEEoYWIsIEJQRSk7CisgIHZhciBleHBlY3RlZCA9IFsxMCwgMjAsIDMwXTsKKwor
ICBzb3VyY2VbMF0gPSAxMDsKKyAgc291cmNlWzFdID0gMjA7CisgIHNvdXJjZVsyXSA9IDMwOwor
CisgIG9uR2V0U3BlY2llcyA9IGZ1bmN0aW9uKCkgeworICAgIHRyeSB7CisgICAgICBhYi5yZXNp
emUoQlBFICogNSk7CisgICAgICBleHBlY3RlZCA9IFsxMCwgMjAsIDMwLCAwXTsKKyAgICB9IGNh
dGNoIChfKSB7fQorICB9OworCisgIGFzc2VydChjb21wYXJlQXJyYXkobmV3IFRhcmdldEN0b3Io
c291cmNlKSwgZXhwZWN0ZWQpLCAnZm9sbG93aW5nIGdyb3cnKTsKKworICBvbkdldFNwZWNpZXMg
PSBmdW5jdGlvbigpIHsKKyAgICB0cnkgeworICAgICAgYWIucmVzaXplKEJQRSAqIDMpOworICAg
ICAgZXhwZWN0ZWQgPSBbMTAsIDIwXTsKKyAgICB9IGNhdGNoIChfKSB7fQorICB9OworCisgIGFz
c2VydChjb21wYXJlQXJyYXkobmV3IFRhcmdldEN0b3Ioc291cmNlKSwgZXhwZWN0ZWQpLCAnZm9s
bG93aW5nIHNocmluayAod2l0aGluIGJvdW5kcyknKTsKKworICAvLyBgYXNzZXJ0LnRocm93c2Ag
Y2Fubm90IGJlIHVzZWQgaW4gdGhpcyBjYXNlIGJlY2F1c2UgdGhlIGV4cGVjdGVkIGVycm9yCisg
IC8vIGlzIGRlcml2ZWQgb25seSBhZnRlciB0aGUgY29uc3RydWN0b3IgaXMgaW52b2tlZC4KKyAg
dmFyIGV4cGVjdGVkRXJyb3I7CisgIHZhciBhY3R1YWxFcnJvcjsKKyAgb25HZXRTcGVjaWVzID0g
ZnVuY3Rpb24oKSB7CisgICAgdHJ5IHsKKyAgICAgIGFiLnJlc2l6ZShCUEUpOworICAgICAgZXhw
ZWN0ZWRFcnJvciA9IFR5cGVFcnJvcjsKKyAgICB9IGNhdGNoIChfKSB7CisgICAgICBleHBlY3Rl
ZEVycm9yID0gVGVzdDI2MkVycm9yOworICAgIH0KKyAgfTsKKyAgdHJ5IHsKKyAgICBuZXcgVGFy
Z2V0Q3Rvcihzb3VyY2UpOworICAgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ3RoZSBvcGVyYXRp
b24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseScpOworICB9IGNhdGNoIChjYXVnaHQpIHsKKyAgICBh
Y3R1YWxFcnJvciA9IGNhdWdodDsKKyAgfQorCisgIGFzc2VydC5zYW1lVmFsdWUoYWN0dWFsRXJy
b3IuY29uc3RydWN0b3IsIGV4cGVjdGVkRXJyb3IpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9jdG9ycy90eXBl
ZGFycmF5LWFyZy9vdXQtb2YtYm91bmRzLXdoZW4tc3BlY2llcy1yZXRyaWV2ZWQtc2FtZS10eXBl
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3V0LW9mLWJvdW5kcy13aGVuLXNwZWNpZXMtcmV0cmll
dmVkLXNhbWUtdHlwZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZTJiOWYzY2ViOWI0M2IzNTk1N2NlMzQ3OTI2
Njg3MWNmYzJmYTBmCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVp
bHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvY3RvcnMvdHlwZWRhcnJheS1hcmcvb3V0LW9m
LWJvdW5kcy13aGVuLXNwZWNpZXMtcmV0cmlldmVkLXNhbWUtdHlwZS5qcwpAQCAtMCwwICsxLDgw
IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vu
c2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtdHlwZWRhcnJh
eS10eXBlZGFycmF5CitkZXNjcmlwdGlvbjogPgorICBFcnJvciB3aGVuIGEgVHlwZWRBcnJheSBp
cyBjcmVhdGVkIGZyb20gYW5vdGhlciBUeXBlZEFycmF5IHdpdGggdGhlIHNhbWUKKyAgZWxlbWVu
dC10eXBlIGFuZCBTcGVjaWVzQ29uc3RydWN0b3IgY2F1c2VzIHRoZSAic291cmNlIiBhcnJheSB0
byBnbworICBvdXQtb2YtYm91bmRzLgoraW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qcywgY29t
cGFyZUFycmF5LmpzXQorZmVhdHVyZXM6IFtUeXBlZEFycmF5LCBTeW1ib2wuc3BlY2llcywgcmVz
aXphYmxlLWFycmF5YnVmZmVyXQorLS0tKi8KKworLy8gSWYgdGhlIGhvc3QgY2hvb3NlcyB0byB0
aHJvdyBhcyBhbGxvd2VkIGJ5IHRoZSBzcGVjaWZpY2F0aW9uLCB0aGUgb2JzZXJ2ZWQKKy8vIGJl
aGF2aW9yIHdpbGwgYmUgaWRlbnRpY2FsIHRvIHRoZSBjYXNlIHdoZXJlIGBBcnJheUJ1ZmZlci5w
cm90b3R5cGUucmVzaXplYAorLy8gaGFzIG5vdCBiZWVuIGltcGxlbWVudGVkLiBUaGUgZm9sbG93
aW5nIGFzc2VydGlvbiBwcmV2ZW50cyB0aGlzIHRlc3QgZnJvbQorLy8gcGFzc2luZyBpbiBydW50
aW1lcyB3aGljaCBoYXZlIG5vdCBpbXBsZW1lbnRlZCB0aGUgbWV0aG9kLgorYXNzZXJ0LnNhbWVW
YWx1ZSh0eXBlb2YgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZSwgJ2Z1bmN0aW9uJyk7CisK
K3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgeworICB2YXIgQlBF
ID0gVEEuQllURVNfUEVSX0VMRU1FTlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUg
KiA0LCB7bWF4Qnl0ZUxlbmd0aDogQlBFICogNX0pOworICB2YXIgc3BlY2llc0NvbnN0cnVjdG9y
ID0gT2JqZWN0LmRlZmluZVByb3BlcnR5KGZ1bmN0aW9uKCl7fS5iaW5kKCksICdwcm90b3R5cGUn
LCB7CisgICAgZ2V0OiBmdW5jdGlvbigpIHsKKyAgICAgIHJldHVybiBudWxsOworICAgIH0KKyAg
fSk7CisgIHZhciBvbkdldFNwZWNpZXM7CisgIGFiLmNvbnN0cnVjdG9yID0gT2JqZWN0LmRlZmlu
ZVByb3BlcnR5KHt9LCBTeW1ib2wuc3BlY2llcywgeworICAgIGdldDogZnVuY3Rpb24oKSB7Cisg
ICAgICBvbkdldFNwZWNpZXMoKTsKKyAgICAgIHJldHVybiBzcGVjaWVzQ29uc3RydWN0b3I7Cisg
ICAgfQorICB9KTsKKyAgdmFyIHNvdXJjZSA9IG5ldyBUQShhYiwgQlBFKTsKKyAgdmFyIGV4cGVj
dGVkID0gWzEwLCAyMCwgMzBdOworCisgIHNvdXJjZVswXSA9IDEwOworICBzb3VyY2VbMV0gPSAy
MDsKKyAgc291cmNlWzJdID0gMzA7CisKKyAgb25HZXRTcGVjaWVzID0gZnVuY3Rpb24oKSB7Cisg
ICAgdHJ5IHsKKyAgICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgICAgIGV4cGVjdGVkID0gWzEw
LCAyMCwgMzAsIDBdOworICAgIH0gY2F0Y2ggKF8pIHt9CisgIH07CisKKyAgYXNzZXJ0LnNhbWVW
YWx1ZSgobmV3IFRBKHNvdXJjZSkpLmpvaW4oJywnKSwgZXhwZWN0ZWQuam9pbignLCcpKTsKKyAg
YXNzZXJ0KGNvbXBhcmVBcnJheShuZXcgVEEoc291cmNlKSwgZXhwZWN0ZWQpLCAnZm9sbG93aW5n
IGdyb3cnKTsKKworICBvbkdldFNwZWNpZXMgPSBmdW5jdGlvbigpIHsKKyAgICB0cnkgeworICAg
ICAgYWIucmVzaXplKEJQRSAqIDMpOworICAgICAgZXhwZWN0ZWQgPSBbMTAsIDIwXTsKKyAgICB9
IGNhdGNoIChfKSB7fQorICB9OworCisgIGFzc2VydChjb21wYXJlQXJyYXkobmV3IFRBKHNvdXJj
ZSksIGV4cGVjdGVkKSwgJ2ZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMpJyk7CisKKyAg
Ly8gYGFzc2VydC50aHJvd3NgIGNhbm5vdCBiZSB1c2VkIGluIHRoaXMgY2FzZSBiZWNhdXNlIHRo
ZSBleHBlY3RlZCBlcnJvcgorICAvLyBpcyBkZXJpdmVkIG9ubHkgYWZ0ZXIgdGhlIGNvbnN0cnVj
dG9yIGlzIGludm9rZWQuCisgIHZhciBleHBlY3RlZEVycm9yOworICB2YXIgYWN0dWFsRXJyb3I7
CisgIG9uR2V0U3BlY2llcyA9IGZ1bmN0aW9uKCkgeworICAgIHRyeSB7CisgICAgICBhYi5yZXNp
emUoQlBFKTsKKyAgICAgIGV4cGVjdGVkRXJyb3IgPSBUeXBlRXJyb3I7CisgICAgfSBjYXRjaCAo
XykgeworICAgICAgZXhwZWN0ZWRFcnJvciA9IFRlc3QyNjJFcnJvcjsKKyAgICB9CisgIH07Cisg
IHRyeSB7CisgICAgbmV3IFRBKHNvdXJjZSk7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJvcign
dGhlIG9wZXJhdGlvbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7CisgIH0gY2F0Y2ggKGNhdWdo
dCkgeworICAgIGFjdHVhbEVycm9yID0gY2F1Z2h0OworICB9CisKKyAgYXNzZXJ0LnNhbWVWYWx1
ZShhY3R1YWxFcnJvci5jb25zdHJ1Y3RvciwgZXhwZWN0ZWRFcnJvcik7Cit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9CaWdJbnQvZGV0YWNoZWQtYnVmZmVyLXJlYWxt
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9kZXRhY2hlZC1idWZmZXItcmVh
bG0uanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMyMWZlYTRiYTMxNWI2NzhiZmU0
NjUxM2U0MWNiNGJlN2MyMGRhZmUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9kZXRhY2hlZC1idWZm
ZXItcmVhbG0uanMKKysrIC9kZXYvbnVsbApAQCAtMSw1NyArMCwwIEBACi0vLyBDb3B5cmlnaHQg
KEMpIDIwMTYgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KLS8qLS0tCi1lc2lkOiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmpl
Y3RzLWRlZmluZW93bnByb3BlcnR5LXAtZGVzYwotZGVzY3JpcHRpb246ID4KLSAgUmV0dXJucyBm
YWxzZSBpZiB0aGlzIGhhcyB2YWxpZCBudW1lcmljIGluZGV4IGFuZCBhIGRldGFjaGVkIGJ1ZmZl
cgotICAoaG9ub3JpbmcgdGhlIFJlYWxtIG9mIHRoZSBjdXJyZW50IGV4ZWN1dGlvbiBjb250ZXh0
KQotaW5mbzogfAotICA5LjQuNS4zIFtbRGVmaW5lT3duUHJvcGVydHldXSAoIFAsIERlc2MpCi0g
IC4uLgotICAzLiBJZiBUeXBlKFApIGlzIFN0cmluZywgdGhlbgotICAgIGEuIExldCBudW1lcmlj
SW5kZXggYmUgISBDYW5vbmljYWxOdW1lcmljSW5kZXhTdHJpbmcoUCkuCi0gICAgYi4gSWYgbnVt
ZXJpY0luZGV4IGlzIG5vdCB1bmRlZmluZWQsIHRoZW4KLSAgICAgIC4uLgotICAgICAgeGkuIElm
IERlc2MgaGFzIGEgW1tWYWx1ZV1dIGZpZWxkLCB0aGVuCi0gICAgICAgIDEuIExldCB2YWx1ZSBi
ZSBEZXNjLltbVmFsdWVdXS4KLSAgICAgICAgMi4gUmV0dXJuID8gSW50ZWdlckluZGV4ZWRFbGVt
ZW50U2V0KE8sIGludEluZGV4LCB2YWx1ZSkuCi0gIC4uLgotCi0gIEludGVnZXJJbmRleGVkRWxl
bWVudFNldCAoIE8sIGluZGV4LCB2YWx1ZSApCi0KLSAgQXNzZXJ0OiBPIGlzIGFuIEludGVnZXIt
SW5kZXhlZCBleG90aWMgb2JqZWN0LgotICBJZiBPLltbQ29udGVudFR5cGVdXSBpcyBCaWdJbnQs
IGxldCBudW1WYWx1ZSBiZSA/IFRvQmlnSW50KHZhbHVlKS4KLSAgT3RoZXJ3aXNlLCBsZXQgbnVt
VmFsdWUgYmUgPyBUb051bWJlcih2YWx1ZSkuCi0gIExldCBidWZmZXIgYmUgTy5bW1ZpZXdlZEFy
cmF5QnVmZmVyXV0uCi0gIElmIElzRGV0YWNoZWRCdWZmZXIoYnVmZmVyKSBpcyBmYWxzZSBhbmQg
ISBJc1ZhbGlkSW50ZWdlckluZGV4KE8sIGluZGV4KSBpcyB0cnVlLCB0aGVuCi0gICAgTGV0IG9m
ZnNldCBiZSBPLltbQnl0ZU9mZnNldF1dLgotICAgIExldCBhcnJheVR5cGVOYW1lIGJlIHRoZSBT
dHJpbmcgdmFsdWUgb2YgTy5bW1R5cGVkQXJyYXlOYW1lXV0uCi0gICAgTGV0IGVsZW1lbnRTaXpl
IGJlIHRoZSBFbGVtZW50IFNpemUgdmFsdWUgc3BlY2lmaWVkIGluIFRhYmxlIDYyIGZvciBhcnJh
eVR5cGVOYW1lLgotICAgIExldCBpbmRleGVkUG9zaXRpb24gYmUgKOKEnShpbmRleCkgw5cgZWxl
bWVudFNpemUpICsgb2Zmc2V0LgotICAgIExldCBlbGVtZW50VHlwZSBiZSB0aGUgRWxlbWVudCBU
eXBlIHZhbHVlIGluIFRhYmxlIDYyIGZvciBhcnJheVR5cGVOYW1lLgotICAgIFBlcmZvcm0gU2V0
VmFsdWVJbkJ1ZmZlcihidWZmZXIsIGluZGV4ZWRQb3NpdGlvbiwgZWxlbWVudFR5cGUsIG51bVZh
bHVlLCB0cnVlLCBVbm9yZGVyZWQpLgotICBSZXR1cm4gTm9ybWFsQ29tcGxldGlvbih1bmRlZmlu
ZWQpLgotCi1pbmNsdWRlczogW3Rlc3RCaWdJbnRUeXBlZEFycmF5LmpzLCBkZXRhY2hBcnJheUJ1
ZmZlci5qc10KLWZlYXR1cmVzOiBbYWxpZ24tZGV0YWNoZWQtYnVmZmVyLXNlbWFudGljcy13aXRo
LXdlYi1yZWFsaXR5LCBCaWdJbnQsIGNyb3NzLXJlYWxtLCBSZWZsZWN0LCBUeXBlZEFycmF5XQot
LS0tKi8KLXZhciBvdGhlciA9ICQyNjIuY3JlYXRlUmVhbG0oKS5nbG9iYWw7Ci0KLXZhciBkZXNj
ID0gewotICB2YWx1ZTogMG4sCi0gIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKLSAgZW51bWVyYWJsZTog
dHJ1ZSwKLSAgd3JpdGFibGU6IHRydWUKLX07Ci0KLXRlc3RXaXRoQmlnSW50VHlwZWRBcnJheUNv
bnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgewotICB2YXIgT3RoZXJUQSA9IG90aGVyW1RBLm5hbWVd
OwotICB2YXIgc2FtcGxlID0gbmV3IE90aGVyVEEoMSk7Ci0gICRERVRBQ0hCVUZGRVIoc2FtcGxl
LmJ1ZmZlcik7Ci0KLSAgYXNzZXJ0LnNhbWVWYWx1ZSgKLSAgICBSZWZsZWN0LmRlZmluZVByb3Bl
cnR5KHNhbXBsZSwgJzAnLCBkZXNjKSwKLSAgICBmYWxzZSwKLSAgICAnUmVmbGVjdC5kZWZpbmVQ
cm9wZXJ0eShzYW1wbGUsICIwIiwge3ZhbHVlOiAwbiwgY29uZmlndXJhYmxlOiB0cnVlLCBlbnVt
ZXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZX0gKSBtdXN0IHJldHVybiBmYWxzZScKLSAgKTsK
LX0pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJy
YXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9kZXRhY2hl
ZC1idWZmZXItdGhyb3dzLXJlYWxtLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0lu
dC9kZXRhY2hlZC1idWZmZXItdGhyb3dzLXJlYWxtLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY5YmM0NjkzNmZi
YmY2NjUwYmNjNThkYzg2MDEwYTQ0MDNkMmU0ZDgKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMv
RGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MtcmVhbG0uanMK
QEAgLTAsMCArMSw1MiBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDE2IHRoZSBWOCBwcm9qZWN0IGF1
dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDog
c2VjLWludGVnZXItaW5kZXhlZC1leG90aWMtb2JqZWN0cy1kZWZpbmVvd25wcm9wZXJ0eS1wLWRl
c2MKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBUeXBlRXJyb3IgZm9yIHZhbGlkIGRlc2NyaXB0
b3IgJiBjYW5vbmljYWwgbnVtZXJpYyBzdHJpbmcgaWYgYnVmZmVyIGlzIGRldGFjaGVkLgorICAo
aG9ub3JpbmcgdGhlIFJlYWxtIG9mIHRoZSBjdXJyZW50IGV4ZWN1dGlvbiBjb250ZXh0KQoraW5m
bzogfAorICBbW0RlZmluZU93blByb3BlcnR5XV0gKCBQLCBEZXNjICkKKworICBbLi4uXQorICAz
LiBJZiBUeXBlKFApIGlzIFN0cmluZywgdGhlbgorICAgIGEuIExldCBudW1lcmljSW5kZXggYmUg
ISBDYW5vbmljYWxOdW1lcmljSW5kZXhTdHJpbmcoUCkuCisgICAgYi4gSWYgbnVtZXJpY0luZGV4
IGlzIG5vdCB1bmRlZmluZWQsIHRoZW4KKyAgICAgIGkuIElmICEgSXNWYWxpZEludGVnZXJJbmRl
eChPLCBudW1lcmljSW5kZXgpIGlzIGZhbHNlLCByZXR1cm4gZmFsc2UuCisKKyAgSXNWYWxpZElu
dGVnZXJJbmRleCAoIE8sIGluZGV4ICkKKworICBbLi4uXQorICAyLiBJZiBJc0RldGFjaGVkQnVm
ZmVyKE8uW1tWaWV3ZWRBcnJheUJ1ZmZlcl1dKSBpcyB0cnVlLCByZXR1cm4gZmFsc2UuCitpbmNs
dWRlczogW3Rlc3RCaWdJbnRUeXBlZEFycmF5LmpzLCBkZXRhY2hBcnJheUJ1ZmZlci5qc10KK2Zl
YXR1cmVzOiBbYWxpZ24tZGV0YWNoZWQtYnVmZmVyLXNlbWFudGljcy13aXRoLXdlYi1yZWFsaXR5
LCBCaWdJbnQsIFR5cGVkQXJyYXldCistLS0qLworCit2YXIgb3RoZXIgPSAkMjYyLmNyZWF0ZVJl
YWxtKCkuZ2xvYmFsOworCit0ZXN0V2l0aEJpZ0ludFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVu
Y3Rpb24oVEEpIHsKKyAgdmFyIE90aGVyVEEgPSBvdGhlcltUQS5uYW1lXTsKKyAgdmFyIHNhbXBs
ZSA9IG5ldyBPdGhlclRBKFswbl0pOworICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3Ioc2FtcGxlLCAiMCIpOworICAkREVUQUNIQlVGRkVSKHNhbXBsZS5idWZmZXIp
OworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3Qu
ZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMCIsIGRlc2MpOworICB9KTsKKworICBhc3NlcnQudGhy
b3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNh
bXBsZSwgIjEiLCBkZXNjKTsKKyAgfSk7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1
bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUsICItMSIsIGRlc2Mp
OworICB9KTsKKworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAg
T2JqZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgIjEuNSIsIGRlc2MpOworICB9KTsKKworICBh
c3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVBy
b3BlcnR5KHNhbXBsZSwgIi0wIiwgZGVzYyk7CisgIH0pOworfSk7CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5h
bHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRl
cm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTAxZmQyNTA1ZTE4ZjhiYWUzNmExODVjMjNlZWRiMjdkNzNhYjFlOQotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9CaWdJbnQvZGV0YWNoZWQt
YnVmZmVyLXRocm93cy5qcwpAQCAtMCwwICsxLDQ4IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEg
QWxleGV5IFNodmF5a2EuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLWludGVnZXItaW5kZXhlZC1leG90aWMtb2JqZWN0cy1kZWZpbmVvd25wcm9w
ZXJ0eS1wLWRlc2MKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBUeXBlRXJyb3IgZm9yIHZhbGlk
IGRlc2NyaXB0b3IgJiBjYW5vbmljYWwgbnVtZXJpYyBzdHJpbmcgaWYgYnVmZmVyIGlzIGRldGFj
aGVkLgoraW5mbzogfAorICBbW0RlZmluZU93blByb3BlcnR5XV0gKCBQLCBEZXNjICkKKworICBb
Li4uXQorICAzLiBJZiBUeXBlKFApIGlzIFN0cmluZywgdGhlbgorICAgIGEuIExldCBudW1lcmlj
SW5kZXggYmUgISBDYW5vbmljYWxOdW1lcmljSW5kZXhTdHJpbmcoUCkuCisgICAgYi4gSWYgbnVt
ZXJpY0luZGV4IGlzIG5vdCB1bmRlZmluZWQsIHRoZW4KKyAgICAgIGkuIElmICEgSXNWYWxpZElu
dGVnZXJJbmRleChPLCBudW1lcmljSW5kZXgpIGlzIGZhbHNlLCByZXR1cm4gZmFsc2UuCisKKyAg
SXNWYWxpZEludGVnZXJJbmRleCAoIE8sIGluZGV4ICkKKworICBbLi4uXQorICAyLiBJZiBJc0Rl
dGFjaGVkQnVmZmVyKE8uW1tWaWV3ZWRBcnJheUJ1ZmZlcl1dKSBpcyB0cnVlLCByZXR1cm4gZmFs
c2UuCitpbmNsdWRlczogW3Rlc3RCaWdJbnRUeXBlZEFycmF5LmpzLCBkZXRhY2hBcnJheUJ1ZmZl
ci5qc10KK2ZlYXR1cmVzOiBbYWxpZ24tZGV0YWNoZWQtYnVmZmVyLXNlbWFudGljcy13aXRoLXdl
Yi1yZWFsaXR5LCBCaWdJbnQsIFR5cGVkQXJyYXldCistLS0qLworCit0ZXN0V2l0aEJpZ0ludFR5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIHNhbXBsZSA9IG5ldyBU
QShbMG5dKTsKKyAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHNh
bXBsZSwgIjAiKTsKKyAgJERFVEFDSEJVRkZFUihzYW1wbGUuYnVmZmVyKTsKKworICBhc3NlcnQu
dGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5
KHNhbXBsZSwgIjAiLCBkZXNjKTsKKyAgfSk7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3Is
IGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUsICIxIiwgZGVz
Yyk7CisgIH0pOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAg
ICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiLTEiLCBkZXNjKTsKKyAgfSk7CisKKyAg
YXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQ
cm9wZXJ0eShzYW1wbGUsICIxLjUiLCBkZXNjKTsKKyAgfSk7CisKKyAgYXNzZXJ0LnRocm93cyhU
eXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUs
ICItMCIsIGRlc2MpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blBy
b3BlcnR5L0JpZ0ludC9rZXktaXMtbm90LW51bWVyaWMtaW5kZXgtdGhyb3dzLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxz
L0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9rZXktaXMtbm90LW51bWVyaWMtaW5kZXgtdGhyb3dz
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjYzMzM5MDM4NWYxY2VjYzk3YjljMzcwODNmZWNhOGY2ZjliMjg4MDEK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1p
cy1ub3QtbnVtZXJpYy1pbmRleC10aHJvd3MuanMKQEAgLTAsMCArMSw0NSBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIEFsZXhleSBTaHZheWthLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1pbnRlZ2VyLWluZGV4ZWQtZXhvdGljLW9iamVjdHMt
ZGVmaW5lb3ducHJvcGVydHktcC1kZXNjCitkZXNjcmlwdGlvbjogPgorICBUaHJvd3MgVHlwZUVy
cm9yIGZvciB2YWxpZCBkZXNjcmlwdG9yICYgY2Fub25pY2FsIG51bWVyaWMgc3RyaW5nIHRoYXQg
aXMgaW52YWxpZCBpbmRleC4KK2luZm86IHwKKyAgW1tEZWZpbmVPd25Qcm9wZXJ0eV1dICggUCwg
RGVzYyApCisKKyAgWy4uLl0KKyAgMy4gSWYgVHlwZShQKSBpcyBTdHJpbmcsIHRoZW4KKyAgICBh
LiBMZXQgbnVtZXJpY0luZGV4IGJlICEgQ2Fub25pY2FsTnVtZXJpY0luZGV4U3RyaW5nKFApLgor
ICAgIGIuIElmIG51bWVyaWNJbmRleCBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgICBpLiBJ
ZiAhIElzVmFsaWRJbnRlZ2VySW5kZXgoTywgbnVtZXJpY0luZGV4KSBpcyBmYWxzZSwgcmV0dXJu
IGZhbHNlLgorCisgIElzVmFsaWRJbnRlZ2VySW5kZXggKCBPLCBpbmRleCApCisKKyAgWy4uLl0K
KyAgMy4gSWYgISBJc0ludGVncmFsTnVtYmVyKGluZGV4KSBpcyBmYWxzZSwgcmV0dXJuIGZhbHNl
LgorICA0LiBJZiBpbmRleCBpcyAtMPCdlL0sIHJldHVybiBmYWxzZS4KKyAgNS4gSWYg4oSdKGlu
ZGV4KSA8IDAgb3Ig4oSdKGluZGV4KSDiiaUgTy5bW0FycmF5TGVuZ3RoXV0sIHJldHVybiBmYWxz
ZS4KK2luY2x1ZGVzOiBbdGVzdEJpZ0ludFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW2FsaWdu
LWRldGFjaGVkLWJ1ZmZlci1zZW1hbnRpY3Mtd2l0aC13ZWItcmVhbGl0eSwgQmlnSW50LCBUeXBl
ZEFycmF5XQorLS0tKi8KKwordGVzdFdpdGhCaWdJbnRUeXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1
bmN0aW9uKFRBKSB7CisgIHZhciBzYW1wbGUgPSBuZXcgVEEoWzBuXSk7CisgIHZhciBkZXNjID0g
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzYW1wbGUsICIwIik7CisKKyAgYXNzZXJ0
LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0
eShzYW1wbGUsICIxIiwgZGVzYyk7CisgIH0pOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiLTEiLCBk
ZXNjKTsKKyAgfSk7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgewor
ICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUsICIxLjUiLCBkZXNjKTsKKyAgfSk7CisK
KyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eShzYW1wbGUsICItMCIsIGRlc2MpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50
ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9rZXktaXMtbnVtZXJpY2luZGV4LWFjY2Vz
c29yLWRlc2MtdGhyb3dzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9rZXkt
aXMtbnVtZXJpY2luZGV4LWFjY2Vzc29yLWRlc2MtdGhyb3dzLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJiMjc1
Y2RkODEwNmIxNDRhYjU3NDIyOGMxMzMyMDBlNDY0MjMxYWUKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRl
cm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmljaW5kZXgtYWNjZXNz
b3ItZGVzYy10aHJvd3MuanMKQEAgLTAsMCArMSw0NCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIx
IEFsZXhleSBTaHZheWthLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2VzaWQ6IHNlYy1pbnRlZ2VyLWluZGV4ZWQtZXhvdGljLW9iamVjdHMtZGVmaW5lb3ducHJv
cGVydHktcC1kZXNjCitkZXNjcmlwdGlvbjogPgorICBUaHJvd3MgVHlwZUVycm9yIGZvciB2YWxp
ZCBpbmRleCAmIGFjY2Vzc29yIGRlc2NyaXB0b3IuCitpbmZvOiB8CisgIFtbRGVmaW5lT3duUHJv
cGVydHldXSAoIFAsIERlc2MgKQorCisgIFsuLi5dCisgIDMuIElmIFR5cGUoUCkgaXMgU3RyaW5n
LCB0aGVuCisgICAgYS4gTGV0IG51bWVyaWNJbmRleCBiZSAhIENhbm9uaWNhbE51bWVyaWNJbmRl
eFN0cmluZyhQKS4KKyAgICBiLiBJZiBudW1lcmljSW5kZXggaXMgbm90IHVuZGVmaW5lZCwgdGhl
bgorICAgICAgWy4uLl0KKyAgICAgIGl2LiBJZiBJc0FjY2Vzc29yRGVzY3JpcHRvcihEZXNjKSBp
cyB0cnVlLCByZXR1cm4gZmFsc2UuCitpbmNsdWRlczogW3Rlc3RCaWdJbnRUeXBlZEFycmF5Lmpz
XQorZmVhdHVyZXM6IFtCaWdJbnQsIFR5cGVkQXJyYXldCistLS0qLworCit0ZXN0V2l0aEJpZ0lu
dFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIHNhbXBsZSA9IG5l
dyBUQShbMG5dKTsKKworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7Cisg
ICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgIjAiLCB7CisgICAgICBnZXQ6IGZ1bmN0
aW9uKCkgeyByZXR1cm4gNDJuOyB9LAorICAgIH0pOworICB9LCAiZ2V0IGFjY2Vzc29yIik7Cisg
IGFzc2VydC5zYW1lVmFsdWUoc2FtcGxlWzBdLCAwbiwgImdldCBhY2Nlc3NvciAtIHNpZGUgZWZm
ZWN0IGNoZWNrIik7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgewor
ICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUsICIwIiwgeworICAgICAgc2V0OiBmdW5j
dGlvbihfdikge30sCisgICAgfSk7CisgIH0sICJzZXQgYWNjZXNzb3IiKTsKKyAgYXNzZXJ0LnNh
bWVWYWx1ZShzYW1wbGVbMF0sIDBuLCAic2V0IGFjY2Vzc29yIC0gc2lkZSBlZmZlY3QgY2hlY2si
KTsKKworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0
LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgIjAiLCB7CisgICAgICBnZXQ6IGZ1bmN0aW9uKCkgeyBy
ZXR1cm4gNDJuOyB9LAorICAgICAgc2V0OiBmdW5jdGlvbihfdikge30sCisgICAgfSk7CisgIH0s
ICJnZXQgYW5kIHNldCBhY2Nlc3NvcnMiKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGVbMF0s
IDBuLCAiZ2V0IGFuZCBzZXQgYWNjZXNzb3JzIC0gc2lkZSBlZmZlY3QgY2hlY2siKTsKK30pOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25z
dHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0JpZ0ludC9rZXktaXMtbnVtZXJp
Y2luZGV4LWRlc2MtY29uZmlndXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQt
aW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L0Jp
Z0ludC9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2MtY29uZmlndXJhYmxlLmpzCmluZGV4IGRjMTY4
ODNhODg4MTcxN2JiN2Y5OGRjNzE4NGM2YjM0MzYxMjU4ZjAuLmZjMjEzN2RjNDA5ODhhYTg5YmNj
Nzg1OWNiZjMyMjUxY2EzZDVkZmMgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0
eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLWNvbmZpZ3VyYWJsZS5qcworKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRl
cm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1j
b25maWd1cmFibGUuanMKQEAgLTExLDkgKzExLDYgQEAKICAgICBhLiBMZXQgbnVtZXJpY0luZGV4
IGJlICEgQ2Fub25pY2FsTnVtZXJpY0luZGV4U3RyaW5nKFApLgogICAgIGIuIElmIG51bWVyaWNJ
bmRleCBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCiAgICAgICAuLi4KLSAgICAgIElmIERlc2MgaGFz
IGEgW1tDb25maWd1cmFibGVdXSBmaWVsZCBhbmQgaWYgRGVzYy5bW0NvbmZpZ3VyYWJsZV1dIGlz
IGZhbHNlLCByZXR1cm4gZmFsc2UuCi0gICAgICAuLi4KLQogICAgICAgSWYgRGVzYyBoYXMgYSBb
W1ZhbHVlXV0gZmllbGQsIHRoZW4KICAgICAgICAgTGV0IHZhbHVlIGJlIERlc2MuW1tWYWx1ZV1d
LgogICAgICAgICBSZXR1cm4gPyBJbnRlZ2VySW5kZXhlZEVsZW1lbnRTZXQoTywgbnVtZXJpY0lu
ZGV4LCB2YWx1ZSkuCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50
L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmlndXJhYmxlLXRocm93cy5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVy
bmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5v
dC1jb25maWd1cmFibGUtdGhyb3dzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEyNWZmODUzNmE0MGRhOWZiMDAy
ODQ2YWUxNTA4OTQ1MjdlZDM5Y2UKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3du
UHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmlndXJhYmxl
LXRocm93cy5qcwpAQCAtMCwwICsxLDM5IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgQWxleGV5
IFNodmF5a2EuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNp
ZDogc2VjLWludGVnZXItaW5kZXhlZC1leG90aWMtb2JqZWN0cy1kZWZpbmVvd25wcm9wZXJ0eS1w
LWRlc2MKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBUeXBlRXJyb3IgZm9yIHZhbGlkIGluZGV4
ICYgbm9uLWNvbmZpZ3VyYWJsZSBkZXNjcmlwdG9yLgoraW5mbzogfAorICBbW0RlZmluZU93blBy
b3BlcnR5XV0gKCBQLCBEZXNjICkKKworICBbLi4uXQorICAzLiBJZiBUeXBlKFApIGlzIFN0cmlu
ZywgdGhlbgorICAgIGEuIExldCBudW1lcmljSW5kZXggYmUgISBDYW5vbmljYWxOdW1lcmljSW5k
ZXhTdHJpbmcoUCkuCisgICAgYi4gSWYgbnVtZXJpY0luZGV4IGlzIG5vdCB1bmRlZmluZWQsIHRo
ZW4KKyAgICAgIFsuLi5dCisgICAgICBpaS4gSWYgRGVzYyBoYXMgYSBbW0NvbmZpZ3VyYWJsZV1d
IGZpZWxkIGFuZCBpZiBEZXNjLltbQ29uZmlndXJhYmxlXV0gaXMgZmFsc2UsIHJldHVybiBmYWxz
ZS4KK2luY2x1ZGVzOiBbdGVzdEJpZ0ludFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW2FsaWdu
LWRldGFjaGVkLWJ1ZmZlci1zZW1hbnRpY3Mtd2l0aC13ZWItcmVhbGl0eSwgQmlnSW50LCBUeXBl
ZEFycmF5XQorLS0tKi8KKwordGVzdFdpdGhCaWdJbnRUeXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1
bmN0aW9uKFRBKSB7CisgIHZhciBzYW1wbGUgPSBuZXcgVEEoWzBuXSk7CisKKyAgYXNzZXJ0LnRo
cm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShz
YW1wbGUsICIwIiwgeworICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSwKKyAgICB9KTsKKyAgfSwg
InBhcnRpYWwgZGVzY3JpcHRvciIpOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5j
dGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMCIsIHsKKyAgICAg
IHZhbHVlOiA0Mm4sCisgICAgICB3cml0YWJsZTogdHJ1ZSwKKyAgICAgIGVudW1lcmFibGU6IHRy
dWUsCisgICAgICBjb25maWd1cmFibGU6IGZhbHNlLAorICAgIH0pOworICB9LCAiY29tcGxldGUg
ZGVzY3JpcHRvciIpOworCisgIGFzc2VydC5zYW1lVmFsdWUoc2FtcGxlWzBdLCAwbiwgInNpZGUg
ZWZmZWN0IGNoZWNrIik7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0
eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5vdC1lbnVtZXJhYmxlLXRocm93cy5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1k
ZXNjLW5vdC1lbnVtZXJhYmxlLXRocm93cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40MGY4MmUyOWY4NzFkY2Y2
Y2FlYTgxN2Q3MTJjMzJjNTViNzUyYjAyCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmlu
ZU93blByb3BlcnR5L0JpZ0ludC9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2Mtbm90LWVudW1lcmFi
bGUtdGhyb3dzLmpzCkBAIC0wLDAgKzEsMzkgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSBBbGV4
ZXkgU2h2YXlrYS4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitl
c2lkOiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmplY3RzLWRlZmluZW93bnByb3BlcnR5
LXAtZGVzYworZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIFR5cGVFcnJvciBmb3IgdmFsaWQgaW5k
ZXggJiBub24tZW51bWVyYWJsZSBkZXNjcmlwdG9yLgoraW5mbzogfAorICBbW0RlZmluZU93blBy
b3BlcnR5XV0gKCBQLCBEZXNjICkKKworICBbLi4uXQorICAzLiBJZiBUeXBlKFApIGlzIFN0cmlu
ZywgdGhlbgorICAgIGEuIExldCBudW1lcmljSW5kZXggYmUgISBDYW5vbmljYWxOdW1lcmljSW5k
ZXhTdHJpbmcoUCkuCisgICAgYi4gSWYgbnVtZXJpY0luZGV4IGlzIG5vdCB1bmRlZmluZWQsIHRo
ZW4KKyAgICAgIFsuLi5dCisgICAgICBpaWkuIElmIERlc2MgaGFzIGFuIFtbRW51bWVyYWJsZV1d
IGZpZWxkIGFuZCBpZiBEZXNjLltbRW51bWVyYWJsZV1dIGlzIGZhbHNlLCByZXR1cm4gZmFsc2Uu
CitpbmNsdWRlczogW3Rlc3RCaWdJbnRUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtCaWdJbnQs
IFR5cGVkQXJyYXldCistLS0qLworCit0ZXN0V2l0aEJpZ0ludFR5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIHNhbXBsZSA9IG5ldyBUQShbMG5dKTsKKworICBhc3Nl
cnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVByb3Bl
cnR5KHNhbXBsZSwgIjAiLCB7CisgICAgICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgICB9KTsKKyAg
fSwgInBhcnRpYWwgZGVzY3JpcHRvciIpOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBm
dW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMCIsIHsKKyAg
ICAgIHZhbHVlOiA0Mm4sCisgICAgICB3cml0YWJsZTogdHJ1ZSwKKyAgICAgIGVudW1lcmFibGU6
IGZhbHNlLAorICAgICAgY29uZmlndXJhYmxlOiB0cnVlLAorICAgIH0pOworICB9LCAiY29tcGxl
dGUgZGVzY3JpcHRvciIpOworCisgIGFzc2VydC5zYW1lVmFsdWUoc2FtcGxlWzBdLCAwbiwgInNp
ZGUgZWZmZWN0IGNoZWNrIik7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9w
ZXJ0eS9CaWdJbnQva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5vdC13cml0YWJsZS10aHJvd3Mu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmljaW5kZXgt
ZGVzYy1ub3Qtd3JpdGFibGUtdGhyb3dzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkxMTIxYjA5NjE2MzBjOGJj
ZGVjMGM2YWFiYWM4ODZkYTM2ZTY1OWIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5l
T3duUHJvcGVydHkvQmlnSW50L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3Qtd3JpdGFibGUt
dGhyb3dzLmpzCkBAIC0wLDAgKzEsMzkgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSBBbGV4ZXkg
U2h2YXlrYS4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBi
eSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lk
OiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmplY3RzLWRlZmluZW93bnByb3BlcnR5LXAt
ZGVzYworZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIFR5cGVFcnJvciBmb3IgdmFsaWQgaW5kZXgg
JiBub24td3JpdGFibGUgZGVzY3JpcHRvci4KK2luZm86IHwKKyAgW1tEZWZpbmVPd25Qcm9wZXJ0
eV1dICggUCwgRGVzYyApCisKKyAgWy4uLl0KKyAgMy4gSWYgVHlwZShQKSBpcyBTdHJpbmcsIHRo
ZW4KKyAgICBhLiBMZXQgbnVtZXJpY0luZGV4IGJlICEgQ2Fub25pY2FsTnVtZXJpY0luZGV4U3Ry
aW5nKFApLgorICAgIGIuIElmIG51bWVyaWNJbmRleCBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisg
ICAgICBbLi4uXQorICAgICAgdi4gSWYgRGVzYyBoYXMgYSBbW1dyaXRhYmxlXV0gZmllbGQgYW5k
IGlmIERlc2MuW1tXcml0YWJsZV1dIGlzIGZhbHNlLCByZXR1cm4gZmFsc2UuCitpbmNsdWRlczog
W3Rlc3RCaWdJbnRUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtCaWdJbnQsIFR5cGVkQXJyYXld
CistLS0qLworCit0ZXN0V2l0aEJpZ0ludFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24o
VEEpIHsKKyAgdmFyIHNhbXBsZSA9IG5ldyBUQShbMG5dKTsKKworICBhc3NlcnQudGhyb3dzKFR5
cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwg
IjAiLCB7CisgICAgICB3cml0YWJsZTogZmFsc2UsCisgICAgfSk7CisgIH0sICJwYXJ0aWFsIGRl
c2NyaXB0b3IiKTsKKworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7Cisg
ICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgIjAiLCB7CisgICAgICB2YWx1ZTogNDJu
LAorICAgICAgd3JpdGFibGU6IGZhbHNlLAorICAgICAgZW51bWVyYWJsZTogdHJ1ZSwKKyAgICAg
IGNvbmZpZ3VyYWJsZTogdHJ1ZSwKKyAgICB9KTsKKyAgfSwgImNvbXBsZXRlIGRlc2NyaXB0b3Ii
KTsKKworICBhc3NlcnQuc2FtZVZhbHVlKHNhbXBsZVswXSwgMG4sICJzaWRlIGVmZmVjdCBjaGVj
ayIpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvQmlnSW50L3Rv
bnVtYmVyLXZhbHVlLWRldGFjaGVkLWJ1ZmZlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1
aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0
eS9CaWdJbnQvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVyLmpzCmluZGV4IDRlNzRmMGNm
ZTk1YjQyMDE3Yzc1MmQ3OWEzODE3MzYxNWJmMDNjNTcuLmZjNGZjNTQwNmJmNGE2NDQ0MzljMWM2
OGY5Y2FjODNjNDY4ZWM2ZGQgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9C
aWdJbnQvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVyLmpzCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZp
bmVPd25Qcm9wZXJ0eS9CaWdJbnQvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVyLmpzCkBA
IC01LDcgKzUsNyBAQAogZGVzY3JpcHRpb246ID4KICAgICBEZWZpbmluZyBhIHR5cGVkIGFycmF5
IGVsZW1lbnQgdG8gYSB2YWx1ZSB0aGF0LCB3aGVuIGNvbnZlcnRlZCB0byB0aGUgdHlwZWQKICAg
ICBhcnJheSBlbGVtZW50IHR5cGUsIGRldGFjaGVzIHRoZSB0eXBlZCBhcnJheSdzIHVuZGVybHlp
bmcgYnVmZmVyLCBzaG91bGQgcmV0dXJuCi0gICAgZmFsc2UgYW5kIG5vdCBtb2RpZnkgdGhlIHR5
cGVkIGFycmF5LgorICAgIHRydWUgYW5kIG5vdCBtb2RpZnkgdGhlIHR5cGVkIGFycmF5LgogaW5m
bzogfAogICA5LjQuNS4zIFtbRGVmaW5lT3duUHJvcGVydHldXSAoIFAsIERlc2MgKQogCkBAIC01
MSw4ICs1MSw4IEBAIFJldHVybiBOb3JtYWxDb21wbGV0aW9uKHVuZGVmaW5lZCkuCiAKICAgYXNz
ZXJ0LnNhbWVWYWx1ZSgKICAgICBSZWZsZWN0LmRlZmluZVByb3BlcnR5KHRhLCAwLCBkZXNjKSwK
LSAgICBmYWxzZSwKLSAgICAnUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YSwgMCwge3ZhbHVlOiB7
dmFsdWVPZigpIHskREVUQUNIQlVGRkVSKHRhLmJ1ZmZlcik7IHJldHVybiA0Mm47fX19KSBtdXN0
IHJldHVybiBmYWxzZScKKyAgICB0cnVlLAorICAgICdSZWZsZWN0LmRlZmluZVByb3BlcnR5KHRh
LCAwLCB7dmFsdWU6IHt2YWx1ZU9mKCkgeyRERVRBQ0hCVUZGRVIodGEuYnVmZmVyKTsgcmV0dXJu
IDQybjt9fX0pIG11c3QgcmV0dXJuIHRydWUnCiAgICk7CiAKICAgYXNzZXJ0LnNhbWVWYWx1ZSh0
YVswXSwgdW5kZWZpbmVkLCAnVGhlIHZhbHVlIG9mIHRhWzBdIGlzIGV4cGVjdGVkIHRvIGVxdWFs
IGB1bmRlZmluZWRgJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvZGV0
YWNoZWQtYnVmZmVyLXJlYWxtLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2RldGFjaGVk
LWJ1ZmZlci1yZWFsbS5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTVkZDU2M2Vi
YzEwN2NjMzM0ODlmMDY5NWE5Y2JiMGY0OWZlZDkyNi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkvZGV0YWNoZWQt
YnVmZmVyLXJlYWxtLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNTggKzAsMCBAQAotLy8gQ29weXJp
Z2h0IChDKSAyMDE2IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0vLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCi0vKi0tLQotZXNpZDogc2VjLWludGVnZXItaW5kZXhlZC1leG90aWMt
b2JqZWN0cy1kZWZpbmVvd25wcm9wZXJ0eS1wLWRlc2MKLWRlc2NyaXB0aW9uOiA+Ci0gIFJldHVy
bnMgZmFsc2UgaWYgdGhpcyBoYXMgdmFsaWQgbnVtZXJpYyBpbmRleCBhbmQgYSBkZXRhY2hlZCBi
dWZmZXIKLSAgKGhvbm9yaW5nIHRoZSBSZWFsbSBvZiB0aGUgY3VycmVudCBleGVjdXRpb24gY29u
dGV4dCkKLWluZm86IHwKLSAgOS40LjUuMyBbW0RlZmluZU93blByb3BlcnR5XV0gKCBQLCBEZXNj
KQotICAuLi4KLSAgMy4gSWYgVHlwZShQKSBpcyBTdHJpbmcsIHRoZW4KLSAgICBhLiBMZXQgbnVt
ZXJpY0luZGV4IGJlICEgQ2Fub25pY2FsTnVtZXJpY0luZGV4U3RyaW5nKFApLgotICAgIGIuIElm
IG51bWVyaWNJbmRleCBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCi0gICAgICAuLi4KLSAgICAgIHhp
LiBJZiBEZXNjIGhhcyBhIFtbVmFsdWVdXSBmaWVsZCwgdGhlbgotICAgICAgICAxLiBMZXQgdmFs
dWUgYmUgRGVzYy5bW1ZhbHVlXV0uCi0gICAgICAgIDIuIFJldHVybiA/IEludGVnZXJJbmRleGVk
RWxlbWVudFNldChPLCBpbnRJbmRleCwgdmFsdWUpLgotICAuLi4KLQotICBJbnRlZ2VySW5kZXhl
ZEVsZW1lbnRTZXQgKCBPLCBpbmRleCwgdmFsdWUgKQotCi0gIEFzc2VydDogTyBpcyBhbiBJbnRl
Z2VyLUluZGV4ZWQgZXhvdGljIG9iamVjdC4KLSAgSWYgTy5bW0NvbnRlbnRUeXBlXV0gaXMgQmln
SW50LCBsZXQgbnVtVmFsdWUgYmUgPyBUb0JpZ0ludCh2YWx1ZSkuCi0gIE90aGVyd2lzZSwgbGV0
IG51bVZhbHVlIGJlID8gVG9OdW1iZXIodmFsdWUpLgotICBMZXQgYnVmZmVyIGJlIE8uW1tWaWV3
ZWRBcnJheUJ1ZmZlcl1dLgotICBJZiBJc0RldGFjaGVkQnVmZmVyKGJ1ZmZlcikgaXMgZmFsc2Ug
YW5kICEgSXNWYWxpZEludGVnZXJJbmRleChPLCBpbmRleCkgaXMgdHJ1ZSwgdGhlbgotICAgIExl
dCBvZmZzZXQgYmUgTy5bW0J5dGVPZmZzZXRdXS4KLSAgICBMZXQgYXJyYXlUeXBlTmFtZSBiZSB0
aGUgU3RyaW5nIHZhbHVlIG9mIE8uW1tUeXBlZEFycmF5TmFtZV1dLgotICAgIExldCBlbGVtZW50
U2l6ZSBiZSB0aGUgRWxlbWVudCBTaXplIHZhbHVlIHNwZWNpZmllZCBpbiBUYWJsZSA2MiBmb3Ig
YXJyYXlUeXBlTmFtZS4KLSAgICBMZXQgaW5kZXhlZFBvc2l0aW9uIGJlICjihJ0oaW5kZXgpIMOX
IGVsZW1lbnRTaXplKSArIG9mZnNldC4KLSAgICBMZXQgZWxlbWVudFR5cGUgYmUgdGhlIEVsZW1l
bnQgVHlwZSB2YWx1ZSBpbiBUYWJsZSA2MiBmb3IgYXJyYXlUeXBlTmFtZS4KLSAgICBQZXJmb3Jt
IFNldFZhbHVlSW5CdWZmZXIoYnVmZmVyLCBpbmRleGVkUG9zaXRpb24sIGVsZW1lbnRUeXBlLCBu
dW1WYWx1ZSwgdHJ1ZSwgVW5vcmRlcmVkKS4KLSAgUmV0dXJuIE5vcm1hbENvbXBsZXRpb24odW5k
ZWZpbmVkKS4KLQotaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qcywgZGV0YWNoQXJyYXlCdWZm
ZXIuanNdCi1mZWF0dXJlczogW2FsaWduLWRldGFjaGVkLWJ1ZmZlci1zZW1hbnRpY3Mtd2l0aC13
ZWItcmVhbGl0eSwgY3Jvc3MtcmVhbG0sIFJlZmxlY3QsIFR5cGVkQXJyYXldCi0tLS0qLwotCi12
YXIgb3RoZXIgPSAkMjYyLmNyZWF0ZVJlYWxtKCkuZ2xvYmFsOwotdmFyIGRlc2MgPSB7Ci0gIHZh
bHVlOiAwLAotICBjb25maWd1cmFibGU6IHRydWUsCi0gIGVudW1lcmFibGU6IHRydWUsCi0gIHdy
aXRhYmxlOiB0cnVlCi19OwotCi10ZXN0V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rp
b24oVEEpIHsKLSAgdmFyIE90aGVyVEEgPSBvdGhlcltUQS5uYW1lXTsKLSAgdmFyIHNhbXBsZSA9
IG5ldyBPdGhlclRBKDEpOwotCi0gICRERVRBQ0hCVUZGRVIoc2FtcGxlLmJ1ZmZlcik7Ci0KLSAg
YXNzZXJ0LnNhbWVWYWx1ZSgKLSAgICBSZWZsZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgJzAn
LCBkZXNjKSwKLSAgICBmYWxzZSwKLSAgICAnUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUs
ICIwIiwge3ZhbHVlOiAwLCBjb25maWd1cmFibGU6IHRydWUsIGVudW1lcmFibGU6IHRydWUsIHdy
aXRhYmxlOiB0cnVlfSkgbXVzdCByZXR1cm4gZmFsc2UnCi0gICk7Ci19KTsKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2lu
dGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRhY2hlZC1idWZmZXItdGhyb3dzLXJlYWxtLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
aW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MtcmVhbG0u
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMzgyNTNiOGNmNjIyYWNjODg1N2EyMTdjMDcyY2U4YzNiMGIwNTA5NAot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9kZXRhY2hlZC1idWZm
ZXItdGhyb3dzLXJlYWxtLmpzCkBAIC0wLDAgKzEsNTIgQEAKKy8vIENvcHlyaWdodCAoQykgMjAx
NiB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBj
b2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLyotLS0KK2VzaWQ6IHNlYy1pbnRlZ2VyLWluZGV4ZWQtZXhvdGljLW9iamVjdHMtZGVm
aW5lb3ducHJvcGVydHktcC1kZXNjCitkZXNjcmlwdGlvbjogPgorICBUaHJvd3MgVHlwZUVycm9y
IGZvciB2YWxpZCBkZXNjcmlwdG9yICYgY2Fub25pY2FsIG51bWVyaWMgc3RyaW5nIGlmIGJ1ZmZl
ciBpcyBkZXRhY2hlZC4KKyAgKGhvbm9yaW5nIHRoZSBSZWFsbSBvZiB0aGUgY3VycmVudCBleGVj
dXRpb24gY29udGV4dCkKK2luZm86IHwKKyAgW1tEZWZpbmVPd25Qcm9wZXJ0eV1dICggUCwgRGVz
YyApCisKKyAgWy4uLl0KKyAgMy4gSWYgVHlwZShQKSBpcyBTdHJpbmcsIHRoZW4KKyAgICBhLiBM
ZXQgbnVtZXJpY0luZGV4IGJlICEgQ2Fub25pY2FsTnVtZXJpY0luZGV4U3RyaW5nKFApLgorICAg
IGIuIElmIG51bWVyaWNJbmRleCBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgICBpLiBJZiAh
IElzVmFsaWRJbnRlZ2VySW5kZXgoTywgbnVtZXJpY0luZGV4KSBpcyBmYWxzZSwgcmV0dXJuIGZh
bHNlLgorCisgIElzVmFsaWRJbnRlZ2VySW5kZXggKCBPLCBpbmRleCApCisKKyAgWy4uLl0KKyAg
Mi4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPLltbVmlld2VkQXJyYXlCdWZmZXJdXSkgaXMgdHJ1ZSwg
cmV0dXJuIGZhbHNlLgoraW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qcywgZGV0YWNoQXJyYXlC
dWZmZXIuanNdCitmZWF0dXJlczogW2FsaWduLWRldGFjaGVkLWJ1ZmZlci1zZW1hbnRpY3Mtd2l0
aC13ZWItcmVhbGl0eSwgVHlwZWRBcnJheV0KKy0tLSovCisKK3ZhciBvdGhlciA9ICQyNjIuY3Jl
YXRlUmVhbG0oKS5nbG9iYWw7CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhmdW5j
dGlvbihUQSkgeworICB2YXIgT3RoZXJUQSA9IG90aGVyW1RBLm5hbWVdOworICB2YXIgc2FtcGxl
ID0gbmV3IE90aGVyVEEoWzBdKTsKKyAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9yKHNhbXBsZSwgIjAiKTsKKyAgJERFVEFDSEJVRkZFUihzYW1wbGUuYnVmZmVyKTsK
KworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRl
ZmluZVByb3BlcnR5KHNhbXBsZSwgIjAiLCBkZXNjKTsKKyAgfSk7CisKKyAgYXNzZXJ0LnRocm93
cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1w
bGUsICIxIiwgZGVzYyk7CisgIH0pOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5j
dGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiLTEiLCBkZXNjKTsK
KyAgfSk7CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9i
amVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUsICIxLjUiLCBkZXNjKTsKKyAgfSk7CisKKyAgYXNz
ZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9w
ZXJ0eShzYW1wbGUsICItMCIsIGRlc2MpOworICB9KTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxz
L0RlZmluZU93blByb3BlcnR5L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVm
aW5lT3duUHJvcGVydHkvZGV0YWNoZWQtYnVmZmVyLXRocm93cy5qcwpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNWYx
MjdjZDc2MzcxMGJlNDEzNGRkMjZkMTk2MGFhOWU2ZGVjMDExCi0tLSAvZGV2L251bGwKKysrIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50
ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2RldGFjaGVkLWJ1ZmZlci10aHJvd3MuanMKQEAgLTAs
MCArMSw0OCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIEFsZXhleSBTaHZheWthLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1pbnRlZ2VyLWlu
ZGV4ZWQtZXhvdGljLW9iamVjdHMtZGVmaW5lb3ducHJvcGVydHktcC1kZXNjCitkZXNjcmlwdGlv
bjogPgorICBUaHJvd3MgVHlwZUVycm9yIGZvciB2YWxpZCBkZXNjcmlwdG9yICYgY2Fub25pY2Fs
IG51bWVyaWMgc3RyaW5nIGlmIGJ1ZmZlciBpcyBkZXRhY2hlZC4KK2luZm86IHwKKyAgW1tEZWZp
bmVPd25Qcm9wZXJ0eV1dICggUCwgRGVzYyApCisKKyAgWy4uLl0KKyAgMy4gSWYgVHlwZShQKSBp
cyBTdHJpbmcsIHRoZW4KKyAgICBhLiBMZXQgbnVtZXJpY0luZGV4IGJlICEgQ2Fub25pY2FsTnVt
ZXJpY0luZGV4U3RyaW5nKFApLgorICAgIGIuIElmIG51bWVyaWNJbmRleCBpcyBub3QgdW5kZWZp
bmVkLCB0aGVuCisgICAgICBpLiBJZiAhIElzVmFsaWRJbnRlZ2VySW5kZXgoTywgbnVtZXJpY0lu
ZGV4KSBpcyBmYWxzZSwgcmV0dXJuIGZhbHNlLgorCisgIElzVmFsaWRJbnRlZ2VySW5kZXggKCBP
LCBpbmRleCApCisKKyAgWy4uLl0KKyAgMi4gSWYgSXNEZXRhY2hlZEJ1ZmZlcihPLltbVmlld2Vk
QXJyYXlCdWZmZXJdXSkgaXMgdHJ1ZSwgcmV0dXJuIGZhbHNlLgoraW5jbHVkZXM6IFt0ZXN0VHlw
ZWRBcnJheS5qcywgZGV0YWNoQXJyYXlCdWZmZXIuanNdCitmZWF0dXJlczogW2FsaWduLWRldGFj
aGVkLWJ1ZmZlci1zZW1hbnRpY3Mtd2l0aC13ZWItcmVhbGl0eSwgVHlwZWRBcnJheV0KKy0tLSov
CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgeworICB2YXIg
c2FtcGxlID0gbmV3IFRBKFswXSk7CisgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihzYW1wbGUsICIwIik7CisgICRERVRBQ0hCVUZGRVIoc2FtcGxlLmJ1ZmZlcik7
CisKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5k
ZWZpbmVQcm9wZXJ0eShzYW1wbGUsICIwIiwgZGVzYyk7CisgIH0pOworCisgIGFzc2VydC50aHJv
d3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2Ft
cGxlLCAiMSIsIGRlc2MpOworICB9KTsKKworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVu
Y3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgIi0xIiwgZGVzYyk7
CisgIH0pOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBP
YmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMS41IiwgZGVzYyk7CisgIH0pOworCisgIGFz
c2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJv
cGVydHkoc2FtcGxlLCAiLTAiLCBkZXNjKTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFs
cy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbm90LW51bWVyaWMtaW5kZXgtdGhyb3dzLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50
ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2tleS1pcy1ub3QtbnVtZXJpYy1pbmRleC10aHJvd3Mu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMDYwNTY1ZDM5NTQ2OThmOGQyNDhkODc5MDA4OWRhMWZiYmE5NjgwZQot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFy
cmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbm90LW51
bWVyaWMtaW5kZXgtdGhyb3dzLmpzCkBAIC0wLDAgKzEsNDUgQEAKKy8vIENvcHlyaWdodCAoQykg
MjAyMSBBbGV4ZXkgU2h2YXlrYS4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBp
cyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4K
Ky8qLS0tCitlc2lkOiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmplY3RzLWRlZmluZW93
bnByb3BlcnR5LXAtZGVzYworZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIFR5cGVFcnJvciBmb3Ig
dmFsaWQgZGVzY3JpcHRvciAmIGNhbm9uaWNhbCBudW1lcmljIHN0cmluZyB0aGF0IGlzIGludmFs
aWQgaW5kZXguCitpbmZvOiB8CisgIFtbRGVmaW5lT3duUHJvcGVydHldXSAoIFAsIERlc2MgKQor
CisgIFsuLi5dCisgIDMuIElmIFR5cGUoUCkgaXMgU3RyaW5nLCB0aGVuCisgICAgYS4gTGV0IG51
bWVyaWNJbmRleCBiZSAhIENhbm9uaWNhbE51bWVyaWNJbmRleFN0cmluZyhQKS4KKyAgICBiLiBJ
ZiBudW1lcmljSW5kZXggaXMgbm90IHVuZGVmaW5lZCwgdGhlbgorICAgICAgaS4gSWYgISBJc1Zh
bGlkSW50ZWdlckluZGV4KE8sIG51bWVyaWNJbmRleCkgaXMgZmFsc2UsIHJldHVybiBmYWxzZS4K
KworICBJc1ZhbGlkSW50ZWdlckluZGV4ICggTywgaW5kZXggKQorCisgIFsuLi5dCisgIDMuIElm
ICEgSXNJbnRlZ3JhbE51bWJlcihpbmRleCkgaXMgZmFsc2UsIHJldHVybiBmYWxzZS4KKyAgNC4g
SWYgaW5kZXggaXMgLTDwnZS9LCByZXR1cm4gZmFsc2UuCisgIDUuIElmIOKEnShpbmRleCkgPCAw
IG9yIOKEnShpbmRleCkg4omlIE8uW1tBcnJheUxlbmd0aF1dLCByZXR1cm4gZmFsc2UuCitpbmNs
dWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFthbGlnbi1kZXRhY2hlZC1idWZm
ZXItc2VtYW50aWNzLXdpdGgtd2ViLXJlYWxpdHksIFR5cGVkQXJyYXldCistLS0qLworCit0ZXN0
V2l0aFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIHNhbXBsZSA9
IG5ldyBUQShbMF0pOworICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3Ioc2FtcGxlLCAiMCIpOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigp
IHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMSIsIGRlc2MpOworICB9KTsK
KworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRl
ZmluZVByb3BlcnR5KHNhbXBsZSwgIi0xIiwgZGVzYyk7CisgIH0pOworCisgIGFzc2VydC50aHJv
d3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2Ft
cGxlLCAiMS41IiwgZGVzYyk7CisgIH0pOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBm
dW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiLTAiLCBkZXNj
KTsKKyAgfSk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlu
cy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXkt
aXMtbnVtZXJpY2luZGV4LWFjY2Vzc29yLWRlc2MtdGhyb3dzLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93
blByb3BlcnR5L2tleS1pcy1udW1lcmljaW5kZXgtYWNjZXNzb3ItZGVzYy10aHJvd3MuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uM2YwZTQ1NzNhZWI3YmYyNTE5ODEyYTkwYWQwNjQ2OTI1MjcwYTUyMQotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29u
c3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4
LWFjY2Vzc29yLWRlc2MtdGhyb3dzLmpzCkBAIC0wLDAgKzEsNDQgQEAKKy8vIENvcHlyaWdodCAo
QykgMjAyMSBBbGV4ZXkgU2h2YXlrYS4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8qLS0tCitlc2lkOiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmplY3RzLWRlZmlu
ZW93bnByb3BlcnR5LXAtZGVzYworZGVzY3JpcHRpb246ID4KKyAgVGhyb3dzIFR5cGVFcnJvciBm
b3IgdmFsaWQgaW5kZXggJiBhY2Nlc3NvciBkZXNjcmlwdG9yLgoraW5mbzogfAorICBbW0RlZmlu
ZU93blByb3BlcnR5XV0gKCBQLCBEZXNjICkKKworICBbLi4uXQorICAzLiBJZiBUeXBlKFApIGlz
IFN0cmluZywgdGhlbgorICAgIGEuIExldCBudW1lcmljSW5kZXggYmUgISBDYW5vbmljYWxOdW1l
cmljSW5kZXhTdHJpbmcoUCkuCisgICAgYi4gSWYgbnVtZXJpY0luZGV4IGlzIG5vdCB1bmRlZmlu
ZWQsIHRoZW4KKyAgICAgIFsuLi5dCisgICAgICBpdi4gSWYgSXNBY2Nlc3NvckRlc2NyaXB0b3Io
RGVzYykgaXMgdHJ1ZSwgcmV0dXJuIGZhbHNlLgoraW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5q
c10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheV0KKy0tLSovCisKK3Rlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgeworICB2YXIgc2FtcGxlID0gbmV3IFRBKFswXSk7CisK
KyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eShzYW1wbGUsICIwIiwgeworICAgICAgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJu
IDQyOyB9LAorICAgIH0pOworICB9LCAiZ2V0IGFjY2Vzc29yIik7CisgIGFzc2VydC5zYW1lVmFs
dWUoc2FtcGxlWzBdLCAwLCAiZ2V0IGFjY2Vzc29yIC0gc2lkZSBlZmZlY3QgY2hlY2siKTsKKwor
ICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmlu
ZVByb3BlcnR5KHNhbXBsZSwgIjAiLCB7CisgICAgICBzZXQ6IGZ1bmN0aW9uKF92KSB7fSwKKyAg
ICB9KTsKKyAgfSwgInNldCBhY2Nlc3NvciIpOworICBhc3NlcnQuc2FtZVZhbHVlKHNhbXBsZVsw
XSwgMCwgInNldCBhY2Nlc3NvciAtIHNpZGUgZWZmZWN0IGNoZWNrIik7CisKKyAgYXNzZXJ0LnRo
cm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShz
YW1wbGUsICIwIiwgeworICAgICAgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIDQyOyB9LAorICAg
ICAgc2V0OiBmdW5jdGlvbihfdikge30sCisgICAgfSk7CisgIH0sICJnZXQgYW5kIHNldCBhY2Nl
c3NvcnMiKTsKKyAgYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGVbMF0sIDAsICJnZXQgYW5kIHNldCBh
Y2Nlc3NvcnMgLSBzaWRlIGVmZmVjdCBjaGVjayIpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMv
RGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLWNvbmZpZ3VyYWJsZS5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2MtY29u
ZmlndXJhYmxlLmpzCmluZGV4IGVkNTZkNjg3OWI5MzNlMGRhOWUyZTBmYzVlYWMwNWIxNzcxZmQ0
ZDMuLmYzNzliNWM5ZDVmYjc5NWUzOTQ2ZWIyODk2YTkxNGEyZmQzZDMxNTEgMTAwNjQ0Ci0tLSBh
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2lu
dGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2MtY29uZmln
dXJhYmxlLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5
Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2lu
ZGV4LWRlc2MtY29uZmlndXJhYmxlLmpzCkBAIC0xMCw5ICsxMCw2IEBACiAgIDMuIElmIFR5cGUo
UCkgaXMgU3RyaW5nLCB0aGVuCiAgICAgYS4gTGV0IG51bWVyaWNJbmRleCBiZSAhIENhbm9uaWNh
bE51bWVyaWNJbmRleFN0cmluZyhQKS4KICAgICBiLiBJZiBudW1lcmljSW5kZXggaXMgbm90IHVu
ZGVmaW5lZCwgdGhlbgotICAgICAgLi4uCi0gICAgICBJZiBEZXNjIGhhcyBhIFtbQ29uZmlndXJh
YmxlXV0gZmllbGQgYW5kIGlmIERlc2MuW1tDb25maWd1cmFibGVdXSBpcwotICAgICAgdHJ1ZSwg
cmV0dXJuIGZhbHNlLgogICAgICAgLi4uCiAgICAgICBJZiBEZXNjIGhhcyBhIFtbVmFsdWVdXSBm
aWVsZCwgdGhlbgogICAgICAgICBMZXQgdmFsdWUgYmUgRGVzYy5bW1ZhbHVlXV0uCmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5v
dC1jb25maWd1cmFibGUtdGhyb3dzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5z
L1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2tleS1p
cy1udW1lcmljaW5kZXgtZGVzYy1ub3QtY29uZmlndXJhYmxlLXRocm93cy5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44ZjQzNmJjM2U1ZWMxNDk2ZjA4NTY4YjAxMTBkMTgwYWE4Yjk4MjNiCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3Rv
cnMvaW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1u
b3QtY29uZmlndXJhYmxlLXRocm93cy5qcwpAQCAtMCwwICsxLDM5IEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgQWxleGV5IFNodmF5a2EuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisvKi0tLQorZXNpZDogc2VjLWludGVnZXItaW5kZXhlZC1leG90aWMtb2JqZWN0cy1kZWZp
bmVvd25wcm9wZXJ0eS1wLWRlc2MKK2Rlc2NyaXB0aW9uOiA+CisgIFRocm93cyBUeXBlRXJyb3Ig
Zm9yIHZhbGlkIGluZGV4ICYgbm9uLWNvbmZpZ3VyYWJsZSBkZXNjcmlwdG9yLgoraW5mbzogfAor
ICBbW0RlZmluZU93blByb3BlcnR5XV0gKCBQLCBEZXNjICkKKworICBbLi4uXQorICAzLiBJZiBU
eXBlKFApIGlzIFN0cmluZywgdGhlbgorICAgIGEuIExldCBudW1lcmljSW5kZXggYmUgISBDYW5v
bmljYWxOdW1lcmljSW5kZXhTdHJpbmcoUCkuCisgICAgYi4gSWYgbnVtZXJpY0luZGV4IGlzIG5v
dCB1bmRlZmluZWQsIHRoZW4KKyAgICAgIFsuLi5dCisgICAgICBpaS4gSWYgRGVzYyBoYXMgYSBb
W0NvbmZpZ3VyYWJsZV1dIGZpZWxkIGFuZCBpZiBEZXNjLltbQ29uZmlndXJhYmxlXV0gaXMgZmFs
c2UsIHJldHVybiBmYWxzZS4KK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJl
czogW2FsaWduLWRldGFjaGVkLWJ1ZmZlci1zZW1hbnRpY3Mtd2l0aC13ZWItcmVhbGl0eSwgVHlw
ZWRBcnJheV0KKy0tLSovCisKK3Rlc3RXaXRoVHlwZWRBcnJheUNvbnN0cnVjdG9ycyhmdW5jdGlv
bihUQSkgeworICB2YXIgc2FtcGxlID0gbmV3IFRBKFswXSk7CisKKyAgYXNzZXJ0LnRocm93cyhU
eXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzYW1wbGUs
ICIwIiwgeworICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSwKKyAgICB9KTsKKyAgfSwgInBhcnRp
YWwgZGVzY3JpcHRvciIpOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigp
IHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMCIsIHsKKyAgICAgIHZhbHVl
OiA0MiwKKyAgICAgIHdyaXRhYmxlOiB0cnVlLAorICAgICAgZW51bWVyYWJsZTogdHJ1ZSwKKyAg
ICAgIGNvbmZpZ3VyYWJsZTogZmFsc2UsCisgICAgfSk7CisgIH0sICJjb21wbGV0ZSBkZXNjcmlw
dG9yIik7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGVbMF0sIDAsICJzaWRlIGVmZmVjdCBj
aGVjayIpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMv
VHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkva2V5LWlz
LW51bWVyaWNpbmRleC1kZXNjLW5vdC1lbnVtZXJhYmxlLXRocm93cy5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZp
bmVPd25Qcm9wZXJ0eS9rZXktaXMtbnVtZXJpY2luZGV4LWRlc2Mtbm90LWVudW1lcmFibGUtdGhy
b3dzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmQ1YzFkYzNjYzgzMTViMjNhMTUwNDM2ZjA5MzBmYmE4MTUzYTJm
MTMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlw
ZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVydHkva2V5LWlzLW51
bWVyaWNpbmRleC1kZXNjLW5vdC1lbnVtZXJhYmxlLXRocm93cy5qcwpAQCAtMCwwICsxLDM5IEBA
CisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgQWxleGV5IFNodmF5a2EuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWludGVnZXItaW5kZXhlZC1leG90
aWMtb2JqZWN0cy1kZWZpbmVvd25wcm9wZXJ0eS1wLWRlc2MKK2Rlc2NyaXB0aW9uOiA+CisgIFRo
cm93cyBUeXBlRXJyb3IgZm9yIHZhbGlkIGluZGV4ICYgbm9uLWVudW1lcmFibGUgZGVzY3JpcHRv
ci4KK2luZm86IHwKKyAgW1tEZWZpbmVPd25Qcm9wZXJ0eV1dICggUCwgRGVzYyApCisKKyAgWy4u
Ll0KKyAgMy4gSWYgVHlwZShQKSBpcyBTdHJpbmcsIHRoZW4KKyAgICBhLiBMZXQgbnVtZXJpY0lu
ZGV4IGJlICEgQ2Fub25pY2FsTnVtZXJpY0luZGV4U3RyaW5nKFApLgorICAgIGIuIElmIG51bWVy
aWNJbmRleCBpcyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgICBbLi4uXQorICAgICAgaWlpLiBJ
ZiBEZXNjIGhhcyBhbiBbW0VudW1lcmFibGVdXSBmaWVsZCBhbmQgaWYgRGVzYy5bW0VudW1lcmFi
bGVdXSBpcyBmYWxzZSwgcmV0dXJuIGZhbHNlLgoraW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5q
c10KK2ZlYXR1cmVzOiBbVHlwZWRBcnJheV0KKy0tLSovCisKK3Rlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgeworICB2YXIgc2FtcGxlID0gbmV3IFRBKFswXSk7CisK
KyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkgeworICAgIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eShzYW1wbGUsICIwIiwgeworICAgICAgZW51bWVyYWJsZTogZmFsc2UsCisgICAg
fSk7CisgIH0sICJwYXJ0aWFsIGRlc2NyaXB0b3IiKTsKKworICBhc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgZnVuY3Rpb24oKSB7CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNhbXBsZSwgIjAi
LCB7CisgICAgICB2YWx1ZTogNDIsCisgICAgICB3cml0YWJsZTogdHJ1ZSwKKyAgICAgIGVudW1l
cmFibGU6IGZhbHNlLAorICAgICAgY29uZmlndXJhYmxlOiB0cnVlLAorICAgIH0pOworICB9LCAi
Y29tcGxldGUgZGVzY3JpcHRvciIpOworCisgIGFzc2VydC5zYW1lVmFsdWUoc2FtcGxlWzBdLCAw
LCAic2lkZSBlZmZlY3QgY2hlY2siKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmluZU93
blByb3BlcnR5L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3Qtd3JpdGFibGUtdGhyb3dzLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMv
aW50ZXJuYWxzL0RlZmluZU93blByb3BlcnR5L2tleS1pcy1udW1lcmljaW5kZXgtZGVzYy1ub3Qt
d3JpdGFibGUtdGhyb3dzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2ODEzNjQ1Y2NmNjg1NjRhMGU2YjhiMmNi
YWUwMmU1ZTBhNTVkODcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVy
dHkva2V5LWlzLW51bWVyaWNpbmRleC1kZXNjLW5vdC13cml0YWJsZS10aHJvd3MuanMKQEAgLTAs
MCArMSwzOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIEFsZXhleSBTaHZheWthLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1pbnRlZ2VyLWlu
ZGV4ZWQtZXhvdGljLW9iamVjdHMtZGVmaW5lb3ducHJvcGVydHktcC1kZXNjCitkZXNjcmlwdGlv
bjogPgorICBUaHJvd3MgVHlwZUVycm9yIGZvciB2YWxpZCBpbmRleCAmIG5vbi13cml0YWJsZSBk
ZXNjcmlwdG9yLgoraW5mbzogfAorICBbW0RlZmluZU93blByb3BlcnR5XV0gKCBQLCBEZXNjICkK
KworICBbLi4uXQorICAzLiBJZiBUeXBlKFApIGlzIFN0cmluZywgdGhlbgorICAgIGEuIExldCBu
dW1lcmljSW5kZXggYmUgISBDYW5vbmljYWxOdW1lcmljSW5kZXhTdHJpbmcoUCkuCisgICAgYi4g
SWYgbnVtZXJpY0luZGV4IGlzIG5vdCB1bmRlZmluZWQsIHRoZW4KKyAgICAgIFsuLi5dCisgICAg
ICB2LiBJZiBEZXNjIGhhcyBhIFtbV3JpdGFibGVdXSBmaWVsZCBhbmQgaWYgRGVzYy5bW1dyaXRh
YmxlXV0gaXMgZmFsc2UsIHJldHVybiBmYWxzZS4KK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXku
anNdCitmZWF0dXJlczogW1R5cGVkQXJyYXldCistLS0qLworCit0ZXN0V2l0aFR5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKKyAgdmFyIHNhbXBsZSA9IG5ldyBUQShbMF0pOwor
CisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVm
aW5lUHJvcGVydHkoc2FtcGxlLCAiMCIsIHsKKyAgICAgIHdyaXRhYmxlOiBmYWxzZSwKKyAgICB9
KTsKKyAgfSwgInBhcnRpYWwgZGVzY3JpcHRvciIpOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVy
cm9yLCBmdW5jdGlvbigpIHsKKyAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2FtcGxlLCAiMCIs
IHsKKyAgICAgIHZhbHVlOiA0MiwKKyAgICAgIHdyaXRhYmxlOiBmYWxzZSwKKyAgICAgIGVudW1l
cmFibGU6IHRydWUsCisgICAgICBjb25maWd1cmFibGU6IHRydWUsCisgICAgfSk7CisgIH0sICJj
b21wbGV0ZSBkZXNjcmlwdG9yIik7CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShzYW1wbGVbMF0sIDAs
ICJzaWRlIGVmZmVjdCBjaGVjayIpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3du
UHJvcGVydHkvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVyLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlZmlu
ZU93blByb3BlcnR5L3RvbnVtYmVyLXZhbHVlLWRldGFjaGVkLWJ1ZmZlci5qcwppbmRleCAxOWQ5
ODlkNTAwNTMzMDk4ZDgzMDY5ZTZhZGUyYzFhYWQ5Y2U0ZDZlLi4wNjEyNzI4MzQ0YjZmZjZhYzcz
ZjEzMDQ4ZDFhZmRlNzRkZTZhYmE4IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVmaW5lT3duUHJvcGVy
dHkvdG9udW1iZXItdmFsdWUtZGV0YWNoZWQtYnVmZmVyLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9EZWZpbmVP
d25Qcm9wZXJ0eS90b251bWJlci12YWx1ZS1kZXRhY2hlZC1idWZmZXIuanMKQEAgLTYsNyArNiw3
IEBACiBkZXNjcmlwdGlvbjogPgogICAgIERlZmluaW5nIGEgdHlwZWQgYXJyYXkgZWxlbWVudCB0
byBhIHZhbHVlIHRoYXQsIHdoZW4gY29udmVydGVkIHRvIHRoZSB0eXBlZAogICAgIGFycmF5IGVs
ZW1lbnQgdHlwZSwgZGV0YWNoZXMgdGhlIHR5cGVkIGFycmF5J3MgdW5kZXJseWluZyBidWZmZXIs
IHNob3VsZAotICAgIHJldHVybiBmYWxzZSBhbmQgbm90IG1vZGlmeSB0aGUgdHlwZWQgYXJyYXku
CisgICAgcmV0dXJuIHRydWUgYW5kIG5vdCBtb2RpZnkgdGhlIHR5cGVkIGFycmF5LgogaW5mbzog
fAogICA5LjQuNS4zIFtbRGVmaW5lT3duUHJvcGVydHldXSAoIFAsIERlc2MgKQogCkBAIC01NCw4
ICs1NCw4IEBAIFJldHVybiBOb3JtYWxDb21wbGV0aW9uKHVuZGVmaW5lZCkuCiAKICAgYXNzZXJ0
LnNhbWVWYWx1ZSgKICAgICBSZWZsZWN0LmRlZmluZVByb3BlcnR5KHRhLCAwLCBkZXNjKSwKLSAg
ICBmYWxzZSwKLSAgICAnUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0YSwgMCwge3ZhbHVlOiB7dmFs
dWVPZigpIHskREVUQUNIQlVGRkVSKHRhLmJ1ZmZlcik7IHJldHVybiA0Mjt9fX0gKSBtdXN0IHJl
dHVybiBmYWxzZScKKyAgICB0cnVlLAorICAgICdSZWZsZWN0LmRlZmluZVByb3BlcnR5KHRhLCAw
LCB7dmFsdWU6IHt2YWx1ZU9mKCkgeyRERVRBQ0hCVUZGRVIodGEuYnVmZmVyKTsgcmV0dXJuIDQy
O319fSApIG11c3QgcmV0dXJuIHRydWUnCiAgICk7CiAgIGFzc2VydC5zYW1lVmFsdWUodGFbMF0s
IHVuZGVmaW5lZCwgJ1RoZSB2YWx1ZSBvZiB0YVswXSBpcyBleHBlY3RlZCB0byBlcXVhbCBgdW5k
ZWZpbmVkYCcpOwogfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1p
bnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvRGVsZXRlL2tleS1pcy1zeW1ib2wu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9y
cy9pbnRlcm5hbHMvRGVsZXRlL2tleS1pcy1zeW1ib2wuanMKaW5kZXggMzVkNGIzNmFiMDc1YTlm
OGI2MDAxM2NjMGQ4NmMxMWYxYTY2MGNiYi4uZDA1ODcwZjkzOWMxOTc4NTYyNzE3NjEwNjAwN2M5
MWNiMmZkNTAyYiAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5
cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL0RlbGV0ZS9rZXktaXMtc3ltYm9sLmpzCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3Jz
L2ludGVybmFscy9EZWxldGUva2V5LWlzLXN5bWJvbC5qcwpAQCAtMTUsNyArMTUsNyBAQCBJZiBU
eXBlKFApIGlzIFN0cmluZywgdGhlbgogICBSZXR1cm4gPyBPcmRpbmFyeURlbGV0ZShPLCBQKS4K
IAogaW5jbHVkZXM6IFt0ZXN0VHlwZWRBcnJheS5qc10KLWZlYXR1cmVzOiBbYWxpZ24tZGV0YWNo
ZWQtYnVmZmVyLXNlbWFudGljcy13aXRoLXdlYi1yZWFsaXR5LCBTeW1ib2wsIFN5bWJvbCwgVHlw
ZWRBcnJheV0KK2ZlYXR1cmVzOiBbYWxpZ24tZGV0YWNoZWQtYnVmZmVyLXNlbWFudGljcy13aXRo
LXdlYi1yZWFsaXR5LCBTeW1ib2wsIFR5cGVkQXJyYXldCiAtLS0qLwogCiB0ZXN0V2l0aFR5cGVk
QXJyYXlDb25zdHJ1Y3RvcnMoZnVuY3Rpb24oVEEpIHsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9IYXNQ
cm9wZXJ0eS9yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvSGFzUHJvcGVy
dHkvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRkMDIwMGQyNzNj
OWE3ZTFhZTg4ZmRlNjA1ZTAyNGY3Nzg5NWY2YzkKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMv
SGFzUHJvcGVydHkvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1hdXRvLmpzCkBAIC0wLDAgKzEsNTQg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1pbnRlZ2VyLWlu
ZGV4ZWQtZXhvdGljLW9iamVjdHMtaGFzcHJvcGVydHktcAorZGVzY3JpcHRpb246IHJldHVybmVk
IGtleXMgcmVmbGVjdCByZXNpemVkIEFycmF5QnVmZmVyIGZvciBhIGR5bmFtaWNhbGx5LXNpemVk
IFR5cGVkQXJyYXkKK2luY2x1ZGVzOiBbdGVzdFR5cGVkQXJyYXkuanNdCitmZWF0dXJlczogW1Jl
ZmxlY3QsIFR5cGVkQXJyYXksIHJlc2l6YWJsZS1hcnJheWJ1ZmZlcl0KKy0tLSovCisKKy8vIElm
IHRoZSBob3N0IGNob29zZXMgdG8gdGhyb3cgYXMgYWxsb3dlZCBieSB0aGUgc3BlY2lmaWNhdGlv
biwgdGhlIG9ic2VydmVkCisvLyBiZWhhdmlvciB3aWxsIGJlIGlkZW50aWNhbCB0byB0aGUgY2Fz
ZSB3aGVyZSBgQXJyYXlCdWZmZXIucHJvdG90eXBlLnJlc2l6ZWAKKy8vIGhhcyBub3QgYmVlbiBp
bXBsZW1lbnRlZC4gVGhlIGZvbGxvd2luZyBhc3NlcnRpb24gcHJldmVudHMgdGhpcyB0ZXN0IGZy
b20KKy8vIHBhc3NpbmcgaW4gcnVudGltZXMgd2hpY2ggaGF2ZSBub3QgaW1wbGVtZW50ZWQgdGhl
IG1ldGhvZC4KK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIEFycmF5QnVmZmVyLnByb3RvdHlwZS5y
ZXNpemUsICJmdW5jdGlvbiIpOworCitmdW5jdGlvbiBpbnNwZWN0KGFycmF5KSB7CisgIHJldHVy
biBbCisgICAgUmVmbGVjdC5oYXMoYXJyYXksIDApLAorICAgIFJlZmxlY3QuaGFzKGFycmF5LCAx
KSwKKyAgICBSZWZsZWN0LmhhcyhhcnJheSwgMiksCisgICAgUmVmbGVjdC5oYXMoYXJyYXksIDMp
LAorICAgIFJlZmxlY3QuaGFzKGFycmF5LCA0KQorICBdLmpvaW4oIiwiKTsKK30KKwordGVzdFdp
dGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1bmN0aW9uKFRBKSB7CisgIHZhciBCUEUgPSBUQS5C
WVRFU19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKEJQRSAqIDQsIHtt
YXhCeXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9IG5ldyBUQShhYiwgQlBFKTsK
KyAgdmFyIGV4cGVjdGVkID0gInRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlIjsKKworICBhc3Nl
cnQuc2FtZVZhbHVlKGluc3BlY3QoYXJyYXkpLCBleHBlY3RlZCwgImluaXRpYWwiKTsKKworICB0
cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgICBleHBlY3RlZCA9ICJ0cnVlLHRydWUs
dHJ1ZSx0cnVlLGZhbHNlIjsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVl
KGluc3BlY3QoYXJyYXkpLCBleHBlY3RlZCwgImZvbGxvd2luZyBncm93Iik7CisKKyAgdHJ5IHsK
KyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAgZXhwZWN0ZWQgPSAidHJ1ZSx0cnVlLGZhbHNl
LGZhbHNlLGZhbHNlIjsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVlKGlu
c3BlY3QoYXJyYXkpLCBleHBlY3RlZCwgImZvbGxvd2luZyBzaHJpbmsgKHdpdGhpbiBib3VuZHMp
Iik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFKTsKKyAgICBleHBlY3RlZCA9ICJmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSI7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgYXNzZXJ0
LnNhbWVWYWx1ZShpbnNwZWN0KGFycmF5KSwgZXhwZWN0ZWQsICJmb2xsb3dpbmcgc2hyaW5rIChv
dXQgb2YgYm91bmRzKSIpOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvSGFzUHJvcGVydHkvcmVz
aXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0
LWlucy9UeXBlZEFycmF5Q29uc3RydWN0b3JzL2ludGVybmFscy9IYXNQcm9wZXJ0eS9yZXNpemFi
bGUtYXJyYXktYnVmZmVyLWZpeGVkLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQxYzZlNGJmNWRmNzU2YjJkMzAw
ZjdjZTA0NjcyZDAwNTAzM2ViMWIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvSGFzUHJvcGVy
dHkvcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qcwpAQCAtMCwwICsxLDU0IEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtaW50ZWdlci1pbmRleGVkLWV4
b3RpYy1vYmplY3RzLWhhc3Byb3BlcnR5LXAKK2Rlc2NyaXB0aW9uOiByZXR1cm5lZCBrZXlzIHJl
ZmxlY3QgcmVzaXplZCBBcnJheUJ1ZmZlciBmb3IgYSBmaXhlZC1zaXplZCBUeXBlZEFycmF5Citp
bmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtSZWZsZWN0LCBUeXBlZEFy
cmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCisvLyBJZiB0aGUgaG9zdCBjaG9v
c2VzIHRvIHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBvYnNlcnZl
ZAorLy8gYmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUgYEFycmF5
QnVmZmVyLnByb3RvdHlwZS5yZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuIFRo
ZSBmb2xsb3dpbmcgYXNzZXJ0aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBwYXNzaW5n
IGluIHJ1bnRpbWVzIHdoaWNoIGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2QuCithc3Nl
cnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAiZnVuY3Rp
b24iKTsKKworZnVuY3Rpb24gaW5zcGVjdChhcnJheSkgeworICByZXR1cm4gWworICAgIFJlZmxl
Y3QuaGFzKGFycmF5LCAwKSwKKyAgICBSZWZsZWN0LmhhcyhhcnJheSwgMSksCisgICAgUmVmbGVj
dC5oYXMoYXJyYXksIDIpLAorICAgIFJlZmxlY3QuaGFzKGFycmF5LCAzKSwKKyAgICBSZWZsZWN0
LmhhcyhhcnJheSwgNCkKKyAgXS5qb2luKCIsIik7Cit9CisKK3Rlc3RXaXRoVHlwZWRBcnJheUNv
bnN0cnVjdG9ycyhmdW5jdGlvbihUQSkgeworICB2YXIgQlBFID0gVEEuQllURVNfUEVSX0VMRU1F
TlQ7CisgIHZhciBhYiA9IG5ldyBBcnJheUJ1ZmZlcihCUEUgKiA0LCB7bWF4Qnl0ZUxlbmd0aDog
QlBFICogNX0pOworICB2YXIgYXJyYXkgPSBuZXcgVEEoYWIsIEJQRSwgMik7CisKKyAgYXNzZXJ0
LnNhbWVWYWx1ZShpbnNwZWN0KGFycmF5KSwgInRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSIs
ICJpbml0aWFsIik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogNSk7CisgIH0gY2F0
Y2ggKF8pIHt9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShpbnNwZWN0KGFycmF5KSwgInRydWUsdHJ1
ZSxmYWxzZSxmYWxzZSxmYWxzZSIsICJmb2xsb3dpbmcgZ3JvdyIpOworCisgIHRyeSB7CisgICAg
YWIucmVzaXplKEJQRSAqIDMpOworICB9IGNhdGNoIChfKSB7fQorCisgIGFzc2VydC5zYW1lVmFs
dWUoaW5zcGVjdChhcnJheSksICJ0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UiLCAiZm9sbG93
aW5nIHNocmluayAod2l0aGluIGJvdW5kcykiKTsKKworICB2YXIgZXhwZWN0ZWQ7CisgIHRyeSB7
CisgICAgYWIucmVzaXplKEJQRSAqIDIpOworICAgIGV4cGVjdGVkID0gImZhbHNlLGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNleCI7CisgIH0gY2F0Y2ggKF8pIHsKKyAgICBleHBlY3RlZCA9ICJ0cnVl
LHRydWUsZmFsc2UsZmFsc2UsZmFsc2UiOworICB9CisKKyAgYXNzZXJ0LnNhbWVWYWx1ZShpbnNw
ZWN0KGFycmF5KSwgZXhwZWN0ZWQsICJmb2xsb3dpbmcgc2hyaW5rIChvdXQgb2YgYm91bmRzKSIp
OworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRB
cnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvT3duUHJvcGVydHlLZXlzL2ludGVnZXItaW5kZXhl
cy1yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9i
dWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRlcm5hbHMvT3duUHJvcGVydHlLZXlz
L2ludGVnZXItaW5kZXhlcy1yZXNpemFibGUtYXJyYXktYnVmZmVyLWF1dG8uanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZmI0ZmYxMjIyY2U0N2I1MjEyOGU2Y2I2NGMxYTY2YTMyMjI3N2RhNAotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2J1aWx0LWlucy9UeXBlZEFycmF5Q29uc3RydWN0
b3JzL2ludGVybmFscy9Pd25Qcm9wZXJ0eUtleXMvaW50ZWdlci1pbmRleGVzLXJlc2l6YWJsZS1h
cnJheS1idWZmZXItYXV0by5qcwpAQCAtMCwwICsxLDU4IEBACisvLyBDb3B5cmlnaHQgKEMpIDIw
MjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmplY3RzLW93
bnByb3BlcnR5a2V5cworZGVzY3JpcHRpb246IHJldHVybmVkIGtleXMgcmVmbGVjdCByZXNpemVk
IEFycmF5QnVmZmVyIGZvciBhIGR5bmFtaWNhbGx5LXNpemVkIFR5cGVkQXJyYXkKK2luZm86IHwK
KyAgOS40LjUuNiBbW093blByb3BlcnR5S2V5c11dICgpCisKKyAgLi4uCisgIDMuIExldCBnZXRC
dWZmZXJCeXRlTGVuZ3RoIGJlICEKKyAgICAgTWFrZUlkZW1wb3RlbnRBcnJheUJ1ZmZlckJ5dGVM
ZW5ndGhHZXR0ZXIoU2VxQ3N0KS4KKyAgNC4gTGV0IGxlbiBiZSBJbnRlZ2VySW5kZXhlZE9iamVj
dExlbmd0aChPLCBnZXRCdWZmZXJCeXRlTGVuZ3RoKS4KKyAgNS4gRm9yIGVhY2ggaW50ZWdlciBp
IHN0YXJ0aW5nIHdpdGggMCBzdWNoIHRoYXQgaSA8IGxlbiwgaW4gYXNjZW5kaW5nIG9yZGVyLAor
ICAgIGEuIEFkZCAhIFRvU3RyaW5nKGkpIGFzIHRoZSBsYXN0IGVsZW1lbnQgb2Yga2V5cy4KKyAg
Li4uCitpbmNsdWRlczogW3Rlc3RUeXBlZEFycmF5LmpzXQorZmVhdHVyZXM6IFtSZWZsZWN0LCBU
eXBlZEFycmF5LCByZXNpemFibGUtYXJyYXlidWZmZXJdCistLS0qLworCisvLyBJZiB0aGUgaG9z
dCBjaG9vc2VzIHRvIHRocm93IGFzIGFsbG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBv
YnNlcnZlZAorLy8gYmVoYXZpb3Igd2lsbCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUg
YEFycmF5QnVmZmVyLnByb3RvdHlwZS5yZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50
ZWQuIFRoZSBmb2xsb3dpbmcgYXNzZXJ0aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBw
YXNzaW5nIGluIHJ1bnRpbWVzIHdoaWNoIGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2Qu
Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAi
ZnVuY3Rpb24iKTsKKwordGVzdFdpdGhUeXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1bmN0aW9uKFRB
KSB7CisgIHZhciBCUEUgPSBUQS5CWVRFU19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFy
cmF5QnVmZmVyKEJQRSAqIDQsIHttYXhCeXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJh
eSA9IG5ldyBUQShhYiwgQlBFKTsKKyAgdmFyIGV4cGVjdGVkID0gIjAsMSwyIjsKKworICBhc3Nl
cnQuc2FtZVZhbHVlKFJlZmxlY3Qub3duS2V5cyhhcnJheSkuam9pbigiLCIpLCBleHBlY3RlZCwg
ImluaXRpYWwiKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAgICBleHBl
Y3RlZCA9ICIwLDEsMiwzIjsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVl
KFJlZmxlY3Qub3duS2V5cyhhcnJheSkuam9pbigiLCIpLCBleHBlY3RlZCwgImZvbGxvd2luZyBn
cm93Iik7CisKKyAgdHJ5IHsKKyAgICBhYi5yZXNpemUoQlBFICogMyk7CisgICAgZXhwZWN0ZWQg
PSAiMCwxIjsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVlKAorICAgIFJl
ZmxlY3Qub3duS2V5cyhhcnJheSkuam9pbigiLCIpLCBleHBlY3RlZCwgImZvbGxvd2luZyBzaHJp
bmsgKHdpdGhpbiBib3VuZHMpIgorICApOworCisgIHRyeSB7CisgICAgYWIucmVzaXplKEJQRSk7
CisgICAgZXhwZWN0ZWQgPSAiIjsKKyAgfSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZh
bHVlKAorICAgIFJlZmxlY3Qub3duS2V5cyhhcnJheSkuam9pbigiLCIpLCBleHBlY3RlZCwgImZv
bGxvd2luZyBzaHJpbmsgKG91dCBvZiBib3VuZHMpIgorICApOworfSk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9idWlsdC1pbnMvVHlwZWRBcnJheUNvbnN0cnVjdG9ycy9pbnRl
cm5hbHMvT3duUHJvcGVydHlLZXlzL2ludGVnZXItaW5kZXhlcy1yZXNpemFibGUtYXJyYXktYnVm
ZmVyLWZpeGVkLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlD
b25zdHJ1Y3RvcnMvaW50ZXJuYWxzL093blByb3BlcnR5S2V5cy9pbnRlZ2VyLWluZGV4ZXMtcmVz
aXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zZTUwYThmYzZmZjliOGU0
OTk4MjBlODgwNGViNDgwZTZjMTA2OThhCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvYnVpbHQtaW5zL1R5cGVkQXJyYXlDb25zdHJ1Y3RvcnMvaW50ZXJuYWxzL093blBy
b3BlcnR5S2V5cy9pbnRlZ2VyLWluZGV4ZXMtcmVzaXphYmxlLWFycmF5LWJ1ZmZlci1maXhlZC5q
cwpAQCAtMCwwICsxLDU4IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3Qg
YXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBi
eSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lk
OiBzZWMtaW50ZWdlci1pbmRleGVkLWV4b3RpYy1vYmplY3RzLW93bnByb3BlcnR5a2V5cworZGVz
Y3JpcHRpb246IHJldHVybmVkIGtleXMgcmVmbGVjdCByZXNpemVkIEFycmF5QnVmZmVyIGZvciBh
IGZpeGVkLXNpemVkIFR5cGVkQXJyYXkKK2luZm86IHwKKyAgOS40LjUuNiBbW093blByb3BlcnR5
S2V5c11dICgpCisKKyAgLi4uCisgIDMuIExldCBnZXRCdWZmZXJCeXRlTGVuZ3RoIGJlICEKKyAg
ICAgTWFrZUlkZW1wb3RlbnRBcnJheUJ1ZmZlckJ5dGVMZW5ndGhHZXR0ZXIoU2VxQ3N0KS4KKyAg
NC4gTGV0IGxlbiBiZSBJbnRlZ2VySW5kZXhlZE9iamVjdExlbmd0aChPLCBnZXRCdWZmZXJCeXRl
TGVuZ3RoKS4KKyAgNS4gRm9yIGVhY2ggaW50ZWdlciBpIHN0YXJ0aW5nIHdpdGggMCBzdWNoIHRo
YXQgaSA8IGxlbiwgaW4gYXNjZW5kaW5nIG9yZGVyLAorICAgIGEuIEFkZCAhIFRvU3RyaW5nKGkp
IGFzIHRoZSBsYXN0IGVsZW1lbnQgb2Yga2V5cy4KKyAgLi4uCitpbmNsdWRlczogW3Rlc3RUeXBl
ZEFycmF5LmpzXQorZmVhdHVyZXM6IFtSZWZsZWN0LCBUeXBlZEFycmF5LCByZXNpemFibGUtYXJy
YXlidWZmZXJdCistLS0qLworCisvLyBJZiB0aGUgaG9zdCBjaG9vc2VzIHRvIHRocm93IGFzIGFs
bG93ZWQgYnkgdGhlIHNwZWNpZmljYXRpb24sIHRoZSBvYnNlcnZlZAorLy8gYmVoYXZpb3Igd2ls
bCBiZSBpZGVudGljYWwgdG8gdGhlIGNhc2Ugd2hlcmUgYEFycmF5QnVmZmVyLnByb3RvdHlwZS5y
ZXNpemVgCisvLyBoYXMgbm90IGJlZW4gaW1wbGVtZW50ZWQuIFRoZSBmb2xsb3dpbmcgYXNzZXJ0
aW9uIHByZXZlbnRzIHRoaXMgdGVzdCBmcm9tCisvLyBwYXNzaW5nIGluIHJ1bnRpbWVzIHdoaWNo
IGhhdmUgbm90IGltcGxlbWVudGVkIHRoZSBtZXRob2QuCithc3NlcnQuc2FtZVZhbHVlKHR5cGVv
ZiBBcnJheUJ1ZmZlci5wcm90b3R5cGUucmVzaXplLCAiZnVuY3Rpb24iKTsKKwordGVzdFdpdGhU
eXBlZEFycmF5Q29uc3RydWN0b3JzKGZ1bmN0aW9uKFRBKSB7CisgIHZhciBCUEUgPSBUQS5CWVRF
U19QRVJfRUxFTUVOVDsKKyAgdmFyIGFiID0gbmV3IEFycmF5QnVmZmVyKEJQRSAqIDQsIHttYXhC
eXRlTGVuZ3RoOiBCUEUgKiA1fSk7CisgIHZhciBhcnJheSA9IG5ldyBUQShhYiwgQlBFLCAyKTsK
KworICBhc3NlcnQuc2FtZVZhbHVlKFJlZmxlY3Qub3duS2V5cyhhcnJheSkuam9pbigiLCIpLCAi
MCwxIiwgImluaXRpYWwiKTsKKworICB0cnkgeworICAgIGFiLnJlc2l6ZShCUEUgKiA1KTsKKyAg
fSBjYXRjaCAoXykge30KKworICBhc3NlcnQuc2FtZVZhbHVlKFJlZmxlY3Qub3duS2V5cyhhcnJh
eSkuam9pbigiLCIpLCAiMCwxIiwgImZvbGxvd2luZyBncm93Iik7CisKKyAgdHJ5IHsKKyAgICBh
Yi5yZXNpemUoQlBFICogMyk7CisgIH0gY2F0Y2ggKF8pIHt9CisKKyAgYXNzZXJ0LnNhbWVWYWx1
ZSgKKyAgICBSZWZsZWN0Lm93bktleXMoYXJyYXkpLmpvaW4oIiwiKSwgIjAsMSIsICJmb2xsb3dp
bmcgc2hyaW5rICh3aXRoaW4gYm91bmRzKSIKKyAgKTsKKworICB2YXIgZXhwZWN0ZWQ7CisgIHRy
eSB7CisgICAgYWIucmVzaXplKEJQRSAqIDIpOworICAgIGV4cGVjdGVkID0gIiI7CisgIH0gY2F0
Y2ggKF8pIHsKKyAgICBleHBlY3RlZCA9ICIwLDEiOworICB9CisKKyAgYXNzZXJ0LnNhbWVWYWx1
ZSgKKyAgICBSZWZsZWN0Lm93bktleXMoYXJyYXkpLmpvaW4oIiwiKSwgZXhwZWN0ZWQsICJmb2xs
b3dpbmcgc2hyaW5rIChvdXQgb2YgYm91bmRzKSIKKyAgKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9EYXRlVGltZUZvcm1hdC9jb25zdHJ1Y3Rvci1vcHRp
b25zLXN0eWxlLWNvbmZsaWN0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9EYXRl
VGltZUZvcm1hdC9jb25zdHJ1Y3Rvci1vcHRpb25zLXN0eWxlLWNvbmZsaWN0LmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjJhZWRhN2QxNDg4YzU2ZGUwZGQ4NmYyMDllMzViNzMyZGI2YjE0NDQKLS0tIC9kZXYvbnVs
bAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0RhdGVUaW1lRm9ybWF0L2NvbnN0
cnVjdG9yLW9wdGlvbnMtc3R5bGUtY29uZmxpY3QuanMKQEAgLTAsMCArMSw0NCBAQAorLy8gQ29w
eXJpZ2h0IDIwMjEgS2F0ZSBNaWjDoWxpa292w6EuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtaW5pdGlhbGl6ZWRhdGV0aW1lZm9ybWF0Citk
ZXNjcmlwdGlvbjogPgorICAgIENvbmZsaWN0aW5nIHByb3BlcnRpZXMgb2YgZGF0ZVN0eWxlL3Rp
bWVTdHlsZSBtdXN0IGJlIHJlamVjdGVkIHdpdGggYSBUeXBlRXJyb3IgZm9yIHRoZSBvcHRpb25z
IGFyZ3VtZW50IHRvIHRoZSBEYXRlVGltZUZvcm1hdCBjb25zdHJ1Y3Rvci4KK2luZm86IHwKKyAg
ICBJbml0aWFsaXplRGF0ZVRpbWVGb3JtYXQgKCBkYXRlVGltZUZvcm1hdCwgbG9jYWxlcywgb3B0
aW9ucyApCisKKyAgICAuLi4KKyAgICAzNi4gSWYgZGF0ZVN0eWxlIGlzIG5vdCB1bmRlZmluZWQg
b3IgdGltZVN0eWxlIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4KKyAgICAgIGEuIEZvciBlYWNoIHJv
dyBpbiBUYWJsZSA0LCBleGNlcHQgdGhlIGhlYWRlciByb3csIGRvCisgICAgICAgIGkuIExldCBw
cm9wIGJlIHRoZSBuYW1lIGdpdmVuIGluIHRoZSBQcm9wZXJ0eSBjb2x1bW4gb2YgdGhlIHJvdy4K
KyAgICAgICAgaWkuIExldCBwIGJlIG9wdC5bWzxwcm9wPl1dLgorICAgICAgICBpaWkuIElmIHAg
aXMgbm90IHVuZGVmaW5lZCwgdGhlbgorICAgICAgICAgIDEuIFRocm93IGEgVHlwZUVycm9yIGV4
Y2VwdGlvbi4KKy0tLSovCisKKworLy8gVGFibGUgNCAtIFByb3BlcnR5IGNvbHVtbiArIGV4YW1w
bGUgdmFsdWUgZnJvbSBWYWx1ZXMgY29sdW1uCitjb25zdCBjb25mbGljdGluZ09wdGlvbnMgPSBb
CisgWyAid2Vla2RheSIsICJzaG9ydCIgXSwKKyBbICJlcmEiLCAic2hvcnQiIF0sCisgWyAieWVh
ciIsICJudW1lcmljIiBdLAorIFsgIm1vbnRoIiwgIm51bWVyaWMiIF0sCisgWyAiZGF5IiwgIm51
bWVyaWMiIF0sCisgWyAiZGF5UGVyaW9kIiwgInNob3J0IiBdLAorIFsgImhvdXIiLCAibnVtZXJp
YyIgXSwKKyBbICJtaW51dGUiLCAibnVtZXJpYyIgXSwKKyBbICJzZWNvbmQiLCAibnVtZXJpYyIg
XSwKKyBbICJmcmFjdGlvbmFsU2Vjb25kRGlnaXRzIiwgMyBdLAorIFsgInRpbWVab25lTmFtZSIs
ICJzaG9ydCIgXSwKK107CisKK2ZvciAoY29uc3QgWyBvcHRpb24sIHZhbHVlIF0gb2YgY29uZmxp
Y3RpbmdPcHRpb25zKSB7CisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsK
KyAgICBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCB7IFtvcHRpb25dOiB2YWx1ZSwgZGF0
ZVN0eWxlOiAic2hvcnQiIH0pOworICB9LCBgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwg
eyAke29wdGlvbn06ICIke3ZhbHVlfSIsICBkYXRlU3R5bGU6ICJzaG9ydCIgfSkgdGhyb3dzIFR5
cGVFcnJvcmApOworCisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlvbigpIHsKKyAg
ICBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgiZW4iLCB7IFtvcHRpb25dOiB2YWx1ZSwgdGltZVN0
eWxlOiAic2hvcnQiIH0pOworICB9LCBgbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuIiwgeyAk
e29wdGlvbn06ICIke3ZhbHVlfSIsICB0aW1lU3R5bGU6ICJzaG9ydCIgfSkgdGhyb3dzIFR5cGVF
cnJvcmApOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2Nh
bGUvcHJvdG90eXBlL2NhbGVuZGFycy9icmFuZGluZy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxlbmRhcnMvYnJhbmRpbmcuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOWNlYmM4OGZiNTYwNWM2ZWFkOWRmYzk0NTMzNTM0MGRmZmQ1MjI5YQotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxl
bmRhcnMvYnJhbmRpbmcuanMKQEAgLTAsMCArMSwzMSBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdh
bGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitl
c2lkOiBzZWMtSW50bC5Mb2NhbGUucHJvdG90eXBlLmNhbGVuZGFycworZGVzY3JpcHRpb246ID4K
KyAgICBWZXJpZmllcyB0aGUgYnJhbmRpbmcgY2hlY2sgZm9yIHRoZSAiY2FsZW5kYXJzIiBwcm9w
ZXJ0eSBvZiB0aGUgTG9jYWxlIHByb3RvdHlwZSBvYmplY3QuCitpbmZvOiB8CisgICAgSW50bC5M
b2NhbGUucHJvdG90eXBlLmNhbGVuZGFycworCisgICAgMi4gSWYgVHlwZShsb2MpIGlzIG5vdCBP
YmplY3Qgb3IgbG9jIGRvZXMgbm90IGhhdmUgYW4gW1tJbml0aWFsaXplZExvY2FsZV1dIGludGVy
bmFsIHNsb3QsIHRoZW4KKyAgICAgICAgYS4gVGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgor
ZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworY29uc3Qg
cHJvcGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuTG9jYWxlLnBy
b3RvdHlwZSwgImNhbGVuZGFycyIpOworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgcHJvcGRlc2Mu
Z2V0LCAiZnVuY3Rpb24iKTsKK2NvbnN0IGludmFsaWRWYWx1ZXMgPSBbCisgIHVuZGVmaW5lZCwK
KyAgbnVsbCwKKyAgdHJ1ZSwKKyAgIiIsCisgIFN5bWJvbCgpLAorICAxLAorICB7fSwKKyAgSW50
bC5Mb2NhbGUucHJvdG90eXBlLAorXTsKKworZm9yIChjb25zdCBpbnZhbGlkVmFsdWUgb2YgaW52
YWxpZFZhbHVlcykgeworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4gcHJvcGRlc2Mu
Z2V0LmNhbGwoaW52YWxpZFZhbHVlKSk7Cit9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY2FsZW5kYXJzL25hbWUuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY2FsZW5kYXJzL25hbWUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOGEyMzEyN2UzYTljZTQ2ZDVhMjVmZjgxNjM4NDQyNWQ1OGRhZWI3MwotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3Rv
dHlwZS9jYWxlbmRhcnMvbmFtZS5qcwpAQCAtMCwwICsxLDIyIEBACisvLyBDb3B5cmlnaHQgMjAy
MSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zl
cm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyot
LS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZS5wcm90b3R5cGUuY2FsZW5kYXJzCitkZXNjcmlwdGlv
bjogPgorICAgIENoZWNrcyB0aGUgIm5hbWUiIHByb3BlcnR5IG9mIEludGwuTG9jYWxlLnByb3Rv
dHlwZS5jYWxlbmRhcnMuCitpbmZvOiB8CisgICAgVW5sZXNzIHNwZWNpZmllZCBvdGhlcndpc2Ug
aW4gdGhpcyBkb2N1bWVudCwgdGhlIG9iamVjdHMsIGZ1bmN0aW9ucywgYW5kIGNvbnN0cnVjdG9y
cyBkZXNjcmliZWQgaW4gdGhpcyBzdGFuZGFyZCBhcmUgc3ViamVjdCB0byB0aGUgZ2VuZXJpYyBy
ZXF1aXJlbWVudHMgYW5kIHJlc3RyaWN0aW9ucyBzcGVjaWZpZWQgZm9yIHN0YW5kYXJkIGJ1aWx0
LWluIEVDTUFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgRUNNQVNjcmlwdCAyMDE5IExhbmd1YWdlIFNw
ZWNpZmljYXRpb24sIDEwdGggZWRpdGlvbiwgY2xhdXNlIDE3LCBvciBzdWNjZXNzb3IuCisgICAg
RXZlcnkgYnVpbHQtaW4gZnVuY3Rpb24gb2JqZWN0LCBpbmNsdWRpbmcgY29uc3RydWN0b3JzLCB0
aGF0IGlzIG5vdCBpZGVudGlmaWVkIGFzIGFuIGFub255bW91cyBmdW5jdGlvbiBoYXMgYSBuYW1l
IHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIGEgU3RyaW5nLiBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNp
ZmllZCwgdGhpcyB2YWx1ZSBpcyB0aGUgbmFtZSB0aGF0IGlzIGdpdmVuIHRvIHRoZSBmdW5jdGlv
biBpbiB0aGlzIHNwZWNpZmljYXRpb24uIEZ1bmN0aW9ucyB0aGF0IGFyZSBzcGVjaWZpZWQgYXMg
Z2V0IG9yIHNldCBhY2Nlc3NvciBmdW5jdGlvbnMgb2YgYnVpbHQtaW4gcHJvcGVydGllcyBoYXZl
ICJnZXQgIiBvciAic2V0ICIgcHJlcGVuZGVkIHRvIHRoZSBwcm9wZXJ0eSBuYW1lIHN0cmluZy4K
KyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhlIG5hbWUgcHJvcGVydHkgb2YgYSBi
dWlsdC1pbiBmdW5jdGlvbiBvYmplY3QsIGlmIGl0IGV4aXN0cywgaGFzIHRoZSBhdHRyaWJ1dGVz
IHsgW1tXcml0YWJsZV1dOiBmYWxzZSwgW1tFbnVtZXJhYmxlXV06IGZhbHNlLCBbW0NvbmZpZ3Vy
YWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6
IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworY29uc3QgZ2V0dGVyID0g
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkxvY2FsZS5wcm90b3R5cGUsICJj
YWxlbmRhcnMiKS5nZXQ7Cit2ZXJpZnlQcm9wZXJ0eShnZXR0ZXIsICJuYW1lIiwgeworICB2YWx1
ZTogImdldCBjYWxlbmRhcnMiLAorICB3cml0YWJsZTogZmFsc2UsCisgIGVudW1lcmFibGU6IGZh
bHNlLAorICBjb25maWd1cmFibGU6IHRydWUsCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxlbmRhcnMvb3V0cHV0LWFycmF5
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NhbGVu
ZGFycy9vdXRwdXQtYXJyYXkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmU0YTU0YjUyNWE3MmMxNjIzMDVlNzY2
NDAzMGE5NWMyZTU4OGRmMQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxlbmRhcnMvb3V0cHV0LWFycmF5LmpzCkBAIC0w
LDAgKzEsMTUgQEAKKy8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlLnBy
b3RvdHlwZS5jYWxlbmRhcnMKK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoYXQgdGhlIHJl
dHVybiB2YWx1ZSBvZiBJbnRsLkxvY2FsZS5wcm90b3R5cGUuY2FsZW5kYXJzIGlzIGFuIEFycmF5
LgoraW5mbzogfAorICBDYWxlbmRhcnNPZkxvY2FsZSAoIGxvYyApCisgIC4uLgorICA1LiBSZXR1
cm4gISBDcmVhdGVBcnJheUZyb21MaXN0QW5kUHJlZmVycmVkKCBsaXN0LCBwcmVmZXJyZWQgKS4K
K2ZlYXR1cmVzOiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KKy0tLSovCisKK2Fzc2Vy
dChBcnJheS5pc0FycmF5KG5ldyBJbnRsLkxvY2FsZSgnZW4nKS5jYWxlbmRhcnMpKTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxl
bmRhcnMvcHJvcC1kZXNjLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUv
cHJvdG90eXBlL2NhbGVuZGFycy9wcm9wLWRlc2MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTgzMWY3NWRiNzFm
NjljOTk4ODZmNGYzNDg4MjdhYzFmNWZkMjhhMgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jYWxlbmRhcnMvcHJvcC1kZXNj
LmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwu
bG9jYWxlCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGUgImNhbGVuZGFycyIgcHJvcGVy
dHkgb2YgdGhlIExvY2FsZSBwcm90b3R5cGUgb2JqZWN0LgoraW5mbzogfAorICAgIEludGwuTG9j
YWxlLnByb3RvdHlwZS5jYWxlbmRhcnMKKworICAgIFVubGVzcyBzcGVjaWZpZWQgb3RoZXJ3aXNl
IGluIHRoaXMgZG9jdW1lbnQsIHRoZSBvYmplY3RzLCBmdW5jdGlvbnMsIGFuZCBjb25zdHJ1Y3Rv
cnMgZGVzY3JpYmVkIGluIHRoaXMgc3RhbmRhcmQgYXJlIHN1YmplY3QgdG8gdGhlIGdlbmVyaWMg
cmVxdWlyZW1lbnRzIGFuZCByZXN0cmljdGlvbnMgc3BlY2lmaWVkIGZvciBzdGFuZGFyZCBidWls
dC1pbiBFQ01BU2NyaXB0IG9iamVjdHMgaW4gdGhlIEVDTUFTY3JpcHQgMjAxOSBzY3JpcHQgU3Bl
Y2lmaWNhdGlvbiwgMTB0aCBlZGl0aW9uLCBjbGF1c2UgMTcsIG9yIHN1Y2Nlc3Nvci4KKworICAg
IEV2ZXJ5IGFjY2Vzc29yIHByb3BlcnR5IGRlc2NyaWJlZCBpbiBjbGF1c2VzIDE4IHRocm91Z2gg
MjYgYW5kIGluIEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW0VudW1lcmFibGVdXTog
ZmFsc2UsIFtbQ29uZmlndXJhYmxlXV06IHRydWUgfSB1bmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmll
ZC4gSWYgb25seSBhIGdldCBhY2Nlc3NvciBmdW5jdGlvbiBpcyBkZXNjcmliZWQsIHRoZSBzZXQg
YWNjZXNzb3IgZnVuY3Rpb24gaXMgdGhlIGRlZmF1bHQgdmFsdWUsIHVuZGVmaW5lZC4KK2luY2x1
ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW0ludGwuTG9jYWxlLEludGwuTG9j
YWxlLWluZm9dCistLS0qLworCitjb25zdCBwcm9wZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3IoSW50bC5Mb2NhbGUucHJvdG90eXBlLCAiY2FsZW5kYXJzIik7Cithc3NlcnQu
c2FtZVZhbHVlKHByb3BkZXNjLnNldCwgdW5kZWZpbmVkKTsKK2Fzc2VydC5zYW1lVmFsdWUodHlw
ZW9mIHByb3BkZXNjLmdldCwgImZ1bmN0aW9uIik7CisKK3ZlcmlmeVByb3BlcnR5KEludGwuTG9j
YWxlLnByb3RvdHlwZSwgImNhbGVuZGFycyIsIHsKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIGNv
bmZpZ3VyYWJsZTogdHJ1ZSwKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
aW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxhdGlvbnMvYnJhbmRpbmcuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvY29sbGF0aW9ucy9icmFuZGlu
Zy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40YmJlNDA1MTYxZTgzZmRjYjdmNGU5OWYwYWI4MjIzMDMzNmZkNjEx
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUv
cHJvdG90eXBlL2NvbGxhdGlvbnMvYnJhbmRpbmcuanMKQEAgLTAsMCArMSwzMSBAQAorLy8gQ29w
eXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNv
ZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCisKKy8qLS0tCitlc2lkOiBzZWMtSW50bC5Mb2NhbGUucHJvdG90eXBlLmNvbGxhdGlvbnMK
K2Rlc2NyaXB0aW9uOiA+CisgICAgVmVyaWZpZXMgdGhlIGJyYW5kaW5nIGNoZWNrIGZvciB0aGUg
ImNvbGxhdGlvbnMiIHByb3BlcnR5IG9mIHRoZSBMb2NhbGUgcHJvdG90eXBlIG9iamVjdC4KK2lu
Zm86IHwKKyAgICBJbnRsLkxvY2FsZS5wcm90b3R5cGUuY29sbGF0aW9ucworCisgICAgMi4gSWYg
VHlwZShsb2MpIGlzIG5vdCBPYmplY3Qgb3IgbG9jIGRvZXMgbm90IGhhdmUgYW4gW1tJbml0aWFs
aXplZExvY2FsZV1dIGludGVybmFsIHNsb3QsIHRoZW4KKyAgICAgICAgYS4gVGhyb3cgYSBUeXBl
RXJyb3IgZXhjZXB0aW9uLgorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZv
XQorLS0tKi8KKworY29uc3QgcHJvcGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKEludGwuTG9jYWxlLnByb3RvdHlwZSwgImNvbGxhdGlvbnMiKTsKK2Fzc2VydC5zYW1lVmFs
dWUodHlwZW9mIHByb3BkZXNjLmdldCwgImZ1bmN0aW9uIik7Citjb25zdCBpbnZhbGlkVmFsdWVz
ID0gWworICB1bmRlZmluZWQsCisgIG51bGwsCisgIHRydWUsCisgICIiLAorICBTeW1ib2woKSwK
KyAgMSwKKyAge30sCisgIEludGwuTG9jYWxlLnByb3RvdHlwZSwKK107CisKK2ZvciAoY29uc3Qg
aW52YWxpZFZhbHVlIG9mIGludmFsaWRWYWx1ZXMpIHsKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJy
b3IsICgpID0+IHByb3BkZXNjLmdldC5jYWxsKGludmFsaWRWYWx1ZSkpOworfQpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxhdGlv
bnMvbmFtZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlw
ZS9jb2xsYXRpb25zL25hbWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTFkMTY4ODhhYzg3ZTY3OGMxNGUwNWZl
ZGYxMGE2MzNkYzc0NjM5NAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jb2xsYXRpb25zL25hbWUuanMKQEAgLTAsMCArMSwy
MiBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtaW50bC5sb2NhbGUucHJvdG90eXBl
LmNvbGxhdGlvbnMKK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoZSAibmFtZSIgcHJvcGVy
dHkgb2YgSW50bC5Mb2NhbGUucHJvdG90eXBlLmNvbGxhdGlvbnMuCitpbmZvOiB8CisgICAgVW5s
ZXNzIHNwZWNpZmllZCBvdGhlcndpc2UgaW4gdGhpcyBkb2N1bWVudCwgdGhlIG9iamVjdHMsIGZ1
bmN0aW9ucywgYW5kIGNvbnN0cnVjdG9ycyBkZXNjcmliZWQgaW4gdGhpcyBzdGFuZGFyZCBhcmUg
c3ViamVjdCB0byB0aGUgZ2VuZXJpYyByZXF1aXJlbWVudHMgYW5kIHJlc3RyaWN0aW9ucyBzcGVj
aWZpZWQgZm9yIHN0YW5kYXJkIGJ1aWx0LWluIEVDTUFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgRUNN
QVNjcmlwdCAyMDE5IExhbmd1YWdlIFNwZWNpZmljYXRpb24sIDEwdGggZWRpdGlvbiwgY2xhdXNl
IDE3LCBvciBzdWNjZXNzb3IuCisgICAgRXZlcnkgYnVpbHQtaW4gZnVuY3Rpb24gb2JqZWN0LCBp
bmNsdWRpbmcgY29uc3RydWN0b3JzLCB0aGF0IGlzIG5vdCBpZGVudGlmaWVkIGFzIGFuIGFub255
bW91cyBmdW5jdGlvbiBoYXMgYSBuYW1lIHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIGEgU3RyaW5n
LiBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhpcyB2YWx1ZSBpcyB0aGUgbmFtZSB0aGF0
IGlzIGdpdmVuIHRvIHRoZSBmdW5jdGlvbiBpbiB0aGlzIHNwZWNpZmljYXRpb24uIEZ1bmN0aW9u
cyB0aGF0IGFyZSBzcGVjaWZpZWQgYXMgZ2V0IG9yIHNldCBhY2Nlc3NvciBmdW5jdGlvbnMgb2Yg
YnVpbHQtaW4gcHJvcGVydGllcyBoYXZlICJnZXQgIiBvciAic2V0ICIgcHJlcGVuZGVkIHRvIHRo
ZSBwcm9wZXJ0eSBuYW1lIHN0cmluZy4KKyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwg
dGhlIG5hbWUgcHJvcGVydHkgb2YgYSBidWlsdC1pbiBmdW5jdGlvbiBvYmplY3QsIGlmIGl0IGV4
aXN0cywgaGFzIHRoZSBhdHRyaWJ1dGVzIHsgW1tXcml0YWJsZV1dOiBmYWxzZSwgW1tFbnVtZXJh
YmxlXV06IGZhbHNlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczogW3Byb3Bl
cnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQor
LS0tKi8KKworY29uc3QgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJ
bnRsLkxvY2FsZS5wcm90b3R5cGUsICJjb2xsYXRpb25zIikuZ2V0OwordmVyaWZ5UHJvcGVydHko
Z2V0dGVyLCAibmFtZSIsIHsKKyAgdmFsdWU6ICJnZXQgY29sbGF0aW9ucyIsCisgIHdyaXRhYmxl
OiBmYWxzZSwKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90
eXBlL2NvbGxhdGlvbnMvb3V0cHV0LWFycmF5LXZhbHVlcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jb2xsYXRpb25zL291dHB1dC1hcnJheS12YWx1
ZXMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMTUyZTk5ODVlYzViNjk4MTZmMmIyMjUxZGU1NjZiNWMzZTU2ZDRk
YwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxl
L3Byb3RvdHlwZS9jb2xsYXRpb25zL291dHB1dC1hcnJheS12YWx1ZXMuanMKQEAgLTAsMCArMSwy
NCBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtaW50bC5sb2NhbGUucHJvdG90eXBl
LmNvbGxhdGlvbnMKK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoYXQgdGhlIHJldHVybiB2
YWx1ZSBvZiBJbnRsLkxvY2FsZS5wcm90b3R5cGUuY29sbGF0aW9ucyBpcyBhbiBBcnJheQorICAg
IHRoYXQgZG9lcyBub3QgY29udGFpbiBpbnZhbGlkIHZhbHVlcy4KK2luZm86IHwKKyAgQ29sbGF0
aW9uc09mTG9jYWxlICggbG9jICkKKyAgLi4uCisgIDQuIExldCBsaXN0IGJlIGEgTGlzdCBvZiAx
IG9yIG1vcmUgdW5pcXVlIGNvbGxhdGlvbiBpZGVudGlmaWVycywgd2hpY2ggbXVzdAorICBiZSBs
b3dlciBjYXNlIFN0cmluZyB2YWx1ZXMgY29uZm9ybWluZyB0byB0aGUgdHlwZSBzZXF1ZW5jZSBm
cm9tIFVUUyAzNQorICBVbmljb2RlIExvY2FsZSBJZGVudGlmaWVyLCBzZWN0aW9uIDMuMiwgc29y
dGVkIGluIGRlc2NlbmRpbmcgcHJlZmVyZW5jZSBvZgorICB0aG9zZSBpbiBjb21tb24gdXNlIGZv
ciBzdHJpbmcgY29tcGFyaXNvbiBpbiBsb2NhbGUuIFRoZSB2YWx1ZXMgInN0YW5kYXJkIgorICBh
bmQgInNlYXJjaCIgbXVzdCBiZSBleGNsdWRlZCBmcm9tIGxpc3QuCitmZWF0dXJlczogW0ludGwu
TG9jYWxlLEludGwuTG9jYWxlLWluZm9dCistLS0qLworCitjb25zdCBvdXRwdXQgPSBuZXcgSW50
bC5Mb2NhbGUoJ2VuJykuY29sbGF0aW9uczsKK291dHB1dC5mb3JFYWNoKGMgPT4geworICBpZihb
J3N0YW5kYXJkJywgJ3NlYXJjaCddLmluY2x1ZGVzKGMpKQorICAgIHRocm93IG5ldyBUZXN0MjYy
RXJyb3IoKTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9M
b2NhbGUvcHJvdG90eXBlL2NvbGxhdGlvbnMvb3V0cHV0LWFycmF5LmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxhdGlvbnMvb3V0cHV0LWFycmF5
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjBlOWQ2NjkzMmMwMTAwN2MyZTRlNzA5NzIzZWFiZDMyNjA2YmE4YjUK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9w
cm90b3R5cGUvY29sbGF0aW9ucy9vdXRwdXQtYXJyYXkuanMKQEAgLTAsMCArMSwxNSBAQAorLy8g
Q29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlz
IGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNF
IGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtaW50bC5sb2NhbGUucHJvdG90eXBlLmNvbGxhdGlv
bnMKK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBvZiBJ
bnRsLkxvY2FsZS5wcm90b3R5cGUuY29sbGF0aW9ucyBpcyBhbiBBcnJheS4KK2luZm86IHwKKyAg
Q29sbGF0aW9uc09mTG9jYWxlICggbG9jICkKKyAgLi4uCisgIDUuIFJldHVybiAhIENyZWF0ZUFy
cmF5RnJvbUxpc3RBbmRQcmVmZXJyZWQoIGxpc3QsIHByZWZlcnJlZCApLgorZmVhdHVyZXM6IFtJ
bnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworYXNzZXJ0KEFycmF5LmlzQXJy
YXkobmV3IEludGwuTG9jYWxlKCdlbicpLmNvbGxhdGlvbnMpKTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9jb2xsYXRpb25zL3Byb3At
ZGVzYy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9j
b2xsYXRpb25zL3Byb3AtZGVzYy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMDgxYmRmYjI2NGM1ZTY1NDM1YTgw
MDNlNDRhZmU1NWY5YmU3ODhhCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2NvbGxhdGlvbnMvcHJvcC1kZXNjLmpzCkBAIC0w
LDAgKzEsMjUgQEAKKy8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlCitk
ZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGUgImNvbGxhdGlvbnMiIHByb3BlcnR5IG9mIHRo
ZSBMb2NhbGUgcHJvdG90eXBlIG9iamVjdC4KK2luZm86IHwKKyAgICBJbnRsLkxvY2FsZS5wcm90
b3R5cGUuY29sbGF0aW9ucworCisgICAgVW5sZXNzIHNwZWNpZmllZCBvdGhlcndpc2UgaW4gdGhp
cyBkb2N1bWVudCwgdGhlIG9iamVjdHMsIGZ1bmN0aW9ucywgYW5kIGNvbnN0cnVjdG9ycyBkZXNj
cmliZWQgaW4gdGhpcyBzdGFuZGFyZCBhcmUgc3ViamVjdCB0byB0aGUgZ2VuZXJpYyByZXF1aXJl
bWVudHMgYW5kIHJlc3RyaWN0aW9ucyBzcGVjaWZpZWQgZm9yIHN0YW5kYXJkIGJ1aWx0LWluIEVD
TUFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgRUNNQVNjcmlwdCAyMDE5IHNjcmlwdCBTcGVjaWZpY2F0
aW9uLCAxMHRoIGVkaXRpb24sIGNsYXVzZSAxNywgb3Igc3VjY2Vzc29yLgorCisgICAgRXZlcnkg
YWNjZXNzb3IgcHJvcGVydHkgZGVzY3JpYmVkIGluIGNsYXVzZXMgMTggdGhyb3VnaCAyNiBhbmQg
aW4gQW5uZXggQi4yIGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbRW51bWVyYWJsZV1dOiBmYWxzZSwg
W1tDb25maWd1cmFibGVdXTogdHJ1ZSB9IHVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLiBJZiBv
bmx5IGEgZ2V0IGFjY2Vzc29yIGZ1bmN0aW9uIGlzIGRlc2NyaWJlZCwgdGhlIHNldCBhY2Nlc3Nv
ciBmdW5jdGlvbiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgdW5kZWZpbmVkLgoraW5jbHVkZXM6IFtw
cm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5m
b10KKy0tLSovCisKK2NvbnN0IHByb3BkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcihJbnRsLkxvY2FsZS5wcm90b3R5cGUsICJjb2xsYXRpb25zIik7Cithc3NlcnQuc2FtZVZh
bHVlKHByb3BkZXNjLnNldCwgdW5kZWZpbmVkKTsKK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIHBy
b3BkZXNjLmdldCwgImZ1bmN0aW9uIik7CisKK3ZlcmlmeVByb3BlcnR5KEludGwuTG9jYWxlLnBy
b3RvdHlwZSwgImNvbGxhdGlvbnMiLCB7CisgIGVudW1lcmFibGU6IGZhbHNlLAorICBjb25maWd1
cmFibGU6IHRydWUsCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0
MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL2JyYW5kaW5nLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL2hvdXJDeWNsZXMvYnJhbmRpbmcuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTEzNWY3ZWY5NTc4MjZiMmQ3MTAxNTQyMTQwMWJiNDEzMWE1NDg0ZQotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3Rv
dHlwZS9ob3VyQ3ljbGVzL2JyYW5kaW5nLmpzCkBAIC0wLDAgKzEsMzEgQEAKKy8vIENvcHlyaWdo
dCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
CisvKi0tLQorZXNpZDogc2VjLUludGwuTG9jYWxlLnByb3RvdHlwZS5ob3VyQ3ljbGVzCitkZXNj
cmlwdGlvbjogPgorICAgIFZlcmlmaWVzIHRoZSBicmFuZGluZyBjaGVjayBmb3IgdGhlICJob3Vy
Q3ljbGVzIiBwcm9wZXJ0eSBvZiB0aGUgTG9jYWxlIHByb3RvdHlwZSBvYmplY3QuCitpbmZvOiB8
CisgICAgSW50bC5Mb2NhbGUucHJvdG90eXBlLmhvdXJDeWNsZXMKKworICAgIDIuIElmIFR5cGUo
bG9jKSBpcyBub3QgT2JqZWN0IG9yIGxvYyBkb2VzIG5vdCBoYXZlIGFuIFtbSW5pdGlhbGl6ZWRM
b2NhbGVdXSBpbnRlcm5hbCBzbG90LCB0aGVuCisgICAgICAgIGEuIFRocm93IGEgVHlwZUVycm9y
IGV4Y2VwdGlvbi4KK2ZlYXR1cmVzOiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KKy0t
LSovCisKK2NvbnN0IHByb3BkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJ
bnRsLkxvY2FsZS5wcm90b3R5cGUsICJob3VyQ3ljbGVzIik7Cithc3NlcnQuc2FtZVZhbHVlKHR5
cGVvZiBwcm9wZGVzYy5nZXQsICJmdW5jdGlvbiIpOworY29uc3QgaW52YWxpZFZhbHVlcyA9IFsK
KyAgdW5kZWZpbmVkLAorICBudWxsLAorICB0cnVlLAorICAiIiwKKyAgU3ltYm9sKCksCisgIDEs
CisgIHt9LAorICBJbnRsLkxvY2FsZS5wcm90b3R5cGUsCitdOworCitmb3IgKGNvbnN0IGludmFs
aWRWYWx1ZSBvZiBpbnZhbGlkVmFsdWVzKSB7CisgIGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAo
KSA9PiBwcm9wZGVzYy5nZXQuY2FsbChpbnZhbGlkVmFsdWUpKTsKK30KZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL25h
bWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvaG91
ckN5Y2xlcy9uYW1lLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkZWRlOTc0YWUzMGEwMjM4MGFjZDk4YzY3YTFh
N2I1OGEwZGJlNGEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRs
NDAyL0xvY2FsZS9wcm90b3R5cGUvaG91ckN5Y2xlcy9uYW1lLmpzCkBAIC0wLDAgKzEsMjIgQEAK
Ky8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlLnByb3RvdHlwZS5ob3Vy
Q3ljbGVzCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGUgIm5hbWUiIHByb3BlcnR5IG9m
IEludGwuTG9jYWxlLnByb3RvdHlwZS5ob3VyQ3ljbGVzLgoraW5mbzogfAorICAgIFVubGVzcyBz
cGVjaWZpZWQgb3RoZXJ3aXNlIGluIHRoaXMgZG9jdW1lbnQsIHRoZSBvYmplY3RzLCBmdW5jdGlv
bnMsIGFuZCBjb25zdHJ1Y3RvcnMgZGVzY3JpYmVkIGluIHRoaXMgc3RhbmRhcmQgYXJlIHN1Ympl
Y3QgdG8gdGhlIGdlbmVyaWMgcmVxdWlyZW1lbnRzIGFuZCByZXN0cmljdGlvbnMgc3BlY2lmaWVk
IGZvciBzdGFuZGFyZCBidWlsdC1pbiBFQ01BU2NyaXB0IG9iamVjdHMgaW4gdGhlIEVDTUFTY3Jp
cHQgMjAxOSBMYW5ndWFnZSBTcGVjaWZpY2F0aW9uLCAxMHRoIGVkaXRpb24sIGNsYXVzZSAxNywg
b3Igc3VjY2Vzc29yLgorICAgIEV2ZXJ5IGJ1aWx0LWluIGZ1bmN0aW9uIG9iamVjdCwgaW5jbHVk
aW5nIGNvbnN0cnVjdG9ycywgdGhhdCBpcyBub3QgaWRlbnRpZmllZCBhcyBhbiBhbm9ueW1vdXMg
ZnVuY3Rpb24gaGFzIGEgbmFtZSBwcm9wZXJ0eSB3aG9zZSB2YWx1ZSBpcyBhIFN0cmluZy4gVW5s
ZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoaXMgdmFsdWUgaXMgdGhlIG5hbWUgdGhhdCBpcyBn
aXZlbiB0byB0aGUgZnVuY3Rpb24gaW4gdGhpcyBzcGVjaWZpY2F0aW9uLiBGdW5jdGlvbnMgdGhh
dCBhcmUgc3BlY2lmaWVkIGFzIGdldCBvciBzZXQgYWNjZXNzb3IgZnVuY3Rpb25zIG9mIGJ1aWx0
LWluIHByb3BlcnRpZXMgaGF2ZSAiZ2V0ICIgb3IgInNldCAiIHByZXBlbmRlZCB0byB0aGUgcHJv
cGVydHkgbmFtZSBzdHJpbmcuCisgICAgVW5sZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQsIHRoZSBu
YW1lIHByb3BlcnR5IG9mIGEgYnVpbHQtaW4gZnVuY3Rpb24gb2JqZWN0LCBpZiBpdCBleGlzdHMs
IGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbV3JpdGFibGVdXTogZmFsc2UsIFtbRW51bWVyYWJsZV1d
OiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9LgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhl
bHBlci5qc10KK2ZlYXR1cmVzOiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KKy0tLSov
CisKK2NvbnN0IGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5M
b2NhbGUucHJvdG90eXBlLCAiaG91ckN5Y2xlcyIpLmdldDsKK3ZlcmlmeVByb3BlcnR5KGdldHRl
ciwgIm5hbWUiLCB7CisgIHZhbHVlOiAiZ2V0IGhvdXJDeWNsZXMiLAorICB3cml0YWJsZTogZmFs
c2UsCisgIGVudW1lcmFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUsCit9KTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9o
b3VyQ3ljbGVzL291dHB1dC1hcnJheS12YWx1ZXMuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9p
bnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvaG91ckN5Y2xlcy9vdXRwdXQtYXJyYXktdmFsdWVzLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjIzMWMxNjI5ZjFhOWI1ODU5ZTg0Y2U1MTVlYjE4MmJkNmJkOWMwMWEKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90
b3R5cGUvaG91ckN5Y2xlcy9vdXRwdXQtYXJyYXktdmFsdWVzLmpzCkBAIC0wLDAgKzEsMjMgQEAK
Ky8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlLnByb3RvdHlwZS5ob3Vy
Q3ljbGVzCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGF0IHRoZSByZXR1cm4gdmFsdWUg
b2YgSW50bC5Mb2NhbGUucHJvdG90eXBlLmhvdXJDeWNsZXMgaXMgYW4gQXJyYXkKKyAgICB0aGF0
IG9ubHkgY29udGFpbnMgdmFsaWQgdmFsdWVzLgoraW5mbzogfAorICBIb3VyQ3ljbGVzT2ZMb2Nh
bGUgKCBsb2MgKQorICAuLi4KKyAgNC4gTGV0IGxpc3QgYmUgYSBMaXN0IG9mIDEgb3IgbW9yZSB1
bmlxdWUgaG91ciBjeWNsZSBpZGVudGlmaWVycywgd2hpY2ggbXVzdAorICBiZSBsb3dlciBjYXNl
IFN0cmluZyB2YWx1ZXMgaW5kaWNhdGluZyBlaXRoZXIgdGhlIDEyLWhvdXIgZm9ybWF0ICgiaDEx
IiwKKyAgImgxMiIpIG9yIHRoZSAyNC1ob3VyIGZvcm1hdCAoImgyMyIsICJoMjQiKSwgc29ydGVk
IGluIGRlc2NlbmRpbmcgcHJlZmVyZW5jZQorICBvZiB0aG9zZSBpbiBjb21tb24gdXNlIGZvciBk
YXRlIGFuZCB0aW1lIGZvcm1hdHRpbmcgaW4gbG9jYWxlLgorZmVhdHVyZXM6IFtJbnRsLkxvY2Fs
ZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworY29uc3Qgb3V0cHV0ID0gbmV3IEludGwuTG9j
YWxlKCdlbicpLmhvdXJDeWNsZXM7CitvdXRwdXQuZm9yRWFjaChoYyA9PiB7CisgIGlmKCFbJ2gx
MScsICdoMTInLCAnaDIzJywgJ2gyNCddLmluY2x1ZGVzKGhjKSkKKyAgICB0aHJvdyBuZXcgVGVz
dDI2MkVycm9yKCk7Cit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0
MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL291dHB1dC1hcnJheS5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL291dHB1dC1h
cnJheS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5jNTViNzc0YzgwNGRlZWZlNGM0YmFiMWJhNjNmYzQ5OWJmNzVj
YjU0Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2Nh
bGUvcHJvdG90eXBlL2hvdXJDeWNsZXMvb3V0cHV0LWFycmF5LmpzCkBAIC0wLDAgKzEsMTUgQEAK
Ky8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlLnByb3RvdHlwZS5ob3Vy
Q3ljbGVzCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGF0IHRoZSByZXR1cm4gdmFsdWUg
b2YgSW50bC5Mb2NhbGUucHJvdG90eXBlLmhvdXJDeWNsZXMgaXMgYW4gQXJyYXkuCitpbmZvOiB8
CisgIEhvdXJDeWNsZXNPZkxvY2FsZSAoIGxvYyApCisgIC4uLgorICA1LiBSZXR1cm4gISBDcmVh
dGVBcnJheUZyb21MaXN0QW5kUHJlZmVycmVkKCBsaXN0LCBwcmVmZXJyZWQgKS4KK2ZlYXR1cmVz
OiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KKy0tLSovCisKK2Fzc2VydChBcnJheS5p
c0FycmF5KG5ldyBJbnRsLkxvY2FsZSgnZW4nKS5ob3VyQ3ljbGVzKSk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvaG91ckN5Y2xlcy9w
cm9wLWRlc2MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5
cGUvaG91ckN5Y2xlcy9wcm9wLWRlc2MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzFiMTA4ZTE3YTg2NGQ5YzAy
ZTBhMmMyN2ZiOWQ5OTg1YTdiYjdhNAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9ob3VyQ3ljbGVzL3Byb3AtZGVzYy5qcwpA
QCAtMCwwICsxLDI1IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2Ug
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2Fs
ZQorZGVzY3JpcHRpb246ID4KKyAgICBDaGVja3MgdGhlICJob3VyQ3ljbGVzIiBwcm9wZXJ0eSBv
ZiB0aGUgTG9jYWxlIHByb3RvdHlwZSBvYmplY3QuCitpbmZvOiB8CisgICAgSW50bC5Mb2NhbGUu
cHJvdG90eXBlLmhvdXJDeWNsZXMKKworICAgIFVubGVzcyBzcGVjaWZpZWQgb3RoZXJ3aXNlIGlu
IHRoaXMgZG9jdW1lbnQsIHRoZSBvYmplY3RzLCBmdW5jdGlvbnMsIGFuZCBjb25zdHJ1Y3RvcnMg
ZGVzY3JpYmVkIGluIHRoaXMgc3RhbmRhcmQgYXJlIHN1YmplY3QgdG8gdGhlIGdlbmVyaWMgcmVx
dWlyZW1lbnRzIGFuZCByZXN0cmljdGlvbnMgc3BlY2lmaWVkIGZvciBzdGFuZGFyZCBidWlsdC1p
biBFQ01BU2NyaXB0IG9iamVjdHMgaW4gdGhlIEVDTUFTY3JpcHQgMjAxOSBzY3JpcHQgU3BlY2lm
aWNhdGlvbiwgMTB0aCBlZGl0aW9uLCBjbGF1c2UgMTcsIG9yIHN1Y2Nlc3Nvci4KKworICAgIEV2
ZXJ5IGFjY2Vzc29yIHByb3BlcnR5IGRlc2NyaWJlZCBpbiBjbGF1c2VzIDE4IHRocm91Z2ggMjYg
YW5kIGluIEFubmV4IEIuMiBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW0VudW1lcmFibGVdXTogZmFs
c2UsIFtbQ29uZmlndXJhYmxlXV06IHRydWUgfSB1bmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZC4g
SWYgb25seSBhIGdldCBhY2Nlc3NvciBmdW5jdGlvbiBpcyBkZXNjcmliZWQsIHRoZSBzZXQgYWNj
ZXNzb3IgZnVuY3Rpb24gaXMgdGhlIGRlZmF1bHQgdmFsdWUsIHVuZGVmaW5lZC4KK2luY2x1ZGVz
OiBbcHJvcGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW0ludGwuTG9jYWxlLEludGwuTG9jYWxl
LWluZm9dCistLS0qLworCitjb25zdCBwcm9wZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoSW50bC5Mb2NhbGUucHJvdG90eXBlLCAiaG91ckN5Y2xlcyIpOworYXNzZXJ0LnNh
bWVWYWx1ZShwcm9wZGVzYy5zZXQsIHVuZGVmaW5lZCk7Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVv
ZiBwcm9wZGVzYy5nZXQsICJmdW5jdGlvbiIpOworCit2ZXJpZnlQcm9wZXJ0eShJbnRsLkxvY2Fs
ZS5wcm90b3R5cGUsICJob3VyQ3ljbGVzIiwgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgY29u
ZmlndXJhYmxlOiB0cnVlLAorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9p
bnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvbnVtYmVyaW5nU3lzdGVtcy9icmFuZGluZy5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9udW1iZXJpbmdTeXN0
ZW1zL2JyYW5kaW5nLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUyYTc2OTQwYjhhZDk4Y2Q1ZmYwYjUyYzdjZWYy
NzYzNTY3ODBlZGIKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRs
NDAyL0xvY2FsZS9wcm90b3R5cGUvbnVtYmVyaW5nU3lzdGVtcy9icmFuZGluZy5qcwpAQCAtMCww
ICsxLDMxIEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1JbnRsLkxvY2FsZS5wcm90
b3R5cGUubnVtYmVyaW5nU3lzdGVtcworZGVzY3JpcHRpb246ID4KKyAgICBWZXJpZmllcyB0aGUg
YnJhbmRpbmcgY2hlY2sgZm9yIHRoZSAibnVtYmVyaW5nU3lzdGVtcyIgcHJvcGVydHkgb2YgdGhl
IExvY2FsZSBwcm90b3R5cGUgb2JqZWN0LgoraW5mbzogfAorICAgIEludGwuTG9jYWxlLnByb3Rv
dHlwZS5udW1iZXJpbmdTeXN0ZW1zCisKKyAgICAyLiBJZiBUeXBlKGxvYykgaXMgbm90IE9iamVj
dCBvciBsb2MgZG9lcyBub3QgaGF2ZSBhbiBbW0luaXRpYWxpemVkTG9jYWxlXV0gaW50ZXJuYWwg
c2xvdCwgdGhlbgorICAgICAgICBhLiBUaHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCitmZWF0
dXJlczogW0ludGwuTG9jYWxlLEludGwuTG9jYWxlLWluZm9dCistLS0qLworCitjb25zdCBwcm9w
ZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5Mb2NhbGUucHJvdG90
eXBlLCAibnVtYmVyaW5nU3lzdGVtcyIpOworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgcHJvcGRl
c2MuZ2V0LCAiZnVuY3Rpb24iKTsKK2NvbnN0IGludmFsaWRWYWx1ZXMgPSBbCisgIHVuZGVmaW5l
ZCwKKyAgbnVsbCwKKyAgdHJ1ZSwKKyAgIiIsCisgIFN5bWJvbCgpLAorICAxLAorICB7fSwKKyAg
SW50bC5Mb2NhbGUucHJvdG90eXBlLAorXTsKKworZm9yIChjb25zdCBpbnZhbGlkVmFsdWUgb2Yg
aW52YWxpZFZhbHVlcykgeworICBhc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgKCkgPT4gcHJvcGRl
c2MuZ2V0LmNhbGwoaW52YWxpZFZhbHVlKSk7Cit9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvbnVtYmVyaW5nU3lzdGVtcy9uYW1lLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJlcmlu
Z1N5c3RlbXMvbmFtZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNzhhZWFhNzg4ZGQ4MjJmZjY2ODRjNTM5YWIz
NzZiZDBkMGM5NzhmCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50
bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJlcmluZ1N5c3RlbXMvbmFtZS5qcwpAQCAtMCwwICsx
LDIyIEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZS5wcm90b3R5
cGUubnVtYmVyaW5nU3lzdGVtcworZGVzY3JpcHRpb246ID4KKyAgICBDaGVja3MgdGhlICJuYW1l
IiBwcm9wZXJ0eSBvZiBJbnRsLkxvY2FsZS5wcm90b3R5cGUubnVtYmVyaW5nU3lzdGVtcy4KK2lu
Zm86IHwKKyAgICBVbmxlc3Mgc3BlY2lmaWVkIG90aGVyd2lzZSBpbiB0aGlzIGRvY3VtZW50LCB0
aGUgb2JqZWN0cywgZnVuY3Rpb25zLCBhbmQgY29uc3RydWN0b3JzIGRlc2NyaWJlZCBpbiB0aGlz
IHN0YW5kYXJkIGFyZSBzdWJqZWN0IHRvIHRoZSBnZW5lcmljIHJlcXVpcmVtZW50cyBhbmQgcmVz
dHJpY3Rpb25zIHNwZWNpZmllZCBmb3Igc3RhbmRhcmQgYnVpbHQtaW4gRUNNQVNjcmlwdCBvYmpl
Y3RzIGluIHRoZSBFQ01BU2NyaXB0IDIwMTkgTGFuZ3VhZ2UgU3BlY2lmaWNhdGlvbiwgMTB0aCBl
ZGl0aW9uLCBjbGF1c2UgMTcsIG9yIHN1Y2Nlc3Nvci4KKyAgICBFdmVyeSBidWlsdC1pbiBmdW5j
dGlvbiBvYmplY3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIHRoYXQgaXMgbm90IGlkZW50aWZp
ZWQgYXMgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGhhcyBhIG5hbWUgcHJvcGVydHkgd2hvc2UgdmFs
dWUgaXMgYSBTdHJpbmcuIFVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLCB0aGlzIHZhbHVlIGlz
IHRoZSBuYW1lIHRoYXQgaXMgZ2l2ZW4gdG8gdGhlIGZ1bmN0aW9uIGluIHRoaXMgc3BlY2lmaWNh
dGlvbi4gRnVuY3Rpb25zIHRoYXQgYXJlIHNwZWNpZmllZCBhcyBnZXQgb3Igc2V0IGFjY2Vzc29y
IGZ1bmN0aW9ucyBvZiBidWlsdC1pbiBwcm9wZXJ0aWVzIGhhdmUgImdldCAiIG9yICJzZXQgIiBw
cmVwZW5kZWQgdG8gdGhlIHByb3BlcnR5IG5hbWUgc3RyaW5nLgorICAgIFVubGVzcyBvdGhlcndp
c2Ugc3BlY2lmaWVkLCB0aGUgbmFtZSBwcm9wZXJ0eSBvZiBhIGJ1aWx0LWluIGZ1bmN0aW9uIG9i
amVjdCwgaWYgaXQgZXhpc3RzLCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06IGZh
bHNlLCBbW0VudW1lcmFibGVdXTogZmFsc2UsIFtbQ29uZmlndXJhYmxlXV06IHRydWUgfS4KK2lu
Y2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW0ludGwuTG9jYWxlLEludGwu
TG9jYWxlLWluZm9dCistLS0qLworCitjb25zdCBnZXR0ZXIgPSBPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKEludGwuTG9jYWxlLnByb3RvdHlwZSwgIm51bWJlcmluZ1N5c3RlbXMiKS5n
ZXQ7Cit2ZXJpZnlQcm9wZXJ0eShnZXR0ZXIsICJuYW1lIiwgeworICB2YWx1ZTogImdldCBudW1i
ZXJpbmdTeXN0ZW1zIiwKKyAgd3JpdGFibGU6IGZhbHNlLAorICBlbnVtZXJhYmxlOiBmYWxzZSwK
KyAgY29uZmlndXJhYmxlOiB0cnVlLAorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvbnVtYmVyaW5nU3lzdGVtcy9vdXRwdXQtYXJy
YXkuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvbnVt
YmVyaW5nU3lzdGVtcy9vdXRwdXQtYXJyYXkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTQ4YWI5MmZjNjg4YzAw
MDQ2ODM2NmM0YmNiNDBhYTFhNmZhNTJiNwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS9udW1iZXJpbmdTeXN0ZW1zL291dHB1
dC1hcnJheS5qcwpAQCAtMCwwICsxLDE1IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMu
TC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNl
Yy1pbnRsLmxvY2FsZS5wcm90b3R5cGUubnVtYmVyaW5nU3lzdGVtcworZGVzY3JpcHRpb246ID4K
KyAgICBDaGVja3MgdGhhdCB0aGUgcmV0dXJuIHZhbHVlIG9mIEludGwuTG9jYWxlLnByb3RvdHlw
ZS5udW1iZXJpbmdTeXN0ZW1zIGlzIGFuIEFycmF5LgoraW5mbzogfAorICBOdW1iZXJpbmdTeXN0
ZW1zT2ZMb2NhbGUgKCBsb2MgKQorICAuLi4KKyAgNS4gUmV0dXJuICEgQ3JlYXRlQXJyYXlGcm9t
TGlzdEFuZFByZWZlcnJlZCggbGlzdCwgcHJlZmVycmVkICkuCitmZWF0dXJlczogW0ludGwuTG9j
YWxlLEludGwuTG9jYWxlLWluZm9dCistLS0qLworCithc3NlcnQoQXJyYXkuaXNBcnJheShuZXcg
SW50bC5Mb2NhbGUoJ2VuJykubnVtYmVyaW5nU3lzdGVtcykpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL251bWJlcmluZ1N5c3RlbXMv
cHJvcC1kZXNjLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90
eXBlL251bWJlcmluZ1N5c3RlbXMvcHJvcC1kZXNjLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM5ZjMxODAxODky
ZjQ4MjIzM2I1YTQ0N2FlYjNjYzUzNDg5ZDc3YWYKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvbnVtYmVyaW5nU3lzdGVtcy9w
cm9wLWRlc2MuanMKQEAgLTAsMCArMSwyNSBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhl
IEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBz
ZWMtaW50bC5sb2NhbGUKK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoZSAibnVtYmVyaW5n
U3lzdGVtcyIgcHJvcGVydHkgb2YgdGhlIExvY2FsZSBwcm90b3R5cGUgb2JqZWN0LgoraW5mbzog
fAorICAgIEludGwuTG9jYWxlLnByb3RvdHlwZS5udW1iZXJpbmdTeXN0ZW1zCisKKyAgICBVbmxl
c3Mgc3BlY2lmaWVkIG90aGVyd2lzZSBpbiB0aGlzIGRvY3VtZW50LCB0aGUgb2JqZWN0cywgZnVu
Y3Rpb25zLCBhbmQgY29uc3RydWN0b3JzIGRlc2NyaWJlZCBpbiB0aGlzIHN0YW5kYXJkIGFyZSBz
dWJqZWN0IHRvIHRoZSBnZW5lcmljIHJlcXVpcmVtZW50cyBhbmQgcmVzdHJpY3Rpb25zIHNwZWNp
ZmllZCBmb3Igc3RhbmRhcmQgYnVpbHQtaW4gRUNNQVNjcmlwdCBvYmplY3RzIGluIHRoZSBFQ01B
U2NyaXB0IDIwMTkgc2NyaXB0IFNwZWNpZmljYXRpb24sIDEwdGggZWRpdGlvbiwgY2xhdXNlIDE3
LCBvciBzdWNjZXNzb3IuCisKKyAgICBFdmVyeSBhY2Nlc3NvciBwcm9wZXJ0eSBkZXNjcmliZWQg
aW4gY2xhdXNlcyAxOCB0aHJvdWdoIDI2IGFuZCBpbiBBbm5leCBCLjIgaGFzIHRoZSBhdHRyaWJ1
dGVzIHsgW1tFbnVtZXJhYmxlXV06IGZhbHNlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0gdW5s
ZXNzIG90aGVyd2lzZSBzcGVjaWZpZWQuIElmIG9ubHkgYSBnZXQgYWNjZXNzb3IgZnVuY3Rpb24g
aXMgZGVzY3JpYmVkLCB0aGUgc2V0IGFjY2Vzc29yIGZ1bmN0aW9uIGlzIHRoZSBkZWZhdWx0IHZh
bHVlLCB1bmRlZmluZWQuCitpbmNsdWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6
IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworY29uc3QgcHJvcGRlc2Mg
PSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuTG9jYWxlLnByb3RvdHlwZSwg
Im51bWJlcmluZ1N5c3RlbXMiKTsKK2Fzc2VydC5zYW1lVmFsdWUocHJvcGRlc2Muc2V0LCB1bmRl
ZmluZWQpOworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgcHJvcGRlc2MuZ2V0LCAiZnVuY3Rpb24i
KTsKKwordmVyaWZ5UHJvcGVydHkoSW50bC5Mb2NhbGUucHJvdG90eXBlLCAibnVtYmVyaW5nU3lz
dGVtcyIsIHsKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKK30p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90
eXBlL3RleHRJbmZvL2JyYW5kaW5nLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9M
b2NhbGUvcHJvdG90eXBlL3RleHRJbmZvL2JyYW5kaW5nLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI4MzdhNDIw
NDk2ODQ5NTMwNGY4NWE3OWY3N2Y1MDAzODQ0NGViODYKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGV4dEluZm8vYnJhbmRp
bmcuanMKQEAgLTAsMCArMSwzMSBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBs
aWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtSW50
bC5Mb2NhbGUucHJvdG90eXBlLnRleHRJbmZvCitkZXNjcmlwdGlvbjogPgorICAgIFZlcmlmaWVz
IHRoZSBicmFuZGluZyBjaGVjayBmb3IgdGhlICJ0ZXh0SW5mbyIgcHJvcGVydHkgb2YgdGhlIExv
Y2FsZSBwcm90b3R5cGUgb2JqZWN0LgoraW5mbzogfAorICAgIEludGwuTG9jYWxlLnByb3RvdHlw
ZS50ZXh0SW5mbworCisgICAgMi4gSWYgVHlwZShsb2MpIGlzIG5vdCBPYmplY3Qgb3IgbG9jIGRv
ZXMgbm90IGhhdmUgYW4gW1tJbml0aWFsaXplZExvY2FsZV1dIGludGVybmFsIHNsb3QsIHRoZW4K
KyAgICAgICAgYS4gVGhyb3cgYSBUeXBlRXJyb3IgZXhjZXB0aW9uLgorZmVhdHVyZXM6IFtJbnRs
LkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworY29uc3QgcHJvcGRlc2MgPSBPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEludGwuTG9jYWxlLnByb3RvdHlwZSwgInRleHRJ
bmZvIik7Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBwcm9wZGVzYy5nZXQsICJmdW5jdGlvbiIp
OworY29uc3QgaW52YWxpZFZhbHVlcyA9IFsKKyAgdW5kZWZpbmVkLAorICBudWxsLAorICB0cnVl
LAorICAiIiwKKyAgU3ltYm9sKCksCisgIDEsCisgIHt9LAorICBJbnRsLkxvY2FsZS5wcm90b3R5
cGUsCitdOworCitmb3IgKGNvbnN0IGludmFsaWRWYWx1ZSBvZiBpbnZhbGlkVmFsdWVzKSB7Cisg
IGFzc2VydC50aHJvd3MoVHlwZUVycm9yLCAoKSA9PiBwcm9wZGVzYy5nZXQuY2FsbChpbnZhbGlk
VmFsdWUpKTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9j
YWxlL3Byb3RvdHlwZS90ZXh0SW5mby9uYW1lLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50
bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RleHRJbmZvL25hbWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODc2ZmZj
YzU2YTJlOGM0YTVlNGRmMTI2MTM3ZjU2ZTNmZGQzMjc2ZQotLS0gL2Rldi9udWxsCisrKyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90ZXh0SW5mby9uYW1l
LmpzCkBAIC0wLDAgKzEsMjIgQEAKKy8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwu
bG9jYWxlLnByb3RvdHlwZS50ZXh0SW5mbworZGVzY3JpcHRpb246ID4KKyAgICBDaGVja3MgdGhl
ICJuYW1lIiBwcm9wZXJ0eSBvZiBJbnRsLkxvY2FsZS5wcm90b3R5cGUudGV4dEluZm8uCitpbmZv
OiB8CisgICAgVW5sZXNzIHNwZWNpZmllZCBvdGhlcndpc2UgaW4gdGhpcyBkb2N1bWVudCwgdGhl
IG9iamVjdHMsIGZ1bmN0aW9ucywgYW5kIGNvbnN0cnVjdG9ycyBkZXNjcmliZWQgaW4gdGhpcyBz
dGFuZGFyZCBhcmUgc3ViamVjdCB0byB0aGUgZ2VuZXJpYyByZXF1aXJlbWVudHMgYW5kIHJlc3Ry
aWN0aW9ucyBzcGVjaWZpZWQgZm9yIHN0YW5kYXJkIGJ1aWx0LWluIEVDTUFTY3JpcHQgb2JqZWN0
cyBpbiB0aGUgRUNNQVNjcmlwdCAyMDE5IExhbmd1YWdlIFNwZWNpZmljYXRpb24sIDEwdGggZWRp
dGlvbiwgY2xhdXNlIDE3LCBvciBzdWNjZXNzb3IuCisgICAgRXZlcnkgYnVpbHQtaW4gZnVuY3Rp
b24gb2JqZWN0LCBpbmNsdWRpbmcgY29uc3RydWN0b3JzLCB0aGF0IGlzIG5vdCBpZGVudGlmaWVk
IGFzIGFuIGFub255bW91cyBmdW5jdGlvbiBoYXMgYSBuYW1lIHByb3BlcnR5IHdob3NlIHZhbHVl
IGlzIGEgU3RyaW5nLiBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhpcyB2YWx1ZSBpcyB0
aGUgbmFtZSB0aGF0IGlzIGdpdmVuIHRvIHRoZSBmdW5jdGlvbiBpbiB0aGlzIHNwZWNpZmljYXRp
b24uIEZ1bmN0aW9ucyB0aGF0IGFyZSBzcGVjaWZpZWQgYXMgZ2V0IG9yIHNldCBhY2Nlc3NvciBm
dW5jdGlvbnMgb2YgYnVpbHQtaW4gcHJvcGVydGllcyBoYXZlICJnZXQgIiBvciAic2V0ICIgcHJl
cGVuZGVkIHRvIHRoZSBwcm9wZXJ0eSBuYW1lIHN0cmluZy4KKyAgICBVbmxlc3Mgb3RoZXJ3aXNl
IHNwZWNpZmllZCwgdGhlIG5hbWUgcHJvcGVydHkgb2YgYSBidWlsdC1pbiBmdW5jdGlvbiBvYmpl
Y3QsIGlmIGl0IGV4aXN0cywgaGFzIHRoZSBhdHRyaWJ1dGVzIHsgW1tXcml0YWJsZV1dOiBmYWxz
ZSwgW1tFbnVtZXJhYmxlXV06IGZhbHNlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0uCitpbmNs
dWRlczogW3Byb3BlcnR5SGVscGVyLmpzXQorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxv
Y2FsZS1pbmZvXQorLS0tKi8KKworY29uc3QgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcihJbnRsLkxvY2FsZS5wcm90b3R5cGUsICJ0ZXh0SW5mbyIpLmdldDsKK3Zlcmlm
eVByb3BlcnR5KGdldHRlciwgIm5hbWUiLCB7CisgIHZhbHVlOiAiZ2V0IHRleHRJbmZvIiwKKyAg
d3JpdGFibGU6IGZhbHNlLAorICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0
cnVlLAorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2Fs
ZS9wcm90b3R5cGUvdGV4dEluZm8vb3V0cHV0LW9iamVjdC1rZXlzLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RleHRJbmZvL291dHB1dC1vYmplY3Qt
a2V5cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi41ZTU2MjZmNzY4YTJiMDExNzMyZjk4OTNkMGU1ZGQ5MzQ3Nzgy
OTdkCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2Nh
bGUvcHJvdG90eXBlL3RleHRJbmZvL291dHB1dC1vYmplY3Qta2V5cy5qcwpAQCAtMCwwICsxLDI1
IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhl
IExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZS5wcm90b3R5cGUu
dGV4dEluZm8KK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoYXQgdGhlIHJldHVybiB2YWx1
ZSBvZiBJbnRsLkxvY2FsZS5wcm90b3R5cGUudGV4dEluZm8gaXMgYW4gT2JqZWN0CisgICAgd2l0
aCB0aGUgY29ycmVjdCBrZXlzIGFuZCBwcm9wZXJ0aWVzLgoraW5mbzogfAorICBnZXQgSW50bC5M
b2NhbGUucHJvdG90eXBlLnRleHRJbmZvCisgIC4uLgorICA3LiBQZXJmb3JtICEgQ3JlYXRlRGF0
YVByb3BlcnR5T3JUaHJvdyhpbmZvLCAiZGlyZWN0aW9uIiwgZGlyKS4KK2ZlYXR1cmVzOiBbSW50
bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanMs
IGNvbXBhcmVBcnJheS5qc10KKy0tLSovCisKK2NvbnN0IHJlc3VsdCA9IG5ldyBJbnRsLkxvY2Fs
ZSgnZW4nKS50ZXh0SW5mbzsKKworYXNzZXJ0LmNvbXBhcmVBcnJheShSZWZsZWN0Lm93bktleXMo
cmVzdWx0KSwgWydkaXJlY3Rpb24nXSk7CisKK3ZlcmlmeVByb3BlcnR5KHJlc3VsdCwgJ2RpcmVj
dGlvbicsIHsKKyAgd3JpdGFibGU6IHRydWUsCisgIGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZp
Z3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRs
NDAyL0xvY2FsZS9wcm90b3R5cGUvdGV4dEluZm8vb3V0cHV0LW9iamVjdC5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90ZXh0SW5mby9vdXRwdXQtb2Jq
ZWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjhkNmIxMmFjOWRmZmI0ZjhlMTlkNzI5MGY5ZWY1ODQwZTc3Njhh
MWEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2Fs
ZS9wcm90b3R5cGUvdGV4dEluZm8vb3V0cHV0LW9iamVjdC5qcwpAQCAtMCwwICsxLDE1IEBACisv
LyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZS5wcm90b3R5cGUudGV4dElu
Zm8KK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBvZiBJ
bnRsLkxvY2FsZS5wcm90b3R5cGUudGV4dEluZm8gaXMgYW4gT2JqZWN0LgoraW5mbzogfAorICBn
ZXQgSW50bC5Mb2NhbGUucHJvdG90eXBlLnRleHRJbmZvCisgIC4uLgorICA1LiBMZXQgaW5mbyBi
ZSAhIE9iamVjdENyZWF0ZSglT2JqZWN0LnByb3RvdHlwZSUpLgorZmVhdHVyZXM6IFtJbnRsLkxv
Y2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3Qu
Z2V0UHJvdG90eXBlT2YobmV3IEludGwuTG9jYWxlKCdlbicpLnRleHRJbmZvKSwgT2JqZWN0LnBy
b3RvdHlwZSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2Fs
ZS9wcm90b3R5cGUvdGV4dEluZm8vcHJvcC1kZXNjLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
aW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RleHRJbmZvL3Byb3AtZGVzYy5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li40ODYyZmQ1NThhZmJjMGRiYmU4OGM5OTc1ZjQ2YWU1ZWQwNDY1NjRmCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RleHRJ
bmZvL3Byb3AtZGVzYy5qcwpAQCAtMCwwICsxLDI1IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2Fs
aWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBi
eSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2Vz
aWQ6IHNlYy1pbnRsLmxvY2FsZQorZGVzY3JpcHRpb246ID4KKyAgICBDaGVja3MgdGhlICJ0ZXh0
SW5mbyIgcHJvcGVydHkgb2YgdGhlIExvY2FsZSBwcm90b3R5cGUgb2JqZWN0LgoraW5mbzogfAor
ICAgIEludGwuTG9jYWxlLnByb3RvdHlwZS50ZXh0SW5mbworCisgICAgVW5sZXNzIHNwZWNpZmll
ZCBvdGhlcndpc2UgaW4gdGhpcyBkb2N1bWVudCwgdGhlIG9iamVjdHMsIGZ1bmN0aW9ucywgYW5k
IGNvbnN0cnVjdG9ycyBkZXNjcmliZWQgaW4gdGhpcyBzdGFuZGFyZCBhcmUgc3ViamVjdCB0byB0
aGUgZ2VuZXJpYyByZXF1aXJlbWVudHMgYW5kIHJlc3RyaWN0aW9ucyBzcGVjaWZpZWQgZm9yIHN0
YW5kYXJkIGJ1aWx0LWluIEVDTUFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgRUNNQVNjcmlwdCAyMDE5
IHNjcmlwdCBTcGVjaWZpY2F0aW9uLCAxMHRoIGVkaXRpb24sIGNsYXVzZSAxNywgb3Igc3VjY2Vz
c29yLgorCisgICAgRXZlcnkgYWNjZXNzb3IgcHJvcGVydHkgZGVzY3JpYmVkIGluIGNsYXVzZXMg
MTggdGhyb3VnaCAyNiBhbmQgaW4gQW5uZXggQi4yIGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbRW51
bWVyYWJsZV1dOiBmYWxzZSwgW1tDb25maWd1cmFibGVdXTogdHJ1ZSB9IHVubGVzcyBvdGhlcndp
c2Ugc3BlY2lmaWVkLiBJZiBvbmx5IGEgZ2V0IGFjY2Vzc29yIGZ1bmN0aW9uIGlzIGRlc2NyaWJl
ZCwgdGhlIHNldCBhY2Nlc3NvciBmdW5jdGlvbiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgdW5kZWZp
bmVkLgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbSW50bC5Mb2Nh
bGUsSW50bC5Mb2NhbGUtaW5mb10KKy0tLSovCisKK2NvbnN0IHByb3BkZXNjID0gT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRsLkxvY2FsZS5wcm90b3R5cGUsICJ0ZXh0SW5mbyIp
OworYXNzZXJ0LnNhbWVWYWx1ZShwcm9wZGVzYy5zZXQsIHVuZGVmaW5lZCk7Cithc3NlcnQuc2Ft
ZVZhbHVlKHR5cGVvZiBwcm9wZGVzYy5nZXQsICJmdW5jdGlvbiIpOworCit2ZXJpZnlQcm9wZXJ0
eShJbnRsLkxvY2FsZS5wcm90b3R5cGUsICJ0ZXh0SW5mbyIsIHsKKyAgZW51bWVyYWJsZTogZmFs
c2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RpbWVab25lcy9icmFuZGluZy5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1lWm9uZXMv
YnJhbmRpbmcuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODUxMTBlMjJhYjg3NTAyMmY1YjViNGQwYTllMGExNWQ3
ZDhkODRlZQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIv
TG9jYWxlL3Byb3RvdHlwZS90aW1lWm9uZXMvYnJhbmRpbmcuanMKQEAgLTAsMCArMSwzMSBAQAor
Ly8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtSW50bC5Mb2NhbGUucHJvdG90eXBlLnRpbWVa
b25lcworZGVzY3JpcHRpb246ID4KKyAgICBWZXJpZmllcyB0aGUgYnJhbmRpbmcgY2hlY2sgZm9y
IHRoZSAidGltZVpvbmVzIiBwcm9wZXJ0eSBvZiB0aGUgTG9jYWxlIHByb3RvdHlwZSBvYmplY3Qu
CitpbmZvOiB8CisgICAgSW50bC5Mb2NhbGUucHJvdG90eXBlLnRpbWVab25lcworCisgICAgMi4g
SWYgVHlwZShsb2MpIGlzIG5vdCBPYmplY3Qgb3IgbG9jIGRvZXMgbm90IGhhdmUgYW4gW1tJbml0
aWFsaXplZExvY2FsZV1dIGludGVybmFsIHNsb3QsIHRoZW4KKyAgICAgICAgYS4gVGhyb3cgYSBU
eXBlRXJyb3IgZXhjZXB0aW9uLgorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1p
bmZvXQorLS0tKi8KKworY29uc3QgcHJvcGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKEludGwuTG9jYWxlLnByb3RvdHlwZSwgInRpbWVab25lcyIpOworYXNzZXJ0LnNhbWVW
YWx1ZSh0eXBlb2YgcHJvcGRlc2MuZ2V0LCAiZnVuY3Rpb24iKTsKK2NvbnN0IGludmFsaWRWYWx1
ZXMgPSBbCisgIHVuZGVmaW5lZCwKKyAgbnVsbCwKKyAgdHJ1ZSwKKyAgIiIsCisgIFN5bWJvbCgp
LAorICAxLAorICB7fSwKKyAgSW50bC5Mb2NhbGUucHJvdG90eXBlLAorXTsKKworZm9yIChjb25z
dCBpbnZhbGlkVmFsdWUgb2YgaW52YWxpZFZhbHVlcykgeworICBhc3NlcnQudGhyb3dzKFR5cGVF
cnJvciwgKCkgPT4gcHJvcGRlc2MuZ2V0LmNhbGwoaW52YWxpZFZhbHVlKSk7Cit9CmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpv
bmVzL25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5
cGUvdGltZVpvbmVzL25hbWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTQxNTZhZmYwNjk4MTE5YmJmN2NmMDg1
ZDJmZDI2ZGUwNDRlMmE2MAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1lWm9uZXMvbmFtZS5qcwpAQCAtMCwwICsxLDIy
IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhl
IExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZS5wcm90b3R5cGUu
dGltZVpvbmVzCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGUgIm5hbWUiIHByb3BlcnR5
IG9mIEludGwuTG9jYWxlLnByb3RvdHlwZS50aW1lWm9uZXMuCitpbmZvOiB8CisgICAgVW5sZXNz
IHNwZWNpZmllZCBvdGhlcndpc2UgaW4gdGhpcyBkb2N1bWVudCwgdGhlIG9iamVjdHMsIGZ1bmN0
aW9ucywgYW5kIGNvbnN0cnVjdG9ycyBkZXNjcmliZWQgaW4gdGhpcyBzdGFuZGFyZCBhcmUgc3Vi
amVjdCB0byB0aGUgZ2VuZXJpYyByZXF1aXJlbWVudHMgYW5kIHJlc3RyaWN0aW9ucyBzcGVjaWZp
ZWQgZm9yIHN0YW5kYXJkIGJ1aWx0LWluIEVDTUFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgRUNNQVNj
cmlwdCAyMDE5IExhbmd1YWdlIFNwZWNpZmljYXRpb24sIDEwdGggZWRpdGlvbiwgY2xhdXNlIDE3
LCBvciBzdWNjZXNzb3IuCisgICAgRXZlcnkgYnVpbHQtaW4gZnVuY3Rpb24gb2JqZWN0LCBpbmNs
dWRpbmcgY29uc3RydWN0b3JzLCB0aGF0IGlzIG5vdCBpZGVudGlmaWVkIGFzIGFuIGFub255bW91
cyBmdW5jdGlvbiBoYXMgYSBuYW1lIHByb3BlcnR5IHdob3NlIHZhbHVlIGlzIGEgU3RyaW5nLiBV
bmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhpcyB2YWx1ZSBpcyB0aGUgbmFtZSB0aGF0IGlz
IGdpdmVuIHRvIHRoZSBmdW5jdGlvbiBpbiB0aGlzIHNwZWNpZmljYXRpb24uIEZ1bmN0aW9ucyB0
aGF0IGFyZSBzcGVjaWZpZWQgYXMgZ2V0IG9yIHNldCBhY2Nlc3NvciBmdW5jdGlvbnMgb2YgYnVp
bHQtaW4gcHJvcGVydGllcyBoYXZlICJnZXQgIiBvciAic2V0ICIgcHJlcGVuZGVkIHRvIHRoZSBw
cm9wZXJ0eSBuYW1lIHN0cmluZy4KKyAgICBVbmxlc3Mgb3RoZXJ3aXNlIHNwZWNpZmllZCwgdGhl
IG5hbWUgcHJvcGVydHkgb2YgYSBidWlsdC1pbiBmdW5jdGlvbiBvYmplY3QsIGlmIGl0IGV4aXN0
cywgaGFzIHRoZSBhdHRyaWJ1dGVzIHsgW1tXcml0YWJsZV1dOiBmYWxzZSwgW1tFbnVtZXJhYmxl
XV06IGZhbHNlLCBbW0NvbmZpZ3VyYWJsZV1dOiB0cnVlIH0uCitpbmNsdWRlczogW3Byb3BlcnR5
SGVscGVyLmpzXQorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0t
Ki8KKworY29uc3QgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRs
LkxvY2FsZS5wcm90b3R5cGUsICJ0aW1lWm9uZXMiKS5nZXQ7Cit2ZXJpZnlQcm9wZXJ0eShnZXR0
ZXIsICJuYW1lIiwgeworICB2YWx1ZTogImdldCB0aW1lWm9uZXMiLAorICB3cml0YWJsZTogZmFs
c2UsCisgIGVudW1lcmFibGU6IGZhbHNlLAorICBjb25maWd1cmFibGU6IHRydWUsCit9KTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90
aW1lWm9uZXMvb3V0cHV0LWFycmF5LXNvcnRlZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2lu
dGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1lWm9uZXMvb3V0cHV0LWFycmF5LXNvcnRlZC5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hZTQ5OGNmZWIzYjgxODc3NTc5ZDg2MGNmMGI0ZjcwODlkNjMwMTJhCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90
eXBlL3RpbWVab25lcy9vdXRwdXQtYXJyYXktc29ydGVkLmpzCkBAIC0wLDAgKzEsMjIgQEAKKy8v
IENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhp
cyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlLnByb3RvdHlwZS50aW1lWm9u
ZXMKK2Rlc2NyaXB0aW9uOiA+CisgICAgQ2hlY2tzIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBvZiBJ
bnRsLkxvY2FsZS5wcm90b3R5cGUudGltZVpvbmVzIGlzIGEgc29ydGVkCisgICAgQXJyYXkuCitp
bmZvOiB8CisgIFRpbWVab25lc09mTG9jYWxlICggbG9jICkKKyAgLi4uCisgIDQuIExldCBsaXN0
IGJlIGEgTGlzdCBvZiAxIG9yIG1vcmUgdW5pcXVlIHRpbWUgem9uZSBpZGVudGlmaWVycywgd2hp
Y2ggbXVzdCBiZQorICBTdHJpbmcgdmFsdWVzIGluZGljYXRpbmcgYSBab25lIG9yIExpbmsgbmFt
ZSBvZiB0aGUgSUFOQSBUaW1lIFpvbmUgRGF0YWJhc2UsCisgIG9yZGVyZWQgYXMgaWYgYW4gQXJy
YXkgb2YgdGhlIHNhbWUgdmFsdWVzIGhhZCBiZWVuIHNvcnRlZCB1c2luZworICAlQXJyYXkucHJv
dG90eXBlLnNvcnQlIHVzaW5nIHVuZGVmaW5lZCBhcyBjb21wYXJlZm4sIG9mIHRob3NlIGluIGNv
bW1vbiB1c2UKKyAgaW4gcmVnaW9uLgorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2Fs
ZS1pbmZvXQoraW5jbHVkZXM6IFtjb21wYXJlQXJyYXkuanNdCistLS0qLworCitjb25zdCBvdXRw
dXQgPSBuZXcgSW50bC5Mb2NhbGUoJ2VuLVVTJykudGltZVpvbmVzOworYXNzZXJ0LmNvbXBhcmVB
cnJheShvdXRwdXQsIFsuLi5vdXRwdXRdLnNvcnQoKSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpvbmVzL291dHB1dC1hcnJh
eS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS90aW1l
Wm9uZXMvb3V0cHV0LWFycmF5LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdlYThlODliNjQyZjY5ZGY3MTFmZjVj
YjljZTc5NGM5MDU1ZjZmNDUKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpvbmVzL291dHB1dC1hcnJheS5qcwpAQCAt
MCwwICsxLDE2IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZS5w
cm90b3R5cGUudGltZVpvbmVzCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNrcyB0aGF0IHRoZSBy
ZXR1cm4gdmFsdWUgb2YgSW50bC5Mb2NhbGUucHJvdG90eXBlLnRpbWVab25lcyBpcyBhbiBBcnJh
eQorICAgIHdoZW4gYSByZWdpb24gc3VidGFnIGlzIHVzZWQuCitpbmZvOiB8CisgIFRpbWVab25l
c09mTG9jYWxlICggbG9jICkKKyAgLi4uCisgIDUuIFJldHVybiAhIENyZWF0ZUFycmF5RnJvbUxp
c3RBbmRQcmVmZXJyZWQoIGxpc3QsIHByZWZlcnJlZCApLgorZmVhdHVyZXM6IFtJbnRsLkxvY2Fs
ZSxJbnRsLkxvY2FsZS1pbmZvXQorLS0tKi8KKworYXNzZXJ0KEFycmF5LmlzQXJyYXkobmV3IElu
dGwuTG9jYWxlKCdlbi1VUycpLnRpbWVab25lcykpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RpbWVab25lcy9vdXRwdXQtdW5kZWZp
bmVkLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3Rp
bWVab25lcy9vdXRwdXQtdW5kZWZpbmVkLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAxZTc3MTdiMWExMzEzOTk4
ZmRlNDA1YjcxZmUyMDUyNTI3NWM2NzMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpvbmVzL291dHB1dC11bmRlZmlu
ZWQuanMKQEAgLTAsMCArMSwxOSBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBs
aWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtaW50
bC5sb2NhbGUucHJvdG90eXBlLnRpbWVab25lcworZGVzY3JpcHRpb246ID4KKyAgICBDaGVja3Mg
dGhhdCB0aGUgcmV0dXJuIHZhbHVlIG9mIEludGwuTG9jYWxlLnByb3RvdHlwZS50aW1lWm9uZXMg
aXMgdW5kZWZpbmVkCisgICAgd2hlbiBubyByZWdpb24gc3VidGFnIGlzIHVzZWQuCitpbmZvOiB8
CisgIGdldCBJbnRsLkxvY2FsZS5wcm90b3R5cGUudGltZVpvbmVzCisgIC4uLgorICA0LiBJZiB0
aGUgdW5pY29kZV9sYW5ndWFnZV9pZCBwcm9kdWN0aW9uIG9mIGxvY2FsZSBkb2VzIG5vdCBjb250
YWluIHRoZQorICBbIi0iIHVuaWNvZGVfcmVnaW9uX3N1YnRhZ10gc2VxdWVuY2UsIHJldHVybiB1
bmRlZmluZWQuCitmZWF0dXJlczogW0ludGwuTG9jYWxlLEludGwuTG9jYWxlLWluZm9dCistLS0q
LworCitjb25zdCBwcm9wZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50
bC5Mb2NhbGUucHJvdG90eXBlLCAidGltZVpvbmVzIik7Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVv
ZiBwcm9wZGVzYy5nZXQsICJmdW5jdGlvbiIpOworYXNzZXJ0LnNhbWVWYWx1ZShuZXcgSW50bC5M
b2NhbGUoJ2VuJykudGltZVpvbmVzLCB1bmRlZmluZWQpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RpbWVab25lcy9wcm9wLWRlc2Mu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvdGltZVpv
bmVzL3Byb3AtZGVzYy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMTFjYTkzMzk0NjkyNDZmZjJlNTdhYmVlMWQw
M2IxNmFkNjdkZDZjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50
bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3RpbWVab25lcy9wcm9wLWRlc2MuanMKQEAgLTAsMCArMSwy
NSBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtaW50bC5sb2NhbGUKK2Rlc2NyaXB0
aW9uOiA+CisgICAgQ2hlY2tzIHRoZSAidGltZVpvbmVzIiBwcm9wZXJ0eSBvZiB0aGUgTG9jYWxl
IHByb3RvdHlwZSBvYmplY3QuCitpbmZvOiB8CisgICAgSW50bC5Mb2NhbGUucHJvdG90eXBlLnRp
bWVab25lcworCisgICAgVW5sZXNzIHNwZWNpZmllZCBvdGhlcndpc2UgaW4gdGhpcyBkb2N1bWVu
dCwgdGhlIG9iamVjdHMsIGZ1bmN0aW9ucywgYW5kIGNvbnN0cnVjdG9ycyBkZXNjcmliZWQgaW4g
dGhpcyBzdGFuZGFyZCBhcmUgc3ViamVjdCB0byB0aGUgZ2VuZXJpYyByZXF1aXJlbWVudHMgYW5k
IHJlc3RyaWN0aW9ucyBzcGVjaWZpZWQgZm9yIHN0YW5kYXJkIGJ1aWx0LWluIEVDTUFTY3JpcHQg
b2JqZWN0cyBpbiB0aGUgRUNNQVNjcmlwdCAyMDE5IHNjcmlwdCBTcGVjaWZpY2F0aW9uLCAxMHRo
IGVkaXRpb24sIGNsYXVzZSAxNywgb3Igc3VjY2Vzc29yLgorCisgICAgRXZlcnkgYWNjZXNzb3Ig
cHJvcGVydHkgZGVzY3JpYmVkIGluIGNsYXVzZXMgMTggdGhyb3VnaCAyNiBhbmQgaW4gQW5uZXgg
Qi4yIGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbRW51bWVyYWJsZV1dOiBmYWxzZSwgW1tDb25maWd1
cmFibGVdXTogdHJ1ZSB9IHVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLiBJZiBvbmx5IGEgZ2V0
IGFjY2Vzc29yIGZ1bmN0aW9uIGlzIGRlc2NyaWJlZCwgdGhlIHNldCBhY2Nlc3NvciBmdW5jdGlv
biBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgdW5kZWZpbmVkLgoraW5jbHVkZXM6IFtwcm9wZXJ0eUhl
bHBlci5qc10KK2ZlYXR1cmVzOiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KKy0tLSov
CisKK2NvbnN0IHByb3BkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJbnRs
LkxvY2FsZS5wcm90b3R5cGUsICJ0aW1lWm9uZXMiKTsKK2Fzc2VydC5zYW1lVmFsdWUocHJvcGRl
c2Muc2V0LCB1bmRlZmluZWQpOworYXNzZXJ0LnNhbWVWYWx1ZSh0eXBlb2YgcHJvcGRlc2MuZ2V0
LCAiZnVuY3Rpb24iKTsKKwordmVyaWZ5UHJvcGVydHkoSW50bC5Mb2NhbGUucHJvdG90eXBlLCAi
dGltZVpvbmVzIiwgeworICBlbnVtZXJhYmxlOiBmYWxzZSwKKyAgY29uZmlndXJhYmxlOiB0cnVl
LAorfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9w
cm90b3R5cGUvd2Vla0luZm8vYnJhbmRpbmcuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRs
NDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vYnJhbmRpbmcuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGNi
YTU5YjI4OTI3MmNjMDBjZTYxMzgzNTI4ZDBlMjZhMzFlOTEzNQotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9jYWxlL3Byb3RvdHlwZS93ZWVrSW5mby9i
cmFuZGluZy5qcwpAQCAtMCwwICsxLDMxIEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMu
TC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNl
Yy1JbnRsLkxvY2FsZS5wcm90b3R5cGUud2Vla0luZm8KK2Rlc2NyaXB0aW9uOiA+CisgICAgVmVy
aWZpZXMgdGhlIGJyYW5kaW5nIGNoZWNrIGZvciB0aGUgIndlZWtJbmZvIiBwcm9wZXJ0eSBvZiB0
aGUgTG9jYWxlIHByb3RvdHlwZSBvYmplY3QuCitpbmZvOiB8CisgICAgSW50bC5Mb2NhbGUucHJv
dG90eXBlLndlZWtJbmZvCisKKyAgICAyLiBJZiBUeXBlKGxvYykgaXMgbm90IE9iamVjdCBvciBs
b2MgZG9lcyBub3QgaGF2ZSBhbiBbW0luaXRpYWxpemVkTG9jYWxlXV0gaW50ZXJuYWwgc2xvdCwg
dGhlbgorICAgICAgICBhLiBUaHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24uCitmZWF0dXJlczog
W0ludGwuTG9jYWxlLEludGwuTG9jYWxlLWluZm9dCistLS0qLworCitjb25zdCBwcm9wZGVzYyA9
IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSW50bC5Mb2NhbGUucHJvdG90eXBlLCAi
d2Vla0luZm8iKTsKK2Fzc2VydC5zYW1lVmFsdWUodHlwZW9mIHByb3BkZXNjLmdldCwgImZ1bmN0
aW9uIik7Citjb25zdCBpbnZhbGlkVmFsdWVzID0gWworICB1bmRlZmluZWQsCisgIG51bGwsCisg
IHRydWUsCisgICIiLAorICBTeW1ib2woKSwKKyAgMSwKKyAge30sCisgIEludGwuTG9jYWxlLnBy
b3RvdHlwZSwKK107CisKK2ZvciAoY29uc3QgaW52YWxpZFZhbHVlIG9mIGludmFsaWRWYWx1ZXMp
IHsKKyAgYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHByb3BkZXNjLmdldC5jYWxsKGlu
dmFsaWRWYWx1ZSkpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQw
Mi9Mb2NhbGUvcHJvdG90eXBlL3dlZWtJbmZvL25hbWUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vbmFtZS5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5j
NWE0OTc0YmVlZTMwMWFjMDFiZDI3YmYwN2QzYTIyYTBkMGU1ODI5Ci0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3dlZWtJbmZv
L25hbWUuanMKQEAgLTAsMCArMSwyMiBAQAorLy8gQ29weXJpZ2h0IDIwMjEgSWdhbGlhLCBTLkwu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMt
aW50bC5sb2NhbGUucHJvdG90eXBlLndlZWtJbmZvCitkZXNjcmlwdGlvbjogPgorICAgIENoZWNr
cyB0aGUgIm5hbWUiIHByb3BlcnR5IG9mIEludGwuTG9jYWxlLnByb3RvdHlwZS53ZWVrSW5mby4K
K2luZm86IHwKKyAgICBVbmxlc3Mgc3BlY2lmaWVkIG90aGVyd2lzZSBpbiB0aGlzIGRvY3VtZW50
LCB0aGUgb2JqZWN0cywgZnVuY3Rpb25zLCBhbmQgY29uc3RydWN0b3JzIGRlc2NyaWJlZCBpbiB0
aGlzIHN0YW5kYXJkIGFyZSBzdWJqZWN0IHRvIHRoZSBnZW5lcmljIHJlcXVpcmVtZW50cyBhbmQg
cmVzdHJpY3Rpb25zIHNwZWNpZmllZCBmb3Igc3RhbmRhcmQgYnVpbHQtaW4gRUNNQVNjcmlwdCBv
YmplY3RzIGluIHRoZSBFQ01BU2NyaXB0IDIwMTkgTGFuZ3VhZ2UgU3BlY2lmaWNhdGlvbiwgMTB0
aCBlZGl0aW9uLCBjbGF1c2UgMTcsIG9yIHN1Y2Nlc3Nvci4KKyAgICBFdmVyeSBidWlsdC1pbiBm
dW5jdGlvbiBvYmplY3QsIGluY2x1ZGluZyBjb25zdHJ1Y3RvcnMsIHRoYXQgaXMgbm90IGlkZW50
aWZpZWQgYXMgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGhhcyBhIG5hbWUgcHJvcGVydHkgd2hvc2Ug
dmFsdWUgaXMgYSBTdHJpbmcuIFVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLCB0aGlzIHZhbHVl
IGlzIHRoZSBuYW1lIHRoYXQgaXMgZ2l2ZW4gdG8gdGhlIGZ1bmN0aW9uIGluIHRoaXMgc3BlY2lm
aWNhdGlvbi4gRnVuY3Rpb25zIHRoYXQgYXJlIHNwZWNpZmllZCBhcyBnZXQgb3Igc2V0IGFjY2Vz
c29yIGZ1bmN0aW9ucyBvZiBidWlsdC1pbiBwcm9wZXJ0aWVzIGhhdmUgImdldCAiIG9yICJzZXQg
IiBwcmVwZW5kZWQgdG8gdGhlIHByb3BlcnR5IG5hbWUgc3RyaW5nLgorICAgIFVubGVzcyBvdGhl
cndpc2Ugc3BlY2lmaWVkLCB0aGUgbmFtZSBwcm9wZXJ0eSBvZiBhIGJ1aWx0LWluIGZ1bmN0aW9u
IG9iamVjdCwgaWYgaXQgZXhpc3RzLCBoYXMgdGhlIGF0dHJpYnV0ZXMgeyBbW1dyaXRhYmxlXV06
IGZhbHNlLCBbW0VudW1lcmFibGVdXTogZmFsc2UsIFtbQ29uZmlndXJhYmxlXV06IHRydWUgfS4K
K2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNdCitmZWF0dXJlczogW0ludGwuTG9jYWxlLElu
dGwuTG9jYWxlLWluZm9dCistLS0qLworCitjb25zdCBnZXR0ZXIgPSBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKEludGwuTG9jYWxlLnByb3RvdHlwZSwgIndlZWtJbmZvIikuZ2V0Owor
dmVyaWZ5UHJvcGVydHkoZ2V0dGVyLCAibmFtZSIsIHsKKyAgdmFsdWU6ICJnZXQgd2Vla0luZm8i
LAorICB3cml0YWJsZTogZmFsc2UsCisgIGVudW1lcmFibGU6IGZhbHNlLAorICBjb25maWd1cmFi
bGU6IHRydWUsCit9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIv
TG9jYWxlL3Byb3RvdHlwZS93ZWVrSW5mby9vdXRwdXQtb2JqZWN0LWtleXMuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vb3V0cHV0LW9i
amVjdC1rZXlzLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVkN2EyYTUxY2E5NmVhYTFlY2RhNTAyNTgzZGNmMjVh
NmMxZGFmNDcKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAy
L0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vb3V0cHV0LW9iamVjdC1rZXlzLmpzCkBAIC0wLDAg
KzEsNTIgQEAKKy8vIENvcHlyaWdodCAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWludGwubG9jYWxlLnByb3Rv
dHlwZS53ZWVrSW5mbworZGVzY3JpcHRpb246ID4KKyAgICBDaGVja3MgdGhhdCB0aGUgcmV0dXJu
IHZhbHVlIG9mIEludGwuTG9jYWxlLnByb3RvdHlwZS53ZWVrSW5mbyBpcyBhbiBPYmplY3QKKyAg
ICB3aXRoIHRoZSBjb3JyZWN0IGtleXMgYW5kIHByb3BlcnRpZXMuCitpbmZvOiB8CisgIGdldCBJ
bnRsLkxvY2FsZS5wcm90b3R5cGUud2Vla0luZm8KKyAgLi4uCisgIDcuIFBlcmZvcm0gISBDcmVh
dGVEYXRhUHJvcGVydHlPclRocm93KGluZm8sICJmaXJzdERheSIsIHdpLltbRmlyc3REYXldXSku
CisgIDguIFBlcmZvcm0gISBDcmVhdGVEYXRhUHJvcGVydHlPclRocm93KGluZm8sICJ3ZWVrZW5k
U3RhcnQiLCB3aS5bW1dlZWtlbmRTdGFydF1dKS4KKyAgOS4gUGVyZm9ybSAhIENyZWF0ZURhdGFQ
cm9wZXJ0eU9yVGhyb3coaW5mbywgIndlZWtlbmRFbmQiLCB3aS5bW1dlZWtlbmRFbmRdXSkuCisg
IDEwLiBQZXJmb3JtICEgQ3JlYXRlRGF0YVByb3BlcnR5T3JUaHJvdyhpbmZvLCAibWluaW1hbERh
eXMiLCB3aS5bW01pbmltYWxEYXlzXV0pLgorICAuLi4KKworICBDcmVhdGVEYXRhUHJvcGVydHkg
KCBPLCBQLCBWICkKKyAgLi4uCisgIDMuIExldCBuZXdEZXNjIGJlIHRoZSBQcm9wZXJ0eURlc2Ny
aXB0b3IgeyBbW1ZhbHVlXV06IFYsIFtbV3JpdGFibGVdXTogdHJ1ZSwKKyAgW1tFbnVtZXJhYmxl
XV06IHRydWUsIFtbQ29uZmlndXJhYmxlXV06IHRydWUgfS4KK2ZlYXR1cmVzOiBbUmVmbGVjdCxJ
bnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQoraW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5q
cywgY29tcGFyZUFycmF5LmpzXQorLS0tKi8KKworY29uc3QgcmVzdWx0ID0gbmV3IEludGwuTG9j
YWxlKCdlbicpLndlZWtJbmZvOworCithc3NlcnQuY29tcGFyZUFycmF5KFJlZmxlY3Qub3duS2V5
cyhyZXN1bHQpLCBbJ2ZpcnN0RGF5JywgJ3dlZWtlbmRTdGFydCcsICd3ZWVrZW5kRW5kJywgJ21p
bmltYWxEYXlzJ10pOworCit2ZXJpZnlQcm9wZXJ0eShyZXN1bHQsICdmaXJzdERheScsIHsKKyAg
d3JpdGFibGU6IHRydWUsCisgIGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1
ZQorfSk7CisKK3ZlcmlmeVByb3BlcnR5KHJlc3VsdCwgJ3dlZWtlbmRTdGFydCcsIHsKKyAgd3Jp
dGFibGU6IHRydWUsCisgIGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQor
fSk7CisKK3ZlcmlmeVByb3BlcnR5KHJlc3VsdCwgJ3dlZWtlbmRFbmQnLCB7CisgIHdyaXRhYmxl
OiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwor
Cit2ZXJpZnlQcm9wZXJ0eShyZXN1bHQsICdtaW5pbWFsRGF5cycsIHsKKyAgd3JpdGFibGU6IHRy
dWUsCisgIGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vl
a0luZm8vb3V0cHV0LW9iamVjdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvTG9j
YWxlL3Byb3RvdHlwZS93ZWVrSW5mby9vdXRwdXQtb2JqZWN0LmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBmMWY3
ZWFlZDE2MzZkNjQxYzBmMzVkMjVkMmE2M2E1MmY3YjBiM2IKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vb3V0
cHV0LW9iamVjdC5qcwpAQCAtMCwwICsxLDE1IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEs
IFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6
IHNlYy1pbnRsLmxvY2FsZS5wcm90b3R5cGUud2Vla0luZm8KK2Rlc2NyaXB0aW9uOiA+CisgICAg
Q2hlY2tzIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBvZiBJbnRsLkxvY2FsZS5wcm90b3R5cGUud2Vl
a0luZm8gaXMgYW4gT2JqZWN0LgoraW5mbzogfAorICBnZXQgSW50bC5Mb2NhbGUucHJvdG90eXBl
LndlZWtJbmZvCisgIC4uLgorICA1LiBMZXQgaW5mbyBiZSAhIE9iamVjdENyZWF0ZSglT2JqZWN0
LnByb3RvdHlwZSUpLgorZmVhdHVyZXM6IFtJbnRsLkxvY2FsZSxJbnRsLkxvY2FsZS1pbmZvXQor
LS0tKi8KKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YobmV3IEludGwu
TG9jYWxlKCdlbicpLndlZWtJbmZvKSwgT2JqZWN0LnByb3RvdHlwZSk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL0xvY2FsZS9wcm90b3R5cGUvd2Vla0luZm8vcHJv
cC1kZXNjLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBl
L3dlZWtJbmZvL3Byb3AtZGVzYy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xODhhYTBiN2E0YTdlY2M1YWE5MjZl
Njk2M2FlY2NiYzZjYjUzMTNiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvaW50bDQwMi9Mb2NhbGUvcHJvdG90eXBlL3dlZWtJbmZvL3Byb3AtZGVzYy5qcwpAQCAtMCww
ICsxLDI1IEBACisvLyBDb3B5cmlnaHQgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1pbnRsLmxvY2FsZQorZGVz
Y3JpcHRpb246ID4KKyAgICBDaGVja3MgdGhlICJ3ZWVrSW5mbyIgcHJvcGVydHkgb2YgdGhlIExv
Y2FsZSBwcm90b3R5cGUgb2JqZWN0LgoraW5mbzogfAorICAgIEludGwuTG9jYWxlLnByb3RvdHlw
ZS53ZWVrSW5mbworCisgICAgVW5sZXNzIHNwZWNpZmllZCBvdGhlcndpc2UgaW4gdGhpcyBkb2N1
bWVudCwgdGhlIG9iamVjdHMsIGZ1bmN0aW9ucywgYW5kIGNvbnN0cnVjdG9ycyBkZXNjcmliZWQg
aW4gdGhpcyBzdGFuZGFyZCBhcmUgc3ViamVjdCB0byB0aGUgZ2VuZXJpYyByZXF1aXJlbWVudHMg
YW5kIHJlc3RyaWN0aW9ucyBzcGVjaWZpZWQgZm9yIHN0YW5kYXJkIGJ1aWx0LWluIEVDTUFTY3Jp
cHQgb2JqZWN0cyBpbiB0aGUgRUNNQVNjcmlwdCAyMDE5IHNjcmlwdCBTcGVjaWZpY2F0aW9uLCAx
MHRoIGVkaXRpb24sIGNsYXVzZSAxNywgb3Igc3VjY2Vzc29yLgorCisgICAgRXZlcnkgYWNjZXNz
b3IgcHJvcGVydHkgZGVzY3JpYmVkIGluIGNsYXVzZXMgMTggdGhyb3VnaCAyNiBhbmQgaW4gQW5u
ZXggQi4yIGhhcyB0aGUgYXR0cmlidXRlcyB7IFtbRW51bWVyYWJsZV1dOiBmYWxzZSwgW1tDb25m
aWd1cmFibGVdXTogdHJ1ZSB9IHVubGVzcyBvdGhlcndpc2Ugc3BlY2lmaWVkLiBJZiBvbmx5IGEg
Z2V0IGFjY2Vzc29yIGZ1bmN0aW9uIGlzIGRlc2NyaWJlZCwgdGhlIHNldCBhY2Nlc3NvciBmdW5j
dGlvbiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgdW5kZWZpbmVkLgoraW5jbHVkZXM6IFtwcm9wZXJ0
eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbSW50bC5Mb2NhbGUsSW50bC5Mb2NhbGUtaW5mb10KKy0t
LSovCisKK2NvbnN0IHByb3BkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihJ
bnRsLkxvY2FsZS5wcm90b3R5cGUsICJ3ZWVrSW5mbyIpOworYXNzZXJ0LnNhbWVWYWx1ZShwcm9w
ZGVzYy5zZXQsIHVuZGVmaW5lZCk7Cithc3NlcnQuc2FtZVZhbHVlKHR5cGVvZiBwcm9wZGVzYy5n
ZXQsICJmdW5jdGlvbiIpOworCit2ZXJpZnlQcm9wZXJ0eShJbnRsLkxvY2FsZS5wcm90b3R5cGUs
ICJ3ZWVrSW5mbyIsIHsKKyAgZW51bWVyYWJsZTogZmFsc2UsCisgIGNvbmZpZ3VyYWJsZTogdHJ1
ZSwKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50
ZXIvY29uc3RydWN0b3Ivc3VwcG9ydGVkTG9jYWxlc09mL2xvY2FsZXMtc3BlY2lmaWMuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9jb25zdHJ1Y3Rvci9zdXBwb3J0
ZWRMb2NhbGVzT2YvbG9jYWxlcy1zcGVjaWZpYy5qcwppbmRleCAzMzM4MThmMDBkMDgyMDViZmJk
OWVlZWYzZWZiMmNkNjUzZjJhNGI0Li5iYThlY2JmYzQ2ZDhlM2IwZTY3YmZiYjAzNjJhM2ZjMzQz
ZjM5ZjJiIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRl
ci9jb25zdHJ1Y3Rvci9zdXBwb3J0ZWRMb2NhbGVzT2YvbG9jYWxlcy1zcGVjaWZpYy5qcworKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9jb25zdHJ1Y3Rvci9zdXBw
b3J0ZWRMb2NhbGVzT2YvbG9jYWxlcy1zcGVjaWZpYy5qcwpAQCAtMTksNCArMTksNCBAQAogYXNz
ZXJ0LmNvbXBhcmVBcnJheShJbnRsLlNlZ21lbnRlci5zdXBwb3J0ZWRMb2NhbGVzT2YoInNyIiks
IFsic3IiXSk7CiAKIGNvbnN0IG11bHRpTG9jYWxlID0gWyJzci1UaGFpLVJTIiwgImRlIiwgInpo
LUNOIl07Ci1hc3NlcnQuY29tcGFyZUFycmF5KEludGwuU2VnbWVudGVyLnN1cHBvcnRlZExvY2Fs
ZXNPZihtdWx0aUxvY2FsZSksIG11bHRpTG9jYWxlKTsKK2Fzc2VydC5jb21wYXJlQXJyYXkoSW50
bC5TZWdtZW50ZXIuc3VwcG9ydGVkTG9jYWxlc09mKG11bHRpTG9jYWxlLCB7bG9jYWxlTWF0Y2hl
cjogImxvb2t1cCJ9KSwgbXVsdGlMb2NhbGUpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvY29udGFpbmluZy9pc3dv
cmRsaWtlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90
eXBlL3NlZ21lbnQvY29udGFpbmluZy9pc3dvcmRsaWtlLmpzCmluZGV4IDhkMDdlYWI0MDI1ODNh
NDk2NTc4ZDQ2NWU4NTA5ZDUzZGNlZWY1YTguLjFjMWM2M2E5YzhhNmQwZjc0ZTJlZmY5MGViZWVm
MDljMDYyNGJkZTEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2Vn
bWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvaXN3b3JkbGlrZS5qcworKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9j
b250YWluaW5nL2lzd29yZGxpa2UuanMKQEAgLTEzLDYgKzEzLDcgQEAKICAgICAgYS4gTGV0IGlz
V29yZExpa2UgYmUgYSBCb29sZWFuIHZhbHVlIGluZGljYXRpbmcgd2hldGhlciB0aGUgc2VnbWVu
dCBpbiBzdHJpbmcgaXMgIndvcmQtbGlrZSIgYWNjb3JkaW5nIHRvIGxvY2FsZSBzZWdtZW50ZXIu
W1tMb2NhbGVdXS4KICAgICAgYi4gUGVyZm9ybSAhIENyZWF0ZURhdGFQcm9wZXJ0eU9yVGhyb3co
cmVzdWx0LCAiaXNXb3JkTGlrZSIsIGlzV29yZExpa2UpLgogCitpbmNsdWRlczogW2NvbXBhcmVB
cnJheS5qc10KIGZlYXR1cmVzOiBbSW50bC5TZWdtZW50ZXJdCiAtLS0qLwogCkBAIC00OSw2ICs1
MCw3IEBACiAgICAgICAgICAgYXNzZXJ0LnNhbWVWYWx1ZSgic3RyaW5nIiwgdHlwZW9mIHJlc3Vs
dC5pbnB1dCwgYCR7bXNnfSBpbnB1dGApOwogICAgICAgICAgIGFzc2VydC5zYW1lVmFsdWUodW5k
ZWZpbmVkLCByZXN1bHQuaXNXb3JkTGlrZSwKICAgICAgICAgICAgICAgYCR7bXNnfSBpc1dvcmRM
aWtlIHNob3VsZCBiZSB1bmRlZmluZWRgKTsKKyAgICAgICAgICBhc3NlcnQuY29tcGFyZUFycmF5
KE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHJlc3VsdCksIFsic2VnbWVudCIsICJpbmRleCIs
ICJpbnB1dCJdKTsKICAgICAgICAgfQogICAgICAgfSk7CiAgICAgfSk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9j
b250YWluaW5nL29uZS1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2Vn
bWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvb25lLWluZGV4LmpzCmluZGV4IDFh
MTAzZjUxYWI0NTBiNTdkMTVmYTIzMzNhYThjMjE3NmUzZTIwNWEuLjIwM2Y3ZjEyMGNkMTcwOWJl
NjNkYzdhNzRmOTAyNTA3MjczYjVkNTYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvb25lLWluZGV4
LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlw
ZS9zZWdtZW50L2NvbnRhaW5pbmcvb25lLWluZGV4LmpzCkBAIC0zNiw2ICszNiw5IEBACiAgICAg
IjE0LjlFLTEiLAogICAgICIxNC45ZS0xIiwKICAgICB0cnVlLAorICAgIHsgdG9TdHJpbmcoKXsg
cmV0dXJuICIxIjsgfSB9LAorICAgIHsgdmFsdWVPZigpeyByZXR1cm4gMTsgfSB9LAorICAgIHsg
W1N5bWJvbC50b1ByaW1pdGl2ZV0oKXsgcmV0dXJuIDE7IH0gfSwKIF07CiAKIC8vIEV4Y2VwdCBn
cmFudWxhcml0eTogInNlbnRlbmNlIiwgY2hlY2sgdGhlIHJlc3VsdC5zZWdtZW50IGlzICIgIi4K
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3Rv
dHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvb3V0LW9mLWJvdW5kLWluZGV4LmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvY29udGFpbmlu
Zy9vdXQtb2YtYm91bmQtaW5kZXguanMKaW5kZXggNzM2NTY0OGQ1ZTYxNTY2OGE1MDViMjFlZGQx
NDlhMGI5MmM5YTU1My4uM2IwODE3OTBkZDNkNzYyNzA3NTliNGU0OGZmYjhmOTAzYTU4Zjk3NiAx
MDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90
eXBlL3NlZ21lbnQvY29udGFpbmluZy9vdXQtb2YtYm91bmQtaW5kZXguanMKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvY29udGFp
bmluZy9vdXQtb2YtYm91bmQtaW5kZXguanMKQEAgLTM3LDYgKzM3LDkgQEAKICAgICAtSW5maW5p
dHksCiAgICAgIkluZmluaXR5IiwKICAgICAiLUluZmluaXR5IiwKKyAgICB7IHRvU3RyaW5nKCl7
IHJldHVybiAiLTEiOyB9IH0sCisgICAgeyB2YWx1ZU9mKCl7IHJldHVybiBpbnB1dC5sZW5ndGg7
IH0gfSwKKyAgICB7IFtTeW1ib2wudG9QcmltaXRpdmVdKCl7IHJldHVybiAtMTsgfSB9LAogXTsK
IAogZ3JhbnVsYXJpdGllcy5mb3JFYWNoKApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvY29udGFpbmluZy93b3JkLWlz
d29yZGxpa2UuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9wcm90
b3R5cGUvc2VnbWVudC9jb250YWluaW5nL3dvcmQtaXN3b3JkbGlrZS5qcwppbmRleCAzZWQ1ZGFi
MjNkYTEzYzE5ODFkMWI4OTFkM2FjZjg5MzFkMDhjODM1Li4yMWQxMWM2MjMwNTkwYTM2NDEwODk5
ZjFjZmM2OTRmYTU0MmFjOTQ4IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRs
NDAyL1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9jb250YWluaW5nL3dvcmQtaXN3b3JkbGlr
ZS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9wcm90b3R5
cGUvc2VnbWVudC9jb250YWluaW5nL3dvcmQtaXN3b3JkbGlrZS5qcwpAQCAtMTMsNiArMTMsNyBA
QAogICAgICBhLiBMZXQgaXNXb3JkTGlrZSBiZSBhIEJvb2xlYW4gdmFsdWUgaW5kaWNhdGluZyB3
aGV0aGVyIHRoZSBzZWdtZW50IGluIHN0cmluZyBpcyAid29yZC1saWtlIiBhY2NvcmRpbmcgdG8g
bG9jYWxlIHNlZ21lbnRlci5bW0xvY2FsZV1dLgogICAgICBiLiBQZXJmb3JtICEgQ3JlYXRlRGF0
YVByb3BlcnR5T3JUaHJvdyhyZXN1bHQsICJpc1dvcmRMaWtlIiwgaXNXb3JkTGlrZSkuCiAKK2lu
Y2x1ZGVzOiBbY29tcGFyZUFycmF5LmpzXQogZmVhdHVyZXM6IFtJbnRsLlNlZ21lbnRlcl0KIC0t
LSovCiAKQEAgLTQ4LDUgKzQ5LDcgQEAKICAgICBhc3NlcnQuc2FtZVZhbHVlKCJzdHJpbmciLCB0
eXBlb2YgcmVzdWx0LmlucHV0LCBtc2cgKyAiaW5wdXQiKTsKICAgICBhc3NlcnQuc2FtZVZhbHVl
KCJib29sZWFuIiwgdHlwZW9mIHJlc3VsdC5pc1dvcmRMaWtlLAogICAgICAgICBtc2cgKyAiaXNX
b3JkTGlrZSBzaG91bGQgYmUgYm9vbGVhbiIpOworICAgIGFzc2VydC5jb21wYXJlQXJyYXkoT2Jq
ZWN0LmdldE93blByb3BlcnR5TmFtZXMocmVzdWx0KSwKKyAgICAgIFsic2VnbWVudCIsICJpbmRl
eCIsICJpbnB1dCIsICJpc1dvcmRMaWtlIl0pOwogICB9CiB9KTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRh
aW5pbmcvemVyby1pbmRleC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVu
dGVyL3Byb3RvdHlwZS9zZWdtZW50L2NvbnRhaW5pbmcvemVyby1pbmRleC5qcwppbmRleCBlZjlm
NjljMWRmMGM4ZDA0NmQyZTYyYTZjNDQwNjNjYmJhMjBhM2FjLi45ODYxNjMxZTdlMzU0YTZhNTZi
ZDgzNzY0NGNiNDFmOTNkZWYxZGM0IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9p
bnRsNDAyL1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9jb250YWluaW5nL3plcm8taW5kZXgu
anMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBl
L3NlZ21lbnQvY29udGFpbmluZy96ZXJvLWluZGV4LmpzCkBAIC01Miw2ICs1Miw5IEBACiAgICAg
Ii00LjllLTEiLAogICAgICI0LjlFLTEiLAogICAgICItNC45RS0xIiwKKyAgICB7IHRvU3RyaW5n
KCl7IHJldHVybiAiLTAuMSI7IH0gfSwKKyAgICB7IHZhbHVlT2YoKXsgcmV0dXJuIDAuMTsgfSB9
LAorICAgIHsgW1N5bWJvbC50b1ByaW1pdGl2ZV0oKXsgcmV0dXJuIC0wLjE7IH0gfSwKIF07CiAK
IGdyYW51bGFyaXRpZXMuZm9yRWFjaCgKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L3NlZ21lbnQtZ3JhcGhlbWUtaXRl
cmFibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9wcm90b3R5
cGUvc2VnbWVudC9zZWdtZW50LWdyYXBoZW1lLWl0ZXJhYmxlLmpzCmluZGV4IGU0MGFiYWEzNzdm
NjdmMWQ2NTY3YmNhZTRiMDBjMGM2OTRkYWQzZWEuLmM1NTJhZWFhYWUxNWQ0ZjQxN2Q5YWE3ODY5
YmNjMmNjMDJmNWIwMmEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIv
U2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L3NlZ21lbnQtZ3JhcGhlbWUtaXRlcmFibGUuanMK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3Nl
Z21lbnQvc2VnbWVudC1ncmFwaGVtZS1pdGVyYWJsZS5qcwpAQCAtNyw2ICs3LDcgQEAKIGRlc2Ny
aXB0aW9uOiBWZXJpZmllcyB0aGUgYmVoYXZpb3IgZm9yIHRoZSAic2VnbWVudCIgZnVuY3Rpb24g
b2YgdGhlIFNlZ21lbnRlciBwcm90b3R5cGUgb2JqZWN0LgogaW5mbzogfAogICAgIEludGwuU2Vn
bWVudGVyLnByb3RvdHlwZS5zZWdtZW50KCBzdHJpbmcgKQoraW5jbHVkZXM6IFtjb21wYXJlQXJy
YXkuanNdCiBmZWF0dXJlczogW0ludGwuU2VnbWVudGVyXQogLS0tKi8KIApAQCAtMzEsMTIgKzMy
LDIyIEBACiAgICAgXSkgewogICBsZXQgc2VnbWVudHMgPSBbXTsKICAgZm9yIChjb25zdCB2IG9m
IHNlZy5zZWdtZW50KHRleHQpKSB7Ci0gICAgYXNzZXJ0LnNhbWVWYWx1ZSh1bmRlZmluZWQsIHYu
aXNXb3JkTGlrZSk7Ci0gICAgYXNzZXJ0LnNhbWVWYWx1ZShmYWxzZSwgdi5oYXNPd25Qcm9wZXJ0
eSgiaXNXb3JkTGlrZSIpKTsKICAgICBhc3NlcnQuc2FtZVZhbHVlKCJzdHJpbmciLCB0eXBlb2Yg
di5zZWdtZW50KTsKLSAgICBhc3NlcnQodi5zZWdtZW50Lmxlbmd0aCA+IDApOworICAgIGFzc2Vy
dC5zYW1lVmFsdWUodHJ1ZSwgdi5zZWdtZW50Lmxlbmd0aCA+IDAsICJsZW5ndGggPiAwIik7CisK
KyAgICBhc3NlcnQuc2FtZVZhbHVlKCJudW1iZXIiLCB0eXBlb2Ygdi5pbmRleCk7CisgICAgYXNz
ZXJ0LnNhbWVWYWx1ZSh0cnVlLCB2LmluZGV4ID49IDAsICJpbmRleCA+PSAwIik7CisgICAgYXNz
ZXJ0LnNhbWVWYWx1ZSh0cnVlLCB2LmluZGV4IDwgdGV4dC5sZW5ndGgsICJpbmRleCA8IGlucHV0
Lmxlbmd0aCIpOworCiAgICAgYXNzZXJ0LnNhbWVWYWx1ZSgic3RyaW5nIiwgdHlwZW9mIHYuaW5w
dXQpOwogICAgIGFzc2VydC5zYW1lVmFsdWUodGV4dCwgdi5pbnB1dCk7CisKKyAgICBhc3NlcnQu
c2FtZVZhbHVlKHVuZGVmaW5lZCwgdi5pc1dvcmRMaWtlKTsKKyAgICBhc3NlcnQuc2FtZVZhbHVl
KGZhbHNlLCB2Lmhhc093blByb3BlcnR5KCJpc1dvcmRMaWtlIikpOworCisgICAgYXNzZXJ0LnNh
bWVWYWx1ZSh0ZXh0LnNsaWNlKHYuaW5kZXgsIHYuaW5kZXggKyB2LnNlZ21lbnQubGVuZ3RoKSwg
di5zZWdtZW50KTsKKyAgICBhc3NlcnQuY29tcGFyZUFycmF5KE9iamVjdC5nZXRPd25Qcm9wZXJ0
eU5hbWVzKHYpLCBbInNlZ21lbnQiLCAiaW5kZXgiLCAiaW5wdXQiXSk7CisKICAgICBzZWdtZW50
cy5wdXNoKHYuc2VnbWVudCk7CiAgIH0KICAgYXNzZXJ0LnNhbWVWYWx1ZSh0ZXh0LCBzZWdtZW50
cy5qb2luKCcnKSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1Nl
Z21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9zZWdtZW50LXNlbnRlbmNlLWl0ZXJhYmxlLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQv
c2VnbWVudC1zZW50ZW5jZS1pdGVyYWJsZS5qcwppbmRleCA2MGI1OGVkMTA1Mzc2ZDUyYmQyMjc5
MDUzY2I0NjJjMDNkN2M3MjA2Li5kOGIyZmY4NGQ3YjdjMGZjODBiZTcxZjlkZWI1MWNkZDgyODll
NTI1IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL1NlZ21lbnRlci9w
cm90b3R5cGUvc2VnbWVudC9zZWdtZW50LXNlbnRlbmNlLWl0ZXJhYmxlLmpzCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L3NlZ21l
bnQtc2VudGVuY2UtaXRlcmFibGUuanMKQEAgLTcsNiArNyw3IEBACiBkZXNjcmlwdGlvbjogVmVy
aWZpZXMgdGhlIGJlaGF2aW9yIGZvciB0aGUgInNlZ21lbnQiIGZ1bmN0aW9uIG9mIHRoZSBTZWdt
ZW50ZXIgcHJvdG90eXBlIG9iamVjdC4KIGluZm86IHwKICAgICBJbnRsLlNlZ21lbnRlci5wcm90
b3R5cGUuc2VnbWVudCggc3RyaW5nICkKK2luY2x1ZGVzOiBbY29tcGFyZUFycmF5LmpzXQogZmVh
dHVyZXM6IFtJbnRsLlNlZ21lbnRlcl0KIC0tLSovCiAKQEAgLTMxLDEyICszMiwyMiBAQAogICAg
IF0pIHsKICAgbGV0IHNlZ21lbnRzID0gW107CiAgIGZvciAoY29uc3QgdiBvZiBzZWcuc2VnbWVu
dCh0ZXh0KSkgewotICAgIGFzc2VydC5zYW1lVmFsdWUodW5kZWZpbmVkLCB2LmlzV29yZExpa2Up
OwotICAgIGFzc2VydC5zYW1lVmFsdWUoZmFsc2UsIHYuaGFzT3duUHJvcGVydHkoImlzV29yZExp
a2UiKSk7CiAgICAgYXNzZXJ0LnNhbWVWYWx1ZSgic3RyaW5nIiwgdHlwZW9mIHYuc2VnbWVudCk7
Ci0gICAgYXNzZXJ0KHYuc2VnbWVudC5sZW5ndGggPiAwKTsKKyAgICBhc3NlcnQuc2FtZVZhbHVl
KHRydWUsIHYuc2VnbWVudC5sZW5ndGggPiAwLCAibGVuZ3RoID4gMCIpOworCisgICAgYXNzZXJ0
LnNhbWVWYWx1ZSgibnVtYmVyIiwgdHlwZW9mIHYuaW5kZXgpOworICAgIGFzc2VydC5zYW1lVmFs
dWUodHJ1ZSwgdi5pbmRleCA+PSAwLCAiaW5kZXggPj0gMCIpOworICAgIGFzc2VydC5zYW1lVmFs
dWUodHJ1ZSwgdi5pbmRleCA8IHRleHQubGVuZ3RoLCAiaW5kZXggPCBpbnB1dC5sZW5ndGgiKTsK
KwogICAgIGFzc2VydC5zYW1lVmFsdWUoInN0cmluZyIsIHR5cGVvZiB2LmlucHV0KTsKICAgICBh
c3NlcnQuc2FtZVZhbHVlKHRleHQsIHYuaW5wdXQpOworCisgICAgYXNzZXJ0LnNhbWVWYWx1ZSh1
bmRlZmluZWQsIHYuaXNXb3JkTGlrZSk7CisgICAgYXNzZXJ0LnNhbWVWYWx1ZShmYWxzZSwgdi5o
YXNPd25Qcm9wZXJ0eSgiaXNXb3JkTGlrZSIpKTsKKworICAgIGFzc2VydC5zYW1lVmFsdWUodGV4
dC5zbGljZSh2LmluZGV4LCB2LmluZGV4ICsgdi5zZWdtZW50Lmxlbmd0aCksIHYuc2VnbWVudCk7
CisgICAgYXNzZXJ0LmNvbXBhcmVBcnJheShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2KSwg
WyJzZWdtZW50IiwgImluZGV4IiwgImlucHV0Il0pOworCiAgICAgc2VnbWVudHMucHVzaCh2LnNl
Z21lbnQpOwogICB9CiAgIGFzc2VydC5zYW1lVmFsdWUodGV4dCwgc2VnbWVudHMuam9pbignJykp
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJv
dG90eXBlL3NlZ21lbnQvc2VnbWVudC13b3JkLWl0ZXJhYmxlLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvaW50bDQwMi9TZWdtZW50ZXIvcHJvdG90eXBlL3NlZ21lbnQvc2VnbWVudC13b3JkLWl0
ZXJhYmxlLmpzCmluZGV4IGRkZTNmNjE0ODM0MjhlZWY4N2U5YTVkNGM4ZTU3YzJlNWUzYjdmZDAu
LjdkYzg5ODBiN2NmYjBiNTljZDdmODM2Y2Y5MmNhYjAxNGI0OWZkMmUgMTAwNjQ0Ci0tLSBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvU2VnbWVudGVyL3Byb3RvdHlwZS9zZWdtZW50L3Nl
Z21lbnQtd29yZC1pdGVyYWJsZS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAy
L1NlZ21lbnRlci9wcm90b3R5cGUvc2VnbWVudC9zZWdtZW50LXdvcmQtaXRlcmFibGUuanMKQEAg
LTcsNiArNyw3IEBACiBkZXNjcmlwdGlvbjogVmVyaWZpZXMgdGhlIGJlaGF2aW9yIGZvciB0aGUg
InNlZ21lbnQiIGZ1bmN0aW9uIG9mIHRoZSBTZWdtZW50ZXIgcHJvdG90eXBlIG9iamVjdC4KIGlu
Zm86IHwKICAgICBJbnRsLlNlZ21lbnRlci5wcm90b3R5cGUuc2VnbWVudCggc3RyaW5nICkKK2lu
Y2x1ZGVzOiBbY29tcGFyZUFycmF5LmpzXQogZmVhdHVyZXM6IFtJbnRsLlNlZ21lbnRlcl0KIC0t
LSovCiAKQEAgLTMxLDEyICszMiwyMiBAQAogICAgIF0pIHsKICAgbGV0IHNlZ21lbnRzID0gW107
CiAgIGZvciAoY29uc3QgdiBvZiBzZWcuc2VnbWVudCh0ZXh0KSkgewotICAgIGFzc2VydC5zYW1l
VmFsdWUoImJvb2xlYW4iLCB0eXBlb2Ygdi5pc1dvcmRMaWtlKTsKLSAgICBhc3NlcnQuc2FtZVZh
bHVlKHRydWUsIHYuaGFzT3duUHJvcGVydHkoImlzV29yZExpa2UiKSk7CiAgICAgYXNzZXJ0LnNh
bWVWYWx1ZSgic3RyaW5nIiwgdHlwZW9mIHYuc2VnbWVudCk7Ci0gICAgYXNzZXJ0KHYuc2VnbWVu
dC5sZW5ndGggPiAwKTsKKyAgICBhc3NlcnQuc2FtZVZhbHVlKHRydWUsIHYuc2VnbWVudC5sZW5n
dGggPiAwLCAibGVuZ3RoID4gMCIpOworCisgICAgYXNzZXJ0LnNhbWVWYWx1ZSgibnVtYmVyIiwg
dHlwZW9mIHYuaW5kZXgpOworICAgIGFzc2VydC5zYW1lVmFsdWUodHJ1ZSwgdi5pbmRleCA+PSAw
LCAiaW5kZXggPj0gMCIpOworICAgIGFzc2VydC5zYW1lVmFsdWUodHJ1ZSwgdi5pbmRleCA8IHRl
eHQubGVuZ3RoLCAiaW5kZXggPCBpbnB1dC5sZW5ndGgiKTsKKwogICAgIGFzc2VydC5zYW1lVmFs
dWUoInN0cmluZyIsIHR5cGVvZiB2LmlucHV0KTsKICAgICBhc3NlcnQuc2FtZVZhbHVlKHRleHQs
IHYuaW5wdXQpOworCisgICAgYXNzZXJ0LnNhbWVWYWx1ZSgiYm9vbGVhbiIsIHR5cGVvZiB2Lmlz
V29yZExpa2UpOworICAgIGFzc2VydC5zYW1lVmFsdWUodHJ1ZSwgdi5oYXNPd25Qcm9wZXJ0eSgi
aXNXb3JkTGlrZSIpKTsKKworICAgIGFzc2VydC5zYW1lVmFsdWUodGV4dC5zbGljZSh2LmluZGV4
LCB2LmluZGV4ICsgdi5zZWdtZW50Lmxlbmd0aCksIHYuc2VnbWVudCk7CisgICAgYXNzZXJ0LmNv
bXBhcmVBcnJheShPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2KSwgWyJzZWdtZW50IiwgImlu
ZGV4IiwgImlucHV0IiwgImlzV29yZExpa2UiXSk7CisKICAgICBzZWdtZW50cy5wdXNoKHYuc2Vn
bWVudCk7CiAgIH0KICAgYXNzZXJ0LnNhbWVWYWx1ZSh0ZXh0LCBzZWdtZW50cy5qb2luKCcnKSk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL2ZhbGxiYWNrLWxvY2Fs
ZXMtYXJlLXN1cHBvcnRlZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvZmFsbGJh
Y2stbG9jYWxlcy1hcmUtc3VwcG9ydGVkLmpzCmluZGV4IDIwNDRmZDlkZDgzMWIzNTlmZWFmN2Rl
ZjlkYWM4MDNiOWNhMDdmMTAuLmRhOTE3ODBiODBiYzU5ZTQ3Y2IwMzkyM2YwNDYxMzk5NTFhMTcz
MWEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvZmFsbGJhY2stbG9j
YWxlcy1hcmUtc3VwcG9ydGVkLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIv
ZmFsbGJhY2stbG9jYWxlcy1hcmUtc3VwcG9ydGVkLmpzCkBAIC0xMSw3ICsxMSw4IEBACiAtLS0q
LwogCiB0ZXN0V2l0aEludGxDb25zdHJ1Y3RvcnMoZnVuY3Rpb24gKENvbnN0cnVjdG9yKSB7Ci0g
ICAgdmFyIGluZm8gPSBnZXRMb2NhbGVTdXBwb3J0SW5mbyhDb25zdHJ1Y3Rvcik7CisgICAgLy8g
VGhlIHRlc3QgaXMgb25seSB2YWxpZCB1bmRlciAibG9va3VwIiBsb2NhbGVNYXRjaGVyCisgICAg
dmFyIGluZm8gPSBnZXRMb2NhbGVTdXBwb3J0SW5mbyhDb25zdHJ1Y3Rvciwge2xvY2FsZU1hdGNo
ZXI6ICJsb29rdXAifSk7CiAgICAgZm9yICh2YXIgbG9jYWxlIG9mIGluZm8uc3VwcG9ydGVkKSB7
CiAgICAgICAgIHZhciBtYXRjaCA9IC9eKFthLXpdezIsM30pKC1bQS1aXVthLXpdezN9KT8oLSg/
OltBLVpdezJ9fFswLTldezN9KSk/JC8uZXhlYyhsb2NhbGUpOwogICAgICAgICBhc3NlcnQubm90
U2FtZVZhbHVlKG1hdGNoLCBudWxsLCAiTG9jYWxlICIgKyBsb2NhbGUgKyAiIGlzIHN1cHBvcnRl
ZCwgYnV0IGNhbid0IGJlIHBhcnNlZC4iKQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvaW50bDQwMi9zdXBwb3J0ZWRMb2NhbGVzT2YtY29uc2lzdGVudC13aXRoLXJlc29sdmVkT3B0
aW9ucy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2ludGw0MDIvc3VwcG9ydGVkTG9jYWxlc09m
LWNvbnNpc3RlbnQtd2l0aC1yZXNvbHZlZE9wdGlvbnMuanMKaW5kZXggNjZkMjhiYjhlMWIyNTIw
YzdlYTk2OTQ0NTY2Mzc2NTQ3NjIxMjQyNC4uMmMxMzVhMmE3MzFkNjc5ZDdiMjBkNzYxZDVkMzEz
OTg5M2JjY2MwZCAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9zdXBw
b3J0ZWRMb2NhbGVzT2YtY29uc2lzdGVudC13aXRoLXJlc29sdmVkT3B0aW9ucy5qcworKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9pbnRsNDAyL3N1cHBvcnRlZExvY2FsZXNPZi1jb25zaXN0ZW50
LXdpdGgtcmVzb2x2ZWRPcHRpb25zLmpzCkBAIC0xMSw5ICsxMSw5IEBACiAtLS0qLwogCiB0ZXN0
V2l0aEludGxDb25zdHJ1Y3RvcnMoZnVuY3Rpb24gKENvbnN0cnVjdG9yKSB7Ci0gICAgdmFyIGlu
Zm8gPSBnZXRMb2NhbGVTdXBwb3J0SW5mbyhDb25zdHJ1Y3Rvcik7CiAgICAgLy8gdGhpcyB0ZXN0
IHNob3VsZCB3b3JrIGVxdWFsbHkgZm9yIGJvdGggbWF0Y2hpbmcgYWxnb3JpdGhtcwogICAgIFsi
bG9va3VwIiwgImJlc3QgZml0Il0uZm9yRWFjaChmdW5jdGlvbiAobWF0Y2hlcikgeworICAgICAg
ICB2YXIgaW5mbyA9IGdldExvY2FsZVN1cHBvcnRJbmZvKENvbnN0cnVjdG9yLCB7bG9jYWxlTWF0
Y2hlcjogbWF0Y2hlcn0pOwogICAgICAgICB2YXIgc3VwcG9ydGVkQnlDb25zdHJ1Y3RvciA9IGlu
Zm8uc3VwcG9ydGVkLmNvbmNhdChpbmZvLmJ5RmFsbGJhY2spOwogICAgICAgICB2YXIgc3VwcG9y
dGVkID0gQ29uc3RydWN0b3Iuc3VwcG9ydGVkTG9jYWxlc09mKHN1cHBvcnRlZEJ5Q29uc3RydWN0
b3IsCiAgICAgICAgICAgICB7bG9jYWxlTWF0Y2hlcjogbWF0Y2hlcn0pOwpAQCAtMjgsNiArMjgs
NyBAQAogICAgIH0pOwogICAgIAogICAgIC8vIHRoaXMgdGVzdCBpcyBvbmx5IHZhbGlkIGZvciBs
b29rdXAgLSBiZXN0IGZpdCBtYXkgZmluZCBhZGRpdGlvbmFsIGxvY2FsZXMgc3VwcG9ydGVkCisg
ICAgdmFyIGluZm8gPSBnZXRMb2NhbGVTdXBwb3J0SW5mbyhDb25zdHJ1Y3Rvciwge2xvY2FsZU1h
dGNoZXI6ICJsb29rdXAifSk7CiAgICAgdmFyIHVuc3VwcG9ydGVkQnlDb25zdHJ1Y3RvciA9IGlu
Zm8udW5zdXBwb3J0ZWQ7CiAgICAgdmFyIHN1cHBvcnRlZCA9IENvbnN0cnVjdG9yLnN1cHBvcnRl
ZExvY2FsZXNPZih1bnN1cHBvcnRlZEJ5Q29uc3RydWN0b3IsCiAgICAgICAgICAgICB7bG9jYWxl
TWF0Y2hlcjogImxvb2t1cCJ9KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2lu
dGw0MDIvc3VwcG9ydGVkTG9jYWxlc09mLXVuaWNvZGUtZXh0ZW5zaW9ucy1pZ25vcmVkLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9zdXBwb3J0ZWRMb2NhbGVzT2YtdW5pY29kZS1l
eHRlbnNpb25zLWlnbm9yZWQuanMKaW5kZXggOWQxZWZiNDYwZmJjNTFkZWYzMjIzN2U2NmVkNzEw
YjBjMDk5ZmIwZC4uNTYwMDE1Nzg3NjYyODZiYmI4YjVhNWJmZjUxZTg5OWUxNmE0ZGU5YyAxMDA2
NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvaW50bDQwMi9zdXBwb3J0ZWRMb2NhbGVzT2Yt
dW5pY29kZS1leHRlbnNpb25zLWlnbm9yZWQuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
aW50bDQwMi9zdXBwb3J0ZWRMb2NhbGVzT2YtdW5pY29kZS1leHRlbnNpb25zLWlnbm9yZWQuanMK
QEAgLTExLDIwICsxMSwxOCBAQAogLS0tKi8KIAogdGVzdFdpdGhJbnRsQ29uc3RydWN0b3JzKGZ1
bmN0aW9uIChDb25zdHJ1Y3RvcikgewotICAgIHZhciBpbmZvID0gZ2V0TG9jYWxlU3VwcG9ydElu
Zm8oQ29uc3RydWN0b3IpOwogCiAgICAgLy8gdGhpcyB0ZXN0IHNob3VsZCB3b3JrIGVxdWFsbHkg
Zm9yIGJvdGggbWF0Y2hpbmcgYWxnb3JpdGhtcwogICAgIFsibG9va3VwIiwgImJlc3QgZml0Il0u
Zm9yRWFjaChmdW5jdGlvbiAobWF0Y2hlcikgeworICAgICAgICB2YXIgb3B0ID0ge2xvY2FsZU1h
dGNoZXI6IG1hdGNoZXJ9OworICAgICAgICB2YXIgaW5mbyA9IGdldExvY2FsZVN1cHBvcnRJbmZv
KENvbnN0cnVjdG9yLCBvcHQpOwogICAgICAgICB2YXIgYWxsTG9jYWxlcyA9IGluZm8uc3VwcG9y
dGVkLmNvbmNhdChpbmZvLmJ5RmFsbGJhY2ssIGluZm8udW5zdXBwb3J0ZWQpOwogICAgICAgICBh
bGxMb2NhbGVzLmZvckVhY2goZnVuY3Rpb24gKGxvY2FsZSkgewogICAgICAgICAgICAgdmFyIHZh
bGlkRXh0ZW5zaW9uID0gIi11LWNvLXBob25lYmstbnUtbGF0biI7CiAgICAgICAgICAgICB2YXIg
aW52YWxpZEV4dGVuc2lvbiA9ICItdS1udS1pbnZhbGlkIjsKLSAgICAgICAgICAgIHZhciBzdXBw
b3J0ZWQxID0gQ29uc3RydWN0b3Iuc3VwcG9ydGVkTG9jYWxlc09mKFtsb2NhbGVdLAotICAgICAg
ICAgICAgICAgIHtsb2NhbGVNYXRjaGVyOiBtYXRjaGVyfSk7Ci0gICAgICAgICAgICB2YXIgc3Vw
cG9ydGVkMiA9IENvbnN0cnVjdG9yLnN1cHBvcnRlZExvY2FsZXNPZihbbG9jYWxlICsgdmFsaWRF
eHRlbnNpb25dLAotICAgICAgICAgICAgICAgIHtsb2NhbGVNYXRjaGVyOiBtYXRjaGVyfSk7Ci0g
ICAgICAgICAgICB2YXIgc3VwcG9ydGVkMyA9IENvbnN0cnVjdG9yLnN1cHBvcnRlZExvY2FsZXNP
ZihbbG9jYWxlICsgaW52YWxpZEV4dGVuc2lvbl0sCi0gICAgICAgICAgICAgICAge2xvY2FsZU1h
dGNoZXI6IG1hdGNoZXJ9KTsKKyAgICAgICAgICAgIHZhciBzdXBwb3J0ZWQxID0gQ29uc3RydWN0
b3Iuc3VwcG9ydGVkTG9jYWxlc09mKFtsb2NhbGVdLCBvcHQpOworICAgICAgICAgICAgdmFyIHN1
cHBvcnRlZDIgPSBDb25zdHJ1Y3Rvci5zdXBwb3J0ZWRMb2NhbGVzT2YoW2xvY2FsZSArIHZhbGlk
RXh0ZW5zaW9uXSwgb3B0KSk7CisgICAgICAgICAgICB2YXIgc3VwcG9ydGVkMyA9IENvbnN0cnVj
dG9yLnN1cHBvcnRlZExvY2FsZXNPZihbbG9jYWxlICsgaW52YWxpZEV4dGVuc2lvbl0sIG9wdCkp
OwogICAgICAgICAgICAgaWYgKHN1cHBvcnRlZDEubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAg
ICAgICAgYXNzZXJ0LnNhbWVWYWx1ZShzdXBwb3J0ZWQyLmxlbmd0aCwgMSwgIiMxLjE6IFByZXNl
bmNlIG9mIFVuaWNvZGUgbG9jYWxlIGV4dGVuc2lvbiBzZXF1ZW5jZSBhZmZlY3RzIHdoZXRoZXIg
bG9jYWxlICIgKyBsb2NhbGUgKyAiIGlzIGNvbnNpZGVyZWQgc3VwcG9ydGVkIHdpdGggbWF0Y2hl
ciAiICsgbWF0Y2hlciArICIuIik7CiAgICAgICAgICAgICAgICAgYXNzZXJ0LnNhbWVWYWx1ZShz
dXBwb3J0ZWQzLmxlbmd0aCwgMSwgIiMxLjI6IFByZXNlbmNlIG9mIFVuaWNvZGUgbG9jYWxlIGV4
dGVuc2lvbiBzZXF1ZW5jZSBhZmZlY3RzIHdoZXRoZXIgbG9jYWxlICIgKyBsb2NhbGUgKyAiIGlz
IGNvbnNpZGVyZWQgc3VwcG9ydGVkIHdpdGggbWF0Y2hlciAiICsgbWF0Y2hlciArICIuIik7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hcnJv
dy1mdW5jdGlvbi9leHRlbnNpYmlsaXR5LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvYXJyb3ctZnVuY3Rpb24vZXh0ZW5zaWJpbGl0eS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41ODBlZmI0Y2ViYzY1NjZlNDYxMWE4ODMxZWFlN2FjOThiNmFmMjg2Ci0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXJyb3ctZnVu
Y3Rpb24vZXh0ZW5zaWJpbGl0eS5qcwpAQCAtMCwwICsxLDI5IEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1hcnJvdy1mdW5jdGlvbi1kZWZpbml0aW9ucy1y
dW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitkZXNjcmlwdGlvbjogVGhlIFtbRXh0ZW5zaWJs
ZV1dIHNsb3Qgb2YgYXJyb3cgZnVuY3Rpb25zCitpbmZvOiB8CisgIDE1LjMuNCBSdW50aW1lIFNl
bWFudGljczogSW5zdGFudGlhdGVBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbgorICAgIFsuLi5dCisg
ICAgNC4gTGV0IGNsb3N1cmUgYmUgT3JkaW5hcnlGdW5jdGlvbkNyZWF0ZSglRnVuY3Rpb24ucHJv
dG90eXBlJSwgc291cmNlVGV4dCwKKyAgICAgICBBcnJvd1BhcmFtZXRlcnMsIENvbmNpc2VCb2R5
LCBsZXhpY2FsLXRoaXMsIHNjb3BlKS4KKworICAxMC4yLjMgT3JkaW5hcnlGdW5jdGlvbkNyZWF0
ZSAoIGZ1bmN0aW9uUHJvdG90eXBlLCBzb3VyY2VUZXh0LCBQYXJhbWV0ZXJMaXN0LCBCb2R5LCB0
aGlzTW9kZSwgU2NvcGUgKQorICAgIFsuLi5dCisgICAgMy4gTGV0IEYgYmUgISBPcmRpbmFyeU9i
amVjdENyZWF0ZShmdW5jdGlvblByb3RvdHlwZSwgaW50ZXJuYWxTbG90c0xpc3QpLgorCisgIDEw
LjEuMTIgT3JkaW5hcnlPYmplY3RDcmVhdGUgKCBwcm90byBbICwgYWRkaXRpb25hbEludGVybmFs
U2xvdHNMaXN0IF0gKQorICAgIDEuIExldCBpbnRlcm5hbFNsb3RzTGlzdCBiZSDCqyBbW1Byb3Rv
dHlwZV1dLCBbW0V4dGVuc2libGVdXSDCuy4KKyAgICAyLiBJZiBhZGRpdGlvbmFsSW50ZXJuYWxT
bG90c0xpc3QgaXMgcHJlc2VudCwgYXBwZW5kIGVhY2ggb2YgaXRzIGVsZW1lbnRzCisgICAgICAg
dG8gaW50ZXJuYWxTbG90c0xpc3QuCisgICAgMy4gTGV0IE8gYmUgISBNYWtlQmFzaWNPYmplY3Qo
aW50ZXJuYWxTbG90c0xpc3QpLgorCisgIDcuMy4xIE1ha2VCYXNpY09iamVjdCAoIGludGVybmFs
U2xvdHNMaXN0ICkKKyAgICBbLi4uXQorICAgIDYuIElmIGludGVybmFsU2xvdHNMaXN0IGNvbnRh
aW5zIFtbRXh0ZW5zaWJsZV1dLCBzZXQgb2JqLltbRXh0ZW5zaWJsZV1dIHRvCisgICAgICAgdHJ1
ZS4KKy0tLSovCisKK2Fzc2VydChPYmplY3QuaXNFeHRlbnNpYmxlKCgpID0+IHt9KSk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hcnJvdy1m
dW5jdGlvbi9zeW50YXgvYXJyb3dwYXJhbWV0ZXJzLWNvdmVyLWluaXRpYWxpemUtMi5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL3N5
bnRheC9hcnJvd3BhcmFtZXRlcnMtY292ZXItaW5pdGlhbGl6ZS0yLmpzCmluZGV4IGViMjA5YmJm
MTI5MzUwYjk2YjE0MjgwNThlYmMzOGYyZTRjODNkMDguLjQ0M2Q4MmJlNDQ5OTJlYzAyNzM0ZmFl
MDdhOGI0NDUyM2I1NTJjNWQgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL3N5bnRheC9hcnJvd3BhcmFtZXRlcnMtY292
ZXItaW5pdGlhbGl6ZS0yLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2Fycm93LWZ1bmN0aW9uL3N5bnRheC9hcnJvd3BhcmFtZXRlcnMtY292ZXItaW5p
dGlhbGl6ZS0yLmpzCkBAIC04LDcgKzgsNyBAQAogICAgICAgQ292ZXJQYXJlbnRoZXNpemVkRXhw
cmVzc2lvbkFuZEFycm93UGFyYW1ldGVyTGlzdFs/WWllbGRdCiAKICAgICAxMi4xNC41Ci0gICAt
LS0qLworLS0tKi8KIHZhciBhZiA9ICh7eCA9IDF9KSA9PiB4OwogCiBhc3NlcnQuc2FtZVZhbHVl
KHR5cGVvZiBhZiwgImZ1bmN0aW9uIik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L1MxMS4xMy4xX0E3X1QxLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC9TMTEuMTMu
MV9BN19UMS5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzRhNjU1ZWFkNTQ4ZjU2
OTgyNDE2ZTdmOTc4ZGNmNjhmOWI0ZmIxNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9hc3NpZ25tZW50L1MxMS4xMy4xX0E3X1QxLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAs
MCBAQAotLy8gQ29weXJpZ2h0IChDKSAyMDE1IEFuZHLDqSBCYXJndWxsLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotCi0vKi0tLQotaW5mbzogQXNzaWdubWVudCBPcGVyYXRv
ciBldmFsdWF0ZXMgaXRzIG9wZXJhbmRzIGZyb20gbGVmdCB0byByaWdodC4KLWRlc2NyaXB0aW9u
OiA+Ci0gICAgVGhlIGxlZnQtaGFuZCBzaWRlIGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkIGJlZm9y
ZSB0aGUgcmlnaHQtaGFuZCBzaWRlLgotICAgIExlZnQtaGFuZCBzaWRlIGV4cHJlc3Npb24gaXMg
TWVtYmVyRXhwcmVzc2lvbjogYmFzZVtwcm9wXS4gYmFzZSBpcyB0aGUKLSAgICBudWxsIHZhbHVl
LgotLS0tKi8KLQotZnVuY3Rpb24gRHVtbXlFcnJvcigpIHsgfQotCi1hc3NlcnQudGhyb3dzKER1
bW15RXJyb3IsIGZ1bmN0aW9uKCkgewotICB2YXIgYmFzZSA9IG51bGw7Ci0gIHZhciBwcm9wID0g
ZnVuY3Rpb24oKSB7Ci0gICAgdGhyb3cgbmV3IER1bW15RXJyb3IoKTsKLSAgfTsKLSAgdmFyIGV4
cHIgPSBmdW5jdGlvbigpIHsKLSAgICAkRVJST1IoInJpZ2h0LWhhbmQgc2lkZSBleHByZXNzaW9u
IGV2YWx1YXRlZCIpOwotICB9OwotCi0gIGJhc2VbcHJvcCgpXSA9IGV4cHIoKTsKLX0pOwotCi1h
c3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7Ci0gIHZhciBiYXNlID0gbnVsbDsK
LSAgdmFyIHByb3AgPSB7Ci0gICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkgewotICAgICAgJEVSUk9S
KCJwcm9wZXJ0eSBrZXkgZXZhbHVhdGVkIik7Ci0gICAgfQotICB9OwotICB2YXIgZXhwciA9IGZ1
bmN0aW9uKCkgewotICAgICRFUlJPUigicmlnaHQtaGFuZCBzaWRlIGV4cHJlc3Npb24gZXZhbHVh
dGVkIik7Ci0gIH07Ci0KLSAgYmFzZVtwcm9wXSA9IGV4cHIoKTsKLX0pOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC9TMTEu
MTMuMV9BN19UMi5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2Fzc2lnbm1lbnQvUzExLjEzLjFfQTdfVDIuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDE3M2YzZTZiMDhiMzRhMmJhNDY1ZDA3M2JhNDhjNWFkNTMzNjM4YmQuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC9TMTEuMTMuMV9BN19UMi5qcworKysgL2Rl
di9udWxsCkBAIC0xLDM4ICswLDAgQEAKLS8vIENvcHlyaWdodCAoQykgMjAxNSBBbmRyw6kgQmFy
Z3VsbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KLQotLyotLS0KLWluZm86
IEFzc2lnbm1lbnQgT3BlcmF0b3IgZXZhbHVhdGVzIGl0cyBvcGVyYW5kcyBmcm9tIGxlZnQgdG8g
cmlnaHQuCi1kZXNjcmlwdGlvbjogPgotICAgIFRoZSBsZWZ0LWhhbmQgc2lkZSBleHByZXNzaW9u
IGlzIGV2YWx1YXRlZCBiZWZvcmUgdGhlIHJpZ2h0LWhhbmQgc2lkZS4KLSAgICBMZWZ0LWhhbmQg
c2lkZSBleHByZXNzaW9uIGlzIE1lbWJlckV4cHJlc3Npb246IGJhc2VbcHJvcF0uIGJhc2UgaXMg
dGhlCi0gICAgdW5kZWZpbmVkIHZhbHVlLgotLS0tKi8KLQotZnVuY3Rpb24gRHVtbXlFcnJvcigp
IHsgfQotCi1hc3NlcnQudGhyb3dzKER1bW15RXJyb3IsIGZ1bmN0aW9uKCkgewotICB2YXIgYmFz
ZSA9IHVuZGVmaW5lZDsKLSAgdmFyIHByb3AgPSBmdW5jdGlvbigpIHsKLSAgICB0aHJvdyBuZXcg
RHVtbXlFcnJvcigpOwotICB9OwotICB2YXIgZXhwciA9IGZ1bmN0aW9uKCkgewotICAgICRFUlJP
UigicmlnaHQtaGFuZCBzaWRlIGV4cHJlc3Npb24gZXZhbHVhdGVkIik7Ci0gIH07Ci0KLSAgYmFz
ZVtwcm9wKCldID0gZXhwcigpOwotfSk7Ci0KLWFzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5j
dGlvbigpIHsKLSAgdmFyIGJhc2UgPSB1bmRlZmluZWQ7Ci0gIHZhciBwcm9wID0gewotICAgIHRv
U3RyaW5nOiBmdW5jdGlvbigpIHsKLSAgICAgICRFUlJPUigicHJvcGVydHkga2V5IGV2YWx1YXRl
ZCIpOwotICAgIH0KLSAgfTsKLSAgdmFyIGV4cHIgPSBmdW5jdGlvbigpIHsKLSAgICAkRVJST1Io
InJpZ2h0LWhhbmQgc2lkZSBleHByZXNzaW9uIGV2YWx1YXRlZCIpOwotICB9OwotCi0gIGJhc2Vb
cHJvcF0gPSBleHByKCk7Ci19KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0LW1lbWJlci1jb21wdXRlZC1yZWZl
cmVuY2UtbnVsbC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2Fzc2lnbm1lbnQvdGFyZ2V0LW1lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtbnVsbC5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5jYzNmYjM5OTczODVjOThlMzY3NDgxMWNjOTM3YjFjZWI2MDEyZmMzCi0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNz
aWdubWVudC90YXJnZXQtbWVtYmVyLWNvbXB1dGVkLXJlZmVyZW5jZS1udWxsLmpzCkBAIC0wLDAg
KzEsNTAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAxNSBBbmRyw6kgQmFyZ3VsbC4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2Ug
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1hc3NpZ25tZW50
LW9wZXJhdG9ycworZGVzY3JpcHRpb246IEFzc2lnbm1lbnQgT3BlcmF0b3IgZXZhbHVhdGVzIHRo
ZSB2YWx1ZSBwcmlvciB2YWxpZGF0aW5nIGEgTWVtYmVyRXhwcmVzc2lvbidzIHJlZmVyZW5jZSAo
bnVsbCkKK2luZm86IHwKKyAgIyAxMy4xNS4yIFJ1bnRpbWUgU2VtYW50aWNzOiBFdmFsdWF0aW9u
CisgIEFzc2lnbm1lbnRFeHByZXNzaW9uIDogTGVmdEhhbmRTaWRlRXhwcmVzc2lvbiA9IEFzc2ln
bm1lbnRFeHByZXNzaW9uCisKKyAgMS4gSWYgTGVmdEhhbmRTaWRlRXhwcmVzc2lvbiBpcyBuZWl0
aGVyIGFuIE9iamVjdExpdGVyYWwgbm9yIGFuIEFycmF5TGl0ZXJhbCwKKyAgICAgdGhlbgorICAg
ICBhLiBMZXQgbHJlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgTGVmdEhhbmRTaWRlRXhw
cmVzc2lvbi4KKyAgICAgWy4uLl0KKyAgICAgZS4gUGVyZm9ybSA/IFB1dFZhbHVlKGxyZWYsIHJ2
YWwpLgorCisgICMgNi4yLjQuNSBQdXRWYWx1ZSAoIFYsIFcgKQorCisgIFsuLi5dCisgIDUuIElm
IElzUHJvcGVydHlSZWZlcmVuY2UoVikgaXMgdHJ1ZSwgdGhlbgorICAgICBhLiBMZXQgYmFzZU9i
aiBiZSA/IFRvT2JqZWN0KFYuW1tCYXNlXV0pLgorLS0tKi8KKworZnVuY3Rpb24gRHVtbXlFcnJv
cigpIHsgfQorCithc3NlcnQudGhyb3dzKER1bW15RXJyb3IsIGZ1bmN0aW9uKCkgeworICB2YXIg
YmFzZSA9IG51bGw7CisgIHZhciBwcm9wID0gZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3IER1
bW15RXJyb3IoKTsKKyAgfTsKKyAgdmFyIGV4cHIgPSBmdW5jdGlvbigpIHsKKyAgICAkRVJST1Io
InJpZ2h0LWhhbmQgc2lkZSBleHByZXNzaW9uIGV2YWx1YXRlZCIpOworICB9OworCisgIGJhc2Vb
cHJvcCgpXSA9IGV4cHIoKTsKK30pOworCithc3NlcnQudGhyb3dzKER1bW15RXJyb3IsIGZ1bmN0
aW9uKCkgeworICB2YXIgYmFzZSA9IG51bGw7CisgIHZhciBwcm9wID0geworICAgIHRvU3RyaW5n
OiBmdW5jdGlvbigpIHsKKyAgICAgICRFUlJPUigicHJvcGVydHkga2V5IGV2YWx1YXRlZCIpOwor
ICAgIH0KKyAgfTsKKyAgdmFyIGV4cHIgPSBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRHVt
bXlFcnJvcigpOworICB9OworCisgIGJhc2VbcHJvcF0gPSBleHByKCk7Cit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQv
dGFyZ2V0LW1lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQtbWVtYmVy
LWNvbXB1dGVkLXJlZmVyZW5jZS11bmRlZmluZWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2MzY2FhMzQzYTU4
NDc4OTA3NjdjM2VkMDU5NjY3YTNmMzMwZDZlOAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0LW1lbWJl
ci1jb21wdXRlZC1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzCkBAIC0wLDAgKzEsNTAgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAxNSBBbmRyw6kgQmFyZ3VsbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1hc3NpZ25tZW50LW9wZXJhdG9ycworZGVz
Y3JpcHRpb246IEFzc2lnbm1lbnQgT3BlcmF0b3IgZXZhbHVhdGVzIHRoZSB2YWx1ZSBwcmlvciB2
YWxpZGF0aW5nIGEgTWVtYmVyRXhwcmVzc2lvbidzIHJlZmVyZW5jZSAodW5kZWZpbmVkKQoraW5m
bzogfAorICAjIDEzLjE1LjIgUnVudGltZSBTZW1hbnRpY3M6IEV2YWx1YXRpb24KKyAgQXNzaWdu
bWVudEV4cHJlc3Npb24gOiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uID0gQXNzaWdubWVudEV4cHJl
c3Npb24KKworICAxLiBJZiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uIGlzIG5laXRoZXIgYW4gT2Jq
ZWN0TGl0ZXJhbCBub3IgYW4gQXJyYXlMaXRlcmFsLAorICAgICB0aGVuCisgICAgIGEuIExldCBs
cmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uLgor
ICAgICBbLi4uXQorICAgICBlLiBQZXJmb3JtID8gUHV0VmFsdWUobHJlZiwgcnZhbCkuCisKKyAg
IyA2LjIuNC41IFB1dFZhbHVlICggViwgVyApCisKKyAgWy4uLl0KKyAgNS4gSWYgSXNQcm9wZXJ0
eVJlZmVyZW5jZShWKSBpcyB0cnVlLCB0aGVuCisgICAgIGEuIExldCBiYXNlT2JqIGJlID8gVG9P
YmplY3QoVi5bW0Jhc2VdXSkuCistLS0qLworCitmdW5jdGlvbiBEdW1teUVycm9yKCkgeyB9CisK
K2Fzc2VydC50aHJvd3MoRHVtbXlFcnJvciwgZnVuY3Rpb24oKSB7CisgIHZhciBiYXNlID0gdW5k
ZWZpbmVkOworICB2YXIgcHJvcCA9IGZ1bmN0aW9uKCkgeworICAgIHRocm93IG5ldyBEdW1teUVy
cm9yKCk7CisgIH07CisgIHZhciBleHByID0gZnVuY3Rpb24oKSB7CisgICAgJEVSUk9SKCJyaWdo
dC1oYW5kIHNpZGUgZXhwcmVzc2lvbiBldmFsdWF0ZWQiKTsKKyAgfTsKKworICBiYXNlW3Byb3Ao
KV0gPSBleHByKCk7Cit9KTsKKworYXNzZXJ0LnRocm93cyhEdW1teUVycm9yLCBmdW5jdGlvbigp
IHsKKyAgdmFyIGJhc2UgPSB1bmRlZmluZWQ7CisgIHZhciBwcm9wID0geworICAgIHRvU3RyaW5n
OiBmdW5jdGlvbigpIHsKKyAgICAgICRFUlJPUigicHJvcGVydHkga2V5IGV2YWx1YXRlZCIpOwor
ICAgIH0KKyAgfTsKKyAgdmFyIGV4cHIgPSBmdW5jdGlvbigpIHsKKyAgICB0aHJvdyBuZXcgRHVt
bXlFcnJvcigpOworICB9OworCisgIGJhc2VbcHJvcF0gPSBleHByKCk7Cit9KTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQv
dGFyZ2V0LW1lbWJlci1pZGVudGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQtbWVtYmVyLWlk
ZW50aWZpZXItcmVmZXJlbmNlLW51bGwuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2U1ZTE2ZWNmZDMxZGQzOGU3
Y2JhMzkwYmM1NGI5NTAxMTk4YTg5ZgotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0LW1lbWJlci1pZGVu
dGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzCkBAIC0wLDAgKzEsMzEgQEAKKy8vIENvcHlyaWdodCAo
QykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWFzc2lnbm1lbnQtb3BlcmF0b3JzCitkZXNj
cmlwdGlvbjogQXNzaWdubWVudCBPcGVyYXRvciBldmFsdWF0ZXMgdGhlIHZhbHVlIHByaW9yIHZh
bGlkYXRpbmcgYSBNZW1iZXJFeHByZXNzaW9uJ3MgcmVmZXJlbmNlIChudWxsKQoraW5mbzogfAor
ICAjIDEzLjE1LjIgUnVudGltZSBTZW1hbnRpY3M6IEV2YWx1YXRpb24KKyAgQXNzaWdubWVudEV4
cHJlc3Npb24gOiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uID0gQXNzaWdubWVudEV4cHJlc3Npb24K
KworICAxLiBJZiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uIGlzIG5laXRoZXIgYW4gT2JqZWN0TGl0
ZXJhbCBub3IgYW4gQXJyYXlMaXRlcmFsLAorICAgICB0aGVuCisgICAgIGEuIExldCBscmVmIGJl
IHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uLgorICAgICBb
Li4uXQorICAgICBlLiBQZXJmb3JtID8gUHV0VmFsdWUobHJlZiwgcnZhbCkuCisKKyAgIyA2LjIu
NC41IFB1dFZhbHVlICggViwgVyApCisKKyAgWy4uLl0KKyAgNS4gSWYgSXNQcm9wZXJ0eVJlZmVy
ZW5jZShWKSBpcyB0cnVlLCB0aGVuCisgICAgIGEuIExldCBiYXNlT2JqIGJlID8gVG9PYmplY3Qo
Vi5bW0Jhc2VdXSkuCistLS0qLworCit2YXIgY291bnQgPSAwOwordmFyIGJhc2UgPSBudWxsOwor
Cithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwgZnVuY3Rpb24oKSB7CisgIGJhc2UucHJvcCA9IGNv
dW50ICs9IDE7Cit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShjb3VudCwgMSk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9hc3NpZ25tZW50L3Rh
cmdldC1tZW1iZXItaWRlbnRpZmllci1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQtbWVtYmVy
LWlkZW50aWZpZXItcmVmZXJlbmNlLXVuZGVmaW5lZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xN2U3NjVlZTA4
N2U2MjgwMzUxMjk0ODUwMDY1ZDQyZGZjMWUwNThlCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQtbWVt
YmVyLWlkZW50aWZpZXItcmVmZXJlbmNlLXVuZGVmaW5lZC5qcwpAQCAtMCwwICsxLDMxIEBACisv
LyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91
bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1hc3NpZ25tZW50LW9w
ZXJhdG9ycworZGVzY3JpcHRpb246IEFzc2lnbm1lbnQgT3BlcmF0b3IgZXZhbHVhdGVzIHRoZSB2
YWx1ZSBwcmlvciB2YWxpZGF0aW5nIGEgTWVtYmVyRXhwcmVzc2lvbidzIHJlZmVyZW5jZSAodW5k
ZWZpbmVkKQoraW5mbzogfAorICAjIDEzLjE1LjIgUnVudGltZSBTZW1hbnRpY3M6IEV2YWx1YXRp
b24KKyAgQXNzaWdubWVudEV4cHJlc3Npb24gOiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uID0gQXNz
aWdubWVudEV4cHJlc3Npb24KKworICAxLiBJZiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uIGlzIG5l
aXRoZXIgYW4gT2JqZWN0TGl0ZXJhbCBub3IgYW4gQXJyYXlMaXRlcmFsLAorICAgICB0aGVuCisg
ICAgIGEuIExldCBscmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBMZWZ0SGFuZFNpZGVF
eHByZXNzaW9uLgorICAgICBbLi4uXQorICAgICBlLiBQZXJmb3JtID8gUHV0VmFsdWUobHJlZiwg
cnZhbCkuCisKKyAgIyA2LjIuNC41IFB1dFZhbHVlICggViwgVyApCisKKyAgWy4uLl0KKyAgNS4g
SWYgSXNQcm9wZXJ0eVJlZmVyZW5jZShWKSBpcyB0cnVlLCB0aGVuCisgICAgIGEuIExldCBiYXNl
T2JqIGJlID8gVG9PYmplY3QoVi5bW0Jhc2VdXSkuCistLS0qLworCit2YXIgY291bnQgPSAwOwor
dmFyIGJhc2UgPSB1bmRlZmluZWQ7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBmdW5jdGlv
bigpIHsKKyAgYmFzZS5wcm9wID0gY291bnQgKz0gMTsKK30pOworCithc3NlcnQuc2FtZVZhbHVl
KGNvdW50LCAxKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFyZ2V0LXN1cGVyLWNvbXB1dGVkLXJlZmVyZW5jZS1udWxs
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVu
dC90YXJnZXQtc3VwZXItY29tcHV0ZWQtcmVmZXJlbmNlLW51bGwuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzI1
ZmVmNzBlYWNjMDcyOWQyNWEwMDJlMTU2MDUwZTFiODg3Y2FiYQotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2Fzc2lnbm1lbnQvdGFy
Z2V0LXN1cGVyLWNvbXB1dGVkLXJlZmVyZW5jZS1udWxsLmpzCkBAIC0wLDAgKzEsMzcgQEAKKy8v
IENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvKi0tLQorZXNpZDogc2VjLWFzc2lnbm1lbnQtb3Bl
cmF0b3JzCitkZXNjcmlwdGlvbjogQXNzaWdubWVudCBPcGVyYXRvciBldmFsdWF0ZXMgdGhlIHZh
bHVlIHByaW9yIHZhbGlkYXRpbmcgYSBTdXBlclByb3BlcnR5J3MgcmVmZXJlbmNlIChudWxsKQor
aW5mbzogfAorICAjIDEzLjE1LjIgUnVudGltZSBTZW1hbnRpY3M6IEV2YWx1YXRpb24KKyAgQXNz
aWdubWVudEV4cHJlc3Npb24gOiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uID0gQXNzaWdubWVudEV4
cHJlc3Npb24KKworICAxLiBJZiBMZWZ0SGFuZFNpZGVFeHByZXNzaW9uIGlzIG5laXRoZXIgYW4g
T2JqZWN0TGl0ZXJhbCBub3IgYW4gQXJyYXlMaXRlcmFsLAorICAgICB0aGVuCisgICAgIGEuIExl
dCBscmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBMZWZ0SGFuZFNpZGVFeHByZXNzaW9u
LgorICAgICBbLi4uXQorICAgICBlLiBQZXJmb3JtID8gUHV0VmFsdWUobHJlZiwgcnZhbCkuCisK
KyAgIyA2LjIuNC41IFB1dFZhbHVlICggViwgVyApCisKKyAgWy4uLl0KKyAgNS4gSWYgSXNQcm9w
ZXJ0eVJlZmVyZW5jZShWKSBpcyB0cnVlLCB0aGVuCisgICAgIGEuIExldCBiYXNlT2JqIGJlID8g
VG9PYmplY3QoVi5bW0Jhc2VdXSkuCistLS0qLworCit2YXIgY291bnQgPSAwOworY2xhc3MgQyB7
CisgIHN0YXRpYyBtKCkgeworICAgIHN1cGVyWzBdID0gY291bnQgKz0gMTsKKyAgfQorfQorCitP
YmplY3Quc2V0UHJvdG90eXBlT2YoQywgbnVsbCk7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9y
LCBmdW5jdGlvbigpIHsKKyAgQy5tKCk7Cit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShjb3VudCwg
MSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9hc3NpZ25tZW50L3RhcmdldC1zdXBlci1pZGVudGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJn
ZXQtc3VwZXItaWRlbnRpZmllci1yZWZlcmVuY2UtbnVsbC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZDY1Y2M5
NTBkOGIwOTBlZjA3YzJhNjYyM2U2NGYzZDM4OTNlYzA3Ci0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvYXNzaWdubWVudC90YXJnZXQt
c3VwZXItaWRlbnRpZmllci1yZWZlcmVuY2UtbnVsbC5qcwpAQCAtMCwwICsxLDM3IEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1hc3NpZ25tZW50LW9wZXJh
dG9ycworZGVzY3JpcHRpb246IEFzc2lnbm1lbnQgT3BlcmF0b3IgZXZhbHVhdGVzIHRoZSB2YWx1
ZSBwcmlvciB2YWxpZGF0aW5nIGEgU3VwZXJQcm9wZXJ0eSdzIHJlZmVyZW5jZSAobnVsbCkKK2lu
Zm86IHwKKyAgIyAxMy4xNS4yIFJ1bnRpbWUgU2VtYW50aWNzOiBFdmFsdWF0aW9uCisgIEFzc2ln
bm1lbnRFeHByZXNzaW9uIDogTGVmdEhhbmRTaWRlRXhwcmVzc2lvbiA9IEFzc2lnbm1lbnRFeHBy
ZXNzaW9uCisKKyAgMS4gSWYgTGVmdEhhbmRTaWRlRXhwcmVzc2lvbiBpcyBuZWl0aGVyIGFuIE9i
amVjdExpdGVyYWwgbm9yIGFuIEFycmF5TGl0ZXJhbCwKKyAgICAgdGhlbgorICAgICBhLiBMZXQg
bHJlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgTGVmdEhhbmRTaWRlRXhwcmVzc2lvbi4K
KyAgICAgWy4uLl0KKyAgICAgZS4gUGVyZm9ybSA/IFB1dFZhbHVlKGxyZWYsIHJ2YWwpLgorCisg
ICMgNi4yLjQuNSBQdXRWYWx1ZSAoIFYsIFcgKQorCisgIFsuLi5dCisgIDUuIElmIElzUHJvcGVy
dHlSZWZlcmVuY2UoVikgaXMgdHJ1ZSwgdGhlbgorICAgICBhLiBMZXQgYmFzZU9iaiBiZSA/IFRv
T2JqZWN0KFYuW1tCYXNlXV0pLgorLS0tKi8KKwordmFyIGNvdW50ID0gMDsKK2NsYXNzIEMgewor
ICBzdGF0aWMgbSgpIHsKKyAgICBzdXBlci54ID0gY291bnQgKz0gMTsKKyAgfQorfQorCitPYmpl
Y3Quc2V0UHJvdG90eXBlT2YoQywgbnVsbCk7CisKK2Fzc2VydC50aHJvd3MoVHlwZUVycm9yLCBm
dW5jdGlvbigpIHsKKyAgQy5tKCk7Cit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShjb3VudCwgMSk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
ZWxldGUvbWVtYmVyLWNvbXB1dGVkLXJlZmVyZW5jZS1udWxsLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZGVsZXRlL21lbWJlci1jb21wdXRlZC1yZWZlcmVu
Y2UtbnVsbC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNmRhNWYyOTNiOThlYWQ5N2Q2MDI4Y2FjODAzODVjZmYz
ODc1NzQ1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZGVsZXRlL21lbWJlci1jb21wdXRlZC1yZWZlcmVuY2UtbnVsbC5qcwpAQCAt
MCwwICsxLDIxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNl
Yy1kZWxldGUtb3BlcmF0b3IKK2Rlc2NyaXB0aW9uOiBEZWxldGUgT3BlcmF0b3IgdGhyb3dzIGFu
IGVycm9yIGlmIHRoZSBiYXNlIHJlZmVyZW5jZSBpcyBub3Qgb2JqZWN0LWNvZXJjaWJsZSAobnVs
bCkuCitpbmZvOiB8CisgICMgMTIuNS4zLjIgUnVudGltZSBTZW1hbnRpY3M6IEV2YWx1YXRpb24K
KyAgVW5hcnlFeHByZXNzaW9uIDogZGVsZXRlIFVuYXJ5RXhwcmVzc2lvbgorCisgIFsuLi5dCisg
IDUuIElmIElzUHJvcGVydHlSZWZlcmVuY2UocmVmKSBpcyB0cnVlLCB0aGVuCisgICAgIGEuIElm
IElzU3VwZXJSZWZlcmVuY2UocmVmKSBpcyB0cnVlLCB0aHJvdyBhIFJlZmVyZW5jZUVycm9yIGV4
Y2VwdGlvbi4KKyAgICAgYi4gTGV0IGJhc2VPYmogYmUgPyBUb09iamVjdChyZWYuW1tCYXNlXV0p
LgorLS0tKi8KKwordmFyIGJhc2UgPSBudWxsOworCithc3NlcnQudGhyb3dzKFR5cGVFcnJvciwg
ZnVuY3Rpb24oKSB7CisgIGRlbGV0ZSBiYXNlWzBdOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9kZWxldGUvbWVtYmVyLWNvbXB1dGVk
LXJlZmVyZW5jZS11bmRlZmluZWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9kZWxldGUvbWVtYmVyLWNvbXB1dGVkLXJlZmVyZW5jZS11bmRlZmluZWQuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOGE2NTFmYzU3Njc0MjdlYzJjNzg5OWM5NWQxYjhmZWRhN2ZmYmVmNAotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2RlbGV0ZS9tZW1iZXItY29tcHV0ZWQtcmVmZXJlbmNlLXVuZGVmaW5lZC5qcwpAQCAtMCwwICsx
LDIxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1kZWxl
dGUtb3BlcmF0b3IKK2Rlc2NyaXB0aW9uOiBEZWxldGUgT3BlcmF0b3IgdGhyb3dzIGFuIGVycm9y
IGlmIHRoZSBiYXNlIHJlZmVyZW5jZSBpcyBub3Qgb2JqZWN0LWNvZXJjaWJsZSAodW5kZWZpbmVk
KS4KK2luZm86IHwKKyAgIyAxMi41LjMuMiBSdW50aW1lIFNlbWFudGljczogRXZhbHVhdGlvbgor
ICBVbmFyeUV4cHJlc3Npb24gOiBkZWxldGUgVW5hcnlFeHByZXNzaW9uCisKKyAgWy4uLl0KKyAg
NS4gSWYgSXNQcm9wZXJ0eVJlZmVyZW5jZShyZWYpIGlzIHRydWUsIHRoZW4KKyAgICAgYS4gSWYg
SXNTdXBlclJlZmVyZW5jZShyZWYpIGlzIHRydWUsIHRocm93IGEgUmVmZXJlbmNlRXJyb3IgZXhj
ZXB0aW9uLgorICAgICBiLiBMZXQgYmFzZU9iaiBiZSA/IFRvT2JqZWN0KHJlZi5bW0Jhc2VdXSku
CistLS0qLworCit2YXIgYmFzZSA9IHVuZGVmaW5lZDsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJy
b3IsIGZ1bmN0aW9uKCkgeworICBkZWxldGUgYmFzZVswXTsKK30pOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZGVsZXRlL21lbWJlci1pZGVu
dGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZGVsZXRlL21lbWJlci1pZGVudGlmaWVyLXJlZmVyZW5jZS1udWxsLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjY4MGU4MmU5YmE3YWE4ODQ1MzFhMGMxNDdiYTdkNDdiMmQ2NjBmNDYKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
ZWxldGUvbWVtYmVyLWlkZW50aWZpZXItcmVmZXJlbmNlLW51bGwuanMKQEAgLTAsMCArMSwyMSBA
QAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNl
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtZGVsZXRlLW9w
ZXJhdG9yCitkZXNjcmlwdGlvbjogRGVsZXRlIE9wZXJhdG9yIHRocm93cyBhbiBlcnJvciBpZiB0
aGUgYmFzZSByZWZlcmVuY2UgaXMgbm90IG9iamVjdC1jb2VyY2libGUgKG51bGwpLgoraW5mbzog
fAorICAjIDEyLjUuMy4yIFJ1bnRpbWUgU2VtYW50aWNzOiBFdmFsdWF0aW9uCisgIFVuYXJ5RXhw
cmVzc2lvbiA6IGRlbGV0ZSBVbmFyeUV4cHJlc3Npb24KKworICBbLi4uXQorICA1LiBJZiBJc1By
b3BlcnR5UmVmZXJlbmNlKHJlZikgaXMgdHJ1ZSwgdGhlbgorICAgICBhLiBJZiBJc1N1cGVyUmVm
ZXJlbmNlKHJlZikgaXMgdHJ1ZSwgdGhyb3cgYSBSZWZlcmVuY2VFcnJvciBleGNlcHRpb24uCisg
ICAgIGIuIExldCBiYXNlT2JqIGJlID8gVG9PYmplY3QocmVmLltbQmFzZV1dKS4KKy0tLSovCisK
K3ZhciBiYXNlID0gbnVsbDsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsIGZ1bmN0aW9uKCkg
eworICBkZWxldGUgYmFzZS5wcm9wOworfSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9kZWxldGUvbWVtYmVyLWlkZW50aWZpZXItcmVmZXJl
bmNlLXVuZGVmaW5lZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2RlbGV0ZS9tZW1iZXItaWRlbnRpZmllci1yZWZlcmVuY2UtdW5kZWZpbmVkLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmY5NDNjODNkZGQ2ZTFhMGZjNDZhMTM1NmEwOWJiNGNkNDE0MzIwNzkKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9kZWxl
dGUvbWVtYmVyLWlkZW50aWZpZXItcmVmZXJlbmNlLXVuZGVmaW5lZC5qcwpAQCAtMCwwICsxLDIx
IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vu
c2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1kZWxldGUt
b3BlcmF0b3IKK2Rlc2NyaXB0aW9uOiBEZWxldGUgT3BlcmF0b3IgdGhyb3dzIGFuIGVycm9yIGlm
IHRoZSBiYXNlIHJlZmVyZW5jZSBpcyBub3Qgb2JqZWN0LWNvZXJjaWJsZSAodW5kZWZpbmVkKS4K
K2luZm86IHwKKyAgIyAxMi41LjMuMiBSdW50aW1lIFNlbWFudGljczogRXZhbHVhdGlvbgorICBV
bmFyeUV4cHJlc3Npb24gOiBkZWxldGUgVW5hcnlFeHByZXNzaW9uCisKKyAgWy4uLl0KKyAgNS4g
SWYgSXNQcm9wZXJ0eVJlZmVyZW5jZShyZWYpIGlzIHRydWUsIHRoZW4KKyAgICAgYS4gSWYgSXNT
dXBlclJlZmVyZW5jZShyZWYpIGlzIHRydWUsIHRocm93IGEgUmVmZXJlbmNlRXJyb3IgZXhjZXB0
aW9uLgorICAgICBiLiBMZXQgYmFzZU9iaiBiZSA/IFRvT2JqZWN0KHJlZi5bW0Jhc2VdXSkuCist
LS0qLworCit2YXIgYmFzZSA9IHVuZGVmaW5lZDsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3Is
IGZ1bmN0aW9uKCkgeworICBkZWxldGUgYmFzZS5wcm9wOworfSk7CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9kZWxldGUvc3VwZXItcHJvcGVy
dHktbnVsbC1iYXNlLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZGVsZXRlL3N1cGVyLXByb3BlcnR5LW51bGwtYmFzZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNDNmOTkw
NDhlMzkzODYyZThmMzMzZTNjOGNjODk0OTcwNjU1NjhiCi0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZGVsZXRlL3N1cGVyLXByb3Bl
cnR5LW51bGwtYmFzZS5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEg
dGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8qLS0tCitlc2lkOiBzZWMtZGVsZXRlLW9wZXJhdG9yLXJ1bnRpbWUtc2VtYW50aWNzLWV2
YWx1YXRpb24KK2Rlc2NyaXB0aW9uOiBUaGUgcmVzdHJpY3Rpb24gb24gdGhlIGJhc2Ugb2YgYSBz
dXBlciBwcm9wZXJ0eSBtdXN0IGJlIGVuZm9yY2VkIGJlZm9yZSB0aGUgZGVsZXRlIGV4cHJlc3Np
b24gaXMgZXZhbHVhdGVkLgoraW5mbzogfAorICAjIDEzLjMuNy4zIE1ha2VTdXBlclByb3BlcnR5
UmVmZXJlbmNlICggYWN0dWFsVGhpcywgcHJvcGVydHlLZXksIHN0cmljdCApCisKKyAgMS4gTGV0
IGVudiBiZSBHZXRUaGlzRW52aXJvbm1lbnQoKS4KKyAgMi4gQXNzZXJ0OiBlbnYuSGFzU3VwZXJC
aW5kaW5nKCkgaXMgdHJ1ZS4KKyAgMy4gTGV0IGJhc2VWYWx1ZSBiZSA/IGVudi5HZXRTdXBlckJh
c2UoKS4KKyAgNC4gTGV0IGJ2IGJlID8gUmVxdWlyZU9iamVjdENvZXJjaWJsZShiYXNlVmFsdWUp
LgorCisgICMgMTMuNS4xLjIgUnVudGltZSBTZW1hbnRpY3M6IEV2YWx1YXRpb24KKyAgVW5hcnlF
eHByZXNzaW9uIDogZGVsZXRlIFVuYXJ5RXhwcmVzc2lvbgorCisgIDEuIExldCByZWYgYmUgdGhl
IHJlc3VsdCBvZiBldmFsdWF0aW5nIFVuYXJ5RXhwcmVzc2lvbi4KKyAgWy4uLl0KKyAgNS4gSWYg
SXNQcm9wZXJ0eVJlZmVyZW5jZShyZWYpIGlzIHRydWUsIHRoZW4KKyAgICBhLiBJZiBJc1N1cGVy
UmVmZXJlbmNlKHJlZikgaXMgdHJ1ZSwgdGhyb3cgYSBSZWZlcmVuY2VFcnJvciBleGNlcHRpb24u
CitmZWF0dXJlczogW2NsYXNzXQorLS0tKi8KKworY2xhc3MgQyB7CisgIHN0YXRpYyBtKCkgewor
ICAgIGRlbGV0ZSBzdXBlci54OworICB9Cit9CisKK09iamVjdC5zZXRQcm90b3R5cGVPZihDLCBu
dWxsKTsKKworYXNzZXJ0LnRocm93cyhUeXBlRXJyb3IsICgpID0+IHsKKyAgQy5tKCk7Cit9KTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtZW51bWVyYXRpb24tYWJydXB0LmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5k
LXBhcmFtLWFzc2VydC1lbnVtZXJhdGlvbi1hYnJ1cHQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTE4MTc2NGU4
OTk0OGVkMGJkNTM2OTI0YThlMjZmNjMwZTAxOGRkNAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1w
YXJhbS1hc3NlcnQtZW51bWVyYXRpb24tYWJydXB0LmpzCkBAIC0wLDAgKzEsNDMgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiBSZXBvcnRzIGFicnVwdCBj
b21wbGV0aW9ucyBwcm9kdWNlZCBieSBhc3NlcnRpb24gZW51bWVyYXRpb24KK2VzaWQ6IHNlYy1p
bXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitpbmZvOiB8CisgIDIuMS4x
LjEgRXZhbHVhdGVJbXBvcnRDYWxsICggc3BlY2lmaWVyRXhwcmVzc2lvbiBbICwgb3B0aW9uc0V4
cHJlc3Npb24gXSApCisgICAgWy4uLl0KKyAgICA2LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUg
ISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDcuIExldCBzcGVjaWZpZXJT
dHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA4LiBJZkFicnVwdFJlamVjdFByb21p
c2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gTGV0IGFzc2Vy
dGlvbnMgYmUgYSBuZXcgZW1wdHkgTGlzdC4KKyAgICAxMC4gSWYgb3B0aW9ucyBpcyBub3QgdW5k
ZWZpbmVkLCB0aGVuCisgICAgICAgIGEuIElmIFR5cGUob3B0aW9ucykgaXMgbm90IE9iamVjdCwK
KyAgICAgICAgICAgWy4uLl0KKyAgICAgICAgYi4gTGV0IGFzc2VydGlvbnNPYmogYmUgR2V0KG9w
dGlvbnMsICJhc3NlcnQiKS4KKyAgICAgICAgYy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKGFzc2Vy
dGlvbnNPYmosIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICAgICAgZC4gSWYgYXNzZXJ0aW9uc09i
aiBpcyBub3QgdW5kZWZpbmVkLAorICAgICAgICAgICBpLiBJZiBUeXBlKGFzc2VydGlvbnNPYmop
IGlzIG5vdCBPYmplY3QsCisgICAgICAgICAgICAgIFsuLi5dCisgICAgICAgICAgIGlpLiBMZXQg
a2V5cyBiZSBFbnVtZXJhYmxlT3duUHJvcGVydHlOYW1lcyhhc3NlcnRpb25zT2JqLCBrZXkpLgor
ICAgICAgICAgICBpaWkuIElmQWJydXB0UmVqZWN0UHJvbWlzZShrZXlzLCBwcm9taXNlQ2FwYWJp
bGl0eSkuCisgICAgWy4uLl0KK2ZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3Nl
cnRpb25zLCBQcm94eV0KK2ZsYWdzOiBbYXN5bmNdCistLS0qLworCit2YXIgdGhyb3duID0gbmV3
IFRlc3QyNjJFcnJvcigpOwordmFyIG9wdGlvbnMgPSB7CisgIGFzc2VydDogbmV3IFByb3h5KHt9
LCB7CisgICAgb3duS2V5czogZnVuY3Rpb24oKSB7CisgICAgICB0aHJvdyB0aHJvd247CisgICAg
fSwKKyAgfSkKK307CisKK2ltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIG9wdGlvbnMp
CisgIC50aGVuKGZ1bmN0aW9uKCkgeworICAgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ0V4cGVj
dGVkIHByb21pc2UgdG8gYmUgcmVqZWN0ZWQsIGJ1dCBwcm9taXNlIHdhcyBmdWxmaWxsZWQuJyk7
CisgIH0sIGZ1bmN0aW9uKGVycm9yKSB7CisgICAgYXNzZXJ0LnNhbWVWYWx1ZShlcnJvciwgdGhy
b3duKTsKKyAgfSkKKyAgLnRoZW4oJERPTkUsICRET05FKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJh
bS1hc3NlcnQtZW51bWVyYXRpb24uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0LWVudW1lcmF0aW9uLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmFlMzFkY2MwMTgwYmExYWIzNWRkMTk2ZGVmNzg3ZTYyMmY3MjQzZDEKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0LWVudW1lcmF0aW9uLmpzCkBAIC0wLDAg
KzEsNjggQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+
CisgIEZvbGxvd3MgdGhlIHNlbWFudGljcyBvZiB0aGUgRW51bWVyYWJsZU93blByb3BlcnR5TmFt
ZXMgYWJzdHJhY3Qgb3BlcmF0aW9uCisgIGR1cmluZyBhc3NlcnRpb24gZW51bWVyYXRpb24KK2Vz
aWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitpbmZvOiB8
CisgIDIuMS4xLjEgRXZhbHVhdGVJbXBvcnRDYWxsICggc3BlY2lmaWVyRXhwcmVzc2lvbiBbICwg
b3B0aW9uc0V4cHJlc3Npb24gXSApCisgICAgWy4uLl0KKyAgICA2LiBMZXQgcHJvbWlzZUNhcGFi
aWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDcuIExldCBz
cGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA4LiBJZkFicnVwdFJl
amVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4g
TGV0IGFzc2VydGlvbnMgYmUgYSBuZXcgZW1wdHkgTGlzdC4KKyAgICAxMC4gSWYgb3B0aW9ucyBp
cyBub3QgdW5kZWZpbmVkLCB0aGVuCisgICAgICAgIGEuIElmIFR5cGUob3B0aW9ucykgaXMgbm90
IE9iamVjdCwKKyAgICAgICAgICAgWy4uLl0KKyAgICAgICAgYi4gTGV0IGFzc2VydGlvbnNPYmog
YmUgR2V0KG9wdGlvbnMsICJhc3NlcnQiKS4KKyAgICAgICAgYy4gSWZBYnJ1cHRSZWplY3RQcm9t
aXNlKGFzc2VydGlvbnNPYmosIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICAgICAgZC4gSWYgYXNz
ZXJ0aW9uc09iaiBpcyBub3QgdW5kZWZpbmVkLAorICAgICAgICAgICBpLiBJZiBUeXBlKGFzc2Vy
dGlvbnNPYmopIGlzIG5vdCBPYmplY3QsCisgICAgICAgICAgICAgIFsuLi5dCisgICAgICAgICAg
IGlpLiBMZXQga2V5cyBiZSBFbnVtZXJhYmxlT3duUHJvcGVydHlOYW1lcyhhc3NlcnRpb25zT2Jq
LCBrZXkpLgorICAgIFsuLi5dCitmZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0LCBpbXBvcnQtYXNz
ZXJ0aW9ucywgU3ltYm9sLCBQcm94eV0KK2ZsYWdzOiBbYXN5bmNdCistLS0qLworCit2YXIgc3lt
Ym9sID0gU3ltYm9sKCcnKTsKK3ZhciB0YXJnZXQgPSB7CisgIGVudW1lcmFibGUxOiAnJywKKyAg
ZW51bWVyYWJsZTI6ICcnLAorICBbc3ltYm9sXTogJycsCisgIHVucmVwb3J0ZWQ6ICcnLAorICBu
b25FbnVtZXJhYmxlOiAnJworfTsKK3ZhciBkZXNjcmlwdG9ycyA9IHsKKyAgZW51bWVyYWJsZTE6
IHtjb25maWd1cmFibGU6IHRydWUsIGVudW1lcmFibGU6IHRydWV9LAorICBlbnVtZXJhYmxlMjog
e2NvbmZpZ3VyYWJsZTogdHJ1ZSwgZW51bWVyYWJsZTogdHJ1ZX0sCisgIFtzeW1ib2xdOiB7Y29u
ZmlndXJhYmxlOiB0cnVlLCBlbnVtZXJhYmxlOiB0cnVlfSwKKyAgbm9uRW51bWVyYWJsZToge2Nv
bmZpZ3VyYWJsZTogdHJ1ZSwgZW51bWVyYWJsZTogZmFsc2V9Cit9OwordmFyIGxvZyA9IFtdOwor
Cit2YXIgb3B0aW9ucyA9IHsKKyAgYXNzZXJ0OiBuZXcgUHJveHkoe30sIHsKKyAgICBvd25LZXlz
OiBmdW5jdGlvbigpIHsKKyAgICAgIHJldHVybiBbJ2VudW1lcmFibGUxJywgc3ltYm9sLCAnbm9u
RW51bWVyYWJsZScsICdhYnNlbnQnLCAnZW51bWVyYWJsZTInXTsKKyAgICB9LAorICAgIGdldChf
LCBuYW1lKSB7CisgICAgICBsb2cucHVzaChuYW1lKTsKKyAgICAgIHJldHVybiB0YXJnZXRbbmFt
ZV07CisgICAgfSwKKyAgICBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBuYW1lKSB7
CisgICAgICByZXR1cm4gZGVzY3JpcHRvcnNbbmFtZV07CisgICAgfQorICB9KQorfTsKKworaW1w
b3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywgb3B0aW9ucykKKyAgLnRoZW4oZnVuY3Rpb24o
bW9kdWxlKSB7CisgICAgYXNzZXJ0LnNhbWVWYWx1ZShtb2R1bGUuZGVmYXVsdCwgMjYyKTsKKyAg
fSkKKyAgLnRoZW4oJERPTkUsICRET05FKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShsb2cubGVuZ3Ro
LCAyKTsKK2Fzc2VydC5zYW1lVmFsdWUobG9nWzBdLCAnZW51bWVyYWJsZTEnKTsKK2Fzc2VydC5z
YW1lVmFsdWUobG9nWzFdLCAnZW51bWVyYWJsZTInKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1h
c3NlcnQtbm9uLW9iamVjdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtbm9uLW9iamVjdC5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kNjg1ZWU4M2QzY2MxMjQ2MWI0MjNjODVmYjY1ZTVmZTgxMzViM2E3Ci0tLSAvZGV2
L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHlu
YW1pYy1pbXBvcnQvMm5kLXBhcmFtLWFzc2VydC1ub24tb2JqZWN0LmpzCkBAIC0wLDAgKzEsNDcg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgIFJl
amVjdHMgcHJvbWlzZSB3aGVuIHRoZSBgYXNzZXJ0YCBwcm9wZXJ0eSBvZiB0aGUgc2Vjb25kIGFy
Z3VtZW50IGlzIG5laXRoZXIKKyAgdW5kZWZpbmVkIG5vciBhbiBvYmplY3QKK2VzaWQ6IHNlYy1p
bXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitpbmZvOiB8CisgIDIuMS4x
LjEgRXZhbHVhdGVJbXBvcnRDYWxsICggc3BlY2lmaWVyRXhwcmVzc2lvbiBbICwgb3B0aW9uc0V4
cHJlc3Npb24gXSApCisgICAgWy4uLl0KKyAgICA2LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUg
ISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDcuIExldCBzcGVjaWZpZXJT
dHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA4LiBJZkFicnVwdFJlamVjdFByb21p
c2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gTGV0IGFzc2Vy
dGlvbnMgYmUgYSBuZXcgZW1wdHkgTGlzdC4KKyAgICAxMC4gSWYgb3B0aW9ucyBpcyBub3QgdW5k
ZWZpbmVkLCB0aGVuCisgICAgICAgIGEuIElmIFR5cGUob3B0aW9ucykgaXMgbm90IE9iamVjdCwK
KyAgICAgICAgICAgWy4uLl0KKyAgICAgICAgYi4gTGV0IGFzc2VydGlvbnNPYmogYmUgR2V0KG9w
dGlvbnMsICJhc3NlcnQiKS4KKyAgICAgICAgYy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKGFzc2Vy
dGlvbnNPYmosIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICAgICAgZC4gSWYgYXNzZXJ0aW9uc09i
aiBpcyBub3QgdW5kZWZpbmVkLAorICAgICAgICAgICBpLiBJZiBUeXBlKGFzc2VydGlvbnNPYmop
IGlzIG5vdCBPYmplY3QsCisgICAgICAgICAgICAgIDEuIFBlcmZvcm0gISBDYWxsKHByb21pc2VD
YXBhYmlsaXR5LltbUmVqZWN0XV0sIHVuZGVmaW5lZCwgwqsgYQorICAgICAgICAgICAgICAgICBu
ZXdseSBjcmVhdGVkIFR5cGVFcnJvciBvYmplY3QgwrspLgorICAgICAgICAgICAgICAyLiBSZXR1
cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisgICAgWy4uLl0KK2ZlYXR1cmVzOiBb
ZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3NlcnRpb25zLCBTeW1ib2wsIEJpZ0ludF0KK2ZsYWdz
OiBbYXN5bmNdCistLS0qLworCitmdW5jdGlvbiB0ZXN0KHByb21pc2UsIHZhbHVlVHlwZSkgewor
ICByZXR1cm4gcHJvbWlzZS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgdGhyb3cgbmV3IFRlc3Qy
NjJFcnJvcignUHJvbWlzZSBmb3IgJyArIHZhbHVlVHlwZSArICcgd2FzIG5vdCByZWplY3RlZC4n
KTsKKyAgICB9LCBmdW5jdGlvbihlcnJvcikgeworICAgICAgYXNzZXJ0LnNhbWVWYWx1ZShlcnJv
ci5jb25zdHJ1Y3RvciwgVHlwZUVycm9yLCB2YWx1ZVR5cGUpOworICAgIH0pOworfQorCitQcm9t
aXNlLmFsbChbCisgICAgdGVzdChpbXBvcnQoJy4vMm5kLXBhcmFtX0ZJWFRVUkUuanMnLCB7YXNz
ZXJ0Om51bGx9KSwgJ251bGwnKSwKKyAgICB0ZXN0KGltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVS
RS5qcycsIHthc3NlcnQ6ZmFsc2V9KSwgJ2Jvb2xlYW4nKSwKKyAgICB0ZXN0KGltcG9ydCgnLi8y
bmQtcGFyYW1fRklYVFVSRS5qcycsIHthc3NlcnQ6MjN9KSwgJ251bWJlcicpLAorICAgIHRlc3Qo
aW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywge2Fzc2VydDonJ30pLCAnc3RyaW5nJyks
CisgICAgdGVzdChpbXBvcnQoJy4vMm5kLXBhcmFtX0ZJWFRVUkUuanMnLCB7YXNzZXJ0OlN5bWJv
bCgnJyl9KSwgJ3N5bWJvbCcpLAorICAgIHRlc3QoaW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJF
LmpzJywge2Fzc2VydDoyM259KSwgJ2JpZ2ludCcpCisgIF0pCisgIC50aGVuKGZ1bmN0aW9uKCkg
e30pCisgIC50aGVuKCRET05FLCAkRE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0
LXVuZGVmaW5lZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtdW5kZWZpbmVkLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmJkZDQwMDNkMzg2NGJmMmVmZjNkZTQwMDJhZGZjODQxZWViYWY4ZDQKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC8ybmQtcGFyYW0tYXNzZXJ0LXVuZGVmaW5lZC5qcwpAQCAtMCwwICsxLDM2IEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogQWNjZXB0cyB1bmRlZmlu
ZWQgZm9yIHRoZSBgYXNzZXJ0YCBwcm9wZXJ0eSBvZiB0aGUgc2Vjb25kIGFyZ3VtZW50Citlc2lk
OiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgoraW5mbzogfAor
ICAyLjEuMS4xIEV2YWx1YXRlSW1wb3J0Q2FsbCAoIHNwZWNpZmllckV4cHJlc3Npb24gWyAsIG9w
dGlvbnNFeHByZXNzaW9uIF0gKQorICAgIFsuLi5dCisgICAgNi4gTGV0IHByb21pc2VDYXBhYmls
aXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA3LiBMZXQgc3Bl
Y2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgOC4gSWZBYnJ1cHRSZWpl
Y3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIExl
dCBhc3NlcnRpb25zIGJlIGEgbmV3IGVtcHR5IExpc3QuCisgICAgMTAuIElmIG9wdGlvbnMgaXMg
bm90IHVuZGVmaW5lZCwgdGhlbgorICAgICAgICBhLiBJZiBUeXBlKG9wdGlvbnMpIGlzIG5vdCBP
YmplY3QsCisgICAgICAgICAgIFsuLi5dCisgICAgICAgIGIuIExldCBhc3NlcnRpb25zT2JqIGJl
IEdldChvcHRpb25zLCAiYXNzZXJ0IikuCisgICAgICAgIGMuIElmQWJydXB0UmVqZWN0UHJvbWlz
ZShhc3NlcnRpb25zT2JqLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgICAgIGQuIElmIGFzc2Vy
dGlvbnNPYmogaXMgbm90IHVuZGVmaW5lZCwKKyAgICAgICAgICAgaS4gSWYgVHlwZShhc3NlcnRp
b25zT2JqKSBpcyBub3QgT2JqZWN0LAorICAgICAgICAgICAgICAxLiBQZXJmb3JtICEgQ2FsbChw
cm9taXNlQ2FwYWJpbGl0eS5bW1JlamVjdF1dLCB1bmRlZmluZWQsIMKrIGEKKyAgICAgICAgICAg
ICAgICAgbmV3bHkgY3JlYXRlZCBUeXBlRXJyb3Igb2JqZWN0IMK7KS4KKyAgICAgICAgICAgICAg
Mi4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorICAgIFsuLi5dCitmZWF0
dXJlczogW2R5bmFtaWMtaW1wb3J0LCBpbXBvcnQtYXNzZXJ0aW9ucywgU3ltYm9sLCBCaWdJbnRd
CitmbGFnczogW2FzeW5jXQorLS0tKi8KKworUHJvbWlzZS5hbGwoWworICAgIGltcG9ydCgnLi8y
bmQtcGFyYW1fRklYVFVSRS5qcycsIHt9KSwKKyAgICBpbXBvcnQoJy4vMm5kLXBhcmFtX0ZJWFRV
UkUuanMnLCB7YXNzZXJ0OnVuZGVmaW5lZH0pLAorICBdKQorICAudGhlbihmdW5jdGlvbih2YWx1
ZXMpIHsKKyAgICBhc3NlcnQuc2FtZVZhbHVlKHZhbHVlc1swXS5kZWZhdWx0LCAyNjIpOworICAg
IGFzc2VydC5zYW1lVmFsdWUodmFsdWVzWzFdLmRlZmF1bHQsIDI2Mik7CisgIH0pCisgIC50aGVu
KCRET05FLCAkRE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXNzZXJ0LXZhbHVlLWFicnVw
dC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtdmFsdWUtYWJydXB0LmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU4NDBh
NzE5NTA5NzFhMDU2NWJlNTA4NTQ5MzExYWJhMTM4OTc5ZTEKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8y
bmQtcGFyYW0tYXNzZXJ0LXZhbHVlLWFicnVwdC5qcwpAQCAtMCwwICsxLDM0IEBACisvLyBDb3B5
cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogPgorICBSZWplY3RzIHByb21p
c2Ugd2hlbiByZXRyaWV2aW5nIGEgdmFsdWUgb2YgdGhlIGBhc3NlcnRgIG9iamVjdCBwcm9kdWNl
cyBhbgorICBhYnJ1cHQgY29tcGxldGlvbgorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUt
c2VtYW50aWNzLWV2YWx1YXRpb24KK2luZm86IHwKKyAgMi4xLjEuMSBFdmFsdWF0ZUltcG9ydENh
bGwgKCBzcGVjaWZpZXJFeHByZXNzaW9uIFsgLCBvcHRpb25zRXhwcmVzc2lvbiBdICkKKyAgICBb
Li4uXQorICAgIDEwLiBJZiBvcHRpb25zIGlzIG5vdCB1bmRlZmluZWQsIHRoZW4KKyAgICAgICAg
ICAgWy4uLl0KKyAgICAgICAgZC4gSWYgYXNzZXJ0aW9uc09iaiBpcyBub3QgdW5kZWZpbmVkLAor
ICAgICAgICAgICBbLi4uXQorICAgICAgICAgICBpaS4gTGV0IGtleXMgYmUgRW51bWVyYWJsZU93
blByb3BlcnR5TmFtZXMoYXNzZXJ0aW9uc09iaiwga2V5KS4KKyAgICAgICAgICAgaWlpLiBJZkFi
cnVwdFJlamVjdFByb21pc2Uoa2V5cywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgICAgICAgICBp
di4gTGV0IHN1cHBvcnRlZEFzc2VydGlvbnMgYmUgISBIb3N0R2V0U3VwcG9ydGVkSW1wb3J0QXNz
ZXJ0aW9ucygpLgorICAgICAgICAgICB2LiBGb3IgZWFjaCBTdHJpbmcga2V5IG9mIGtleXMsCisg
ICAgICAgICAgICAgIDEuIExldCB2YWx1ZSBiZSBHZXQoYXNzZXJ0aW9uc09iaiwga2V5KS4KKyAg
ICAgICAgICAgICAgMi4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHZhbHVlLCBwcm9taXNlQ2FwYWJp
bGl0eSkuCisgICAgWy4uLl0KK2ZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3Nl
cnRpb25zXQorZmxhZ3M6IFthc3luY10KKy0tLSovCisKK3ZhciB0aHJvd24gPSBuZXcgVGVzdDI2
MkVycm9yKCk7CisKK2ltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIHthc3NlcnQ6e2dl
dCAnJygpIHsgdGhyb3cgdGhyb3duOyB9fX0pCisgIC50aGVuKGZ1bmN0aW9uKCkgeworICAgIHRo
cm93IG5ldyBUZXN0MjYyRXJyb3IoJ0V4cGVjdGVkIHByb21pc2UgdG8gYmUgcmVqZWN0ZWQsIGJ1
dCBpdCB3YXMgZnVsZmlsbGVkJyk7CisgIH0sIGZ1bmN0aW9uKGVycm9yKSB7CisgICAgYXNzZXJ0
LnNhbWVWYWx1ZShlcnJvciwgdGhyb3duKTsKKyAgfSkKKyAgLnRoZW4oJERPTkUsICRET05FKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hc3NlcnQtdmFsdWUtbm9uLXN0cmluZy5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1w
YXJhbS1hc3NlcnQtdmFsdWUtbm9uLXN0cmluZy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYTcxYjFjMjgyNjI1
ZDI0NjRhZDkxZGZiYmZmYjNiMTA5YWZhZDVhCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFt
LWFzc2VydC12YWx1ZS1ub24tc3RyaW5nLmpzCkBAIC0wLDAgKzEsNDcgQEAKKy8vIENvcHlyaWdo
dCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgIFJlamVjdHMgcHJvbWlzZSB3
aGVuIGFueSBwcm9wZXJ0eSBvZiB0aGUgYGFzc2VydGAgb2JqZWN0IGlzIG5vdCBhIHN0cmluZwor
ZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2luZm86
IHwKKyAgMi4xLjEuMSBFdmFsdWF0ZUltcG9ydENhbGwgKCBzcGVjaWZpZXJFeHByZXNzaW9uIFsg
LCBvcHRpb25zRXhwcmVzc2lvbiBdICkKKyAgICBbLi4uXQorICAgIDEwLiBJZiBvcHRpb25zIGlz
IG5vdCB1bmRlZmluZWQsIHRoZW4KKyAgICAgICAgICAgWy4uLl0KKyAgICAgICAgZC4gSWYgYXNz
ZXJ0aW9uc09iaiBpcyBub3QgdW5kZWZpbmVkLAorICAgICAgICAgICBbLi4uXQorICAgICAgICAg
ICBpaS4gTGV0IGtleXMgYmUgRW51bWVyYWJsZU93blByb3BlcnR5TmFtZXMoYXNzZXJ0aW9uc09i
aiwga2V5KS4KKyAgICAgICAgICAgaWlpLiBJZkFicnVwdFJlamVjdFByb21pc2Uoa2V5cywgcHJv
bWlzZUNhcGFiaWxpdHkpLgorICAgICAgICAgICBpdi4gTGV0IHN1cHBvcnRlZEFzc2VydGlvbnMg
YmUgISBIb3N0R2V0U3VwcG9ydGVkSW1wb3J0QXNzZXJ0aW9ucygpLgorICAgICAgICAgICB2LiBG
b3IgZWFjaCBTdHJpbmcga2V5IG9mIGtleXMsCisgICAgICAgICAgICAgIDEuIExldCB2YWx1ZSBi
ZSBHZXQoYXNzZXJ0aW9uc09iaiwga2V5KS4KKyAgICAgICAgICAgICAgMi4gSWZBYnJ1cHRSZWpl
Y3RQcm9taXNlKHZhbHVlLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgICAgICAgICAgIDMuIElm
IFR5cGUodmFsdWUpIGlzIG5vdCBTdHJpbmcsIHRoZW4KKyAgICAgICAgICAgICAgICAgYS4gUGVy
Zm9ybSAhIENhbGwocHJvbWlzZUNhcGFiaWxpdHkuW1tSZWplY3RdXSwgdW5kZWZpbmVkLCDCqyBh
CisgICAgICAgICAgICAgICAgICAgIG5ld2x5IGNyZWF0ZWQgVHlwZUVycm9yIG9iamVjdCDCuyku
CisgICAgICAgICAgICAgICAgIGIuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2Vd
XS4KKyAgICBbLi4uXQorZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydCwgaW1wb3J0LWFzc2VydGlv
bnMsIFN5bWJvbCwgQmlnSW50XQorZmxhZ3M6IFthc3luY10KKy0tLSovCisKK2Z1bmN0aW9uIHRl
c3QocHJvbWlzZSwgdmFsdWVUeXBlKSB7CisgIHJldHVybiBwcm9taXNlLnRoZW4oZnVuY3Rpb24o
KSB7CisgICAgICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdQcm9taXNlIGZvciAnICsgdmFsdWVU
eXBlICsgJyB3YXMgbm90IHJlamVjdGVkLicpOworICAgIH0sIGZ1bmN0aW9uKGVycm9yKSB7Cisg
ICAgICBhc3NlcnQuc2FtZVZhbHVlKGVycm9yLmNvbnN0cnVjdG9yLCBUeXBlRXJyb3IsIHZhbHVl
VHlwZSk7CisgICAgfSk7Cit9CisKK1Byb21pc2UuYWxsKFsKKyAgICB0ZXN0KGltcG9ydCgnLi8y
bmQtcGFyYW1fRklYVFVSRS5qcycsIHthc3NlcnQ6eycnOiB1bmRlZmluZWR9fSksICd1bmRlZmlu
ZWQnKSwKKyAgICB0ZXN0KGltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIHthc3NlcnQ6
eycnOiBudWxsfX0pLCAnbnVsbCcpLAorICAgIHRlc3QoaW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhU
VVJFLmpzJywge2Fzc2VydDp7Jyc6IGZhbHNlfX0pLCAnYm9vbGVhbicpLAorICAgIHRlc3QoaW1w
b3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywge2Fzc2VydDp7Jyc6IDIzfX0pLCAnbnVtYmVy
JyksCisgICAgdGVzdChpbXBvcnQoJy4vMm5kLXBhcmFtX0ZJWFRVUkUuanMnLCB7YXNzZXJ0Onsn
JzogU3ltYm9sKCcnKX19KSwgJ3N5bWJvbCcpLAorICAgIHRlc3QoaW1wb3J0KCcuLzJuZC1wYXJh
bV9GSVhUVVJFLmpzJywge2Fzc2VydDp7Jyc6IDIzbn19KSwgJ2JpZ2ludCcpLAorICAgIHRlc3Qo
aW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywge2Fzc2VydDp7Jyc6IHt9fX0pLCAnb2Jq
ZWN0JykKKyAgXSkKKyAgLnRoZW4oZnVuY3Rpb24oKSB7fSkKKyAgLnRoZW4oJERPTkUsICRET05F
KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hd2FpdC1leHByLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWF3YWl0
LWV4cHIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOTY2YWI5NDM2OTJhZmRlNmUwYzQ5ZWVjZmFjZWI2OTU4NTU3
ZWFhYwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hd2FpdC1leHByLmpzCkBAIC0wLDAg
KzEsMjEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+
CisgIEltcG9ydENhbGwgcGFyYW1ldGVyIGxpc3QgZm9yd2FyZHMgdGhlIEF3YWl0IHByb2R1Y3Rp
b24gcGFyYW1ldGVyIC0gQXdhaXRFeHByZXNzaW9uCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVu
dGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgoraW5mbzogfAorICBJbXBvcnRDYWxsW1lpZWxkLCBB
d2FpdF06CisgICAgaW1wb3J0ICggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCisgICAgaW1wb3J0ICggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWll
bGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAs
b3B0ICkKK2ZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3NlcnRpb25zLCBhc3lu
Yy1mdW5jdGlvbnNdCitmbGFnczogW2FzeW5jXQorLS0tKi8KKworKGFzeW5jIGZ1bmN0aW9uICgp
IHsKKyAgcmV0dXJuIGltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIGF3YWl0IHVuZGVm
aW5lZCk7Cit9KCkpCisgIC50aGVuKGZ1bmN0aW9uKG1vZHVsZSkgeworICAgIGFzc2VydC5zYW1l
VmFsdWUobW9kdWxlLmRlZmF1bHQsIDI2Mik7CisgIH0pCisgIC50aGVuKCRET05FLCAkRE9ORSk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXdhaXQtaWRlbnQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tYXdhaXQt
aWRlbnQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZDEzY2E1M2IyMGY1NTlkZjQ3MTljNTAwMjZjZGE1M2MzZTU2
OTBkOAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1hd2FpdC1pZGVudC5qcwpAQCAtMCww
ICsxLDIxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNE
IGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjog
PgorICBJbXBvcnRDYWxsIHBhcmFtZXRlciBsaXN0IGZvcndhcmRzIHRoZSBBd2FpdCBwcm9kdWN0
aW9uIHBhcmFtZXRlciAtIElkZW50aWZpZXJSZWZlcmVuY2UKK2VzaWQ6IHNlYy1pbXBvcnQtY2Fs
bC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitpbmZvOiB8CisgIEltcG9ydENhbGxbWWll
bGQsIEF3YWl0XToKKyAgICBpbXBvcnQgKCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZCwgP0F3YWl0XSAsb3B0ICkKKyAgICBpbXBvcnQgKCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4s
ID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdh
aXRdICxvcHQgKQorZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydCwgaW1wb3J0LWFzc2VydGlvbnMs
IGFzeW5jLWZ1bmN0aW9uc10KK2ZsYWdzOiBbYXN5bmNdCistLS0qLworCitmdW5jdGlvbiBhd2Fp
dCgpIHt9CisKK2ltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIGF3YWl0KHVuZGVmaW5l
ZCkpCisgIC50aGVuKGZ1bmN0aW9uKG1vZHVsZSkgeworICAgIGFzc2VydC5zYW1lVmFsdWUobW9k
dWxlLmRlZmF1bHQsIDI2Mik7CisgIH0pCisgIC50aGVuKCRET05FLCAkRE9ORSk7CmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1hYnJ1cHQtcmV0dXJuLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWV2
YWx1YXRpb24tYWJydXB0LXJldHVybi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZGE0YTU0ODJiNzQ4YzNlYjIw
MGRjOGQ2NzY3ZmM0ZTQyNjE3ZDE1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWV2YWx1
YXRpb24tYWJydXB0LXJldHVybi5qcwpAQCAtMCwwICsxLDMwIEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogRm9yd2FyZHMgInJldHVybiIgY29tcGxldGlv
biB3aGVuIGV2YWx1YXRpbmcgc2Vjb25kIHBhcmFtZXRlcgorZXNpZDogc2VjLWltcG9ydC1jYWxs
LXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2luZm86IHwKKyAgMi4xLjEuMSBFdmFsdWF0
ZUltcG9ydENhbGwgKCBzcGVjaWZpZXJFeHByZXNzaW9uIFsgLCBvcHRpb25zRXhwcmVzc2lvbiBd
ICkKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNj
cmlwdE9yTW9kdWxlKCkuCisgICAgMi4gTGV0IHNwZWNpZmllclJlZiBiZSB0aGUgcmVzdWx0IG9m
IGV2YWx1YXRpbmcgc3BlY2lmaWVyRXhwcmVzc2lvbi4KKyAgICAzLiBMZXQgc3BlY2lmaWVyIGJl
ID8gR2V0VmFsdWUoc3BlY2lmaWVyUmVmKS4KKyAgICA0LiBJZiBvcHRpb25zRXhwcmVzc2lvbiBp
cyBwcmVzZW50LCB0aGVuCisgICAgICAgYS4gTGV0IG9wdGlvbnNSZWYgYmUgdGhlIHJlc3VsdCBv
ZiBldmFsdWF0aW5nIG9wdGlvbnNFeHByZXNzaW9uLgorICAgICAgIGIuIExldCBvcHRpb25zIGJl
ID8gR2V0VmFsdWUob3B0aW9uc1JlZikuCisgICAgWy4uLl0KK2ZlYXR1cmVzOiBbZHluYW1pYy1p
bXBvcnQsIGltcG9ydC1hc3NlcnRpb25zXQorLS0tKi8KKwordmFyIGJlZm9yZUNvdW50ID0gMDsK
K3ZhciBhZnRlckNvdW50ID0gMDsKK3ZhciBpdGVyID0gZnVuY3Rpb24qKCkgeworICBiZWZvcmVD
b3VudCArPSAxLCBpbXBvcnQoJycsIHlpZWxkKSwgYWZ0ZXJDb3VudCArPSAxOworfSgpOworCitp
dGVyLm5leHQoKTsKK3ZhciByZXN1bHQgPSBpdGVyLnJldHVybig1OTUpOworCithc3NlcnQuc2Ft
ZVZhbHVlKHJlc3VsdC5kb25lLCB0cnVlKTsKK2Fzc2VydC5zYW1lVmFsdWUocmVzdWx0LnZhbHVl
LCA1OTUpOworYXNzZXJ0LnNhbWVWYWx1ZShiZWZvcmVDb3VudCwgMSk7Cithc3NlcnQuc2FtZVZh
bHVlKGFmdGVyQ291bnQsIDApOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWV2YWx1YXRpb24tYWJy
dXB0LXRocm93LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWV2YWx1YXRpb24tYWJydXB0LXRocm93LmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmU1ZTY2MTkwOTZkZTQ4ODNmODg0M2Y4MjgzNDY3MTQ1MGVkYTFhYWIKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1hYnJ1cHQtdGhyb3cuanMKQEAgLTAsMCAr
MSwyOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBs
aWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZGVzY3JpcHRpb246IEZv
cndhcmRzICJ0aHJvdyIgY29tcGxldGlvbiB3aGVuIGV2YWx1YXRpbmcgc2Vjb25kIHBhcmFtZXRl
cgorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2lu
Zm86IHwKKyAgMi4xLjEuMSBFdmFsdWF0ZUltcG9ydENhbGwgKCBzcGVjaWZpZXJFeHByZXNzaW9u
IFsgLCBvcHRpb25zRXhwcmVzc2lvbiBdICkKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRP
ck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gTGV0IHNwZWNp
ZmllclJlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgc3BlY2lmaWVyRXhwcmVzc2lvbi4K
KyAgICAzLiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoc3BlY2lmaWVyUmVmKS4KKyAgICA0
LiBJZiBvcHRpb25zRXhwcmVzc2lvbiBpcyBwcmVzZW50LCB0aGVuCisgICAgICAgYS4gTGV0IG9w
dGlvbnNSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIG9wdGlvbnNFeHByZXNzaW9uLgor
ICAgICAgIGIuIExldCBvcHRpb25zIGJlID8gR2V0VmFsdWUob3B0aW9uc1JlZikuCisgICAgWy4u
Ll0KK2ZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3NlcnRpb25zXQorLS0tKi8K
KwordmFyIGJlZm9yZUNvdW50ID0gMDsKK3ZhciBhZnRlckNvdW50ID0gMDsKK2Z1bmN0aW9uIHRo
cm93RXJyb3IoKSB7CisgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoKTsKK30KKworYXNzZXJ0LnRo
cm93cyhUZXN0MjYyRXJyb3IsIGZ1bmN0aW9uKCkgeworICBiZWZvcmVDb3VudCArPSAxLCBpbXBv
cnQoJycsIHRocm93RXJyb3IoKSksIGFmdGVyQ291bnQgKz0gMTsKK30pOworCithc3NlcnQuc2Ft
ZVZhbHVlKGJlZm9yZUNvdW50LCAxKTsKK2Fzc2VydC5zYW1lVmFsdWUoYWZ0ZXJDb3VudCwgMCk7
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC8ybmQtcGFyYW0tZXZhbHVhdGlvbi1zZXF1ZW5jZS5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJh
bS1ldmFsdWF0aW9uLXNlcXVlbmNlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk3OTVjNGJhZGE5ZDBkNTU2ZjM5
Mzc5YTQwNmRmZTU2M2E0MjkwZmUKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tZXZhbHVh
dGlvbi1zZXF1ZW5jZS5qcwpAQCAtMCwwICsxLDI1IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEg
dGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29k
ZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogRXZhbHVhdGVzIHBhcmFtZXRlcnMgaW4gY29ycmVjdCBz
ZXF1ZW5jZQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRp
b24KK2luZm86IHwKKyAgMi4xLjEuMSBFdmFsdWF0ZUltcG9ydENhbGwgKCBzcGVjaWZpZXJFeHBy
ZXNzaW9uIFsgLCBvcHRpb25zRXhwcmVzc2lvbiBdICkKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdT
Y3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gTGV0
IHNwZWNpZmllclJlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgc3BlY2lmaWVyRXhwcmVz
c2lvbi4KKyAgICAzLiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoc3BlY2lmaWVyUmVmKS4K
KyAgICA0LiBJZiBvcHRpb25zRXhwcmVzc2lvbiBpcyBwcmVzZW50LCB0aGVuCisgICAgICAgYS4g
TGV0IG9wdGlvbnNSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIG9wdGlvbnNFeHByZXNz
aW9uLgorICAgICAgIGIuIExldCBvcHRpb25zIGJlID8gR2V0VmFsdWUob3B0aW9uc1JlZikuCisg
ICAgWy4uLl0KK2ZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3NlcnRpb25zXQor
LS0tKi8KKwordmFyIGxvZyA9IFtdOworCitpbXBvcnQobG9nLnB1c2goJ2ZpcnN0JyksIChsb2cu
cHVzaCgnc2Vjb25kJyksIHVuZGVmaW5lZCkpCisgIC50aGVuKG51bGwsIGZ1bmN0aW9uKCkge30p
OworCithc3NlcnQuc2FtZVZhbHVlKGxvZy5sZW5ndGgsIDIpOworYXNzZXJ0LnNhbWVWYWx1ZShs
b2dbMF0sICdmaXJzdCcpOworYXNzZXJ0LnNhbWVWYWx1ZShsb2dbMV0sICdzZWNvbmQnKTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0LzJuZC1wYXJhbS1nZXQtYXNzZXJ0LWVycm9yLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLWdldC1h
c3NlcnQtZXJyb3IuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDdiYjdkOGMwNDYyNWI3MTQ4Mjk3ZWVhOWQ1NzVm
MGUwNjc2N2I1OQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1nZXQtYXNzZXJ0LWVycm9y
LmpzCkBAIC0wLDAgKzEsMzYgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVj
dCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rl
c2NyaXB0aW9uOiBSZWplY3RzIHByb21pc2Ugd2hlbiBhY2Nlc3NpbmcgImFzc2VydCIgcHJvcGVy
dHkgdGhyb3dzIGFuIGVycm9yCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRp
Y3MtZXZhbHVhdGlvbgoraW5mbzogfAorICAyLjEuMS4xIEV2YWx1YXRlSW1wb3J0Q2FsbCAoIHNw
ZWNpZmllckV4cHJlc3Npb24gWyAsIG9wdGlvbnNFeHByZXNzaW9uIF0gKQorICAgIFsuLi5dCisg
ICAgNi4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVBy
b21pc2UlKS4KKyAgICA3LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmll
cikuCisgICAgOC4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlz
ZUNhcGFiaWxpdHkpLgorICAgIDkuIExldCBhc3NlcnRpb25zIGJlIGEgbmV3IGVtcHR5IExpc3Qu
CisgICAgMTAuIElmIG9wdGlvbnMgaXMgbm90IHVuZGVmaW5lZCwgdGhlbgorICAgICAgICBhLiBJ
ZiBUeXBlKG9wdGlvbnMpIGlzIG5vdCBPYmplY3QsCisgICAgICAgICAgIFsuLi5dCisgICAgICAg
IGIuIExldCBhc3NlcnRpb25zT2JqIGJlIEdldChvcHRpb25zLCAiYXNzZXJ0IikuCisgICAgICAg
IGMuIElmQWJydXB0UmVqZWN0UHJvbWlzZShhc3NlcnRpb25zT2JqLCBwcm9taXNlQ2FwYWJpbGl0
eSkuCisgICAgWy4uLl0KK2ZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3NlcnRp
b25zXQorZmxhZ3M6IFthc3luY10KKy0tLSovCisKK3ZhciB0aHJvd24gPSBuZXcgVGVzdDI2MkVy
cm9yKCk7Cit2YXIgb3B0aW9ucyA9IHsKKyAgZ2V0IGFzc2VydCgpIHsKKyAgICB0aHJvdyB0aHJv
d247CisgIH0KK307CisKK2ltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIG9wdGlvbnMp
CisgIC50aGVuKGZ1bmN0aW9uKCkgeworICAgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ0V4cGVj
dGVkIGFuIGVycm9yLCBidXQgb2JzZXJ2ZWQgbm8gZXJyb3InKTsKKyAgfSwgZnVuY3Rpb24oY2F1
Z2h0KSB7CisgICAgYXNzZXJ0LnNhbWVWYWx1ZSh0aHJvd24sIGNhdWdodCk7CisgIH0pCisgIC50
aGVuKCRET05FLCAkRE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0taW4uanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFy
YW0taW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNmQ4YWMyYjBlYjJkNTUyYTAzNDIwNTE4YzZkN2Q3NzI2ZGQy
NmFkMQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS1pbi5qcwpAQCAtMCwwICsxLDIyIEBA
CisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2Ug
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogSW1wb3J0Q2Fs
bCBwYXJhbWV0ZXIgbGlzdCBlbmFibGVzIHRoZSBZaWVsZCBwcm9kdWN0aW9uIHBhcmFtZXRlcgor
ZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2luZm86
IHwKKyAgSW1wb3J0Q2FsbFtZaWVsZCwgQXdhaXRdOgorICAgIGltcG9ydCAoIEFzc2lnbm1lbnRF
eHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgIGltcG9ydCAoIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Np
b25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCitmZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0
LCBpbXBvcnQtYXNzZXJ0aW9uc10KK2ZsYWdzOiBbYXN5bmNdCistLS0qLworCit2YXIgcHJvbWlz
ZTsKKworZm9yIChwcm9taXNlID0gaW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywgJ3Rl
c3QyNjInIGluIHt9IHx8IHVuZGVmaW5lZCk7IGZhbHNlOyApIDsKKworcHJvbWlzZQorICAudGhl
bihmdW5jdGlvbihtb2R1bGUpIHsKKyAgICBhc3NlcnQuc2FtZVZhbHVlKG1vZHVsZS5kZWZhdWx0
LCAyNjIpOworICB9KQorICAudGhlbigkRE9ORSwgJERPTkUpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBh
cmFtLW5vbi1vYmplY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0tbm9uLW9iamVjdC5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
OGI2ZTU3M2QxM2I5YjYyNzgwN2ZhZGYwZDVmNjFiZWI2OTBjMzVlCi0tLSAvZGV2L251bGwKKysr
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvMm5kLXBhcmFtLW5vbi1vYmplY3QuanMKQEAgLTAsMCArMSw0MCBAQAorLy8gQ29weXJpZ2h0
IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCisvKi0tLQorZGVzY3JpcHRpb246ID4KKyAgUmVqZWN0cyBwcm9taXNlIHdo
ZW4gdGhlIHNlY29uZCBhcmd1bWVudCBpcyBuZWl0aGVyIHVuZGVmaW5lZCBub3IgYW4gb2JqZWN0
Citlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgoraW5m
bzogfAorICAyLjEuMS4xIEV2YWx1YXRlSW1wb3J0Q2FsbCAoIHNwZWNpZmllckV4cHJlc3Npb24g
WyAsIG9wdGlvbnNFeHByZXNzaW9uIF0gKQorICAgIFsuLi5dCisgICAgNi4gTGV0IHByb21pc2VD
YXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA3LiBM
ZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgOC4gSWZBYnJ1
cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAg
IDkuIExldCBhc3NlcnRpb25zIGJlIGEgbmV3IGVtcHR5IExpc3QuCisgICAgMTAuIElmIG9wdGlv
bnMgaXMgbm90IHVuZGVmaW5lZCwgdGhlbgorICAgICAgICBhLiBJZiBUeXBlKG9wdGlvbnMpIGlz
IG5vdCBPYmplY3QsCisgICAgICAgICAgIGkuIFBlcmZvcm0gISBDYWxsKHByb21pc2VDYXBhYmls
aXR5LltbUmVqZWN0XV0sIHVuZGVmaW5lZCwgwqsgYSBuZXdseSBjcmVhdGVkIFR5cGVFcnJvciBv
YmplY3QgwrspLgorICAgICAgICAgICBpaS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJv
bWlzZV1dLgorICAgIFsuLi5dCitmZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0LCBpbXBvcnQtYXNz
ZXJ0aW9ucywgU3ltYm9sLCBCaWdJbnRdCitmbGFnczogW2FzeW5jXQorLS0tKi8KKworZnVuY3Rp
b24gdGVzdChwcm9taXNlLCB2YWx1ZVR5cGUpIHsKKyAgcmV0dXJuIHByb21pc2UudGhlbihmdW5j
dGlvbigpIHsKKyAgICAgIHRocm93IG5ldyBUZXN0MjYyRXJyb3IoJ1Byb21pc2UgZm9yICcgKyB2
YWx1ZVR5cGUgKyAnIHdhcyBub3QgcmVqZWN0ZWQuJyk7CisgICAgfSwgZnVuY3Rpb24oZXJyb3Ip
IHsKKyAgICAgIGFzc2VydC5zYW1lVmFsdWUoZXJyb3IuY29uc3RydWN0b3IsIFR5cGVFcnJvciwg
dmFsdWVUeXBlKTsKKyAgICB9KTsKK30KKworUHJvbWlzZS5hbGwoWworICAgIHRlc3QoaW1wb3J0
KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywgbnVsbCksICdudWxsJyksCisgICAgdGVzdChpbXBv
cnQoJy4vMm5kLXBhcmFtX0ZJWFRVUkUuanMnLCBmYWxzZSksICdib29sZWFuJyksCisgICAgdGVz
dChpbXBvcnQoJy4vMm5kLXBhcmFtX0ZJWFRVUkUuanMnLCAyMyksICdudW1iZXInKSwKKyAgICB0
ZXN0KGltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsICcnKSwgJ3N0cmluZycpLAorICAg
IHRlc3QoaW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywgU3ltYm9sKCcnKSksICdzeW1i
b2wnKSwKKyAgICB0ZXN0KGltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIDIzbiksICdi
aWdpbnQnKQorICBdKQorICAudGhlbihmdW5jdGlvbigpIHt9KQorICAudGhlbigkRE9ORSwgJERP
TkUpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXRyYWlsaW5nLWNvbW1hLWZ1bGZpbGwuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8y
bmQtcGFyYW0tdHJhaWxpbmctY29tbWEtZnVsZmlsbC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jODA2ZjNlNjgz
NzkzMjYxMDAxNWE2OTk0Mjk5MjkxNGZjZDNkMGM5Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBh
cmFtLXRyYWlsaW5nLWNvbW1hLWZ1bGZpbGwuanMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZGVzY3JpcHRpb246ID4KKyAgSW1wb3J0Q2FsbCBwYXJh
bWV0ZXIgbGlzdCBzdXBwb3J0cyBhbiBvcHRpb25hbCB0cmFpbGluZyBjb21tYSAoZnVsZmlsbG1l
bnQKKyAgc2VtYW50aWNzKQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNz
LWV2YWx1YXRpb24KK2luZm86IHwKKyAgSW1wb3J0Q2FsbFtZaWVsZCwgQXdhaXRdOgorICAgIGlt
cG9ydCAoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQor
ICAgIGltcG9ydCAoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwg
QXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCitmZWF0dXJl
czogW2R5bmFtaWMtaW1wb3J0LCBpbXBvcnQtYXNzZXJ0aW9uc10KK2ZsYWdzOiBbYXN5bmNdCist
LS0qLworCitpbXBvcnQoJy4vMm5kLXBhcmFtX0ZJWFRVUkUuanMnLCB7fSwpCisgIC50aGVuKGZ1
bmN0aW9uKG1vZHVsZSkgeworICAgIGFzc2VydC5zYW1lVmFsdWUobW9kdWxlLmRlZmF1bHQsIDI2
Mik7CisgIH0pCisgIC50aGVuKCRET05FLCAkRE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0t
dHJhaWxpbmctY29tbWEtcmVqZWN0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXRyYWlsaW5nLWNvbW1hLXJlamVj
dC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4zOTcwYzc0NWI2Mjk3MmQwMTQ4NmNjYWI2N2UzYjQ1ZGI2NDE2MGY2
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXRyYWlsaW5nLWNvbW1hLXJlamVjdC5qcwpA
QCAtMCwwICsxLDI0IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0
aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0
aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlw
dGlvbjogPgorICBJbXBvcnRDYWxsIHBhcmFtZXRlciBsaXN0IHN1cHBvcnRzIGFuIG9wdGlvbmFs
IHRyYWlsaW5nIGNvbW1hIChyZWplY3Rpb24KKyAgc2VtYW50aWNzKQorZXNpZDogc2VjLWltcG9y
dC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2luZm86IHwKKyAgSW1wb3J0Q2Fs
bFtZaWVsZCwgQXdhaXRdOgorICAgIGltcG9ydCAoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwg
P1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgIGltcG9ydCAoIEFzc2lnbm1lbnRFeHByZXNzaW9u
WytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQs
ID9Bd2FpdF0gLG9wdCApCitmZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0LCBpbXBvcnQtYXNzZXJ0
aW9uc10KK2ZsYWdzOiBbYXN5bmNdCistLS0qLworCit2YXIgdGhyb3duID0gbmV3IFRlc3QyNjJF
cnJvcigpOworCitpbXBvcnQoe3RvU3RyaW5nOiBmdW5jdGlvbigpIHsgdGhyb3cgdGhyb3duOyB9
IH0sIHt9LCkKKyAgLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgdGhyb3cgbmV3IFRlc3QyNjJFcnJv
cignRXhwZWN0ZWQgcHJvbWlzZSB0byBiZSByZWplY3RlZCwgYnV0IGl0IHdhcyBmdWxmaWxsZWQu
Jyk7CisgIH0sIGZ1bmN0aW9uKGNhdWdodCkgeworICAgIGFzc2VydC5zYW1lVmFsdWUodGhyb3du
LCBjYXVnaHQpOworICB9KQorICAudGhlbigkRE9ORSwgJERPTkUpOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5k
LXBhcmFtLXlpZWxkLWV4cHIuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0teWllbGQtZXhwci5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5iMTQ4MmFjOWU4ODA5OGE0MGYwNWVjYTI0Yjk5NzQ2ODNkZjA4OTRhCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvMm5kLXBhcmFtLXlpZWxkLWV4cHIuanMKQEAgLTAsMCArMSwzMSBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZGVzY3JpcHRpb246ID4KKyAgSW1wb3J0Q2FsbCBwYXJh
bWV0ZXIgbGlzdCBmb3J3YXJkcyB0aGUgWWllbGQgcHJvZHVjdGlvbiBwYXJhbWV0ZXIgLSBZaWVs
ZEV4cHJlc3Npb24KK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFs
dWF0aW9uCitpbmZvOiB8CisgIEltcG9ydENhbGxbWWllbGQsIEF3YWl0XToKKyAgICBpbXBvcnQg
KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICBp
bXBvcnQgKCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorZmVhdHVyZXM6IFtk
eW5hbWljLWltcG9ydCwgaW1wb3J0LWFzc2VydGlvbnNdCitmbGFnczogW2FzeW5jXQorLS0tKi8K
KwordmFyIHByb21pc2U7CisKK3ZhciBpdGVyID0gKGZ1bmN0aW9uICogKCkgeworICBwcm9taXNl
ID0gaW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywgeWllbGQpOworfSgpKTsKKworaXRl
ci5uZXh0KCk7CisKK2Fzc2VydC5zYW1lVmFsdWUocHJvbWlzZSwgdW5kZWZpbmVkKTsKKworaXRl
ci5uZXh0KCk7CisKK3Byb21pc2UKKyAgLnRoZW4oZnVuY3Rpb24obW9kdWxlKSB7CisgICAgYXNz
ZXJ0LnNhbWVWYWx1ZShtb2R1bGUuZGVmYXVsdCwgMjYyKTsKKyAgfSkKKyAgLnRoZW4oJERPTkUs
ICRET05FKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJhbS15aWVsZC1pZGVudC1pbnZhbGlkLmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
Mm5kLXBhcmFtLXlpZWxkLWlkZW50LWludmFsaWQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTY5NzFlODAzMTY4
ODNjY2ZjNWNlMTViNjMwMTlmZTU5NjViYTZlYQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0LzJuZC1wYXJh
bS15aWVsZC1pZGVudC1pbnZhbGlkLmpzCkBAIC0wLDAgKzEsMTkgQEAKKy8vIENvcHlyaWdodCAo
QykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8g
VGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElD
RU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgIEltcG9ydENhbGwgcGFyYW1ldGVy
IGxpc3QgZm9yd2FyZHMgdGhlIFlpZWxkIHByb2R1Y3Rpb24gcGFyYW1ldGVyIC0gaW52YWxpZCBJ
ZGVudGlmaWVyUmVmZXJlbmNlCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRp
Y3MtZXZhbHVhdGlvbgoraW5mbzogfAorICBJbXBvcnRDYWxsW1lpZWxkLCBBd2FpdF06CisgICAg
aW1wb3J0ICggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCAp
CisgICAgaW1wb3J0ICggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0g
LCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKK2ZlYXR1
cmVzOiBbZHluYW1pYy1pbXBvcnQsIGltcG9ydC1hc3NlcnRpb25zXQorZmxhZ3M6IFtvbmx5U3Ry
aWN0XQorbmVnYXRpdmU6CisgIHBoYXNlOiBwYXJzZQorICB0eXBlOiBTeW50YXhFcnJvcgorLS0t
Ki8KKyRET05PVEVWQUxVQVRFKCk7CisKK2ltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywgeWll
bGQpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvMm5kLXBhcmFtLXlpZWxkLWlkZW50LXZhbGlkLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvMm5kLXBh
cmFtLXlpZWxkLWlkZW50LXZhbGlkLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM5YThmZTdkNmVhMjU2OTU3NThl
YmFkN2QyYzRkMDk1YjNlYTYyMDMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW0teWllbGQt
aWRlbnQtdmFsaWQuanMKQEAgLTAsMCArMSwyMSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRo
ZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUg
aXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUu
CisvKi0tLQorZGVzY3JpcHRpb246ID4KKyAgSW1wb3J0Q2FsbCBwYXJhbWV0ZXIgbGlzdCBmb3J3
YXJkcyB0aGUgWWllbGQgcHJvZHVjdGlvbiBwYXJhbWV0ZXIgLSB2YWxpZCBJZGVudGlmaWVyUmVm
ZXJlbmNlCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlv
bgoraW5mbzogfAorICBJbXBvcnRDYWxsW1lpZWxkLCBBd2FpdF06CisgICAgaW1wb3J0ICggQXNz
aWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgaW1wb3J0
ICggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50
RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKK2ZlYXR1cmVzOiBbZHluYW1p
Yy1pbXBvcnQsIGltcG9ydC1hc3NlcnRpb25zXQorZmxhZ3M6IFthc3luYywgbm9TdHJpY3RdCist
LS0qLworCit2YXIgeWllbGQ7CisKK2ltcG9ydCgnLi8ybmQtcGFyYW1fRklYVFVSRS5qcycsIHlp
ZWxkKQorICAudGhlbihmdW5jdGlvbihtb2R1bGUpIHsKKyAgICBhc3NlcnQuc2FtZVZhbHVlKG1v
ZHVsZS5kZWZhdWx0LCAyNjIpOworICB9KQorICAudGhlbigkRE9ORSwgJERPTkUpOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvMm5kLXBhcmFtX0ZJWFRVUkUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC8ybmQtcGFyYW1fRklYVFVSRS5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mYzlmMmZhMDIxZWExMDhlNGFjNGFjZDIzODlhZjUzMDQwNjM5NWFhCi0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvMm5kLXBhcmFtX0ZJWFRVUkUuanMKQEAgLTAsMCArMSwzIEBACisvLyBDb3B5cmln
aHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhl
IExJQ0VOU0UgZmlsZS4KK2V4cG9ydCBkZWZhdWx0IDI2MjsKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC1hcnJvdy1hc3NpZ25tZW50LWV4cHJlc3Npb24tbm90LWV4dGVuc2libGUt
YXJncy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJvdy1hc3NpZ25tZW50LWV4cHJlc3Np
b24tbm90LWV4dGVuc2libGUtYXJncy5qcwppbmRleCAyZjQxZjNlMTQzNTM1MjkxZDY0N2I5Mjkw
NmM2MDgwZGY4YTFiYzA3Li5kNDUyM2FhMTdjMDI0MmUyYzBjYjk0N2QxNTQ0MGJjMTljZmU5ZjJl
IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXJyb3ctYXNzaWdubWVudC1leHBy
ZXNzaW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCkBAIC0y
NSw3ICsyNSw4IEBACiAKIAogICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVu
dEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCgg
QXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhw
cmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKIAogICAgIEZvcmJpZGRlbiBFeHRl
bnNpb25zCiAKQEAgLTM0LDQgKzM1LDQgQEAKIAogJERPTk9URVZBTFVBVEUoKTsKIAotbGV0IGYg
PSAoKSA9PiBpbXBvcnQoJycsICcnKTsKK2xldCBmID0gKCkgPT4gaW1wb3J0KCcuL2VtcHR5X0ZJ
WFRVUkUuanMnLCB7fSwgJycpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFy
cm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21t
YS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJvdy1hc3NpZ25tZW50LWV4cHJlc3Npb24t
bm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDRmNGVjN2QyNTIwODcxYjdmMzQwOTUzOThlYzc1NjczZDQxYmRjMGIuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQv
bmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1uby10cmFp
bGluZy1jb21tYS5qcworKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLS8vIFRoaXMgZmls
ZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoK
LS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1h
LmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJv
dy1hc3NpZ25tZW50LWV4cHJlc3Npb24udGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1w
b3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJsZSAtIHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgYXJyb3cg
c3ludGF4KQotZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRp
b24KLWZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnRdCi1mbGFnczogW2dlbmVyYXRlZF0KLW5lZ2F0
aXZlOgotICBwaGFzZTogcGFyc2UKLSAgdHlwZTogU3ludGF4RXJyb3IKLWluZm86IHwKLSAgICBJ
bXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCi0KLSAg
ICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9y
TW9kdWxlKCkuCi0gICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEg
U2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KLSAgICAz
LiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVz
c2lvbi4KLSAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KLSAgICA1
LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlz
ZSUpLgotICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4K
LSAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2Fw
YWJpbGl0eSkuCi0gICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShy
ZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmls
aXR5KS4KLSAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCi0KLQot
ICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkXSApCi0KLSAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwotCi0gICAgLSBJbXBvcnRD
YWxsIG11c3Qgbm90IGJlIGV4dGVuZGVkLgotLS0tKi8KLQotJERPTk9URVZBTFVBVEUoKTsKLQot
bGV0IGYgPSAoKSA9PiBpbXBvcnQoJycsKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1hcnJvdy1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWFycm93LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKaW5kZXggZTI0M2YxZTI5YWZjYzU2NDcxZTBj
YTQyMzBlNjY4ZmZjZDhiMjk0YS4uNTQ2OWE5ZGRlNDEwOWQ0NDM3NzVlNDgzZjRlOTM4YTRkYTA0
YzczYiAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFycm93LW5vdC1leHRlbnNp
YmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFycm93LW5vdC1leHRlbnNp
YmxlLWFyZ3MuanMKQEAgLTI1LDcgKzI1LDggQEAKIAogCiAgICAgSW1wb3J0Q2FsbCA6Ci0gICAg
ICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKKyAgICAgICAg
aW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkK
KyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQogCiAg
ICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKIApAQCAtMzUsNSArMzYsNSBAQAogJERPTk9URVZBTFVB
VEUoKTsKIAogbGV0IGYgPSAoKSA9PiB7Ci0gIGltcG9ydCgnJywgJycpOworICBpbXBvcnQoJy4v
ZW1wdHlfRklYVFVSRS5qcycsIHt9LCAnJyk7CiB9OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFs
aWQvbmVzdGVkLWFycm93LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWFycm93LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1h
LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxOGJjMzNlZDljNjEwMTNjYjQwYzI5
OWM0ZDNhMjYzMjEwODlhOWRmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hcnJvdy1ub3QtZXh0ZW5zaWJsZS1uby10
cmFpbGluZy1jb21tYS5qcworKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLS8vIFRoaXMg
ZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNl
czoKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNv
bW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1h
cnJvdy50ZW1wbGF0ZQotLyotLS0KLWRlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRl
bnNpYmxlIC0gdHJhaWxpbmcgY29tbWEgKG5lc3RlZCBhcnJvdyBzeW50YXgpCi1lc2lkOiBzZWMt
aW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgotZmVhdHVyZXM6IFtkeW5h
bWljLWltcG9ydF0KLWZsYWdzOiBbZ2VuZXJhdGVkXQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBwYXJz
ZQotICB0eXBlOiBTeW50YXhFcnJvcgotaW5mbzogfAotICAgIEltcG9ydENhbGwgOgotICAgICAg
ICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKLQotICAgIDEuIExldCByZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KLSAgICAyLiBB
c3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1v
ZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgotICAgIDMuIExldCBhcmdSZWYgYmUgdGhl
IHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgotICAgIDQuIExldCBz
cGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgotICAgIDUuIExldCBwcm9taXNlQ2FwYWJp
bGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0IHNw
ZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgotICAgIDcuIElmQWJydXB0UmVq
ZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA4LiBQ
ZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JN
b2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDkuIFJldHVy
biBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6Ci0g
ICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKLQotICAg
IEZvcmJpZGRlbiBFeHRlbnNpb25zCi0KLSAgICAtIEltcG9ydENhbGwgbXVzdCBub3QgYmUgZXh0
ZW5kZWQuCi0tLS0qLwotCi0kRE9OT1RFVkFMVUFURSgpOwotCi1sZXQgZiA9ICgpID0+IHsKLSAg
aW1wb3J0KCcnLCk7Ci19OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5j
LWFycm93LWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52
YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ctZnVuY3Rpb24tYXdhaXQtbm90LWV4dGVuc2libGUtYXJn
cy5qcwppbmRleCA4NTAxZTJhNjA3Yjk1Y2JjMjcxOWVlYWJhNjQ0Y2FmMTAyODA1ZWRmLi4yNTE3
MTZjZWY0MWVhNzMyNGRhMzI0MTljNTZiYWIyNzAzZDY0M2E1IDEwMDY0NAotLS0gYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
aW52YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ctZnVuY3Rpb24tYXdhaXQtbm90LWV4dGVuc2libGUt
YXJncy5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ctZnVuY3Rpb24t
YXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcwpAQCAtMjUsNyArMjUsOCBAQAogCiAKICAgICBJ
bXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9Z
aWVsZF0gKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCiAKICAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwogCkBAIC0zNSw1ICszNiw1
IEBACiAkRE9OT1RFVkFMVUFURSgpOwogCiAoYXN5bmMgKCkgPT4gewotICBhd2FpdCBpbXBvcnQo
JycsICcnKQorICBhd2FpdCBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCAnJykKIH0p
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9u
LWF3YWl0LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFs
aWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLW5vLXRy
YWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhMWVmZTUxMGU5
MmQyN2M0MzQ1MmRhMWEwMGM5ZTVlNDI2M2FlNjE0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1m
dW5jdGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysgL2Rl
di9udWxsCkBAIC0xLDM5ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdl
bmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMtaW1w
b3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mbi1hd2FpdC50ZW1w
bGF0ZQotLyotLS0KLWRlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxlIC0g
dHJhaWxpbmcgY29tbWEgKG5lc3RlZCBpbiBhc3luYyBhcnJvdyBmdW5jdGlvbiwgYXdhaXRlZCkK
LWVzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCi1mZWF0
dXJlczogW2R5bmFtaWMtaW1wb3J0XQotZmxhZ3M6IFtnZW5lcmF0ZWRdCi1uZWdhdGl2ZToKLSAg
cGhhc2U6IHBhcnNlCi0gIHR5cGU6IFN5bnRheEVycm9yCi1pbmZvOiB8Ci0gICAgSW1wb3J0Q2Fs
bCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQotCi0gICAgMS4gTGV0
IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgp
LgotICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBS
ZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCi0gICAgMy4gTGV0IGFy
Z1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCi0g
ICAgNC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCi0gICAgNS4gTGV0IHBy
b21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KLSAg
ICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCi0gICAgNy4g
SWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkp
LgotICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNp
bmdTY3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0g
ICAgOS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgotCi0KLSAgICBJbXBv
cnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZF0gKQotCi0gICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKLQotICAgIC0gSW1wb3J0Q2FsbCBtdXN0
IG5vdCBiZSBleHRlbmRlZC4KLS0tLSovCi0KLSRET05PVEVWQUxVQVRFKCk7Ci0KLShhc3luYyAo
KSA9PiB7Ci0gIGF3YWl0IGltcG9ydCgnJywpCi19KTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZh
bGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2li
bGUtYXJncy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1y
ZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcwppbmRleCBiZGM3YzMzMTg0ZGJjZTIx
MjYzMzMzNzdhM2JlN2Q1NDdiNjI2MzI4Li41OTI2ZDBlMDY3YzA5NjJkMDEyMjViYmRjMDVlZDk2
ZWU5M2NkODlkIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ct
ZnVuY3Rpb24tcmV0dXJuLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L2ludmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLXJldHVybi1hd2FpdC1ub3QtZXh0
ZW5zaWJsZS1hcmdzLmpzCkBAIC0yNSw3ICsyNSw4IEBACiAKIAogICAgIEltcG9ydENhbGwgOgot
ICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCisgICAg
ICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9w
dCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkK
IAogICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCiAKQEAgLTM0LDQgKzM1LDQgQEAKIAogJERPTk9U
RVZBTFVBVEUoKTsKIAotKGFzeW5jICgpID0+IGF3YWl0IGltcG9ydCgnJywgJycpKQorKGFzeW5j
ICgpID0+IGF3YWl0IGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sICcnKSkKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1yZXR1cm4t
YXdhaXQtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxp
ZC9uZXN0ZWQtYXN5bmMtYXJyb3ctZnVuY3Rpb24tcmV0dXJuLWF3YWl0LW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNmI0
OGFmMGJlNDI1ZDUwN2FjZDczODBjMTk2ZmYzMTRmNTBlZmNjLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1h
cnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29t
bWEuanMKKysrIC9kZXYvbnVsbApAQCAtMSwzNyArMCwwIEBACi0vLyBUaGlzIGZpbGUgd2FzIHBy
b2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6Ci0vLyAtIHNy
Yy9keW5hbWljLWltcG9ydC9ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5jYXNlCi0v
LyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ct
Zm4tcmV0dXJuLWF3YWl0LnRlbXBsYXRlCi0vKi0tLQotZGVzY3JpcHRpb246IEltcG9ydENhbGwg
aXMgbm90IGV4dGVuc2libGUgLSB0cmFpbGluZyBjb21tYSAobmVzdGVkIGluIGFzeW5jIGFycm93
IGZ1bmN0aW9uLCByZXR1cm5lZCkKLWVzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFu
dGljcy1ldmFsdWF0aW9uCi1mZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0XQotZmxhZ3M6IFtnZW5l
cmF0ZWRdCi1uZWdhdGl2ZToKLSAgcGhhc2U6IHBhcnNlCi0gIHR5cGU6IFN5bnRheEVycm9yCi1p
bmZvOiB8Ci0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJl
c3Npb24gKQotCi0gICAgMS4gTGV0IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRB
Y3RpdmVTY3JpcHRPck1vZHVsZSgpLgotICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRP
ck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3Qg
bnVsbCkuCi0gICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNz
aWdubWVudEV4cHJlc3Npb24uCi0gICAgNC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFy
Z1JlZikuCi0gICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFi
aWxpdHkoJVByb21pc2UlKS4KLSAgICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5n
KHNwZWNpZmllcikuCi0gICAgNy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmlu
ZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxl
RHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBw
cm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJv
bWlzZV1dLgotCi0KLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50
RXhwcmVzc2lvblsrSW4sID9ZaWVsZF0gKQotCi0gICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKLQot
ICAgIC0gSW1wb3J0Q2FsbCBtdXN0IG5vdCBiZSBleHRlbmRlZC4KLS0tLSovCi0KLSRET05PVEVW
QUxVQVRFKCk7Ci0KLShhc3luYyAoKSA9PiBhd2FpdCBpbXBvcnQoJycsKSkKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJs
ZS1hcmdzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHlu
YW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLWF3YWl0LW5v
dC1leHRlbnNpYmxlLWFyZ3MuanMKaW5kZXggYTdjYTRjZDk3N2JlYjI1ZjU4MWNkMzczYzk3NWIz
NzQxNTllYTYwZS4uMmNkMjQ0NDJmMzIxNTA2ZDE1MjUwOGVjZjM0ZDU0NzU3MDQ1YjVmNCAxMDA2
NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLWF3YWl0LW5vdC1l
eHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0
aW9uLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKQEAgLTI1LDcgKzI1LDggQEAKIAogCiAg
ICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0lu
LCA/WWllbGRdICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9Z
aWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lv
blsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICxvcHQgKQogCiAgICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKIApAQCAtMzUsNSAr
MzYsNSBAQAogJERPTk9URVZBTFVBVEUoKTsKIAogYXN5bmMgZnVuY3Rpb24gZigpIHsKLSAgYXdh
aXQgaW1wb3J0KCcnLCAnJyk7CisgIGF3YWl0IGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywg
e30sICcnKTsKIH0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5j
dGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1uby10cmFp
bGluZy1jb21tYS5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzEwZDI0Y2U2YWUw
NDFkMjFhNmI2YjM0YjdkZTNlMzNhODQ2ODllYi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24t
YXdhaXQtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMKKysrIC9kZXYvbnVsbApA
QCAtMSwzOSArMCwwIEBACi0vLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQg
ZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6Ci0vLyAtIHNyYy9keW5hbWljLWltcG9ydC9ub3Qt
ZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5jYXNlCi0vLyAtIHNyYy9keW5hbWljLWltcG9y
dC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tYXdhaXQudGVtcGxhdGUKLS8q
LS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJsZSAtIHRyYWlsaW5n
IGNvbW1hIChuZXN0ZWQgYXJyb3cgc3ludGF4KQotZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRp
bWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnRdCi1mbGFn
czogW2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBwaGFzZTogcGFyc2UKLSAgdHlwZTogU3ludGF4
RXJyb3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25t
ZW50RXhwcmVzc2lvbiApCi0KLSAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBi
ZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCi0gICAgMi4gQXNzZXJ0OiByZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUu
IGlzIG5vdCBudWxsKS4KLSAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVh
dGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KLSAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0
VmFsdWUoYXJnUmVmKS4KLSAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9t
aXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgotICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUg
VG9TdHJpbmcoc3BlY2lmaWVyKS4KLSAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lm
aWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBv
cnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJT
dHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxp
dHkuW1tQcm9taXNlXV0uCi0KLQotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFz
c2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0KLSAgICBGb3JiaWRkZW4gRXh0ZW5z
aW9ucwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJlIGV4dGVuZGVkLgotLS0tKi8KLQot
JERPTk9URVZBTFVBVEUoKTsKLQotYXN5bmMgZnVuY3Rpb24gZigpIHsKLSAgYXdhaXQgaW1wb3J0
KCcnLCk7Ci19CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rp
b24tbm90LWV4dGVuc2libGUtYXJncy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1m
dW5jdGlvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCmluZGV4IDBkZjYwNzg3OTk4OGFlYmQ3Mjhm
M2FmNzZlMmJiYmVkNWFjY2RjNjIuLjhhNjQwYjFhYzY4NjhiNTQzZmIyNTNlNDk2MGY2MTY5MWY1
ZDViZjUgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1u
b3QtZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1m
dW5jdGlvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCkBAIC0yNSw3ICsyNSw4IEBACiAKIAogICAg
IEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwg
P1lpZWxkXSApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWll
bGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25b
K0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwg
P0F3YWl0XSAsb3B0ICkKIAogICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCiAKQEAgLTM1LDYgKzM2
LDYgQEAKICRET05PVEVWQUxVQVRFKCk7CiAKIGFzeW5jIGZ1bmN0aW9uIGYoKSB7Ci0gIGltcG9y
dCgnJywgJycpOworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCAnJyk7CiB9CiAK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1ub3QtZXh0
ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3lu
Yy1mdW5jdGlvbi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcwpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggNWQwMTBmYTgyMzI1Y2UzZjkwYTk3YjQ0NjBkNTRjNTM0N2Mx
MjNhNS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tbm90LWV4dGVuc2libGUtbm8tdHJhaWxp
bmctY29tbWEuanMKKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi0vLyBUaGlzIGZpbGUg
d2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6Ci0v
LyAtIHNyYy9keW5hbWljLWltcG9ydC9ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5j
YXNlCi0vLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMt
ZnVuY3Rpb24udGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3Qg
ZXh0ZW5zaWJsZSAtIHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgYXJyb3cgc3ludGF4KQotZXNpZDog
c2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBb
ZHluYW1pYy1pbXBvcnRdCi1mbGFnczogW2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBwaGFzZTog
cGFyc2UKLSAgdHlwZTogU3ludGF4RXJyb3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAg
ICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCi0KLSAgICAxLiBMZXQgcmVmZXJl
bmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCi0gICAg
Mi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBv
ciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KLSAgICAzLiBMZXQgYXJnUmVmIGJl
IHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KLSAgICA0LiBM
ZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KLSAgICA1LiBMZXQgcHJvbWlzZUNh
cGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgotICAgIDYuIExl
dCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KLSAgICA3LiBJZkFicnVw
dFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAg
OC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1Njcmlw
dE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA5LiBS
ZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCi0KLQotICAgIEltcG9ydENhbGwg
OgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0K
LSAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJl
IGV4dGVuZGVkLgotLS0tKi8KLQotJERPTk9URVZBTFVBVEUoKTsKLQotYXN5bmMgZnVuY3Rpb24g
ZigpIHsKLSAgaW1wb3J0KCcnLCk7Ci19Ci0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1hc3luYy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4
dGVuc2libGUtYXJncy5qcwppbmRleCBmNGVlNGE4NmJmMWZjMjc0YzZlZmJmZGRmMjQ4MjI3OTdm
MmFlZjMzLi5hYmI3OGQ1YTljMzcwNWQ0OWNjNjhjOWUwMDQ4Y2RmNTAxMThlMjBjIDEwMDY0NAot
LS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tcmV0dXJuLWF3YWl0LW5v
dC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1
bmN0aW9uLXJldHVybi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCkBAIC0yNSw3ICsyNSw4
IEBACiAKIAogICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uWytJbiwgP1lpZWxkXSApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Np
b25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVu
dEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsr
SW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKIAogICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCiAK
QEAgLTM1LDYgKzM2LDYgQEAKICRET05PVEVWQUxVQVRFKCk7CiAKIGFzeW5jIGZ1bmN0aW9uIGYo
KSB7Ci0gIHJldHVybiBhd2FpdCBpbXBvcnQoJycsICcnKTsKKyAgcmV0dXJuIGF3YWl0IGltcG9y
dCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sICcnKTsKIH0KIApkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2FpdC1ub3QtZXh0ZW5zaWJs
ZS1uby10cmFpbGluZy1jb21tYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1hc3luYy1mdW5j
dGlvbi1yZXR1cm4tYXdhaXQtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU3NmY2NTY2MjY5YjMyMDBlODdlMjUwZTNmODM2
ZDkwN2VhYzFiOTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2FpdC1ub3Qt
ZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysgL2Rldi9udWxsCkBAIC0xLDQwICsw
LDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBm
b2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQudGVtcGxhdGUKLS8qLS0t
Ci1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJsZSAtIHRyYWlsaW5nIGNv
bW1hIChuZXN0ZWQgYXJyb3cgc3ludGF4KQotZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUt
c2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnRdCi1mbGFnczog
W2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBwaGFzZTogcGFyc2UKLSAgdHlwZTogU3ludGF4RXJy
b3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50
RXhwcmVzc2lvbiApCi0KLSAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAh
IEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCi0gICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1Nj
cmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlz
IG5vdCBudWxsKS4KLSAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGlu
ZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KLSAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFs
dWUoYXJnUmVmKS4KLSAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNl
Q2FwYWJpbGl0eSglUHJvbWlzZSUpLgotICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9T
dHJpbmcoc3BlY2lmaWVyKS4KLSAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVy
U3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRN
b2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJp
bmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHku
W1tQcm9taXNlXV0uCi0KLQotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0KLSAgICBGb3JiaWRkZW4gRXh0ZW5zaW9u
cwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJlIGV4dGVuZGVkLgotLS0tKi8KLQotJERP
Tk9URVZBTFVBVEUoKTsKLQotYXN5bmMgZnVuY3Rpb24gZigpIHsKLSAgcmV0dXJuIGF3YWl0IGlt
cG9ydCgnJywpOwotfQotCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYXN5bmMt
Z2VuLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQt
YXN5bmMtZ2VuLWF3YWl0LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKaW5kZXggODhhNWQ5MjRjYTBk
MmI1NWU1YWQyMmI0NDI2YTA0Y2JkMzM3ZTUzNS4uODdlNGY0ODE5NmUzY2ZlMGNmMWUxYTk3NzQ1
ZjRiZjgzM2RkMGRmNCAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWdl
bi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3Rl
ZC1hc3luYy1nZW4tYXdhaXQtbm90LWV4dGVuc2libGUtYXJncy5qcwpAQCAtMjUsNyArMjUsOCBA
QAogCiAKICAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVz
c2lvblsrSW4sID9ZaWVsZF0gKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9u
WytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRF
eHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0lu
LCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCiAKICAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwogCkBA
IC0zNSw1ICszNiw1IEBACiAkRE9OT1RFVkFMVUFURSgpOwogCiBhc3luYyBmdW5jdGlvbiAqIGYo
KSB7Ci0gIGF3YWl0IGltcG9ydCgnJywgJycpCisgIGF3YWl0IGltcG9ydCgnLi9lbXB0eV9GSVhU
VVJFLmpzJywge30sICcnKQogfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFz
eW5jLWdlbi1hd2FpdC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC9pbnZhbGlkL25lc3RlZC1hc3luYy1nZW4tYXdhaXQtbm90LWV4dGVuc2libGUtbm8tdHJhaWxp
bmctY29tbWEuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGUzZTE2N2I3N2RkY2U0
MmU4MmEwYmI3ZWE0ZmY2MjJhZmRiM2MzMGEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWFzeW5jLWdlbi1hd2FpdC1u
b3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysgL2Rldi9udWxsCkBAIC0xLDM5
ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRo
ZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25vdC1leHRlbnNp
YmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC9pbnZhbGlkL25lc3RlZC1hc3luYy1nZW5lcmF0b3ItYXdhaXQudGVtcGxhdGUKLS8qLS0tCi1k
ZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJsZSAtIHRyYWlsaW5nIGNvbW1h
IChuZXN0ZWQgaW4gYXN5bmMgZ2VuZXJhdG9yLCBhd2FpdGVkKQotZXNpZDogc2VjLWltcG9ydC1j
YWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBbZHluYW1pYy1pbXBv
cnQsIGFzeW5jLWl0ZXJhdGlvbl0KLWZsYWdzOiBbZ2VuZXJhdGVkXQotbmVnYXRpdmU6Ci0gIHBo
YXNlOiBwYXJzZQotICB0eXBlOiBTeW50YXhFcnJvcgotaW5mbzogfAotICAgIEltcG9ydENhbGwg
OgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKLQotICAgIDEuIExldCBy
ZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4K
LSAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVj
b3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgotICAgIDMuIExldCBhcmdS
ZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgotICAg
IDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgotICAgIDUuIExldCBwcm9t
aXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCi0gICAg
Ni4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgotICAgIDcuIElm
QWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4K
LSAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5n
U2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAg
IDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KLQotCi0gICAgSW1wb3J0
Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRd
ICkKLQotICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCi0KLSAgICAtIEltcG9ydENhbGwgbXVzdCBu
b3QgYmUgZXh0ZW5kZWQuCi0tLS0qLwotCi0kRE9OT1RFVkFMVUFURSgpOwotCi1hc3luYyBmdW5j
dGlvbiAqIGYoKSB7Ci0gIGF3YWl0IGltcG9ydCgnJywpCi19CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
aW52YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxlZC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWJsb2NrLWxhYmVsZWQtbm90LWV4dGVuc2libGUtYXJncy5qcwpp
bmRleCA2OTUxNjhmMDliZGRjZTIyYzA1MzM0NzgxMWVhNzM2ZTc4Yzk3ZTYwLi5lMmU3ZWE2MmVi
M2QxODlhZmEyZjQyNDJjZmE2MTk0Zjk2YzczNjUzIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxp
ZC9uZXN0ZWQtYmxvY2stbGFiZWxlZC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC9pbnZhbGlkL25lc3RlZC1ibG9jay1sYWJlbGVkLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKQEAg
LTI1LDcgKzI1LDggQEAKIAogCiAgICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNz
aWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25t
ZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0
KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRF
eHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQogCiAgICAgRm9yYmlkZGVuIEV4
dGVuc2lvbnMKIApAQCAtMzUsNSArMzYsNSBAQAogJERPTk9URVZBTFVBVEUoKTsKIAogbGFiZWw6
IHsKLSAgaW1wb3J0KCcnLCAnJyk7CisgIGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30s
ICcnKTsKIH07CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxl
ZC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1ibG9jay1sYWJlbGVkLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YWQxZjIyMTg2NmJhOWNmMmE5N2M3NTQwMjUy
NTlmMjA3OTgyNmFhLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0t
LSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1ibG9jay1sYWJlbGVkLW5vdC1leHRlbnNpYmxlLW5v
LXRyYWlsaW5nLWNvbW1hLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMzkgKzAsMCBAQAotLy8gVGhp
cyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3Vy
Y2VzOgotLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmct
Y29tbWEuY2FzZQotLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWJsb2NrLWxhYmVsZWQudGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBp
cyBub3QgZXh0ZW5zaWJsZSAtIHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgYmxvY2sgc3ludGF4KQot
ZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1
cmVzOiBbZHluYW1pYy1pbXBvcnRdCi1mbGFnczogW2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBw
aGFzZTogcGFyc2UKLSAgdHlwZTogU3ludGF4RXJyb3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxs
IDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCi0KLSAgICAxLiBMZXQg
cmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCku
Ci0gICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJl
Y29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KLSAgICAzLiBMZXQgYXJn
UmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KLSAg
ICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KLSAgICA1LiBMZXQgcHJv
bWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgotICAg
IDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KLSAgICA3LiBJ
ZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSku
Ci0gICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAg
ICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCi0KLQotICAgIEltcG9y
dENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
XSApCi0KLSAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qg
bm90IGJlIGV4dGVuZGVkLgotLS0tKi8KLQotJERPTk9URVZBTFVBVEUoKTsKLQotbGFiZWw6IHsK
LSAgaW1wb3J0KCcnLCk7Ci19OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWJs
b2NrLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2st
bm90LWV4dGVuc2libGUtYXJncy5qcwppbmRleCA1NDNmMTY2OGY4NjVhM2EyMzNjMzE3MDBkNWNm
MmQzMmFlYzM2ZGJiLi40OGVjNTYzZWRkZjAwMjNiNTA0MDhjMzQwZjU2NjEwYmYzOGE1MDI1IDEw
MDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbm90LWV4dGVuc2libGUtYXJn
cy5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtYmxvY2stbm90LWV4dGVuc2libGUtYXJn
cy5qcwpAQCAtMjUsNyArMjUsOCBAQAogCiAKICAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1w
b3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZF0gKQorICAgICAgICBpbXBvcnQo
IEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAg
ICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNz
aWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCiAKICAgICBGb3Ji
aWRkZW4gRXh0ZW5zaW9ucwogCkBAIC0zNSw1ICszNiw1IEBACiAkRE9OT1RFVkFMVUFURSgpOwog
CiB7Ci0gIGltcG9ydCgnJywgJycpOworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9
LCAnJyk7CiB9OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWJsb2NrLW5vdC1l
eHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWJs
b2NrLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCBmYjBhN2RjYWZmNThlYjNlNWFmZjRiNWI5MjM5ZmMyNGEyMjk3ODU2Li4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZh
bGlkL25lc3RlZC1ibG9jay1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysg
L2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5
IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMt
aW1wb3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1ibG9jay50ZW1wbGF0ZQotLyotLS0K
LWRlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxlIC0gdHJhaWxpbmcgY29t
bWEgKG5lc3RlZCBibG9jayBzeW50YXgpCi1lc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1z
ZW1hbnRpY3MtZXZhbHVhdGlvbgotZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydF0KLWZsYWdzOiBb
Z2VuZXJhdGVkXQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBwYXJzZQotICB0eXBlOiBTeW50YXhFcnJv
cgotaW5mbzogfAotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRF
eHByZXNzaW9uICkKLQotICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEg
R2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KLSAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2Ny
aXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMg
bm90IG51bGwpLgotICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5n
IEFzc2lnbm1lbnRFeHByZXNzaW9uLgotICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1
ZShhcmdSZWYpLgotICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VD
YXBhYmlsaXR5KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0
cmluZyhzcGVjaWZpZXIpLgotICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJT
dHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1v
ZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmlu
ZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5b
W1Byb21pc2VdXS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdu
bWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKLQotICAgIEZvcmJpZGRlbiBFeHRlbnNpb25z
Ci0KLSAgICAtIEltcG9ydENhbGwgbXVzdCBub3QgYmUgZXh0ZW5kZWQuCi0tLS0qLwotCi0kRE9O
T1RFVkFMVUFURSgpOwotCi17Ci0gIGltcG9ydCgnJywpOwotfTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC9pbnZhbGlkL25lc3RlZC1kby13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L2ludmFsaWQvbmVzdGVkLWRvLXdoaWxlLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKaW5kZXggYTFj
NjE0ODI2YTUzNTRiYjRiM2JkNDQzMmNmNTQ5Y2FkMWIyODNiMi4uZGY4OTUyNTQ1MTgyZDM3YTI3
NjNlZTUzNjQzNTljNTQ1Zjg3ODZkNSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVk
LWRvLXdoaWxlLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVz
dGVkLWRvLXdoaWxlLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKQEAgLTI1LDcgKzI1LDggQEAKIAog
CiAgICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25b
K0luLCA/WWllbGRdICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4s
ID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVz
c2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lp
ZWxkLCA/QXdhaXRdICxvcHQgKQogCiAgICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKIApAQCAtMzUs
NSArMzYsNSBAQAogJERPTk9URVZBTFVBVEUoKTsKIAogZG8gewotICBpbXBvcnQoJycsICcnKTsK
KyAgaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwgJycpOwogfSB3aGlsZSAoZmFsc2Up
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWRvLXdoaWxlLW5vdC1leHRlbnNp
YmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWRvLXdoaWxl
LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwYTllYTExNTgxMDlkNTBhNTk4YzFlMTAwNGQwMjc0YmEyMTgwODE2Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlk
L25lc3RlZC1kby13aGlsZS1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysg
L2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5
IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMt
aW1wb3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1kby13aGlsZS50ZW1wbGF0ZQotLyot
LS0KLWRlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxlIC0gdHJhaWxpbmcg
Y29tbWEgKG5lc3RlZCBkbyB3aGlsZSBzeW50YXgpCi1lc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVu
dGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgotZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydF0KLWZs
YWdzOiBbZ2VuZXJhdGVkXQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBwYXJzZQotICB0eXBlOiBTeW50
YXhFcnJvcgotaW5mbzogfAotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2ln
bm1lbnRFeHByZXNzaW9uICkKLQotICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxl
IGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KLSAgICAyLiBBc3NlcnQ6IHJlZmVyZW5j
aW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGku
ZS4gaXMgbm90IG51bGwpLgotICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFs
dWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgotICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBH
ZXRWYWx1ZShhcmdSZWYpLgotICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1By
b21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBi
ZSBUb1N0cmluZyhzcGVjaWZpZXIpLgotICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVj
aWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA4LiBQZXJmb3JtICEgSG9zdElt
cG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmll
clN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJp
bGl0eS5bW1Byb21pc2VdXS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCgg
QXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKLQotICAgIEZvcmJpZGRlbiBFeHRl
bnNpb25zCi0KLSAgICAtIEltcG9ydENhbGwgbXVzdCBub3QgYmUgZXh0ZW5kZWQuCi0tLS0qLwot
Ci0kRE9OT1RFVkFMVUFURSgpOwotCi1kbyB7Ci0gIGltcG9ydCgnJywpOwotfSB3aGlsZSAoZmFs
c2UpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWVsc2UtYnJhY2VsZXNzLW5v
dC1leHRlbnNpYmxlLWFyZ3MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1icmFjZWxl
c3Mtbm90LWV4dGVuc2libGUtYXJncy5qcwppbmRleCAwZmU5MWVkZGMzMDJlNDE5YmI5ZmZhZmI4
YWJiMzMxOWQzYjUwYzgwLi5jMjg4NWE4MjIxM2E1YTFmNDdkNDU1MjM4ZTkwYWQxZWE3NWYwNWI3
IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1icmFjZWxlc3Mtbm90LWV4
dGVuc2libGUtYXJncy5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1icmFjZWxl
c3Mtbm90LWV4dGVuc2libGUtYXJncy5qcwpAQCAtMjUsNyArMjUsOCBAQAogCiAKICAgICBJbXBv
cnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZF0gKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/
QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwg
P1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2Fp
dF0gLG9wdCApCiAKICAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwogCkBAIC0zNiw0ICszNyw0IEBA
CiAKIGlmIChmYWxzZSkgewogCi19IGVsc2UgaW1wb3J0KCcnLCAnJyk7Cit9IGVsc2UgaW1wb3J0
KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwgJycpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFs
aWQvbmVzdGVkLWVsc2UtYnJhY2VsZXNzLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1h
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWVsc2UtYnJhY2VsZXNzLW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMDk1
YzMzM2YxMzg4ZGI3ZjQxMmU4ZDM2NTM1MDg4YzQ5MjFhNDUxLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1lbHNlLWJy
YWNlbGVzcy1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysgL2Rldi9udWxs
CkBAIC0xLDM5ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRl
ZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25v
dC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1lbHNlLWJyYWNlbGVzcy50ZW1wbGF0ZQotLyotLS0K
LWRlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxlIC0gdHJhaWxpbmcgY29t
bWEgKG5lc3RlZCBlbHNlIHN5bnRheCkKLWVzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNl
bWFudGljcy1ldmFsdWF0aW9uCi1mZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0XQotZmxhZ3M6IFtn
ZW5lcmF0ZWRdCi1uZWdhdGl2ZToKLSAgcGhhc2U6IHBhcnNlCi0gIHR5cGU6IFN5bnRheEVycm9y
Ci1pbmZvOiB8Ci0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4
cHJlc3Npb24gKQotCi0gICAgMS4gTGV0IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBH
ZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgotICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3Jp
cHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBu
b3QgbnVsbCkuCi0gICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcg
QXNzaWdubWVudEV4cHJlc3Npb24uCi0gICAgNC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVl
KGFyZ1JlZikuCi0gICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNh
cGFiaWxpdHkoJVByb21pc2UlKS4KLSAgICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3Ry
aW5nKHNwZWNpZmllcikuCi0gICAgNy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0
cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9k
dWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5n
LCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5Lltb
UHJvbWlzZV1dLgotCi0KLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25t
ZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZF0gKQotCi0gICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMK
LQotICAgIC0gSW1wb3J0Q2FsbCBtdXN0IG5vdCBiZSBleHRlbmRlZC4KLS0tLSovCi0KLSRET05P
VEVWQUxVQVRFKCk7Ci0KLWlmIChmYWxzZSkgewotCi19IGVsc2UgaW1wb3J0KCcnLCk7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWVsc2Utbm90LWV4dGVuc2libGUtYXJncy5qcwppbmRl
eCBiNTY2NzI1MGYwMGUzNGIzOTYzODU1ODk1MjE4ODNiNzZlNzQyYmRjLi5mZmFkZjI5Mjg4ZDg4
ZDhjYjdmNzIzZTg2ZTgwNzVjZjAyNzVkYjZmIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9u
ZXN0ZWQtZWxzZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1lbHNlLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKQEAgLTI1LDcgKzI1LDggQEAKIAogCiAg
ICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0lu
LCA/WWllbGRdICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9Z
aWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lv
blsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICxvcHQgKQogCiAgICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKIApAQCAtMzcsNSAr
MzgsNSBAQAogaWYgKGZhbHNlKSB7CiAKIH0gZWxzZSB7Ci0gIGltcG9ydCgnJywgJycpOworICBp
bXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCAnJyk7CiB9CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvaW52YWxpZC9uZXN0ZWQtZWxzZS1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1lbHNlLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5n
LWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNzM2NDU2NzQ4OWI2M2Q5
NzlhOGJjZTkxZDA5YzljMGIyNTU4MmNkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1lbHNlLW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNDEgKzAsMCBAQAotLy8g
VGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBz
b3VyY2VzOgotLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvbm90LWV4dGVuc2libGUtbm8tdHJhaWxp
bmctY29tbWEuY2FzZQotLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVz
dGVkLWVsc2UudGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3Qg
ZXh0ZW5zaWJsZSAtIHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgZWxzZSBzeW50YXgpCi1lc2lkOiBz
ZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgotZmVhdHVyZXM6IFtk
eW5hbWljLWltcG9ydF0KLWZsYWdzOiBbZ2VuZXJhdGVkXQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBw
YXJzZQotICB0eXBlOiBTeW50YXhFcnJvcgotaW5mbzogfAotICAgIEltcG9ydENhbGwgOgotICAg
ICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKLQotICAgIDEuIExldCByZWZlcmVu
Y2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KLSAgICAy
LiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9y
IE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgotICAgIDMuIExldCBhcmdSZWYgYmUg
dGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgotICAgIDQuIExl
dCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgotICAgIDUuIExldCBwcm9taXNlQ2Fw
YWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0
IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgotICAgIDcuIElmQWJydXB0
UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA4
LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0
T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDkuIFJl
dHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6
Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKLQot
ICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCi0KLSAgICAtIEltcG9ydENhbGwgbXVzdCBub3QgYmUg
ZXh0ZW5kZWQuCi0tLS0qLwotCi0kRE9OT1RFVkFMVUFURSgpOwotCi1pZiAoZmFsc2UpIHsKLQot
fSBlbHNlIHsKLSAgaW1wb3J0KCcnLCk7Ci19CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9u
ZXN0ZWQtZnVuY3Rpb24tbm90LWV4dGVuc2libGUtYXJncy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25l
c3RlZC1mdW5jdGlvbi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCmluZGV4IDU1ZTdiMTc5NTQ4Mzlk
MDg1ZDhlOWM2ZGMzNzc5OTczMmQxOTE4NGIuLmFmMzkxOTUyMzI0NmY0YTRkMjAyM2U2MTEyZTU0
Yzc1MDBmZjg3ZDEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlvbi1u
b3QtZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlv
bi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCkBAIC0yNSw3ICsyNSw4IEBACiAKIAogICAgIEltcG9y
dENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
XSApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsb3B0ICkKIAogICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCiAKQEAgLTM1LDUgKzM2LDUgQEAK
ICRET05PVEVWQUxVQVRFKCk7CiAKIGZ1bmN0aW9uIGZuKCkgewotICBpbXBvcnQoJycsICcnKTsK
KyAgaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwgJycpOwogfQpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L2ludmFsaWQvbmVzdGVkLWZ1bmN0aW9uLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5n
LWNvbW1hLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHlu
YW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWZ1bmN0aW9uLW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZjkx
N2RlMmNlYzg2N2E4MjZiNWVjNTBmYTgyZjAyZjA1YjNlOTU1Li4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlv
bi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysgL2Rldi9udWxsCkBAIC0x
LDM5ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9t
IHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25vdC1leHRl
bnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5
bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlvbi50ZW1wbGF0ZQotLyotLS0KLWRlc2NyaXB0aW9u
OiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxlIC0gdHJhaWxpbmcgY29tbWEgKG5lc3RlZCBm
dW5jdGlvbiBzeW50YXgpCi1lc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3Mt
ZXZhbHVhdGlvbgotZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydF0KLWZsYWdzOiBbZ2VuZXJhdGVk
XQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBwYXJzZQotICB0eXBlOiBTeW50YXhFcnJvcgotaW5mbzog
fAotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9u
ICkKLQotICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZl
U2NyaXB0T3JNb2R1bGUoKS4KLSAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1
bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwp
LgotICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1l
bnRFeHByZXNzaW9uLgotICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYp
LgotICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5
KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVj
aWZpZXIpLgotICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHBy
b21pc2VDYXBhYmlsaXR5KS4KLSAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFt
aWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlz
ZUNhcGFiaWxpdHkpLgotICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2Vd
XS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJl
c3Npb25bK0luLCA/WWllbGRdICkKLQotICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCi0KLSAgICAt
IEltcG9ydENhbGwgbXVzdCBub3QgYmUgZXh0ZW5kZWQuCi0tLS0qLwotCi0kRE9OT1RFVkFMVUFU
RSgpOwotCi1mdW5jdGlvbiBmbigpIHsKLSAgaW1wb3J0KCcnLCk7Ci19CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9z
eW50YXgvaW52YWxpZC9uZXN0ZWQtZnVuY3Rpb24tcmV0dXJuLW5vdC1leHRlbnNpYmxlLWFyZ3Mu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtZnVuY3Rpb24tcmV0dXJuLW5vdC1leHRlbnNpYmxl
LWFyZ3MuanMKaW5kZXggMzZlOWQ4NzRiMzgyMjU2Y2Y5OTM2ZTEzM2MwOGExYjAyMDZkYjAyZi4u
OTNmY2Q2NWU4ZTU4MTFmMTkzZmFhM2ZlMDVlZmE4OWJkNWU4NGQ1MiAxMDA2NDQKLS0tIGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWZ1bmN0aW9uLXJldHVybi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpz
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4tbm90LWV4dGVuc2li
bGUtYXJncy5qcwpAQCAtMjUsNyArMjUsOCBAQAogCiAKICAgICBJbXBvcnRDYWxsIDoKLSAgICAg
ICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZF0gKQorICAgICAgICBp
bXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQor
ICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRd
ICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCiAKICAg
ICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwogCkBAIC0zNSw1ICszNiw1IEBACiAkRE9OT1RFVkFMVUFU
RSgpOwogCiBmdW5jdGlvbiBmbigpIHsKLSAgcmV0dXJuIGltcG9ydCgnJywgJycpOworICByZXR1
cm4gaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwgJycpOwogfQpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L2ludmFsaWQvbmVzdGVkLWZ1bmN0aW9uLXJldHVybi1ub3QtZXh0ZW5zaWJsZS1uby10
cmFpbGluZy1jb21tYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4t
bm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDQ4YTkzOTcwODFjZmY3NmUwZTJjZDNkNjE2MDIwMTFiZjQzOGY1YjAuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQv
bmVzdGVkLWZ1bmN0aW9uLXJldHVybi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5q
cworKysgL2Rldi9udWxsCkBAIC0xLDM5ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2Vk
dXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5
bmFtaWMtaW1wb3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0g
c3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4u
dGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJs
ZSAtIHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgZnVuY3Rpb24gc3ludGF4KQotZXNpZDogc2VjLWlt
cG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBbZHluYW1p
Yy1pbXBvcnRdCi1mbGFnczogW2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBwaGFzZTogcGFyc2UK
LSAgdHlwZTogU3ludGF4RXJyb3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAg
aW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCi0KLSAgICAxLiBMZXQgcmVmZXJlbmNpbmdT
Y3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCi0gICAgMi4gQXNz
ZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1
bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KLSAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSBy
ZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KLSAgICA0LiBMZXQgc3Bl
Y2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KLSAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxp
dHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgotICAgIDYuIExldCBzcGVj
aWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KLSAgICA3LiBJZkFicnVwdFJlamVj
dFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOC4gUGVy
Zm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9k
dWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA5LiBSZXR1cm4g
cHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCi0KLQotICAgIEltcG9ydENhbGwgOgotICAg
ICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0KLSAgICBG
b3JiaWRkZW4gRXh0ZW5zaW9ucwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJlIGV4dGVu
ZGVkLgotLS0tKi8KLQotJERPTk9URVZBTFVBVEUoKTsKLQotZnVuY3Rpb24gZm4oKSB7Ci0gIHJl
dHVybiBpbXBvcnQoJycsKTsKLX0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1p
Zi1icmFjZWxlc3Mtbm90LWV4dGVuc2libGUtYXJncy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3Rl
ZC1pZi1icmFjZWxlc3Mtbm90LWV4dGVuc2libGUtYXJncy5qcwppbmRleCBmM2E0ZWU3Zjg3ZTc3
NGViOTM3MGVmYmEyMjM0Y2IyYjA5OWVjMzMxLi5jY2FhYzNkNWJmZmZiZjczZTFmZDcwNDkyYWY5
OTk1N2Q5YzFlMzcxIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9l
eHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYtYnJhY2Vs
ZXNzLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWlm
LWJyYWNlbGVzcy1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCkBAIC0yNSw3ICsyNSw4IEBACiAKIAog
ICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkXSApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Np
b25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZCwgP0F3YWl0XSAsb3B0ICkKIAogICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCiAKQEAgLTM0LDQg
KzM1LDQgQEAKIAogJERPTk9URVZBTFVBVEUoKTsKIAotaWYgKHRydWUpIGltcG9ydCgnJywgJycp
OworaWYgKHRydWUpIGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sICcnKTsKZGlmZiAt
LWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1pZi1icmFjZWxlc3Mtbm90LWV4dGVuc2libGUt
bm8tdHJhaWxpbmctY29tbWEuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYtYnJhY2VsZXNz
LW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCA4MDI5YjIzNzFlNWQwMjg4YzNjMjZlOWJlNzFlODdiMGM3NDA4ODhhLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlk
L25lc3RlZC1pZi1icmFjZWxlc3Mtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMK
KysrIC9kZXYvbnVsbApAQCAtMSwzNyArMCwwIEBACi0vLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVy
YWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6Ci0vLyAtIHNyYy9keW5h
bWljLWltcG9ydC9ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5jYXNlCi0vLyAtIHNy
Yy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYtYnJhY2VsZXNzLnRlbXBs
YXRlCi0vKi0tLQotZGVzY3JpcHRpb246IEltcG9ydENhbGwgaXMgbm90IGV4dGVuc2libGUgLSB0
cmFpbGluZyBjb21tYSAobmVzdGVkIGlmIHN5bnRheCkKLWVzaWQ6IHNlYy1pbXBvcnQtY2FsbC1y
dW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCi1mZWF0dXJlczogW2R5bmFtaWMtaW1wb3J0XQot
ZmxhZ3M6IFtnZW5lcmF0ZWRdCi1uZWdhdGl2ZToKLSAgcGhhc2U6IHBhcnNlCi0gIHR5cGU6IFN5
bnRheEVycm9yCi1pbmZvOiB8Ci0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNz
aWdubWVudEV4cHJlc3Npb24gKQotCi0gICAgMS4gTGV0IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1
bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgotICAgIDIuIEFzc2VydDogcmVmZXJl
bmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAo
aS5lLiBpcyBub3QgbnVsbCkuCi0gICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2
YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCi0gICAgNC4gTGV0IHNwZWNpZmllciBiZSA/
IEdldFZhbHVlKGFyZ1JlZikuCi0gICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEgTmV3
UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KLSAgICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5n
IGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCi0gICAgNy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHNw
ZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDguIFBlcmZvcm0gISBIb3N0
SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSwgc3BlY2lm
aWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOS4gUmV0dXJuIHByb21pc2VDYXBh
YmlsaXR5LltbUHJvbWlzZV1dLgotCi0KLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0
KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZF0gKQotCi0gICAgRm9yYmlkZGVuIEV4
dGVuc2lvbnMKLQotICAgIC0gSW1wb3J0Q2FsbCBtdXN0IG5vdCBiZSBleHRlbmRlZC4KLS0tLSov
Ci0KLSRET05PVEVWQUxVQVRFKCk7Ci0KLWlmICh0cnVlKSBpbXBvcnQoJycsKTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC1pZi1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvbmVzdGVkLWlmLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKaW5kZXggOTg3YWFk
NmRiMzcwYmUxMGY5MDAzNjdlYTY4YjhlYTliZTE5YWE3Zi4uODQ1YzQxZDJkMTllMGI2YjM2MDcw
M2YwZjIzMjU0ODU5YjViZDVmOCAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWlm
LW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLWlmLW5v
dC1leHRlbnNpYmxlLWFyZ3MuanMKQEAgLTI1LDcgKzI1LDggQEAKIAogCiAgICAgSW1wb3J0Q2Fs
bCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkK
KyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxv
cHQgKQogCiAgICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKIApAQCAtMzUsNSArMzYsNSBAQAogJERP
Tk9URVZBTFVBVEUoKTsKIAogaWYgKHRydWUpIHsKLSAgaW1wb3J0KCcnLCAnJyk7CisgIGltcG9y
dCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sICcnKTsKIH0KZGlmZiAtLWdpdCBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC1pZi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5
bnRheC9pbnZhbGlkL25lc3RlZC1pZi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5q
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODg1MjRiODk1NjUxZDA3NjRlMzMzZDVm
MjVkOTlkODczNTkzYTcxOC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYtbm90LWV4dGVuc2libGUtbm8tdHJhaWxp
bmctY29tbWEuanMKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBACi0vLyBUaGlzIGZpbGUg
d2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6Ci0v
LyAtIHNyYy9keW5hbWljLWltcG9ydC9ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5j
YXNlCi0vLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtaWYudGVt
cGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJsZSAt
IHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgaWYgc3ludGF4KQotZXNpZDogc2VjLWltcG9ydC1jYWxs
LXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBbZHluYW1pYy1pbXBvcnRd
Ci1mbGFnczogW2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBwaGFzZTogcGFyc2UKLSAgdHlwZTog
U3ludGF4RXJyb3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBB
c3NpZ25tZW50RXhwcmVzc2lvbiApCi0KLSAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1v
ZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCi0gICAgMi4gQXNzZXJ0OiByZWZl
cmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3Jk
IChpLmUuIGlzIG5vdCBudWxsKS4KLSAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2Yg
ZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KLSAgICA0LiBMZXQgc3BlY2lmaWVyIGJl
ID8gR2V0VmFsdWUoYXJnUmVmKS4KLSAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBO
ZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgotICAgIDYuIExldCBzcGVjaWZpZXJTdHJp
bmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KLSAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uo
c3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOC4gUGVyZm9ybSAhIEhv
c3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVj
aWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA5LiBSZXR1cm4gcHJvbWlzZUNh
cGFiaWxpdHkuW1tQcm9taXNlXV0uCi0KLQotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBv
cnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0KLSAgICBGb3JiaWRkZW4g
RXh0ZW5zaW9ucwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJlIGV4dGVuZGVkLgotLS0t
Ki8KLQotJERPTk9URVZBTFVBVEUoKTsKLQotaWYgKHRydWUpIHsKLSAgaW1wb3J0KCcnLCk7Ci19
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtd2hpbGUtbm90LWV4dGVuc2libGUt
YXJncy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdz
LmpzCmluZGV4IGFjZWIzMzRkNTZkNmI1NzVhYTdjNjM3YTQ1MmRlYzNlMGMwYmIxODIuLmNjNTM1
ZmM0ZWU0MmQ1YjEzNDBlYjk4MTVlMWUzMTc0OTc2MWUyMTYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9p
bnZhbGlkL25lc3RlZC13aGlsZS1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzCkBAIC0yNSw3ICsyNSw4
IEBACiAKIAogICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uWytJbiwgP1lpZWxkXSApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Np
b25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVu
dEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsr
SW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKIAogICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCiAK
QEAgLTM3LDUgKzM4LDUgQEAKIGxldCB4ID0gMDsKIHdoaWxlICgheCkgewogICB4Kys7Ci0gIGlt
cG9ydCgnJywgJycpOworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCAnJyk7CiB9
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdoaWxlLW5vdC1leHRlbnNpYmxl
LW5vLXRyYWlsaW5nLWNvbW1hLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdoaWxlLW5vdC1l
eHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA3ZTBjMWE5MzY4ZjJkZGJiM2NlNTAxZGI2M2M4OWUyZDE5OTdmZDk1Li4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3Rl
ZC13aGlsZS1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5qcworKysgL2Rldi9udWxs
CkBAIC0xLDQxICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRl
ZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L25v
dC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0gc3JjL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aGlsZS50ZW1wbGF0ZQotLyotLS0KLWRlc2NyaXB0
aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxlIC0gdHJhaWxpbmcgY29tbWEgKG5lc3Rl
ZCB3aGlsZSBzeW50YXgpCi1lc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3Mt
ZXZhbHVhdGlvbgotZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydF0KLWZsYWdzOiBbZ2VuZXJhdGVk
XQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBwYXJzZQotICB0eXBlOiBTeW50YXhFcnJvcgotaW5mbzog
fAotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9u
ICkKLQotICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZl
U2NyaXB0T3JNb2R1bGUoKS4KLSAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1
bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwp
LgotICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1l
bnRFeHByZXNzaW9uLgotICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYp
LgotICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5
KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVj
aWZpZXIpLgotICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHBy
b21pc2VDYXBhYmlsaXR5KS4KLSAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFt
aWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlz
ZUNhcGFiaWxpdHkpLgotICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2Vd
XS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJl
c3Npb25bK0luLCA/WWllbGRdICkKLQotICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCi0KLSAgICAt
IEltcG9ydENhbGwgbXVzdCBub3QgYmUgZXh0ZW5kZWQuCi0tLS0qLwotCi0kRE9OT1RFVkFMVUFU
RSgpOwotCi1sZXQgeCA9IDA7Ci13aGlsZSAoIXgpIHsKLSAgeCsrOwotICBpbXBvcnQoJycsKTsK
LX07CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNzaW9uLW5v
dC1leHRlbnNpYmxlLWFyZ3MuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNz
aW9uLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKaW5kZXggMjk0NjIyMTA3Mzg5ODM5Njc0MzdmYTg2
YzA2ZDNlZTRiNzlhNWIzOS4uMWExZjg5MzRkZTJlNWU0YjY2OGE3OTgyNjhiZWEwNTUyODExYTYy
NCAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi1ub3Qt
ZXh0ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLWV4cHJl
c3Npb24tbm90LWV4dGVuc2libGUtYXJncy5qcwpAQCAtMjUsNyArMjUsOCBAQAogCiAKICAgICBJ
bXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9Z
aWVsZF0gKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCiAKICAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwogCkBAIC0zNCw0ICszNSw0
IEBACiAKICRET05PVEVWQUxVQVRFKCk7CiAKLXdpdGggKGltcG9ydCgnJywgJycpKSB7fQord2l0
aCAoaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwgJycpKSB7fQpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L2ludmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1uby10
cmFpbGluZy1jb21tYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLWV4cHJlc3Npb24t
bm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IGI4YzkxZGNkNTkxYzExMjhmZjA3NmUwYmQ1ZTVkMDA3MWZjM2ZjZTAuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQv
bmVzdGVkLXdpdGgtZXhwcmVzc2lvbi1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5q
cworKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLS8vIFRoaXMgZmlsZSB3YXMgcHJvY2Vk
dXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKLS8vIC0gc3JjL2R5
bmFtaWMtaW1wb3J0L25vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmNhc2UKLS8vIC0g
c3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLWV4cHJlc3Npb24u
dGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5zaWJs
ZSAtIHRyYWlsaW5nIGNvbW1hIChuZXN0ZWQgd2l0aCBzeW50YXggaW4gdGhlIGV4cHJlc3Npb24g
cG9zaXRpb24pCi1lc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVh
dGlvbgotZmVhdHVyZXM6IFtkeW5hbWljLWltcG9ydF0KLWZsYWdzOiBbZ2VuZXJhdGVkLCBub1N0
cmljdF0KLW5lZ2F0aXZlOgotICBwaGFzZTogcGFyc2UKLSAgdHlwZTogU3ludGF4RXJyb3IKLWlu
Zm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVz
c2lvbiApCi0KLSAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFj
dGl2ZVNjcmlwdE9yTW9kdWxlKCkuCi0gICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9y
TW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBu
dWxsKS4KLSAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3Np
Z25tZW50RXhwcmVzc2lvbi4KLSAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJn
UmVmKS4KLSAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJp
bGl0eSglUHJvbWlzZSUpLgotICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmco
c3BlY2lmaWVyKS4KLSAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5n
LCBwcm9taXNlQ2FwYWJpbGl0eSkuCi0gICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVE
eW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHBy
b21pc2VDYXBhYmlsaXR5KS4KLSAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9t
aXNlXV0uCi0KLQotICAgIEltcG9ydENhbGwgOgotICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRF
eHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0KLSAgICBGb3JiaWRkZW4gRXh0ZW5zaW9ucwotCi0g
ICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJlIGV4dGVuZGVkLgotLS0tKi8KLQotJERPTk9URVZB
TFVBVEUoKTsKLQotd2l0aCAoaW1wb3J0KCcnLCkpIHt9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52
YWxpZC9uZXN0ZWQtd2l0aC1ub3QtZXh0ZW5zaWJsZS1hcmdzLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQv
bmVzdGVkLXdpdGgtbm90LWV4dGVuc2libGUtYXJncy5qcwppbmRleCBiMmViNzRjMGJjOWE5NTk2
ZDU3MzU5ODFiZDZmNDhiZTExMWM1NTRhLi41ZjNmZWM2NTVjZTA3NjNmZmFjMDc3MDJiYjIyNWUw
ZjAyODdhYWE0IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtd2l0aC1ub3QtZXh0
ZW5zaWJsZS1hcmdzLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL25lc3RlZC13aXRoLW5vdC1leHRl
bnNpYmxlLWFyZ3MuanMKQEAgLTI1LDcgKzI1LDggQEAKIAogCiAgICAgSW1wb3J0Q2FsbCA6Ci0g
ICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKKyAgICAg
ICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0
ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3
YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQog
CiAgICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMKIApAQCAtMzUsNSArMzYsNSBAQAogJERPTk9URVZB
TFVBVEUoKTsKIAogd2l0aCAoe30pIHsKLSAgaW1wb3J0KCcnLCAnJyk7CisgIGltcG9ydCgnLi9l
bXB0eV9GSVhUVVJFLmpzJywge30sICcnKTsKIH0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlk
L25lc3RlZC13aXRoLW5vdC1leHRlbnNpYmxlLW5vLXRyYWlsaW5nLWNvbW1hLmpzIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L2ludmFsaWQvbmVzdGVkLXdpdGgtbm90LWV4dGVuc2libGUtbm8tdHJhaWxpbmctY29tbWEuanMK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxMWVkMWUyODA4NjM2MGZmOGQzYTY4MjA5
NTk5YWQ3N2JiMmQ2ZjYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L2ludmFsaWQvbmVzdGVkLXdpdGgtbm90LWV4dGVuc2libGUtbm8tdHJhaWxp
bmctY29tbWEuanMKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBACi0vLyBUaGlzIGZpbGUg
d2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6Ci0v
LyAtIHNyYy9keW5hbWljLWltcG9ydC9ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5j
YXNlCi0vLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC9uZXN0ZWQtd2l0aC50
ZW1wbGF0ZQotLyotLS0KLWRlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIGlzIG5vdCBleHRlbnNpYmxl
IC0gdHJhaWxpbmcgY29tbWEgKG5lc3RlZCB3aXRoIHN5bnRheCkKLWVzaWQ6IHNlYy1pbXBvcnQt
Y2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCi1mZWF0dXJlczogW2R5bmFtaWMtaW1w
b3J0XQotZmxhZ3M6IFtnZW5lcmF0ZWQsIG5vU3RyaWN0XQotbmVnYXRpdmU6Ci0gIHBoYXNlOiBw
YXJzZQotICB0eXBlOiBTeW50YXhFcnJvcgotaW5mbzogfAotICAgIEltcG9ydENhbGwgOgotICAg
ICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKLQotICAgIDEuIExldCByZWZlcmVu
Y2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KLSAgICAy
LiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9y
IE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgotICAgIDMuIExldCBhcmdSZWYgYmUg
dGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgotICAgIDQuIExl
dCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgotICAgIDUuIExldCBwcm9taXNlQ2Fw
YWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCi0gICAgNi4gTGV0
IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgotICAgIDcuIElmQWJydXB0
UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KLSAgICA4
LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0
T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgotICAgIDkuIFJl
dHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KLQotCi0gICAgSW1wb3J0Q2FsbCA6
Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGRdICkKLQot
ICAgIEZvcmJpZGRlbiBFeHRlbnNpb25zCi0KLSAgICAtIEltcG9ydENhbGwgbXVzdCBub3QgYmUg
ZXh0ZW5kZWQuCi0tLS0qLwotCi0kRE9OT1RFVkFMVUFURSgpOwotCi13aXRoICh7fSkgewotICBp
bXBvcnQoJycsKTsKLX0KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC9pbnZhbGlkL3RvcC1sZXZlbC1ub3Qt
ZXh0ZW5zaWJsZS1hcmdzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L2ludmFsaWQvdG9wLWxldmVsLW5vdC1leHRlbnNp
YmxlLWFyZ3MuanMKaW5kZXggYmUxMWY5YjhiNjQ0ZTBlYTZmZTk4MTA0YjA1YjVhMzJmM2U3YTc0
Ni4uZTVhODJmZGU1NjU2OTBlNTI1NTM5NjE4YzEzNjBlOWZjOGVmY2JjNCAxMDA2NDQKLS0tIGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L2ludmFsaWQvdG9wLWxldmVsLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L2ludmFsaWQvdG9wLWxldmVsLW5vdC1leHRlbnNpYmxlLWFyZ3MuanMKQEAgLTE1LDcgKzE1
LDggQEAKIAogCiAgICAgSW1wb3J0Q2FsbCA6Ci0gICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4
cHJlc3Npb25bK0luLCA/WWllbGRdICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVz
c2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25t
ZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9u
WytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQogCiAgICAgRm9yYmlkZGVuIEV4dGVuc2lvbnMK
IApAQCAtMjQsNCArMjUsNCBAQAogCiAkRE9OT1RFVkFMVUFURSgpOwogCi1pbXBvcnQoJycsICcn
KTsKK2ltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sICcnKTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5
bnRheC9pbnZhbGlkL3RvcC1sZXZlbC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1jb21tYS5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC9pbnZhbGlkL3RvcC1sZXZlbC1ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1j
b21tYS5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzI0NjRlNjM3N2RhMGI5M2I4
Y2FjYjk5YThkMGMyYzUyM2MwYTAzOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC90b3AtbGV2ZWwtbm90LWV4dGVuc2libGUtbm8t
dHJhaWxpbmctY29tbWEuanMKKysrIC9kZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi0vLyBUaGlz
IGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJj
ZXM6Ci0vLyAtIHNyYy9keW5hbWljLWltcG9ydC9ub3QtZXh0ZW5zaWJsZS1uby10cmFpbGluZy1j
b21tYS5jYXNlCi0vLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvaW52YWxpZC90b3AtbGV2
ZWwudGVtcGxhdGUKLS8qLS0tCi1kZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCBpcyBub3QgZXh0ZW5z
aWJsZSAtIHRyYWlsaW5nIGNvbW1hICh0b3AgbGV2ZWwgc3ludGF4KQotZXNpZDogc2VjLWltcG9y
dC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KLWZlYXR1cmVzOiBbZHluYW1pYy1p
bXBvcnRdCi1mbGFnczogW2dlbmVyYXRlZF0KLW5lZ2F0aXZlOgotICBwaGFzZTogcGFyc2UKLSAg
dHlwZTogU3ludGF4RXJyb3IKLWluZm86IHwKLSAgICBJbXBvcnRDYWxsIDoKLSAgICAgICAgaW1w
b3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCi0KLQotICAgIEltcG9ydENhbGwgOgotICAgICAg
ICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkXSApCi0KLSAgICBGb3Ji
aWRkZW4gRXh0ZW5zaW9ucwotCi0gICAgLSBJbXBvcnRDYWxsIG11c3Qgbm90IGJlIGV4dGVuZGVk
LgotLS0tKi8KLQotJERPTk9URVZBTFVBVEUoKTsKLQotaW1wb3J0KCcnLCk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi10cmFpbGlu
Zy1jb21tYS1maXJzdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXJyb3ctYXNzaWdubWVudC1l
eHByZXNzaW9uLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ4ZjQyNTQwMjdh
MDVlZjgyZThiMWY4MGYyNmVlMDU0NTIxZmYzY2IKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgv
dmFsaWQvbmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi10cmFpbGluZy1jb21tYS1m
aXJzdC5qcwpAQCAtMCwwICsxLDMwIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBn
ZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWlt
cG9ydC90cmFpbGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9z
eW50YXgvdmFsaWQvbmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi50ZW1wbGF0ZQor
LyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBm
aXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCBhcnJvdyBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNh
bGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0
aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJ
bXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAg
ICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9y
TW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEg
U2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAz
LiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVz
c2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1
LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlz
ZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4K
KyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2Fw
YWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShy
ZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmls
aXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKwor
ICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2xldCBmID0gKCkgPT4gaW1wb3J0KCcu
L2VtcHR5X0ZJWFRVUkUuanMnLCk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFy
cm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi10cmFpbGluZy1jb21tYS1zZWNvbmQuanMgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvdmFsaWQvbmVzdGVkLWFycm93LWFzc2lnbm1lbnQtZXhwcmVzc2lvbi10cmFpbGluZy1jb21t
YS1zZWNvbmQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTA3MDZiNmJlN2I3NDU5MjlmMzliNjYyMDZmYTVhZDc3
YWNhN2Y0NAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXJyb3ctYXNz
aWdubWVudC1leHByZXNzaW9uLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcwpAQCAtMCwwICsxLDMw
IEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9s
bG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1z
ZWNvbmQuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1h
cnJvdy1hc3NpZ25tZW50LWV4cHJlc3Npb24udGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjog
SW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgc2Vjb25kIHBhcmFtZXRlciAobmVz
dGVkIGFycm93IHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGlj
cy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWljLWltcG9y
dF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgorICAgICAg
ICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAgICAyLiBB
c3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1v
ZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYgYmUgdGhl
IHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQuIExldCBz
cGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNlQ2FwYWJp
bGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4gTGV0IHNw
ZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJydXB0UmVq
ZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA4LiBQ
ZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JN
b2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIFJldHVy
biBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2FsbCA6Cisg
ICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0g
LG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQs
ID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0
ICkKKworLS0tKi8KKworbGV0IGYgPSAoKSA9PiBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycs
IHt9LCk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFycm93LXRyYWlsaW5nLWNv
bW1hLWZpcnN0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hcnJvdy10cmFpbGluZy1jb21tYS1m
aXJzdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi43MTllMThhMTQyMGUwOTZlMGFkYzM2M2Y0OWViNGJhN2YzNWU2
MDMyCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hcnJvdy10cmFpbGlu
Zy1jb21tYS1maXJzdC5qcwpAQCAtMCwwICsxLDMyIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2Nl
ZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9k
eW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFycm93LnRlbXBsYXRlCisvKi0tLQorZGVzY3Jp
cHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIGZpcnN0IHBhcmFtZXRl
ciAobmVzdGVkIGFycm93IHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNl
bWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWlj
LWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgor
ICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZl
cmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAg
ICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3Jk
IG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYg
YmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQu
IExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNl
Q2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4g
TGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJy
dXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAg
ICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2Ny
aXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDku
IFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2Fs
bCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsb3B0ICkKKworLS0tKi8KKworbGV0IGYgPSAoKSA9PiB7CisgIGltcG9ydCgnLi9lbXB0eV9G
SVhUVVJFLmpzJywpOworfTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXJyb3ct
dHJhaWxpbmctY29tbWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hcnJvdy10cmFp
bGluZy1jb21tYS1zZWNvbmQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmM0YThiOTA3ZTRmNzBlNTQ5NDk3N2Rj
NzQzMzAzYmMxZTE3MWEyYwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQt
YXJyb3ctdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzIgQEAKKy8vIFRoaXMg
ZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNl
czoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisv
LyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFycm93LnRlbXBsYXRl
CisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5n
IHNlY29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBhcnJvdyBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0
LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNz
ZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAg
ICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisK
KyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlw
dE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlz
IGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAg
ICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhw
cmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAg
ICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJv
bWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVy
KS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNl
Q2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxs
eShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBh
YmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisK
KworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9u
WytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRF
eHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0lu
LCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2xldCBmID0gKCkgPT4geworICBp
bXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCk7Cit9OwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L3ZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1m
aXJzdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFt
aWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ctZnVuY3Rpb24tYXdhaXQt
dHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODBmMTBiODFhM2U4ZWYyNmU3YWE4
MTE5OWQ2ZjZiNjdmOTMzZDUyYwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtYXN5bmMtYXJyb3ctZnVuY3Rpb24tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKQEAg
LTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZy
b20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxp
bmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC1hc3luYy1hcnJvdy1mbi1hd2FpdC50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9u
OiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBmaXJzdCBwYXJhbWV0ZXIgKG5l
c3RlZCBpbiBhc3luYyBhcnJvdyBmdW5jdGlvbikKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50
aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBk
eW5hbWljLWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAgIEltcG9ydENh
bGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExl
dCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUo
KS4KKyAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQg
UmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBh
cmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgor
ICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBw
cm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisg
ICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcu
IElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5
KS4KKyAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5j
aW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgor
ICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1w
b3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWll
bGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25b
K0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwg
P0F3YWl0XSAsb3B0ICkKKworLS0tKi8KKworKGFzeW5jICgpID0+IHsKKyAgYXdhaXQgaW1wb3J0
KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCkKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25l
c3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLWF3YWl0LXRyYWlsaW5n
LWNvbW1hLXNlY29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMTdkMjQzOGFiYWNkOTJjMGI2ZTJlMjAzYTAx
MDdkNjcyYTFlNGZlCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3lu
Yy1hcnJvdy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKQEAgLTAsMCAr
MSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhl
IGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29t
bWEtc2Vjb25kLmNhc2UKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtYXN5bmMtYXJyb3ctZm4tYXdhaXQudGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1w
b3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgc2Vjb25kIHBhcmFtZXRlciAobmVzdGVk
IGluIGFzeW5jIGFycm93IGZ1bmN0aW9uKQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUt
c2VtYW50aWNzLWV2YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFt
aWMtaW1wb3J0XQorZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6
CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJl
ZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgor
ICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNv
cmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1Jl
ZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAg
NC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21p
c2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2
LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZB
YnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgor
ICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdT
Y3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAg
OS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRD
YWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwg
P0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4s
ID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdh
aXRdICxvcHQgKQorCistLS0qLworCisoYXN5bmMgKCkgPT4geworICBhd2FpdCBpbXBvcnQoJy4v
ZW1wdHlfRklYVFVSRS5qcycsIHt9LCkKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25l
c3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEtZmly
c3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLXJldHVybi1h
d2FpdC10cmFpbGluZy1jb21tYS1maXJzdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YWZlOGE5ZWIyYWM3N2Fj
M2U5N2E5OGY0ZWVmYjg1OGY0OTYyNTkwCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEt
Zmlyc3QuanMKQEAgLTAsMCArMSwzMCBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkg
Z2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1p
bXBvcnQvdHJhaWxpbmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mbi1yZXR1cm4tYXdhaXQudGVtcGxhdGUK
Ky8qLS0tCitkZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcg
Zmlyc3QgcGFyYW1ldGVyIChuZXN0ZWQgaW4gYXN5bmMgYXJyb3cgZnVuY3Rpb24sIHJldHVybmVk
KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2Zl
YXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0XQorZmxhZ3M6IFtnZW5l
cmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdu
bWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUg
YmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAgIDIuIEFzc2VydDogcmVmZXJlbmNp
bmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAoaS5l
LiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1
YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4gTGV0IHNwZWNpZmllciBiZSA/IEdl
dFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJv
bWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJl
IFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNp
ZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDguIFBlcmZvcm0gISBIb3N0SW1w
b3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSwgc3BlY2lmaWVy
U3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gUmV0dXJuIHByb21pc2VDYXBhYmls
aXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBB
c3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAg
aW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorCistLS0qLworCiso
YXN5bmMgKCkgPT4gYXdhaXQgaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCkpOwpkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1hcnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdh
aXQtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1h
cnJvdy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjkyYWU5MzliZjIwMmZmZWIxNmUyOWZhZjMyNzNjMzhkYWQ0Yzg4MTIKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWFycm93LWZ1bmN0aW9uLXJldHVy
bi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKQEAgLTAsMCArMSwzMCBAQAorLy8gVGhp
cyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3Vy
Y2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtc2Vjb25kLmNhc2UK
Ky8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtYXJyb3ct
Zm4tcmV0dXJuLWF3YWl0LnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwg
dHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIHNlY29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBpbiBhc3lu
YyBhcnJvdyBmdW5jdGlvbiwgcmV0dXJuZWQpCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGlt
ZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHlu
YW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxs
IDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQg
cmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCku
CisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJl
Y29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJn
UmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAg
ICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJv
bWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAg
IDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJ
ZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSku
CisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAg
ICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9y
dENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCisKKy0tLSovCisKKyhhc3luYyAoKSA9PiBhd2FpdCBpbXBvcnQoJy4vZW1w
dHlfRklYVFVSRS5qcycsIHt9LCkpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1h
c3luYy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1maXJzdC5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxp
ZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNTViZDJkMTY3NzAwNzEzZDM0NjMyZmQ3Y2NjYTE4YWI5MzI1ZWFkNgotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tYXdhaXQtdHJh
aWxpbmctY29tbWEtZmlyc3QuanMKQEAgLTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBw
cm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBz
cmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMvZHlu
YW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC50ZW1w
bGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxv
d2luZyBmaXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCBhcnJvdyBzeW50YXgpCitlc2lkOiBzZWMtaW1w
b3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQt
YXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwK
KyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiAp
CisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNj
cmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxl
IGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4K
KyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50
RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4K
KyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSgl
UHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lm
aWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9t
aXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWlj
YWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VD
YXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0u
CisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNz
aW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1l
bnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25b
K0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2FzeW5jIGZ1bmN0aW9uIGYo
KSB7CisgIGF3YWl0IGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywpOworfQpkaWZmIC0tZ2l0
IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21t
YS1zZWNvbmQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLWF3YWl0LXRy
YWlsaW5nLWNvbW1hLXNlY29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZmZmOGRiZTk0OTU3MDIxMDdhODY3
NjE1OTQyOTY4ODIzNjU0ZjQzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3Rl
ZC1hc3luYy1mdW5jdGlvbi1hd2FpdC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKQEAgLTAsMCAr
MSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhl
IGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29t
bWEtc2Vjb25kLmNhc2UKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtYXN5bmMtZnVuY3Rpb24tYXdhaXQudGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1w
b3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgc2Vjb25kIHBhcmFtZXRlciAobmVzdGVk
IGFycm93IHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1l
dmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWljLWltcG9ydF0K
K2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgorICAgICAgICBp
bXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZlcmVuY2luZ1Nj
cmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAgICAyLiBBc3Nl
cnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVs
ZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJl
c3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQuIExldCBzcGVj
aWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0
eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4gTGV0IHNwZWNp
ZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJydXB0UmVqZWN0
UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA4LiBQZXJm
b3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1
bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIFJldHVybiBw
cm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2FsbCA6CisgICAg
ICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9w
dCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkK
KworLS0tKi8KKworYXN5bmMgZnVuY3Rpb24gZigpIHsKKyAgYXdhaXQgaW1wb3J0KCcuL2VtcHR5
X0ZJWFRVUkUuanMnLCB7fSwpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1h
c3luYy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2FpdC10cmFpbGluZy1jb21t
YS1maXJzdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NjY3Y2FmYWNkNmY3YTA5YjgxMDg3ZWMxMDliNmNiZmUw
NTFhNGU1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
ZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5j
dGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKQEAgLTAsMCArMSwzMyBA
QAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxv
d2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtZmly
c3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3lu
Yy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQudGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1w
b3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgZmlyc3QgcGFyYW1ldGVyIChuZXN0ZWQg
YXJyb3cgc3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2
YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0XQor
ZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGlt
cG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVyZW5jaW5nU2Ny
aXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAgIDIuIEFzc2Vy
dDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxl
IFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVz
dWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4gTGV0IHNwZWNp
ZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5
IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBMZXQgc3BlY2lm
aWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1cHRSZWplY3RQ
cm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDguIFBlcmZv
cm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVs
ZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gUmV0dXJuIHBy
b21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAg
ICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0
ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3
YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQor
CistLS0qLworCithc3luYyBmdW5jdGlvbiBmKCkgeworICByZXR1cm4gYXdhaXQgaW1wb3J0KCcu
L2VtcHR5X0ZJWFRVUkUuanMnLCk7Cit9CisKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtYXN5bmMtZnVuY3Rpb24tcmV0dXJuLWF3YWl0LXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tcmV0dXJuLWF3YWl0LXRyYWlsaW5n
LWNvbW1hLXNlY29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41YTcwN2QyYTVlNTQ1NGI3OWNkYWViZmMzMjVk
ZTg5MWZhN2QzYzJiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3lu
Yy1mdW5jdGlvbi1yZXR1cm4tYXdhaXQtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAg
KzEsMzMgQEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRo
ZSBmb2xsb3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNv
bW1hLXNlY29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVz
dGVkLWFzeW5jLWZ1bmN0aW9uLXJldHVybi1hd2FpdC50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0
aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBzZWNvbmQgcGFyYW1ldGVy
IChuZXN0ZWQgYXJyb3cgc3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2Vt
YW50aWNzLWV2YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMt
aW1wb3J0XQorZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6Cisg
ICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVy
ZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAg
IDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQg
b3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBi
ZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4g
TGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VD
YXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBM
ZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1
cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAg
IDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3Jp
cHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4g
UmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxs
IDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3
YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9Z
aWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRd
ICxvcHQgKQorCistLS0qLworCithc3luYyBmdW5jdGlvbiBmKCkgeworICByZXR1cm4gYXdhaXQg
aW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwpOworfQorCmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzIGIv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi10cmFpbGluZy1jb21tYS1maXJzdC5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zODk3M2JkODZkNTFiMzQ1ODIzNTMyYTQ4YmIyY2VlNDA3MzlhNjU5Ci0t
LSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi10cmFp
bGluZy1jb21tYS1maXJzdC5qcwpAQCAtMCwwICsxLDMzIEBACisvLyBUaGlzIGZpbGUgd2FzIHBy
b2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNy
Yy9keW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLnRlbXBsYXRlCisv
Ki0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIGZp
cnN0IHBhcmFtZXRlciAobmVzdGVkIGFycm93IHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2Fs
bC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRp
b25zLCBkeW5hbWljLWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAgIElt
cG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAg
IDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JN
b2R1bGUoKS4KKyAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBT
Y3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMu
IExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNz
aW9uLgorICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUu
IExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNl
JSkuCisgICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgor
ICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBh
YmlsaXR5KS4KKyAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJl
ZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxp
dHkpLgorICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisg
ICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0lu
LCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJl
c3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9Z
aWVsZCwgP0F3YWl0XSAsb3B0ICkKKworLS0tKi8KKworYXN5bmMgZnVuY3Rpb24gZigpIHsKKyAg
aW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCk7Cit9CisKZGlmZiAtLWdpdCBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92
YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1hc3luYy1mdW5jdGlvbi10cmFpbGluZy1jb21tYS1zZWNvbmQuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZWU1NzUwMDIzNjFhMmRiMzIzODkyNmRlZGQ1ZjQ5ZTQ2NzZiZmEwNwotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtYXN5bmMtZnVuY3Rpb24tdHJhaWxp
bmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzMgQEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJv
Y2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKKy8vIC0gc3Jj
L2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisvLyAtIHNyYy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWZ1bmN0aW9uLnRlbXBsYXRlCisv
Ki0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIHNl
Y29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBhcnJvdyBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNh
bGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0
aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJ
bXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAg
ICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9y
TW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEg
U2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAz
LiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVz
c2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1
LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlz
ZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4K
KyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2Fw
YWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShy
ZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmls
aXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKwor
ICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2FzeW5jIGZ1bmN0aW9uIGYoKSB7Cisg
IGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sKTsKK30KKwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1hc3luYy1nZW4tYXdhaXQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWdlbi1hd2FpdC10cmFpbGluZy1jb21tYS1maXJz
dC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lOTFkZTdhNTcxNTRhMmZiMTMzM2ZmMDUzNzBiMDlhYzFmYjBiYWMw
Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1nZW4tYXdhaXQt
dHJhaWxpbmctY29tbWEtZmlyc3QuanMKQEAgLTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdh
cyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8g
LSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1nZW5lcmF0b3ItYXdhaXQu
dGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBm
b2xsb3dpbmcgZmlyc3QgcGFyYW1ldGVyIChuZXN0ZWQgaW4gYXN5bmMgZ2VuZXJhdG9yLCBhd2Fp
dGVkKQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24K
K2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0LCBhc3luYy1pdGVy
YXRpb25dCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAg
ICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJl
bmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAg
Mi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBv
ciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJl
IHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBM
ZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNh
cGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExl
dCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVw
dFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAg
OC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1Njcmlw
dE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBS
ZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwg
OgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdh
aXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lp
ZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0g
LG9wdCApCisKKy0tLSovCisKK2FzeW5jIGZ1bmN0aW9uICogZigpIHsKKyAgYXdhaXQgaW1wb3J0
KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCkKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtYXN5bmMtZ2VuLWF3YWl0LXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxp
ZC9uZXN0ZWQtYXN5bmMtZ2VuLWF3YWl0LXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5kYjA2Y2M5MTcwMDE1MTU5M2NhN2ZhNzU1ZDA1Nzk5OGY0NDE1NWFhCi0tLSAvZGV2L251
bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1hc3luYy1nZW4tYXdhaXQtdHJhaWxpbmctY29t
bWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzIgQEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJh
bGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5bmFt
aWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWlt
cG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWFzeW5jLWdlbmVyYXRvci1hd2FpdC50ZW1wbGF0ZQor
LyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBz
ZWNvbmQgcGFyYW1ldGVyIChuZXN0ZWQgaW4gYXN5bmMgZ2VuZXJhdG9yLCBhd2FpdGVkKQorZXNp
ZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2ZlYXR1cmVz
OiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0LCBhc3luYy1pdGVyYXRpb25dCitm
bGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1w
b3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3Jp
cHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0
OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUg
UmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1
bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lm
aWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkg
YmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZp
ZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFBy
b21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9y
bSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxl
LCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJv
bWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAg
ICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQg
KQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdh
aXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisK
Ky0tLSovCisKK2FzeW5jIGZ1bmN0aW9uICogZigpIHsKKyAgYXdhaXQgaW1wb3J0KCcuL2VtcHR5
X0ZJWFRVUkUuanMnLCB7fSwpCit9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWJs
b2NrLWxhYmVsZWQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVk
LWJsb2NrLWxhYmVsZWQtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDYwODdm
YTc5YTBiODBiOGUyMGFhZDNhNDA5NGViMzdiNDA4NzcxZAotLS0gL2Rldi9udWxsCisrKyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5
bnRheC92YWxpZC9uZXN0ZWQtYmxvY2stbGFiZWxlZC10cmFpbGluZy1jb21tYS1maXJzdC5qcwpA
QCAtMCwwICsxLDMyIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQg
ZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWltcG9ydC90cmFp
bGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFs
aWQvbmVzdGVkLWJsb2NrLWxhYmVsZWQudGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1w
b3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgZmlyc3QgcGFyYW1ldGVyIChuZXN0ZWQg
YmxvY2sgc3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2
YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0XQor
ZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGlt
cG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVyZW5jaW5nU2Ny
aXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAgIDIuIEFzc2Vy
dDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxl
IFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVz
dWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4gTGV0IHNwZWNp
ZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5
IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBMZXQgc3BlY2lm
aWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1cHRSZWplY3RQ
cm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDguIFBlcmZv
cm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVs
ZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gUmV0dXJuIHBy
b21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAg
ICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0
ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3
YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQor
CistLS0qLworCitsYWJlbDogeworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsKTsKK307
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9k
eW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLWxhYmVsZWQtdHJhaWxpbmct
Y29tbWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lv
bnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1ibG9jay1sYWJlbGVkLXRyYWls
aW5nLWNvbW1hLXNlY29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lNmUyOTdjZjk2ZjQwYmE2OGU2Mzg5Y2Y2
NWJhYzBkYzhmZjNhNjZmCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1i
bG9jay1sYWJlbGVkLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcwpAQCAtMCwwICsxLDMyIEBACisv
LyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5n
IHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1zZWNvbmQu
Y2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1ibG9jay1s
YWJlbGVkLnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcg
Y29tbWEgZm9sbG93aW5nIHNlY29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBibG9jayBzeW50YXgpCitl
c2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVy
ZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRl
ZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50
RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAh
IEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1Nj
cmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlz
IG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGlu
ZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFs
dWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNl
Q2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9T
dHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVy
U3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRN
b2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJp
bmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHku
W1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBv
cnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVu
dEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2xhYmVs
OiB7CisgIGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sKTsKK307CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1ibG9jay10cmFpbGluZy1jb21tYS1maXJzdC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li40ZTllNjkzOGM2MTk3OTI0ODVlMmVkZTk2MDUxMTI3YWVlZGY1MWQyCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1ibG9jay10cmFpbGluZy1jb21tYS1maXJzdC5qcwpA
QCAtMCwwICsxLDMyIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQg
ZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWltcG9ydC90cmFp
bGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFs
aWQvbmVzdGVkLWJsb2NrLnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwg
dHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIGZpcnN0IHBhcmFtZXRlciAobmVzdGVkIGJsb2NrIHN5
bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9u
CitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWljLWltcG9ydF0KK2ZsYWdzOiBb
Z2VuZXJhdGVkXQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFz
c2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9k
dWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAgICAyLiBBc3NlcnQ6IHJlZmVy
ZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQg
KGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBl
dmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQuIExldCBzcGVjaWZpZXIgYmUg
PyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5l
d1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4gTGV0IHNwZWNpZmllclN0cmlu
ZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShz
cGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA4LiBQZXJmb3JtICEgSG9z
dEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNp
ZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIFJldHVybiBwcm9taXNlQ2Fw
YWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9y
dCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAg
ICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBB
c3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKworLS0tKi8K
KworeworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsKTsKK307CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9z
eW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC92YWxpZC9uZXN0ZWQtYmxvY2stdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjhhNDg0YjBlMDA3MWFmODBkMTVkNDdjMWVhZWJhOTAxMjAyMmU1OTEKLS0tIC9kZXYvbnVsbAor
KysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWJsb2NrLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcwpA
QCAtMCwwICsxLDMyIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQg
ZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWltcG9ydC90cmFp
bGluZy1jb21tYS1zZWNvbmQuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3Zh
bGlkL25lc3RlZC1ibG9jay50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxs
IHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBzZWNvbmQgcGFyYW1ldGVyIChuZXN0ZWQgYmxvY2sg
c3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRp
b24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0XQorZmxhZ3M6
IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCgg
QXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVyZW5jaW5nU2NyaXB0T3JN
b2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAgIDIuIEFzc2VydDogcmVm
ZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxlIFJlY29y
ZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVzdWx0IG9m
IGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4gTGV0IHNwZWNpZmllciBi
ZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEg
TmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBMZXQgc3BlY2lmaWVyU3Ry
aW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1cHRSZWplY3RQcm9taXNl
KHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDguIFBlcmZvcm0gISBI
b3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSwgc3Bl
Y2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gUmV0dXJuIHByb21pc2VD
YXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1w
b3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAg
ICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAs
IEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorCistLS0q
LworCit7CisgIGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sKTsKK307CmRpZmYgLS1n
aXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWlt
cG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWRvLXdoaWxlLXRyYWlsaW5nLWNvbW1hLWZpcnN0Lmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L3ZhbGlkL25lc3RlZC1kby13aGlsZS10cmFpbGluZy1jb21tYS1maXJzdC5qcwpu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi44ODE1MzAyYzNjNmFkYWU1ZjkyYjhlYWIxZWViM2JlMGM1OGIzOWRlCi0tLSAv
ZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1kby13aGlsZS10cmFpbGluZy1jb21t
YS1maXJzdC5qcwpAQCAtMCwwICsxLDMyIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxs
eSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWlj
LWltcG9ydC90cmFpbGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWRvLXdoaWxlLnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRp
b246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIGZpcnN0IHBhcmFtZXRlciAo
bmVzdGVkIGRvIHdoaWxlIHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNl
bWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWlj
LWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgor
ICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZl
cmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAg
ICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3Jk
IG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYg
YmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQu
IExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNl
Q2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4g
TGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJy
dXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAg
ICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2Ny
aXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDku
IFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2Fs
bCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsb3B0ICkKKworLS0tKi8KKworZG8geworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycs
KTsKK30gd2hpbGUgKGZhbHNlKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZG8t
d2hpbGUtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1kby13
aGlsZS10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDNkOWRkMGJjNDUxNjUz
NmNlYmFiNzczZjc1MTVlNGY4MWNiZmQyMQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxp
ZC9uZXN0ZWQtZG8td2hpbGUtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzIg
QEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xs
b3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNl
Y29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWRv
LXdoaWxlLnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcg
Y29tbWEgZm9sbG93aW5nIHNlY29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBkbyB3aGlsZSBzeW50YXgp
Citlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVh
dHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVy
YXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25t
ZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBi
ZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUu
IGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVh
dGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0
VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9t
aXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUg
VG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lm
aWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBv
cnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJT
dHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxp
dHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFz
c2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBp
bXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdu
bWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2Rv
IHsKKyAgaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwpOworfSB3aGlsZSAoZmFsc2Up
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1lbHNlLWJyYWNlbGVzcy10cmFpbGlu
Zy1jb21tYS1maXJzdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Np
b25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZWxzZS1icmFjZWxlc3MtdHJh
aWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjUzMzcxNWIzODRhOTg1Y2VmNmM4MWNk
MGJjZDczYTVmYzdiMzQ3YQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQt
ZWxzZS1icmFjZWxlc3MtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKQEAgLTAsMCArMSwzMiBAQAor
Ly8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2lu
ZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtZmlyc3Qu
Y2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1lbHNlLWJy
YWNlbGVzcy50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5n
IGNvbW1hIGZvbGxvd2luZyBmaXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCBlbHNlIHN5bnRheCkKK2Vz
aWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJl
czogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWljLWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVk
XQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRF
eHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEg
R2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2Ny
aXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMg
bm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5n
IEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1
ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VD
YXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0
cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJT
dHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1v
ZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmlu
ZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5b
W1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdu
bWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9y
dCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50
RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKworLS0tKi8KKworaWYgKGZh
bHNlKSB7CisKK30gZWxzZSBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsKTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZWxzZS1icmFjZWxlc3MtdHJhaWxpbmctY29tbWEtc2Vj
b25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1lbHNlLWJyYWNlbGVzcy10cmFpbGluZy1jb21t
YS1zZWNvbmQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTZlMTU5MzlhM2ZjMGEzZmFmMTEzZDU5NGYzNzFiYTk4
YjlhZTgzZQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZWxzZS1icmFj
ZWxlc3MtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzIgQEAKKy8vIFRoaXMg
ZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNl
czoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisv
LyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtYnJhY2VsZXNz
LnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEg
Zm9sbG93aW5nIHNlY29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBlbHNlIHN5bnRheCkKK2VzaWQ6IHNl
Yy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2lt
cG9ydC1hc3NlcnRpb25zLCBkeW5hbWljLWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5m
bzogfAorICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNz
aW9uICkKKworICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0
aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JN
b2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51
bGwpLgorICAgIDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2ln
bm1lbnRFeHByZXNzaW9uLgorICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdS
ZWYpLgorICAgIDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmls
aXR5KCVQcm9taXNlJSkuCisgICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhz
cGVjaWZpZXIpLgorICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcs
IHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5
bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJv
bWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21p
c2VdXS4KKworCisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4
cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNz
aWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVz
c2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKworLS0tKi8KKworaWYgKGZhbHNlKSB7
CisKK30gZWxzZSBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9y
dC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmctY29tbWEtZmlyc3QuanMgYi9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
M2RjMjNhM2ZlNjA1NDBlMTMxOTIxNjM0ZDhkOWNlNDVmMGEyNjk4MgotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZWxzZS10cmFpbGluZy1jb21tYS1maXJzdC5qcwpAQCAt
MCwwICsxLDM0IEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJv
bSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9keW5hbWljLWltcG9ydC90cmFpbGlu
Zy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQv
bmVzdGVkLWVsc2UudGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCB0cmFp
bGluZyBjb21tYSBmb2xsb3dpbmcgZmlyc3QgcGFyYW1ldGVyIChuZXN0ZWQgZWxzZSBzeW50YXgp
Citlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVh
dHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVy
YXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25t
ZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBi
ZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUu
IGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVh
dGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0
VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9t
aXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUg
VG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lm
aWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBv
cnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJT
dHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxp
dHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFz
c2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBp
bXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdu
bWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2lm
IChmYWxzZSkgeworCit9IGVsc2UgeworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsKTsK
K30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZWxzZS10cmFpbGluZy1jb21tYS1z
ZWNvbmQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmctY29tbWEtc2Vjb25k
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjI0NWEwNWNlNTk1YTM2NjU1OTVjYTZhZGJiNzEzYzc4OTQ3YmVkOWQK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UtdHJhaWxpbmctY29t
bWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzQgQEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJh
bGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5bmFt
aWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWlt
cG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWVsc2UudGVtcGxhdGUKKy8qLS0tCitkZXNjcmlwdGlv
bjogSW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgc2Vjb25kIHBhcmFtZXRlciAo
bmVzdGVkIGVsc2Ugc3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50
aWNzLWV2YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1w
b3J0XQorZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6CisgICAg
ICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVyZW5j
aW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAgIDIu
IEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3Ig
TW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBiZSB0
aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4gTGV0
IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VDYXBh
YmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBMZXQg
c3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1cHRS
ZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDgu
IFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRP
ck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gUmV0
dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxsIDoK
KyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxv
cHQgKQorCistLS0qLworCitpZiAoZmFsc2UpIHsKKworfSBlbHNlIHsKKyAgaW1wb3J0KCcuL2Vt
cHR5X0ZJWFRVUkUuanMnLCB7fSwpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3Rl
ZC1mdW5jdGlvbi1yZXR1cm4tdHJhaWxpbmctY29tbWEtZmlyc3QuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQv
bmVzdGVkLWZ1bmN0aW9uLXJldHVybi10cmFpbGluZy1jb21tYS1maXJzdC5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yMjRlNGQ4ODZlNmM4MmRkNTFlOGYwMWE1NjdjN2E3MWJjYWUwNjI5Ci0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4tdHJhaWxpbmctY29tbWEt
Zmlyc3QuanMKQEAgLTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkg
Z2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1p
bXBvcnQvdHJhaWxpbmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQv
c3ludGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4udGVtcGxhdGUKKy8qLS0tCitkZXNj
cmlwdGlvbjogSW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgZmlyc3QgcGFyYW1l
dGVyIChuZXN0ZWQgZnVuY3Rpb24gc3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRp
bWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5
bmFtaWMtaW1wb3J0XQorZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2Fs
bCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0
IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgp
LgorICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBS
ZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFy
Z1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisg
ICAgNC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHBy
b21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAg
ICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4g
SWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkp
LgorICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNp
bmdTY3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisg
ICAgOS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBv
cnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsr
SW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/
QXdhaXRdICxvcHQgKQorCistLS0qLworCitmdW5jdGlvbiBmbigpIHsKKyAgcmV0dXJuIGltcG9y
dCgnLi9lbXB0eV9GSVhUVVJFLmpzJywpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25l
c3RlZC1mdW5jdGlvbi1yZXR1cm4tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3Zh
bGlkL25lc3RlZC1mdW5jdGlvbi1yZXR1cm4tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjQ4ODhkOGNlZTdhMmJkMGFiODg4ZWI3MWUxNTg2MTc1OGMwZTBkYTQKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWZ1bmN0aW9uLXJldHVybi10cmFpbGluZy1j
b21tYS1zZWNvbmQuanMKQEAgLTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1
cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHlu
YW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtc2Vjb25kLmNhc2UKKy8vIC0gc3JjL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZnVuY3Rpb24tcmV0dXJuLnRlbXBsYXRlCisvKi0t
LQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIHNlY29u
ZCBwYXJhbWV0ZXIgKG5lc3RlZCBmdW5jdGlvbiBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNh
bGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0
aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJ
bXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAg
ICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9y
TW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEg
U2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAz
LiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVz
c2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1
LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlz
ZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4K
KyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2Fw
YWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShy
ZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmls
aXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKwor
ICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/
WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2Z1bmN0aW9uIGZuKCkgeworICByZXR1
cm4gaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwpOworfQpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi10cmFpbGluZy1jb21tYS1maXJzdC5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC92YWxpZC9uZXN0ZWQtZnVuY3Rpb24tdHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNWQ1ZTUzZjE4NTNjYTAwM2JjM2U4ODI1YTA4NGZmODliMzNhNjA0NAotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMt
aW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZnVuY3Rpb24tdHJhaWxpbmctY29tbWEtZmlyc3Qu
anMKQEAgLTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJh
dGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQv
dHJhaWxpbmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBv
cnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBmaXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCBm
dW5jdGlvbiBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3Mt
ZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRd
CitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAg
aW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdT
Y3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNz
ZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1
bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSBy
ZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3Bl
Y2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxp
dHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVj
aWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVj
dFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVy
Zm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9k
dWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4g
cHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAg
ICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxv
cHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/
QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCAp
CisKKy0tLSovCisKK2Z1bmN0aW9uIGZuKCkgeworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5q
cycsKTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZnVuY3Rpb24tdHJhaWxp
bmctY29tbWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVz
c2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1mdW5jdGlvbi10cmFpbGlu
Zy1jb21tYS1zZWNvbmQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWEzMDdmYTU0NDg2ZDFiYzllMjExODA5ZmE2
NmFkM2JiZWE4Zjc5ZQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtZnVu
Y3Rpb24tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzIgQEAKKy8vIFRoaXMg
ZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNl
czoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisv
LyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWZ1bmN0aW9uLnRlbXBs
YXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93
aW5nIHNlY29uZCBwYXJhbWV0ZXIgKG5lc3RlZCBmdW5jdGlvbiBzeW50YXgpCitlc2lkOiBzZWMt
aW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBv
cnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86
IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lv
biApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2
ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9k
dWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxs
KS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25t
ZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVm
KS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0
eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3Bl
Y2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBw
cm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5h
bWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21p
c2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNl
XV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2ln
bm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Np
b25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2Z1bmN0aW9uIGZuKCkg
eworICBpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsIHt9LCk7Cit9CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9z
eW50YXgvdmFsaWQvbmVzdGVkLWlmLWJyYWNlbGVzcy10cmFpbGluZy1jb21tYS1maXJzdC5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3N5bnRheC92YWxpZC9uZXN0ZWQtaWYtYnJhY2VsZXNzLXRyYWlsaW5nLWNvbW1hLWZpcnN0Lmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmIzNDJmOWM4NmZkYjllNTE0NTQwNTNiMTI5YWYzODc1OTUyYjg4MGMKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWlmLWJyYWNlbGVzcy10cmFpbGlu
Zy1jb21tYS1maXJzdC5qcwpAQCAtMCwwICsxLDMwIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2Nl
ZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9k
eW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWlmLWJyYWNlbGVzcy50ZW1wbGF0ZQorLyotLS0K
K2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2luZyBmaXJzdCBw
YXJhbWV0ZXIgKG5lc3RlZCBpZiBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGlt
ZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHlu
YW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxs
IDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQg
cmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCku
CisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJl
Y29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJn
UmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAg
ICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJv
bWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAg
IDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJ
ZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSku
CisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAg
ICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9y
dENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJ
biwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9B
d2FpdF0gLG9wdCApCisKKy0tLSovCisKK2lmICh0cnVlKSBpbXBvcnQoJy4vZW1wdHlfRklYVFVS
RS5qcycsKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtaWYtYnJhY2VsZXNzLXRy
YWlsaW5nLWNvbW1hLXNlY29uZC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtaWYtYnJhY2VsZXNz
LXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NWVjZWY4MDJlMWNhNTg0MmM4
NTM4YjNiY2E2N2ZlNTY2MjY3YWZhCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25l
c3RlZC1pZi1icmFjZWxlc3MtdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzAg
QEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xs
b3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNl
Y29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLWlm
LWJyYWNlbGVzcy50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWls
aW5nIGNvbW1hIGZvbGxvd2luZyBzZWNvbmQgcGFyYW1ldGVyIChuZXN0ZWQgaWYgc3ludGF4KQor
ZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2ZlYXR1
cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0XQorZmxhZ3M6IFtnZW5lcmF0
ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVu
dEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUg
ISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgorICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdT
Y3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNvcmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBp
cyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1JlZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRp
bmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAgNC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZh
bHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21pc2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlz
ZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRv
U3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZBYnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmll
clN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0
TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3Ry
aW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5
LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3Np
Z25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1w
b3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1l
bnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorCistLS0qLworCitpZiAo
dHJ1ZSkgaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwpOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3lu
dGF4L3ZhbGlkL25lc3RlZC1pZi10cmFpbGluZy1jb21tYS1maXJzdC5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxp
ZC9uZXN0ZWQtaWYtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWZhMDU5NjA1
NDk1NWU1NmUzNGEyNmQ4ZGQ1NTU4YzUwNmU1MWNmNQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRh
eC92YWxpZC9uZXN0ZWQtaWYtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKQEAgLTAsMCArMSwzMiBA
QAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxv
d2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtZmly
c3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC1pZi50
ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZv
bGxvd2luZyBmaXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCBpZiBzeW50YXgpCitlc2lkOiBzZWMtaW1w
b3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQt
YXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwK
KyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiAp
CisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNj
cmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxl
IGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4K
KyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50
RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4K
KyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSgl
UHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lm
aWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9t
aXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWlj
YWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VD
YXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0u
CisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNz
aW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1l
bnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25b
K0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2lmICh0cnVlKSB7CisgIGlt
cG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC1pZi10cmFpbGluZy1jb21tYS1zZWNvbmQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVk
LWlmLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGI2Y2VkZWY5NGFhYTJk
ZDcyMDUyNDMyZjE2NjQ2OTQ3NjgzNTUzCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC1pZi10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKQEAgLTAsMCArMSwzMiBAQAorLy8g
VGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBz
b3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtc2Vjb25kLmNh
c2UKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtaWYudGVtcGxh
dGUKKy8qLS0tCitkZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dp
bmcgc2Vjb25kIHBhcmFtZXRlciAobmVzdGVkIGlmIHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQt
Y2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3Nl
cnRpb25zLCBkeW5hbWljLWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkXQoraW5mbzogfAorICAg
IEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKwor
ICAgIDEuIExldCByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0
T3JNb2R1bGUoKS4KKyAgICAyLiBBc3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMg
YSBTY3JpcHQgUmVjb3JkIG9yIE1vZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAg
IDMuIExldCBhcmdSZWYgYmUgdGhlIHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHBy
ZXNzaW9uLgorICAgIDQuIExldCBzcGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAg
IDUuIExldCBwcm9taXNlQ2FwYWJpbGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9t
aXNlJSkuCisgICAgNi4gTGV0IHNwZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIp
LgorICAgIDcuIElmQWJydXB0UmVqZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VD
YXBhYmlsaXR5KS4KKyAgICA4LiBQZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5
KHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFi
aWxpdHkpLgorICAgIDkuIFJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKwor
CisgICAgSW1wb3J0Q2FsbCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25b
K0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4
cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4s
ID9ZaWVsZCwgP0F3YWl0XSAsb3B0ICkKKworLS0tKi8KKworaWYgKHRydWUpIHsKKyAgaW1wb3J0
KCcuL2VtcHR5X0ZJWFRVUkUuanMnLCB7fSwpOworfQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlk
L25lc3RlZC13aGlsZS10cmFpbGluZy1jb21tYS1maXJzdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0
ZWQtd2hpbGUtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzUyY2JlNDc4ODY3
MDExMWE3NTljNjBlNjVmMWU4ZTM0ZTY4OWQ0MAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92
YWxpZC9uZXN0ZWQtd2hpbGUtdHJhaWxpbmctY29tbWEtZmlyc3QuanMKQEAgLTAsMCArMSwzNCBA
QAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxv
d2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvdHJhaWxpbmctY29tbWEtZmly
c3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aGls
ZS50ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1h
IGZvbGxvd2luZyBmaXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCB3aGlsZSBzeW50YXgpCitlc2lkOiBz
ZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtp
bXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2lu
Zm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVz
c2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFj
dGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9y
TW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBu
dWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3Np
Z25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJn
UmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJp
bGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmco
c3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5n
LCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVE
eW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHBy
b21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9t
aXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRF
eHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFz
c2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJl
c3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK2xldCB4ID0gMDsK
K3doaWxlICgheCkgeworICB4Kys7CisgIGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywpOwor
fTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25z
L2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2hpbGUtdHJhaWxpbmctY29tbWEt
c2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHlu
YW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aGlsZS10cmFpbGluZy1jb21tYS1zZWNv
bmQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNmMwN2Y2YjJkMzdhNjM5ZDNmOGUwOGI1MTRjZmY5NzdkMTdlYWFi
YQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJl
c3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2hpbGUtdHJhaWxpbmct
Y29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzQgQEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2Vk
dXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5
bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWlj
LWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdoaWxlLnRlbXBsYXRlCisvKi0tLQorZGVzY3Jp
cHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIHNlY29uZCBwYXJhbWV0
ZXIgKG5lc3RlZCB3aGlsZSBzeW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1z
ZW1hbnRpY3MtZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1p
Yy1pbXBvcnRdCitmbGFnczogW2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoK
KyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVm
ZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisg
ICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29y
ZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVm
IGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0
LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlz
ZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYu
IExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFi
cnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisg
ICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1Nj
cmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5
LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENh
bGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/
QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwg
P1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2Fp
dF0gLG9wdCApCisKKy0tLSovCisKK2xldCB4ID0gMDsKK3doaWxlICgheCkgeworICB4Kys7Cisg
IGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sKTsKK307CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50
YXgvdmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi10cmFpbGluZy1jb21tYS1maXJzdC5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3N5bnRheC92YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNzaW9uLXRyYWlsaW5nLWNvbW1hLWZpcnN0
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmJiYzI3ZWYwZDliYmZiZDAxYzU4ZjZmNmQxYTc0ODYxYWU4MjljYTAK
LS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi10
cmFpbGluZy1jb21tYS1maXJzdC5qcwpAQCAtMCwwICsxLDMzIEBACisvLyBUaGlzIGZpbGUgd2Fz
IHByb2NlZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAt
IHNyYy9keW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1maXJzdC5jYXNlCisvLyAtIHNyYy9k
eW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi50ZW1wbGF0
ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZvbGxvd2lu
ZyBmaXJzdCBwYXJhbWV0ZXIgKG5lc3RlZCB3aXRoIHN5bnRheCBpbiB0aGUgZXhwcmVzc2lvbiBw
b3NpdGlvbikKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFudGljcy1ldmFsdWF0
aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWljLWltcG9ydF0KK2ZsYWdz
OiBbZ2VuZXJhdGVkLCBub1N0cmljdF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAg
ICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAxLiBMZXQgcmVmZXJlbmNp
bmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9kdWxlKCkuCisgICAgMi4g
QXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2NyaXB0IFJlY29yZCBvciBN
b2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBMZXQgYXJnUmVmIGJlIHRo
ZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lvbi4KKyAgICA0LiBMZXQg
c3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBMZXQgcHJvbWlzZUNhcGFi
aWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUpLgorICAgIDYuIExldCBz
cGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAgICA3LiBJZkFicnVwdFJl
amVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAgOC4g
UGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZlcmVuY2luZ1NjcmlwdE9y
TW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA5LiBSZXR1
cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAgIEltcG9ydENhbGwgOgor
ICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRd
ICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxk
LCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9w
dCApCisKKy0tLSovCisKK3dpdGggKGltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywpKSB7Cisg
ICAgYXNzZXJ0LnNhbWVWYWx1ZSh0aGVuLCBQcm9taXNlLnByb3RvdHlwZS50aGVuKTsKKyAgICBh
c3NlcnQuc2FtZVZhbHVlKGNvbnN0cnVjdG9yLCBQcm9taXNlKTsKK30KZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5
bnRheC92YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNzaW9uLXRyYWlsaW5nLWNvbW1hLXNlY29uZC5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1w
b3J0L3N5bnRheC92YWxpZC9uZXN0ZWQtd2l0aC1leHByZXNzaW9uLXRyYWlsaW5nLWNvbW1hLXNl
Y29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45OTgzNmZmNzg4NDdhZGQ4MmQ2YzY1NzQ0ZDQ4ZGM4ZDI5NjRl
ZDhjCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aXRoLWV4cHJlc3Np
b24tdHJhaWxpbmctY29tbWEtc2Vjb25kLmpzCkBAIC0wLDAgKzEsMzMgQEAKKy8vIFRoaXMgZmls
ZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoK
Ky8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisvLyAt
IHNyYy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtZXhwcmVzc2lvbi50
ZW1wbGF0ZQorLyotLS0KK2Rlc2NyaXB0aW9uOiBJbXBvcnRDYWxsIHRyYWlsaW5nIGNvbW1hIGZv
bGxvd2luZyBzZWNvbmQgcGFyYW1ldGVyIChuZXN0ZWQgd2l0aCBzeW50YXggaW4gdGhlIGV4cHJl
c3Npb24gcG9zaXRpb24pCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3Mt
ZXZhbHVhdGlvbgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRd
CitmbGFnczogW2dlbmVyYXRlZCwgbm9TdHJpY3RdCitpbmZvOiB8CisgICAgSW1wb3J0Q2FsbCA6
CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisgICAgMS4gTGV0IHJl
ZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgYmUgISBHZXRBY3RpdmVTY3JpcHRPck1vZHVsZSgpLgor
ICAgIDIuIEFzc2VydDogcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBpcyBhIFNjcmlwdCBSZWNv
cmQgb3IgTW9kdWxlIFJlY29yZCAoaS5lLiBpcyBub3QgbnVsbCkuCisgICAgMy4gTGV0IGFyZ1Jl
ZiBiZSB0aGUgcmVzdWx0IG9mIGV2YWx1YXRpbmcgQXNzaWdubWVudEV4cHJlc3Npb24uCisgICAg
NC4gTGV0IHNwZWNpZmllciBiZSA/IEdldFZhbHVlKGFyZ1JlZikuCisgICAgNS4gTGV0IHByb21p
c2VDYXBhYmlsaXR5IGJlICEgTmV3UHJvbWlzZUNhcGFiaWxpdHkoJVByb21pc2UlKS4KKyAgICA2
LiBMZXQgc3BlY2lmaWVyU3RyaW5nIGJlIFRvU3RyaW5nKHNwZWNpZmllcikuCisgICAgNy4gSWZB
YnJ1cHRSZWplY3RQcm9taXNlKHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgor
ICAgIDguIFBlcmZvcm0gISBIb3N0SW1wb3J0TW9kdWxlRHluYW1pY2FsbHkocmVmZXJlbmNpbmdT
Y3JpcHRPck1vZHVsZSwgc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJpbGl0eSkuCisgICAg
OS4gUmV0dXJuIHByb21pc2VDYXBhYmlsaXR5LltbUHJvbWlzZV1dLgorCisKKyAgICBJbXBvcnRD
YWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwg
P0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4s
ID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdh
aXRdICxvcHQgKQorCistLS0qLworCit3aXRoIChpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycs
IHt9LCkpIHsKKyAgICBhc3NlcnQuc2FtZVZhbHVlKHRoZW4sIFByb21pc2UucHJvdG90eXBlLnRo
ZW4pOworICAgIGFzc2VydC5zYW1lVmFsdWUoY29uc3RydWN0b3IsIFByb21pc2UpOworfQpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aXRoLXRyYWlsaW5nLWNvbW1hLWZpcnN0Lmpz
IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1pbXBv
cnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aXRoLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjU5MjczM2ZlZDBlZjVmY2QzMDNmNDU1ZGZmNTNkOGVlMTI5MzQ5MzcKLS0tIC9kZXYv
bnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5h
bWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtdHJhaWxpbmctY29tbWEtZmlyc3Qu
anMKQEAgLTAsMCArMSwzMiBAQAorLy8gVGhpcyBmaWxlIHdhcyBwcm9jZWR1cmFsbHkgZ2VuZXJh
dGVkIGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQv
dHJhaWxpbmctY29tbWEtZmlyc3QuY2FzZQorLy8gLSBzcmMvZHluYW1pYy1pbXBvcnQvc3ludGF4
L3ZhbGlkL25lc3RlZC13aXRoLnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENh
bGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIGZpcnN0IHBhcmFtZXRlciAobmVzdGVkIHdpdGgg
c3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1YXRp
b24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5bmFtaWMtaW1wb3J0XQorZmxhZ3M6
IFtnZW5lcmF0ZWQsIG5vU3RyaWN0XQoraW5mbzogfAorICAgIEltcG9ydENhbGwgOgorICAgICAg
ICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uICkKKworICAgIDEuIExldCByZWZlcmVuY2lu
Z1NjcmlwdE9yTW9kdWxlIGJlICEgR2V0QWN0aXZlU2NyaXB0T3JNb2R1bGUoKS4KKyAgICAyLiBB
c3NlcnQ6IHJlZmVyZW5jaW5nU2NyaXB0T3JNb2R1bGUgaXMgYSBTY3JpcHQgUmVjb3JkIG9yIE1v
ZHVsZSBSZWNvcmQgKGkuZS4gaXMgbm90IG51bGwpLgorICAgIDMuIExldCBhcmdSZWYgYmUgdGhl
IHJlc3VsdCBvZiBldmFsdWF0aW5nIEFzc2lnbm1lbnRFeHByZXNzaW9uLgorICAgIDQuIExldCBz
cGVjaWZpZXIgYmUgPyBHZXRWYWx1ZShhcmdSZWYpLgorICAgIDUuIExldCBwcm9taXNlQ2FwYWJp
bGl0eSBiZSAhIE5ld1Byb21pc2VDYXBhYmlsaXR5KCVQcm9taXNlJSkuCisgICAgNi4gTGV0IHNw
ZWNpZmllclN0cmluZyBiZSBUb1N0cmluZyhzcGVjaWZpZXIpLgorICAgIDcuIElmQWJydXB0UmVq
ZWN0UHJvbWlzZShzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5KS4KKyAgICA4LiBQ
ZXJmb3JtICEgSG9zdEltcG9ydE1vZHVsZUR5bmFtaWNhbGx5KHJlZmVyZW5jaW5nU2NyaXB0T3JN
b2R1bGUsIHNwZWNpZmllclN0cmluZywgcHJvbWlzZUNhcGFiaWxpdHkpLgorICAgIDkuIFJldHVy
biBwcm9taXNlQ2FwYWJpbGl0eS5bW1Byb21pc2VdXS4KKworCisgICAgSW1wb3J0Q2FsbCA6Cisg
ICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0g
LG9wdCApCisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQs
ID9Bd2FpdF0gLCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0
ICkKKworLS0tKi8KKword2l0aCAoe30pIHsKKyAgaW1wb3J0KCcuL2VtcHR5X0ZJWFRVUkUuanMn
LCk7Cit9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvbmVzdGVkLXdpdGgtdHJhaWxpbmctY29t
bWEtc2Vjb25kLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMv
ZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aXRoLXRyYWlsaW5nLWNvbW1hLXNl
Y29uZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40ZmE1MWZhMjI2NzE4NDE3NmYzMmI2NmZiNWYxZmVkYjZlYWJj
MjNiCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhw
cmVzc2lvbnMvZHluYW1pYy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aXRoLXRyYWlsaW5n
LWNvbW1hLXNlY29uZC5qcwpAQCAtMCwwICsxLDMyIEBACisvLyBUaGlzIGZpbGUgd2FzIHByb2Nl
ZHVyYWxseSBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIHNvdXJjZXM6CisvLyAtIHNyYy9k
eW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1zZWNvbmQuY2FzZQorLy8gLSBzcmMvZHluYW1p
Yy1pbXBvcnQvc3ludGF4L3ZhbGlkL25lc3RlZC13aXRoLnRlbXBsYXRlCisvKi0tLQorZGVzY3Jp
cHRpb246IEltcG9ydENhbGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIHNlY29uZCBwYXJhbWV0
ZXIgKG5lc3RlZCB3aXRoIHN5bnRheCkKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNl
bWFudGljcy1ldmFsdWF0aW9uCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBkeW5hbWlj
LWltcG9ydF0KK2ZsYWdzOiBbZ2VuZXJhdGVkLCBub1N0cmljdF0KK2luZm86IHwKKyAgICBJbXBv
cnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvbiApCisKKyAgICAx
LiBMZXQgcmVmZXJlbmNpbmdTY3JpcHRPck1vZHVsZSBiZSAhIEdldEFjdGl2ZVNjcmlwdE9yTW9k
dWxlKCkuCisgICAgMi4gQXNzZXJ0OiByZWZlcmVuY2luZ1NjcmlwdE9yTW9kdWxlIGlzIGEgU2Ny
aXB0IFJlY29yZCBvciBNb2R1bGUgUmVjb3JkIChpLmUuIGlzIG5vdCBudWxsKS4KKyAgICAzLiBM
ZXQgYXJnUmVmIGJlIHRoZSByZXN1bHQgb2YgZXZhbHVhdGluZyBBc3NpZ25tZW50RXhwcmVzc2lv
bi4KKyAgICA0LiBMZXQgc3BlY2lmaWVyIGJlID8gR2V0VmFsdWUoYXJnUmVmKS4KKyAgICA1LiBM
ZXQgcHJvbWlzZUNhcGFiaWxpdHkgYmUgISBOZXdQcm9taXNlQ2FwYWJpbGl0eSglUHJvbWlzZSUp
LgorICAgIDYuIExldCBzcGVjaWZpZXJTdHJpbmcgYmUgVG9TdHJpbmcoc3BlY2lmaWVyKS4KKyAg
ICA3LiBJZkFicnVwdFJlamVjdFByb21pc2Uoc3BlY2lmaWVyU3RyaW5nLCBwcm9taXNlQ2FwYWJp
bGl0eSkuCisgICAgOC4gUGVyZm9ybSAhIEhvc3RJbXBvcnRNb2R1bGVEeW5hbWljYWxseShyZWZl
cmVuY2luZ1NjcmlwdE9yTW9kdWxlLCBzcGVjaWZpZXJTdHJpbmcsIHByb21pc2VDYXBhYmlsaXR5
KS4KKyAgICA5LiBSZXR1cm4gcHJvbWlzZUNhcGFiaWxpdHkuW1tQcm9taXNlXV0uCisKKworICAg
IEltcG9ydENhbGwgOgorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwg
P1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNz
aW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWll
bGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSovCisKK3dpdGggKHt9KSB7CisgIGltcG9ydCgnLi9l
bXB0eV9GSVhUVVJFLmpzJywge30sKTsKK30KZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC90b3At
bGV2ZWwtdHJhaWxpbmctY29tbWEtZmlyc3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvdG9wLWxldmVsLXRy
YWlsaW5nLWNvbW1hLWZpcnN0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIzOTAxMmE4Y2UzZGY0NzkxMWMwODlm
NzI1ODkxYzJlNzAwNjBkMWEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC9zeW50YXgvdmFsaWQvdG9wLWxl
dmVsLXRyYWlsaW5nLWNvbW1hLWZpcnN0LmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIFRoaXMgZmls
ZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoK
Ky8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0L3RyYWlsaW5nLWNvbW1hLWZpcnN0LmNhc2UKKy8vIC0g
c3JjL2R5bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC90b3AtbGV2ZWwudGVtcGxhdGUKKy8qLS0t
CitkZXNjcmlwdGlvbjogSW1wb3J0Q2FsbCB0cmFpbGluZyBjb21tYSBmb2xsb3dpbmcgZmlyc3Qg
cGFyYW1ldGVyICh0b3AgbGV2ZWwgc3ludGF4KQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRp
bWUtc2VtYW50aWNzLWV2YWx1YXRpb24KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGR5
bmFtaWMtaW1wb3J0XQorZmxhZ3M6IFtnZW5lcmF0ZWRdCitpbmZvOiB8CisgICAgSW1wb3J0Q2Fs
bCA6CisgICAgICAgIGltcG9ydCggQXNzaWdubWVudEV4cHJlc3Npb24gKQorCisKKyAgICBJbXBv
cnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVs
ZCwgP0F3YWl0XSAsb3B0ICkKKyAgICAgICAgaW1wb3J0KCBBc3NpZ25tZW50RXhwcmVzc2lvblsr
SW4sID9ZaWVsZCwgP0F3YWl0XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/
QXdhaXRdICxvcHQgKQorCistLS0qLworCitpbXBvcnQoJy4vZW1wdHlfRklYVFVSRS5qcycsKTsK
ZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC90b3AtbGV2ZWwtdHJhaWxpbmctY29tbWEtc2Vjb25k
LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvZHluYW1pYy1p
bXBvcnQvc3ludGF4L3ZhbGlkL3RvcC1sZXZlbC10cmFpbGluZy1jb21tYS1zZWNvbmQuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uOWRiMDE5NGE3MGM1YmNjYzhiNDA0MWM0NTJhMmY1ZTZmOWQyOGQwNQotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5
bmFtaWMtaW1wb3J0L3N5bnRheC92YWxpZC90b3AtbGV2ZWwtdHJhaWxpbmctY29tbWEtc2Vjb25k
LmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIFRoaXMgZmlsZSB3YXMgcHJvY2VkdXJhbGx5IGdlbmVy
YXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKKy8vIC0gc3JjL2R5bmFtaWMtaW1wb3J0
L3RyYWlsaW5nLWNvbW1hLXNlY29uZC5jYXNlCisvLyAtIHNyYy9keW5hbWljLWltcG9ydC9zeW50
YXgvdmFsaWQvdG9wLWxldmVsLnRlbXBsYXRlCisvKi0tLQorZGVzY3JpcHRpb246IEltcG9ydENh
bGwgdHJhaWxpbmcgY29tbWEgZm9sbG93aW5nIHNlY29uZCBwYXJhbWV0ZXIgKHRvcCBsZXZlbCBz
eW50YXgpCitlc2lkOiBzZWMtaW1wb3J0LWNhbGwtcnVudGltZS1zZW1hbnRpY3MtZXZhbHVhdGlv
bgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZHluYW1pYy1pbXBvcnRdCitmbGFnczog
W2dlbmVyYXRlZF0KK2luZm86IHwKKyAgICBJbXBvcnRDYWxsIDoKKyAgICAgICAgaW1wb3J0KCBB
c3NpZ25tZW50RXhwcmVzc2lvbiApCisKKworICAgIEltcG9ydENhbGwgOgorICAgICAgICBpbXBv
cnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAg
ICAgICBpbXBvcnQoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwg
QXNzaWdubWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCisKKy0tLSov
CisKK2ltcG9ydCgnLi9lbXB0eV9GSVhUVVJFLmpzJywge30sKTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0L3RyYWls
aW5nLWNvbW1hLWZ1bGZpbGwuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHBy
ZXNzaW9ucy9keW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1mdWxmaWxsLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjBkMzY4OWIzN2VkYmIxZmE5NzlkMjFhNGY1MTA1OTA2NjllNjA2YjAKLS0tIC9kZXYvbnVs
bAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWlj
LWltcG9ydC90cmFpbGluZy1jb21tYS1mdWxmaWxsLmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgIEltcG9ydENhbGwg
cGFyYW1ldGVyIGxpc3Qgc3VwcG9ydHMgYW4gb3B0aW9uYWwgdHJhaWxpbmcgY29tbWEgKGZ1bGZp
bGxtZW50CisgIHNlbWFudGljcykKK2VzaWQ6IHNlYy1pbXBvcnQtY2FsbC1ydW50aW1lLXNlbWFu
dGljcy1ldmFsdWF0aW9uCitpbmZvOiB8CisgIEltcG9ydENhbGxbWWllbGQsIEF3YWl0XToKKyAg
ICBpbXBvcnQgKCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0XSAsb3B0
ICkKKyAgICBpbXBvcnQgKCBBc3NpZ25tZW50RXhwcmVzc2lvblsrSW4sID9ZaWVsZCwgP0F3YWl0
XSAsIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorZmVh
dHVyZXM6IFtkeW5hbWljLWltcG9ydCwgaW1wb3J0LWFzc2VydGlvbnNdCitmbGFnczogW2FzeW5j
XQorLS0tKi8KKworaW1wb3J0KCcuLzJuZC1wYXJhbV9GSVhUVVJFLmpzJywpCisgIC50aGVuKGZ1
bmN0aW9uKG1vZHVsZSkgeworICAgIGFzc2VydC5zYW1lVmFsdWUobW9kdWxlLmRlZmF1bHQsIDI2
Mik7CisgIH0pCisgIC50aGVuKCRET05FLCAkRE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy9keW5hbWljLWltcG9ydC90cmFpbGluZy1j
b21tYS1yZWplY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy9keW5hbWljLWltcG9ydC90cmFpbGluZy1jb21tYS1yZWplY3QuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDI1
N2VjY2MzMjQ4NTdkMDk1NDYwMzgyNmE4MTViZmRlNzA3MWU4ZQotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL2R5bmFtaWMtaW1wb3J0
L3RyYWlsaW5nLWNvbW1hLXJlamVjdC5qcwpAQCAtMCwwICsxLDI0IEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogPgorICBJbXBvcnRDYWxsIHBhcmFtZXRl
ciBsaXN0IHN1cHBvcnRzIGFuIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1hIChyZWplY3Rpb24KKyAg
c2VtYW50aWNzKQorZXNpZDogc2VjLWltcG9ydC1jYWxsLXJ1bnRpbWUtc2VtYW50aWNzLWV2YWx1
YXRpb24KK2luZm86IHwKKyAgSW1wb3J0Q2FsbFtZaWVsZCwgQXdhaXRdOgorICAgIGltcG9ydCAo
IEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICxvcHQgKQorICAgIGlt
cG9ydCAoIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwgP1lpZWxkLCA/QXdhaXRdICwgQXNzaWdu
bWVudEV4cHJlc3Npb25bK0luLCA/WWllbGQsID9Bd2FpdF0gLG9wdCApCitmZWF0dXJlczogW2R5
bmFtaWMtaW1wb3J0LCBpbXBvcnQtYXNzZXJ0aW9uc10KK2ZsYWdzOiBbYXN5bmNdCistLS0qLwor
Cit2YXIgdGhyb3duID0gbmV3IFRlc3QyNjJFcnJvcigpOworCitpbXBvcnQoe3RvU3RyaW5nOiBm
dW5jdGlvbigpIHsgdGhyb3cgdGhyb3duOyB9IH0sKQorICAudGhlbihmdW5jdGlvbigpIHsKKyAg
ICB0aHJvdyBuZXcgVGVzdDI2MkVycm9yKCdFeHBlY3RlZCBwcm9taXNlIHRvIGJlIHJlamVjdGVk
LCBidXQgaXQgd2FzIGZ1bGZpbGxlZC4nKTsKKyAgfSwgZnVuY3Rpb24oY2F1Z2h0KSB7CisgICAg
YXNzZXJ0LnNhbWVWYWx1ZSh0aHJvd24sIGNhdWdodCk7CisgIH0pCisgIC50aGVuKCRET05FLCAk
RE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNz
aW9ucy90ZW1wbGF0ZS1saXRlcmFsL2ludmFsaWQtbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5j
ZS04LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvdGVtcGxh
dGUtbGl0ZXJhbC9pbnZhbGlkLWxlZ2FjeS1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtOC5qcwppbmRl
eCBhNDExOTU4OGE5OTAxNTQxYWJjZDZiOTVlZmZiMjZlZWRkY2YzODZjLi5jZDJmYmIxOTFhMjY4
MWVmNzg3MDZiYzU3OWIxODYxNDU0NjM3YzFlIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy90ZW1wbGF0ZS1saXRlcmFsL2ludmFsaWQtbGVnYWN5
LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS04LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2V4cHJlc3Npb25zL3RlbXBsYXRlLWxpdGVyYWwvaW52YWxpZC1sZWdhY3ktb2N0YWwt
ZXNjYXBlLXNlcXVlbmNlLTguanMKQEAgLTUsOCArNSwxOCBAQAogZGVzY3JpcHRpb246ID4KICAg
ICBJbnZhbGlkIG9jdGFsIGVzY2FwZSBzZXF1ZW5jZSAocmVnYXJkbGVzcyBvZiB0aGUgcHJlc2Vu
Y2Ugb2YgQW5uZXggQikKIGluZm86IHwKLSAgICBBIGNvbmZvcm1pbmcgaW1wbGVtZW50YXRpb24g
bXVzdCBub3QgdXNlIHRoZSBleHRlbmRlZCBkZWZpbml0aW9uIG9mCi0gICAgRXNjYXBlU2VxdWVu
Y2UgZGVzY3JpYmVkIGluIEIuMS4yIHdoZW4gcGFyc2luZyBhIFRlbXBsYXRlQ2hhcmFjdGVyLgor
ICBUZW1wbGF0ZUNoYXJhY3RlciA6OgorICAgICQgW2xvb2thaGVhZCDiiaAge10KKyAgICBcIFRl
bXBsYXRlRXNjYXBlU2VxdWVuY2UKKyAgICBcIE5vdEVzY2FwZVNlcXVlbmNlCisgICAgTGluZUNv
bnRpbnVhdGlvbgorICAgIExpbmVUZXJtaW5hdG9yU2VxdWVuY2UKKyAgICBTb3VyY2VDaGFyYWN0
ZXIgYnV0IG5vdCBvbmUgb2YgYCBvciBcIG9yICQgb3IgTGluZVRlcm1pbmF0b3IKKyAgVGVtcGxh
dGVFc2NhcGVTZXF1ZW5jZSA6OgorICAgIENoYXJhY3RlckVzY2FwZVNlcXVlbmNlCisgICAgMCBb
bG9va2FoZWFkIOKIiSBEZWNpbWFsRGlnaXRdCisgICAgSGV4RXNjYXBlU2VxdWVuY2UKKyAgICBV
bmljb2RlRXNjYXBlU2VxdWVuY2UKIG5lZ2F0aXZlOgogICBwaGFzZTogcGFyc2UKICAgdHlwZTog
U3ludGF4RXJyb3IKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2V4
cHJlc3Npb25zL3RlbXBsYXRlLWxpdGVyYWwvaW52YWxpZC1sZWdhY3ktb2N0YWwtZXNjYXBlLXNl
cXVlbmNlLTkuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy90
ZW1wbGF0ZS1saXRlcmFsL2ludmFsaWQtbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05Lmpz
CmluZGV4IGZlNjk1NDViOWFjMmMxMmVkY2E2NWQ4ZTY2ZTExZjRiNGZhM2UyZDMuLmYwYmU2OWI5
ZWFmMGNmNTViY2M5MTQwNDNhNGEzZjI5YmNiMjFmMWYgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2V4cHJlc3Npb25zL3RlbXBsYXRlLWxpdGVyYWwvaW52YWxpZC1s
ZWdhY3ktb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTkuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvZXhwcmVzc2lvbnMvdGVtcGxhdGUtbGl0ZXJhbC9pbnZhbGlkLWxlZ2FjeS1v
Y3RhbC1lc2NhcGUtc2VxdWVuY2UtOS5qcwpAQCAtNSw4ICs1LDE4IEBACiBkZXNjcmlwdGlvbjog
PgogICAgIEludmFsaWQgb2N0YWwgZXNjYXBlIHNlcXVlbmNlIChyZWdhcmRsZXNzIG9mIHRoZSBw
cmVzZW5jZSBvZiBBbm5leCBCKQogaW5mbzogfAotICAgIEEgY29uZm9ybWluZyBpbXBsZW1lbnRh
dGlvbiBtdXN0IG5vdCB1c2UgdGhlIGV4dGVuZGVkIGRlZmluaXRpb24gb2YKLSAgICBFc2NhcGVT
ZXF1ZW5jZSBkZXNjcmliZWQgaW4gQi4xLjIgd2hlbiBwYXJzaW5nIGEgVGVtcGxhdGVDaGFyYWN0
ZXIuCisgIFRlbXBsYXRlQ2hhcmFjdGVyIDo6CisgICAgJCBbbG9va2FoZWFkIOKJoCB7XQorICAg
IFwgVGVtcGxhdGVFc2NhcGVTZXF1ZW5jZQorICAgIFwgTm90RXNjYXBlU2VxdWVuY2UKKyAgICBM
aW5lQ29udGludWF0aW9uCisgICAgTGluZVRlcm1pbmF0b3JTZXF1ZW5jZQorICAgIFNvdXJjZUNo
YXJhY3RlciBidXQgbm90IG9uZSBvZiBgIG9yIFwgb3IgJCBvciBMaW5lVGVybWluYXRvcgorICBU
ZW1wbGF0ZUVzY2FwZVNlcXVlbmNlIDo6CisgICAgQ2hhcmFjdGVyRXNjYXBlU2VxdWVuY2UKKyAg
ICAwIFtsb29rYWhlYWQg4oiJIERlY2ltYWxEaWdpdF0KKyAgICBIZXhFc2NhcGVTZXF1ZW5jZQor
ICAgIFVuaWNvZGVFc2NhcGVTZXF1ZW5jZQogbmVnYXRpdmU6CiAgIHBoYXNlOiBwYXJzZQogICB0
eXBlOiBTeW50YXhFcnJvcgpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvZXhwcmVzc2lvbnMvdGVtcGxhdGUtbGl0ZXJhbC9pbnZhbGlkLWxlZ2FjeS1vY3RhbC1lc2Nh
cGUtc2VxdWVuY2UuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9u
cy90ZW1wbGF0ZS1saXRlcmFsL2ludmFsaWQtbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS5q
cwppbmRleCAyMTkyM2U1NDA4NDYzZTc0YmIzNzU1MmFiNWVkNmI5YzkxMzU3OWQyLi5kMzc5M2Vk
MGUxZTFjMmE1NGJjYmQwNWQ2NjFmZGYzMWRhYjBmNmQ3IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9leHByZXNzaW9ucy90ZW1wbGF0ZS1saXRlcmFsL2ludmFsaWQt
bGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9leHByZXNzaW9ucy90ZW1wbGF0ZS1saXRlcmFsL2ludmFsaWQtbGVnYWN5LW9j
dGFsLWVzY2FwZS1zZXF1ZW5jZS5qcwpAQCAtNCw4ICs0LDE4IEBACiBlczZpZDogMTYuMQogZGVz
Y3JpcHRpb246IEludmFsaWQgb2N0YWwgZXNjYXBlIHNlcXVlbmNlCiBpbmZvOiB8Ci0gICAgVGVt
cGxhdGVDaGFyYWN0ZXIgKDExLjguNikgbXVzdCBub3QgYmUgZXh0ZW5kZWQgdG8gaW5jbHVkZQot
ICAgIExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UgYXMgZGVmaW5lZCBpbiBCLjEuMi4KKyAgVGVt
cGxhdGVDaGFyYWN0ZXIgOjoKKyAgICAkIFtsb29rYWhlYWQg4omgIHtdCisgICAgXCBUZW1wbGF0
ZUVzY2FwZVNlcXVlbmNlCisgICAgXCBOb3RFc2NhcGVTZXF1ZW5jZQorICAgIExpbmVDb250aW51
YXRpb24KKyAgICBMaW5lVGVybWluYXRvclNlcXVlbmNlCisgICAgU291cmNlQ2hhcmFjdGVyIGJ1
dCBub3Qgb25lIG9mIGAgb3IgXCBvciAkIG9yIExpbmVUZXJtaW5hdG9yCisgIFRlbXBsYXRlRXNj
YXBlU2VxdWVuY2UgOjoKKyAgICBDaGFyYWN0ZXJFc2NhcGVTZXF1ZW5jZQorICAgIDAgW2xvb2th
aGVhZCDiiIkgRGVjaW1hbERpZ2l0XQorICAgIEhleEVzY2FwZVNlcXVlbmNlCisgICAgVW5pY29k
ZUVzY2FwZVNlcXVlbmNlCiBuZWdhdGl2ZToKICAgcGhhc2U6IHBhcnNlCiAgIHR5cGU6IFN5bnRh
eEVycm9yCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQv
anNvbi1leHRlbnNpYmlsaXR5LWFycmF5LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvaW1wb3J0L2pzb24tZXh0ZW5zaWJpbGl0eS1hcnJheS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZGM4MDAx
OGI5NGMyMTQzN2IzMDIzYTgyZTBjM2JjNWMwYWYxNDU1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tZXh0ZW5zaWJpbGl0eS1hcnJh
eS5qcwpAQCAtMCwwICsxLDIwIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2pl
Y3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitl
c2lkOiBzZWMtcGFyc2UtanNvbi1tb2R1bGUKK2Rlc2NyaXB0aW9uOiBDcmVhdGVzIGV4dGVuc2li
bGUgYXJyYXlzCitmbGFnczogW21vZHVsZV0KK2luY2x1ZGVzOiBbcHJvcGVydHlIZWxwZXIuanNd
CitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBqc29uLW1vZHVsZXNdCistLS0qLworCitp
bXBvcnQgdmFsdWUgZnJvbSAnLi9qc29uLXZhbHVlLWFycmF5X0ZJWFRVUkUuanNvbicgYXNzZXJ0
IHsgdHlwZTogJ2pzb24nIH07CisKK3ZhbHVlLnRlc3QyNjJwcm9wZXJ0eSA9ICd0ZXN0MjYyIHZh
bHVlJzsKKwordmVyaWZ5UHJvcGVydHkodmFsdWUsICd0ZXN0MjYycHJvcGVydHknLCB7CisgIHZh
bHVlOiAndGVzdDI2MiB2YWx1ZScsCisgIHdyaXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0
cnVlLAorICBjb25maWd1cmFibGU6IHRydWUKK30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tZXh0ZW5zaWJpbGl0eS1vYmplY3QuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1leHRlbnNpYmlsaXR5LW9i
amVjdC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5mYjRjOGVkMmM0OGJmNDZhZDM2MGZjZDNkODU2ZGY0YWQwNDE3
MmI5Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1w
b3J0L2pzb24tZXh0ZW5zaWJpbGl0eS1vYmplY3QuanMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29w
eXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXBhcnNlLWpzb24tbW9kdWxlCitk
ZXNjcmlwdGlvbjogQ3JlYXRlcyBleHRlbnNpYmxlIG9iamVjdHMKK2ZsYWdzOiBbbW9kdWxlXQor
aW5jbHVkZXM6IFtwcm9wZXJ0eUhlbHBlci5qc10KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlv
bnMsIGpzb24tbW9kdWxlc10KKy0tLSovCisKK2ltcG9ydCB2YWx1ZSBmcm9tICcuL2pzb24tdmFs
dWUtb2JqZWN0X0ZJWFRVUkUuanNvbicgYXNzZXJ0IHsgdHlwZTogJ2pzb24nIH07CisKK3ZhbHVl
LnRlc3QyNjJwcm9wZXJ0eSA9ICd0ZXN0MjYyIHZhbHVlJzsKKwordmVyaWZ5UHJvcGVydHkodmFs
dWUsICd0ZXN0MjYycHJvcGVydHknLCB7CisgIHZhbHVlOiAndGVzdDI2MiB2YWx1ZScsCisgIHdy
aXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVlLAorICBjb25maWd1cmFibGU6IHRydWUK
K30pOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pz
b24taWRlbXBvdGVuY3ktaW5kaXJlY3RfRklYVFVSRS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2ltcG9ydC9qc29uLWlkZW1wb3RlbmN5LWluZGlyZWN0X0ZJWFRVUkUuanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjFjNDQwYjMzMzI3YjMwMzIwMWYwMDAwZjU4YWQxMWZhYWRlNmRiYgotLS0gL2Rl
di9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLWlk
ZW1wb3RlbmN5LWluZGlyZWN0X0ZJWFRVUkUuanMKQEAgLTAsMCArMSw2IEBACisvLyBDb3B5cmln
aHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhl
IExJQ0VOU0UgZmlsZS4KKworaW1wb3J0IHZhbHVlIGZyb20gJy4vanNvbi1pZGVtcG90ZW5jeV9G
SVhUVVJFLmpzb24nIGFzc2VydCB7IHR5cGU6ICdqc29uJyB9OworCitnbG9iYWxUaGlzLnZpYVNl
Y29uZE1vZHVsZSA9IHZhbHVlOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvaW1wb3J0L2pzb24taWRlbXBvdGVuY3kuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9pbXBvcnQvanNvbi1pZGVtcG90ZW5jeS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NDgzMmExY2Fk
ODk1NjZiMjIyZjViYjA4YTYzZjJmZDI3OGQ1OTdkCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24taWRlbXBvdGVuY3kuanMKQEAgLTAs
MCArMSwyMSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLXBh
cnNlLWpzb24tbW9kdWxlCitkZXNjcmlwdGlvbjogVGhlIHNhbWUgb2JqZWN0IHJlcHJlc2VudGF0
aW9uIGlzIHJldHVybmVkIHRvIGFsbCBpbXBvcnQgc2l0ZXMKK2ZsYWdzOiBbbW9kdWxlLCBhc3lu
Y10KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMsIGpzb24tbW9kdWxlcywgZ2xvYmFsVGhp
cywgZHluYW1pYy1pbXBvcnRdCistLS0qLworCitpbXBvcnQgdmlhU3RhdGljSW1wb3J0MSBmcm9t
ICcuL2pzb24taWRlbXBvdGVuY3lfRklYVFVSRS5qc29uJyBhc3NlcnQgeyB0eXBlOiAnanNvbicg
fTsKK2ltcG9ydCB7ZGVmYXVsdCBhcyB2aWFTdGF0aWNJbXBvcnQyfSBmcm9tICcuL2pzb24taWRl
bXBvdGVuY3lfRklYVFVSRS5qc29uJyBhc3NlcnQgeyB0eXBlOiAnanNvbicgfTsKK2ltcG9ydCAn
Li9qc29uLWlkZW1wb3RlbmN5LWluZGlyZWN0X0ZJWFRVUkUuanMnOworCithc3NlcnQuc2FtZVZh
bHVlKHZpYVN0YXRpY0ltcG9ydDEsIHZpYVN0YXRpY0ltcG9ydDIpOworYXNzZXJ0LnNhbWVWYWx1
ZShnbG9iYWxUaGlzLnZpYVNlY29uZE1vZHVsZSwgdmlhU3RhdGljSW1wb3J0MSk7CisKK2ltcG9y
dCgnLi9qc29uLWlkZW1wb3RlbmN5X0ZJWFRVUkUuanNvbicsIHsgYXNzZXJ0OiB7IHR5cGU6ICdq
c29uJyB9IH0pCisgIC50aGVuKGZ1bmN0aW9uKHZpYUR5bmFtaWNJbXBvcnQpIHsKKyAgICBhc3Nl
cnQuc2FtZVZhbHVlKHZpYUR5bmFtaWNJbXBvcnQuZGVmYXVsdCwgdmlhU3RhdGljSW1wb3J0MSk7
CisgIH0pCisgIC50aGVuKCRET05FLCAkRE9ORSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi1pbnZhbGlkLmpzIGIvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24taW52YWxpZC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NTVkODU2
NmY3MTQxMmE0MDllYTY3OTVkMjQ0NzQyYTdlM2U4YjAwCi0tLSAvZGV2L251bGwKKysrIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24taW52YWxpZC5qcwpAQCAtMCww
ICsxLDIzIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNE
IGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtcGFy
c2UtanNvbi1tb2R1bGUKK2Rlc2NyaXB0aW9uOiBEb2VzIG5vdCBkZWZpbmUKK2luZm86IHwKKyAg
IyAxLjQgUGFyc2VKU09OTW9kdWxlICggc291cmNlICkKKworICBUaGUgYWJzdHJhY3Qgb3BlcmF0
aW9uIFBhcnNlSlNPTk1vZHVsZSB0YWtlcyBhIHNpbmdsZSBhcmd1bWVudCBzb3VyY2Ugd2hpY2gK
KyAgaXMgYSBTdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBjb250ZW50cyBvZiBhIG1vZHVsZS4KKwor
ICAxLiBMZXQganNvbiBiZSA/IENhbGwoJUpTT04ucGFyc2UlLCB1bmRlZmluZWQsIMKrIHNvdXJj
ZSDCuykuCisgIDIuIFJldHVybiBDcmVhdGVEZWZhdWx0RXhwb3J0U3ludGhldGljTW9kdWxlKGpz
b24pLgorZmxhZ3M6IFttb2R1bGVdCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBqc29u
LW1vZHVsZXNdCituZWdhdGl2ZToKKyAgcGhhc2U6IHBhcnNlCisgIHR5cGU6IFN5bnRheEVycm9y
CistLS0qLworCiskRE9OT1RFVkFMVUFURSgpOworCitpbXBvcnQgdmFsdWUgZnJvbSAnLi9qc29u
LWludmFsaWRfRklYVFVSRS5qc29uJyBhc3NlcnQgeyB0eXBlOiAnanNvbicgfTsKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLW5hbWVkLWJpbmRp
bmdzLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tbmFtZWQt
YmluZGluZ3MuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzkwMGZlMzhmODZkYTNlNjA2ZTc3ZmQ3ODc3ZDgwZWI4
ZDRhYWVlMwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2ltcG9ydC9qc29uLW5hbWVkLWJpbmRpbmdzLmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIENvcHly
aWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1wYXJzZS1qc29uLW1vZHVsZQorZGVz
Y3JpcHRpb246IERvZXMgbm90IGRlZmluZSBuYW1lZCBiaW5kaW5ncworaW5mbzogfAorICBJbiB0
aGUgZWFybHkgZGVzaWduIG9mIEpTT04gbW9kdWxlcywgY29udHJpYnV0b3JzIGNvbnNpZGVyZWQg
YWxsb3dpbmcgdGhlCisgIHByb3BlcnRpZXMgb2Ygb2JqZWN0IHZhbHVlcyBpbiBKU09OIG1vZHVs
ZXMgdG8gYmUgaW1wb3J0ZWQgZGlyZWN0bHkgYnkgbmFtZS4KKyAgVGhpcyB3YXMgdWx0aW1hdGVs
eSByZWplY3RlZCwgc28gYXR0ZW1wdGluZyB0byBpbXBvcnQgaW4gdGhpcyB3YXkgc2hvdWxkCisg
IHByb2R1Y2UgYSBTeW50YXhFcnJvci4KK2ZsYWdzOiBbbW9kdWxlXQorZmVhdHVyZXM6IFtpbXBv
cnQtYXNzZXJ0aW9ucywganNvbi1tb2R1bGVzXQorbmVnYXRpdmU6CisgIHBoYXNlOiBwYXJzZQor
ICB0eXBlOiBTeW50YXhFcnJvcgorLS0tKi8KKworJERPTk9URVZBTFVBVEUoKTsKKworaW1wb3J0
IHtuYW1lfSBmcm9tICcuL2pzb24tbmFtZWQtYmluZGluZ3NfRklYVFVSRS5qc29uJyBhc3NlcnQg
eyB0eXBlOiAnanNvbicgfTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2ltcG9ydC9qc29uLXZhbHVlLWFycmF5LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtYXJyYXkuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTBkNjRiOTZkOWFi
ZGY4NTQ2ZDEyM2M5YzkzYjA3Yjg5OWQ5M2Q1YQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLWFycmF5LmpzCkBAIC0wLDAg
KzEsNDcgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1wYXJz
ZS1qc29uLW1vZHVsZQorZGVzY3JpcHRpb246IENvcnJlY3RseSBwYXJzZXMgdGhlIEpTT04gcmVw
cmVzZW50YXRpb24gb2YgYW4gYXJyYXkKK2luZm86IHwKKyAgIyAxLjQgUGFyc2VKU09OTW9kdWxl
ICggc291cmNlICkKKworICBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIFBhcnNlSlNPTk1vZHVsZSB0
YWtlcyBhIHNpbmdsZSBhcmd1bWVudCBzb3VyY2Ugd2hpY2gKKyAgaXMgYSBTdHJpbmcgcmVwcmVz
ZW50aW5nIHRoZSBjb250ZW50cyBvZiBhIG1vZHVsZS4KKworICAxLiBMZXQganNvbiBiZSA/IENh
bGwoJUpTT04ucGFyc2UlLCB1bmRlZmluZWQsIMKrIHNvdXJjZSDCuykuCisgIDIuIFJldHVybiBD
cmVhdGVEZWZhdWx0RXhwb3J0U3ludGhldGljTW9kdWxlKGpzb24pLgorCisgIFRvIG1vcmUgZnVs
bHkgdmVyaWZ5IHBhcnNpbmcgY29ycmVjdG5lc3MsIHRoZSBzb3VyY2UgdGV4dCBvZiB0aGUgaW1w
b3J0ZWQKKyAgbW9kdWxlIHJlY29yZCBpbmNsdWRlcyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMg
KHNwZWNpZmljYWxseSwgYWxsIGZvdXIgZm9ybXMKKyAgb2YgSlNPTidzIHNvLWNhbGxlZCAid2hp
dGVzcGFjZSIgdG9rZW4pIGJvdGggYmVmb3JlIGFuZCBhZnRlciB0aGUgInZhbHVlLiIKK2ZsYWdz
OiBbbW9kdWxlXQorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywganNvbi1tb2R1bGVzXQor
LS0tKi8KKworaW1wb3J0IHZhbHVlIGZyb20gJy4vanNvbi12YWx1ZS1hcnJheV9GSVhUVVJFLmpz
b24nIGFzc2VydCB7IHR5cGU6ICdqc29uJyB9OworCithc3NlcnQoQXJyYXkuaXNBcnJheSh2YWx1
ZSksICd0aGUgZXhwb3J0ZWQgdmFsdWUgaXMgYW4gYXJyYXknKTsKK2Fzc2VydC5zYW1lVmFsdWUo
CisgIE9iamVjdC5nZXRQcm90b3R5cGVPZih2YWx1ZSksCisgIEFycmF5LnByb3RvdHlwZSwKKyAg
J3RoZSBleHBvcnRlZCB2YWx1ZSBpcyBub3QgYSBzdWJjbGFzcyBvZiBBcnJheScKKyk7Cithc3Nl
cnQuc2FtZVZhbHVlKE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbHVlKS5sZW5ndGgsIDcp
OworYXNzZXJ0LnNhbWVWYWx1ZSh2YWx1ZS5sZW5ndGgsIDYpOworCithc3NlcnQuc2FtZVZhbHVl
KHZhbHVlWzBdLCAtMS4yMzQ1KTsKK2Fzc2VydC5zYW1lVmFsdWUodmFsdWVbMV0sIHRydWUpOwor
YXNzZXJ0LnNhbWVWYWx1ZSh2YWx1ZVsyXSwgJ2Egc3RyaW5nIHZhbHVlJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKHZhbHVlWzNdLCBudWxsKTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuZ2V0UHJv
dG90eXBlT2YodmFsdWVbNF0pLCBPYmplY3QucHJvdG90eXBlKTsKK2Fzc2VydC5zYW1lVmFsdWUo
T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsdWVbNF0pLmxlbmd0aCwgMCk7CisKK2Fzc2Vy
dChBcnJheS5pc0FycmF5KHZhbHVlWzVdKSwgJ3RoZSBmaWZ0aCBlbGVtZW50IGlzIGFuIGFycmF5
Jyk7Cithc3NlcnQuc2FtZVZhbHVlKAorICBPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWVbNV0p
LAorICBBcnJheS5wcm90b3R5cGUsCisgICd0aGUgZmlmdGggZWxlbWVudCBpcyBub3QgYSBzdWJj
bGFzcyBvZiBBcnJheScKKyk7Cithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5nZXRPd25Qcm9wZXJ0
eU5hbWVzKHZhbHVlWzVdKS5sZW5ndGgsIDEpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtYm9vbGVhbi5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLWJvb2xlYW4uanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMGFiM2ZkMzcxZWU4MDViZjdjYzJmZGFjN2IwOGVjZWNjNjMzMTI4YgotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLWJv
b2xlYW4uanMKQEAgLTAsMCArMSwyMCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLXBhcnNlLWpzb24tbW9kdWxlCitkZXNjcmlwdGlvbjogQ29ycmVjdGx5IHBh
cnNlcyB0aGUgSlNPTiByZXByZXNlbnRhdGlvbiBvZiBhIGJvb2xlYW4KK2luZm86IHwKKyAgIyAx
LjQgUGFyc2VKU09OTW9kdWxlICggc291cmNlICkKKworICBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9u
IFBhcnNlSlNPTk1vZHVsZSB0YWtlcyBhIHNpbmdsZSBhcmd1bWVudCBzb3VyY2Ugd2hpY2gKKyAg
aXMgYSBTdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBjb250ZW50cyBvZiBhIG1vZHVsZS4KKworICAx
LiBMZXQganNvbiBiZSA/IENhbGwoJUpTT04ucGFyc2UlLCB1bmRlZmluZWQsIMKrIHNvdXJjZSDC
uykuCisgIDIuIFJldHVybiBDcmVhdGVEZWZhdWx0RXhwb3J0U3ludGhldGljTW9kdWxlKGpzb24p
LgorZmxhZ3M6IFttb2R1bGVdCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBqc29uLW1v
ZHVsZXNdCistLS0qLworCitpbXBvcnQgdmFsdWUgZnJvbSAnLi9qc29uLXZhbHVlLWJvb2xlYW5f
RklYVFVSRS5qc29uJyBhc3NlcnQgeyB0eXBlOiAnanNvbicgfTsKKworYXNzZXJ0LnNhbWVWYWx1
ZSh2YWx1ZSwgdHJ1ZSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9pbXBvcnQvanNvbi12YWx1ZS1udWxsLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvaW1wb3J0L2pzb24tdmFsdWUtbnVsbC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYjY1MWIzM2IwMDc5Yjcw
NDcwODllNTljOWEzNjQ2YzFlNmFmZjM3Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtbnVsbC5qcwpAQCAtMCwwICsxLDIw
IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vu
c2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtcGFyc2UtanNv
bi1tb2R1bGUKK2Rlc2NyaXB0aW9uOiBDb3JyZWN0bHkgcGFyc2VzIHRoZSBKU09OIHJlcHJlc2Vu
dGF0aW9uIG9mIG51bGwKK2luZm86IHwKKyAgIyAxLjQgUGFyc2VKU09OTW9kdWxlICggc291cmNl
ICkKKworICBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIFBhcnNlSlNPTk1vZHVsZSB0YWtlcyBhIHNp
bmdsZSBhcmd1bWVudCBzb3VyY2Ugd2hpY2gKKyAgaXMgYSBTdHJpbmcgcmVwcmVzZW50aW5nIHRo
ZSBjb250ZW50cyBvZiBhIG1vZHVsZS4KKworICAxLiBMZXQganNvbiBiZSA/IENhbGwoJUpTT04u
cGFyc2UlLCB1bmRlZmluZWQsIMKrIHNvdXJjZSDCuykuCisgIDIuIFJldHVybiBDcmVhdGVEZWZh
dWx0RXhwb3J0U3ludGhldGljTW9kdWxlKGpzb24pLgorZmxhZ3M6IFttb2R1bGVdCitmZWF0dXJl
czogW2ltcG9ydC1hc3NlcnRpb25zLCBqc29uLW1vZHVsZXNdCistLS0qLworCitpbXBvcnQgdmFs
dWUgZnJvbSAnLi9qc29uLXZhbHVlLW51bGxfRklYVFVSRS5qc29uJyBhc3NlcnQgeyB0eXBlOiAn
anNvbicgfTsKKworYXNzZXJ0LnNhbWVWYWx1ZSh2YWx1ZSwgbnVsbCk7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1udW1iZXIuanMg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1udW1iZXIu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZGE0Y2FkYTlkMjEyNGUyZTA4ZDEzMzg0YzZhYmM1ZDRmOTUwNWFlOQot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9q
c29uLXZhbHVlLW51bWJlci5qcwpAQCAtMCwwICsxLDIwIEBACisvLyBDb3B5cmlnaHQgKEMpIDIw
MjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKy8qLS0tCitlc2lkOiBzZWMtcGFyc2UtanNvbi1tb2R1bGUKK2Rlc2NyaXB0aW9uOiBD
b3JyZWN0bHkgcGFyc2VzIHRoZSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIGEgbnVtYmVyCitpbmZv
OiB8CisgICMgMS40IFBhcnNlSlNPTk1vZHVsZSAoIHNvdXJjZSApCisKKyAgVGhlIGFic3RyYWN0
IG9wZXJhdGlvbiBQYXJzZUpTT05Nb2R1bGUgdGFrZXMgYSBzaW5nbGUgYXJndW1lbnQgc291cmNl
IHdoaWNoCisgIGlzIGEgU3RyaW5nIHJlcHJlc2VudGluZyB0aGUgY29udGVudHMgb2YgYSBtb2R1
bGUuCisKKyAgMS4gTGV0IGpzb24gYmUgPyBDYWxsKCVKU09OLnBhcnNlJSwgdW5kZWZpbmVkLCDC
qyBzb3VyY2UgwrspLgorICAyLiBSZXR1cm4gQ3JlYXRlRGVmYXVsdEV4cG9ydFN5bnRoZXRpY01v
ZHVsZShqc29uKS4KK2ZsYWdzOiBbbW9kdWxlXQorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9u
cywganNvbi1tb2R1bGVzXQorLS0tKi8KKworaW1wb3J0IHZhbHVlIGZyb20gJy4vanNvbi12YWx1
ZS1udW1iZXJfRklYVFVSRS5qc29uJyBhc3NlcnQgeyB0eXBlOiAnanNvbicgfTsKKworYXNzZXJ0
LnNhbWVWYWx1ZSh2YWx1ZSwgLTEuMjM0NSk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1vYmplY3QuanMgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12YWx1ZS1vYmplY3QuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ODE1YWI5Zjg5NjNhNWJkMjY1N2Q2MDU2NTA1ZTRlMDhjOTY5Mjc1NgotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLW9iamVj
dC5qcwpAQCAtMCwwICsxLDY3IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2pl
Y3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitl
c2lkOiBzZWMtcGFyc2UtanNvbi1tb2R1bGUKK2Rlc2NyaXB0aW9uOiBDb3JyZWN0bHkgcGFyc2Vz
IHRoZSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9yZGluYXJ5IG9iamVjdAoraW5mbzogfAor
ICAjIDEuNCBQYXJzZUpTT05Nb2R1bGUgKCBzb3VyY2UgKQorCisgIFRoZSBhYnN0cmFjdCBvcGVy
YXRpb24gUGFyc2VKU09OTW9kdWxlIHRha2VzIGEgc2luZ2xlIGFyZ3VtZW50IHNvdXJjZSB3aGlj
aAorICBpcyBhIFN0cmluZyByZXByZXNlbnRpbmcgdGhlIGNvbnRlbnRzIG9mIGEgbW9kdWxlLgor
CisgIDEuIExldCBqc29uIGJlID8gQ2FsbCglSlNPTi5wYXJzZSUsIHVuZGVmaW5lZCwgwqsgc291
cmNlIMK7KS4KKyAgMi4gUmV0dXJuIENyZWF0ZURlZmF1bHRFeHBvcnRTeW50aGV0aWNNb2R1bGUo
anNvbikuCisKKyAgVG8gbW9yZSBmdWxseSB2ZXJpZnkgcGFyc2luZyBjb3JyZWN0bmVzcywgdGhl
IHNvdXJjZSB0ZXh0IG9mIHRoZSBpbXBvcnRlZAorICBtb2R1bGUgcmVjb3JkIGluY2x1ZGVzIG5v
bi1wcmludGFibGUgY2hhcmFjdGVycyAoc3BlY2lmaWNhbGx5LCBhbGwgZm91ciBmb3JtcworICBv
ZiBKU09OJ3Mgc28tY2FsbGVkICJ3aGl0ZXNwYWNlIiB0b2tlbikgYm90aCBiZWZvcmUgYW5kIGFm
dGVyIHRoZSAidmFsdWUuIgorZmxhZ3M6IFttb2R1bGVdCitpbmNsdWRlczogW3Byb3BlcnR5SGVs
cGVyLmpzXQorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywganNvbi1tb2R1bGVzXQorLS0t
Ki8KKworaW1wb3J0IHZhbHVlIGZyb20gJy4vanNvbi12YWx1ZS1vYmplY3RfRklYVFVSRS5qc29u
JyBhc3NlcnQgeyB0eXBlOiAnanNvbicgfTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuZ2V0
UHJvdG90eXBlT2YodmFsdWUpLCBPYmplY3QucHJvdG90eXBlKTsKK2Fzc2VydC5zYW1lVmFsdWUo
T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsdWUpLmxlbmd0aCwgNik7CisKK3ZlcmlmeVBy
b3BlcnR5KHZhbHVlLCAnbnVtYmVyJywgeworICB2YWx1ZTogLTEuMjM0NSwKKyAgd3JpdGFibGU6
IHRydWUsCisgIGVudW1lcmFibGU6IHRydWUsCisgIGNvbmZpZ3VyYWJsZTogdHJ1ZQorfSk7CisK
K3ZlcmlmeVByb3BlcnR5KHZhbHVlLCAnYm9vbGVhbicsIHsKKyAgdmFsdWU6IHRydWUsCisgIHdy
aXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVlLAorICBjb25maWd1cmFibGU6IHRydWUK
K30pOworCit2ZXJpZnlQcm9wZXJ0eSh2YWx1ZSwgJ3N0cmluZycsIHsKKyAgdmFsdWU6ICdhIHN0
cmluZyB2YWx1ZScsCisgIHdyaXRhYmxlOiB0cnVlLAorICBlbnVtZXJhYmxlOiB0cnVlLAorICBj
b25maWd1cmFibGU6IHRydWUKK30pOworCit2ZXJpZnlQcm9wZXJ0eSh2YWx1ZSwgJ251bGwnLCB7
CisgIHZhbHVlOiBudWxsLAorICB3cml0YWJsZTogdHJ1ZSwKKyAgZW51bWVyYWJsZTogdHJ1ZSwK
KyAgY29uZmlndXJhYmxlOiB0cnVlCit9KTsKKworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuZ2V0
UHJvdG90eXBlT2YodmFsdWUub2JqZWN0KSwgT2JqZWN0LnByb3RvdHlwZSk7Cithc3NlcnQuc2Ft
ZVZhbHVlKE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbHVlLm9iamVjdCkubGVuZ3RoLCAw
KTsKKworYXNzZXJ0KAorICBBcnJheS5pc0FycmF5KHZhbHVlLmFycmF5KSwgJ3RoZSB2YWx1ZSBv
ZiB0aGUgImFycmF5IiBwcm9wZXJ0eSBpcyBhbiBhcnJheScKKyk7Cithc3NlcnQuc2FtZVZhbHVl
KAorICBPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUuYXJyYXkpLAorICBBcnJheS5wcm90b3R5
cGUsCisgICd0aGUgdmFsdWUgb2YgdGhlICJhcnJheSIgcHJvcGVydHkgaXMgbm90IGEgc3ViY2xh
c3Mgb2YgQXJyYXknCispOworYXNzZXJ0LnNhbWVWYWx1ZShPYmplY3QuZ2V0T3duUHJvcGVydHlO
YW1lcyh2YWx1ZS5hcnJheSkubGVuZ3RoLCAxKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLXN0cmluZy5qcyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZhbHVlLXN0cmluZy5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5jZTBlYmNmMzIzNDAyM2VkOTE4NTQ3MjcyZDgxZmQyOWYxYjM1MGQ1Ci0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvaW1wb3J0L2pzb24tdmFsdWUtc3Ry
aW5nLmpzCkBAIC0wLDAgKzEsMjAgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJv
amVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVy
bmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0K
K2VzaWQ6IHNlYy1wYXJzZS1qc29uLW1vZHVsZQorZGVzY3JpcHRpb246IENvcnJlY3RseSBwYXJz
ZXMgdGhlIEpTT04gcmVwcmVzZW50YXRpb24gb2YgYSBzdHJpbmcKK2luZm86IHwKKyAgIyAxLjQg
UGFyc2VKU09OTW9kdWxlICggc291cmNlICkKKworICBUaGUgYWJzdHJhY3Qgb3BlcmF0aW9uIFBh
cnNlSlNPTk1vZHVsZSB0YWtlcyBhIHNpbmdsZSBhcmd1bWVudCBzb3VyY2Ugd2hpY2gKKyAgaXMg
YSBTdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBjb250ZW50cyBvZiBhIG1vZHVsZS4KKworICAxLiBM
ZXQganNvbiBiZSA/IENhbGwoJUpTT04ucGFyc2UlLCB1bmRlZmluZWQsIMKrIHNvdXJjZSDCuyku
CisgIDIuIFJldHVybiBDcmVhdGVEZWZhdWx0RXhwb3J0U3ludGhldGljTW9kdWxlKGpzb24pLgor
ZmxhZ3M6IFttb2R1bGVdCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zLCBqc29uLW1vZHVs
ZXNdCistLS0qLworCitpbXBvcnQgdmFsdWUgZnJvbSAnLi9qc29uLXZhbHVlLXN0cmluZ19GSVhU
VVJFLmpzb24nIGFzc2VydCB7IHR5cGU6ICdqc29uJyB9OworCithc3NlcnQuc2FtZVZhbHVlKHZh
bHVlLCAnYSBzdHJpbmcgdmFsdWUnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2ltcG9ydC9qc29uLXZpYS1uYW1lc3BhY2UuanMgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12aWEtbmFtZXNwYWNlLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYw
ZWVkYjM3OWJkODYzMGNiMzUyMGRkYzJjNTgwM2UxMGQ2N2VhMjIKLS0tIC9kZXYvbnVsbAorKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9pbXBvcnQvanNvbi12aWEtbmFtZXNwYWNl
LmpzCkBAIC0wLDAgKzEsMTMgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVj
dCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVk
IGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Vz
aWQ6IHNlYy1wYXJzZS1qc29uLW1vZHVsZQorZGVzY3JpcHRpb246IE1heSBiZSBpbXBvcnRlZCB2
aWEgYSBtb2R1bGUgbmFtZXNwYWNlIG9iamVjdAorZmxhZ3M6IFttb2R1bGVdCitmZWF0dXJlczog
W2ltcG9ydC1hc3NlcnRpb25zLCBqc29uLW1vZHVsZXNdCistLS0qLworCitpbXBvcnQgKiBhcyBu
cyBmcm9tICcuL2pzb24tdmlhLW5hbWVzcGFjZV9GSVhUVVJFLmpzb24nIGFzc2VydCB7IHR5cGU6
ICdqc29uJyB9OworCithc3NlcnQuc2FtZVZhbHVlKE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVz
KG5zKS5sZW5ndGgsIDEpOworYXNzZXJ0LnNhbWVWYWx1ZShucy5kZWZhdWx0LCAyNjIpOwpkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvbnVtZXJpYy9s
ZWdhY3ktb2N0YWwtaW50ZWdlci1zdHJpY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9saXRlcmFscy9udW1lcmljL2xlZ2FjeS1vY3RhbC1pbnRlZ2VyLXN0cmljdC5qcwppbmRl
eCBhMTRkZjFlNTU5Nzk3NTU3ZGUyZTlkM2VhZTg1MzEyODMwMGQwMjU4Li5mOGY5YzAyYWEyOWFk
MmI3ODdmNTUwYWJkMDViNTlkZmQ0YzE3ZTQ5IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9saXRlcmFscy9udW1lcmljL2xlZ2FjeS1vY3RhbC1pbnRlZ2VyLXN0cmlj
dC5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9udW1lcmlj
L2xlZ2FjeS1vY3RhbC1pbnRlZ2VyLXN0cmljdC5qcwpAQCAtMSw3ICsxLDcgQEAKIC8vIENvcHly
aWdodCAoQykgMjAxNiB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0
aGUgTElDRU5TRSBmaWxlLgogLyotLS0KLWVzaWQ6IHNlYy1hZGRpdGlvbmFsLXN5bnRheC1udW1l
cmljLWxpdGVyYWxzCitlc2lkOiBzZWMtbGl0ZXJhbHMtbnVtZXJpYy1saXRlcmFscwogZGVzY3Jp
cHRpb246IExlZ2FjeU9jdGFsSW50ZWdlckxpdGVyYWwgaXMgbm90IGVuYWJsZWQgaW4gc3RyaWN0
IG1vZGUgY29kZQogaW5mbzogfAogICAgIE51bWVyaWNMaXRlcmFsIDo6CkBAIC0xMSw5ICsxMSwx
NyBAQAogICAgICAgSGV4SW50ZWdlckxpdGVyYWwKICAgICAgIExlZ2FjeU9jdGFsSW50ZWdlckxp
dGVyYWwKIAotICAgICBMZWdhY3lPY3RhbEludGVnZXJMaXRlcmFsIDo6Ci0gICAgICAgMCBPY3Rh
bERpZ2l0Ci0gICAgICAgTGVnYWN5T2N0YWxJbnRlZ2VyTGl0ZXJhbCBPY3RhbERpZ2l0CisgICAg
TGVnYWN5T2N0YWxJbnRlZ2VyTGl0ZXJhbCA6OgorICAgICAgMCBPY3RhbERpZ2l0CisgICAgICBM
ZWdhY3lPY3RhbEludGVnZXJMaXRlcmFsIE9jdGFsRGlnaXQKKworICAgICMjIDEyLjguMy4xIFN0
YXRpYyBTZW1hbnRpY3M6IEVhcmx5IEVycm9ycworCisgICAgTnVtZXJpY0xpdGVyYWwgOjogTGVn
YWN5T2N0YWxJbnRlZ2VyTGl0ZXJhbAorICAgIERlY2ltYWxJbnRlZ2VyTGl0ZXJhbCA6OiBOb25P
Y3RhbERlY2ltYWxJbnRlZ2VyTGl0ZXJhbAorCisgICAgLSBJdCBpcyBhIFN5bnRheCBFcnJvciBp
ZiB0aGUgc291cmNlIGNvZGUgbWF0Y2hpbmcgdGhpcyBwcm9kdWN0aW9uIGlzCisgICAgICBzdHJp
Y3QgbW9kZSBjb2RlLgogZmxhZ3M6IFtvbmx5U3RyaWN0XQogbmVnYXRpdmU6CiAgIHBoYXNlOiBw
YXJzZQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMv
bnVtZXJpYy9sZWdhY3ktb2N0YWwtaW50ZWdlci5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbGVnYWN5LW9jdGFsLWludGVnZXIuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uY2QzYmUzYjExMjU2YzE5OTBhNDk3YWIzYzZiOWQwNzhjNzExYWMwNwotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbGVn
YWN5LW9jdGFsLWludGVnZXIuanMKQEAgLTAsMCArMSw0OSBAQAorLy8gQ29weXJpZ2h0IChDKSAy
MDE2IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlz
IGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNF
IGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWxpdGVyYWxzLW51bWVyaWMtbGl0ZXJhbHMKK2Rlc2Ny
aXB0aW9uOiBNYXRoZW1hdGljYWwgdmFsdWUgZm9yIExlZ2FjeU9jdGFsSW50ZWdlckxpdGVyYWwK
K2luZm86IHwKKyAgICBOdW1lcmljTGl0ZXJhbCA6OgorICAgICAgRGVjaW1hbExpdGVyYWwKKyAg
ICAgIEJpbmFyeUludGVnZXJMaXRlcmFsCisgICAgICBPY3RhbEludGVnZXJMaXRlcmFsCisgICAg
ICBIZXhJbnRlZ2VyTGl0ZXJhbAorICAgICAgTGVnYWN5T2N0YWxJbnRlZ2VyTGl0ZXJhbAorCisg
ICAgIExlZ2FjeU9jdGFsSW50ZWdlckxpdGVyYWwgOjoKKyAgICAgICAwIE9jdGFsRGlnaXQKKyAg
ICAgICBMZWdhY3lPY3RhbEludGVnZXJMaXRlcmFsIE9jdGFsRGlnaXQKK2ZsYWdzOiBbbm9TdHJp
Y3RdCistLS0qLworCisvLyBMZWdhY3lPY3RhbEludGVnZXJMaXRlcmFsIDo6CisvLyAgIDAgT2N0
YWxEaWdpdAorYXNzZXJ0LnNhbWVWYWx1ZSgwMCwgMCwgJzAwJyk7Cithc3NlcnQuc2FtZVZhbHVl
KDAxLCAxLCAnMDEnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDIsIDIsICcwMicpOworYXNzZXJ0LnNh
bWVWYWx1ZSgwMywgMywgJzAzJyk7Cithc3NlcnQuc2FtZVZhbHVlKDA0LCA0LCAnMDQnKTsKK2Fz
c2VydC5zYW1lVmFsdWUoMDUsIDUsICcwNScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNiwgNiwgJzA2
Jyk7Cithc3NlcnQuc2FtZVZhbHVlKDA3LCA3LCAnMDcnKTsKKworLy8gTGVnYWN5T2N0YWxJbnRl
Z2VyTGl0ZXJhbCA6OgorLy8gICBMZWdhY3lPY3RhbEludGVnZXJMaXRlcmFsIE9jdGFsRGlnaXQK
K2Fzc2VydC5zYW1lVmFsdWUoMDAwLCAwLCAnMDAwJyk7Cithc3NlcnQuc2FtZVZhbHVlKDAwMSwg
MSwgJzAwMScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwMDIsIDIsICcwMDInKTsKK2Fzc2VydC5zYW1l
VmFsdWUoMDAzLCAzLCAnMDAzJyk7Cithc3NlcnQuc2FtZVZhbHVlKDAwNCwgNCwgJzAwNCcpOwor
YXNzZXJ0LnNhbWVWYWx1ZSgwMDUsIDUsICcwMDUnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDA2LCA2
LCAnMDA2Jyk7Cithc3NlcnQuc2FtZVZhbHVlKDAwNywgNywgJzAwNycpOworCithc3NlcnQuc2Ft
ZVZhbHVlKDA3MCwgNTYpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzEsIDU3KTsKK2Fzc2VydC5zYW1l
VmFsdWUoMDcyLCA1OCk7Cithc3NlcnQuc2FtZVZhbHVlKDA3MywgNTkpOworYXNzZXJ0LnNhbWVW
YWx1ZSgwNzQsIDYwKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc1LCA2MSk7Cithc3NlcnQuc2FtZVZh
bHVlKDA3NiwgNjIpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzcsIDYzKTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbm9uLW9jdGFsLWRl
Y2ltYWwtaW50ZWdlci1zdHJpY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9s
aXRlcmFscy9udW1lcmljL25vbi1vY3RhbC1kZWNpbWFsLWludGVnZXItc3RyaWN0LmpzCmluZGV4
IGQ3NTcwZjYxMjM5N2JiODcxNmJmZTRmNWRjMzFkZTJlYWZhZDhiN2UuLjQ0NmY4ODUzMDVhOTI2
OWI5Y2Q3YTUzOTViOTJmNzY1YTY5MjhmZTMgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL251bWVyaWMvbm9uLW9jdGFsLWRlY2ltYWwtaW50ZWdlci1z
dHJpY3QuanMKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvbnVt
ZXJpYy9ub24tb2N0YWwtZGVjaW1hbC1pbnRlZ2VyLXN0cmljdC5qcwpAQCAtMSw3ICsxLDcgQEAK
IC8vIENvcHlyaWdodCAoQykgMjAxNiB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBm
b3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgogLyotLS0KLWVzaWQ6IHNlYy1hZGRpdGlvbmFsLXN5
bnRheC1udW1lcmljLWxpdGVyYWxzCitlc2lkOiBzZWMtbGl0ZXJhbHMtbnVtZXJpYy1saXRlcmFs
cwogZGVzY3JpcHRpb246IE5vbk9jdGFsRGVjaW1hbEludGVnZXJMaXRlcmFsIGlzIG5vdCBlbmFi
bGVkIGluIHN0cmljdCBtb2RlIGNvZGUKIGluZm86IHwKICAgICAgRGVjaW1hbEludGVnZXJMaXRl
cmFsIDo6CkBAIC0yMCw2ICsyMCwxNCBAQAogCiAgICAgIE5vbk9jdGFsRGlnaXQgOjogb25lIG9m
CiAgICAgICAgOCA5CisKKyAgICAgIyMgMTIuOC4zLjEgU3RhdGljIFNlbWFudGljczogRWFybHkg
RXJyb3JzCisKKyAgICAgTnVtZXJpY0xpdGVyYWwgOjogTGVnYWN5T2N0YWxJbnRlZ2VyTGl0ZXJh
bAorICAgICBEZWNpbWFsSW50ZWdlckxpdGVyYWwgOjogTm9uT2N0YWxEZWNpbWFsSW50ZWdlckxp
dGVyYWwKKworICAgICAtIEl0IGlzIGEgU3ludGF4IEVycm9yIGlmIHRoZSBzb3VyY2UgY29kZSBt
YXRjaGluZyB0aGlzIHByb2R1Y3Rpb24gaXMKKyAgICAgICBzdHJpY3QgbW9kZSBjb2RlLgogZmxh
Z3M6IFtvbmx5U3RyaWN0XQogbmVnYXRpdmU6CiAgIHBoYXNlOiBwYXJzZQpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvbnVtZXJpYy9ub24tb2N0YWwt
ZGVjaW1hbC1pbnRlZ2VyLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJh
bHMvbnVtZXJpYy9ub24tb2N0YWwtZGVjaW1hbC1pbnRlZ2VyLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY5MDVi
YTk4N2Y2NWMxYTVlZGQ5OGY2ODZjMWY5Y2QzZmY5MWJiMTgKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9udW1lcmljL25vbi1vY3RhbC1k
ZWNpbWFsLWludGVnZXIuanMKQEAgLTAsMCArMSwxMTkgQEAKKy8vIENvcHlyaWdodCAoQykgMjAx
NiB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBj
b2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLyotLS0KK2VzaWQ6IHNlYy1saXRlcmFscy1udW1lcmljLWxpdGVyYWxzCitkZXNjcmlw
dGlvbjogTWF0aGVtYXRpY2FsIHZhbHVlIGZvciBOb25PY3RhbERlY2ltYWxJbnRlZ2VyTGl0ZXJh
bAoraW5mbzogfAorICAgICBEZWNpbWFsSW50ZWdlckxpdGVyYWwgOjoKKyAgICAgICAwCisgICAg
ICAgTm9uWmVyb0RpZ2l0IERlY2ltYWxEaWdpdHNbb3B0XQorICAgICAgIE5vbk9jdGFsRGVjaW1h
bEludGVnZXJMaXRlcmFsCisKKyAgICAgTm9uT2N0YWxEZWNpbWFsSW50ZWdlckxpdGVyYWwgOjoK
KyAgICAgICAwIE5vbk9jdGFsRGlnaXQKKyAgICAgICBMZWdhY3lPY3RhbExpa2VEZWNpbWFsSW50
ZWdlckxpdGVyYWwgTm9uT2N0YWxEaWdpdAorICAgICAgIE5vbk9jdGFsRGVjaW1hbEludGVnZXJM
aXRlcmFsIERlY2ltYWxEaWdpdAorCisgICAgIExlZ2FjeU9jdGFsTGlrZURlY2ltYWxJbnRlZ2Vy
TGl0ZXJhbCA6OgorICAgICAgIDAgT2N0YWxEaWdpdAorICAgICAgIExlZ2FjeU9jdGFsTGlrZURl
Y2ltYWxJbnRlZ2VyTGl0ZXJhbCBPY3RhbERpZ2l0CisKKyAgICAgTm9uT2N0YWxEaWdpdCA6OiBv
bmUgb2YKKyAgICAgICA4IDkKK2ZsYWdzOiBbbm9TdHJpY3RdCistLS0qLworCisvLyBOb25PY3Rh
bERlY2ltYWxJbnRlZ2VyTGl0ZXJhbCA6OgorLy8gICAwIE5vbk9jdGFsRGlnaXQKK2Fzc2VydC5z
YW1lVmFsdWUoMDgsIDgsICcwOCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwOSwgOSwgJzA5Jyk7CisK
Ky8vIE5vbk9jdGFsRGVjaW1hbEludGVnZXJMaXRlcmFsIDo6CisvLyAgIExlZ2FjeU9jdGFsTGlr
ZURlY2ltYWxJbnRlZ2VyTGl0ZXJhbCBOb25PY3RhbERpZ2l0Cithc3NlcnQuc2FtZVZhbHVlKDAw
OCwgOCwgJzAwOCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwMTgsIDE4LCAnMDE4Jyk7Cithc3NlcnQu
c2FtZVZhbHVlKDAyOCwgMjgsICcwMjgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDM4LCAzOCwgJzAz
OCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNDgsIDQ4LCAnMDQ4Jyk7Cithc3NlcnQuc2FtZVZhbHVl
KDA1OCwgNTgsICcwNTgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDY4LCA2OCwgJzA2OCcpOworYXNz
ZXJ0LnNhbWVWYWx1ZSgwNzgsIDc4LCAnMDc4Jyk7Cithc3NlcnQuc2FtZVZhbHVlKDA4OCwgODgs
ICcwODgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDk4LCA5OCwgJzA5OCcpOworYXNzZXJ0LnNhbWVW
YWx1ZSgwNzA4LCA3MDgsICc3MDgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDcxOCwgNzE4LCAnNzE4
Jyk7Cithc3NlcnQuc2FtZVZhbHVlKDA3MjgsIDcyOCwgJzcyOCcpOworYXNzZXJ0LnNhbWVWYWx1
ZSgwNzM4LCA3MzgsICc3MzgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc0OCwgNzQ4LCAnNzQ4Jyk7
Cithc3NlcnQuc2FtZVZhbHVlKDA3NTgsIDc1OCwgJzc1OCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgw
NzY4LCA3NjgsICc3NjgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc3OCwgNzc4LCAnNzc4Jyk7Cith
c3NlcnQuc2FtZVZhbHVlKDA3ODgsIDc4OCwgJzc4OCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzk4
LCA3OTgsICc3OTgnKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgwMDksIDksICcwMDknKTsKK2Fzc2Vy
dC5zYW1lVmFsdWUoMDE5LCAxOSwgJzAxOScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwMjksIDI5LCAn
MDI5Jyk7Cithc3NlcnQuc2FtZVZhbHVlKDAzOSwgMzksICcwMzknKTsKK2Fzc2VydC5zYW1lVmFs
dWUoMDQ5LCA0OSwgJzA0OScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNTksIDU5LCAnMDU5Jyk7Cith
c3NlcnQuc2FtZVZhbHVlKDA2OSwgNjksICcwNjknKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc5LCA3
OSwgJzA3OScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwODksIDg5LCAnMDg5Jyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKDA5OSwgOTksICcwOTknKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDcwOSwgNzA5LCAnMDcw
OScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzE5LCA3MTksICcwNzE5Jyk7Cithc3NlcnQuc2FtZVZh
bHVlKDA3MjksIDcyOSwgJzA3MjknKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDczOSwgNzM5LCAnMDcz
OScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzQ5LCA3NDksICcwNzQ5Jyk7Cithc3NlcnQuc2FtZVZh
bHVlKDA3NTksIDc1OSwgJzA3NTknKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc2OSwgNzY5LCAnMDc2
OScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzc5LCA3NzksICcwNzc5Jyk7Cithc3NlcnQuc2FtZVZh
bHVlKDA3ODksIDc4OSwgJzA3ODknKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc5OSwgNzk5LCAnMDc5
OScpOworCisvLyBOb25PY3RhbERlY2ltYWxJbnRlZ2VyTGl0ZXJhbCA6OgorLy8gICBOb25PY3Rh
bERlY2ltYWxJbnRlZ2VyTGl0ZXJhbCBEZWNpbWFsRGlnaXQKK2Fzc2VydC5zYW1lVmFsdWUoMDgw
LCA4MCwgJzA4MCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwODEsIDgxLCAnMDgxJyk7Cithc3NlcnQu
c2FtZVZhbHVlKDA4MiwgODIsICcwODInKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDgzLCA4MywgJzA4
MycpOworYXNzZXJ0LnNhbWVWYWx1ZSgwODQsIDg0LCAnMDg0Jyk7Cithc3NlcnQuc2FtZVZhbHVl
KDA4NSwgODUsICcwODUnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDg2LCA4NiwgJzA4NicpOworYXNz
ZXJ0LnNhbWVWYWx1ZSgwODcsIDg3LCAnMDg3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKDA4OCwgODgs
ICcwODgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDg5LCA4OSwgJzA4OScpOworCithc3NlcnQuc2Ft
ZVZhbHVlKDA3ODAsIDc4MCwgJzA3ODAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc4MSwgNzgxLCAn
MDc4MScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzgyLCA3ODIsICcwNzgyJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKDA3ODMsIDc4MywgJzA3ODMnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc4NCwgNzg0LCAn
MDc4NCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzg1LCA3ODUsICcwNzg1Jyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKDA3ODYsIDc4NiwgJzA3ODYnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDc4NywgNzg3LCAn
MDc4NycpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzg4LCA3ODgsICcwNzg4Jyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKDA3ODksIDc4OSwgJzA3ODknKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgwOTAsIDkwLCAn
MDkwJyk7Cithc3NlcnQuc2FtZVZhbHVlKDA5MSwgOTEsICcwOTEnKTsKK2Fzc2VydC5zYW1lVmFs
dWUoMDkyLCA5MiwgJzA5MicpOworYXNzZXJ0LnNhbWVWYWx1ZSgwOTMsIDkzLCAnMDkzJyk7Cith
c3NlcnQuc2FtZVZhbHVlKDA5NCwgOTQsICcwOTQnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDk1LCA5
NSwgJzA5NScpOworYXNzZXJ0LnNhbWVWYWx1ZSgwOTYsIDk2LCAnMDk2Jyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKDA5NywgOTcsICcwOTcnKTsKK2Fzc2VydC5zYW1lVmFsdWUoMDk4LCA5OCwgJzA5OCcp
OworYXNzZXJ0LnNhbWVWYWx1ZSgwOTksIDk5LCAnMDk5Jyk7CisKK2Fzc2VydC5zYW1lVmFsdWUo
MDc5MCwgNzkwLCAnMDc5MCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzkxLCA3OTEsICcwNzkxJyk7
Cithc3NlcnQuc2FtZVZhbHVlKDA3OTIsIDc5MiwgJzA3OTInKTsKK2Fzc2VydC5zYW1lVmFsdWUo
MDc5MywgNzkzLCAnMDc5MycpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzk0LCA3OTQsICcwNzk0Jyk7
Cithc3NlcnQuc2FtZVZhbHVlKDA3OTUsIDc5NSwgJzA3OTUnKTsKK2Fzc2VydC5zYW1lVmFsdWUo
MDc5NiwgNzk2LCAnMDc5NicpOworYXNzZXJ0LnNhbWVWYWx1ZSgwNzk3LCA3OTcsICcwNzk3Jyk7
Cithc3NlcnQuc2FtZVZhbHVlKDA3OTgsIDc5OCwgJzA3OTgnKTsKK2Fzc2VydC5zYW1lVmFsdWUo
MDc5OSwgNzk5LCAnMDc5OScpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTEt
c3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS0xLXN0cmlj
dC1leHBsaWNpdC1wcmFnbWEuanMKaW5kZXggNjU5ZDg4ZTJhMWRjZGQxZDNhMWYyNTk1ZmYwMTQ5
MzU3ODk1NWZiMS4uMWVhMzdiYjc1YzY4MjkzZDkxNmRhMDBiM2FjNzk0ZTQxNTIxM2EyMyAxMDA2
NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xl
Z2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTEtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5q
cworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVn
YWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtMS1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpz
CkBAIC0xLDcgKzEsNyBAQAogLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbiBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCiAvKi0tLQotZXNpZDogc2VjLWFk
ZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRlcmFscworZXNpZDogc2VjLWxpdGVyYWxzLXN0cmlu
Zy1saXRlcmFscwogZGVzY3JpcHRpb246ID4KICAgU3RyaW5nIExpdGVyYWxzIGV4dGVuc2lvbnMg
ZGlzYWxsb3dlZCBpbiBzdHJpY3QgbW9kZTsgWmVyb1RvVGhyZWUgMQogaW5mbzogfApkaWZmIC0t
Z2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2Fj
eS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTItc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9u
LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS0yLXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMKaW5kZXgg
NDM0ZjNiOTU0Yzk3MjQ2ODFmMWJiMTM1N2FhZWQyMjdlYmM5YTgwNy4uMGIxNDYyNDgzMDI0YWRi
Mzk2MTIyNTBiZWNhOTU1MWU4MDBlMzg5MSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVl
bmNlLTItc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVu
Y2UtMi1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCkBAIC0xLDcgKzEsNyBAQAogLy8gQ29weXJp
Z2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbiBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLyBU
aGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNF
TlNFIGZpbGUuCiAvKi0tLQotZXNpZDogc2VjLWFkZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRl
cmFscworZXNpZDogc2VjLWxpdGVyYWxzLXN0cmluZy1saXRlcmFscwogZGVzY3JpcHRpb246ID4K
ICAgU3RyaW5nIExpdGVyYWxzIGV4dGVuc2lvbnMgZGlzYWxsb3dlZCBpbiBzdHJpY3QgbW9kZTsg
WmVyb1RvVGhyZWUgMgogaW5mbzogfApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3Qv
bGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNl
LTMtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS0zLXN0
cmljdC1leHBsaWNpdC1wcmFnbWEuanMKaW5kZXggNjhjNTRhOWExODI0YjMwM2ZhOTVkOGQ5NzJm
ZjFlMDRkYmVlMzZiYi4uZTExOGJhNTFmMjdiOGJjZDY4ZjhiNWZmNzZlOGE4ZmNiZGM1YTNlNiAx
MDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5n
L2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTMtc3RyaWN0LWV4cGxpY2l0LXByYWdt
YS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcv
bGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtMy1zdHJpY3QtZXhwbGljaXQtcHJhZ21h
LmpzCkBAIC0xLDcgKzEsNyBAQAogLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbiBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhl
IEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCiAvKi0tLQotZXNpZDogc2Vj
LWFkZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRlcmFscworZXNpZDogc2VjLWxpdGVyYWxzLXN0
cmluZy1saXRlcmFscwogZGVzY3JpcHRpb246ID4KICAgU3RyaW5nIExpdGVyYWxzIGV4dGVuc2lv
bnMgZGlzYWxsb3dlZCBpbiBzdHJpY3QgbW9kZTsgWmVyb1RvVGhyZWUgMwogaW5mbzogfApkaWZm
IC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xl
Z2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTQtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5q
cyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3kt
bm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS00LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMKaW5k
ZXggNzYwYzk2YmJjY2JkZjdmMzc5ODcyODgyYmE5MzdmZWZjNmE2ZmQ2NC4uZjViMDA0Mjc5MmNm
Yzk5OGRiN2I1OWVhYTA0ZGIyMmM5M2RkYjhlYiAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNl
cXVlbmNlLTQtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2Vx
dWVuY2UtNC1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCkBAIC0xLDcgKzEsNyBAQAogLy8gQ29w
eXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbiBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAv
LyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCiAvKi0tLQotZXNpZDogc2VjLWFkZGl0aW9uYWwtc3ludGF4LXN0cmluZy1s
aXRlcmFscworZXNpZDogc2VjLWxpdGVyYWxzLXN0cmluZy1saXRlcmFscwogZGVzY3JpcHRpb246
ID4KICAgU3RyaW5nIExpdGVyYWxzIGV4dGVuc2lvbnMgZGlzYWxsb3dlZCBpbiBzdHJpY3QgbW9k
ZTsgRm91clRvU2V2ZW4gNAogaW5mbzogfApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rl
c3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVl
bmNlLTUtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS01
LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMKaW5kZXggNzU0ZjkwM2QzNGE2NTVlNDhjYmU3MDBi
YmIyYmU1ZTk4OTQ4ZGU1Zi4uMjZlMTU5NTUyYzY5OTcxNTZmZDE2ZDU5Njk0MTZhMzZmZTM4MzJi
ZiAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3Ry
aW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTUtc3RyaWN0LWV4cGxpY2l0LXBy
YWdtYS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJp
bmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtNS1zdHJpY3QtZXhwbGljaXQtcHJh
Z21hLmpzCkBAIC0xLDcgKzEsNyBAQAogLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJv
biBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkg
dGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCiAvKi0tLQotZXNpZDog
c2VjLWFkZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRlcmFscworZXNpZDogc2VjLWxpdGVyYWxz
LXN0cmluZy1saXRlcmFscwogZGVzY3JpcHRpb246ID4KICAgU3RyaW5nIExpdGVyYWxzIGV4dGVu
c2lvbnMgZGlzYWxsb3dlZCBpbiBzdHJpY3QgbW9kZTsgRm91clRvU2V2ZW4gNQogaW5mbzogfApk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5n
L2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTYtc3RyaWN0LWV4cGxpY2l0LXByYWdt
YS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdh
Y3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS02LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMK
aW5kZXggN2EyZWIwNmEyMGRkMzJiMjllYjUzMDI5NDFjY2M1NjgyZTBkZDM1MS4uZmZhNGQxNGM2
ZmExZTE3MDgwZGE3ODQ2NGVlZjliMzlhYWJiZGJjZSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBl
LXNlcXVlbmNlLTYtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcworKysgYi9KU1Rlc3RzL3Rlc3Qy
NjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUt
c2VxdWVuY2UtNi1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCkBAIC0xLDcgKzEsNyBAQAogLy8g
Q29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2FsZHJvbiBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCiAvKi0tLQotZXNpZDogc2VjLWFkZGl0aW9uYWwtc3ludGF4LXN0cmlu
Zy1saXRlcmFscworZXNpZDogc2VjLWxpdGVyYWxzLXN0cmluZy1saXRlcmFscwogZGVzY3JpcHRp
b246ID4KICAgU3RyaW5nIExpdGVyYWxzIGV4dGVuc2lvbnMgZGlzYWxsb3dlZCBpbiBzdHJpY3Qg
bW9kZTsgRm91clRvU2V2ZW4gNgogaW5mbzogfApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYy
L3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNl
cXVlbmNlLTctc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0
L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5j
ZS03LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMKaW5kZXggMmU2NTQ5OGU1ODVhN2NjNGI5MjQw
YjNkOTU0NzZiMzE1YTU0YjhlMi4uOTgxNjI1ZDAzZWRmMzc4ZjBhMjc0ODlhZDMyNTU5YjlkNWQx
ZDkyYSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMv
c3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTctc3RyaWN0LWV4cGxpY2l0
LXByYWdtYS5qcworKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9z
dHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtNy1zdHJpY3QtZXhwbGljaXQt
cHJhZ21hLmpzCkBAIC0xLDcgKzEsNyBAQAogLy8gQ29weXJpZ2h0IChDKSAyMDIwIFJpY2sgV2Fs
ZHJvbiBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQg
YnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCiAvKi0tLQotZXNp
ZDogc2VjLWFkZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRlcmFscworZXNpZDogc2VjLWxpdGVy
YWxzLXN0cmluZy1saXRlcmFscwogZGVzY3JpcHRpb246ID4KICAgU3RyaW5nIExpdGVyYWxzIGV4
dGVuc2lvbnMgZGlzYWxsb3dlZCBpbiBzdHJpY3QgbW9kZTsgRm91clRvU2V2ZW4gNwogaW5mbzog
fApkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3Ry
aW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTgtbm9uLXN0cmljdC5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9j
dGFsLWVzY2FwZS1zZXF1ZW5jZS04LW5vbi1zdHJpY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODg4NjMxN2Mw
MzQ5ZWYwMDI0NWVlYTc5NTY2MDQzNDNkZjA2YmNjYQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFs
LWVzY2FwZS1zZXF1ZW5jZS04LW5vbi1zdHJpY3QuanMKQEAgLTAsMCArMSwxOSBAQAorLy8gQ29w
eXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGlu
IHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZXNpZDogc2VjLWxpdGVyYWxzLXN0cmluZy1saXRl
cmFscworZGVzY3JpcHRpb246IExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UgaXMgbm90IGF2YWls
YWJsZSBpbiBub24tc3RyaWN0IGNvZGUgLSA4CitpbmZvOiB8CisgICAgRXNjYXBlU2VxdWVuY2Ug
OjoKKyAgICAgIENoYXJhY3RlckVzY2FwZVNlcXVlbmNlCisgICAgICBMZWdhY3lPY3RhbEVzY2Fw
ZVNlcXVlbmNlCisgICAgICBOb25PY3RhbERlY2ltYWxFc2NhcGVTZXF1ZW5jZQorICAgICAgSGV4
RXNjYXBlU2VxdWVuY2UKKyAgICAgIFVuaWNvZGVFc2NhcGVTZXF1ZW5jZQorCisgICAgTm9uT2N0
YWxEZWNpbWFsRXNjYXBlU2VxdWVuY2UgOjogb25lIG9mCisgICAgICA4IDkKK2ZsYWdzOiBbbm9T
dHJpY3RdCistLS0qLworCithc3NlcnQuc2FtZVZhbHVlKCdcOCcsICc4Jyk7CmRpZmYgLS1naXQg
YS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5v
bi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtOC1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzIGIvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0
YWwtZXNjYXBlLXNlcXVlbmNlLTgtc3RyaWN0LWV4cGxpY2l0LXByYWdtYS5qcwppbmRleCBmMmIx
OWUzNTVlYjA2YWNmYzMzYTU2YWRmNDlkYzQ1ZWM1Yzg3Y2JhLi4zNWFjZTgzMjg5OTgyMmRkMjE0
NTM5MmUwNDVmMGZhZWI2NWM4YzNhIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2Ut
OC1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS04
LXN0cmljdC1leHBsaWNpdC1wcmFnbWEuanMKQEAgLTEsNyArMSw3IEBACiAvLyBDb3B5cmlnaHQg
KEMpIDIwMjAgUmljayBXYWxkcm9uIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIC8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KIC8qLS0tCi1lc2lkOiBzZWMtYWRkaXRpb25hbC1zeW50YXgtc3RyaW5nLWxpdGVyYWxz
Citlc2lkOiBzZWMtbGl0ZXJhbHMtc3RyaW5nLWxpdGVyYWxzCiBkZXNjcmlwdGlvbjogPgogICBT
dHJpbmcgTGl0ZXJhbHMgZXh0ZW5zaW9ucyBkaXNhbGxvd2VkIGluIHN0cmljdCBtb2RlOyBOb25P
Y3RhbERlY2ltYWxFc2NhcGVTZXF1ZW5jZSA4CiBpbmZvOiB8CmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1l
c2NhcGUtc2VxdWVuY2UtOC1zdHJpY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtOC1zdHJp
Y3QuanMKaW5kZXggNDkyZjBlMjQ4MDY5ZDBhOTJkZWJjMDY0NTQ1ZGIyYzhmZjM5N2UyMi4uMzkx
N2U2MzRlNzEwYWI4MmRkZDgxYmUxNTIzNWRlNGZhZDE5NzU2MSAxMDA2NDQKLS0tIGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwt
ZXNjYXBlLXNlcXVlbmNlLTgtc3RyaWN0LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xh
bmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS04
LXN0cmljdC5qcwpAQCAtMiwxMiArMiwyNCBAQAogLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5
IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgogLyotLS0KIGVzaWQ6
IHNlYy1saXRlcmFscy1zdHJpbmctbGl0ZXJhbHMKLWRlc2NyaXB0aW9uOiA+Ci0gICAgTGVnYWN5
T2N0YWxFc2NhcGVTZXF1ZW5jZSBpcyBub3QgZW5hYmxlZCBpbiBzdHJpY3QgbW9kZSBjb2RlCi0g
ICAgKHJlZ2FyZGxlc3Mgb2YgdGhlIHByZXNlbmNlIG9mIEFubmV4IEIpCitkZXNjcmlwdGlvbjog
TGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5jZSBpcyBub3QgZW5hYmxlZCBpbiBzdHJpY3QgbW9kZSBj
b2RlIC0gOAogaW5mbzogfAotICAgIEEgY29uZm9ybWluZyBpbXBsZW1lbnRhdGlvbiwgd2hlbiBw
cm9jZXNzaW5nIHN0cmljdCBtb2RlIGNvZGUsIG11c3Qgbm90IGV4dGVuZCB0aGUKLSAgICBzeW50
YXggb2YgRXNjYXBlU2VxdWVuY2UgdG8gaW5jbHVkZSBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNl
IGFzIGRlc2NyaWJlZCBpbiBCLjEuMi4KKyAgRXNjYXBlU2VxdWVuY2UgOjoKKyAgICBDaGFyYWN0
ZXJFc2NhcGVTZXF1ZW5jZQorICAgIExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UKKyAgICBOb25P
Y3RhbERlY2ltYWxFc2NhcGVTZXF1ZW5jZQorICAgIEhleEVzY2FwZVNlcXVlbmNlCisgICAgVW5p
Y29kZUVzY2FwZVNlcXVlbmNlCisKKyAgTm9uT2N0YWxEZWNpbWFsRXNjYXBlU2VxdWVuY2UgOjog
b25lIG9mCisgICAgOCA5CisKKyAgIyMgMTIuOC40LjEgU3RhdGljIFNlbWFudGljczogRWFybHkg
RXJyb3JzCisKKyAgRXNjYXBlU2VxdWVuY2UgOjogTm9uT2N0YWxEZWNpbWFsRXNjYXBlU2VxdWVu
Y2UKKworICAtIEl0IGlzIGEgU3ludGF4IEVycm9yIGlmIHRoZSBzb3VyY2UgY29kZSBtYXRjaGlu
ZyB0aGlzIHByb2R1Y3Rpb24gaXMgc3RyaWN0CisgICAgbW9kZSBjb2RlLgogZmxhZ3M6IFtvbmx5
U3RyaWN0XQogbmVnYXRpdmU6CiAgIHBoYXNlOiBwYXJzZQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNj
YXBlLXNlcXVlbmNlLTktbm9uLXN0cmljdC5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1
YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LW5v
bi1zdHJpY3QuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjhhZDBhNzE2NDc3MTU1YjIzOTljNzI2NTUyOTUyNDJk
OWE4ZjAwMwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LW5vbi1z
dHJpY3QuanMKQEAgLTAsMCArMSwxOSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZXNpZDogc2VjLWxpdGVyYWxzLXN0cmluZy1saXRlcmFscworZGVzY3JpcHRpb246IExlZ2Fj
eU9jdGFsRXNjYXBlU2VxdWVuY2UgaXMgbm90IGF2YWlsYWJsZSBpbiBub24tc3RyaWN0IGNvZGUg
LSA5CitpbmZvOiB8CisgICAgRXNjYXBlU2VxdWVuY2UgOjoKKyAgICAgIENoYXJhY3RlckVzY2Fw
ZVNlcXVlbmNlCisgICAgICBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlCisgICAgICBOb25PY3Rh
bERlY2ltYWxFc2NhcGVTZXF1ZW5jZQorICAgICAgSGV4RXNjYXBlU2VxdWVuY2UKKyAgICAgIFVu
aWNvZGVFc2NhcGVTZXF1ZW5jZQorCisgICAgTm9uT2N0YWxEZWNpbWFsRXNjYXBlU2VxdWVuY2Ug
Ojogb25lIG9mCisgICAgICA4IDkKK2ZsYWdzOiBbbm9TdHJpY3RdCistLS0qLworCithc3NlcnQu
c2FtZVZhbHVlKCdcOScsICc5Jyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2Ut
OS1zdHJpY3QtZXhwbGljaXQtcHJhZ21hLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3Vh
Z2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTktc3Ry
aWN0LWV4cGxpY2l0LXByYWdtYS5qcwppbmRleCBjYzk0NWU5ZjRjMzM0ZTkxZDQ4ZjM4ZGM5MmNi
OWZiODc5NWEyOWJiLi41ODU4OTUwMTM1Njc4YWQ3YTBhNTgzYjFiYWI5N2UzZmM0NWI2MDI0IDEw
MDY0NAotLS0gYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcv
bGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtOS1zdHJpY3QtZXhwbGljaXQtcHJhZ21h
LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9s
ZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LXN0cmljdC1leHBsaWNpdC1wcmFnbWEu
anMKQEAgLTEsNyArMSw3IEBACiAvLyBDb3B5cmlnaHQgKEMpIDIwMjAgUmljayBXYWxkcm9uIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIC8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KIC8qLS0tCi1lc2lkOiBzZWMt
YWRkaXRpb25hbC1zeW50YXgtc3RyaW5nLWxpdGVyYWxzCitlc2lkOiBzZWMtbGl0ZXJhbHMtc3Ry
aW5nLWxpdGVyYWxzCiBkZXNjcmlwdGlvbjogPgogICBTdHJpbmcgTGl0ZXJhbHMgZXh0ZW5zaW9u
cyBkaXNhbGxvd2VkIGluIHN0cmljdCBtb2RlOyBOb25PY3RhbERlY2ltYWxFc2NhcGVTZXF1ZW5j
ZSA5CiBpbmZvOiB8CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9s
aXRlcmFscy9zdHJpbmcvbGVnYWN5LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtOS1zdHJpY3Qu
anMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5
LW5vbi1vY3RhbC1lc2NhcGUtc2VxdWVuY2UtOS1zdHJpY3QuanMKaW5kZXggYmVkNTI3ZmJlOTdk
YjRiZjJiOWM0M2JlMmEzZjFmNDgwN2I1MDg3NS4uYzY3N2MzYzUzYWU3MGFmMmE1YWY3NWI1Yjg5
Nzg4NWM0Zjk4ZjhmYSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
bGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLTktc3RyaWN0
LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9s
ZWdhY3ktbm9uLW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS05LXN0cmljdC5qcwpAQCAtMiwxMiArMiwy
NCBAQAogLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgogLyotLS0KIGVzaWQ6IHNlYy1saXRlcmFscy1zdHJpbmctbGl0
ZXJhbHMKLWRlc2NyaXB0aW9uOiA+Ci0gICAgTGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5jZSBpcyBu
b3QgZW5hYmxlZCBpbiBzdHJpY3QgbW9kZSBjb2RlCi0gICAgKHJlZ2FyZGxlc3Mgb2YgdGhlIHBy
ZXNlbmNlIG9mIEFubmV4IEIpCitkZXNjcmlwdGlvbjogTGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5j
ZSBpcyBub3QgZW5hYmxlZCBpbiBzdHJpY3QgbW9kZSBjb2RlIC0gOQogaW5mbzogfAotICAgIEEg
Y29uZm9ybWluZyBpbXBsZW1lbnRhdGlvbiwgd2hlbiBwcm9jZXNzaW5nIHN0cmljdCBtb2RlIGNv
ZGUsIG11c3Qgbm90IGV4dGVuZCB0aGUKLSAgICBzeW50YXggb2YgRXNjYXBlU2VxdWVuY2UgdG8g
aW5jbHVkZSBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlIGFzIGRlc2NyaWJlZCBpbiBCLjEuMi4K
KyAgRXNjYXBlU2VxdWVuY2UgOjoKKyAgICBDaGFyYWN0ZXJFc2NhcGVTZXF1ZW5jZQorICAgIExl
Z2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UKKyAgICBOb25PY3RhbERlY2ltYWxFc2NhcGVTZXF1ZW5j
ZQorICAgIEhleEVzY2FwZVNlcXVlbmNlCisgICAgVW5pY29kZUVzY2FwZVNlcXVlbmNlCisKKyAg
Tm9uT2N0YWxEZWNpbWFsRXNjYXBlU2VxdWVuY2UgOjogb25lIG9mCisgICAgOCA5CisKKyAgIyMg
MTIuOC40LjEgU3RhdGljIFNlbWFudGljczogRWFybHkgRXJyb3JzCisKKyAgRXNjYXBlU2VxdWVu
Y2UgOjogTm9uT2N0YWxEZWNpbWFsRXNjYXBlU2VxdWVuY2UKKworICAtIEl0IGlzIGEgU3ludGF4
IEVycm9yIGlmIHRoZSBzb3VyY2UgY29kZSBtYXRjaGluZyB0aGlzIHByb2R1Y3Rpb24gaXMgc3Ry
aWN0CisgICAgbW9kZSBjb2RlLgogZmxhZ3M6IFtvbmx5U3RyaWN0XQogbmVnYXRpdmU6CiAgIHBo
YXNlOiBwYXJzZQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0
ZXJhbHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLXN0cmljdC5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVyYWxzL3N0cmluZy9sZWdhY3ktbm9u
LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS1zdHJpY3QuanMKaW5kZXggYjRjY2EyZGRkMmU2ZTg0ZjJh
NmJjZTg4NTk3Mjg2MDMzMzc2YmEzYy4uMTc0M2Q0ZTI2ZjE2Yjk1ODk4NjcyM2YzZTE3ZDk4N2Ez
N2RmZTExZiAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJh
bHMvc3RyaW5nL2xlZ2FjeS1ub24tb2N0YWwtZXNjYXBlLXNlcXVlbmNlLXN0cmljdC5qcworKysg
Yi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW5v
bi1vY3RhbC1lc2NhcGUtc2VxdWVuY2Utc3RyaWN0LmpzCkBAIC0xLDMyICsxLDIxIEBACiAvLyBD
b3B5cmlnaHQgKEMpIDIwMTcgS2V2aW4gR2liYm9ucy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KIC8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KIC8qLS0tCi1lc2lkOiBzZWMtYWRkaXRpb25hbC1zeW50YXgtc3RyaW5nLWxp
dGVyYWxzCi1lczZpZDogQi4xLjIKLWRlc2NyaXB0aW9uOiA+Ci0gICAgTGVnYWN5T2N0YWxFc2Nh
cGVTZXF1ZW5jZSBpcyBub3QgZW5hYmxlZCBpbiBzdHJpY3QgbW9kZSBjb2RlIChyZWdhcmRsZXNz
IG9mCi0gICAgdGhlIHByZXNlbmNlIG9mIEFubmV4IEIpCitlc2lkOiBzZWMtdGVtcGxhdGUtbGl0
ZXJhbC1sZXhpY2FsLWNvbXBvbmVudHMKK2Rlc2NyaXB0aW9uOiBMZWdhY3lPY3RhbEVzY2FwZVNl
cXVlbmNlIGlzIG5vdCBhdmFpbGFibGUgaW4gdGVtcGxhdGUgbGl0ZXJhbHMKIGluZm86IHwKLSAg
ICBFc2NhcGVTZXF1ZW5jZSA6OgotICAgICAgQ2hhcmFjdGVyRXNjYXBlU2VxdWVuY2UKLSAgICAg
IExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UKLSAgICAgIEhleEVzY2FwZVNlcXVlbmNlCi0gICAg
ICBVbmljb2RlRXNjYXBlU2VxdWVuY2UKLQotICAgIExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2Ug
OjoKLSAgICAgIE9jdGFsRGlnaXQgW2xvb2thaGVhZCDiiIkgT2N0YWxEaWdpdF0KLSAgICAgIFpl
cm9Ub1RocmVlIE9jdGFsRGlnaXQgW2xvb2thaGVhZCDiiIkgT2N0YWxEaWdpdF0KLSAgICAgIEZv
dXJUb1NldmVuIE9jdGFsRGlnaXQKLSAgICAgIFplcm9Ub1RocmVlIE9jdGFsRGlnaXQgT2N0YWxE
aWdpdAotCi0gICAgWmVyb1RvVGhyZWUgOjogb25lIG9mCi0gICAgICAwIDEgMiAzCi0KLSAgICBG
b3VyVG9TZXZlbiA6OiBvbmUgb2YKLSAgICAgIDQgNSA2IDcKLQotICAgIFRoaXMgZGVmaW5pdGlv
biBvZiBFc2NhcGVTZXF1ZW5jZSBpcyBub3QgdXNlZCBpbiBzdHJpY3QgbW9kZSBvciB3aGVuCi0g
ICAgcGFyc2luZyBUZW1wbGF0ZUNoYXJhY3Rlci4KKyAgVGVtcGxhdGVDaGFyYWN0ZXIgOjoKKyAg
ICAkIFtsb29rYWhlYWQg4omgIHtdCisgICAgXCBUZW1wbGF0ZUVzY2FwZVNlcXVlbmNlCisgICAg
XCBOb3RFc2NhcGVTZXF1ZW5jZQorICAgIExpbmVDb250aW51YXRpb24KKyAgICBMaW5lVGVybWlu
YXRvclNlcXVlbmNlCisgICAgU291cmNlQ2hhcmFjdGVyIGJ1dCBub3Qgb25lIG9mIGAgb3IgXCBv
ciAkIG9yIExpbmVUZXJtaW5hdG9yCisgIFRlbXBsYXRlRXNjYXBlU2VxdWVuY2UgOjoKKyAgICBD
aGFyYWN0ZXJFc2NhcGVTZXF1ZW5jZQorICAgIDAgW2xvb2thaGVhZCDiiIkgRGVjaW1hbERpZ2l0
XQorICAgIEhleEVzY2FwZVNlcXVlbmNlCisgICAgVW5pY29kZUVzY2FwZVNlcXVlbmNlCiBmbGFn
czogW29ubHlTdHJpY3RdCiBuZWdhdGl2ZToKICAgcGhhc2U6IHBhcnNlCmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW9jdGFs
LWVzY2FwZS1zZXF1ZW5jZS1zdHJpY3QuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW9jdGFsLWVzY2FwZS1zZXF1ZW5jZS1zdHJpY3QuanMK
aW5kZXggNGViMGVmOTYxMjIzNzZiYTU4N2EzYWIwZDc0Y2I4YWNhMzQwNjJjMy4uYmU2MDNkZDc0
YzkyMzBlZmI2NGNjY2RiOGFhZTA1NzQ1NDdjMGJjMSAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1vY3RhbC1lc2NhcGUtc2Vx
dWVuY2Utc3RyaWN0LmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL2xpdGVy
YWxzL3N0cmluZy9sZWdhY3ktb2N0YWwtZXNjYXBlLXNlcXVlbmNlLXN0cmljdC5qcwpAQCAtMSwz
MiArMSwyMSBAQAogLy8gQ29weXJpZ2h0IChDKSAyMDE2IHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJT
RCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCiAvKi0tLQotZXNpZDogc2VjLWFk
ZGl0aW9uYWwtc3ludGF4LXN0cmluZy1saXRlcmFscwotZXM2aWQ6IEIuMS4yCi1kZXNjcmlwdGlv
bjogPgotICAgIExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVuY2UgaXMgbm90IGVuYWJsZWQgaW4gc3Ry
aWN0IG1vZGUgY29kZSAocmVnYXJkbGVzcyBvZgotICAgIHRoZSBwcmVzZW5jZSBvZiBBbm5leCBC
KQorZXNpZDogc2VjLXRlbXBsYXRlLWxpdGVyYWwtbGV4aWNhbC1jb21wb25lbnRzCitkZXNjcmlw
dGlvbjogTGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5jZSBpcyBub3QgYXZhaWxhYmxlIGluIHRlbXBs
YXRlIGxpdGVyYWxzCiBpbmZvOiB8Ci0gICAgRXNjYXBlU2VxdWVuY2UgOjoKLSAgICAgIENoYXJh
Y3RlckVzY2FwZVNlcXVlbmNlCi0gICAgICBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlCi0gICAg
ICBIZXhFc2NhcGVTZXF1ZW5jZQotICAgICAgVW5pY29kZUVzY2FwZVNlcXVlbmNlCi0KLSAgICBM
ZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlIDo6Ci0gICAgICBPY3RhbERpZ2l0IFtsb29rYWhlYWQg
4oiJIE9jdGFsRGlnaXRdCi0gICAgICBaZXJvVG9UaHJlZSBPY3RhbERpZ2l0IFtsb29rYWhlYWQg
4oiJIE9jdGFsRGlnaXRdCi0gICAgICBGb3VyVG9TZXZlbiBPY3RhbERpZ2l0Ci0gICAgICBaZXJv
VG9UaHJlZSBPY3RhbERpZ2l0IE9jdGFsRGlnaXQKLQotICAgIFplcm9Ub1RocmVlIDo6IG9uZSBv
ZgotICAgICAgMCAxIDIgMwotCi0gICAgRm91clRvU2V2ZW4gOjogb25lIG9mCi0gICAgICA0IDUg
NiA3Ci0KLSAgICBUaGlzIGRlZmluaXRpb24gb2YgRXNjYXBlU2VxdWVuY2UgaXMgbm90IHVzZWQg
aW4gc3RyaWN0IG1vZGUgb3Igd2hlbgotICAgIHBhcnNpbmcgVGVtcGxhdGVDaGFyYWN0ZXIuCisg
IFRlbXBsYXRlQ2hhcmFjdGVyIDo6CisgICAgJCBbbG9va2FoZWFkIOKJoCB7XQorICAgIFwgVGVt
cGxhdGVFc2NhcGVTZXF1ZW5jZQorICAgIFwgTm90RXNjYXBlU2VxdWVuY2UKKyAgICBMaW5lQ29u
dGludWF0aW9uCisgICAgTGluZVRlcm1pbmF0b3JTZXF1ZW5jZQorICAgIFNvdXJjZUNoYXJhY3Rl
ciBidXQgbm90IG9uZSBvZiBgIG9yIFwgb3IgJCBvciBMaW5lVGVybWluYXRvcgorICBUZW1wbGF0
ZUVzY2FwZVNlcXVlbmNlIDo6CisgICAgQ2hhcmFjdGVyRXNjYXBlU2VxdWVuY2UKKyAgICAwIFts
b29rYWhlYWQg4oiJIERlY2ltYWxEaWdpdF0KKyAgICBIZXhFc2NhcGVTZXF1ZW5jZQorICAgIFVu
aWNvZGVFc2NhcGVTZXF1ZW5jZQogZmxhZ3M6IFtvbmx5U3RyaWN0XQogbmVnYXRpdmU6CiAgIHBo
YXNlOiBwYXJzZQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbGl0
ZXJhbHMvc3RyaW5nL2xlZ2FjeS1vY3RhbC1lc2NhcGUtc2VxdWVuY2UuanMgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9saXRlcmFscy9zdHJpbmcvbGVnYWN5LW9jdGFsLWVzY2FwZS1z
ZXF1ZW5jZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMjVhNGU1N2E2OWZhNmVjNzJmNjhkNDY3NmI3ODA1ZDNl
ZTlhZmM0Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2Uv
bGl0ZXJhbHMvc3RyaW5nL2xlZ2FjeS1vY3RhbC1lc2NhcGUtc2VxdWVuY2UuanMKQEAgLTAsMCAr
MSwxNTIgQEAKKy8vIENvcHlyaWdodCAoQykgMjAxNiB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0Qg
bGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2VzaWQ6IHNlYy1saXRl
cmFscy1zdHJpbmctbGl0ZXJhbHMKK2Rlc2NyaXB0aW9uOiBTdHJpbmcgdmFsdWUgZm9yIExlZ2Fj
eU9jdGFsRXNjYXBlU2VxdWVuY2UKK2luZm86IHwKKyAgICBFc2NhcGVTZXF1ZW5jZSA6OgorICAg
ICAgQ2hhcmFjdGVyRXNjYXBlU2VxdWVuY2UKKyAgICAgIExlZ2FjeU9jdGFsRXNjYXBlU2VxdWVu
Y2UKKyAgICAgIE5vbk9jdGFsRGVjaW1hbEVzY2FwZVNlcXVlbmNlCisgICAgICBIZXhFc2NhcGVT
ZXF1ZW5jZQorICAgICAgVW5pY29kZUVzY2FwZVNlcXVlbmNlCisKKyAgICBMZWdhY3lPY3RhbEVz
Y2FwZVNlcXVlbmNlIDo6CisgICAgICBPY3RhbERpZ2l0IFtsb29rYWhlYWQg4oiJIE9jdGFsRGln
aXRdCisgICAgICBaZXJvVG9UaHJlZSBPY3RhbERpZ2l0IFtsb29rYWhlYWQg4oiJIE9jdGFsRGln
aXRdCisgICAgICBGb3VyVG9TZXZlbiBPY3RhbERpZ2l0CisgICAgICBaZXJvVG9UaHJlZSBPY3Rh
bERpZ2l0IE9jdGFsRGlnaXQKKworICAgIFplcm9Ub1RocmVlIDo6IG9uZSBvZgorICAgICAgMCAx
IDIgMworCisgICAgRm91clRvU2V2ZW4gOjogb25lIG9mCisgICAgICA0IDUgNiA3CitmbGFnczog
W25vU3RyaWN0XQorLS0tKi8KKworLy8gTGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5jZSA6OgorLy8g
ICBPY3RhbERpZ2l0IFtsb29rYWhlYWQg4oiJIE9jdGFsRGlnaXRdCithc3NlcnQuc2FtZVZhbHVl
KCdcMCcsICdceDAwJywgJ1xcMCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDEnLCAnXHgwMScsICdc
XDEnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wyJywgJ1x4MDInLCAnXFwyJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKCdcMycsICdceDAzJywgJ1xcMycpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDQnLCAnXHgw
NCcsICdcXDQnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1w1JywgJ1x4MDUnLCAnXFw1Jyk7Cithc3Nl
cnQuc2FtZVZhbHVlKCdcNicsICdceDA2JywgJ1xcNicpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDcn
LCAnXHgwNycsICdcXDcnKTsKKworYXNzZXJ0LnNhbWVWYWx1ZSgnXDA4JywgJ1x4MDA4JywgJ1xc
MDgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxOCcsICdceDAxOCcsICdcXDE4Jyk7Cithc3NlcnQu
c2FtZVZhbHVlKCdcMjgnLCAnXHgwMjgnLCAnXFwyOCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDM4
JywgJ1x4MDM4JywgJ1xcMzgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1w0OCcsICdceDA0OCcsICdc
XDQ4Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNTgnLCAnXHgwNTgnLCAnXFw1OCcpOworYXNzZXJ0
LnNhbWVWYWx1ZSgnXDY4JywgJ1x4MDY4JywgJ1xcNjgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1w3
OCcsICdceDA3OCcsICdcXDc4Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMDgnLCAnXHgwMDgnLCAn
XFwwOCcpOworCisvLyBMZWdhY3lPY3RhbEVzY2FwZVNlcXVlbmNlIDo6CisvLyAgIFplcm9Ub1Ro
cmVlIE9jdGFsRGlnaXQgW2xvb2thaGVhZCDiiIkgT2N0YWxEaWdpdF0KK2Fzc2VydC5zYW1lVmFs
dWUoJ1wwMCcsICdceDAwJywgJ1xcMDAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwMScsICdceDAx
JywgJ1xcMDEnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwNicsICdceDA2JywgJ1xcMDYnKTsKK2Fz
c2VydC5zYW1lVmFsdWUoJ1wwNycsICdceDA3JywgJ1xcMDcnKTsKK2Fzc2VydC5zYW1lVmFsdWUo
J1wxMCcsICdceDA4JywgJ1xcMTAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxMScsICdceDA5Jywg
J1xcMTEnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxNicsICdceDBlJywgJ1xcMTYnKTsKK2Fzc2Vy
dC5zYW1lVmFsdWUoJ1wxNycsICdceDBmJywgJ1xcMTcnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wy
MCcsICdceDEwJywgJ1xcMjAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wyMScsICdceDExJywgJ1xc
MjEnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wyNicsICdceDE2JywgJ1xcMjYnKTsKK2Fzc2VydC5z
YW1lVmFsdWUoJ1wyNycsICdceDE3JywgJ1xcMjcnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wzMCcs
ICdceDE4JywgJ1xcMzAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wzMScsICdceDE5JywgJ1xcMzEn
KTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wzNicsICdceDFlJywgJ1xcMzYnKTsKK2Fzc2VydC5zYW1l
VmFsdWUoJ1wzNycsICdceDFmJywgJ1xcMzcnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwMDgnLCAn
XHgwMDgnLCAnXFwwMDgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwMTgnLCAnXHgwMTgnLCAnXFww
MTgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwNjgnLCAnXHgwNjgnLCAnXFwwNjgnKTsKK2Fzc2Vy
dC5zYW1lVmFsdWUoJ1wwNzgnLCAnXHgwNzgnLCAnXFwwNzgnKTsKK2Fzc2VydC5zYW1lVmFsdWUo
J1wxMDgnLCAnXHgwODgnLCAnXFwxMDgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxMTgnLCAnXHgw
OTgnLCAnXFwxMTgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxNjgnLCAnXHgwZTgnLCAnXFwxNjgn
KTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxNzgnLCAnXHgwZjgnLCAnXFwxNzgnKTsKK2Fzc2VydC5z
YW1lVmFsdWUoJ1wyMDgnLCAnXHgxMDgnLCAnXFwyMDgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wy
MTgnLCAnXHgxMTgnLCAnXFwyMTgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wyNjgnLCAnXHgxNjgn
LCAnXFwyNjgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wyNzgnLCAnXHgxNzgnLCAnXFwyNzgnKTsK
K2Fzc2VydC5zYW1lVmFsdWUoJ1wzMDgnLCAnXHgxODgnLCAnXFwzMDgnKTsKK2Fzc2VydC5zYW1l
VmFsdWUoJ1wzMTgnLCAnXHgxOTgnLCAnXFwzMTgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wzNjgn
LCAnXHgxZTgnLCAnXFwzNjgnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wzNzgnLCAnXHgxZjgnLCAn
XFwzNzgnKTsKKworLy8gTGVnYWN5T2N0YWxFc2NhcGVTZXF1ZW5jZSA6OgorLy8gICBGb3VyVG9T
ZXZlbiBPY3RhbERpZ2l0Cithc3NlcnQuc2FtZVZhbHVlKCdcNDAnLCAnXHgyMCcsICdcXDQwJyk7
Cithc3NlcnQuc2FtZVZhbHVlKCdcNDEnLCAnXHgyMScsICdcXDQxJyk7Cithc3NlcnQuc2FtZVZh
bHVlKCdcNDYnLCAnXHgyNicsICdcXDQ2Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNDcnLCAnXHgy
NycsICdcXDQ3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNTAnLCAnXHgyOCcsICdcXDUwJyk7Cith
c3NlcnQuc2FtZVZhbHVlKCdcNTEnLCAnXHgyOScsICdcXDUxJyk7Cithc3NlcnQuc2FtZVZhbHVl
KCdcNTYnLCAnXHgyZScsICdcXDU2Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNTcnLCAnXHgyZics
ICdcXDU3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNjAnLCAnXHgzMCcsICdcXDYwJyk7Cithc3Nl
cnQuc2FtZVZhbHVlKCdcNjEnLCAnXHgzMScsICdcXDYxJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdc
NjYnLCAnXHgzNicsICdcXDY2Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNjcnLCAnXHgzNycsICdc
XDY3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNzAnLCAnXHgzOCcsICdcXDcwJyk7Cithc3NlcnQu
c2FtZVZhbHVlKCdcNzEnLCAnXHgzOScsICdcXDcxJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNzYn
LCAnXHgzZScsICdcXDc2Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNzcnLCAnXHgzZicsICdcXDc3
Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNDAwJywgJ1x4MjAwJywgJ1xcNDAwJyk7Cithc3NlcnQu
c2FtZVZhbHVlKCdcNDEwJywgJ1x4MjEwJywgJ1xcNDEwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdc
NDYwJywgJ1x4MjYwJywgJ1xcNDYwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNDcwJywgJ1x4Mjcw
JywgJ1xcNDcwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNTAwJywgJ1x4MjgwJywgJ1xcNTAwJyk7
Cithc3NlcnQuc2FtZVZhbHVlKCdcNTEwJywgJ1x4MjkwJywgJ1xcNTEwJyk7Cithc3NlcnQuc2Ft
ZVZhbHVlKCdcNTYwJywgJ1x4MmUwJywgJ1xcNTYwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNTcw
JywgJ1x4MmYwJywgJ1xcNTcwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNjAwJywgJ1x4MzAwJywg
J1xcNjAwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNjEwJywgJ1x4MzEwJywgJ1xcNjEwJyk7Cith
c3NlcnQuc2FtZVZhbHVlKCdcNjYwJywgJ1x4MzYwJywgJ1xcNjYwJyk7Cithc3NlcnQuc2FtZVZh
bHVlKCdcNjcwJywgJ1x4MzcwJywgJ1xcNjcwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNzAwJywg
J1x4MzgwJywgJ1xcNzAwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNzEwJywgJ1x4MzkwJywgJ1xc
NzEwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcNzYwJywgJ1x4M2UwJywgJ1xcNzYwJyk7Cithc3Nl
cnQuc2FtZVZhbHVlKCdcNzcwJywgJ1x4M2YwJywgJ1xcNzcwJyk7CisKKy8vIExlZ2FjeU9jdGFs
RXNjYXBlU2VxdWVuY2UgOjoKKy8vICAgWmVyb1RvVGhyZWUgT2N0YWxEaWdpdCBPY3RhbERpZ2l0
Cithc3NlcnQuc2FtZVZhbHVlKCdcMDAwJywgJ1x4MDAnLCAnXFwwMDAnKTsKK2Fzc2VydC5zYW1l
VmFsdWUoJ1wwMDEnLCAnXHgwMScsICdcXDAwMScpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDAxMCcs
ICdceDA4JywgJ1xcMDEwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMDA2JywgJ1x4MDYnLCAnXFww
MDYnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwNjAnLCAnXHgzMCcsICdcXDA2MCcpOworYXNzZXJ0
LnNhbWVWYWx1ZSgnXDAwNycsICdceDA3JywgJ1xcMDA3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdc
MDcwJywgJ1x4MzgnLCAnXFwwNzAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wwNzcnLCAnXHgzZics
ICdcXDA3NycpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDEwMCcsICdceDQwJywgJ1xcMTAwJyk7Cith
c3NlcnQuc2FtZVZhbHVlKCdcMTAxJywgJ1x4NDEnLCAnXFwxMDEnKTsKK2Fzc2VydC5zYW1lVmFs
dWUoJ1wxMTAnLCAnXHg0OCcsICdcXDExMCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDEwNicsICdc
eDQ2JywgJ1xcMTA2Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMTYwJywgJ1x4NzAnLCAnXFwxNjAn
KTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wxMDcnLCAnXHg0NycsICdcXDEwNycpOworYXNzZXJ0LnNh
bWVWYWx1ZSgnXDE3MCcsICdceDc4JywgJ1xcMTcwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMTc3
JywgJ1x4N2YnLCAnXFwxNzcnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wyMDAnLCAnXHg4MCcsICdc
XDIwMCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDIwMScsICdceDgxJywgJ1xcMjAxJyk7Cithc3Nl
cnQuc2FtZVZhbHVlKCdcMjEwJywgJ1x4ODgnLCAnXFwyMTAnKTsKK2Fzc2VydC5zYW1lVmFsdWUo
J1wyMDYnLCAnXHg4NicsICdcXDIwNicpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDI2MCcsICdceGIw
JywgJ1xcMjYwJyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMjA3JywgJ1x4ODcnLCAnXFwyMDcnKTsK
K2Fzc2VydC5zYW1lVmFsdWUoJ1wyNzAnLCAnXHhiOCcsICdcXDI3MCcpOworYXNzZXJ0LnNhbWVW
YWx1ZSgnXDI3NycsICdceGJmJywgJ1xcMjc3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMzAwJywg
J1x4YzAnLCAnXFwzMDAnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wzMDEnLCAnXHhjMScsICdcXDMw
MScpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDMxMCcsICdceGM4JywgJ1xcMzEwJyk7Cithc3NlcnQu
c2FtZVZhbHVlKCdcMzA2JywgJ1x4YzYnLCAnXFwzMDYnKTsKK2Fzc2VydC5zYW1lVmFsdWUoJ1wz
NjAnLCAnXHhmMCcsICdcXDM2MCcpOworYXNzZXJ0LnNhbWVWYWx1ZSgnXDMwNycsICdceGM3Jywg
J1xcMzA3Jyk7Cithc3NlcnQuc2FtZVZhbHVlKCdcMzcwJywgJ1x4ZjgnLCAnXFwzNzAnKTsKK2Fz
c2VydC5zYW1lVmFsdWUoJ1wzNzcnLCAnXHhmZicsICdcXDM3NycpOwpkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZWFybHktZHVwLWFzc2VydC1r
ZXktZXhwb3J0LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUv
ZWFybHktZHVwLWFzc2VydC1rZXktZXhwb3J0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3YWIyMzIzM2VhOTU2
ZDAyNGI0OTZlZDk5NTFjYzZlZThlNGJkNzUKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9lYXJseS1kdXAtYXNzZXJ0LWtleS1leHBv
cnQuanMKQEAgLTAsMCArMSwyNCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBwcm9q
ZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292ZXJu
ZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0tLQor
ZGVzY3JpcHRpb246IEFzc2VydENsYXVzZSBtYXkgbm90IGhhdmUgZHVwbGljYXRlIGtleXMgKGV4
cG9ydCBkZWNsYXJhdGlvbikKK2VzaWQ6IHNlYy1tb2R1bGVzCitpbmZvOiB8CisgIEFzc2VydENs
YXVzZTphc3NlcnR7QXNzZXJ0RW50cmllcyxvcHR9CisKKyAgLSBJdCBpcyBhIFN5bnRheCBFcnJv
ciBpZiBBc3NlcnRDbGF1c2VUb0Fzc2VydGlvbnMgb2YgQXNzZXJ0Q2xhdXNlIGhhcyB0d28KKyAg
ICBlbnRyaWVzIGEgYW5kIGIgc3VjaCB0aGF0IGEuW1tLZXldXSBpcyBiLltbS2V5XV0uCitmZWF0
dXJlczogW2ltcG9ydC1hc3NlcnRpb25zXQorZmxhZ3M6IFttb2R1bGVdCituZWdhdGl2ZToKKyAg
cGhhc2U6IHBhcnNlCisgIHR5cGU6IFN5bnRheEVycm9yCistLS0qLworCiskRE9OT1RFVkFMVUFU
RSgpOworCitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tM19GSVhUVVJFLmpzJyBh
c3NlcnQgeworICB0ZXN0MjYyX2E6ICcnLAorICB0ZXN0MjYyX2I6ICcnLAorICAndGVzdDI2Ml9c
dTAwNjEnOiAnJworfTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L21vZHVsZS1jb2RlL2Vhcmx5LWR1cC1hc3NlcnQta2V5LWltcG9ydC1ub2JpbmRpbmcuanMgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9lYXJseS1kdXAtYXNzZXJ0
LWtleS1pbXBvcnQtbm9iaW5kaW5nLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjOGU2ZTNjMzllZGZkZjg2MjQ3
YzMyNmJlOWQ4NDcyMTAwZDQzMmEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9lYXJseS1kdXAtYXNzZXJ0LWtleS1pbXBvcnQtbm9i
aW5kaW5nLmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjgg
cHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2Rlc2NyaXB0aW9uOiA+CisgIEFzc2VydENsYXVzZSBtYXkgbm90IGhhdmUgZHVwbGljYXRl
IGtleXMgKGltcG9ydCBkZWNsYXJhdGlvbiB3aXRob3V0IGJpbmRpbmcpCitlc2lkOiBzZWMtbW9k
dWxlcworaW5mbzogfAorICBBc3NlcnRDbGF1c2U6YXNzZXJ0e0Fzc2VydEVudHJpZXMsb3B0fQor
CisgIC0gSXQgaXMgYSBTeW50YXggRXJyb3IgaWYgQXNzZXJ0Q2xhdXNlVG9Bc3NlcnRpb25zIG9m
IEFzc2VydENsYXVzZSBoYXMgdHdvCisgICAgZW50cmllcyBhIGFuZCBiIHN1Y2ggdGhhdCBhLltb
S2V5XV0gaXMgYi5bW0tleV1dLgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9uc10KK2ZsYWdz
OiBbbW9kdWxlXQorbmVnYXRpdmU6CisgIHBoYXNlOiBwYXJzZQorICB0eXBlOiBTeW50YXhFcnJv
cgorLS0tKi8KKworJERPTk9URVZBTFVBVEUoKTsKKworaW1wb3J0ICcuL2ltcG9ydC1hc3NlcnRp
b24tMl9GSVhUVVJFLmpzJyBhc3NlcnQgeworICB0ZXN0MjYyX2E6ICcnLAorICB0ZXN0MjYyX2I6
ICcnLAorICAndGVzdDI2Ml9cdTAwNjEnOiAnJworfTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2Vhcmx5LWR1cC1hc3NlcnQta2V5LWltcG9y
dC13aXRoYmluZGluZy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1j
b2RlL2Vhcmx5LWR1cC1hc3NlcnQta2V5LWltcG9ydC13aXRoYmluZGluZy5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41N2I2NmQ1OWE0NDc0Mjg0ZjY2OTMyNGNhN2Y4MTNkOTQ5NjRmYzJkCi0tLSAvZGV2L251bGwK
KysrIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZWFybHktZHVw
LWFzc2VydC1rZXktaW1wb3J0LXdpdGhiaW5kaW5nLmpzCkBAIC0wLDAgKzEsMjUgQEAKKy8vIENv
cHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBp
biB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgIEFzc2VydENsYXVz
ZSBtYXkgbm90IGhhdmUgZHVwbGljYXRlIGtleXMgKGltcG9ydCBkZWNsYXJhdGlvbiB3aXRoIGJp
bmRpbmcpCitlc2lkOiBzZWMtbW9kdWxlcworaW5mbzogfAorICBBc3NlcnRDbGF1c2U6YXNzZXJ0
e0Fzc2VydEVudHJpZXMsb3B0fQorCisgIC0gSXQgaXMgYSBTeW50YXggRXJyb3IgaWYgQXNzZXJ0
Q2xhdXNlVG9Bc3NlcnRpb25zIG9mIEFzc2VydENsYXVzZSBoYXMgdHdvCisgICAgZW50cmllcyBh
IGFuZCBiIHN1Y2ggdGhhdCBhLltbS2V5XV0gaXMgYi5bW0tleV1dLgorZmVhdHVyZXM6IFtpbXBv
cnQtYXNzZXJ0aW9uc10KK2ZsYWdzOiBbbW9kdWxlXQorbmVnYXRpdmU6CisgIHBoYXNlOiBwYXJz
ZQorICB0eXBlOiBTeW50YXhFcnJvcgorLS0tKi8KKworJERPTk9URVZBTFVBVEUoKTsKKworaW1w
b3J0IHggZnJvbSAnLi9pbXBvcnQtYXNzZXJ0aW9uLTFfRklYVFVSRS5qcycgYXNzZXJ0IHsKKyAg
dGVzdDI2Ml9hOiAnJywKKyAgdGVzdDI2Ml9iOiAnJywKKyAgJ3Rlc3QyNjJfXHUwMDYxJzogJycK
K307CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29k
ZS9lYXJseS1leHBvcnQtaWxsLWZvcm1lZC1zdHJpbmcuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9tb2R1bGUtY29kZS9lYXJseS1leHBvcnQtaWxsLWZvcm1lZC1zdHJpbmcuanMK
aW5kZXggYTY3YmMzYTI1YmMwODM2NzMwMWZiMTJjYWRhZDYzZGYzODJiN2FlZi4uOTRkODZiNGI0
NTU3NDkxMThmMjcyNjJlZmRmZTI5NzlkODc4YzQ5MyAxMDA2NDQKLS0tIGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvZWFybHktZXhwb3J0LWlsbC1mb3JtZWQtc3Ry
aW5nLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2Vh
cmx5LWV4cG9ydC1pbGwtZm9ybWVkLXN0cmluZy5qcwpAQCAtOCw4ICs4LDggQEAKICAgICBNb2R1
bGVFeHBvcnROYW1lIDogU3RyaW5nTGl0ZXJhbAogCiAgICAgSXQgaXMgYSBTeW50YXggRXJyb3Ig
aWYgSXNTdHJpbmdXZWxsRm9ybWVkVW5pY29kZSBvZiB0aGUgU3RyaW5nVmFsdWUgb2YgU3RyaW5n
TGl0ZXJhbCBpcyAqZmFsc2UqLgorZmxhZ3M6IFttb2R1bGVdCiBuZWdhdGl2ZToKLSAgZmxhZ3M6
IG1vZHVsZQogICBwaGFzZTogcGFyc2UKICAgdHlwZTogU3ludGF4RXJyb3IKIGZlYXR1cmVzOiBb
YXJiaXRyYXJ5LW1vZHVsZS1uYW1lc3BhY2UtbmFtZXNdCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rl
c3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9ldmFsLWd0Ym5kbmctaW5kaXJlY3QtZmF1
eC1hc3NlcnRpb24uanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29k
ZS9ldmFsLWd0Ym5kbmctaW5kaXJlY3QtZmF1eC1hc3NlcnRpb24uanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDlm
NmYzZDYwNjc3YzMyYTA1YjBjYzg0ZDNkZGRmM2I3NDk1ODc0OAotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2V2YWwtZ3RibmRuZy1p
bmRpcmVjdC1mYXV4LWFzc2VydGlvbi5qcwpAQCAtMCwwICsxLDcwIEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogPgorICBBc3NlcnRDbGF1c2UgaW4gSW1w
b3J0RGVjbGFyYXRpb24gbWF5IG5vdCBiZSBwcmVjZWRlZCBieSBhIGxpbmUgdGVybWluYXRvcgor
ZXNpZDogc2VjLW1vZHVsZXMKK2luZm86IHwKKyAgSW1wb3J0RGVjbGFyYXRpb246CisgICAgaW1w
b3J0IE1vZHVsZVNwZWNpZmllcltubyBMaW5lVGVybWluYXRvciBoZXJlXSBBc3NlcnRDbGF1c2U7
CisKKyAgQXNzZXJ0Q2xhdXNlOgorICAgIGFzc2VydCB7fQorICAgIGFzc2VydCB7QXNzZXJ0RW50
cmllcyAsb3B0fQorCisgIEFzc2VydEVudHJpZXM6CisgICAgQXNzZXJ0aW9uS2V5IDogU3RyaW5n
TGl0ZXJhbAorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwgLCBBc3NlcnRFbnRyaWVz
CisKKyAgQXNzZXJ0aW9uS2V5OgorICAgIElkZW50aWZpZXJOYW1lCisgICAgU3RyaW5nTGl0ZXJh
bAorCisgIFRoZSByZXN0cmljdGlvbiBMaW5lVGVybWluYXRvciBjb3VsZCBiZSB2ZXJpZmllZCBt
b3JlIHNpbXBseSB3aXRoIGEgbmVnYXRpdmUKKyAgc3ludGF4IHRlc3QuIFRoaXMgdGVzdCBpcyBk
ZXNpZ25lZCB0byBwYXJzZSBzdWNjZXNzZnVsbHkgaW4gb3JkZXIgdG8gdmVyaWZ5CisgIHRoZSBy
ZXN0cmljdGlvbiBtb3JlIHByZWNpc2VseS4KK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlvbnMs
IGdsb2JhbFRoaXNdCitmbGFnczogW21vZHVsZSwgcmF3XQorLS0tKi8KKwordmFyIGNhbGxDb3Vu
dCA9IDA7CisKKy8vIERlZmluZSBhIHByb3BlcnR5IG9uIHRoZSBnbG9iYWwgInRoaXMiIHZhbHVl
IHNvIHRoYXQgdGhlIGVmZmVjdCBvZiB0aGUKKy8vIGV4cGVjdGVkIElkZW50aWZpZXJSZWZlcmVu
Y2UgY2FuIGJlIG9ic2VydmVkLgorT2JqZWN0LmRlZmluZVByb3BlcnR5KGdsb2JhbFRoaXMsICdh
c3NlcnQnLCB7CisgIGdldDogZnVuY3Rpb24oKSB7CisgICAgY2FsbENvdW50ICs9IDE7CisgIH0K
K30pOworCitpbXBvcnQgeCBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tMV9GSVhUVVJFLmpzJwor
YXNzZXJ0Cit7dGVzdDI2MjonJ307CisKK2lmICh4ICE9PSAyNjIuMSkgeworICB0aHJvdyAnbW9k
dWxlIHZhbHVlIGluY29ycmVjdGx5IGltcG9ydGVkIC0gZmlyc3QgZGVjbGFyYXRpb24nOworfQor
CitpZiAoY2FsbENvdW50ICE9PSAxKSB7CisgIHRocm93ICdJZGVudGlmaWVyUmVmZXJlbmNlIG5v
dCByZWNvZ25pemVkIC0gZmlyc3QgZGVjbGFyYXRpb24nOworfQorCitpbXBvcnQgJy4vaW1wb3J0
LWFzc2VydGlvbi0yX0ZJWFRVUkUuanMnCithc3NlcnQKK3t0ZXN0MjYyOicnfTsKKworaWYgKGds
b2JhbFRoaXMudGVzdDI2MiAhPT0gMjYyLjIpIHsKKyAgdGhyb3cgJ21vZHVsZSB2YWx1ZSBpbmNv
cnJlY3RseSBpbXBvcnRlZCAtIHNlY29uZCBkZWNsYXJhdGlvbic7Cit9CisKK2lmIChjYWxsQ291
bnQgIT09IDIpIHsKKyAgdGhyb3cgJ0lkZW50aWZpZXJSZWZlcmVuY2Ugbm90IHJlY29nbml6ZWQg
LSBzZWNvbmQgZGVjbGFyYXRpb24nOworfQorCitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3Nl
cnRpb24tM19GSVhUVVJFLmpzJworYXNzZXJ0Cit7dGVzdDI2MjonJ307CisKK2lmIChjYWxsQ291
bnQgIT09IDMpIHsKKyAgdGhyb3cgJ0lkZW50aWZpZXJSZWZlcmVuY2Ugbm90IHJlY29nbml6ZWQg
LSB0aGlyZCBkZWNsYXJhdGlvbic7Cit9CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLTFfRklYVFVSRS5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24t
MV9GSVhUVVJFLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNlNGI4YWY3ZmY3OGFjNjJjNDFhYmYxZDAwYWEzZmFl
MjRjODU4NGEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFn
ZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLTFfRklYVFVSRS5qcwpAQCAtMCwwICsxLDMg
QEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5z
ZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorZXhwb3J0IGRlZmF1bHQgMjYyLjE7CmRpZmYg
LS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQt
YXNzZXJ0aW9uLTJfRklYVFVSRS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21v
ZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24tMl9GSVhUVVJFLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwNWFh
NjhkMmU4MDgwNmI4NTVhZjljNmU3NDE3Yzg3YTQzMDRkOWQKLS0tIC9kZXYvbnVsbAorKysgYi9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9u
LTJfRklYVFVSRS5qcwpAQCAtMCwwICsxLDMgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUg
VjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlz
IGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgor
Z2xvYmFsVGhpcy50ZXN0MjYyID0gMjYyLjI7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIv
dGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLTNfRklYVFVSRS5qcyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRp
b24tM19GSVhUVVJFLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3NmY3OTA5NGRlZWQzNGRhZGI1ZDI3MGU2ZjY0
OWVhMThhMzRiMTEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLTNfRklYVFVSRS5qcwpAQCAtMCwwICsx
LDMgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGlj
ZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorZXhwb3J0IGRlZmF1bHQgMjYyLjM7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBv
cnQtYXNzZXJ0aW9uLWVtcHR5LmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9k
dWxlLWNvZGUvaW1wb3J0LWFzc2VydGlvbi1lbXB0eS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wZGY5OTExYzUy
MmExZDQ1YmMzODJmOTE1N2QyNjdhMzU0OTk0NDE2Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2VydGlvbi1lbXB0
eS5qcwpAQCAtMCwwICsxLDMwIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2pl
Y3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5l
ZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitk
ZXNjcmlwdGlvbjogQXNzZXJ0Q2xhdXNlIGluIEltcG9ydERlY2xhcmF0aW9uIG1heSBiZSBlbXB0
eQorZXNpZDogc2VjLW1vZHVsZXMKK2luZm86IHwKKyAgSW1wb3J0RGVjbGFyYXRpb246CisgICAg
aW1wb3J0IE1vZHVsZVNwZWNpZmllcltubyBMaW5lVGVybWluYXRvciBoZXJlXSBBc3NlcnRDbGF1
c2U7CisKKyAgQXNzZXJ0Q2xhdXNlOgorICAgIGFzc2VydCB7fQorICAgIGFzc2VydCB7QXNzZXJ0
RW50cmllcyAsb3B0fQorCisgIEFzc2VydEVudHJpZXM6CisgICAgQXNzZXJ0aW9uS2V5IDogU3Ry
aW5nTGl0ZXJhbAorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwgLCBBc3NlcnRFbnRy
aWVzCisKKyAgQXNzZXJ0aW9uS2V5OgorICAgIElkZW50aWZpZXJOYW1lCisgICAgU3RyaW5nTGl0
ZXJhbAorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZ2xvYmFsVGhpc10KK2ZsYWdzOiBb
bW9kdWxlXQorLS0tKi8KKworaW1wb3J0IHggZnJvbSAnLi9pbXBvcnQtYXNzZXJ0aW9uLTFfRklY
VFVSRS5qcycgYXNzZXJ0IHt9OworaW1wb3J0ICcuL2ltcG9ydC1hc3NlcnRpb24tMl9GSVhUVVJF
LmpzJyBhc3NlcnQge307CitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tM19GSVhU
VVJFLmpzJyBhc3NlcnQge307CisKK2Fzc2VydC5zYW1lVmFsdWUoeCwgMjYyLjEpOworYXNzZXJ0
LnNhbWVWYWx1ZShnbG9iYWxUaGlzLnRlc3QyNjIsIDI2Mi4yKTsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24ta2V5
LWlkZW50aWZpZXJuYW1lLmpzIGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxl
LWNvZGUvaW1wb3J0LWFzc2VydGlvbi1rZXktaWRlbnRpZmllcm5hbWUuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZGJiMWQ0OGY2MmY1MzJlNDQ4NzNmMWNlZTE1MWJjYjQ5OGY5MTA3NQotLS0gL2Rldi9udWxsCisr
KyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3Nl
cnRpb24ta2V5LWlkZW50aWZpZXJuYW1lLmpzCkBAIC0wLDAgKzEsMzEgQEAKKy8vIENvcHlyaWdo
dCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
Ly8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUg
TElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgICAgQXNzZXJ0Q2xhdXNlIGlu
IEltcG9ydERlY2xhcmF0aW9uIG1heSB1c2UgYW55IHZhbGlkIElkZW50aWZpZXJOYW1lIGFzIGEg
a2V5Citlc2lkOiBzZWMtbW9kdWxlcworaW5mbzogfAorICBJbXBvcnREZWNsYXJhdGlvbjoKKyAg
ICBpbXBvcnQgTW9kdWxlU3BlY2lmaWVyW25vIExpbmVUZXJtaW5hdG9yIGhlcmVdIEFzc2VydENs
YXVzZTsKKworICBBc3NlcnRDbGF1c2U6CisgICAgYXNzZXJ0IHt9CisgICAgYXNzZXJ0IHtBc3Nl
cnRFbnRyaWVzICxvcHR9CisKKyAgQXNzZXJ0RW50cmllczoKKyAgICBBc3NlcnRpb25LZXkgOiBT
dHJpbmdMaXRlcmFsCisgICAgQXNzZXJ0aW9uS2V5IDogU3RyaW5nTGl0ZXJhbCAsIEFzc2VydEVu
dHJpZXMKKworICBBc3NlcnRpb25LZXk6CisgICAgSWRlbnRpZmllck5hbWUKKyAgICBTdHJpbmdM
aXRlcmFsCitmZWF0dXJlczogW2ltcG9ydC1hc3NlcnRpb25zXQorZmxhZ3M6IFttb2R1bGVdCist
LS0qLworCitpbXBvcnQgeCBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tMV9GSVhUVVJFLmpzJyBh
c3NlcnQge2lmOicnfTsKK2ltcG9ydCAnLi9pbXBvcnQtYXNzZXJ0aW9uLTJfRklYVFVSRS5qcycg
YXNzZXJ0IHtpZjonJ307CitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tM19GSVhU
VVJFLmpzJyBhc3NlcnQge2lmOicnfTsKKworYXNzZXJ0LnNhbWVWYWx1ZSh4LCAyNjIuMSk7Cith
c3NlcnQuc2FtZVZhbHVlKGdsb2JhbFRoaXMudGVzdDI2MiwgMjYyLjIpOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1wb3J0LWFzc2VydGlv
bi1rZXktc3RyaW5nLWRvdWJsZS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21v
ZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24ta2V5LXN0cmluZy1kb3VibGUuanMKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNjYzZWYyMjBjMzAxYjI3MTUwYmZkNmM3OWExYTg0YTNmNDk2YjcwMAotLS0gL2Rldi9udWxs
CisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1h
c3NlcnRpb24ta2V5LXN0cmluZy1kb3VibGUuanMKQEAgLTAsMCArMSwzMSBAQAorLy8gQ29weXJp
Z2h0IChDKSAyMDIxIHRoZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisvKi0tLQorZGVzY3JpcHRpb246ID4KKyAgQXNzZXJ0Q2xhdXNlIGlu
IEltcG9ydERlY2xhcmF0aW9uIG1heSB1c2UgYSBzdHJpbmcgbGl0ZXJhbCBhcyBhIGtleSAoZGVs
aW1pdGVkIHdpdGggVSswMDIyKQorZXNpZDogc2VjLW1vZHVsZXMKK2luZm86IHwKKyAgSW1wb3J0
RGVjbGFyYXRpb246CisgICAgaW1wb3J0IE1vZHVsZVNwZWNpZmllcltubyBMaW5lVGVybWluYXRv
ciBoZXJlXSBBc3NlcnRDbGF1c2U7CisKKyAgQXNzZXJ0Q2xhdXNlOgorICAgIGFzc2VydCB7fQor
ICAgIGFzc2VydCB7QXNzZXJ0RW50cmllcyAsb3B0fQorCisgIEFzc2VydEVudHJpZXM6CisgICAg
QXNzZXJ0aW9uS2V5IDogU3RyaW5nTGl0ZXJhbAorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xp
dGVyYWwgLCBBc3NlcnRFbnRyaWVzCisKKyAgQXNzZXJ0aW9uS2V5OgorICAgIElkZW50aWZpZXJO
YW1lCisgICAgU3RyaW5nTGl0ZXJhbAorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZ2xv
YmFsVGhpc10KK2ZsYWdzOiBbbW9kdWxlXQorLS0tKi8KKworaW1wb3J0IHggZnJvbSAnLi9pbXBv
cnQtYXNzZXJ0aW9uLTFfRklYVFVSRS5qcycgYXNzZXJ0IHsidGVzdDI2Mlx1MDA3OCI6Jyd9Owor
aW1wb3J0ICcuL2ltcG9ydC1hc3NlcnRpb24tMl9GSVhUVVJFLmpzJyBhc3NlcnQgeyJ0ZXN0MjYy
XHUwMDc4IjonJ307CitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tM19GSVhUVVJF
LmpzJyBhc3NlcnQgeyJ0ZXN0MjYyXHUwMDc4IjonJ307CisKK2Fzc2VydC5zYW1lVmFsdWUoeCwg
MjYyLjEpOworYXNzZXJ0LnNhbWVWYWx1ZShnbG9iYWxUaGlzLnRlc3QyNjIsIDI2Mi4yKTsKZGlm
ZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9y
dC1hc3NlcnRpb24ta2V5LXN0cmluZy1zaW5nbGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9s
YW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLWtleS1zdHJpbmctc2luZ2xlLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjRiMDRjNzA4Nzc5NWRhMTk3ZGMzYzRmMTEyMGRlMzhiMDM4ZmQxYTcKLS0t
IC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29k
ZS9pbXBvcnQtYXNzZXJ0aW9uLWtleS1zdHJpbmctc2luZ2xlLmpzCkBAIC0wLDAgKzEsMzEgQEAK
Ky8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjggcHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdvdmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBm
b3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyotLS0KK2Rlc2NyaXB0aW9uOiA+CisgIEFzc2Vy
dENsYXVzZSBpbiBJbXBvcnREZWNsYXJhdGlvbiBtYXkgdXNlIGEgc3RyaW5nIGxpdGVyYWwgYXMg
YSBrZXkgKGRlbGltaXRlZCB3aXRoIFUrMDAyNykKK2VzaWQ6IHNlYy1tb2R1bGVzCitpbmZvOiB8
CisgIEltcG9ydERlY2xhcmF0aW9uOgorICAgIGltcG9ydCBNb2R1bGVTcGVjaWZpZXJbbm8gTGlu
ZVRlcm1pbmF0b3IgaGVyZV0gQXNzZXJ0Q2xhdXNlOworCisgIEFzc2VydENsYXVzZToKKyAgICBh
c3NlcnQge30KKyAgICBhc3NlcnQge0Fzc2VydEVudHJpZXMgLG9wdH0KKworICBBc3NlcnRFbnRy
aWVzOgorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwKKyAgICBBc3NlcnRpb25LZXkg
OiBTdHJpbmdMaXRlcmFsICwgQXNzZXJ0RW50cmllcworCisgIEFzc2VydGlvbktleToKKyAgICBJ
ZGVudGlmaWVyTmFtZQorICAgIFN0cmluZ0xpdGVyYWwKK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2Vy
dGlvbnMsIGdsb2JhbFRoaXNdCitmbGFnczogW21vZHVsZV0KKy0tLSovCisKK2ltcG9ydCB4IGZy
b20gJy4vaW1wb3J0LWFzc2VydGlvbi0xX0ZJWFRVUkUuanMnIGFzc2VydCB7J3Rlc3QyNjJcdTAw
NzgnOicnfTsKK2ltcG9ydCAnLi9pbXBvcnQtYXNzZXJ0aW9uLTJfRklYVFVSRS5qcycgYXNzZXJ0
IHsndGVzdDI2Mlx1MDA3OCc6Jyd9OworZXhwb3J0ICogZnJvbSAnLi9pbXBvcnQtYXNzZXJ0aW9u
LTNfRklYVFVSRS5qcycgYXNzZXJ0IHsndGVzdDI2Mlx1MDA3OCc6Jyd9OworCithc3NlcnQuc2Ft
ZVZhbHVlKHgsIDI2Mi4xKTsKK2Fzc2VydC5zYW1lVmFsdWUoZ2xvYmFsVGhpcy50ZXN0MjYyLCAy
NjIuMik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUt
Y29kZS9pbXBvcnQtYXNzZXJ0aW9uLW1hbnkuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLW1hbnkuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmYw
YTQwNTc0MGMwZmQ2M2YxMmM4ODQwYmNiY2E2ZTI3ZTQxOGEyYQotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRp
b24tbWFueS5qcwpAQCAtMCwwICsxLDMxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4
IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBn
b3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8q
LS0tCitkZXNjcmlwdGlvbjogPgorICAgIEFzc2VydENsYXVzZSBpbiBJbXBvcnREZWNsYXJhdGlv
biBtYXkgY29udGFpbiBtdWx0aXBsZSBBc3NlcnRFbnRyaWVzCitlc2lkOiBzZWMtbW9kdWxlcwor
aW5mbzogfAorICBJbXBvcnREZWNsYXJhdGlvbjoKKyAgICBpbXBvcnQgTW9kdWxlU3BlY2lmaWVy
W25vIExpbmVUZXJtaW5hdG9yIGhlcmVdIEFzc2VydENsYXVzZTsKKworICBBc3NlcnRDbGF1c2U6
CisgICAgYXNzZXJ0IHt9CisgICAgYXNzZXJ0IHtBc3NlcnRFbnRyaWVzICxvcHR9CisKKyAgQXNz
ZXJ0RW50cmllczoKKyAgICBBc3NlcnRpb25LZXkgOiBTdHJpbmdMaXRlcmFsCisgICAgQXNzZXJ0
aW9uS2V5IDogU3RyaW5nTGl0ZXJhbCAsIEFzc2VydEVudHJpZXMKKworICBBc3NlcnRpb25LZXk6
CisgICAgSWRlbnRpZmllck5hbWUKKyAgICBTdHJpbmdMaXRlcmFsCitmZWF0dXJlczogW2ltcG9y
dC1hc3NlcnRpb25zLCBnbG9iYWxUaGlzXQorZmxhZ3M6IFttb2R1bGVdCistLS0qLworCitpbXBv
cnQgeCBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tMV9GSVhUVVJFLmpzJyBhc3NlcnQge3Rlc3Qy
NjJfMTonJyx0ZXN0MjYyXzI6JycsdGVzdDI2Ml8zOicnLHRlc3QyNjJfNDonJ307CitpbXBvcnQg
Jy4vaW1wb3J0LWFzc2VydGlvbi0yX0ZJWFRVUkUuanMnIGFzc2VydCB7dGVzdDI2Ml8xOicnLHRl
c3QyNjJfMjonJyx0ZXN0MjYyXzM6JycsdGVzdDI2Ml80OicnfTsKK2V4cG9ydCAqIGZyb20gJy4v
aW1wb3J0LWFzc2VydGlvbi0zX0ZJWFRVUkUuanMnIGFzc2VydCB7dGVzdDI2Ml8xOicnLHRlc3Qy
NjJfMjonJyx0ZXN0MjYyXzM6JycsdGVzdDI2Ml80OicnfTsKKworYXNzZXJ0LnNhbWVWYWx1ZSh4
LCAyNjIuMSk7Cithc3NlcnQuc2FtZVZhbHVlKGdsb2JhbFRoaXMudGVzdDI2MiwgMjYyLjIpOwpk
aWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvaW1w
b3J0LWFzc2VydGlvbi1uZXdsaW5lcy5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdl
L21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24tbmV3bGluZXMuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODBk
NDJjNzM2Y2U3YmVlYmU5OTBjYjdhODM5MzdmNmMxNzIzMWYwNQotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRp
b24tbmV3bGluZXMuanMKQEAgLTAsMCArMSw0OSBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRo
ZSBWOCBwcm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUg
aXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUu
CisvKi0tLQorZGVzY3JpcHRpb246ID4KKyAgQXNzZXJ0Q2xhdXNlIGluIEltcG9ydERlY2xhcmF0
aW9uIG1heSBpbmNsdWRlIGxpbmUgdGVybWluYXRvcnMKK2VzaWQ6IHNlYy1tb2R1bGVzCitpbmZv
OiB8CisgIEltcG9ydERlY2xhcmF0aW9uOgorICAgIGltcG9ydCBNb2R1bGVTcGVjaWZpZXJbbm8g
TGluZVRlcm1pbmF0b3IgaGVyZV0gQXNzZXJ0Q2xhdXNlOworCisgIEFzc2VydENsYXVzZToKKyAg
ICBhc3NlcnQge30KKyAgICBhc3NlcnQge0Fzc2VydEVudHJpZXMgLG9wdH0KKworICBBc3NlcnRF
bnRyaWVzOgorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwKKyAgICBBc3NlcnRpb25L
ZXkgOiBTdHJpbmdMaXRlcmFsICwgQXNzZXJ0RW50cmllcworCisgIEFzc2VydGlvbktleToKKyAg
ICBJZGVudGlmaWVyTmFtZQorICAgIFN0cmluZ0xpdGVyYWwKKworICBUaGlzIHRlc3QgdXNlcyBh
bGwgZm91ciBMaW5lRmVlZCBjaGFyYWN0ZXJzIGluIG9yZGVyIHRvIGNvbXBsZXRlbHkgdmVyaWZ5
IHRoZQorICBncmFtbWFyLgorZmVhdHVyZXM6IFtpbXBvcnQtYXNzZXJ0aW9ucywgZ2xvYmFsVGhp
c10KK2ZsYWdzOiBbbW9kdWxlXQorLS0tKi8KKworaW1wb3J0IHggZnJvbSAnLi9pbXBvcnQtYXNz
ZXJ0aW9uLTFfRklYVFVSRS5qcycgYXNzZXJ0CisN4oCo4oCpeworDeKAqOKAqXRlc3QyNjIKKw3i
gKjigKk6CisN4oCo4oCpJycKKw3igKjigKl9OworaW1wb3J0ICcuL2ltcG9ydC1hc3NlcnRpb24t
Ml9GSVhUVVJFLmpzJyBhc3NlcnQKKw3igKjigKl7CisN4oCo4oCpdGVzdDI2MgorDeKAqOKAqToK
Kw3igKjigKknJworDeKAqOKAqX07CitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24t
M19GSVhUVVJFLmpzJyBhc3NlcnQKKw3igKjigKl7CisN4oCo4oCpdGVzdDI2MgorDeKAqOKAqToK
Kw3igKjigKknJworDeKAqOKAqX07CisKK2Fzc2VydC5zYW1lVmFsdWUoeCwgMjYyLjEpOworYXNz
ZXJ0LnNhbWVWYWx1ZShnbG9iYWxUaGlzLnRlc3QyNjIsIDI2Mi4yKTsKZGlmZiAtLWdpdCBhL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24t
dHJsbmctY29tbWEuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29k
ZS9pbXBvcnQtYXNzZXJ0aW9uLXRybG5nLWNvbW1hLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFkYWNlZWY3N2Q3
NTM2MmY4NmFmMmZiNjFmOTFjZDM1MDViM2Q2MzMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLXRybG5n
LWNvbW1hLmpzCkBAIC0wLDAgKzEsMzEgQEAKKy8vIENvcHlyaWdodCAoQykgMjAyMSB0aGUgVjgg
cHJvamVjdCBhdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVGhpcyBjb2RlIGlzIGdv
dmVybmVkIGJ5IHRoZSBCU0QgbGljZW5zZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLyot
LS0KK2Rlc2NyaXB0aW9uOiA+CisgICAgQXNzZXJ0Q2xhdXNlIGluIEltcG9ydERlY2xhcmF0aW9u
IG1heSBjb250YWluIGEgdHJhaWxpbmcgY29tbWEKK2VzaWQ6IHNlYy1tb2R1bGVzCitpbmZvOiB8
CisgIEltcG9ydERlY2xhcmF0aW9uOgorICAgIGltcG9ydCBNb2R1bGVTcGVjaWZpZXJbbm8gTGlu
ZVRlcm1pbmF0b3IgaGVyZV0gQXNzZXJ0Q2xhdXNlOworCisgIEFzc2VydENsYXVzZToKKyAgICBh
c3NlcnQge30KKyAgICBhc3NlcnQge0Fzc2VydEVudHJpZXMgLG9wdH0KKworICBBc3NlcnRFbnRy
aWVzOgorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwKKyAgICBBc3NlcnRpb25LZXkg
OiBTdHJpbmdMaXRlcmFsICwgQXNzZXJ0RW50cmllcworCisgIEFzc2VydGlvbktleToKKyAgICBJ
ZGVudGlmaWVyTmFtZQorICAgIFN0cmluZ0xpdGVyYWwKK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2Vy
dGlvbnMsIGdsb2JhbFRoaXNdCitmbGFnczogW21vZHVsZV0KKy0tLSovCisKK2ltcG9ydCB4IGZy
b20gJy4vaW1wb3J0LWFzc2VydGlvbi0xX0ZJWFRVUkUuanMnIGFzc2VydCB7dGVzdDI2MjonJyx9
OworaW1wb3J0ICcuL2ltcG9ydC1hc3NlcnRpb24tMl9GSVhUVVJFLmpzJyBhc3NlcnQge3Rlc3Qy
NjI6JycsfTsKK2V4cG9ydCAqIGZyb20gJy4vaW1wb3J0LWFzc2VydGlvbi0zX0ZJWFRVUkUuanMn
IGFzc2VydCB7dGVzdDI2MjonJyx9OworCithc3NlcnQuc2FtZVZhbHVlKHgsIDI2Mi4xKTsKK2Fz
c2VydC5zYW1lVmFsdWUoZ2xvYmFsVGhpcy50ZXN0MjYyLCAyNjIuMik7CmRpZmYgLS1naXQgYS9K
U1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9u
LXZhbHVlLXN0cmluZy1kb3VibGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9t
b2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLXZhbHVlLXN0cmluZy1kb3VibGUuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNTljODEwZGVhYmRlYWRkNGVmNzYyOTI0ZDQyZmI0MWVkZGUyNWEzMwotLS0gL2Rldi9u
dWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2ltcG9y
dC1hc3NlcnRpb24tdmFsdWUtc3RyaW5nLWRvdWJsZS5qcwpAQCAtMCwwICsxLDMxIEBACisvLyBD
b3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogPgorICBBc3NlcnRDbGF1
c2UgaW4gSW1wb3J0RGVjbGFyYXRpb24gbWF5IHVzZSBhIHN0cmluZyBsaXRlcmFsIGFzIGEgdmFs
dWUgKGRlbGltaXRlZCB3aXRoIFUrMDAyMikKK2VzaWQ6IHNlYy1tb2R1bGVzCitpbmZvOiB8Cisg
IEltcG9ydERlY2xhcmF0aW9uOgorICAgIGltcG9ydCBNb2R1bGVTcGVjaWZpZXJbbm8gTGluZVRl
cm1pbmF0b3IgaGVyZV0gQXNzZXJ0Q2xhdXNlOworCisgIEFzc2VydENsYXVzZToKKyAgICBhc3Nl
cnQge30KKyAgICBhc3NlcnQge0Fzc2VydEVudHJpZXMgLG9wdH0KKworICBBc3NlcnRFbnRyaWVz
OgorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwKKyAgICBBc3NlcnRpb25LZXkgOiBT
dHJpbmdMaXRlcmFsICwgQXNzZXJ0RW50cmllcworCisgIEFzc2VydGlvbktleToKKyAgICBJZGVu
dGlmaWVyTmFtZQorICAgIFN0cmluZ0xpdGVyYWwKK2ZlYXR1cmVzOiBbaW1wb3J0LWFzc2VydGlv
bnMsIGdsb2JhbFRoaXNdCitmbGFnczogW21vZHVsZV0KKy0tLSovCisKK2ltcG9ydCB4IGZyb20g
Jy4vaW1wb3J0LWFzc2VydGlvbi0xX0ZJWFRVUkUuanMnIGFzc2VydCB7dGVzdDI2MjoiXHUwMDc4
In07CitpbXBvcnQgJy4vaW1wb3J0LWFzc2VydGlvbi0yX0ZJWFRVUkUuanMnIGFzc2VydCB7dGVz
dDI2MjoiXHUwMDc4In07CitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3NlcnRpb24tM19GSVhU
VVJFLmpzJyBhc3NlcnQge3Rlc3QyNjI6Ilx1MDA3OCJ9OworCithc3NlcnQuc2FtZVZhbHVlKHgs
IDI2Mi4xKTsKK2Fzc2VydC5zYW1lVmFsdWUoZ2xvYmFsVGhpcy50ZXN0MjYyLCAyNjIuMik7CmRp
ZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBv
cnQtYXNzZXJ0aW9uLXZhbHVlLXN0cmluZy1zaW5nbGUuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9tb2R1bGUtY29kZS9pbXBvcnQtYXNzZXJ0aW9uLXZhbHVlLXN0cmluZy1zaW5n
bGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYTZkNDczODYzY2VlOTVjMTU3ZmMyYWE2NTNhZmIxZjE1MTJiZTU5
ZQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVs
ZS1jb2RlL2ltcG9ydC1hc3NlcnRpb24tdmFsdWUtc3RyaW5nLXNpbmdsZS5qcwpAQCAtMCwwICsx
LDMxIEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxp
Y2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8qLS0tCitkZXNjcmlwdGlvbjogPgor
ICBBc3NlcnRDbGF1c2UgaW4gSW1wb3J0RGVjbGFyYXRpb24gbWF5IHVzZSBhIHN0cmluZyBsaXRl
cmFsIGFzIGEgdmFsdWUgKGRlbGltaXRlZCB3aXRoIFUrMDAyNykKK2VzaWQ6IHNlYy1tb2R1bGVz
CitpbmZvOiB8CisgIEltcG9ydERlY2xhcmF0aW9uOgorICAgIGltcG9ydCBNb2R1bGVTcGVjaWZp
ZXJbbm8gTGluZVRlcm1pbmF0b3IgaGVyZV0gQXNzZXJ0Q2xhdXNlOworCisgIEFzc2VydENsYXVz
ZToKKyAgICBhc3NlcnQge30KKyAgICBhc3NlcnQge0Fzc2VydEVudHJpZXMgLG9wdH0KKworICBB
c3NlcnRFbnRyaWVzOgorICAgIEFzc2VydGlvbktleSA6IFN0cmluZ0xpdGVyYWwKKyAgICBBc3Nl
cnRpb25LZXkgOiBTdHJpbmdMaXRlcmFsICwgQXNzZXJ0RW50cmllcworCisgIEFzc2VydGlvbktl
eToKKyAgICBJZGVudGlmaWVyTmFtZQorICAgIFN0cmluZ0xpdGVyYWwKK2ZlYXR1cmVzOiBbaW1w
b3J0LWFzc2VydGlvbnMsIGdsb2JhbFRoaXNdCitmbGFnczogW21vZHVsZV0KKy0tLSovCisKK2lt
cG9ydCB4IGZyb20gJy4vaW1wb3J0LWFzc2VydGlvbi0xX0ZJWFRVUkUuanMnIGFzc2VydCB7dGVz
dDI2MjonXHUwMDc4J307CitpbXBvcnQgJy4vaW1wb3J0LWFzc2VydGlvbi0yX0ZJWFRVUkUuanMn
IGFzc2VydCB7dGVzdDI2MjonXHUwMDc4J307CitleHBvcnQgKiBmcm9tICcuL2ltcG9ydC1hc3Nl
cnRpb24tM19GSVhUVVJFLmpzJyBhc3NlcnQge3Rlc3QyNjI6J1x1MDA3OCd9OworCithc3NlcnQu
c2FtZVZhbHVlKHgsIDI2Mi4xKTsKK2Fzc2VydC5zYW1lVmFsdWUoZ2xvYmFsVGhpcy50ZXN0MjYy
LCAyNjIuMik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1
bGUtY29kZS9pbnN0bi1zdGFyLWFzLXByb3BzLWRmbHQtc2tpcC5qcyBiL0pTVGVzdHMvdGVzdDI2
Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2luc3RuLXN0YXItYXMtcHJvcHMtZGZsdC1za2lw
LmpzCmluZGV4IDllMDAwN2M3NDEwMTAzYWMxOWM3MmQ5ZjhiZGRmMDE2Y2Y1YTM3NjQuLjNlYzRh
ODRmOGViMjhhNTFlNGU2ODM2YjNjYzhiZTYwNTMwMjJhMTggMTAwNjQ0Ci0tLSBhL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL2luc3RuLXN0YXItYXMtcHJvcHMtZGZs
dC1za2lwLmpzCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2Rl
L2luc3RuLXN0YXItYXMtcHJvcHMtZGZsdC1za2lwLmpzCkBAIC00Miw3ICs0Miw3IEBACiAgIFsu
Li5dCiBmbGFnczogW21vZHVsZV0KIGZlYXR1cmVzOiBbZXhwb3J0LXN0YXItYXMtbmFtZXNwYWNl
LWZyb20tbW9kdWxlXQotIC0tLSovCistLS0qLwogCiBpbXBvcnQge25hbWVkfSBmcm9tICcuL2lu
c3RuLXN0YXItcHJvcHMtZGZsdC1za2lwLXN0YXItYXMtbmFtZWRfRklYVFVSRS5qcyc7CiBpbXBv
cnQge3Byb2R1Y3Rpb259IGZyb20gJy4vaW5zdG4tc3Rhci1wcm9wcy1kZmx0LXNraXAtc3Rhci1h
cy1wcm9kX0ZJWFRVUkUuanMnOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFu
Z3VhZ2UvbW9kdWxlLWNvZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZhcmlhbnQtYXN5bmNfRklY
VFVSRS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1s
ZXZlbC1hd2FpdC9kZnMtaW52YXJpYW50LWFzeW5jX0ZJWFRVUkUuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2Y5
NDA1ZGFjZjhhMDg5Y2M2YjY5YjA4ZDJmYmI2OTNkNDdiYzk0YwotLS0gL2Rldi9udWxsCisrKyBi
L0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2Fp
dC9kZnMtaW52YXJpYW50LWFzeW5jX0ZJWFRVUkUuanMKQEAgLTAsMCArMSw0IEBACisvLyBDb3B5
cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4g
dGhlIExJQ0VOU0UgZmlsZS4KK2F3YWl0IDA7CitnbG9iYWxUaGlzLnRlc3QyNjIgPSAnYXN5bmMn
OwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUv
dG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZhcmlhbnQtZGlyZWN0LTFfRklYVFVSRS5qcyBiL0pTVGVz
dHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMt
aW52YXJpYW50LWRpcmVjdC0xX0ZJWFRVUkUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWJiZjA3MGM2NmQzNWU3
N2ExZDlhYjU4NzNhNDQzZWE0NmQ2MjgyYQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVz
dDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52YXJp
YW50LWRpcmVjdC0xX0ZJWFRVUkUuanMKQEAgLTAsMCArMSw0IEBACisvLyBDb3B5cmlnaHQgKEMp
IDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRo
aXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VO
U0UgZmlsZS4KK2ltcG9ydCAnLi9kZnMtaW52YXJpYW50LWFzeW5jX0ZJWFRVUkUuanMnOworZ2xv
YmFsVGhpcy50ZXN0MjYyICs9ICc6ZGlyZWN0LTEnOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0
MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZhcmlh
bnQtZGlyZWN0LTJfRklYVFVSRS5qcyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21v
ZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52YXJpYW50LWRpcmVjdC0yX0ZJWFRVUkUu
anMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYTMxODk2OThlMDU2M2IyYTA1MzA0MDcwZTA5NWE3NzY3NDJjNDRiNwot
LS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1j
b2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52YXJpYW50LWRpcmVjdC0yX0ZJWFRVUkUuanMKQEAg
LTAsMCArMSw0IEBACisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9y
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUg
QlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KK2ltcG9ydCAnLi9kZnMtaW52
YXJpYW50LWFzeW5jX0ZJWFRVUkUuanMnOworZ2xvYmFsVGhpcy50ZXN0MjYyICs9ICc6ZGlyZWN0
LTInOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNv
ZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZhcmlhbnQtaW5kaXJlY3RfRklYVFVSRS5qcyBiL0pT
VGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9k
ZnMtaW52YXJpYW50LWluZGlyZWN0X0ZJWFRVUkUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWUwYzI3MmI4Njli
ZDFlMDJkZjg0ZDgwMGViNmNmMDk1NWE1MDQ2ZQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMv
dGVzdDI2Mi90ZXN0L2xhbmd1YWdlL21vZHVsZS1jb2RlL3RvcC1sZXZlbC1hd2FpdC9kZnMtaW52
YXJpYW50LWluZGlyZWN0X0ZJWFRVUkUuanMKQEAgLTAsMCArMSw0IEBACisvLyBDb3B5cmlnaHQg
KEMpIDIwMjEgdGhlIFY4IHByb2plY3QgYXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJ
Q0VOU0UgZmlsZS4KK2ltcG9ydCAnLi9kZnMtaW52YXJpYW50LWRpcmVjdC0xX0ZJWFRVUkUuanMn
OworZ2xvYmFsVGhpcy50ZXN0MjYyICs9ICc6aW5kaXJlY3QnOwpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy90ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1p
bnZhcmlhbnQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9tb2R1bGUtY29kZS90
b3AtbGV2ZWwtYXdhaXQvZGZzLWludmFyaWFudC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYzk1MTI2NTBlOTgw
MDRhMDkwM2VmMGIxNGU4MmUxNmM3NGVlYTg1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy90
ZXN0MjYyL3Rlc3QvbGFuZ3VhZ2UvbW9kdWxlLWNvZGUvdG9wLWxldmVsLWF3YWl0L2Rmcy1pbnZh
cmlhbnQuanMKQEAgLTAsMCArMSw0MCBAQAorLy8gQ29weXJpZ2h0IChDKSAyMDIxIHRoZSBWOCBw
cm9qZWN0IGF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBUaGlzIGNvZGUgaXMgZ292
ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvKi0t
LQorZGVzY3JpcHRpb246IFBhcmVudCBjb21wbGV0aW9uIG9yZGVyaW5ncyBtYXRjaCB0aGUgc3lu
Y2hyb25vdXMgbW9kdWxlIGJlaGF2aW9yCitpbmZvOiB8CisgIDYuMi40IEFzeW5jTW9kdWxlRXhl
Y3V0aW9uRnVsZmlsbGVkICggbW9kdWxlICkKKworICBbLi4uXQorICA1LiBMZXQgX2V4ZWNMaXN0
XyBiZSBhIG5ldyBlbXB0eSBMaXN0LgorICA2LiBQZXJmb3JtICEgR2F0aGVyQXN5bmNQYXJlbnRD
b21wbGV0aW9ucyhfbW9kdWxlXywgX2V4ZWNMaXN0XykuCisgIDcuIExldCBfc29ydGVkRXhlY0xp
c3RfIGJlIGEgTGlzdCBvZiBlbGVtZW50cyB0aGF0IGFyZSB0aGUgZWxlbWVudHMgb2YKKyAgICAg
X2V4ZWNMaXN0XywgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZXkgaGFkIHRoZWlyIFtbQXN5bmNF
dmFsdWF0aW5nXV0KKyAgICAgZmllbGRzIHNldCB0byAqdHJ1ZSogaW4gSW5uZXJNb2R1bGVFdmFs
dWF0aW9uLgorICA4LiBBc3NlcnQ6IEFsbCBlbGVtZW50cyBvZiBfc29ydGVkRXhlY0xpc3RfIGhh
dmUgdGhlaXIgW1tBc3luY0V2YWx1YXRpbmddXQorICAgICBmaWVsZCBzZXQgdG8gKnRydWUqLCBb
W1BlbmRpbmdBc3luY0RlcGVuZGVuY2llc11dIGZpZWxkIHNldCB0byAwIGFuZAorICAgICBbW0V2
YWx1YXRpb25FcnJvcl1dIGZpZWxkIHNldCB0byAqdW5kZWZpbmVkKi4KKyAgWy4uLl0KKworICBE
ZXBlbmRlbmN5IGdyYXBoIGZvciB0aGlzIHRlc3Q6CisKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgZGZzLWludmFyaWFudC5qcworICAuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS4KKyAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAgICB2CisgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgZGZz
LWludmFyaWFudC1pbmRpcmVjdF9GSVhUVVJFLmpzCisgIHwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLi0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tJworICB2ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHYgICB2CisgIGRmcy1pbnZhcmlhbnQtZGlyZWN0LTFfRklYVFVSRS5q
cyAgIGRmcy1pbnZhcmlhbnQtZGlyZWN0LTJfRklYVFVSRS5qcworICAgICAgICAgICAgJy0tLS0t
LS0tLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLS0tLS0tLS0nCisgICAgICAgICAgICAg
ICAgICAgICB2ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYKKyAgICAgICAgICAgICAgICAg
ICAgIGRmcy1pbnZhcmlhbnQtYXN5bmNfRklYVFVSRS5qcworZXNpZDogc2VjLW1vZHVsZWV2YWx1
YXRpb24KK2ZsYWdzOiBbbW9kdWxlXQorZmVhdHVyZXM6IFt0b3AtbGV2ZWwtYXdhaXQsIGdsb2Jh
bFRoaXNdCistLS0qLworCitpbXBvcnQgJy4vZGZzLWludmFyaWFudC1kaXJlY3QtMV9GSVhUVVJF
LmpzJzsKK2ltcG9ydCAnLi9kZnMtaW52YXJpYW50LWRpcmVjdC0yX0ZJWFRVUkUuanMnOworaW1w
b3J0ICcuL2Rmcy1pbnZhcmlhbnQtaW5kaXJlY3RfRklYVFVSRS5qcyc7CisKK2Fzc2VydC5zYW1l
VmFsdWUoZ2xvYmFsVGhpcy50ZXN0MjYyLCAnYXN5bmM6ZGlyZWN0LTE6ZGlyZWN0LTI6aW5kaXJl
Y3QnKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0YXRlbWVu
dHMvZm9yLW9mL2hlYWQtbGhzLWFzeW5jLWVzY2FwZWQuanMgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVz
dC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Zvci1vZi9oZWFkLWxocy1hc3luYy1lc2NhcGVkLmpzCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjA0OGI5ZDBlYjkyMDVlOTA4N2EzMzA0NzIyZjlkMTIwMDkwYWQ0YzIKLS0tIC9k
ZXYvbnVsbAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Zv
ci1vZi9oZWFkLWxocy1hc3luYy1lc2NhcGVkLmpzCkBAIC0wLDAgKzEsMTggQEAKKy8vIENvcHly
aWdodCAoQykgMjAyMSBTdHVhcnQgQ29vay4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFRoaXMg
Y29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKworLyotLS0KK2VzaWQ6IHNlYy1mb3ItaW4tYW5kLWZvci1vZi1zdGF0ZW1lbnRzCitk
ZXNjcmlwdGlvbjogPgorICBUaGUgbGVmdC1oYW5kLXNpZGUgb2YgYSBmb3Itb2YgbG9vcCBtYXkg
YmUgdGhlIGlkZW50aWZpZXIgYGFzeW5jYCB3cml0dGVuCisgIHdpdGggYW4gZXNjYXBlIHNlcXVl
bmNlLgoraW5mbzogfAorICBGb3JJbk9mU3RhdGVtZW50W1lpZWxkLCBBd2FpdCwgUmV0dXJuXSA6
CisgICAgZm9yICggW2xvb2thaGVhZCDiiIkgeyBsZXQsIGFzeW5jIG9mIH1dIExlZnRIYW5kU2lk
ZUV4cHJlc3Npb25bP1lpZWxkLCA/QXdhaXRdIG9mIEFzc2lnbm1lbnRFeHByZXNzaW9uWytJbiwg
P1lpZWxkLCA/QXdhaXRdICkgU3RhdGVtZW50Wz9ZaWVsZCwgP0F3YWl0LCA/UmV0dXJuXQorLS0t
Ki8KKworbGV0IGFzeW5jOworCitmb3IgKFx1MDA2MXN5bmMgb2YgWzddKTsKKworYXNzZXJ0LnNh
bWVWYWx1ZShhc3luYywgNyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3Rlc3QyNjIvdGVzdC9sYW5n
dWFnZS9zdGF0ZW1lbnRzL2Zvci1vZi9oZWFkLWxocy1hc3luYy1wYXJlbnMuanMgYi9KU1Rlc3Rz
L3Rlc3QyNjIvdGVzdC9sYW5ndWFnZS9zdGF0ZW1lbnRzL2Zvci1vZi9oZWFkLWxocy1hc3luYy1w
YXJlbnMuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYmE3Y2YzZTQ0Y2RlYWM2YmNmNTg3N2JhMzAxM2FkNGJmNjA0
N2MxMQotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvdGVzdDI2Mi90ZXN0L2xhbmd1YWdlL3N0
YXRlbWVudHMvZm9yLW9mL2hlYWQtbGhzLWFzeW5jLXBhcmVucy5qcwpAQCAtMCwwICsxLDE4IEBA
CisvLyBDb3B5cmlnaHQgKEMpIDIwMjEgU3R1YXJ0IENvb2suIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRo
ZSBMSUNFTlNFIGZpbGUuCisKKy8qLS0tCitlc2lkOiBzZWMtZm9yLWluLWFuZC1mb3Itb2Ytc3Rh
dGVtZW50cworZGVzY3JpcHRpb246ID4KKyAgVGhlIGxlZnQtaGFuZC1zaWRlIG9mIGEgZm9yLW9m
IGxvb3AgbWF5IGJlIHRoZSBpZGVudGlmaWVyIGBhc3luY2AKKyAgc3Vycm91bmRlZCBieSBwYXJl
bnRoZXNlcy4KK2luZm86IHwKKyAgRm9ySW5PZlN0YXRlbWVudFtZaWVsZCwgQXdhaXQsIFJldHVy
bl0gOgorICAgIGZvciAoIFtsb29rYWhlYWQg4oiJIHsgbGV0LCBhc3luYyBvZiB9XSBMZWZ0SGFu
ZFNpZGVFeHByZXNzaW9uWz9ZaWVsZCwgP0F3YWl0XSBvZiBBc3NpZ25tZW50RXhwcmVzc2lvblsr
SW4sID9ZaWVsZCwgP0F3YWl0XSApIFN0YXRlbWVudFs/WWllbGQsID9Bd2FpdCwgP1JldHVybl0K
Ky0tLSovCisKK2xldCBhc3luYzsKKworZm9yICgoYXN5bmMpIG9mIFs3XSk7CisKK2Fzc2VydC5z
YW1lVmFsdWUoYXN5bmMsIDcpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy90ZXN0MjYyL3Rlc3QyNjIt
UmV2aXNpb24udHh0IGIvSlNUZXN0cy90ZXN0MjYyL3Rlc3QyNjItUmV2aXNpb24udHh0CmluZGV4
IDRhYmQ1ZmM5MjBlZDYwYjdjYzJjZWE5MmI3NjYzNWY2MTg5NTYxNjEuLmZkZGI2YzhiNzM0ZmEz
Y2ZlZmM0MGE3ZjMzZGQwOTc4MTVjN2FiOTcgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvdGVzdDI2Mi90
ZXN0MjYyLVJldmlzaW9uLnR4dAorKysgYi9KU1Rlc3RzL3Rlc3QyNjIvdGVzdDI2Mi1SZXZpc2lv
bi50eHQKQEAgLTEsMiArMSwyIEBACi10ZXN0MjYyIHJlbW90ZSB1cmw6IGh0dHBzOi8vZ2l0aHVi
LmNvbS90YzM5L3Rlc3QyNjIuZ2l0Ci10ZXN0MjYyIHJldmlzaW9uOiBjMTFkNmIwMGJjMmM1MzMy
M2ZlMjZhNTgxM2E3MjBmZDc0Y2QyNWFkCit0ZXN0MjYyIHJlbW90ZSB1cmw6IGdpdEBnaXRodWIu
Y29tOnRjMzkvdGVzdDI2Mi5naXQKK3Rlc3QyNjIgcmV2aXNpb246IGE2YTg5NWRiMTJjZjEzYzNl
NzQxNmE1OGEwNTY0Y2EzYzIzOGFjYjAK
</data>
<flag name="review"
          id="455449"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
          </attachment>
      

    </bug>

</bugzilla>