<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>197630</bug_id>
          
          <creation_ts>2007-10-31 13:00 0000</creation_ts>
          <short_desc>sys-power/hibernate-script-1.97 reports &quot;/sys/power/tuxonice/: Is a directory&quot; and dies</short_desc>
          <delta_ts>2007-11-03 14:57:15 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Applications</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mrfree@infinito.it</reporter>
          <assigned_to>alonbl@gentoo.org</assigned_to>
          <cc>mobile@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-10-31 13:00:01 0000</bug_when>
            <thetext>cat: /sys/power/tuxonice/: Is a directory
ABORTING: /sys/power/tuxonice/ did not return a valid result.
hibernate: Aborting.

I&apos;m using the fileallocator, I remember a similar problem with the 1.96 version.. but I&apos;m not sure about this.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-10-31 14:20:36 0000</bug_when>
            <thetext>Please paste the output of hibernate runs with --verbosity=4
Thanks.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-10-31 15:05:14 0000</bug_when>
            <thetext>Created an attachment (id=134805)
hibernate-script-1.97-suspend2.patch

Please try this patch.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-10-31 15:47:45 0000</bug_when>
            <thetext>Created an attachment (id=134812)
hibernate verb=4, patched suspend2

Using your patch the hibernate script dies with:

You haven&apos;t specified a resume=/resume2= parameter on your kernel command line

Your GRUB or LILO config should have something like resume=swap:/dev/hdaX
where /dev/hdaX is your swap partition. You will then need to either reboot
after doing so or set it manually (this time only) using:
    echo swap:/dev/hdaX &gt; /sys/power/tuxonice/resume
hibernate: Aborting.

This is wrong because I&apos;m using firewriter and my cmdline is correct</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-10-31 15:58:17 0000</bug_when>
            <thetext>Created an attachment (id=134813)
hibernate verb=4, original (1.97) suspend2

This is the output of &quot;hibernate --verbosity=4&quot; using the original suspend2 file shipped with the 1.97 version</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-01 19:08:14 0000</bug_when>
            <thetext>Created an attachment (id=134937)
suspend2.patch

This is a simple patch as suggested by Pat Double on the suspend2-users mailing-list.

Using this patch the problem disappears but I receive:

# hibernate
/bin/echo: write error: Device or resource busy</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-01 19:09:08 0000</bug_when>
            <thetext>Created an attachment (id=134938)
debug-busy

These are the debug messages with the previously attached patch</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-01 20:08:00 0000</bug_when>
            <thetext>Oops my bad! The patch doesn&apos;t solve the problem :( 

I forgot I added &quot;VerifyFilewriterResume2 no&quot; to my suspend2.conf for
testing (it seems to skip the problem &quot;is a directory&quot; but hibernate script still not work).</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-11-02 19:11:15 0000</bug_when>
            <thetext>You are trying to use sysfs and not suspend2 (DoSysfsPowerStateSuspend).
Please disable suspend emulation in suspend2 kernel configuration.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-02 22:21:47 0000</bug_when>
            <thetext>(In reply to comment #8)
&gt; You are trying to use sysfs and not suspend2 (DoSysfsPowerStateSuspend).
&gt; Please disable suspend emulation in suspend2 kernel configuration.

What do you mean? I tried to disable &quot;Suspend to RAM and standby&quot; and &quot;Replace swsusp by default&quot; but same &quot;is directory&quot; issue here.

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
CONFIG_PM_LEGACY=y
# CONFIG_PM_DEBUG is not set
CONFIG_PM_SLEEP=y
CONFIG_SUSPEND_UP_POSSIBLE=y
# CONFIG_SUSPEND is not set
CONFIG_HIBERNATION_UP_POSSIBLE=y
CONFIG_HIBERNATION=y
CONFIG_PM_STD_PARTITION=&quot;&quot;
CONFIG_TOI_CORE=y

#
# Image Storage (you need at least one allocator)
#
CONFIG_TOI_FILE=y
# CONFIG_TOI_SWAP is not set

#
# General Options
#
CONFIG_TOI_CRYPTO=y
CONFIG_TOI_USERUI=y
CONFIG_TOI_USERUI_DEFAULT_PATH=&quot;/sbin/tuxoniceui_fbsplash&quot;
# CONFIG_TOI_KEEP_IMAGE is not set
# CONFIG_TOI_REPLACE_SWSUSP is not set
CONFIG_TOI_CHECKSUM=y
CONFIG_TOI_DEFAULT_WAIT=25
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-11-02 23:19:31 0000</bug_when>
            <thetext>Can you please apply my patch again? (attachment#134805)

1. Paste the output of:
cat /sys/power/tuxonice/resume

2. Execute:
hibernate --config-file=/etc/hibernate/suspend2.conf --verbosity=4

Thanks.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-03 12:02:35 0000</bug_when>
            <thetext>I re-emerged hibernate-script and applied your patch.

The /sys/power/tuxonice/resume was empty so I tried to use resume= instead of resume2= in my cmdline and now the suspend process seems to work (it seems I need to add --config-file=/etc/hibernate/suspend2.conf otherwise hibernate script dies with the &quot;/bin/echo: write error: Device or resource busy&quot; error) but the resume process *doesn&apos;t start* (the system boots normally) and there isn&apos;t any suspend/tuxonice message in dmesg.

I&apos;ve just emerged sys-kernel/genkernel-3.4.9_pre6 and used it to build both kernel and initrd image.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-11-03 12:10:31 0000</bug_when>
            <thetext>See bug#197244 for genkernel patch.

After you have working system, we determine why it was not detected automatically.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-03 13:58:57 0000</bug_when>
            <thetext>Ok using both your patch (suspend2 and genkernel) now I am able to suspend and resume my laptop using tuxonice ;) Many thanks!

I reported the hibernate script bug upstream too and a patch slightly different from your was submitted, please take a look here http://bugzilla.tuxonice.net/show_bug.cgi?id=339

Now I&apos;d like to know why the hibernate script doesn&apos;t recognize my shining tuxonice capable system :)

# cat /etc/hibernate/hibernate.conf 
TryMethod suspend2.conf
TryMethod disk.conf
TryMethod ram.conf
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-11-03 14:10:21 0000</bug_when>
            <thetext>Please paste a new debug log, with suspend2.conf and without.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-03 14:25:43 0000</bug_when>
            <thetext>Created an attachment (id=135085)
debug-with -F/etc/hibernate/suspend2.conf

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-03 14:26:42 0000</bug_when>
            <thetext>Created an attachment (id=135087)
debug-without

This time it worked without the -F/etc/hibernate/suspend2.conf too</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>alonbl@gentoo.org</who>
            <bug_when>2007-11-03 14:32:17 0000</bug_when>
            <thetext>So, can we close this bug?
Or you can reproduce a none working scenario?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mrfree@infinito.it</who>
            <bug_when>2007-11-03 14:37:29 0000</bug_when>
            <thetext>I think so. I will eventually reopen this bug if I&apos;ll find a new non-working scenario.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134805</attachid>
            <date>2007-10-31 15:05 0000</date>
            <desc>hibernate-script-1.97-suspend2.patch</desc>
            <filename>hibernate-script-1.97-suspend2.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">SW5kZXg6IHN1c3BlbmQyCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN1c3BlbmQyCShyZXZpc2lvbiAxMTYxKQor
Kysgc3VzcGVuZDIJKHdvcmtpbmcgY29weSkKQEAgLTIxMSw4ICsyMTEsOCBAQAogCQl2ZWNobyAw
ICIkRVhFOiBGaWxld3JpdGVyIHNpemUgaXMgbm90IG51bWVyaWMhIgogCQlleGl0IDEKIAkgICAg
ZmkKLQkgICAgQWRkU3VzcGVuZEhvb2sgMDYgU3dzdXNwMlNldHVwRmlsZXdyaXRlcgotCSAgICBB
ZGRSZXN1bWVIb29rIDA2IFN3c3VzcDJDbGVhbnVwRmlsZXdyaXRlcgorCSAgICBBZGRTdXNwZW5k
SG9vayAxMSBTd3N1c3AyU2V0dXBGaWxld3JpdGVyCisJICAgIEFkZFJlc3VtZUhvb2sgMTEgU3dz
dXNwMkNsZWFudXBGaWxld3JpdGVyCiAJICAgIDs7CiAJdmVyaWZ5ZmlsZXdyaXRlcnJlc3VtZTIp
CiAJICAgIEJvb2xJc09uICIkMSIgIiQyIiAmJiByZXR1cm4gMApAQCAtNjkxLDcgKzY5MSw3IEBA
CiAgICAgcmVhZCBSRVBMWSA8ICRTV1NVU1BfUk9PVC8kUkVTVU1FMl9GSUxFCiAgICAgaWYgWyAt
eiAiJFJFUExZIiBdIDsgdGhlbgogCWNhdCA8PEVPVAotWW91IGhhdmVuJ3Qgc3BlY2lmaWVkIGEg
cmVzdW1lMj0gcGFyYW1ldGVyIG9uIHlvdXIga2VybmVsIGNvbW1hbmQgbGluZQorWW91IGhhdmVu
J3Qgc3BlY2lmaWVkIGEgcmVzdW1lPS9yZXN1bWUyPSBwYXJhbWV0ZXIgb24geW91ciBrZXJuZWwg
Y29tbWFuZCBsaW5lCiAKIFlvdXIgR1JVQiBvciBMSUxPIGNvbmZpZyBzaG91bGQgaGF2ZSBzb21l
dGhpbmcgbGlrZSAkUkVTVU1FMl9GSUxFPXN3YXA6L2Rldi9oZGFYCiB3aGVyZSAvZGV2L2hkYVgg
aXMgeW91ciBzd2FwIHBhcnRpdGlvbi4gWW91IHdpbGwgdGhlbiBuZWVkIHRvIGVpdGhlciByZWJv
b3QKQEAgLTgwMCw5ICs4MDAsNiBAQAogICAgIGVjaG8gIiRTV1NVU1BfRklMRVdSSVRFUl9MT0Mi
ID4gJEhJQkVSTkFURV9GSUxFV1JJVEVSX1RSQUlMCiAgICAgY2htb2QgNjAwICRISUJFUk5BVEVf
RklMRVdSSVRFUl9UUkFJTAogCi0gICAgIyBEb24ndCBvdmVyd3JpdGUgdGhlIHJlc3VtZTIgbGlu
ZSBub3cuCi0gICAgU1dTVVNQX1JFU1VNRTI9IiRuZXdfcmVzdW1lMiIKLQogICAgICMgTm93IHZl
cmlmeSBvdXIgcmVzdW1lMiBpcyBjb3JyZWN0IHVubGVzcyB0b2xkIG90aGVyd2lzZS4KICAgICBb
IHgiJFNXU1VTUF9GSUxFV1JJVEVSX05PVkVSSUZZIiA9ICJ4MSIgXSAmJiByZXR1cm4gMAogCg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>134812</attachid>
            <date>2007-10-31 15:47 0000</date>
            <desc>hibernate verb=4, patched suspend2</desc>
            <filename>debug-patched</filename>
            <type>text/plain</type>
            <data encoding="base64">aGliZXJuYXRlOiBUcnlpbmcgbWV0aG9kIGluIHN1c3BlbmQyLmNvbmYuLi4KaGliZXJuYXRlOiBJ
bmNsdWRpbmcgY29uZmlndXJhdGlvbiBmcm9tIGNvbW1vbi5jb25mClVzaW5nICcvZXRjL2luaXQu
ZCcgYXMgaW5pdC5kIGRpcmVjdG9yeS4KKysgZGF0ZQorIGVjaG8gJ1N0YXJ0aW5nIHN1c3BlbmQg
YXQgbWVyJyBvdHQgMzEgMTY6NDM6NDkgQ0VUIDIwMDcKKyB0ZWUgLWEgLWkgL3Zhci9sb2cvaGli
ZXJuYXRlLmxvZworIEVYSVRfQ09ERT0wCisgJ1snICd0ZWUgLWEgLWkgL3Zhci9sb2cvaGliZXJu
YXRlLmxvZycgPSBjYXQgJ10nCisgJ1snIC1uIDEgJ10nCisgRG9Xb3JrCisgdHJhcCBjdHJsY19o
YW5kbGVyIElOVCBIVVAKKyBsb2NhbCByZXQKKyBsb2NhbCBDSEFJTl9VUF9UTworIGxvY2FsIGJp
dAorIENIQUlOX1VQX1RPPTAKKysgU29ydFN1c3BlbmRCaXRzCisrIHNvcnQgLW4KKysgL2Jpbi9l
Y2hvIC1uZSAnMTlMb2dvdXRQaWRnaW5cbjMwU2VydmljZXNTdG9wXG45MU1vZHVsZXNVbmxvYWRC
bGFja2xpc3RcbjQ1RlNUeXBlc1VubW91bnRcbjk1WEhhY2tzU3VzcGVuZEhvb2syXG4xMVhIYWNr
c1N1c3BlbmRIb29rMVxuOTRGQlNwbGFzaFByb2dyZXNzXG45MEZCU3BsYXNoUHJvZ3Jlc3Ncbjgw
RkJTcGxhc2hQcm9ncmVzc1xuNzBGQlNwbGFzaFByb2dyZXNzXG42MEZCU3BsYXNoUHJvZ3Jlc3Nc
bjUwRkJTcGxhc2hQcm9ncmVzc1xuNDBGQlNwbGFzaFByb2dyZXNzXG4zMEZCU3BsYXNoUHJvZ3Jl
c3NcbjIwRkJTcGxhc2hQcm9ncmVzc1xuMTJGQlNwbGFzaFN0YXJ0U3VzcGVuZFxuOThGdWxsU3Bl
ZWRDUFVTdXNwZW5kXG4xMVN3c3VzcDJTZXR1cEZpbGV3cml0ZXJcbjcwQ2xvY2tTYXZlXG45OFN3
c3VzcDJDb25maWdTZXRcbjk5RG9Td3N1c3AyXG45N0NoYW5nZVRvU3dzdXNwVlRcbjEwRW5zdXJl
U3dzdXNwMkNhcGFibGVcbjU5UmVtb3VudFhGU0Jvb3RST1xuMDFOZXdLZXJuZWxGaWxlQ2hlY2tc
bjg5U2F2ZUtlcm5lbE1vZHByb2JlXG45OENoZWNrUnVubGV2ZWxcbjAxQ2hlY2tSdW5sZXZlbFxu
MDFDaGVja0xhc3RSZXN1bWVcbjAxTG9ja0ZpbGVHZXRcbicKKyBmb3IgYml0IGluICdgU29ydFN1
c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBz
dWJzdHIoIjAxQ2hlY2tMYXN0UmVzdW1lIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0wMQor
ICdbJyAtbiAwMSAnXScKKyBDSEFJTl9VUF9UTz0wMQorIGJpdD1DaGVja0xhc3RSZXN1bWUKKyB2
ZWNobyAxICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIENoZWNrTGFzdFJlc3VtZSAuLi4gJwor
IGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10n
CisgZWNobyBoaWJlcm5hdGU6ICdbMDFdJyBFeGVjdXRpbmcgQ2hlY2tMYXN0UmVzdW1lIC4uLgor
ICdbJyAtbiAnJyAnXScKKyBDaGVja0xhc3RSZXN1bWUKKyAnWycgLWYgL3Zhci9ydW4vaGliZXJu
YXRlLWxhc3QtcmVzdW1lICddJworIGxvY2FsIGxhc3RfcmVzdW1lIG5vdworIHJlYWQgbGFzdF9y
ZXN1bWUKKysgZGF0ZSArJXMKKyBub3c9MTE5Mzg0NTQyOQorICdbJyAxMTkzODQ1NDI5IC1ndCAx
MTkzODQ1NDIwICddJworIHJtIC1mIC92YXIvcnVuL2hpYmVybmF0ZS1sYXN0LXJlc3VtZQorIHJl
dHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycg
LW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NI
QUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUNoZWNrUnVubGV2ZWwiLCAx
LCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTAxCisgJ1snIC1uIDAxICddJworIENIQUlOX1VQX1RP
PTAxCisgYml0PUNoZWNrUnVubGV2ZWwKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0
aW5nIENoZWNrUnVubGV2ZWwgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9
IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0
aW5nIENoZWNrUnVubGV2ZWwgLi4uCisgJ1snIC1uICcnICddJworIENoZWNrUnVubGV2ZWwKKyAn
WycgLXogJycgJ10nCisrIC9zYmluL3J1bmxldmVsCisrIGF3ayAne3ByaW50ICQyfScKKyBSVU5M
RVZFTD0zCisgY2FzZSAiJHtSVU5MRVZFTH0iIGluCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAw
IC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGlu
ICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJ
TntwcmludCBzdWJzdHIoIjAxTG9ja0ZpbGVHZXQiLCAxLCAyKX0nCisgdGVlIC1hIC1pIC92YXIv
bG9nL2hpYmVybmF0ZS5sb2cKaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBDaGVja0xhc3RSZXN1
bWUgLi4uCmhpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgQ2hlY2tSdW5sZXZlbCAuLi4KKyBuZXdf
Q0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEgJ10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9TG9j
a0ZpbGVHZXQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIExvY2tGaWxlR2V0
IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAt
bGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1swMV0nIEV4ZWN1dGluZyBMb2NrRmlsZUdldCAu
Li4KaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBMb2NrRmlsZUdldCAuLi4KKyAnWycgLW4gJycg
J10nCisgTG9ja0ZpbGVHZXQKKyBsb2NhbCBvdGhlcl9waWQKKyAnWycgLWYgL3Zhci9ydW4vaGli
ZXJuYXRlLXNjcmlwdC5waWQgJ10nCisgZWNobyA3NTQ2CisgTE9DS0ZJTEVfSU5fVVNFPTEKKyBy
ZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1sn
IC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19D
SEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFOZXdLZXJuZWxGaWxlQ2hl
Y2siLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTAxCisgJ1snIC1uIDAxICddJworIENIQUlO
X1VQX1RPPTAxCisgYml0PU5ld0tlcm5lbEZpbGVDaGVjaworIHZlY2hvIDEgJ2hpYmVybmF0ZTog
WzAxXSBFeGVjdXRpbmcgTmV3S2VybmVsRmlsZUNoZWNrIC4uLiAnCisgbG9jYWwgdgorIHY9MQor
IHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0
ZTogJ1swMV0nIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4uCmhpYmVybmF0ZTogWzAx
XSBFeGVjdXRpbmcgTmV3S2VybmVsRmlsZUNoZWNrIC4uLgorICdbJyAtbiAnJyAnXScKKyBOZXdL
ZXJuZWxGaWxlQ2hlY2sKKyAnWycgLWYgL3Zhci9ydW4vc3VzcGVuZDItbmV3LWtlcm5lbCAnXScK
KyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisg
J1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5l
d19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMTBFbnN1cmVTd3N1c3Ay
Q2FwYWJsZSIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MTAKKyAnWycgLW4gMTAgJ10nCisg
Q0hBSU5fVVBfVE89MTAKKyBiaXQ9RW5zdXJlU3dzdXNwMkNhcGFibGUKKyB2ZWNobyAxICdoaWJl
cm5hdGU6IFsxMF0gRXhlY3V0aW5nIEVuc3VyZVN3c3VzcDJDYXBhYmxlIC4uLiAnCisgbG9jYWwg
dgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hv
IGhpYmVybmF0ZTogJ1sxMF0nIEV4ZWN1dGluZyBFbnN1cmVTd3N1c3AyQ2FwYWJsZSAuLi4KaGli
ZXJuYXRlOiBbMTBdIEV4ZWN1dGluZyBFbnN1cmVTd3N1c3AyQ2FwYWJsZSAuLi4KKyAnWycgLW4g
JycgJ10nCisgRW5zdXJlU3dzdXNwMkNhcGFibGUKKyBsb2NhbCB2ZXIKKyAnWycgLWQgL3N5cy9w
b3dlci90dXhvbmljZSAnXScKKyAnWycgLWYgL3N5cy9wb3dlci90dXhvbmljZS9hY3RpdmF0ZSAn
XScKKyAnWycgLWYgL3N5cy9wb3dlci90dXhvbmljZS9kb19zdXNwZW5kICddJworICdbJyAtZiAv
c3lzL3Bvd2VyL3R1eG9uaWNlL2RvX2hpYmVybmF0ZSAnXScKKyAnWycgJyEnIC1mIC9zeXMvcG93
ZXIvdHV4b25pY2UvdmVyc2lvbiAnXScKKyBTd3N1c3BJc0F0TGVhc3RWZXJzaW9uIDMzNTU0NTM1
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjE2Nzc3MjE2KSsoJDIqNjU1MzYp
KygkMyoyNTYpKyQ0fScgL3N5cy9wb3dlci90dXhvbmljZS92ZXJzaW9uCisgdmVyPTUwMzMxNjQ4
CisgJ1snIDUwMzMxNjQ4IC1nZSAzMzU1NDUzNSAnXScKKyByZXR1cm4gMAorICdbJyB4MSAnIT0n
IHgxICddJworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL3Jlc3VtZTIgJ10nCisgJ1snIC1m
IC9zeXMvcG93ZXIvdHV4b25pY2UvcmVzdW1lICddJworIFJFU1VNRTJfRklMRT1yZXN1bWUKKyAn
WycgLW4gcmVzdW1lICddJworICdbJyAtbiAnJyAnXScKKyByZWFkIFJFUExZCisgJ1snIC16ICcn
ICddJworIGNhdApZb3UgaGF2ZW4ndCBzcGVjaWZpZWQgYSByZXN1bWU9L3Jlc3VtZTI9IHBhcmFt
ZXRlciBvbiB5b3VyIGtlcm5lbCBjb21tYW5kIGxpbmUKCllvdXIgR1JVQiBvciBMSUxPIGNvbmZp
ZyBzaG91bGQgaGF2ZSBzb21ldGhpbmcgbGlrZSByZXN1bWU9c3dhcDovZGV2L2hkYVgKd2hlcmUg
L2Rldi9oZGFYIGlzIHlvdXIgc3dhcCBwYXJ0aXRpb24uIFlvdSB3aWxsIHRoZW4gbmVlZCB0byBl
aXRoZXIgcmVib290CmFmdGVyIGRvaW5nIHNvIG9yIHNldCBpdCBtYW51YWxseSAodGhpcyB0aW1l
IG9ubHkpIHVzaW5nOgogICAgZWNobyBzd2FwOi9kZXYvaGRhWCA+IC9zeXMvcG93ZXIvdHV4b25p
Y2UvcmVzdW1lCisgcmV0dXJuIDIKKyByZXQ9MgorICdbJyAyIC1nZSAyICddJworICdbJyAyIC1l
cSAyICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogRW5zdXJlU3dzdXNwMkNhcGFibGUgcmVmdXNl
cyB0byBsZXQgdXMgY29udGludWUuJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0g
eDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6IEVuc3VyZVN3c3VzcDJD
YXBhYmxlIHJlZnVzZXMgdG8gbGV0IHVzIGNvbnRpbnVlLgpoaWJlcm5hdGU6IEVuc3VyZVN3c3Vz
cDJDYXBhYmxlIHJlZnVzZXMgdG8gbGV0IHVzIGNvbnRpbnVlLgorIHZlY2hvIDAgJ2hpYmVybmF0
ZTogQWJvcnRpbmcuJworIGxvY2FsIHYKKyB2PTAKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisg
J1snIDAgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6IEFib3J0aW5nLgpoaWJlcm5hdGU6IEFi
b3J0aW5nLgorIEVYSVRfQ09ERT0yCisgYnJlYWsKKysgU29ydFJlc3VtZUJpdHMKKysgc29ydCAt
cm4KKysgL2Jpbi9lY2hvIC1uZSAnMTlMb2dpblBpZGdpblxuMzBTZXJ2aWNlc1N0YXJ0XG45ME1v
ZHVsZXNMb2FkXG44NVhIYWNrc1Jlc3VtZUhvb2syXG4xMVhIYWNrc1Jlc3VtZUhvb2sxXG4xMkZC
U3BsYXNoT2ZmXG4xNUZCU3BsYXNoUHJvZ3Jlc3NcbjIwRkJTcGxhc2hQcm9ncmVzc1xuMzBGQlNw
bGFzaFByb2dyZXNzXG40MEZCU3BsYXNoUHJvZ3Jlc3NcbjUwRkJTcGxhc2hQcm9ncmVzc1xuNjBG
QlNwbGFzaFByb2dyZXNzXG43MEZCU3BsYXNoUHJvZ3Jlc3NcbjgwRkJTcGxhc2hQcm9ncmVzc1xu
OTBGQlNwbGFzaFByb2dyZXNzXG45NUZCU3BsYXNoU3RhcnRSZXN1bWVcbjcwQ2xvY2tSZXN0b3Jl
XG45OEZ1bGxTcGVlZENQVVJlc3VtZVxuMTFTd3N1c3AyQ2xlYW51cEZpbGV3cml0ZXJcbjcwQ2xv
Y2tSZXN0b3JlXG45N0NoYW5nZUZyb21Td3N1c3BWVFxuNTlSZW1vdW50WEZTQm9vdFJXXG44OVJl
c3RvcmVLZXJuZWxNb2Rwcm9iZVxuMDFOb3RlTGFzdFJlc3VtZVxuMDFMb2NrRmlsZVB1dFxuJwor
IGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3Ry
KCI5OEZ1bGxTcGVlZENQVVJlc3VtZSIsIDEsIDIpfScKKyBUSElTX1BPUz05OAorICdbJyAteiA5
OCAnXScKKyBiaXQ9RnVsbFNwZWVkQ1BVUmVzdW1lCisgJ1snIDk4IC1ndCAxMCAnXScKKyBjb250
aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQg
c3Vic3RyKCI5N0NoYW5nZUZyb21Td3N1c3BWVCIsIDEsIDIpfScKKyBUSElTX1BPUz05NworICdb
JyAteiA5NyAnXScKKyBiaXQ9Q2hhbmdlRnJvbVN3c3VzcFZUCisgJ1snIDk3IC1ndCAxMCAnXScK
KyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57
cHJpbnQgc3Vic3RyKCI5NUZCU3BsYXNoU3RhcnRSZXN1bWUiLCAxLCAyKX0nCisgVEhJU19QT1M9
OTUKKyAnWycgLXogOTUgJ10nCisgYml0PUZCU3BsYXNoU3RhcnRSZXN1bWUKKyAnWycgOTUgLWd0
IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdr
ICdCRUdJTntwcmludCBzdWJzdHIoIjkwTW9kdWxlc0xvYWQiLCAxLCAyKX0nCisgVEhJU19QT1M9
OTAKKyAnWycgLXogOTAgJ10nCisgYml0PU1vZHVsZXNMb2FkCisgJ1snIDkwIC1ndCAxMCAnXScK
KyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57
cHJpbnQgc3Vic3RyKCI5MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgVEhJU19QT1M9OTAK
KyAnWycgLXogOTAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgOTAgLWd0IDEwICdd
JworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJ
TntwcmludCBzdWJzdHIoIjg5UmVzdG9yZUtlcm5lbE1vZHByb2JlIiwgMSwgMil9JworIFRISVNf
UE9TPTg5CisgJ1snIC16IDg5ICddJworIGJpdD1SZXN0b3JlS2VybmVsTW9kcHJvYmUKKyAnWycg
ODkgLWd0IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcK
KysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjg1WEhhY2tzUmVzdW1lSG9vazIiLCAxLCAyKX0n
CisgVEhJU19QT1M9ODUKKyAnWycgLXogODUgJ10nCisgYml0PVhIYWNrc1Jlc3VtZUhvb2syCisg
J1snIDg1IC1ndCAxMCAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0
c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI4MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAy
KX0nCisgVEhJU19QT1M9ODAKKyAnWycgLXogODAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MK
KyAnWycgODAgLWd0IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVC
aXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjcwRkJTcGxhc2hQcm9ncmVzcyIsIDEs
IDIpfScKKyBUSElTX1BPUz03MAorICdbJyAteiA3MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVz
cworICdbJyA3MCAtZ3QgMTAgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3Vt
ZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNzBDbG9ja1Jlc3RvcmUiLCAxLCAy
KX0nCisgVEhJU19QT1M9NzAKKyAnWycgLXogNzAgJ10nCisgYml0PUNsb2NrUmVzdG9yZQorICdb
JyA3MCAtZ3QgMTAgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNg
JworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNzBDbG9ja1Jlc3RvcmUiLCAxLCAyKX0nCisg
VEhJU19QT1M9NzAKKyAnWycgLXogNzAgJ10nCisgYml0PUNsb2NrUmVzdG9yZQorICdbJyA3MCAt
Z3QgMTAgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBh
d2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNjBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRI
SVNfUE9TPTYwCisgJ1snIC16IDYwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDYw
IC1ndCAxMCAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisr
IGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI1OVJlbW91bnRYRlNCb290UlciLCAxLCAyKX0nCisg
VEhJU19QT1M9NTkKKyAnWycgLXogNTkgJ10nCisgYml0PVJlbW91bnRYRlNCb290UlcKKyAnWycg
NTkgLWd0IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcK
KysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjUwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScK
KyBUSElTX1BPUz01MAorICdbJyAteiA1MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdb
JyA1MCAtZ3QgMTAgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNg
JworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNDBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9
JworIFRISVNfUE9TPTQwCisgJ1snIC16IDQwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisg
J1snIDQwIC1ndCAxMCAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0
c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIzMFNlcnZpY2VzU3RhcnQiLCAxLCAyKX0n
CisgVEhJU19QT1M9MzAKKyAnWycgLXogMzAgJ10nCisgYml0PVNlcnZpY2VzU3RhcnQKKyAnWycg
MzAgLWd0IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcK
KysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjMwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScK
KyBUSElTX1BPUz0zMAorICdbJyAteiAzMCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdb
JyAzMCAtZ3QgMTAgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNg
JworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMjBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9
JworIFRISVNfUE9TPTIwCisgJ1snIC16IDIwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisg
J1snIDIwIC1ndCAxMCAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0
c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxOUxvZ2luUGlkZ2luIiwgMSwgMil9Jwor
IFRISVNfUE9TPTE5CisgJ1snIC16IDE5ICddJworIGJpdD1Mb2dpblBpZGdpbgorICdbJyAxOSAt
Z3QgMTAgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBh
d2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMTVGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRI
SVNfUE9TPTE1CisgJ1snIC16IDE1ICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDE1
IC1ndCAxMCAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisr
IGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxMkZCU3BsYXNoT2ZmIiwgMSwgMil9JworIFRISVNf
UE9TPTEyCisgJ1snIC16IDEyICddJworIGJpdD1GQlNwbGFzaE9mZgorICdbJyAxMiAtZ3QgMTAg
J10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JF
R0lOe3ByaW50IHN1YnN0cigiMTFYSGFja3NSZXN1bWVIb29rMSIsIDEsIDIpfScKKyBUSElTX1BP
Uz0xMQorICdbJyAteiAxMSAnXScKKyBiaXQ9WEhhY2tzUmVzdW1lSG9vazEKKyAnWycgMTEgLWd0
IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdr
ICdCRUdJTntwcmludCBzdWJzdHIoIjExU3dzdXNwMkNsZWFudXBGaWxld3JpdGVyIiwgMSwgMil9
JworIFRISVNfUE9TPTExCisgJ1snIC16IDExICddJworIGJpdD1Td3N1c3AyQ2xlYW51cEZpbGV3
cml0ZXIKKyAnWycgMTEgLWd0IDEwICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRS
ZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjAxTm90ZUxhc3RSZXN1bWUi
LCAxLCAyKX0nCisgVEhJU19QT1M9MDEKKyAnWycgLXogMDEgJ10nCisgYml0PU5vdGVMYXN0UmVz
dW1lCisgJ1snIDAxIC1ndCAxMCAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0
aW5nIE5vdGVMYXN0UmVzdW1lIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHgg
PSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1swMV0nIEV4ZWN1
dGluZyBOb3RlTGFzdFJlc3VtZSAuLi4KaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBOb3RlTGFz
dFJlc3VtZSAuLi4KKyAnWycgLW4gJycgJ10nCisgTm90ZUxhc3RSZXN1bWUKKyAnWycgLWYgL3Zh
ci9ydW4vaGliZXJuYXRlLWxhc3QtcmVzdW1lICddJworIGRhdGUgKyVzCisgcmV0dXJuIDAKKyBm
b3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigi
MDFMb2NrRmlsZVB1dCIsIDEsIDIpfScKKyBUSElTX1BPUz0wMQorICdbJyAteiAwMSAnXScKKyBi
aXQ9TG9ja0ZpbGVQdXQKKyAnWycgMDEgLWd0IDEwICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTog
WzAxXSBFeGVjdXRpbmcgTG9ja0ZpbGVQdXQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQK
KyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAx
XScgRXhlY3V0aW5nIExvY2tGaWxlUHV0IC4uLgpoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIExv
Y2tGaWxlUHV0IC4uLgorICdbJyAtbiAnJyAnXScKKyBMb2NrRmlsZVB1dAorICdbJyAteiAxICdd
JworIGxvY2FsIGxvY2tmaWxlX3BpZAorIHJlYWQgbG9ja2ZpbGVfcGlkCisgSXNBTnVtYmVyIDc1
NDYKKyBjYXNlICIkMSIgaW4KKyByZXR1cm4gMAorICdbJyA3NTQ2IC1lcSA3NTQ2ICddJworIHJt
IC1mIC92YXIvcnVuL2hpYmVybmF0ZS1zY3JpcHQucGlkCisgcmV0dXJuIDAKKyByZXR1cm4gMgor
IGV2YWwgJ0VYSVRfQ09ERT0ke1BJUEVTVEFUVVNbMF19JworKyBFWElUX0NPREU9MgorIFBsdWdp
blRlcm1pbmF0aW9uCisgbG9jYWwgaQorIGZvciBpIGluICckVEVSTUlOQVRJT05fSEFORExFUlMn
CisgU3dzdXNwMlRlcm1pbmF0aW9uCisgcmV0dXJuIDAKKyByZXR1cm4gMAorIHRlZSAtYSAtaSAv
dmFyL2xvZy9oaWJlcm5hdGUubG9nCisrIGRhdGUKKyBlY2hvICdSZXN1bWVkIGF0IG1lcicgb3R0
IDMxIDE2OjQzOjQ5IENFVCAyMDA3CisgZXhpdCAyCg==
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>134813</attachid>
            <date>2007-10-31 15:58 0000</date>
            <desc>hibernate verb=4, original (1.97) suspend2</desc>
            <filename>debug-orig</filename>
            <type>text/plain</type>
            <data encoding="base64">aGliZXJuYXRlOiBUcnlpbmcgbWV0aG9kIGluIHN1c3BlbmQyLmNvbmYuLi4KaGliZXJuYXRlOiBJ
bmNsdWRpbmcgY29uZmlndXJhdGlvbiBmcm9tIGNvbW1vbi5jb25mClVzaW5nICcvZXRjL2luaXQu
ZCcgYXMgaW5pdC5kIGRpcmVjdG9yeS4KKysgZGF0ZQorIHRlZSAtYSAtaSAvdmFyL2xvZy9oaWJl
cm5hdGUubG9nCisgZWNobyAnU3RhcnRpbmcgc3VzcGVuZCBhdCBtZXInIG90dCAzMSAxNjo1Njoz
MCBDRVQgMjAwNworIEVYSVRfQ09ERT0wCisgJ1snICd0ZWUgLWEgLWkgL3Zhci9sb2cvaGliZXJu
YXRlLmxvZycgPSBjYXQgJ10nCisgJ1snIC1uIDEgJ10nCisgRG9Xb3JrCisgdHJhcCBjdHJsY19o
YW5kbGVyIElOVCBIVVAKKyBsb2NhbCByZXQKKyBsb2NhbCBDSEFJTl9VUF9UTworIGxvY2FsIGJp
dAorIENIQUlOX1VQX1RPPTAKKyB0ZWUgLWEgLWkgL3Zhci9sb2cvaGliZXJuYXRlLmxvZworKyBT
b3J0U3VzcGVuZEJpdHMKKysgL2Jpbi9lY2hvIC1uZSAnMTlMb2dvdXRQaWRnaW5cbjMwU2Vydmlj
ZXNTdG9wXG45MU1vZHVsZXNVbmxvYWRCbGFja2xpc3RcbjQ1RlNUeXBlc1VubW91bnRcbjk1WEhh
Y2tzU3VzcGVuZEhvb2syXG4xMVhIYWNrc1N1c3BlbmRIb29rMVxuOTRGQlNwbGFzaFByb2dyZXNz
XG45MEZCU3BsYXNoUHJvZ3Jlc3NcbjgwRkJTcGxhc2hQcm9ncmVzc1xuNzBGQlNwbGFzaFByb2dy
ZXNzXG42MEZCU3BsYXNoUHJvZ3Jlc3NcbjUwRkJTcGxhc2hQcm9ncmVzc1xuNDBGQlNwbGFzaFBy
b2dyZXNzXG4zMEZCU3BsYXNoUHJvZ3Jlc3NcbjIwRkJTcGxhc2hQcm9ncmVzc1xuMTJGQlNwbGFz
aFN0YXJ0U3VzcGVuZFxuOThGdWxsU3BlZWRDUFVTdXNwZW5kXG4wNlN3c3VzcDJTZXR1cEZpbGV3
cml0ZXJcbjcwQ2xvY2tTYXZlXG45OFN3c3VzcDJDb25maWdTZXRcbjk5RG9Td3N1c3AyXG45N0No
YW5nZVRvU3dzdXNwVlRcbjEwRW5zdXJlU3dzdXNwMkNhcGFibGVcbjU5UmVtb3VudFhGU0Jvb3RS
T1xuMDFOZXdLZXJuZWxGaWxlQ2hlY2tcbjg5U2F2ZUtlcm5lbE1vZHByb2JlXG45OENoZWNrUnVu
bGV2ZWxcbjAxQ2hlY2tSdW5sZXZlbFxuMDFDaGVja0xhc3RSZXN1bWVcbjAxTG9ja0ZpbGVHZXRc
bicKKysgc29ydCAtbgorIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5l
d19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFDaGVja0xhc3RSZXN1
bWUiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTAxCisgJ1snIC1uIDAxICddJworIENIQUlO
X1VQX1RPPTAxCisgYml0PUNoZWNrTGFzdFJlc3VtZQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzAx
XSBFeGVjdXRpbmcgQ2hlY2tMYXN0UmVzdW1lIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sw
MV0nIEV4ZWN1dGluZyBDaGVja0xhc3RSZXN1bWUgLi4uCmhpYmVybmF0ZTogWzAxXSBFeGVjdXRp
bmcgQ2hlY2tMYXN0UmVzdW1lIC4uLgorICdbJyAtbiAnJyAnXScKKyBDaGVja0xhc3RSZXN1bWUK
KyAnWycgLWYgL3Zhci9ydW4vaGliZXJuYXRlLWxhc3QtcmVzdW1lICddJworIGxvY2FsIGxhc3Rf
cmVzdW1lIG5vdworIHJlYWQgbGFzdF9yZXN1bWUKKysgZGF0ZSArJXMKKyBub3c9MTE5Mzg0NjE5
MAorICdbJyAxMTkzODQ2MTkwIC1ndCAxMTkzODQ2MTU4ICddJworIHJtIC1mIC92YXIvcnVuL2hp
YmVybmF0ZS1sYXN0LXJlc3VtZQorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScK
KyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNw
ZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vi
c3RyKCIwMUNoZWNrUnVubGV2ZWwiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTAxCisgJ1sn
IC1uIDAxICddJworIENIQUlOX1VQX1RPPTAxCisgYml0PUNoZWNrUnVubGV2ZWwKKyB2ZWNobyAx
ICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uCmhpYmVybmF0ZTog
WzAxXSBFeGVjdXRpbmcgQ2hlY2tSdW5sZXZlbCAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2hlY2tS
dW5sZXZlbAorICdbJyAteiAnJyAnXScKKysgL3NiaW4vcnVubGV2ZWwKKysgYXdrICd7cHJpbnQg
JDJ9JworIFJVTkxFVkVMPTMKKyBjYXNlICIke1JVTkxFVkVMfSIgaW4KKyByZXR1cm4gMAorIHJl
dD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJwor
IGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFMb2NrRmlsZUdldCIsIDEsIDIpfScKKyBuZXdf
Q0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEgJ10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9TG9j
a0ZpbGVHZXQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIExvY2tGaWxlR2V0
IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAt
bGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1swMV0nIEV4ZWN1dGluZyBMb2NrRmlsZUdldCAu
Li4KaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBMb2NrRmlsZUdldCAuLi4KKyAnWycgLW4gJycg
J10nCisgTG9ja0ZpbGVHZXQKKyBsb2NhbCBvdGhlcl9waWQKKyAnWycgLWYgL3Zhci9ydW4vaGli
ZXJuYXRlLXNjcmlwdC5waWQgJ10nCisgZWNobyA4NTUxCisgTE9DS0ZJTEVfSU5fVVNFPTEKKyBy
ZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1sn
IC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19D
SEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFOZXdLZXJuZWxGaWxlQ2hl
Y2siLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTAxCisgJ1snIC1uIDAxICddJworIENIQUlO
X1VQX1RPPTAxCisgYml0PU5ld0tlcm5lbEZpbGVDaGVjaworIHZlY2hvIDEgJ2hpYmVybmF0ZTog
WzAxXSBFeGVjdXRpbmcgTmV3S2VybmVsRmlsZUNoZWNrIC4uLiAnCisgbG9jYWwgdgorIHY9MQor
IHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0
ZTogJ1swMV0nIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4uCmhpYmVybmF0ZTogWzAx
XSBFeGVjdXRpbmcgTmV3S2VybmVsRmlsZUNoZWNrIC4uLgorICdbJyAtbiAnJyAnXScKKyBOZXdL
ZXJuZWxGaWxlQ2hlY2sKKyAnWycgLWYgL3Zhci9ydW4vc3VzcGVuZDItbmV3LWtlcm5lbCAnXScK
KyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisg
J1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5l
d19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDZTd3N1c3AyU2V0dXBG
aWxld3JpdGVyIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0wNgorICdbJyAtbiAwNiAnXScK
KyBDSEFJTl9VUF9UTz0wNgorIGJpdD1Td3N1c3AyU2V0dXBGaWxld3JpdGVyCisgdmVjaG8gMSAn
aGliZXJuYXRlOiBbMDZdIEV4ZWN1dGluZyBTd3N1c3AyU2V0dXBGaWxld3JpdGVyIC4uLiAnCisg
bG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScK
KyBlY2hvIGhpYmVybmF0ZTogJ1swNl0nIEV4ZWN1dGluZyBTd3N1c3AyU2V0dXBGaWxld3JpdGVy
IC4uLgpoaWJlcm5hdGU6IFswNl0gRXhlY3V0aW5nIFN3c3VzcDJTZXR1cEZpbGV3cml0ZXIgLi4u
CisgJ1snIC1uICcnICddJworIFN3c3VzcDJTZXR1cEZpbGV3cml0ZXIKKyBsb2NhbCBmdF9lbnRy
eQorIGZ0X2VudHJ5PQorICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2ZpbGUvZmlsZXdyaXRl
cl90YXJnZXQgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvZmlsZS90YXJnZXQgJ10n
CisgZnRfZW50cnk9L3N5cy9wb3dlci90dXhvbmljZS9maWxlL3RhcmdldAorICdbJyAteiAvc3lz
L3Bvd2VyL3R1eG9uaWNlL2ZpbGUvdGFyZ2V0ICddJworICdbJyAtZSAvc3VzcGVuZF9maWxlICdd
JworIGNhc2UgImBkZCBcImlmPSRTV1NVU1BfRklMRVdSSVRFUl9MT0NcIiBicz04IGNvdW50PTEg
Mj4vZGV2L251bGxgIiBpbgorKyBkZCBpZj0vc3VzcGVuZF9maWxlIGJzPTggY291bnQ9MQorIHZl
Y2hvIDEgJ2hpYmVybmF0ZTogRGV0ZWN0ZWQgZmlsZXdyaXRlciBpbWFnZSByZWFkeSBmb3IgdXNl
LicKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiBEZXRlY3RlZCBmaWxld3JpdGVyIGltYWdlIHJlYWR5IGZv
ciB1c2UuCmhpYmVybmF0ZTogRGV0ZWN0ZWQgZmlsZXdyaXRlciBpbWFnZSByZWFkeSBmb3IgdXNl
LgorIGVjaG8gL3N1c3BlbmRfZmlsZQorIGVjaG8gL3N1c3BlbmRfZmlsZQorIGNobW9kIDYwMCAv
dmFyL3J1bi9zdXNwZW5kMl9maWxld3JpdGVyX2ltYWdlX2V4aXN0cworIFNXU1VTUF9SRVNVTUUy
PQorICdbJyB4ID0geDEgJ10nCisgbG9jYWwgbmV3X3Jlc3VtZTIKKysgY2F0IC9zeXMvcG93ZXIv
dHV4b25pY2UvCmNhdDogL3N5cy9wb3dlci90dXhvbmljZS86IElzIGEgZGlyZWN0b3J5CisgbmV3
X3Jlc3VtZTI9CisgJ1snIC16ICcnICddJworIHZlY2hvIDAgJ0FCT1JUSU5HOiAvc3lzL3Bvd2Vy
L3R1eG9uaWNlLyBkaWQgbm90IHJldHVybiBhIHZhbGlkIHJlc3VsdC4nCisgbG9jYWwgdgorIHY9
MAorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMCAtbGUgNCAnXScKKyBlY2hvIEFCT1JU
SU5HOiAvc3lzL3Bvd2VyL3R1eG9uaWNlLyBkaWQgbm90IHJldHVybiBhIHZhbGlkIHJlc3VsdC4K
QUJPUlRJTkc6IC9zeXMvcG93ZXIvdHV4b25pY2UvIGRpZCBub3QgcmV0dXJuIGEgdmFsaWQgcmVz
dWx0LgorIHJldHVybiAyCisgcmV0PTIKKyAnWycgMiAtZ2UgMiAnXScKKyAnWycgMiAtZXEgMiAn
XScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFN3c3VzcDJTZXR1cEZpbGV3cml0ZXIgcmVmdXNlcyB0
byBsZXQgdXMgY29udGludWUuJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6IFN3c3VzcDJTZXR1cEZpbGV3
cml0ZXIgcmVmdXNlcyB0byBsZXQgdXMgY29udGludWUuCmhpYmVybmF0ZTogU3dzdXNwMlNldHVw
RmlsZXdyaXRlciByZWZ1c2VzIHRvIGxldCB1cyBjb250aW51ZS4KKyB2ZWNobyAwICdoaWJlcm5h
dGU6IEFib3J0aW5nLicKKyBsb2NhbCB2Cisgdj0wCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAwIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiBBYm9ydGluZy4KaGliZXJuYXRlOiBB
Ym9ydGluZy4KKyBFWElUX0NPREU9MgorIGJyZWFrCisrIFNvcnRSZXN1bWVCaXRzCisrIHNvcnQg
LXJuCisrIC9iaW4vZWNobyAtbmUgJzE5TG9naW5QaWRnaW5cbjMwU2VydmljZXNTdGFydFxuOTBN
b2R1bGVzTG9hZFxuODVYSGFja3NSZXN1bWVIb29rMlxuMTFYSGFja3NSZXN1bWVIb29rMVxuMTJG
QlNwbGFzaE9mZlxuMTVGQlNwbGFzaFByb2dyZXNzXG4yMEZCU3BsYXNoUHJvZ3Jlc3NcbjMwRkJT
cGxhc2hQcm9ncmVzc1xuNDBGQlNwbGFzaFByb2dyZXNzXG41MEZCU3BsYXNoUHJvZ3Jlc3NcbjYw
RkJTcGxhc2hQcm9ncmVzc1xuNzBGQlNwbGFzaFByb2dyZXNzXG44MEZCU3BsYXNoUHJvZ3Jlc3Nc
bjkwRkJTcGxhc2hQcm9ncmVzc1xuOTVGQlNwbGFzaFN0YXJ0UmVzdW1lXG43MENsb2NrUmVzdG9y
ZVxuOThGdWxsU3BlZWRDUFVSZXN1bWVcbjA2U3dzdXNwMkNsZWFudXBGaWxld3JpdGVyXG43MENs
b2NrUmVzdG9yZVxuOTdDaGFuZ2VGcm9tU3dzdXNwVlRcbjU5UmVtb3VudFhGU0Jvb3RSV1xuODlS
ZXN0b3JlS2VybmVsTW9kcHJvYmVcbjAxTm90ZUxhc3RSZXN1bWVcbjAxTG9ja0ZpbGVQdXRcbicK
KyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0
cigiOThGdWxsU3BlZWRDUFVSZXN1bWUiLCAxLCAyKX0nCisgVEhJU19QT1M9OTgKKyAnWycgLXog
OTggJ10nCisgYml0PUZ1bGxTcGVlZENQVVJlc3VtZQorICdbJyA5OCAtZ3QgMDYgJ10nCisgY29u
dGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50
IHN1YnN0cigiOTdDaGFuZ2VGcm9tU3dzdXNwVlQiLCAxLCAyKX0nCisgVEhJU19QT1M9OTcKKyAn
WycgLXogOTcgJ10nCisgYml0PUNoYW5nZUZyb21Td3N1c3BWVAorICdbJyA5NyAtZ3QgMDYgJ10n
CisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lO
e3ByaW50IHN1YnN0cigiOTVGQlNwbGFzaFN0YXJ0UmVzdW1lIiwgMSwgMil9JworIFRISVNfUE9T
PTk1CisgJ1snIC16IDk1ICddJworIGJpdD1GQlNwbGFzaFN0YXJ0UmVzdW1lCisgJ1snIDk1IC1n
dCAwNiAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3
ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI5ME1vZHVsZXNMb2FkIiwgMSwgMil9JworIFRISVNfUE9T
PTkwCisgJ1snIC16IDkwICddJworIGJpdD1Nb2R1bGVzTG9hZAorICdbJyA5MCAtZ3QgMDYgJ10n
CisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lO
e3ByaW50IHN1YnN0cigiOTBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNfUE9TPTkw
CisgJ1snIC16IDkwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDkwIC1ndCAwNiAn
XScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVH
SU57cHJpbnQgc3Vic3RyKCI4OVJlc3RvcmVLZXJuZWxNb2Rwcm9iZSIsIDEsIDIpfScKKyBUSElT
X1BPUz04OQorICdbJyAteiA4OSAnXScKKyBiaXQ9UmVzdG9yZUtlcm5lbE1vZHByb2JlCisgJ1sn
IDg5IC1ndCAwNiAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI4NVhIYWNrc1Jlc3VtZUhvb2syIiwgMSwgMil9
JworIFRISVNfUE9TPTg1CisgJ1snIC16IDg1ICddJworIGJpdD1YSGFja3NSZXN1bWVIb29rMgor
ICdbJyA4NSAtZ3QgMDYgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiODBGQlNwbGFzaFByb2dyZXNzIiwgMSwg
Mil9JworIFRISVNfUE9TPTgwCisgJ1snIC16IDgwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNz
CisgJ1snIDgwIC1ndCAwNiAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1l
Qml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI3MEZCU3BsYXNoUHJvZ3Jlc3MiLCAx
LCAyKX0nCisgVEhJU19QT1M9NzAKKyAnWycgLXogNzAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jl
c3MKKyAnWycgNzAgLWd0IDA2ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1
bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjcwQ2xvY2tSZXN0b3JlIiwgMSwg
Mil9JworIFRISVNfUE9TPTcwCisgJ1snIC16IDcwICddJworIGJpdD1DbG9ja1Jlc3RvcmUKKyAn
WycgNzAgLWd0IDA2ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRz
YCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjcwQ2xvY2tSZXN0b3JlIiwgMSwgMil9Jwor
IFRISVNfUE9TPTcwCisgJ1snIC16IDcwICddJworIGJpdD1DbG9ja1Jlc3RvcmUKKyAnWycgNzAg
LWd0IDA2ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysg
YXdrICdCRUdJTntwcmludCBzdWJzdHIoIjYwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBU
SElTX1BPUz02MAorICdbJyAteiA2MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyA2
MCAtZ3QgMDYgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNTlSZW1vdW50WEZTQm9vdFJXIiwgMSwgMil9Jwor
IFRISVNfUE9TPTU5CisgJ1snIC16IDU5ICddJworIGJpdD1SZW1vdW50WEZTQm9vdFJXCisgJ1sn
IDU5IC1ndCAwNiAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI1MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0n
CisgVEhJU19QT1M9NTAKKyAnWycgLXogNTAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAn
WycgNTAgLWd0IDA2ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRz
YCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjQwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIp
fScKKyBUSElTX1BPUz00MAorICdbJyAteiA0MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcwor
ICdbJyA0MCAtZ3QgMDYgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMzBTZXJ2aWNlc1N0YXJ0IiwgMSwgMil9
JworIFRISVNfUE9TPTMwCisgJ1snIC16IDMwICddJworIGJpdD1TZXJ2aWNlc1N0YXJ0CisgJ1sn
IDMwIC1ndCAwNiAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIzMEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0n
CisgVEhJU19QT1M9MzAKKyAnWycgLXogMzAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAn
WycgMzAgLWd0IDA2ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRz
YCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjIwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIp
fScKKyBUSElTX1BPUz0yMAorICdbJyAteiAyMCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcwor
ICdbJyAyMCAtZ3QgMDYgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMTlMb2dpblBpZGdpbiIsIDEsIDIpfScK
KyBUSElTX1BPUz0xOQorICdbJyAteiAxOSAnXScKKyBiaXQ9TG9naW5QaWRnaW4KKyAnWycgMTkg
LWd0IDA2ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysg
YXdrICdCRUdJTntwcmludCBzdWJzdHIoIjE1RkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBU
SElTX1BPUz0xNQorICdbJyAteiAxNSAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyAx
NSAtZ3QgMDYgJ10nCisgY29udGludWUKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMTJGQlNwbGFzaE9mZiIsIDEsIDIpfScKKyBUSElT
X1BPUz0xMgorICdbJyAteiAxMiAnXScKKyBiaXQ9RkJTcGxhc2hPZmYKKyAnWycgMTIgLWd0IDA2
ICddJworIGNvbnRpbnVlCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdC
RUdJTntwcmludCBzdWJzdHIoIjExWEhhY2tzUmVzdW1lSG9vazEiLCAxLCAyKX0nCisgVEhJU19Q
T1M9MTEKKyAnWycgLXogMTEgJ10nCisgYml0PVhIYWNrc1Jlc3VtZUhvb2sxCisgJ1snIDExIC1n
dCAwNiAnXScKKyBjb250aW51ZQorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3
ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwNlN3c3VzcDJDbGVhbnVwRmlsZXdyaXRlciIsIDEsIDIp
fScKKyBUSElTX1BPUz0wNgorICdbJyAteiAwNiAnXScKKyBiaXQ9U3dzdXNwMkNsZWFudXBGaWxl
d3JpdGVyCisgJ1snIDA2IC1ndCAwNiAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFswNl0gRXhl
Y3V0aW5nIFN3c3VzcDJDbGVhbnVwRmlsZXdyaXRlciAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBz
aGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6
ICdbMDZdJyBFeGVjdXRpbmcgU3dzdXNwMkNsZWFudXBGaWxld3JpdGVyIC4uLgpoaWJlcm5hdGU6
IFswNl0gRXhlY3V0aW5nIFN3c3VzcDJDbGVhbnVwRmlsZXdyaXRlciAuLi4KKyAnWycgLW4gJycg
J10nCisgU3dzdXNwMkNsZWFudXBGaWxld3JpdGVyCisgcm0gLWYgL3Zhci9ydW4vc3VzcGVuZDJf
ZmlsZXdyaXRlcl9pbWFnZV9leGlzdHMKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFOb3RlTGFzdFJlc3VtZSIsIDEsIDIpfScKKyBU
SElTX1BPUz0wMQorICdbJyAteiAwMSAnXScKKyBiaXQ9Tm90ZUxhc3RSZXN1bWUKKyAnWycgMDEg
LWd0IDA2ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTm90ZUxhc3RS
ZXN1bWUgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdb
JyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIE5vdGVMYXN0
UmVzdW1lIC4uLgpoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIE5vdGVMYXN0UmVzdW1lIC4uLgor
ICdbJyAtbiAnJyAnXScKKyBOb3RlTGFzdFJlc3VtZQorICdbJyAtZiAvdmFyL3J1bi9oaWJlcm5h
dGUtbGFzdC1yZXN1bWUgJ10nCisgZGF0ZSArJXMKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BT
b3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUxvY2tGaWxlUHV0
IiwgMSwgMil9JworIFRISVNfUE9TPTAxCisgJ1snIC16IDAxICddJworIGJpdD1Mb2NrRmlsZVB1
dAorICdbJyAwMSAtZ3QgMDYgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGlu
ZyBMb2NrRmlsZVB1dCAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMDFdJyBFeGVjdXRpbmcg
TG9ja0ZpbGVQdXQgLi4uCmhpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTG9ja0ZpbGVQdXQgLi4u
CisgJ1snIC1uICcnICddJworIExvY2tGaWxlUHV0CisgJ1snIC16IDEgJ10nCisgbG9jYWwgbG9j
a2ZpbGVfcGlkCisgcmVhZCBsb2NrZmlsZV9waWQKKyBJc0FOdW1iZXIgODU1MQorIGNhc2UgIiQx
IiBpbgorIHJldHVybiAwCisgJ1snIDg1NTEgLWVxIDg1NTEgJ10nCisgcm0gLWYgL3Zhci9ydW4v
aGliZXJuYXRlLXNjcmlwdC5waWQKKyByZXR1cm4gMAorIHJldHVybiAyCisgZXZhbCAnRVhJVF9D
T0RFPSR7UElQRVNUQVRVU1swXX0nCisrIEVYSVRfQ09ERT0yCisgUGx1Z2luVGVybWluYXRpb24K
KyBsb2NhbCBpCisgZm9yIGkgaW4gJyRURVJNSU5BVElPTl9IQU5ETEVSUycKKyBTd3N1c3AyVGVy
bWluYXRpb24KKyByZXR1cm4gMAorIHJldHVybiAwCisrIGRhdGUKKyB0ZWUgLWEgLWkgL3Zhci9s
b2cvaGliZXJuYXRlLmxvZworIGVjaG8gJ1Jlc3VtZWQgYXQgbWVyJyBvdHQgMzEgMTY6NTY6MzAg
Q0VUIDIwMDcKKyBleGl0IDIK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134937</attachid>
            <date>2007-11-01 19:08 0000</date>
            <desc>suspend2.patch</desc>
            <filename>suspend2.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIC9yb290L3N1c3BlbmQyLm9yaWcJMjAwNy0xMS0wMSAxOTo1Mjo0NC4wMDAwMDAwMDAgKzAx
MDAKKysrIHN1c3BlbmQyCTIwMDctMTEtMDEgMTk6NTQ6MDQuMDAwMDAwMDAwICswMTAwCkBAIC0x
MDgsNiArMTA4LDkgQEAKIAogICAgIFsgLW4gIiRGSUxFX0RJUiIgXSAmJiBGSUxFV1JJVEVSX1JP
T1Q9IiRTV1NVU1BfUk9PVC8kRklMRV9ESVIiICAgIAogICAgIFsgLW4gIiRTV0FQX0RJUiIgXSAm
JiBTV0FQV1JJVEVSX1JPT1Q9IiRTV1NVU1BfUk9PVC8kU1dBUF9ESVIiICAgIAorICAgIFsgLWUg
IiRTV1NVU1BfUk9PVC9yZXN1bWUiIF0gJiYgUkVTVU1FX0ZJTEU9InJlc3VtZSIKKyAgICBbIC1l
ICIkU1dTVVNQX1JPT1QvcmVzdW1lMiIgXSAmJiBSRVNVTUVfRklMRT0icmVzdW1lMiIKKwogICAg
IFNXU1VTUF9ERUZBVUxUX0FMTF9TRVRUSU5HU19GSUxFPSIkU1dTVVNQX0Qvc3dzdXNwMi1hbGwt
c2V0dGluZ3MuY29uZiIKICAgICBISUJFUk5BVEVfRklMRVdSSVRFUl9UUkFJTD0iL3Zhci9ydW4v
c3VzcGVuZDJfZmlsZXdyaXRlcl9pbWFnZV9leGlzdHMiCiAK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>134938</attachid>
            <date>2007-11-01 19:09 0000</date>
            <desc>debug-busy</desc>
            <filename>debug-busy</filename>
            <type>text/plain</type>
            <data encoding="base64">aGliZXJuYXRlOiBUcnlpbmcgbWV0aG9kIGluIHN1c3BlbmQyLmNvbmYuLi4KaGliZXJuYXRlOiBU
cnlpbmcgbWV0aG9kIGluIGRpc2suY29uZi4uLgpoaWJlcm5hdGU6IFRyeWluZyBtZXRob2QgaW4g
dXN1c3BlbmQtZGlzay5jb25mLi4uCmhpYmVybmF0ZTogSW5jbHVkaW5nIGNvbmZpZ3VyYXRpb24g
ZnJvbSBjb21tb24uY29uZgpVc2luZyAnL2V0Yy9pbml0LmQnIGFzIGluaXQuZCBkaXJlY3Rvcnku
CmhpYmVybmF0ZTogVHJ5aW5nIG1ldGhvZCBpbiBzeXNmcy1kaXNrLmNvbmYuLi4KaGliZXJuYXRl
OiBJbmNsdWRpbmcgY29uZmlndXJhdGlvbiBmcm9tIGNvbW1vbi5jb25mCisrIGRhdGUKKyB0ZWUg
LWEgLWkgL3Zhci9sb2cvaGliZXJuYXRlLmxvZworIGVjaG8gJ1N0YXJ0aW5nIHN1c3BlbmQgYXQg
VGh1JyBOb3YgMSAyMDowMzoxMSBDRVQgMjAwNworIEVYSVRfQ09ERT0wCisgJ1snICd0ZWUgLWEg
LWkgL3Zhci9sb2cvaGliZXJuYXRlLmxvZycgPSBjYXQgJ10nCisgJ1snIC1uIDEgJ10nCisgRG9X
b3JrCisgdHJhcCBjdHJsY19oYW5kbGVyIElOVCBIVVAKKyBsb2NhbCByZXQKKyBsb2NhbCBDSEFJ
Tl9VUF9UTworIGxvY2FsIGJpdAorIENIQUlOX1VQX1RPPTAKKysgU29ydFN1c3BlbmRCaXRzCisr
IHNvcnQgLW4KKysgL2Jpbi9lY2hvIC1uZSAnOTFNb2R1bGVzVW5sb2FkQmxhY2tsaXN0XG45OURv
U3lzZnNQb3dlclN0YXRlU3VzcGVuZFxuMTBFbnN1cmVTeXNmc1Bvd2VyU3RhdGVDYXBhYmxlXG4x
OUxvZ291dFBpZGdpblxuMzBTZXJ2aWNlc1N0b3BcbjkxTW9kdWxlc1VubG9hZEJsYWNrbGlzdFxu
NDVGU1R5cGVzVW5tb3VudFxuOTVYSGFja3NTdXNwZW5kSG9vazJcbjExWEhhY2tzU3VzcGVuZEhv
b2sxXG45NEZCU3BsYXNoUHJvZ3Jlc3NcbjkwRkJTcGxhc2hQcm9ncmVzc1xuODBGQlNwbGFzaFBy
b2dyZXNzXG43MEZCU3BsYXNoUHJvZ3Jlc3NcbjYwRkJTcGxhc2hQcm9ncmVzc1xuNTBGQlNwbGFz
aFByb2dyZXNzXG40MEZCU3BsYXNoUHJvZ3Jlc3NcbjMwRkJTcGxhc2hQcm9ncmVzc1xuMjBGQlNw
bGFzaFByb2dyZXNzXG4xMkZCU3BsYXNoU3RhcnRTdXNwZW5kXG41OVJlbW91bnRYRlNCb290Uk9c
bjAxTmV3S2VybmVsRmlsZUNoZWNrXG44OVNhdmVLZXJuZWxNb2Rwcm9iZVxuOThDaGVja1J1bmxl
dmVsXG4wMUNoZWNrUnVubGV2ZWxcbjAxQ2hlY2tMYXN0UmVzdW1lXG4wMUxvY2tGaWxlR2V0XG4n
CisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RP
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUNoZWNrTGFzdFJlc3VtZSIsIDEsIDIpfScK
KyBuZXdfQ0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEgJ10nCisgQ0hBSU5fVVBfVE89MDEKKyBi
aXQ9Q2hlY2tMYXN0UmVzdW1lCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBD
aGVja0xhc3RSZXN1bWUgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgx
ICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5n
IENoZWNrTGFzdFJlc3VtZSAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2hlY2tMYXN0UmVzdW1lCisg
J1snIC1mIC92YXIvcnVuL2hpYmVybmF0ZS1sYXN0LXJlc3VtZSAnXScKKyBsb2NhbCBsYXN0X3Jl
c3VtZSBub3cKKyByZWFkIGxhc3RfcmVzdW1lCisrIGRhdGUgKyVzCisgdGVlIC1hIC1pIC92YXIv
bG9nL2hpYmVybmF0ZS5sb2cKaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBDaGVja0xhc3RSZXN1
bWUgLi4uCisgbm93PTExOTM5NDM3OTEKKyAnWycgMTE5Mzk0Mzc5MSAtZ3QgMTE5Mzk0Mzc0MSAn
XScKKyBybSAtZiAvdmFyL3J1bi9oaWJlcm5hdGUtbGFzdC1yZXN1bWUKKyByZXR1cm4gMAorIHJl
dD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJwor
IGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFDaGVja1J1bmxldmVsIiwgMSwgMil9JworIG5l
d19DSEFJTl9VUF9UTz0wMQorICdbJyAtbiAwMSAnXScKKyBDSEFJTl9VUF9UTz0wMQorIGJpdD1D
aGVja1J1bmxldmVsCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBDaGVja1J1
bmxldmVsIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAn
WycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1swMV0nIEV4ZWN1dGluZyBDaGVja1J1
bmxldmVsIC4uLgpoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uCisg
J1snIC1uICcnICddJworIENoZWNrUnVubGV2ZWwKKyAnWycgLXogJycgJ10nCisrIC9zYmluL3J1
bmxldmVsCisrIGF3ayAne3ByaW50ICQyfScKKyBSVU5MRVZFTD0zCisgY2FzZSAiJHtSVU5MRVZF
TH0iIGluCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAw
ICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBs
b2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjAxTG9ja0Zp
bGVHZXQiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTAxCisgJ1snIC1uIDAxICddJworIENI
QUlOX1VQX1RPPTAxCisgYml0PUxvY2tGaWxlR2V0CisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFd
IEV4ZWN1dGluZyBMb2NrRmlsZUdldCAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdb
JyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMDFdJyBF
eGVjdXRpbmcgTG9ja0ZpbGVHZXQgLi4uCmhpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTG9ja0Zp
bGVHZXQgLi4uCisgJ1snIC1uICcnICddJworIExvY2tGaWxlR2V0CisgbG9jYWwgb3RoZXJfcGlk
CisgJ1snIC1mIC92YXIvcnVuL2hpYmVybmF0ZS1zY3JpcHQucGlkICddJworIGVjaG8gMjAzMjQK
KyBMT0NLRklMRV9JTl9VU0U9MQorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScK
KyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNw
ZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vi
c3RyKCIwMU5ld0tlcm5lbEZpbGVDaGVjayIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MDEK
KyAnWycgLW4gMDEgJ10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9TmV3S2VybmVsRmlsZUNoZWNr
CisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sg
Li4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1s
ZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIE5ld0tlcm5lbEZpbGVD
aGVjayAuLi4KaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4u
CisgJ1snIC1uICcnICddJworIE5ld0tlcm5lbEZpbGVDaGVjaworICdbJyAtZiAvdmFyL3J1bi9z
dXNwZW5kMi1uZXcta2VybmVsICddJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAn
XScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRT
dXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQg
c3Vic3RyKCIxMEVuc3VyZVN5c2ZzUG93ZXJTdGF0ZUNhcGFibGUiLCAxLCAyKX0nCisgbmV3X0NI
QUlOX1VQX1RPPTEwCisgJ1snIC1uIDEwICddJworIENIQUlOX1VQX1RPPTEwCisgYml0PUVuc3Vy
ZVN5c2ZzUG93ZXJTdGF0ZUNhcGFibGUKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMF0gRXhlY3V0
aW5nIEVuc3VyZVN5c2ZzUG93ZXJTdGF0ZUNhcGFibGUgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisg
c2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRl
OiAnWzEwXScgRXhlY3V0aW5nIEVuc3VyZVN5c2ZzUG93ZXJTdGF0ZUNhcGFibGUgLi4uCmhpYmVy
bmF0ZTogWzEwXSBFeGVjdXRpbmcgRW5zdXJlU3lzZnNQb3dlclN0YXRlQ2FwYWJsZSAuLi4KKyAn
WycgLW4gJycgJ10nCisgRW5zdXJlU3lzZnNQb3dlclN0YXRlQ2FwYWJsZQorIHRlc3QgLWYgL3N5
cy9wb3dlci9zdGF0ZQorIGdyZXAgLXEgZGlzayAvc3lzL3Bvd2VyL3N0YXRlCisgSXNCYWRQUENL
ZXJuZWwgZGlzaworICdbJyBkaXNrICchPScgbWVtICddJworIHJldHVybiAxCisgcmV0dXJuIDAK
KyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAn
XScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBf
VE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjExWEhhY2tzU3VzcGVuZEhvb2sxIiwgMSwg
Mil9JworIG5ld19DSEFJTl9VUF9UTz0xMQorICdbJyAtbiAxMSAnXScKKyBDSEFJTl9VUF9UTz0x
MQorIGJpdD1YSGFja3NTdXNwZW5kSG9vazEKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMV0gRXhl
Y3V0aW5nIFhIYWNrc1N1c3BlbmRIb29rMSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAor
ICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMTFd
JyBFeGVjdXRpbmcgWEhhY2tzU3VzcGVuZEhvb2sxIC4uLgpoaWJlcm5hdGU6IFsxMV0gRXhlY3V0
aW5nIFhIYWNrc1N1c3BlbmRIb29rMSAuLi4KKyAnWycgLW4gJycgJ10nCisgWEhhY2tzU3VzcGVu
ZEhvb2sxCisgJ1snIHggPSB4MSAnXScKKyAnWycgeDEgPSB4MSAnXScKKyBYSEFDS1NfRUFSTFlf
U1dJVENIPTEKKyBYSGFja3NTdXNwZW5kCisgJ1snIHgxID0geDEgJ10nCisgY29tbWFuZCAtdiBm
Z2NvbnNvbGUKKysgZmdjb25zb2xlCisgWEhBQ0tTX09SSUdJTkFMX1ZUPTcKKyAnWycgeDEgPSB4
MSAnXScKKyBsb2NhbCBkZXN0X3Z0CisgJ1snIC16ICcnICddJworIGRlc3RfdnQ9MTUKKyB2ZWNo
byAzICd4aGFja3M6IGNoYW5naW5nIGNvbnNvbGUgZnJvbSA3IHRvIDE1JworIGxvY2FsIHYKKyB2
PTMKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDMgLWxlIDQgJ10nCisgZWNobyB4aGFj
a3M6IGNoYW5naW5nIGNvbnNvbGUgZnJvbSA3IHRvIDE1CnhoYWNrczogY2hhbmdpbmcgY29uc29s
ZSBmcm9tIDcgdG8gMTUKKyBjaHZ0IDE1CisgcmV0dXJuIDAKKyByZXR1cm4gMAorIHJldD0wCisg
J1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBi
aXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sg
J0JFR0lOe3ByaW50IHN1YnN0cigiMTJGQlNwbGFzaFN0YXJ0U3VzcGVuZCIsIDEsIDIpfScKKyBu
ZXdfQ0hBSU5fVVBfVE89MTIKKyAnWycgLW4gMTIgJ10nCisgQ0hBSU5fVVBfVE89MTIKKyBiaXQ9
RkJTcGxhc2hTdGFydFN1c3BlbmQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMl0gRXhlY3V0aW5n
IEZCU3BsYXNoU3RhcnRTdXNwZW5kIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sxMl0nIEV4
ZWN1dGluZyBGQlNwbGFzaFN0YXJ0U3VzcGVuZCAuLi4KaGliZXJuYXRlOiBbMTJdIEV4ZWN1dGlu
ZyBGQlNwbGFzaFN0YXJ0U3VzcGVuZCAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hTdGFy
dFN1c3BlbmQKKyBGQlNwbGFzaEJlZ2luICdQcmVwYXJpbmcgdG8gc3VzcGVuZCAuLi4nCisgJ1sn
IHgxICchPScgeDEgJ10nCisgJ1snIC16IHN1c3BlbmQyICddJworIGNvbW1hbmQgLXYgZmJzcGxh
c2hkCisgJ1snICchJyAtZCAvZXRjL3NwbGFzaC9zdXNwZW5kMi8gJ10nCisgdGVzdCAtcCAvbGli
L3NwbGFzaC9jYWNoZS8uc3BsYXNoCisgZmJzcGxhc2hkIC0tdGhlbWUgc3VzcGVuZDIgLS1tZXNn
IFN1c3BlbmRpbmcuLi4gLS1lZmZlY3RzIGZhZGVpbgorIFRpbWVkRkJTcGxhc2hDdGwgJ3NldCBt
b2RlIHNpbGVudFxucHJvZ3Jlc3MgMFxuc2V0IG1lc3NhZ2UgUHJlcGFyaW5nIHRvIHN1c3BlbmQg
Li4uXG5yZXBhaW50XG4nCisrIGF3ayAne3ByaW50ICQxfScKKyBTQVZFRF9GQlNQTEFTSF9QUklO
VEtfTEVWRUw9MQorIGVjaG8gMgorIEZCU1BMQVNIX1BST0dSRVNTPTAKKyBGQlNwbGFzaFByb2dy
ZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NjU1MworIFRpbWVkRkJT
cGxhc2hDdGwgJ3Byb2dyZXNzIDY1NTNcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIHJldHVybiAw
CisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycg
J10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQ
X1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxOUxvZ291dFBpZGdpbiIsIDEsIDIpfScK
KyBuZXdfQ0hBSU5fVVBfVE89MTkKKyAnWycgLW4gMTkgJ10nCisgQ0hBSU5fVVBfVE89MTkKKyBi
aXQ9TG9nb3V0UGlkZ2luCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTldIEV4ZWN1dGluZyBMb2dv
dXRQaWRnaW4gLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzE5XScgRXhlY3V0aW5nIExvZ291
dFBpZGdpbiAuLi4KKyAnWycgLW4gJycgJ10nCisgTG9nb3V0UGlkZ2luCisgJ1snIHgxICchPScg
eDEgJ10nCisgJ1snIC16IC91c3IvYmluL3B1cnBsZS1yZW1vdGUgJ10nCisgJ1snICchJyAteCAv
dXNyL2Jpbi9wdXJwbGUtcmVtb3RlICddJworIGxvY2FsIHBpZCBpPTAKKysgcGlkb2YgcGlkZ2lu
CmhpYmVybmF0ZTogWzE5XSBFeGVjdXRpbmcgTG9nb3V0UGlkZ2luIC4uLgorIGZvciBwaWQgaW4g
J2BwaWRvZiBwaWRnaW5gJworIGxvY2FsIHVzZXIgZGJ1c19zZXNzaW9uX2J1c19hZGRyZXNzIHBp
ZGdpbl9zdGF0dXMgc2F2ZWRfc3RhdHVzX2lkIHN0YXR1c190eXBlIHB1cnBsZV9yZW1vdGVfY21k
CisrIGdldF9lbnZfdmFyX29mX3Byb2Nlc3MgNDkyMSBVU0VSCisrIGxvY2FsIHBpZD00OTIxIGVu
dnZhcj1VU0VSCisrIHNlZCAtbmUgJ3MvXlVTRVI9XCguKlwpJC9cMS9wJworKyB0ciAnXDAnICdc
bicKKyB1c2VyPW1yZnJlZQorKyBnZXRfZW52X3Zhcl9vZl9wcm9jZXNzIDQ5MjEgREJVU19TRVNT
SU9OX0JVU19BRERSRVNTCisrIGxvY2FsIHBpZD00OTIxIGVudnZhcj1EQlVTX1NFU1NJT05fQlVT
X0FERFJFU1MKKysgdHIgJ1wwJyAnXG4nCisrIHNlZCAtbmUgJ3MvXkRCVVNfU0VTU0lPTl9CVVNf
QUREUkVTUz1cKC4qXCkkL1wxL3AnCisgZGJ1c19zZXNzaW9uX2J1c19hZGRyZXNzPXVuaXg6YWJz
dHJhY3Q9L3RtcC9kYnVzLTJIZ2JQYTNrVVYsZ3VpZD1mYzA3MjJkMzllM2I0NjBjMDMzNDBjMDA0
NzI5YTJhMQorIHZlY2hvIDIgJ1NhdmluZyBzdGF0dXMgb2YgbXJmcmVlJ1wnJ3MgUGlkZ2luIHVz
aW5nIEQtQnVzIHNlc3Npb24gYnVzIGFkZHJlc3MgdW5peDphYnN0cmFjdD0vdG1wL2RidXMtMkhn
YlBhM2tVVixndWlkPWZjMDcyMmQzOWUzYjQ2MGMwMzM0MGMwMDQ3MjlhMmExJworIGxvY2FsIHYK
KyB2PTIKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDIgLWxlIDQgJ10nCisgZWNobyBT
YXZpbmcgc3RhdHVzIG9mICdtcmZyZWUnXCcncycgUGlkZ2luIHVzaW5nIEQtQnVzIHNlc3Npb24g
YnVzIGFkZHJlc3MgdW5peDphYnN0cmFjdD0vdG1wL2RidXMtMkhnYlBhM2tVVixndWlkPWZjMDcy
MmQzOWUzYjQ2MGMwMzM0MGMwMDQ3MjlhMmExCisrIERCVVNfU0VTU0lPTl9CVVNfQUREUkVTUz11
bml4OmFic3RyYWN0PS90bXAvZGJ1cy0ySGdiUGEza1VWLGd1aWQ9ZmMwNzIyZDM5ZTNiNDYwYzAz
MzQwYzAwNDcyOWEyYTEKKysgc3UgbXJmcmVlIC1jICcvdXNyL2Jpbi9wdXJwbGUtcmVtb3RlICdc
JydnZXRzdGF0dXMnXCcnJwpTYXZpbmcgc3RhdHVzIG9mIG1yZnJlZSdzIFBpZGdpbiB1c2luZyBE
LUJ1cyBzZXNzaW9uIGJ1cyBhZGRyZXNzIHVuaXg6YWJzdHJhY3Q9L3RtcC9kYnVzLTJIZ2JQYTNr
VVYsZ3VpZD1mYzA3MjJkMzllM2I0NjBjMDMzNDBjMDA0NzI5YTJhMQorIHBpZGdpbl9zdGF0dXM9
YXZhaWxhYmxlCisgZXZhbCAnUElER0lOX0xPR0dFRF9PVVRfU0VTU0lPTlNfVVNFUl8wPSdcJydt
cmZyZWUnXCcnJworKyBQSURHSU5fTE9HR0VEX09VVF9TRVNTSU9OU19VU0VSXzA9bXJmcmVlCisg
ZXZhbCAnUElER0lOX0xPR0dFRF9PVVRfU0VTU0lPTlNfREJVU18wPSdcJyd1bml4OmFic3RyYWN0
PS90bXAvZGJ1cy0ySGdiUGEza1VWLGd1aWQ9ZmMwNzIyZDM5ZTNiNDYwYzAzMzQwYzAwNDcyOWEy
YTEnXCcnJworKyBQSURHSU5fTE9HR0VEX09VVF9TRVNTSU9OU19EQlVTXzA9dW5peDphYnN0cmFj
dD0vdG1wL2RidXMtMkhnYlBhM2tVVixndWlkPWZjMDcyMmQzOWUzYjQ2MGMwMzM0MGMwMDQ3Mjlh
MmExCisgZXZhbCAnUElER0lOX0xPR0dFRF9PVVRfU0VTU0lPTlNfU1RBVFVTXzA9J1wnJ2F2YWls
YWJsZSdcJycnCisrIFBJREdJTl9MT0dHRURfT1VUX1NFU1NJT05TX1NUQVRVU18wPWF2YWlsYWJs
ZQorKyBleHByIDAgKyAxCisgaT0xCisgcHVycGxlX3JlbW90ZV9jbWQ9J3NldHN0YXR1cz9zdGF0
dXM9b2ZmbGluZScKKyAnWycgLW4gJycgJ10nCisgdmVjaG8gMiAnTG9nZ2luZyBvdXQgbXJmcmVl
J1wnJ3MgUGlkZ2luIHVzaW5nIEQtQnVzIHNlc3Npb24gYnVzIGFkZHJlc3MgdW5peDphYnN0cmFj
dD0vdG1wL2RidXMtMkhnYlBhM2tVVixndWlkPWZjMDcyMmQzOWUzYjQ2MGMwMzM0MGMwMDQ3Mjlh
MmExJworIGxvY2FsIHYKKyB2PTIKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDIgLWxl
IDQgJ10nCisgZWNobyBMb2dnaW5nIG91dCAnbXJmcmVlJ1wnJ3MnIFBpZGdpbiB1c2luZyBELUJ1
cyBzZXNzaW9uIGJ1cyBhZGRyZXNzIHVuaXg6YWJzdHJhY3Q9L3RtcC9kYnVzLTJIZ2JQYTNrVVYs
Z3VpZD1mYzA3MjJkMzllM2I0NjBjMDMzNDBjMDA0NzI5YTJhMQorIERCVVNfU0VTU0lPTl9CVVNf
QUREUkVTUz11bml4OmFic3RyYWN0PS90bXAvZGJ1cy0ySGdiUGEza1VWLGd1aWQ9ZmMwNzIyZDM5
ZTNiNDYwYzAzMzQwYzAwNDcyOWEyYTEKKyBzdSBtcmZyZWUgLWMgJy91c3IvYmluL3B1cnBsZS1y
ZW1vdGUgJ1wnJ3NldHN0YXR1cz9zdGF0dXM9b2ZmbGluZSdcJycnCkxvZ2dpbmcgb3V0IG1yZnJl
ZSdzIFBpZGdpbiB1c2luZyBELUJ1cyBzZXNzaW9uIGJ1cyBhZGRyZXNzIHVuaXg6YWJzdHJhY3Q9
L3RtcC9kYnVzLTJIZ2JQYTNrVVYsZ3VpZD1mYzA3MjJkMzllM2I0NjBjMDMzNDBjMDA0NzI5YTJh
MQorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScK
KyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwg
bmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIyMEZCU3BsYXNoUHJv
Z3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTIwCisgJ1snIC1uIDIwICddJworIENI
QUlOX1VQX1RPPTIwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6
IFsyMF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisg
c2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRl
OiAnWzIwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJwor
IEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0x
MzEwNgorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDEzMTA2XG5yZXBhaW50XG4nCmhpYmVy
bmF0ZTogWzIwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyByZXR1cm4gMAorIHJl
dD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJwor
IGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMzBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9Jwor
IG5ld19DSEFJTl9VUF9UTz0zMAorICdbJyAtbiAzMCAnXScKKyBDSEFJTl9VUF9UTz0zMAorIGJp
dD1GQlNwbGFzaFByb2dyZXNzCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMzBdIEV4ZWN1dGluZyBG
QlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4
MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1szMF0nIEV4ZWN1dGlu
ZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNz
CisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9MTk2NTkKKyBUaW1lZEZCU3Bs
YXNoQ3RsICdwcm9ncmVzcyAxOTY1OVxucmVwYWludFxuJworIHJldHVybiAwCisgcmV0PTAKKyAn
WycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJp
dCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAn
QkVHSU57cHJpbnQgc3Vic3RyKCIzMFNlcnZpY2VzU3RvcCIsIDEsIDIpfScKaGliZXJuYXRlOiBb
MzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorIG5ld19DSEFJTl9VUF9UTz0zMAor
ICdbJyAtbiAzMCAnXScKKyBDSEFJTl9VUF9UTz0zMAorIGJpdD1TZXJ2aWNlc1N0b3AKKyB2ZWNo
byAxICdoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIFNlcnZpY2VzU3RvcCAuLi4gJworIGxvY2Fs
IHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNo
byBoaWJlcm5hdGU6ICdbMzBdJyBFeGVjdXRpbmcgU2VydmljZXNTdG9wIC4uLgorICdbJyAtbiAn
JyAnXScKKyBTZXJ2aWNlc1N0b3AKKyAnWycgLXogMSAnXScKKyBFeGVjdXRlU2VydmljZXMgc3Rv
cAorIGxvY2FsIGFjdGlvbgorIGxvY2FsIHNlcnZpY2VzCisgbG9jYWwgc2VydmljZQorIGFjdGlv
bj1zdG9wCisgc2hpZnQKKyBzZXJ2aWNlcz0KKyByZXQ9MAorIHJldHVybiAwCisgUkVTVEFSVEVE
X1NFUlZJQ0VTPQorIEV4ZWN1dGVTZXJ2aWNlcyBzdG9wIGxhcHRvcF9tb2RlCisgbG9jYWwgYWN0
aW9uCisgbG9jYWwgc2VydmljZXMKKyBsb2NhbCBzZXJ2aWNlCisgYWN0aW9uPXN0b3AKKyBzaGlm
dAorIHNlcnZpY2VzPWxhcHRvcF9tb2RlCisgcmV0PTAKKyBmb3Igc2VydmljZSBpbiAnJHNlcnZp
Y2VzJworIEludm9rZVJDRCBsYXB0b3BfbW9kZSBzdG9wCisgbG9jYWwgc2VydmljZSBhY3Rpb24g
dG1wIGNtZAorIHNlcnZpY2U9bGFwdG9wX21vZGUKKyBhY3Rpb249c3RvcAorICdbJyAteCAvZXRj
L2luaXQuZC9sYXB0b3BfbW9kZSAnXScKKyBjbWQ9Jy9ldGMvaW5pdC5kL2xhcHRvcF9tb2RlIHN0
b3AnCisgJ1snIHN0b3AgPSBzdGFydCAnXScKKyB2ZWNobyAyICdFeGVjdXRpbmcgL2V0Yy9pbml0
LmQvbGFwdG9wX21vZGUgc3RvcCcKKyBsb2NhbCB2Cisgdj0yCisgc2hpZnQKKyAnWycgeCA9IHgx
ICddJworICdbJyAyIC1sZSA0ICddJworIGVjaG8gRXhlY3V0aW5nIC9ldGMvaW5pdC5kL2xhcHRv
cF9tb2RlIHN0b3AKKyAvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSBzdG9wCmhpYmVybmF0ZTogWzMw
XSBFeGVjdXRpbmcgU2VydmljZXNTdG9wIC4uLgpFeGVjdXRpbmcgL2V0Yy9pbml0LmQvbGFwdG9w
X21vZGUgc3RvcAogKiBTdG9wcGluZyBsYXB0b3BfbW9kZSAuLi4gWyBvayBdCisgJ1snIDAgLW5l
IDEwMCAnXScKKyBSRVNUQVJURURfU0VSVklDRVM9J2xhcHRvcF9tb2RlICcKKyByZXR1cm4gMAor
IHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAn
WycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3
X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI0MEZCU3BsYXNoUHJvZ3Jl
c3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTQwCisgJ1snIC1uIDQwICddJworIENIQUlO
X1VQX1RPPTQwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs0
MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hp
ZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAn
WzQwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZC
U3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0yNjIx
MgorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDI2MjEyXG5yZXBhaW50XG4nCmhpYmVybmF0
ZTogWzQwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyByZXR1cm4gMAorIHJldD0w
CisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZv
ciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBh
d2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNDVGU1R5cGVzVW5tb3VudCIsIDEsIDIpfScKKyBuZXdf
Q0hBSU5fVVBfVE89NDUKKyAnWycgLW4gNDUgJ10nCisgQ0hBSU5fVVBfVE89NDUKKyBiaXQ9RlNU
eXBlc1VubW91bnQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs0NV0gRXhlY3V0aW5nIEZTVHlwZXNV
bm1vdW50IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAn
WycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s0NV0nIEV4ZWN1dGluZyBGU1R5cGVz
VW5tb3VudCAuLi4KKyAnWycgLW4gJycgJ10nCisgRlNUeXBlc1VubW91bnQKKyBsb2NhbCBmc3R5
cGUKKyBsb2NhbCByZXQKKyAnWycgLXogJyBzbWJmcyBuZnMgdmZhdCBudGZzIHNtYmZzIG5mcyB2
ZmF0IG50ZnMnICddJworIHJldD0wCisgZm9yIGZzdHlwZSBpbiAnJEZTX1RZUEVTJworIGxvY2Fs
IHVubW91bnRzCisrIHNvcnQgLXIKaGliZXJuYXRlOiBbNDVdIEV4ZWN1dGluZyBGU1R5cGVzVW5t
b3VudCAuLi4KKysgYXdrICcoJDMgPT0gInNtYmZzIikge3ByaW50ICQyfScgL3Byb2MvbW91bnRz
CisgdW5tb3VudHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgZm9yIGZzdHlwZSBpbiAn
JEZTX1RZUEVTJworIGxvY2FsIHVubW91bnRzCisrIGF3ayAnKCQzID09ICJuZnMiKSB7cHJpbnQg
JDJ9JyAvcHJvYy9tb3VudHMKKysgc29ydCAtcgorIHVubW91bnRzPQorICdbJyAteiAnJyAnXScK
KyBjb250aW51ZQorIGZvciBmc3R5cGUgaW4gJyRGU19UWVBFUycKKyBsb2NhbCB1bm1vdW50cwor
KyBhd2sgJygkMyA9PSAidmZhdCIpIHtwcmludCAkMn0nIC9wcm9jL21vdW50cworKyBzb3J0IC1y
CisgdW5tb3VudHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgZm9yIGZzdHlwZSBpbiAn
JEZTX1RZUEVTJworIGxvY2FsIHVubW91bnRzCisrIGF3ayAnKCQzID09ICJudGZzIikge3ByaW50
ICQyfScgL3Byb2MvbW91bnRzCisrIHNvcnQgLXIKKyB1bm1vdW50cz0KKyAnWycgLXogJycgJ10n
CisgY29udGludWUKKyBmb3IgZnN0eXBlIGluICckRlNfVFlQRVMnCisgbG9jYWwgdW5tb3VudHMK
KysgYXdrICcoJDMgPT0gInNtYmZzIikge3ByaW50ICQyfScgL3Byb2MvbW91bnRzCisrIHNvcnQg
LXIKKyB1bm1vdW50cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyBmb3IgZnN0eXBlIGlu
ICckRlNfVFlQRVMnCisgbG9jYWwgdW5tb3VudHMKKysgc29ydCAtcgorKyBhd2sgJygkMyA9PSAi
bmZzIikge3ByaW50ICQyfScgL3Byb2MvbW91bnRzCisgdW5tb3VudHM9CisgJ1snIC16ICcnICdd
JworIGNvbnRpbnVlCisgZm9yIGZzdHlwZSBpbiAnJEZTX1RZUEVTJworIGxvY2FsIHVubW91bnRz
CisrIGF3ayAnKCQzID09ICJ2ZmF0Iikge3ByaW50ICQyfScgL3Byb2MvbW91bnRzCisrIHNvcnQg
LXIKKyB1bm1vdW50cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyBmb3IgZnN0eXBlIGlu
ICckRlNfVFlQRVMnCisgbG9jYWwgdW5tb3VudHMKKysgYXdrICcoJDMgPT0gIm50ZnMiKSB7cHJp
bnQgJDJ9JyAvcHJvYy9tb3VudHMKKysgc29ydCAtcgorIHVubW91bnRzPQorICdbJyAteiAnJyAn
XScKKyBjb250aW51ZQorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycg
MCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0
c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI1
MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTUwCisgJ1snIC1u
IDUwICddJworIENIQUlOX1VQX1RPPTUwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAx
ICdoaWJlcm5hdGU6IFs1MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2Nh
bCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVj
aG8gaGliZXJuYXRlOiAnWzUwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVy
bmF0ZTogWzUwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10n
CisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNT
PTMyNzY1CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMzI3NjVcbnJlcGFpbnRcbicKKyBy
ZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1sn
IC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19D
SEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNTlSZW1vdW50WEZTQm9vdFJP
IiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz01OQorICdbJyAtbiA1OSAnXScKKyBDSEFJTl9V
UF9UTz01OQorIGJpdD1SZW1vdW50WEZTQm9vdFJPCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbNTld
IEV4ZWN1dGluZyBSZW1vdW50WEZTQm9vdFJPIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s1
OV0nIEV4ZWN1dGluZyBSZW1vdW50WEZTQm9vdFJPIC4uLgpoaWJlcm5hdGU6IFs1OV0gRXhlY3V0
aW5nIFJlbW91bnRYRlNCb290Uk8gLi4uCisgJ1snIC1uICcnICddJworIFJlbW91bnRYRlNCb290
Uk8KKyAnWycgJycgPSAxICddJworIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0
IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJwor
IGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNjBGQlNw
bGFzaFByb2dyZXNzIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz02MAorICdbJyAtbiA2MCAn
XScKKyBDSEFJTl9VUF9UTz02MAorIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgdmVjaG8gMSAnaGli
ZXJuYXRlOiBbNjBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgor
IHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhp
YmVybmF0ZTogJ1s2MF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6
IFs2MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZC
U3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0zOTMx
OAorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDM5MzE4XG5yZXBhaW50XG4nCisgcmV0dXJu
IDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAn
JyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5f
VVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjcwRkJTcGxhc2hQcm9ncmVzcyIsIDEs
IDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89NzAKKyAnWycgLW4gNzAgJ10nCisgQ0hBSU5fVVBfVE89
NzAKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVj
dXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdb
JyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNzBdJyBF
eGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbNzBdIEV4ZWN1dGluZyBG
QlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisg
J1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NDU4NzEKKyBUaW1lZEZCU3BsYXNo
Q3RsICdwcm9ncmVzcyA0NTg3MVxucmVwYWludFxuJworIHJldHVybiAwCisgcmV0PTAKKyAnWycg
MCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBp
biAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVH
SU57cHJpbnQgc3Vic3RyKCI4MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlO
X1VQX1RPPTgwCisgJ1snIC1uIDgwICddJworIENIQUlOX1VQX1RPPTgwCisgYml0PUZCU3BsYXNo
UHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs4MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJv
Z3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdb
JyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzgwXScgRXhlY3V0aW5nIEZCU3BsYXNo
UHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzgwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAu
Li4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJwor
IEZCU1BMQVNIX1BST0dSRVNTPTUyNDI0CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNTI0
MjRcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1sn
IDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJp
dHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigi
ODlTYXZlS2VybmVsTW9kcHJvYmUiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTg5CisgJ1sn
IC1uIDg5ICddJworIENIQUlOX1VQX1RPPTg5CisgYml0PVNhdmVLZXJuZWxNb2Rwcm9iZQorIHZl
Y2hvIDEgJ2hpYmVybmF0ZTogWzg5XSBFeGVjdXRpbmcgU2F2ZUtlcm5lbE1vZHByb2JlIC4uLiAn
CisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAn
XScKKyBlY2hvIGhpYmVybmF0ZTogJ1s4OV0nIEV4ZWN1dGluZyBTYXZlS2VybmVsTW9kcHJvYmUg
Li4uCmhpYmVybmF0ZTogWzg5XSBFeGVjdXRpbmcgU2F2ZUtlcm5lbE1vZHByb2JlIC4uLgorICdb
JyAtbiAnJyAnXScKKyBTYXZlS2VybmVsTW9kcHJvYmUKKyAnWycgLW4gJycgJ10nCisgJ1snIC1y
IC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUgJ10nCisrIGNhdCAvcHJvYy9zeXMva2VybmVsL21v
ZHByb2JlCisgS0VSTkVMX01PRFBST0JFPS9zYmluL21vZHByb2JlCisgJ1snIC1uIC9zYmluL21v
ZHByb2JlICddJworIHZlY2hvIDMgJ1NhdmVkIC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUgaXMg
L3NiaW4vbW9kcHJvYmUnCisgbG9jYWwgdgorIHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScK
KyAnWycgMyAtbGUgNCAnXScKKyBlY2hvIFNhdmVkIC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUg
aXMgL3NiaW4vbW9kcHJvYmUKU2F2ZWQgL3Byb2Mvc3lzL2tlcm5lbC9tb2Rwcm9iZSBpcyAvc2Jp
bi9tb2Rwcm9iZQorIGVjaG8gL2RvZXNudC9leGlzdAorICdbJyAtciAvcHJvYy9zeXMva2VybmVs
L2hvdHBsdWcgJ10nCisrIGNhdCAvcHJvYy9zeXMva2VybmVsL2hvdHBsdWcKKyBLRVJORUxfSE9U
UExVRz0KKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICdd
JworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1
c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBz
dWJzdHIoIjkwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89OTAK
KyAnWycgLW4gOTAgJ10nCisgQ0hBSU5fVVBfVE89OTAKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcwor
IHZlY2hvIDEgJ2hpYmVybmF0ZTogWzkwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4g
JworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQg
J10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAu
Li4KaGliZXJuYXRlOiBbOTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAt
biAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hf
UFJPR1JFU1M9NTg5NzcKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyA1ODk3N1xucmVwYWlu
dFxuJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAn
XScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9j
YWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI5MU1vZHVsZXNV
bmxvYWRCbGFja2xpc3QiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTkxCisgJ1snIC1uIDkx
ICddJworIENIQUlOX1VQX1RPPTkxCisgYml0PU1vZHVsZXNVbmxvYWRCbGFja2xpc3QKKyB2ZWNo
byAxICdoaWJlcm5hdGU6IFs5MV0gRXhlY3V0aW5nIE1vZHVsZXNVbmxvYWRCbGFja2xpc3QgLi4u
ICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzkxXScgRXhlY3V0aW5nIE1vZHVsZXNVbmxvYWRCbGFj
a2xpc3QgLi4uCmhpYmVybmF0ZTogWzkxXSBFeGVjdXRpbmcgTW9kdWxlc1VubG9hZEJsYWNrbGlz
dCAuLi4KKyAnWycgLW4gJycgJ10nCisgTW9kdWxlc1VubG9hZEJsYWNrbGlzdAorICdbJyB4MSA9
IHgxICddJworIENoZWNrTW9kdWxlU3VwcG9ydAorICdbJyAtZiAvcHJvYy9tb2R1bGVzICddJwor
IHJldHVybiAwCisgJ1snICchJyAtciAvZXRjL2hpYmVybmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVz
ICddJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgx
MDApKyQzfScgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKyBsb2NhbCBrdmVyPTEzMjYzMQor
IHZlY2hvIDIgJ1VubG9hZGluZyBibGFja2xpc3RlZCBtb2R1bGVzIGxpc3RlZCAvZXRjL2hpYmVy
bmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVzJworIGxvY2FsIHYKKyB2PTIKKyBzaGlmdAorICdbJyB4
ID0geDEgJ10nCisgJ1snIDIgLWxlIDQgJ10nCisgZWNobyBVbmxvYWRpbmcgYmxhY2tsaXN0ZWQg
bW9kdWxlcyBsaXN0ZWQgL2V0Yy9oaWJlcm5hdGUvYmxhY2tsaXN0ZWQtbW9kdWxlcwpVbmxvYWRp
bmcgYmxhY2tsaXN0ZWQgbW9kdWxlcyBsaXN0ZWQgL2V0Yy9oaWJlcm5hdGUvYmxhY2tsaXN0ZWQt
bW9kdWxlcworIGxvY2FsIGZhaWxlZG1vZHM9CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
IGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92
ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVl
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVz
ZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICdd
JworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
ICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIG52aWRpYQorKyBH
ZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3Ny
ZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9bnZpZGlhICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21v
ZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0
KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9
PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAg
bW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVs
ZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGks
IGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5n
ZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxl
c1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVs
ZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAg
ICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAg
ICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9
CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVw
c1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7
CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVz
KG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bf
c29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0K
KyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisg
Y2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURl
cHMgYWN4MTAwCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgYXdrIC12IG1vZHVsZT1hY3gxMDAgJwpm
dW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9k
XSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4g
YSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxl
c1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAg
ICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rp
b24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChj
aGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7
CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmlu
dCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9y
IChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1v
ZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tq
XSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAg
ICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7
CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBo
YXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAg
ICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1
bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgZ3Jl
cCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9wcm9jL21v
ZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBt
b2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycg
MCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcwor
KyBGaW5kTW9kdWxlRGVwcyBhY3hfcGNpCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAn
XjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1hY3hf
cGNpICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1
bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9y
IChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAo
IW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0K
ICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0K
CmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3
aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9k
dWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAg
ICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAg
ICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIs
ICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1v
ZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQog
ICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9
IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1v
ZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkg
ewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50
byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAn
CisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUK
KyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFk
IG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICdd
JworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaHNmbW9kZW0KKysgR2V0MjZNb2R1bGVz
RmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBh
d2sgLXYgbW9kdWxlPWhzZm1vZGVtICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9k
LCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9k
XSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29u
dGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1th
W2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkK
ICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAg
IGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAg
ICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAi
IikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVs
ZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAg
ICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1
YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7
CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAk
NAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAo
aGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkg
IyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1
bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXog
JycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1
c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9k
IGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgcHJpc201
NAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJu
ZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9cHJpc201NCAnCmZ1bmN0aW9uIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAg
ICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYg
KGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAg
ICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1
bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAg
ICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYg
KG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAg
ICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykg
ewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0K
ICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAi
LSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9
CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAg
ICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcwor
IGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVz
ZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICdd
JworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycg
J10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3Zlcgor
IGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdb
JyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJb
XjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYw
OAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMy
NjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAw
CisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBiY200NDAwCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdr
IC12IG1vZHVsZT1iY200NDAwICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBp
LCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwg
YSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGlu
dWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ld
XSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAg
ICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNo
YW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAg
ICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikg
ewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNb
aV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAg
ICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1Yigi
LCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg
ICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAg
ICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAog
ICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2
ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBw
dXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVz
KQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycg
J10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2Vf
bW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGlu
CisgJ1snIC1uICcyLjQuMAkyLjQuOTkJMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10n
CisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi40LjAgMi40Ljk5IDIuNi4wIDIuNi45OQorIGxv
Y2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1h
eF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OSAyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIu
NC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEw
MCkrJDN9JworIG1pbl92ZXI9MTMyMDk2CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50
KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBlY2hvIDIuNC45OQorIG1heF92ZXI9MTMy
MTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1s
ZSAxMzIxOTUgJ10nCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBhd2sgJ0JFR0lOe0ZT
PSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjYu
MAorIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisg
c2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3
MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGVtdTEwazEK
KysgYXdrIC12IG1vZHVsZT1lbXUrKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVs
L29zcmVsZWFzZQp7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNb
bW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikg
Y29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxl
c1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtp
XSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsK
ICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAw
CiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9
PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1v
ZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAg
ICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAg
IHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJ
TiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0g
PSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBp
ZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVs
ZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydCht
b2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycg
LXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIK
KyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAk
bW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTkJMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXog
JycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi40LjAgMi40Ljk5IDIuNi4wIDIuNi45
OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxv
Y2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OSAyLjYuMCAyLjYuOTknICddJworKyBl
Y2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2CisrIGVjaG8gMi40Ljk5CisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92
ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMy
NjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIu
Ni4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEw
MCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9
IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMy
NzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1s
ZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGZv
cmNlZGV0aAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGF3ayAtdiBtb2R1bGU9Zm9yY2VkZXRoICcK
ZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21v
ZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGlu
IGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVs
ZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAg
ICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0
aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAo
Y2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykg
ewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJp
bnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZv
ciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBt
b2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNb
al0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAg
ICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoK
ewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkg
aGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAg
ICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9k
dWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGdy
ZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJvYy9t
b2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgbW9kPWlwdzIxMDAKKyB1c2VfbW9kX3Zlcj0x
CisgJ1snIC1uICcwLjAJMS4wLjInICddJworICdbJyAteiAxICddJworIGxvY2FsIG1vZHZlcgor
KyBtb2RpbmZvIGlwdzIxMDAKKysgc2VkIC1lICdzL152ZXJzaW9uOlsgXHRdXCtbXjAtOV0qXCgu
KlwpJC9cMS87dDtkJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAw
KSsoJDIqMHgxMDApKyQzfScKKyBtb2R2ZXI9CisgdmVjaG8gMyAnTW9kdWxlIHZlcnNpb24gZm9y
IGlwdzIxMDAgaXMgJworIGxvY2FsIHYKKyB2PTMKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisg
J1snIDMgLWxlIDQgJ10nCisgZWNobyBNb2R1bGUgdmVyc2lvbiBmb3IgaXB3MjEwMCBpcworICdb
JyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCk1vZHVsZSB2ZXJzaW9uIGZvciBpcHcyMTAwIGlzCisr
IEZpbmRNb2R1bGVEZXBzIGlwdzIxMDAKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICde
MlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWlwdzIx
MDAgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVs
ZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3Ig
KGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICgh
bW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQog
ICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoK
ZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdo
aWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1
bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAg
ICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAg
ICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwg
IiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9k
dWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAg
ICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0g
MAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9k
dWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7
CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRv
ICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcK
KysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQor
IHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQg
bW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyBtb2Q9aXB3MjIwMAor
IHVzZV9tb2RfdmVyPTEKKyAnWycgLW4gJzAuMAkwLjIwJyAnXScKKyAnWycgLXogMSAnXScKKyBs
b2NhbCBtb2R2ZXIKKysgbW9kaW5mbyBpcHcyMjAwCisrIHNlZCAtZSAncy9edmVyc2lvbjpbIFx0
XVwrW14wLTldKlwoLipcKSQvXDEvO3Q7ZCcKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJp
bnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbW9kdmVyPTY2MDUwCisgdmVjaG8gMyAn
TW9kdWxlIHZlcnNpb24gZm9yIGlwdzIyMDAgaXMgNjYwNTAnCisgbG9jYWwgdgorIHY9MworIHNo
aWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUgNCAnXScKKyBlY2hvIE1vZHVsZSB2ZXJz
aW9uIGZvciBpcHcyMjAwIGlzIDY2MDUwCisgJ1snIC1uIDY2MDUwICddJworIElzSW5WZXJzaW9u
UmFuZ2UgNjYwNTAgMC4wIDAuMjAKKyBsb2NhbCBrdmVyCisga3Zlcj02NjA1MAorIHNoaWZ0Cisg
bG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzAuMCAwLjIwJyAnXScKKysg
ZWNobyAwLjAKTW9kdWxlIHZlcnNpb24gZm9yIGlwdzIyMDAgaXMgNjYwNTAKKysgYXdrICdCRUdJ
TntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zl
cj0wCisrIGVjaG8gMC4yMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTUxMjAKKyBzaGlmdCAyCisgJ1snIDY2MDUw
IC1nZSAwICddJworICdbJyA2NjA1MCAtbGUgNTEyMCAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0
dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVz
ZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2Qg
aW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJz
aW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQor
IHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIu
Ni45OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQo
JDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYu
OTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAw
KSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4
ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMK
KysgRmluZE1vZHVsZURlcHMgbmF0c2VtaQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGF3ayAtdiBt
b2R1bGU9bmF0c2VtaSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkg
ewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIs
IikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAg
ICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBk
ZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAg
fQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2Vk
ID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZv
cihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAg
ICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAg
ICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1
YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIs
IiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hh
bmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2
ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlm
ICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9k
dWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyBy
ZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAg
IH0KfQogICAgJworKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFz
ZQorKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVl
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42
LjAJMi42LjE5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEg
Mi42LjAgMi42LjE5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBt
aW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjE5JyAnXScKKysgZWNo
byAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIq
MHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi4xOQorKyBhd2sgJ0JFR0lO
e0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVy
PTEzMjYyNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYz
MSAtbGUgMTMyNjI3ICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi40LjAJ
Mi40Ljk5CTIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFu
Z2UgMTMyNjMxIDIuNC4wIDIuNC45OSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0x
MzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcy
LjQuMCAyLjQuOTkgMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjQuMAorKyBhd2sgJ0JFR0lO
e0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVy
PTEzMjA5NgorKyBlY2hvIDIuNC45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgk
MSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjE5NQorIHNoaWZ0IDIKKyAn
WycgMTMyNjMxIC1nZSAxMzIwOTYgJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyMTk1ICddJworICdb
JyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJb
XjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYw
OAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMy
NjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAw
CisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBydDI0MDAKKysgR2V0MjZNb2R1bGVzRmls
ZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sg
LXYgbW9kdWxlPXJ0MjQwMCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwg
YSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEs
ICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVl
CiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0g
PSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAg
ICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFu
Z2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAg
IGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsK
ICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ld
CiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAg
IHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwi
aSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
Y2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAg
aGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAg
IGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVf
bW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0
cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykK
ICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICdd
JworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
ICdbJyAtbiAnMi42LjAJMi42LjE0JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25S
YW5nZSAxMzI2MzEgMi42LjAgMi42LjE0CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hp
ZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjE0
JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSow
eDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBhd2sgJ0JFR0lOe0ZT
PSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjYu
MTQKKyBtYXhfdmVyPTEzMjYyMgorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10n
CisgJ1snIDEzMjYzMSAtbGUgMTMyNjIyICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQor
IGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92
ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdb
JyAtbiAnMi42LjAJMi42LjE0JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5n
ZSAxMzI2MzEgMi42LjAgMi42LjE0CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQK
KyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjE0JyAn
XScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi4xNAorKyBh
d2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScK
KyBtYXhfdmVyPTEzMjYyMgorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisg
J1snIDEzMjYzMSAtbGUgMTMyNjIyICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAt
biAnMi42LjAJMi42LjE0JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAx
MzI2MzEgMi42LjAgMi42LjE0CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBs
b2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjE0JyAnXScK
KysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAw
KSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi4xNAorKyBhd2sg
J0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBt
YXhfdmVyPTEzMjYyMgorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1sn
IDEzMjYzMSAtbGUgMTMyNjIyICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAn
Mi40LjAJMi40Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2
MzEgMi40LjAgMi40Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2Nh
bCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi40LjAgMi40Ljk5JyAnXScKKysg
ZWNobyAyLjQuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSso
JDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjA5NgorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0i
fXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjQuOTkKKyBtYXhf
dmVyPTEzMjE5NQorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzIwOTYgJ10nCisgJ1snIDEz
MjYzMSAtbGUgMTMyMTk1ICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVl
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi40
LjAJMi40Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEg
Mi40LjAgMi40Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBt
aW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi40LjAgMi40Ljk5JyAnXScKKysgZWNo
byAyLjQuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIq
MHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjA5NgorKyBlY2hvIDIuNC45OQorKyBhd2sgJ0JFR0lO
e0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVy
PTEzMjE5NQorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzIwOTYgJ10nCisgJ1snIDEzMjYz
MSAtbGUgMTMyMTk1ICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi40LjAJ
Mi40Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi40
LjAgMi40Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5f
dmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi40LjAgMi40Ljk5JyAnXScKKysgZWNobyAy
LjQuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgx
MDApKyQzfScKKyBtaW5fdmVyPTEzMjA5NgorKyBlY2hvIDIuNC45OQorKyBhd2sgJ0JFR0lOe0ZT
PSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEz
MjE5NQorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzIwOTYgJ10nCisgJ1snIDEzMjYzMSAt
bGUgMTMyMTk1ICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42
Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAg
Mi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVy
CisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYu
MAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDAp
KyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJb
XjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcw
NworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUg
MTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBzbmRf
ZW5zMTM3MAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5
cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9c25kX2VuczEzNzAgJwpmdW5jdGlv
biBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRl
cHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewog
ICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ld
XSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBm
aW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9w
X3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2Vk
KSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAg
ICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAg
ICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGlu
IG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNb
al0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0K
ICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBp
ZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21v
ZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmlu
ZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBh
cnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9j
L21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2Nh
bCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAn
WycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScgJ10n
CisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45OQor
IGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2Fs
IG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdr
ICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisg
bWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17
cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlm
dCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAn
XScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc25kX2VuczEzNzEK
KysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVs
L29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPXNuZF9lbnMxMzcxICcKZnVuY3Rpb24gZmluZF9y
ZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0K
ICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBp
ZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAg
ICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxh
dGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1v
ZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAg
ICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBp
ZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAg
ICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVz
KSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAg
ICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAg
fQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9
ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAx
Cn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAg
ICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVz
CisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAt
eiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBr
dmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVy
CisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57
RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9
MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQx
KjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdb
JyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0
dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNuZF9tYWVzdHJvMworKyBHZXQy
Nk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxl
YXNlCisrIGF3ayAtdiBtb2R1bGU9c25kX21hZXN0cm8zICcKZnVuY3Rpb24gZmluZF9yZWxhdGVk
X21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNw
bGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtp
XSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAg
ICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21v
ZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMs
IGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNo
YW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9k
dWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAg
ZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAg
ICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAg
ICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAg
fQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikg
ZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVO
RCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0
b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVw
cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgbW9kPXNuZF9idF9zY28KKyB1c2VfbW9kX3Zlcj0xCisgJ1snIC1u
ICcwLjAJMS4xOCcgJ10nCisgJ1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVyCisrIG1vZGluZm8g
c25kX2J0X3NjbworKyBzZWQgLWUgJ3MvXnZlcnNpb246WyBcdF1cK1teMC05XSpcKC4qXCkkL1wx
Lzt0O2QnCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMiow
eDEwMCkrJDN9JworIG1vZHZlcj0KKyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBmb3Igc25kX2J0
X3NjbyBpcyAnCisgbG9jYWwgdgorIHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycg
MyAtbGUgNCAnXScKKyBlY2hvIE1vZHVsZSB2ZXJzaW9uIGZvciBzbmRfYnRfc2NvIGlzCisgJ1sn
IC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc25kX2J0X3NjbworKyBh
d2sgLXYgbW9kdWxlPXNuZF9idF9zY28gJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyht
b2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1tt
b2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBj
b250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVz
W2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ld
KQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewog
ICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAK
ICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09
ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9k
dWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAg
ICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAg
c3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lO
IHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9
ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlm
IChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxl
KSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1v
ZHVsZXMpCiAgICB9Cn0KICAgICcKTW9kdWxlIHZlcnNpb24gZm9yIHNuZF9idF9zY28gaXMKKysg
R2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29z
cmVsZWFzZQorKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAt
biAnMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAx
MzI2MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBs
b2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScK
KysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAw
KSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sg
J0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBt
YXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1sn
IDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9k
dWxlRGVwcyBlbjEzNzAKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAv
cHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWVuMTM3MCAnCmZ1bmN0
aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0g
ZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7
CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2Fb
aV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAg
IGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0
b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5n
ZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAg
ICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkK
ICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGog
aW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxl
c1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQog
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAg
fQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAg
IGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVf
bW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBm
aW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMi
IGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3By
b2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5JyAn
XScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42Ljk5
CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9j
YWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBh
d2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScK
KyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0i
fXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNo
aWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3
ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBlbjEzNzEKKysg
R2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29z
cmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWVuMTM3MSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxp
dChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0g
PT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAg
IG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBp
LCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFu
Z2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVs
ZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRl
bGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAg
ICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAg
ICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0K
fQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRl
cHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQg
ewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9w
X3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9
CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42LjgnICddJworICdbJyAteiAnJyAnXScK
KyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOAorIGxvY2FsIGt2ZXIKKyBrdmVy
PTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4g
JzIuNi4wIDIuNi44JyAnXScKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgx
MDAwMCkrKCQyKjB4MTAwKSskM30nCisrIGVjaG8gMi42LjAKKyBtaW5fdmVyPTEzMjYwOAorKyBl
Y2hvIDIuNi44CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjE2Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdl
IDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MTYgJ10nCisgJ1snIC1uICcnICddJwor
IHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIK
KyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAk
bW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0lu
VmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2
MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYu
MCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8g
Mi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMiow
eDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEz
MjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBk
ZXBzCisrIEZpbmRNb2R1bGVEZXBzIHZpYV9yaGluZQorKyBhd2sgLXYgbW9kdWxlPXZpYV9yaGlu
ZSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxl
c1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAo
aSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFt
b2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAg
ICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9Cgpm
dW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hp
bGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVs
ZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAg
IHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAg
ICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAi
IiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1
bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAg
ICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAw
Cn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1
bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsK
ICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8g
Im1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJwor
KyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwv
b3NyZWxlYXNlCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisg
Y29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zl
cj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1sn
IC1uICcyLjYuMTAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5n
ZSAxMzI2MzEgMi42LjEwIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0
CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4xMCAyLjYuOTkn
ICddJworKyBlY2hvIDIuNi4xMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSow
eDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYxOAorKyBlY2hvIDIuNi45OQor
KyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQz
fScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MTggJ10n
CisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBG
aW5kTW9kdWxlRGVwcyBpODA0MgorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGF3ayAtdiBtb2R1bGU9
aTgwNDIgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1v
ZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBm
b3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlm
ICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ld
XQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0K
fQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAg
IHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBt
b2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAg
ICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAg
ICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIs
IiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwg
bW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAx
CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxl
ID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0g
bW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAx
KSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBp
bnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAg
ICcKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0
IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUK
KyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZl
cnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45
OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIu
Ni45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3Zlcgor
IGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAK
KysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSsk
M30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14w
LTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcK
KyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEz
MjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaW50ZWxf
bWNoX2FncAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5
cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aW50ZWxfbWNoX2FncCAnCmZ1bmN0
aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0g
ZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7
CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2Fb
aV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAg
IGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0
b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5n
ZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAg
ICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkK
ICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGog
aW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxl
c1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQog
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAg
fQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAg
IGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVf
bW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBm
aW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMi
IGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3By
b2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42LjE0JyAn
XScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42LjE0
CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9j
YWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjE0JyAnXScKKysgZWNobyAyLjYuMAorKyBh
d2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScK
KyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi4xNAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0i
fXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjYyMgorIHNo
aWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNjIy
ICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjkJMi42LjIyJyAnXScKKyAn
WycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjkgMi42LjIyCisgbG9j
YWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4
X3ZlcgorICdbJyAtbiAnMi42LjkgMi42LjIyJyAnXScKKysgZWNobyAyLjYuOQorKyBhd2sgJ0JF
R0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5f
dmVyPTEzMjYxNworKyBlY2hvIDIuNi4yMgorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmlu
dCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjYzMAorIHNoaWZ0IDIK
KyAnWycgMTMyNjMxIC1nZSAxMzI2MTcgJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNjMwICddJwor
ICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjEyCTIuNi45OScgJ10nCisgJ1sn
IC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4xMiAyLjYuOTkKKyBsb2Nh
bCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhf
dmVyCisgJ1snIC1uICcyLjYuMTIgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMTIKKysgYXdrICdC
RUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWlu
X3Zlcj0xMzI2MjAKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJp
bnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAy
CisgJ1snIDEzMjYzMSAtZ2UgMTMyNjIwICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScK
KyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc3BlZWRzdGVwX3NtaQor
KyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwv
b3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9c3BlZWRzdGVwX3NtaSAnCmZ1bmN0aW9uIGZpbmRf
cmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2Rd
CiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAg
aWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAg
ICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydCht
b2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAg
ICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAg
aWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAg
ICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxl
cykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAg
ICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAg
ICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAg
IH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAh
PSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0g
MQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0
ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAg
ICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxl
cworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorIG1vZD1uZGlzd3JhcHBlcgorIHVzZV9tb2RfdmVyPTEKKyAn
WycgLW4gJzAuMTAgICAgMC4xMScgJ10nCisgJ1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVyCisr
IG1vZGluZm8gbmRpc3dyYXBwZXIKKysgc2VkIC1lICdzL152ZXJzaW9uOlsgXHRdXCtbXjAtOV0q
XCguKlwpJC9cMS87dDtkJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtb2R2ZXI9CisgdmVjaG8gMyAnTW9kdWxlIHZlcnNpb24g
Zm9yIG5kaXN3cmFwcGVyIGlzICcKKyBsb2NhbCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9IHgx
ICddJworICdbJyAzIC1sZSA0ICddJworIGVjaG8gTW9kdWxlIHZlcnNpb24gZm9yIG5kaXN3cmFw
cGVyIGlzCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKTW9kdWxlIHZlcnNpb24gZm9yIG5k
aXN3cmFwcGVyIGlzCisrIEZpbmRNb2R1bGVEZXBzIG5kaXN3cmFwcGVyCisrIEdldDI2TW9kdWxl
c0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysg
YXdrIC12IG1vZHVsZT1uZGlzd3JhcHBlciAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVz
KG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBz
W21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIp
IGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVs
ZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFb
aV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7
CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0g
MAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0g
PT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBt
b2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAg
ICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAg
ICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVH
SU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFd
ID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAg
aWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1
bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQo
bW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1sn
IC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGF0aF9wY2kK
KysgR2V0MjZNb2R1bGVzRmlsZQorKyBhd2sgLXYgbW9kdWxlPWF0aF9wY2kgJwpmdW5jdGlvbiBm
aW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNb
bW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAg
ICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkg
ewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5k
X3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3Nv
cnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7
CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAg
ICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAg
ICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1v
ZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0p
CiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAg
ICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAo
JDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVs
ZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9y
ZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJh
eQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgZ3JlcCAtcSAnXjJc
LjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBk
ZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1
c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAn
XScKKyBjYXNlICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2Vf
bW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScK
KyBjYXNlICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9k
X3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBj
YXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVw
cyBpcHczOTQ1CisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mv
c3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1pcHczOTQ1ICcKZnVuY3Rpb24g
ZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBz
W21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAg
ICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0p
IHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmlu
ZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9z
b3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkg
ewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAg
ICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAg
ICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBt
b2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pd
KQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAg
ICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYg
KCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1
bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRf
cmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJy
YXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9t
b2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmlu
ZE1vZHVsZURlcHMgaXdsMzk0NQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40
XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aXdsMzk0NSAn
CmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1tt
b2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBp
biBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1
bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAg
ICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5j
dGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUg
KGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMp
IHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHBy
aW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBm
b3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwg
bW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVz
W2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAg
ICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0K
CnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUp
IGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAg
ICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1v
ZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBj
YXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnJyAnXScKKyBs
b2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIG1hYzgwMjExCisrIEdldDI2TW9kdWxlc0ZpbGUK
KysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12
IG1vZHVsZT1tYWM4MDIxMSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwg
YSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEs
ICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVl
CiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0g
PSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAg
ICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFu
Z2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAg
IGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsK
ICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ld
CiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAg
IHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwi
aSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
Y2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAg
aGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAg
IGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVf
bW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0
cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykK
ICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICdd
JworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
ICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNreTIKKysgR2V0
MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVs
ZWFzZQorKyBhd2sgLXYgbW9kdWxlPXNreTIgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVw
c1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIi
KSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1
bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhh
W2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikg
ewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9
IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ld
ID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUg
bW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAg
ICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAg
ICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJF
R0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQx
XSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAg
IGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9k
dWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0
KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdb
JyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zl
cgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMSAtbmUgMCAnXScKKyAnWycg
LXogJycgJ10nCisgYnJlYWsKKyAnWycgLXogJycgJ10nCisgcmV0dXJuIDAKKyByZXQ9MAorICdb
JyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0
IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdC
RUdJTntwcmludCBzdWJzdHIoIjkxTW9kdWxlc1VubG9hZEJsYWNrbGlzdCIsIDEsIDIpfScKKyBu
ZXdfQ0hBSU5fVVBfVE89OTEKKyAnWycgLW4gOTEgJ10nCisgQ0hBSU5fVVBfVE89OTEKKyBiaXQ9
TW9kdWxlc1VubG9hZEJsYWNrbGlzdAorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzkxXSBFeGVjdXRp
bmcgTW9kdWxlc1VubG9hZEJsYWNrbGlzdCAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAor
ICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTFd
JyBFeGVjdXRpbmcgTW9kdWxlc1VubG9hZEJsYWNrbGlzdCAuLi4KKyAnWycgLW4gJycgJ10nCisg
TW9kdWxlc1VubG9hZEJsYWNrbGlzdAorICdbJyB4MSA9IHgxICddJworIENoZWNrTW9kdWxlU3Vw
cG9ydAorICdbJyAtZiAvcHJvYy9tb2R1bGVzICddJworIHJldHVybiAwCisgJ1snICchJyAtciAv
ZXRjL2hpYmVybmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVzICddJwpoaWJlcm5hdGU6IFs5MV0gRXhl
Y3V0aW5nIE1vZHVsZXNVbmxvYWRCbGFja2xpc3QgLi4uCisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JyAvcHJvYy9zeXMva2VybmVsL29z
cmVsZWFzZQorIGxvY2FsIGt2ZXI9MTMyNjMxCisgdmVjaG8gMiAnVW5sb2FkaW5nIGJsYWNrbGlz
dGVkIG1vZHVsZXMgbGlzdGVkIC9ldGMvaGliZXJuYXRlL2JsYWNrbGlzdGVkLW1vZHVsZXMnCisg
bG9jYWwgdgorIHY9MgorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMiAtbGUgNCAnXScK
KyBlY2hvIFVubG9hZGluZyBibGFja2xpc3RlZCBtb2R1bGVzIGxpc3RlZCAvZXRjL2hpYmVybmF0
ZS9ibGFja2xpc3RlZC1tb2R1bGVzCisgbG9jYWwgZmFpbGVkbW9kcz0KKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMg
dXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAg
J10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisg
Y2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92
ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2Fz
ZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIK
KyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAk
bW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1
c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9k
IGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2Vf
bW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGlu
CisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9k
X3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisg
Y29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zl
cj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29u
dGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0K
KyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGlu
dWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyBy
ZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUK
KyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFk
IG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0
cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1v
ZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVl
CisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2
ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisg
bG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJz
CisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9j
YWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisg
J1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMg
dXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAg
J10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzClVubG9hZGluZyBibGFja2xpc3Rl
ZCBtb2R1bGVzIGxpc3RlZCAvZXRjL2hpYmVybmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMK
KysgRmluZE1vZHVsZURlcHMgbnZpZGlhCisrIGF3ayAtdiBtb2R1bGU9bnZpZGlhICcKZnVuY3Rp
b24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBk
ZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsK
ICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtp
XV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAg
ZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRv
cF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdl
ZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAg
ICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQog
ICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBp
biBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVz
W2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9
CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAg
aWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9t
b2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZp
bmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIg
YXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIEdldDI2TW9k
dWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UK
KysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQor
IHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQg
bW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10n
CisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBhY3gxMDAKKysgR2V0MjZNb2R1bGVzRmls
ZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sg
LXYgbW9kdWxlPWFjeDEwMCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwg
YSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEs
ICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVl
CiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0g
PSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAg
ICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFu
Z2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAg
IGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsK
ICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ld
CiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAg
IHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwi
aSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
Y2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAg
aGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAg
IGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVf
bW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0
cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykK
ICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICdd
JworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
ICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGFjeF9wY2kKKysg
R2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29z
cmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWFjeF9wY2kgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3Bs
aXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ld
ID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAg
ICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywg
aSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hh
bmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1
bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBk
ZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAg
ICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9
Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBk
ZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5E
IHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVs
ZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRv
cF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBz
PQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2Vf
bW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScK
KyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxl
RGVwcyBoc2Ztb2RlbQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9w
cm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aHNmbW9kZW0gJwpmdW5j
dGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9
IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkg
ewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1th
W2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAg
ICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24g
dG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFu
Z2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAg
ICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBp
CiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChq
IGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVs
ZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkK
ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAg
IH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAg
ICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZl
X21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAg
ZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVz
IiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9w
cm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBs
b2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMK
KyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwg
ZGVwcworKyBGaW5kTW9kdWxlRGVwcyBwcmlzbTU0CisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3Jl
cCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVs
ZT1wcmlzbTU0ICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAg
ICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQog
ICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAg
ICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNb
YVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAg
ICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAx
CiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkg
aW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAg
ICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAg
ICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJe
ImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAi
LCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2Vk
ID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21v
ZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQx
ID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUg
PT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3Vs
dHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9
CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29u
dGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0K
KyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGlu
dWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyBy
ZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcy
LjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYz
MSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2Fs
IG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBl
Y2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92
ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMy
NjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVE
ZXBzIGJjbTQ0MDAKKysgYXdrIC12IG1vZHVsZT1iY200NDAwICcKZnVuY3Rpb24gZmluZF9yZWxh
dGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAg
IHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAo
YVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAg
ICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVk
X21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVs
ZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAg
IGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAo
bW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAg
ICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7
CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAg
ICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQog
ICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICIt
IikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0K
CkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAg
ICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIEdldDI2TW9kdWxlc0ZpbGUKKysg
Z3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9wcm9j
L21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2Nh
bCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAn
WycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNC4wCTIuNC45OQkyLjYu
MAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAy
LjQuMCAyLjQuOTkgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hp
ZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi40LjAgMi40Ljk5
IDIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi40LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTld
In17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzIwOTYKKysg
ZWNobyAyLjQuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkr
KCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAt
Z2UgMTMyMDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAnXScKKyAnWycgLW4gJzIuNi4w
IDIuNi45OScgJ10nCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDAp
KygkMioweDEwMCkrJDN9JworKyBlY2hvIDIuNi4wCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAy
LjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4
MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMy
NjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRl
cHMKKysgRmluZE1vZHVsZURlcHMgZW11MTBrMQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAg
LXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9
ZW11MTBrMSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAg
bW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAg
IGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAg
aWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2Fb
aV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAg
fQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQog
ICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGlu
IG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAg
ICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAg
ICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJp
IiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwi
LCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9
IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1
bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9
PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09
IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRz
IGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQog
ICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAn
Mi40LjAJMi40Ljk5CTIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJz
aW9uUmFuZ2UgMTMyNjMxIDIuNC4wIDIuNC45OSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisg
a3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1sn
IC1uICcyLjQuMCAyLjQuOTkgMi42LjAgMi42Ljk5JyAnXScKKysgYXdrICdCRUdJTntGUz0iW14w
LTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisrIGVjaG8gMi40LjAKKyBt
aW5fdmVyPTEzMjA5NgorKyBlY2hvIDIuNC45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtw
cmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjE5NQorIHNoaWZ0
IDIKKyAnWycgMTMyNjMxIC1nZSAxMzIwOTYgJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyMTk1ICdd
JworICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17
cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisrIGVjaG8gMi42LjAKKyBtaW5fdmVy
PTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgk
MSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAn
WycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJl
dHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBmb3JjZWRldGgKKysgR2V0MjZN
b2R1bGVzRmlsZQorKyBhd2sgLXYgbW9kdWxlPWZvcmNlZGV0aCAnCmZ1bmN0aW9uIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAg
ICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYg
KGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAg
ICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1
bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAg
ICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYg
KG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAg
ICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykg
ewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0K
ICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAi
LSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9
CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAg
ICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBncmVwIC1xICdeMlwuNFwuJyAv
cHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9Cisg
J1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIG1vZD1pcHcyMTAwCisgdXNlX21vZF92ZXI9MQorICdbJyAtbiAnMC4wCTEu
MC4yJyAnXScKKyAnWycgLXogMSAnXScKKyBsb2NhbCBtb2R2ZXIKKysgbW9kaW5mbyBpcHcyMTAw
CisrIHNlZCAtZSAncy9edmVyc2lvbjpbIFx0XVwrW14wLTldKlwoLipcKSQvXDEvO3Q7ZCcKKysg
YXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30n
CisgbW9kdmVyPQorIHZlY2hvIDMgJ01vZHVsZSB2ZXJzaW9uIGZvciBpcHcyMTAwIGlzICcKKyBs
b2NhbCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAzIC1sZSA0ICddJwor
IGVjaG8gTW9kdWxlIHZlcnNpb24gZm9yIGlwdzIxMDAgaXMKKyAnWycgLW4gJycgJ10nCisgbG9j
YWwgZGVwcwpNb2R1bGUgdmVyc2lvbiBmb3IgaXB3MjEwMCBpcworKyBGaW5kTW9kdWxlRGVwcyBp
cHcyMTAwCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lz
L2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1pcHcyMTAwICcKZnVuY3Rpb24gZmlu
ZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21v
ZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAg
ICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsK
ICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9y
ZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0
KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewog
ICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAg
ICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAg
ICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1
bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQog
ICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAg
ICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0
ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUg
PSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkK
ICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1
bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgbW9kPWlwdzIyMDAKKyB1c2VfbW9kX3Zlcj0xCisg
J1snIC1uICcwLjAJMC4yMCcgJ10nCisgJ1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVyCisrIG1v
ZGluZm8gaXB3MjIwMAorKyBzZWQgLWUgJ3MvXnZlcnNpb246WyBcdF1cK1teMC05XSpcKC4qXCkk
L1wxLzt0O2QnCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1vZHZlcj02NjA1MAorIHZlY2hvIDMgJ01vZHVsZSB2ZXJzaW9uIGZv
ciBpcHcyMjAwIGlzIDY2MDUwJworIGxvY2FsIHYKKyB2PTMKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDMgLWxlIDQgJ10nCisgZWNobyBNb2R1bGUgdmVyc2lvbiBmb3IgaXB3MjIwMCBp
cyA2NjA1MAorICdbJyAtbiA2NjA1MCAnXScKKyBJc0luVmVyc2lvblJhbmdlIDY2MDUwIDAuMCAw
LjIwCisgbG9jYWwga3ZlcgorIGt2ZXI9NjYwNTAKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBs
b2NhbCBtYXhfdmVyCisgJ1snIC1uICcwLjAgMC4yMCcgJ10nCisrIGVjaG8gMC4wCk1vZHVsZSB2
ZXJzaW9uIGZvciBpcHcyMjAwIGlzIDY2MDUwCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MAorKyBlY2hvIDAuMjAK
KysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSsk
M30nCisgbWF4X3Zlcj01MTIwCisgc2hpZnQgMgorICdbJyA2NjA1MCAtZ2UgMCAnXScKKyAnWycg
NjYwNTAgLWxlIDUxMjAgJ10nCisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUK
KyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFk
IG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYu
MAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAy
LjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1p
bl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hv
IDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMiow
eDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57
RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9
MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMx
IC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBz
IG5hdHNlbWkKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9z
eXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPW5hdHNlbWkgJwpmdW5jdGlvbiBm
aW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNb
bW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAg
ICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkg
ewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5k
X3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3Nv
cnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7
CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAg
ICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAg
ICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1v
ZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0p
CiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAg
ICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAo
JDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVs
ZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9y
ZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJh
eQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21v
ZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBt
b2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycg
MCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi4xOScgJ10nCisg
J1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi4xOQorIGxv
Y2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1h
eF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi4xOScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdC
RUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWlu
X3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuMTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJp
bnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI2MjcKKyBzaGlmdCAy
CisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjYyNyAnXScK
KyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2Qg
dmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAt
bmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNC4wCTIuNC45OQkyLjYuMAkyLjYu
OTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAy
LjQuOTkgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBs
b2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi40LjAgMi40Ljk5IDIuNi4w
IDIuNi45OScgJ10nCisrIGVjaG8gMi40LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJp
bnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzIwOTYKKysgZWNobyAy
LjQuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4
MTAwKSskM30nCisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMy
MDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAnXScKKyAnWycgLW4gJzIuNi4wIDIuNi45
OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEq
MHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkK
KysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSsk
M30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICdd
JworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysg
RmluZE1vZHVsZURlcHMgcnQyNDAwCisrIGF3ayAtdiBtb2R1bGU9cnQyNDAwICcKZnVuY3Rpb24g
ZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBz
W21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAg
ICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0p
IHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmlu
ZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9z
b3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkg
ewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAg
ICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAg
ICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBt
b2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pd
KQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAg
ICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYg
KCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1
bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRf
cmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJy
YXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIEdldDI2TW9kdWxl
c0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysg
Y2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRy
dWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9k
IHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIu
Ni4xNCcgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4w
IDIuNi4xNAorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3Zl
cgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi4xNCcgJ10nCisrIGVjaG8gMi42
LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAw
KSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuMTQKKysgYXdrICdCRUdJTntGUz0i
W14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI2
MjIKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxl
IDEzMjYyMiAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUK
KyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZl
cnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi4x
NCcgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIu
Ni4xNAorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3Zlcgor
IGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi4xNCcgJ10nCisrIGF3ayAnQkVHSU57
RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBlY2hvIDIu
Ni4wCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuMTQKKysgYXdrICdCRUdJTntGUz0iW14w
LTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI2MjIK
KyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEz
MjYyMiAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBs
b2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMK
KyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi4xNCcg
J10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi4x
NAorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxv
Y2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi4xNCcgJ10nCisrIGVjaG8gMi42LjAKKysg
YXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30n
CisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuMTQKKysgYXdrICdCRUdJTntGUz0iW14wLTld
In17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI2MjIKKyBz
aGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjYy
MiAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2Nh
bCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAn
WycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNC4wCTIuNC45OScgJ10n
CisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNC4wIDIuNC45OQor
IGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2Fs
IG1heF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OScgJ10nCisrIGVjaG8gMi40LjAKKysgYXdr
ICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisg
bWluX3Zlcj0xMzIwOTYKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAw
MCkrKCQyKjB4MTAwKSskM30nCisrIGVjaG8gMi40Ljk5CisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlm
dCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyMDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAn
XScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBt
b2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycg
MCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNC4wCTIuNC45OScgJ10nCisg
J1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNC4wIDIuNC45OQorIGxv
Y2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1h
eF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OScgJ10nCisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBlY2hvIDIuNC4wCisgbWlu
X3Zlcj0xMzIwOTYKKysgZWNobyAyLjQuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJp
bnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlmdCAy
CisgJ1snIDEzMjYzMSAtZ2UgMTMyMDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAnXScK
KyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2Qg
dmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAt
bmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNC4wCTIuNC45OScgJ10nCisgJ1sn
IC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNC4wIDIuNC45OQorIGxvY2Fs
IGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92
ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OScgJ10nCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9
e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBlY2hvIDIuNC4wCisgbWluX3Zl
cj0xMzIwOTYKKysgZWNobyAyLjQuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQo
JDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlmdCAyCisg
J1snIDEzMjYzMSAtZ2UgMTMyMDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAnXScKKyAn
WycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVy
cyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUg
MCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16
ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45OQorIGxvY2FsIGt2
ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIK
KyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntG
Uz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0x
MzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEq
MHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1sn
IDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1
cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc25kX2VuczEzNzAKKysgYXdrIC12
IG1vZHVsZT1zbmRfZW5zMTM3MCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwg
aSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0s
IGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRp
bnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtp
XV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAg
ICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBj
aGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAg
ICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIp
IHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVz
W2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAg
ICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIo
IiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewog
ICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQK
ICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhh
dmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMg
cHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxl
cykKICAgIH0KfQogICAgJworKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4n
IC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0K
KyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisg
Y2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScK
KyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zl
cj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1u
ICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4Cisr
IGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDAp
KygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEg
LWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBs
b2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNuZF9lbnMxMzcxCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdr
IC12IG1vZHVsZT1zbmRfZW5zMTM3MSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1v
ZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21v
ZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNv
bnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNb
YVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0p
CiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAg
ICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAog
ICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0g
IiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1
bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAg
ICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBz
dWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4g
ewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0g
JDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYg
KGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUp
ICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9k
dWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16
ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZl
cnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMx
Cisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAg
Mi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmlu
dCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIu
Ni45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgx
MDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2
MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVw
cworKyBGaW5kTW9kdWxlRGVwcyBzbmRfbWFlc3RybzMKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBn
cmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9k
dWxlPXNuZF9tYWVzdHJvMyAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwg
YSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEs
ICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVl
CiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0g
PSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAg
ICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFu
Z2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAg
IGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsK
ICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ld
CiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAg
IHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwi
aSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
Y2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAg
aGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAg
IGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVf
bW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0
cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykK
ICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICdd
JworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
IG1vZD1zbmRfYnRfc2NvCisgdXNlX21vZF92ZXI9MQorICdbJyAtbiAnMC4wCTEuMTgnICddJwor
ICdbJyAteiAxICddJworIGxvY2FsIG1vZHZlcgorKyBzZWQgLWUgJ3MvXnZlcnNpb246WyBcdF1c
K1teMC05XSpcKC4qXCkkL1wxLzt0O2QnCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50
KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBtb2RpbmZvIHNuZF9idF9zY28KKyBtb2R2
ZXI9CisgdmVjaG8gMyAnTW9kdWxlIHZlcnNpb24gZm9yIHNuZF9idF9zY28gaXMgJworIGxvY2Fs
IHYKKyB2PTMKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDMgLWxlIDQgJ10nCisgZWNo
byBNb2R1bGUgdmVyc2lvbiBmb3Igc25kX2J0X3NjbyBpcworICdbJyAtbiAnJyAnXScKKyBsb2Nh
bCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNuZF9idF9zY28KKysgR2V0MjZNb2R1bGVzRmlsZQor
KyBhd2sgLXYgbW9kdWxlPXNuZF9idF9zY28gJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVw
c1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIi
KSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1
bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhh
W2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikg
ewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9
IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ld
ID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUg
bW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAg
ICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAg
ICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJF
R0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQx
XSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAg
IGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9k
dWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0
KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKTW9kdWxlIHZlcnNpb24gZm9yIHNuZF9idF9zY28gaXMK
KysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9w
cm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBs
b2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMK
KyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScg
J10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45
OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxv
Y2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysg
YXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30n
CisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTld
In17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBz
aGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcw
NyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgZW4xMzcwCisr
IEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9v
c3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1lbjEzNzAgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3Bs
aXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ld
ID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAg
ICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywg
aSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hh
bmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1
bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBk
ZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAg
ICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9
Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBk
ZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5E
IHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVs
ZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRv
cF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBz
PQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2Vf
bW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScK
KyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16ICcnICdd
JworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBr
dmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycg
LW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14w
LTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgK
KysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAw
MCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYz
MSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAor
IGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgZW4xMzcxCisrIEdldDI2TW9kdWxlc0ZpbGUK
KysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12
IG1vZHVsZT1lbjEzNzEgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEp
IHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAi
LCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQog
ICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0g
ZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAg
IH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdl
ZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBm
b3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAg
ICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQog
ICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBz
dWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImki
LCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNo
YW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhh
dmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBp
ZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21v
ZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMg
cmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAg
ICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScK
KyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2Rf
dmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAn
WycgLW4gJzIuNi4wCTIuNi44JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5n
ZSAxMzI2MzEgMi42LjAgMi42LjgKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAor
IGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuOCcgJ10n
CisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAw
MCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOAorKyBhd2sg
J0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBt
YXhfdmVyPTEzMjYxNgorIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1sn
IDEzMjYzMSAtbGUgMTMyNjE2ICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAn
Mi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2
MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2Nh
bCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysg
ZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSso
JDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JF
R0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhf
dmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEz
MjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxl
RGVwcyB2aWFfcmhpbmUKKysgYXdrIC12IG1vZHVsZT12aWFfcmhpbmUgJwpmdW5jdGlvbiBmaW5k
X3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9k
XQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAg
IGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewog
ICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3Jl
bGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQo
bW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAg
ICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAg
IGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAg
ICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVs
ZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAg
ICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAg
ICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQg
IT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9
IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxh
dGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQog
ICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgR2V0MjZNb2R1bGVzRmls
ZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBjYXQg
L3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjEwCTIuNi45
OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4xMCAy
LjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIK
KyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMTAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYu
MTAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAw
KSskM30nCisgbWluX3Zlcj0xMzI2MTgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0i
W14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3
MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjE4ICddJworICdbJyAxMzI2MzEgLWxl
IDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaTgw
NDIKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2Vy
bmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWk4MDQyICcKZnVuY3Rpb24gZmluZF9yZWxh
dGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAg
IHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAo
YVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAg
ICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVk
X21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVs
ZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAg
IGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAo
bW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAg
ICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7
CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAg
ICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQog
ICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICIt
IikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0K
CkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAg
ICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisg
ZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMg
dXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAg
J10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAteiAn
JyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVy
Cisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisg
J1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9
IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMy
NjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4
MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAx
MzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJu
IDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGludGVsX21jaF9hZ3AKKysgR2V0MjZN
b2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFz
ZQorKyBhd2sgLXYgbW9kdWxlPWludGVsX21jaF9hZ3AgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3Bs
aXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ld
ID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAg
ICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywg
aSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hh
bmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1
bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBk
ZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAg
ICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9
Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBk
ZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5E
IHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVs
ZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRv
cF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBz
PQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2Vf
bW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScK
KyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi4xNCcgJ10nCisgJ1snIC16ICcnICdd
JworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi4xNAorIGxvY2FsIGt2ZXIKKyBr
dmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycg
LW4gJzIuNi4wIDIuNi4xNCcgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14w
LTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgK
KysgZWNobyAyLjYuMTQKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAw
MCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI2MjIKKyBzaGlmdCAyCisgJ1snIDEzMjYz
MSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjYyMiAnXScKKyAnWycgLW4gJycg
J10nCisgcmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9k
X3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBj
YXNlICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zl
cgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNl
ICRtb2QgaW4KKyAnWycgLW4gJzIuNi45CTIuNi4yMicgJ10nCisgJ1snIC16ICcnICddJworIElz
SW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi45IDIuNi4yMgorIGxvY2FsIGt2ZXIKKyBrdmVyPTEz
MjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIu
Ni45IDIuNi4yMicgJ10nCisrIGVjaG8gMi42LjkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17
cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MTcKKysgZWNo
byAyLjYuMjIKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQy
KjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI2MzAKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2Ug
MTMyNjE3ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjYzMCAnXScKKyAnWycgLW4gJycgJ10nCisg
cmV0dXJuIDEKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zlcgor
IHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRt
b2QgaW4KKyAnWycgLW4gJzIuNi4xMgkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0lu
VmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMTIgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMy
NjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42
LjEyIDIuNi45OScgJ10nCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAw
MDApKygkMioweDEwMCkrJDN9JworKyBlY2hvIDIuNi4xMgorIG1pbl92ZXI9MTMyNjIwCisrIGVj
aG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdl
IDEzMjYyMCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2Nh
bCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNwZWVkc3RlcF9zbWkKKysgYXdrIC12IG1vZHVsZT1z
cGVlZHN0ZXBfc21pICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7
CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwi
KQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAg
ICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRl
cHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9
CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQg
PSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9y
KGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAg
ICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAg
ICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3Vi
KCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwi
LCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFu
Z2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZl
X21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYg
KCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1
bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJl
c3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAg
fQp9CiAgICAnCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mv
c3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAt
eiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zlcgor
IHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRt
b2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVz
ZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2Qg
aW4KKyBtb2Q9bmRpc3dyYXBwZXIKKyB1c2VfbW9kX3Zlcj0xCisgJ1snIC1uICcwLjEwICAgIDAu
MTEnICddJworICdbJyAteiAxICddJworIGxvY2FsIG1vZHZlcgorKyBtb2RpbmZvIG5kaXN3cmFw
cGVyCisrIHNlZCAtZSAncy9edmVyc2lvbjpbIFx0XVwrW14wLTldKlwoLipcKSQvXDEvO3Q7ZCcK
KysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSsk
M30nCisgbW9kdmVyPQorIHZlY2hvIDMgJ01vZHVsZSB2ZXJzaW9uIGZvciBuZGlzd3JhcHBlciBp
cyAnCisgbG9jYWwgdgorIHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUg
NCAnXScKKyBlY2hvIE1vZHVsZSB2ZXJzaW9uIGZvciBuZGlzd3JhcHBlciBpcworICdbJyAtbiAn
JyAnXScKKyBsb2NhbCBkZXBzCk1vZHVsZSB2ZXJzaW9uIGZvciBuZGlzd3JhcHBlciBpcworKyBG
aW5kTW9kdWxlRGVwcyBuZGlzd3JhcHBlcgorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEg
J14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9bmRp
c3dyYXBwZXIgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAg
IG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAg
ICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAg
IGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1th
W2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAg
IH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEK
ICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBp
biBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAg
ICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAg
ICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4i
aSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIs
IiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQg
PSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9k
dWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEg
PT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9
PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0
cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0K
ICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250
aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQor
IHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyBjb250aW51
ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJl
YWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyBjb250aW51ZQor
IHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQg
bW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10n
CisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBhdGhfcGNpCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdr
IC12IG1vZHVsZT1hdGhfcGNpICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBp
LCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwg
YSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGlu
dWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ld
XSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAg
ICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNo
YW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAg
ICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikg
ewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNb
aV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAg
ICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1Yigi
LCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg
ICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAg
ICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAog
ICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2
ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBw
dXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVz
KQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycg
J10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2Vf
bW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGlu
CisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9k
X3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisg
Y29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zl
cj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1sn
IC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaXB3Mzk0NQorKyBHZXQy
Nk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxl
YXNlCisrIGF3ayAtdiBtb2R1bGU9aXB3Mzk0NSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChk
ZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0g
IiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1v
ZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVz
KGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBq
KSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2Vk
ID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNb
aV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0
ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAg
ICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAg
ICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoK
QkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNb
JDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewog
ICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyht
b2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3Nv
cnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9Cisg
J1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGl3bDM5
NDUKKysgYXdrIC12IG1vZHVsZT1pd2wzOTQ1ICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVs
ZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRl
cHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAi
IikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9k
dWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMo
YVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGop
IHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQg
PSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tp
XSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRl
IG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAg
ICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAg
ICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpC
RUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1sk
MV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAg
ICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1v
ZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29y
dChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAn
XjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9wcm9jL21vZHVsZXMK
KyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVy
cyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUg
MCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5k
TW9kdWxlRGVwcyBtYWM4MDIxMQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40
XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9bWFjODAyMTEg
JwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNb
bW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkg
aW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9k
dWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAg
ICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVu
Y3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxl
IChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVz
KSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBw
cmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAg
Zm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIs
IG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxl
c1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAg
ICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9
Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxl
KSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAg
ICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJt
b2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysg
Y2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRy
dWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9k
IHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisg
bG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBza3kyCisrIGF3ayAtdiBtb2R1bGU9c2t5MiAn
CmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1tt
b2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBp
biBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1
bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAg
ICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5j
dGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUg
KGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMp
IHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHBy
aW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBm
b3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwg
bW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVz
W2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAg
ICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0K
CnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUp
IGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAg
ICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1v
ZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBH
ZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3Ny
ZWxlYXNlCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29u
dGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0K
KyByZWFkIG1vZCB2ZXJzCisgJ1snIDEgLW5lIDAgJ10nCisgJ1snIC16ICcnICddJworIGJyZWFr
CisgJ1snIC16ICcnICddJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAn
WycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5k
Qml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3Ry
KCI5NEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTk0CisgJ1sn
IC1uIDk0ICddJworIENIQUlOX1VQX1RPPTk0CisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNo
byAxICdoaWJlcm5hdGU6IFs5NF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBs
b2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJwor
IGVjaG8gaGliZXJuYXRlOiAnWzk0XScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisg
J1snIC1uICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQ
TEFTSF9QUk9HUkVTUz02NTUzMAorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDY1NTMwXG5y
ZXBhaW50XG4nCmhpYmVybmF0ZTogWzk0XSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4K
KyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisg
J1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5l
d19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOTVYSGFja3NTdXNwZW5k
SG9vazIiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTk1CisgJ1snIC1uIDk1ICddJworIENI
QUlOX1VQX1RPPTk1CisgYml0PVhIYWNrc1N1c3BlbmRIb29rMgorIHZlY2hvIDEgJ2hpYmVybmF0
ZTogWzk1XSBFeGVjdXRpbmcgWEhhY2tzU3VzcGVuZEhvb2syIC4uLiAnCisgbG9jYWwgdgorIHY9
MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVy
bmF0ZTogJ1s5NV0nIEV4ZWN1dGluZyBYSGFja3NTdXNwZW5kSG9vazIgLi4uCisgJ1snIC1uICcn
ICddJworIFhIYWNrc1N1c3BlbmRIb29rMgorICdbJyAteiAxICddJworIHJldHVybiAwCisgcmV0
PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisg
Zm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCmhp
YmVybmF0ZTogWzk1XSBFeGVjdXRpbmcgWEhhY2tzU3VzcGVuZEhvb2syIC4uLgorKyBhd2sgJ0JF
R0lOe3ByaW50IHN1YnN0cigiOThDaGVja1J1bmxldmVsIiwgMSwgMil9JworIG5ld19DSEFJTl9V
UF9UTz05OAorICdbJyAtbiA5OCAnXScKKyBDSEFJTl9VUF9UTz05OAorIGJpdD1DaGVja1J1bmxl
dmVsCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbOThdIEV4ZWN1dGluZyBDaGVja1J1bmxldmVsIC4u
LiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUg
NCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5OF0nIEV4ZWN1dGluZyBDaGVja1J1bmxldmVsIC4u
LgorICdbJyAtbiAnJyAnXScKKyBDaGVja1J1bmxldmVsCisgJ1snIC16IDMgJ10nCisgY2FzZSAi
JHtSVU5MRVZFTH0iIGluCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdb
JyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRC
aXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIo
Ijk5RG9TeXNmc1Bvd2VyU3RhdGVTdXNwZW5kIiwgMSwgMil9JwpoaWJlcm5hdGU6IFs5OF0gRXhl
Y3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uCisgbmV3X0NIQUlOX1VQX1RPPTk5CisgJ1snIC1uIDk5
ICddJworIENIQUlOX1VQX1RPPTk5CisgYml0PURvU3lzZnNQb3dlclN0YXRlU3VzcGVuZAorIHZl
Y2hvIDEgJ2hpYmVybmF0ZTogWzk5XSBFeGVjdXRpbmcgRG9TeXNmc1Bvd2VyU3RhdGVTdXNwZW5k
IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAt
bGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5OV0nIEV4ZWN1dGluZyBEb1N5c2ZzUG93ZXJT
dGF0ZVN1c3BlbmQgLi4uCisgJ1snIC1uICcnICddJworIERvU3lzZnNQb3dlclN0YXRlU3VzcGVu
ZAorICdbJyAteiAnJyAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IEFjdGl2YXRpbmcgc3lzZnMg
cG93ZXIgc3RhdGUgZGlzayAuLi4nCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4
MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogQWN0aXZhdGluZyBzeXNm
cyBwb3dlciBzdGF0ZSBkaXNrIC4uLgorICdbJyAtbiAnJyAnXScKKyAvYmluL2VjaG8gLW4gZGlz
awovYmluL2VjaG86IHdyaXRlIGVycm9yOiBEZXZpY2Ugb3IgcmVzb3VyY2UgYnVzeQpoaWJlcm5h
dGU6IFs5OV0gRXhlY3V0aW5nIERvU3lzZnNQb3dlclN0YXRlU3VzcGVuZCAuLi4KaGliZXJuYXRl
OiBBY3RpdmF0aW5nIHN5c2ZzIHBvd2VyIHN0YXRlIGRpc2sgLi4uCisgcmV0dXJuIDAKKyByZXQ9
MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKysg
U29ydFJlc3VtZUJpdHMKKysgc29ydCAtcm4KKysgL2Jpbi9lY2hvIC1uZSAnNzBDbG9ja1Jlc3Rv
cmVcbjE5TG9naW5QaWRnaW5cbjMwU2VydmljZXNTdGFydFxuOTBNb2R1bGVzTG9hZFxuODVYSGFj
a3NSZXN1bWVIb29rMlxuMTFYSGFja3NSZXN1bWVIb29rMVxuMTJGQlNwbGFzaE9mZlxuMTVGQlNw
bGFzaFByb2dyZXNzXG4yMEZCU3BsYXNoUHJvZ3Jlc3NcbjMwRkJTcGxhc2hQcm9ncmVzc1xuNDBG
QlNwbGFzaFByb2dyZXNzXG41MEZCU3BsYXNoUHJvZ3Jlc3NcbjYwRkJTcGxhc2hQcm9ncmVzc1xu
NzBGQlNwbGFzaFByb2dyZXNzXG44MEZCU3BsYXNoUHJvZ3Jlc3NcbjkwRkJTcGxhc2hQcm9ncmVz
c1xuOTVGQlNwbGFzaFN0YXJ0UmVzdW1lXG43MENsb2NrUmVzdG9yZVxuNTlSZW1vdW50WEZTQm9v
dFJXXG44OVJlc3RvcmVLZXJuZWxNb2Rwcm9iZVxuMDFOb3RlTGFzdFJlc3VtZVxuMDFMb2NrRmls
ZVB1dFxuJworIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJp
bnQgc3Vic3RyKCI5NUZCU3BsYXNoU3RhcnRSZXN1bWUiLCAxLCAyKX0nCisgVEhJU19QT1M9OTUK
KyAnWycgLXogOTUgJ10nCisgYml0PUZCU3BsYXNoU3RhcnRSZXN1bWUKKyAnWycgOTUgLWd0IDk5
ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzk1XSBFeGVjdXRpbmcgRkJTcGxhc2hTdGFydFJl
c3VtZSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1sn
IDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTVdJyBFeGVjdXRpbmcgRkJTcGxhc2hT
dGFydFJlc3VtZSAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hTdGFydFJlc3VtZQorIFRp
bWVkRkJTcGxhc2hDdGwgJ3NldCB0dHkgc2lsZW50IDJcbnNldCBtb2RlIHNpbGVudFxuc2V0IHRo
ZW1lIHN1c3BlbmQyXG5yZXBhaW50XG4nCmhpYmVybmF0ZTogWzk1XSBFeGVjdXRpbmcgRkJTcGxh
c2hTdGFydFJlc3VtZSAuLi4KKyBUaW1lZEZCU3BsYXNoQ3RsICdzZXQgbWVzc2FnZSBSZWxvYWRp
bmcgZHJpdmVycyBhbmQgYXBwbGljYXRpb25zIC4uLlxucmVwYWludFxuJworIEZCU1BMQVNIX1BS
T0dSRVNTPTAKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hf
UFJPR1JFU1M9NjU1MworIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDY1NTNcbnJlcGFpbnRc
bicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVH
SU57cHJpbnQgc3Vic3RyKCI5ME1vZHVsZXNMb2FkIiwgMSwgMil9JworIFRISVNfUE9TPTkwCisg
J1snIC16IDkwICddJworIGJpdD1Nb2R1bGVzTG9hZAorICdbJyA5MCAtZ3QgOTkgJ10nCisgdmVj
aG8gMSAnaGliZXJuYXRlOiBbOTBdIEV4ZWN1dGluZyBNb2R1bGVzTG9hZCAuLi4gJworIGxvY2Fs
IHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNo
byBoaWJlcm5hdGU6ICdbOTBdJyBFeGVjdXRpbmcgTW9kdWxlc0xvYWQgLi4uCisgJ1snIC1uICcn
ICddJworIE1vZHVsZXNMb2FkCisgJ1snIC16ICcgYXV0byBhdXRvJyAnXScKKyBDaGVja01vZHVs
ZVN1cHBvcnQKKyAnWycgLWYgL3Byb2MvbW9kdWxlcyAnXScKKyByZXR1cm4gMAorIFJlc3RvcmVL
ZXJuZWxNb2Rwcm9iZQorICdbJyAtbiAvc2Jpbi9tb2Rwcm9iZSAnXScKKyBlY2hvIC9zYmluL21v
ZHByb2JlCisgdW5zZXQgS0VSTkVMX01PRFBST0JFCisgJ1snIC1uICcnICddJworIHJldHVybiAw
CisgbG9jYWwgbW9kCisgZm9yIG1vZCBpbiAnJE1PRF9MT0FEJworICdbJyBhdXRvID0gYXV0byAn
XScKKyBjb250aW51ZQorIGZvciBtb2QgaW4gJyRNT0RfTE9BRCcKKyAnWycgYXV0byA9IGF1dG8g
J10nCisgY29udGludWUKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI5MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0n
CmhpYmVybmF0ZTogWzkwXSBFeGVjdXRpbmcgTW9kdWxlc0xvYWQgLi4uCisgVEhJU19QT1M9OTAK
KyAnWycgLXogOTAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgOTAgLWd0IDk5ICdd
JworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzkwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAu
Li4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxl
IDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVz
cyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICdd
JworIEZCU1BMQVNIX1BST0dSRVNTPTEzMTA2CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3Mg
MTMxMDZcbnJlcGFpbnRcbicKaGliZXJuYXRlOiBbOTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dy
ZXNzIC4uLgorIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdr
ICdCRUdJTntwcmludCBzdWJzdHIoIjg5UmVzdG9yZUtlcm5lbE1vZHByb2JlIiwgMSwgMil9Jwor
IFRISVNfUE9TPTg5CisgJ1snIC16IDg5ICddJworIGJpdD1SZXN0b3JlS2VybmVsTW9kcHJvYmUK
KyAnWycgODkgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzg5XSBFeGVjdXRpbmcg
UmVzdG9yZUtlcm5lbE1vZHByb2JlIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s4OV0nIEV4
ZWN1dGluZyBSZXN0b3JlS2VybmVsTW9kcHJvYmUgLi4uCisgJ1snIC1uICcnICddJworIFJlc3Rv
cmVLZXJuZWxNb2Rwcm9iZQorICdbJyAtbiAnJyAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJu
IDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJwpoaWJlcm5hdGU6IFs4OV0gRXhlY3V0
aW5nIFJlc3RvcmVLZXJuZWxNb2Rwcm9iZSAuLi4KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIo
Ijg1WEhhY2tzUmVzdW1lSG9vazIiLCAxLCAyKX0nCisgVEhJU19QT1M9ODUKKyAnWycgLXogODUg
J10nCisgYml0PVhIYWNrc1Jlc3VtZUhvb2syCisgJ1snIDg1IC1ndCA5OSAnXScKKyB2ZWNobyAx
ICdoaWJlcm5hdGU6IFs4NV0gRXhlY3V0aW5nIFhIYWNrc1Jlc3VtZUhvb2syIC4uLiAnCisgbG9j
YWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBl
Y2hvIGhpYmVybmF0ZTogJ1s4NV0nIEV4ZWN1dGluZyBYSGFja3NSZXN1bWVIb29rMiAuLi4KKyAn
WycgLW4gJycgJ10nCisgWEhhY2tzUmVzdW1lSG9vazIKKyAnWycgLXogMSAnXScKKyByZXR1cm4g
MAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vi
c3RyKCI4MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCmhpYmVybmF0ZTogWzg1XSBFeGVjdXRp
bmcgWEhhY2tzUmVzdW1lSG9vazIgLi4uCisgVEhJU19QT1M9ODAKKyAnWycgLXogODAgJ10nCisg
Yml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgODAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVy
bmF0ZTogWzgwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2
PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJl
cm5hdGU6ICdbODBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycg
J10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dS
RVNTPTE5NjU5CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMTk2NTlcbnJlcGFpbnRcbicK
aGliZXJuYXRlOiBbODBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorIHJldHVybiAw
CisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJz
dHIoIjcwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBUSElTX1BPUz03MAorICdbJyAteiA3
MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyA3MCAtZ3QgOTkgJ10nCisgdmVjaG8g
MSAnaGliZXJuYXRlOiBbNzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9j
YWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBl
Y2hvIGhpYmVybmF0ZTogJ1s3MF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdb
JyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExB
U0hfUFJPR1JFU1M9MjYyMTIKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyAyNjIxMlxucmVw
YWludFxuJworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdr
ICdCRUdJTntwcmludCBzdWJzdHIoIjcwQ2xvY2tSZXN0b3JlIiwgMSwgMil9JwpoaWJlcm5hdGU6
IFs3MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgVEhJU19QT1M9NzAKKyAnWycg
LXogNzAgJ10nCisgYml0PUNsb2NrUmVzdG9yZQorICdbJyA3MCAtZ3QgOTkgJ10nCisgdmVjaG8g
MSAnaGliZXJuYXRlOiBbNzBdIEV4ZWN1dGluZyBDbG9ja1Jlc3RvcmUgLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzcwXScgRXhlY3V0aW5nIENsb2NrUmVzdG9yZSAuLi4KKyAnWycgLW4gJycg
J10nCisgQ2xvY2tSZXN0b3JlCisgY2FzZSAiJERJU1RSSUJVVElPTiIgaW4KKyAvc2Jpbi9od2Ns
b2NrIC0taGN0b3N5cwpoaWJlcm5hdGU6IFs3MF0gRXhlY3V0aW5nIENsb2NrUmVzdG9yZSAuLi4K
KyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0
cigiNzBDbG9ja1Jlc3RvcmUiLCAxLCAyKX0nCisgVEhJU19QT1M9NzAKKyAnWycgLXogNzAgJ10n
CisgYml0PUNsb2NrUmVzdG9yZQorICdbJyA3MCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJu
YXRlOiBbNzBdIEV4ZWN1dGluZyBDbG9ja1Jlc3RvcmUgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisg
c2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRl
OiAnWzcwXScgRXhlY3V0aW5nIENsb2NrUmVzdG9yZSAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2xv
Y2tSZXN0b3JlCisgY2FzZSAiJERJU1RSSUJVVElPTiIgaW4KKyAvc2Jpbi9od2Nsb2NrIC0taGN0
b3N5cwpoaWJlcm5hdGU6IFs3MF0gRXhlY3V0aW5nIENsb2NrUmVzdG9yZSAuLi4KKyBmb3IgYml0
IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNjBGQlNw
bGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNfUE9TPTYwCisgJ1snIC16IDYwICddJworIGJp
dD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDYwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5h
dGU6IFs2MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0x
Cisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJu
YXRlOiAnWzYwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICdd
JworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVT
Uz0zMjc2NQorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDMyNzY1XG5yZXBhaW50XG4nCmhp
YmVybmF0ZTogWzYwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyByZXR1cm4gMAor
IGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3Ry
KCI1OVJlbW91bnRYRlNCb290UlciLCAxLCAyKX0nCisgVEhJU19QT1M9NTkKKyAnWycgLXogNTkg
J10nCisgYml0PVJlbW91bnRYRlNCb290UlcKKyAnWycgNTkgLWd0IDk5ICddJworIHZlY2hvIDEg
J2hpYmVybmF0ZTogWzU5XSBFeGVjdXRpbmcgUmVtb3VudFhGU0Jvb3RSVyAuLi4gJworIGxvY2Fs
IHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNo
byBoaWJlcm5hdGU6ICdbNTldJyBFeGVjdXRpbmcgUmVtb3VudFhGU0Jvb3RSVyAuLi4KaGliZXJu
YXRlOiBbNTldIEV4ZWN1dGluZyBSZW1vdW50WEZTQm9vdFJXIC4uLgorICdbJyAtbiAnJyAnXScK
KyBSZW1vdW50WEZTQm9vdFJXCisgJ1snICcnID0gMSAnXScKKyBmb3IgYml0IGluICdgU29ydFJl
c3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNTBGQlNwbGFzaFByb2dyZXNz
IiwgMSwgMil9JworIFRISVNfUE9TPTUwCisgJ1snIC16IDUwICddJworIGJpdD1GQlNwbGFzaFBy
b2dyZXNzCisgJ1snIDUwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs1MF0gRXhl
Y3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAn
WycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzUwXScg
RXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzUwXSBFeGVjdXRpbmcg
RkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcwor
ICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTM5MzE4CisgVGltZWRGQlNwbGFz
aEN0bCAncHJvZ3Jlc3MgMzkzMThcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4g
J2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI0MEZCU3BsYXNo
UHJvZ3Jlc3MiLCAxLCAyKX0nCisgVEhJU19QT1M9NDAKKyAnWycgLXogNDAgJ10nCisgYml0PUZC
U3BsYXNoUHJvZ3Jlc3MKKyAnWycgNDAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTog
WzQwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBz
aGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6
ICdbNDBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbNDBdIEV4
ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFBy
b2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NDU4NzEKKyBUaW1l
ZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyA0NTg3MVxucmVwYWludFxuJworIHJldHVybiAwCisgZm9y
IGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjMw
U2VydmljZXNTdGFydCIsIDEsIDIpfScKKyBUSElTX1BPUz0zMAorICdbJyAteiAzMCAnXScKKyBi
aXQ9U2VydmljZXNTdGFydAorICdbJyAzMCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRl
OiBbMzBdIEV4ZWN1dGluZyBTZXJ2aWNlc1N0YXJ0IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNo
aWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTog
J1szMF0nIEV4ZWN1dGluZyBTZXJ2aWNlc1N0YXJ0IC4uLgpoaWJlcm5hdGU6IFszMF0gRXhlY3V0
aW5nIFNlcnZpY2VzU3RhcnQgLi4uCisgJ1snIC1uICcnICddJworIFNlcnZpY2VzU3RhcnQKKyAn
WycgLXogMSAnXScKKyBFeGVjdXRlU2VydmljZXMgc3RhcnQgbGFwdG9wX21vZGUKKyBsb2NhbCBh
Y3Rpb24KKyBsb2NhbCBzZXJ2aWNlcworIGxvY2FsIHNlcnZpY2UKKyBhY3Rpb249c3RhcnQKKyBz
aGlmdAorIHNlcnZpY2VzPWxhcHRvcF9tb2RlCisgcmV0PTAKKyBmb3Igc2VydmljZSBpbiAnJHNl
cnZpY2VzJworIEludm9rZVJDRCBsYXB0b3BfbW9kZSBzdGFydAorIGxvY2FsIHNlcnZpY2UgYWN0
aW9uIHRtcCBjbWQKKyBzZXJ2aWNlPWxhcHRvcF9tb2RlCisgYWN0aW9uPXN0YXJ0CisgJ1snIC14
IC9ldGMvaW5pdC5kL2xhcHRvcF9tb2RlICddJworIGNtZD0nL2V0Yy9pbml0LmQvbGFwdG9wX21v
ZGUgc3RhcnQnCisgJ1snIHN0YXJ0ID0gc3RhcnQgJ10nCisrIGVjaG8gJy9ldGMvaW5pdC5kLy4u
L3JjMy5kL0s/P2xhcHRvcF9tb2RlJworIHRtcD0nL2V0Yy9pbml0LmQvLi4vcmMzLmQvSz8/bGFw
dG9wX21vZGUnCisgJ1snIC14ICcvZXRjL2luaXQuZC8uLi9yYzMuZC9LPz9sYXB0b3BfbW9kZScg
J10nCisgdmVjaG8gMiAnRXhlY3V0aW5nIC9ldGMvaW5pdC5kL2xhcHRvcF9tb2RlIHN0YXJ0Jwor
IGxvY2FsIHYKKyB2PTIKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDIgLWxlIDQgJ10n
CisgZWNobyBFeGVjdXRpbmcgL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUgc3RhcnQKRXhlY3V0aW5n
IC9ldGMvaW5pdC5kL2xhcHRvcF9tb2RlIHN0YXJ0CisgL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUg
c3RhcnQKICogU3RhcnRpbmcgbGFwdG9wX21vZGUgLi4uIFsgb2sgXQorICdbJyAwIC1uZSAxMDAg
J10nCisgUkVTVEFSVEVEX1NFUlZJQ0VTPSdsYXB0b3BfbW9kZSBsYXB0b3BfbW9kZSAnCisgcmV0
dXJuIDAKKyBFeGVjdXRlU2VydmljZXMgc3RhcnQKKyBsb2NhbCBhY3Rpb24KKyBsb2NhbCBzZXJ2
aWNlcworIGxvY2FsIHNlcnZpY2UKKyBhY3Rpb249c3RhcnQKKyBzaGlmdAorIHNlcnZpY2VzPQor
IHJldD0wCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sg
J0JFR0lOe3ByaW50IHN1YnN0cigiMzBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNf
UE9TPTMwCisgJ1snIC16IDMwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDMwIC1n
dCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJv
Z3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdb
JyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzMwXScgRXhlY3V0aW5nIEZCU3BsYXNo
UHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzMwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAu
Li4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJwor
IEZCU1BMQVNIX1BST0dSRVNTPTUyNDI0CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNTI0
MjRcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIyMEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0n
CisgVEhJU19QT1M9MjAKKyAnWycgLXogMjAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAn
WycgMjAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzIwXSBFeGVjdXRpbmcgRkJT
cGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMjBdJyBFeGVjdXRpbmcg
RkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbMjBdIEV4ZWN1dGluZyBGQlNwbGFzaFBy
b2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0g
eDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NTg5NzcKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9n
cmVzcyA1ODk3N1xucmVwYWludFxuJworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1
bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjE5TG9naW5QaWRnaW4iLCAxLCAy
KX0nCisgVEhJU19QT1M9MTkKKyAnWycgLXogMTkgJ10nCisgYml0PUxvZ2luUGlkZ2luCisgJ1sn
IDE5IC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxOV0gRXhlY3V0aW5nIExvZ2lu
UGlkZ2luIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAn
WycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sxOV0nIEV4ZWN1dGluZyBMb2dpblBp
ZGdpbiAuLi4KaGliZXJuYXRlOiBbMTldIEV4ZWN1dGluZyBMb2dpblBpZGdpbiAuLi4KKyAnWycg
LW4gJycgJ10nCisgTG9naW5QaWRnaW4KKyAnWycgeDEgJyE9JyB4MSAnXScKKyAnWycgeDEgJyE9
JyB4MSAnXScKKyAnWycgLXogL3Vzci9iaW4vcHVycGxlLXJlbW90ZSAnXScKKyAnWycgJyEnIC14
IC91c3IvYmluL3B1cnBsZS1yZW1vdGUgJ10nCisgbG9jYWwgaT0wCisgOgorIGxvY2FsIHVzZXIg
ZGJ1c19zZXNzaW9uX2J1c19hZGRyZXNzIHBpZGdpbl9zdGF0dXMgcHVycGxlX3JlbW90ZV9jbWQK
KysgZXZhbCAnZWNobyAkUElER0lOX0xPR0dFRF9PVVRfU0VTU0lPTlNfVVNFUl8wJworKysgZWNo
byBtcmZyZWUKKyB1c2VyPW1yZnJlZQorKyBldmFsICdlY2hvICRQSURHSU5fTE9HR0VEX09VVF9T
RVNTSU9OU19EQlVTXzAnCisrKyBlY2hvIHVuaXg6YWJzdHJhY3Q9L3RtcC9kYnVzLTJIZ2JQYTNr
VVYsZ3VpZD1mYzA3MjJkMzllM2I0NjBjMDMzNDBjMDA0NzI5YTJhMQorIGRidXNfc2Vzc2lvbl9i
dXNfYWRkcmVzcz11bml4OmFic3RyYWN0PS90bXAvZGJ1cy0ySGdiUGEza1VWLGd1aWQ9ZmMwNzIy
ZDM5ZTNiNDYwYzAzMzQwYzAwNDcyOWEyYTEKKysgZXZhbCAnZWNobyAkUElER0lOX0xPR0dFRF9P
VVRfU0VTU0lPTlNfU1RBVFVTXzAnCisrKyBlY2hvIGF2YWlsYWJsZQorIHBpZGdpbl9zdGF0dXM9
YXZhaWxhYmxlCisrIGV4cHIgMCArIDEKKyBpPTEKKyAnWycgLXogbXJmcmVlICddJworIHB1cnBs
ZV9yZW1vdGVfY21kPSdzZXRzdGF0dXM/c3RhdHVzPWF2YWlsYWJsZScKKyAnWycgLW4gJycgJ10n
CisgdmVjaG8gMiAnTG9nZ2luZyBiYWNrICh0byBzdGF0dXMgYXZhaWxhYmxlKSBtcmZyZWUnXCcn
cyBQaWRnaW4gdXNpbmcgRC1CdXMgc2Vzc2lvbiBidXMgYWRkcmVzcyB1bml4OmFic3RyYWN0PS90
bXAvZGJ1cy0ySGdiUGEza1VWLGd1aWQ9ZmMwNzIyZDM5ZTNiNDYwYzAzMzQwYzAwNDcyOWEyYTEn
CisgbG9jYWwgdgorIHY9MgorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMiAtbGUgNCAn
XScKKyBlY2hvIExvZ2dpbmcgYmFjayAnKHRvJyBzdGF0dXMgJ2F2YWlsYWJsZSknICdtcmZyZWUn
XCcncycgUGlkZ2luIHVzaW5nIEQtQnVzIHNlc3Npb24gYnVzIGFkZHJlc3MgdW5peDphYnN0cmFj
dD0vdG1wL2RidXMtMkhnYlBhM2tVVixndWlkPWZjMDcyMmQzOWUzYjQ2MGMwMzM0MGMwMDQ3Mjlh
MmExCkxvZ2dpbmcgYmFjayAodG8gc3RhdHVzIGF2YWlsYWJsZSkgbXJmcmVlJ3MgUGlkZ2luIHVz
aW5nIEQtQnVzIHNlc3Npb24gYnVzIGFkZHJlc3MgdW5peDphYnN0cmFjdD0vdG1wL2RidXMtMkhn
YlBhM2tVVixndWlkPWZjMDcyMmQzOWUzYjQ2MGMwMzM0MGMwMDQ3MjlhMmExCisgREJVU19TRVNT
SU9OX0JVU19BRERSRVNTPXVuaXg6YWJzdHJhY3Q9L3RtcC9kYnVzLTJIZ2JQYTNrVVYsZ3VpZD1m
YzA3MjJkMzllM2I0NjBjMDMzNDBjMDA0NzI5YTJhMQorIHN1IG1yZnJlZSAtYyAnL3Vzci9iaW4v
cHVycGxlLXJlbW90ZSAnXCcnc2V0c3RhdHVzP3N0YXR1cz1hdmFpbGFibGUnXCcnJworIDoKKyBs
b2NhbCB1c2VyIGRidXNfc2Vzc2lvbl9idXNfYWRkcmVzcyBwaWRnaW5fc3RhdHVzIHB1cnBsZV9y
ZW1vdGVfY21kCisrIGV2YWwgJ2VjaG8gJFBJREdJTl9MT0dHRURfT1VUX1NFU1NJT05TX1VTRVJf
MScKKysrIGVjaG8KKyB1c2VyPQorKyBldmFsICdlY2hvICRQSURHSU5fTE9HR0VEX09VVF9TRVNT
SU9OU19EQlVTXzEnCisrKyBlY2hvCisgZGJ1c19zZXNzaW9uX2J1c19hZGRyZXNzPQorKyBldmFs
ICdlY2hvICRQSURHSU5fTE9HR0VEX09VVF9TRVNTSU9OU19TVEFUVVNfMScKKysrIGVjaG8KKyBw
aWRnaW5fc3RhdHVzPQorKyBleHByIDEgKyAxCisgaT0yCisgJ1snIC16ICcnICddJworIGJyZWFr
CisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lO
e3ByaW50IHN1YnN0cigiMTVGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNfUE9TPTE1
CisgJ1snIC16IDE1ICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDE1IC1ndCA5OSAn
XScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxNV0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3Mg
Li4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1s
ZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzE1XScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jl
c3MgLi4uCmhpYmVybmF0ZTogWzE1XSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAn
WycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BM
QVNIX1BST0dSRVNTPTY1NTMwCisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNjU1MzBcbnJl
cGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3
ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxMkZCU3BsYXNoT2ZmIiwgMSwgMil9JworIFRISVNfUE9T
PTEyCisgJ1snIC16IDEyICddJworIGJpdD1GQlNwbGFzaE9mZgorICdbJyAxMiAtZ3QgOTkgJ10n
CisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTJdIEV4ZWN1dGluZyBGQlNwbGFzaE9mZiAuLi4gJwor
IGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10n
CisgZWNobyBoaWJlcm5hdGU6ICdbMTJdJyBFeGVjdXRpbmcgRkJTcGxhc2hPZmYgLi4uCmhpYmVy
bmF0ZTogWzEyXSBFeGVjdXRpbmcgRkJTcGxhc2hPZmYgLi4uCisgJ1snIC1uICcnICddJworIEZC
U3BsYXNoT2ZmCisgVGltZWRGQlNwbGFzaEN0bCAnc2V0IGVmZmVjdHMgZmFkZW91dFxuJworIFRp
bWVkRkJTcGxhc2hDdGwgJ2V4aXRcbicKKyBraWxsYWxsIC0wIGZic3BsYXNoZAorIHNsZWVwIDEK
KyBraWxsYWxsIC0wIGZic3BsYXNoZApmYnNwbGFzaGQ6IG5vIHByb2Nlc3Mga2lsbGVkCisgJ1sn
IC1uIDEgJ10nCisgZWNobyAxCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMTFYSGFja3NSZXN1bWVIb29rMSIsIDEs
IDIpfScKKyBUSElTX1BPUz0xMQorICdbJyAteiAxMSAnXScKKyBiaXQ9WEhhY2tzUmVzdW1lSG9v
azEKKyAnWycgMTEgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzExXSBFeGVjdXRp
bmcgWEhhY2tzUmVzdW1lSG9vazEgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycg
eCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzExXScgRXhl
Y3V0aW5nIFhIYWNrc1Jlc3VtZUhvb2sxIC4uLgpoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5nIFhI
YWNrc1Jlc3VtZUhvb2sxIC4uLgorICdbJyAtbiAnJyAnXScKKyBYSGFja3NSZXN1bWVIb29rMQor
ICdbJyAtbiAxICddJworIFhIYWNrc1Jlc3VtZQorICdbJyB4ID0geDEgJ10nCisgJ1snIC1uICcn
ICddJworICdbJyAtbiA3ICddJworIHZlY2hvIDMgJ3hoYWNrczogY2hhbmdpbmcgY29uc29sZSBi
YWNrIHRvIDcnCisgbG9jYWwgdgorIHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycg
MyAtbGUgNCAnXScKKyBlY2hvIHhoYWNrczogY2hhbmdpbmcgY29uc29sZSBiYWNrIHRvIDcKeGhh
Y2tzOiBjaGFuZ2luZyBjb25zb2xlIGJhY2sgdG8gNworIGNodnQgNworIHJldHVybiAwCisgZm9y
IGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjAx
Tm90ZUxhc3RSZXN1bWUiLCAxLCAyKX0nCisgVEhJU19QT1M9MDEKKyAnWycgLXogMDEgJ10nCisg
Yml0PU5vdGVMYXN0UmVzdW1lCisgJ1snIDAxIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5h
dGU6IFswMV0gRXhlY3V0aW5nIE5vdGVMYXN0UmVzdW1lIC4uLiAnCisgbG9jYWwgdgorIHY9MQor
IHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0
ZTogJ1swMV0nIEV4ZWN1dGluZyBOb3RlTGFzdFJlc3VtZSAuLi4KaGliZXJuYXRlOiBbMDFdIEV4
ZWN1dGluZyBOb3RlTGFzdFJlc3VtZSAuLi4KKyAnWycgLW4gJycgJ10nCisgTm90ZUxhc3RSZXN1
bWUKKyAnWycgLWYgL3Zhci9ydW4vaGliZXJuYXRlLWxhc3QtcmVzdW1lICddJworIGRhdGUgKyVz
CisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lO
e3ByaW50IHN1YnN0cigiMDFMb2NrRmlsZVB1dCIsIDEsIDIpfScKKyBUSElTX1BPUz0wMQorICdb
JyAteiAwMSAnXScKKyBiaXQ9TG9ja0ZpbGVQdXQKKyAnWycgMDEgLWd0IDk5ICddJworIHZlY2hv
IDEgJ2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTG9ja0ZpbGVQdXQgLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIExvY2tGaWxlUHV0IC4uLgpoaWJlcm5hdGU6IFsw
MV0gRXhlY3V0aW5nIExvY2tGaWxlUHV0IC4uLgorICdbJyAtbiAnJyAnXScKKyBMb2NrRmlsZVB1
dAorICdbJyAteiAxICddJworIGxvY2FsIGxvY2tmaWxlX3BpZAorIHJlYWQgbG9ja2ZpbGVfcGlk
CisgSXNBTnVtYmVyIDIwMzI0CisgY2FzZSAiJDEiIGluCisgcmV0dXJuIDAKKyAnWycgMjAzMjQg
LWVxIDIwMzI0ICddJworIHJtIC1mIC92YXIvcnVuL2hpYmVybmF0ZS1zY3JpcHQucGlkCisgcmV0
dXJuIDAKKyByZXR1cm4gMAorIGV2YWwgJ0VYSVRfQ09ERT0ke1BJUEVTVEFUVVNbMF19JworKyBF
WElUX0NPREU9MAorIFBsdWdpblRlcm1pbmF0aW9uCisgbG9jYWwgaQorIGZvciBpIGluICckVEVS
TUlOQVRJT05fSEFORExFUlMnCisgU3dzdXNwMlRlcm1pbmF0aW9uCisgcmV0dXJuIDAKKyByZXR1
cm4gMAorKyBkYXRlCisgZWNobyAnUmVzdW1lZCBhdCBUaHUnIE5vdiAxIDIwOjAzOjE3IENFVCAy
MDA3CisgdGVlIC1hIC1pIC92YXIvbG9nL2hpYmVybmF0ZS5sb2cKKyBleGl0IDAK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>135085</attachid>
            <date>2007-11-03 14:25 0000</date>
            <desc>debug-with -F/etc/hibernate/suspend2.conf</desc>
            <filename>debug-with</filename>
            <type>text/plain</type>
            <data encoding="base64">aGliZXJuYXRlOiBJbmNsdWRpbmcgY29uZmlndXJhdGlvbiBmcm9tIGNvbW1vbi5jb25mClVzaW5n
ICcvZXRjL2luaXQuZCcgYXMgaW5pdC5kIGRpcmVjdG9yeS4KKysgZGF0ZQorIHRlZSAtYSAtaSAv
dmFyL2xvZy9oaWJlcm5hdGUubG9nCisgZWNobyAnU3RhcnRpbmcgc3VzcGVuZCBhdCBzYWInIG5v
diAzIDE1OjIwOjI2IENFVCAyMDA3CisgRVhJVF9DT0RFPTAKKyAnWycgJ3RlZSAtYSAtaSAvdmFy
L2xvZy9oaWJlcm5hdGUubG9nJyA9IGNhdCAnXScKKyAnWycgLW4gMSAnXScKKyBEb1dvcmsKKyB0
cmFwIGN0cmxjX2hhbmRsZXIgSU5UIEhVUAorIGxvY2FsIHJldAorIGxvY2FsIENIQUlOX1VQX1RP
CisgbG9jYWwgYml0CisgQ0hBSU5fVVBfVE89MAorIHRlZSAtYSAtaSAvdmFyL2xvZy9oaWJlcm5h
dGUubG9nCisrIFNvcnRTdXNwZW5kQml0cworKyBzb3J0IC1uCisrIC9iaW4vZWNobyAtbmUgJzE5
TG9nb3V0UGlkZ2luXG4zMFNlcnZpY2VzU3RvcFxuOTFNb2R1bGVzVW5sb2FkQmxhY2tsaXN0XG40
NUZTVHlwZXNVbm1vdW50XG45NVhIYWNrc1N1c3BlbmRIb29rMlxuMTFYSGFja3NTdXNwZW5kSG9v
azFcbjk0RkJTcGxhc2hQcm9ncmVzc1xuOTBGQlNwbGFzaFByb2dyZXNzXG44MEZCU3BsYXNoUHJv
Z3Jlc3NcbjcwRkJTcGxhc2hQcm9ncmVzc1xuNjBGQlNwbGFzaFByb2dyZXNzXG41MEZCU3BsYXNo
UHJvZ3Jlc3NcbjQwRkJTcGxhc2hQcm9ncmVzc1xuMzBGQlNwbGFzaFByb2dyZXNzXG4yMEZCU3Bs
YXNoUHJvZ3Jlc3NcbjEyRkJTcGxhc2hTdGFydFN1c3BlbmRcbjk4RnVsbFNwZWVkQ1BVU3VzcGVu
ZFxuMTFTd3N1c3AyU2V0dXBGaWxld3JpdGVyXG43MENsb2NrU2F2ZVxuOThTd3N1c3AyQ29uZmln
U2V0XG45OURvU3dzdXNwMlxuOTdDaGFuZ2VUb1N3c3VzcFZUXG4xMEVuc3VyZVN3c3VzcDJDYXBh
YmxlXG41OVJlbW91bnRYRlNCb290Uk9cbjAxTmV3S2VybmVsRmlsZUNoZWNrXG44OVNhdmVLZXJu
ZWxNb2Rwcm9iZVxuOThDaGVja1J1bmxldmVsXG4wMUNoZWNrUnVubGV2ZWxcbjAxQ2hlY2tMYXN0
UmVzdW1lXG4wMUxvY2tGaWxlR2V0XG4nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2An
CisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUNo
ZWNrTGFzdFJlc3VtZSIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEg
J10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9Q2hlY2tMYXN0UmVzdW1lCisgdmVjaG8gMSAnaGli
ZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBDaGVja0xhc3RSZXN1bWUgLi4uICcKKyBsb2NhbCB2Cisg
dj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGli
ZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIENoZWNrTGFzdFJlc3VtZSAuLi4KaGliZXJuYXRlOiBb
MDFdIEV4ZWN1dGluZyBDaGVja0xhc3RSZXN1bWUgLi4uCisgJ1snIC1uICcnICddJworIENoZWNr
TGFzdFJlc3VtZQorICdbJyAtZiAvdmFyL3J1bi9oaWJlcm5hdGUtbGFzdC1yZXN1bWUgJ10nCisg
bG9jYWwgbGFzdF9yZXN1bWUgbm93CisgcmVhZCBsYXN0X3Jlc3VtZQorKyBkYXRlICslcworIG5v
dz0xMTk0MDk5NjI2CisgJ1snIDExOTQwOTk2MjYgLWd0IDExOTQwOTk2MTIgJ10nCisgcm0gLWYg
L3Zhci9ydW4vaGliZXJuYXRlLWxhc3QtcmVzdW1lCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAw
IC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGlu
ICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJ
TntwcmludCBzdWJzdHIoIjAxQ2hlY2tSdW5sZXZlbCIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBf
VE89MDEKKyAnWycgLW4gMDEgJ10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9Q2hlY2tSdW5sZXZl
bAorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgQ2hlY2tSdW5sZXZlbCAuLi4g
JworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQg
J10nCisgZWNobyBoaWJlcm5hdGU6ICdbMDFdJyBFeGVjdXRpbmcgQ2hlY2tSdW5sZXZlbCAuLi4K
aGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBDaGVja1J1bmxldmVsIC4uLgorICdbJyAtbiAnJyAn
XScKKyBDaGVja1J1bmxldmVsCisgJ1snIC16ICcnICddJworKyAvc2Jpbi9ydW5sZXZlbAorKyBh
d2sgJ3twcmludCAkMn0nCisgUlVOTEVWRUw9MworIGNhc2UgIiR7UlVOTEVWRUx9IiBpbgorIHJl
dHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycg
LW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NI
QUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUxvY2tGaWxlR2V0IiwgMSwg
Mil9JworIG5ld19DSEFJTl9VUF9UTz0wMQorICdbJyAtbiAwMSAnXScKKyBDSEFJTl9VUF9UTz0w
MQorIGJpdD1Mb2NrRmlsZUdldAorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcg
TG9ja0ZpbGVHZXQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICdd
JworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIExv
Y2tGaWxlR2V0IC4uLgpoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIExvY2tGaWxlR2V0IC4uLgor
ICdbJyAtbiAnJyAnXScKKyBMb2NrRmlsZUdldAorIGxvY2FsIG90aGVyX3BpZAorICdbJyAtZiAv
dmFyL3J1bi9oaWJlcm5hdGUtc2NyaXB0LnBpZCAnXScKKyBlY2hvIDY2ODcKKyBMT0NLRklMRV9J
Tl9VU0U9MQorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3Qg
MCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisg
bG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMU5ld0tl
cm5lbEZpbGVDaGVjayIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEg
J10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9TmV3S2VybmVsRmlsZUNoZWNrCisgdmVjaG8gMSAn
aGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4uICcKKyBsb2Nh
bCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVj
aG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIE5ld0tlcm5lbEZpbGVDaGVjayAuLi4KaGli
ZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4uCisgJ1snIC1uICcn
ICddJworIE5ld0tlcm5lbEZpbGVDaGVjaworICdbJyAtZiAvdmFyL3J1bi9zdXNwZW5kMi1uZXct
a2VybmVsICddJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAt
Z3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2An
CisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxMEVu
c3VyZVN3c3VzcDJDYXBhYmxlIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0xMAorICdbJyAt
biAxMCAnXScKKyBDSEFJTl9VUF9UTz0xMAorIGJpdD1FbnN1cmVTd3N1c3AyQ2FwYWJsZQorIHZl
Y2hvIDEgJ2hpYmVybmF0ZTogWzEwXSBFeGVjdXRpbmcgRW5zdXJlU3dzdXNwMkNhcGFibGUgLi4u
ICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzEwXScgRXhlY3V0aW5nIEVuc3VyZVN3c3VzcDJDYXBh
YmxlIC4uLgpoaWJlcm5hdGU6IFsxMF0gRXhlY3V0aW5nIEVuc3VyZVN3c3VzcDJDYXBhYmxlIC4u
LgorICdbJyAtbiAnJyAnXScKKyBFbnN1cmVTd3N1c3AyQ2FwYWJsZQorIGxvY2FsIHZlcgorICdb
JyAtZCAvc3lzL3Bvd2VyL3R1eG9uaWNlICddJworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNl
L2FjdGl2YXRlICddJworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2RvX3N1c3BlbmQgJ10n
CisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvZG9faGliZXJuYXRlICddJworICdbJyAnIScg
LWYgL3N5cy9wb3dlci90dXhvbmljZS92ZXJzaW9uICddJworIFN3c3VzcElzQXRMZWFzdFZlcnNp
b24gMzM1NTQ1MzUKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMTY3NzcyMTYp
KygkMio2NTUzNikrKCQzKjI1NikrJDR9JyAvc3lzL3Bvd2VyL3R1eG9uaWNlL3ZlcnNpb24KKyB2
ZXI9NTAzMzE2NDgKKyAnWycgNTAzMzE2NDggLWdlIDMzNTU0NTM1ICddJworIHJldHVybiAwCisg
J1snIHgxICchPScgeDEgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvcmVzdW1lMiAn
XScKKyAnWycgLWYgL3N5cy9wb3dlci90dXhvbmljZS9yZXN1bWUgJ10nCisgUkVTVU1FMl9GSUxF
PXJlc3VtZQorICdbJyAtbiByZXN1bWUgJ10nCisgJ1snIC1uICcnICddJworIHJlYWQgUkVQTFkK
KyAnWycgLXogZmlsZTovZGV2L2RtLTA6MHg0NGVkMCAnXScKKyByZXR1cm4gMAorIHJldD0wCisg
J1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBi
aXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sg
J0JFR0lOe3ByaW50IHN1YnN0cigiMTFTd3N1c3AyU2V0dXBGaWxld3JpdGVyIiwgMSwgMil9Jwor
IG5ld19DSEFJTl9VUF9UTz0xMQorICdbJyAtbiAxMSAnXScKKyBDSEFJTl9VUF9UTz0xMQorIGJp
dD1Td3N1c3AyU2V0dXBGaWxld3JpdGVyCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTFdIEV4ZWN1
dGluZyBTd3N1c3AyU2V0dXBGaWxld3JpdGVyIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sx
MV0nIEV4ZWN1dGluZyBTd3N1c3AyU2V0dXBGaWxld3JpdGVyIC4uLgpoaWJlcm5hdGU6IFsxMV0g
RXhlY3V0aW5nIFN3c3VzcDJTZXR1cEZpbGV3cml0ZXIgLi4uCisgJ1snIC1uICcnICddJworIFN3
c3VzcDJTZXR1cEZpbGV3cml0ZXIKKyBsb2NhbCBmdF9lbnRyeQorIGZ0X2VudHJ5PQorICdbJyAt
ZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2ZpbGUvZmlsZXdyaXRlcl90YXJnZXQgJ10nCisgJ1snIC1m
IC9zeXMvcG93ZXIvdHV4b25pY2UvZmlsZS90YXJnZXQgJ10nCisgZnRfZW50cnk9L3N5cy9wb3dl
ci90dXhvbmljZS9maWxlL3RhcmdldAorICdbJyAteiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2ZpbGUv
dGFyZ2V0ICddJworICdbJyAtZSAvc3VzcGVuZF9maWxlICddJworIGNhc2UgImBkZCBcImlmPSRT
V1NVU1BfRklMRVdSSVRFUl9MT0NcIiBicz04IGNvdW50PTEgMj4vZGV2L251bGxgIiBpbgorKyBk
ZCBpZj0vc3VzcGVuZF9maWxlIGJzPTggY291bnQ9MQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogRGV0
ZWN0ZWQgZmlsZXdyaXRlciBpbWFnZSByZWFkeSBmb3IgdXNlLicKKyBsb2NhbCB2Cisgdj0xCisg
c2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRl
OiBEZXRlY3RlZCBmaWxld3JpdGVyIGltYWdlIHJlYWR5IGZvciB1c2UuCmhpYmVybmF0ZTogRGV0
ZWN0ZWQgZmlsZXdyaXRlciBpbWFnZSByZWFkeSBmb3IgdXNlLgorIGVjaG8gL3N1c3BlbmRfZmls
ZQorIGVjaG8gL3N1c3BlbmRfZmlsZQorIGNobW9kIDYwMCAvdmFyL3J1bi9zdXNwZW5kMl9maWxl
d3JpdGVyX2ltYWdlX2V4aXN0cworICdbJyB4ID0geDEgJ10nCisgbG9jYWwgbmV3X3Jlc3VtZTIK
KysgY2F0IC9zeXMvcG93ZXIvdHV4b25pY2UvcmVzdW1lCisgbmV3X3Jlc3VtZTI9ZmlsZTovZGV2
L2RtLTA6MHg0NGVkMAorICdbJyAteiBmaWxlOi9kZXYvZG0tMDoweDQ0ZWQwICddJworIGdyZXAg
ZmlsZTovZGV2L2RtLTA6MHg0NGVkMCAvcHJvYy9jbWRsaW5lCmRvbHZtIHByb2Nlc3Nvci5tYXhf
Y3N0YXRlPTIgbGliYXRhLmF0YXBpX2VuYWJsZWQ9MSByb290PS9kZXYvcmFtMCBpbml0PS9saW51
eHJjIHJlYWxfcm9vdD0vZGV2L3ZnL3Jvb3QgdmlkZW89dXZlc2FmYjoxMDI0eDc2OC0zMixtdHJy
OjMseXdyYXAgc3BsYXNoPXNpbGVudCx0aGVtZTpsaXZlY2QtMjAwNy4wIENPTlNPTEU9L2Rldi90
dHkxIHF1aWV0IHJlc3VtZT1maWxlOi9kZXYvZG0tMDoweDQ0ZWQwCisgcmV0dXJuIDAKKyByZXQ9
MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBm
b3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysg
YXdrICdCRUdJTntwcmludCBzdWJzdHIoIjExWEhhY2tzU3VzcGVuZEhvb2sxIiwgMSwgMil9Jwor
IG5ld19DSEFJTl9VUF9UTz0xMQorICdbJyAtbiAxMSAnXScKKyBDSEFJTl9VUF9UTz0xMQorIGJp
dD1YSGFja3NTdXNwZW5kSG9vazEKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5n
IFhIYWNrc1N1c3BlbmRIb29rMSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4
ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMTFdJyBFeGVj
dXRpbmcgWEhhY2tzU3VzcGVuZEhvb2sxIC4uLgpoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5nIFhI
YWNrc1N1c3BlbmRIb29rMSAuLi4KKyAnWycgLW4gJycgJ10nCisgWEhhY2tzU3VzcGVuZEhvb2sx
CisgJ1snIHggPSB4MSAnXScKKyAnWycgeDEgPSB4MSAnXScKKyBYSEFDS1NfRUFSTFlfU1dJVENI
PTEKKyBYSGFja3NTdXNwZW5kCisgJ1snIHgxID0geDEgJ10nCisgY29tbWFuZCAtdiBmZ2NvbnNv
bGUKKysgZmdjb25zb2xlCisgWEhBQ0tTX09SSUdJTkFMX1ZUPTMKKyAnWycgeDEgPSB4MSAnXScK
KyBsb2NhbCBkZXN0X3Z0CisgJ1snIC16ICcnICddJworIGRlc3RfdnQ9MTUKKyB2ZWNobyAzICd4
aGFja3M6IGNoYW5naW5nIGNvbnNvbGUgZnJvbSAzIHRvIDE1JworIGxvY2FsIHYKKyB2PTMKKyBz
aGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDMgLWxlIDQgJ10nCisgZWNobyB4aGFja3M6IGNo
YW5naW5nIGNvbnNvbGUgZnJvbSAzIHRvIDE1CnhoYWNrczogY2hhbmdpbmcgY29uc29sZSBmcm9t
IDMgdG8gMTUKKyBjaHZ0IDE1CisgcmV0dXJuIDAKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAg
LWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4g
J2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lO
e3ByaW50IHN1YnN0cigiMTJGQlNwbGFzaFN0YXJ0U3VzcGVuZCIsIDEsIDIpfScKKyBuZXdfQ0hB
SU5fVVBfVE89MTIKKyAnWycgLW4gMTIgJ10nCisgQ0hBSU5fVVBfVE89MTIKKyBiaXQ9RkJTcGxh
c2hTdGFydFN1c3BlbmQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMl0gRXhlY3V0aW5nIEZCU3Bs
YXNoU3RhcnRTdXNwZW5kIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4
MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sxMl0nIEV4ZWN1dGlu
ZyBGQlNwbGFzaFN0YXJ0U3VzcGVuZCAuLi4KaGliZXJuYXRlOiBbMTJdIEV4ZWN1dGluZyBGQlNw
bGFzaFN0YXJ0U3VzcGVuZCAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hTdGFydFN1c3Bl
bmQKKyBGQlNwbGFzaEJlZ2luICdQcmVwYXJpbmcgdG8gc3VzcGVuZCAuLi4nCisgJ1snIHgxICch
PScgeDEgJ10nCisgJ1snIC16IHN1c3BlbmQyICddJworIGNvbW1hbmQgLXYgZmJzcGxhc2hkCisg
J1snICchJyAtZCAvZXRjL3NwbGFzaC9zdXNwZW5kMi8gJ10nCisgdGVzdCAtcCAvbGliL3NwbGFz
aC9jYWNoZS8uc3BsYXNoCisgZmJzcGxhc2hkIC0tdGhlbWUgc3VzcGVuZDIgLS1tZXNnIFN1c3Bl
bmRpbmcuLi4gLS1lZmZlY3RzIGZhZGVpbgorIFRpbWVkRkJTcGxhc2hDdGwgJ3NldCBtb2RlIHNp
bGVudFxucHJvZ3Jlc3MgMFxuc2V0IG1lc3NhZ2UgUHJlcGFyaW5nIHRvIHN1c3BlbmQgLi4uXG5y
ZXBhaW50XG4nCisrIGF3ayAne3ByaW50ICQxfScKKyBTQVZFRF9GQlNQTEFTSF9QUklOVEtfTEVW
RUw9MQorIGVjaG8gMgorIEZCU1BMQVNIX1BST0dSRVNTPTAKKyBGQlNwbGFzaFByb2dyZXNzCisg
J1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NjU1MworIFRpbWVkRkJTcGxhc2hD
dGwgJ3Byb2dyZXNzIDY1NTNcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIHJldHVybiAwCisgcmV0
PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisg
Zm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisr
IGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxOUxvZ291dFBpZGdpbiIsIDEsIDIpfScKKyBuZXdf
Q0hBSU5fVVBfVE89MTkKKyAnWycgLW4gMTkgJ10nCisgQ0hBSU5fVVBfVE89MTkKKyBiaXQ9TG9n
b3V0UGlkZ2luCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTldIEV4ZWN1dGluZyBMb2dvdXRQaWRn
aW4gLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAx
IC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzE5XScgRXhlY3V0aW5nIExvZ291dFBpZGdp
biAuLi4KaGliZXJuYXRlOiBbMTldIEV4ZWN1dGluZyBMb2dvdXRQaWRnaW4gLi4uCisgJ1snIC1u
ICcnICddJworIExvZ291dFBpZGdpbgorICdbJyB4MSAnIT0nIHgxICddJworICdbJyAteiAvdXNy
L2Jpbi9wdXJwbGUtcmVtb3RlICddJworICdbJyAnIScgLXggL3Vzci9iaW4vcHVycGxlLXJlbW90
ZSAnXScKKyBsb2NhbCBwaWQgaT0wCisrIHBpZG9mIHBpZGdpbgorIHJldHVybiAwCisgcmV0PTAK
KyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9y
IGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3
ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIyMEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3
X0NIQUlOX1VQX1RPPTIwCisgJ1snIC1uIDIwICddJworIENIQUlOX1VQX1RPPTIwCisgYml0PUZC
U3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsyMF0gRXhlY3V0aW5nIEZCU3Bs
YXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICdd
JworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzIwXScgRXhlY3V0aW5nIEZC
U3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzIwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9n
cmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgx
ICddJworIEZCU1BMQVNIX1BST0dSRVNTPTEzMTA2CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jl
c3MgMTMxMDZcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10n
CisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3Vz
cGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1
YnN0cigiMzBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0zMAor
ICdbJyAtbiAzMCAnXScKKyBDSEFJTl9VUF9UTz0zMAorIGJpdD1GQlNwbGFzaFByb2dyZXNzCisg
dmVjaG8gMSAnaGliZXJuYXRlOiBbMzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAn
CisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAn
XScKKyBlY2hvIGhpYmVybmF0ZTogJ1szMF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4u
LgpoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1u
ICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9Q
Uk9HUkVTUz0xOTY1OQorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDE5NjU5XG5yZXBhaW50
XG4nCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICdd
JworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2Nh
bCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjMwU2VydmljZXNT
dG9wIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0zMAorICdbJyAtbiAzMCAnXScKKyBDSEFJ
Tl9VUF9UTz0zMAorIGJpdD1TZXJ2aWNlc1N0b3AKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFszMF0g
RXhlY3V0aW5nIFNlcnZpY2VzU3RvcCAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdb
JyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMzBdJyBF
eGVjdXRpbmcgU2VydmljZXNTdG9wIC4uLgpoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIFNlcnZp
Y2VzU3RvcCAuLi4KKyAnWycgLW4gJycgJ10nCisgU2VydmljZXNTdG9wCisgJ1snIC16IDEgJ10n
CisgRXhlY3V0ZVNlcnZpY2VzIHN0b3AKKyBsb2NhbCBhY3Rpb24KKyBsb2NhbCBzZXJ2aWNlcwor
IGxvY2FsIHNlcnZpY2UKKyBhY3Rpb249c3RvcAorIHNoaWZ0Cisgc2VydmljZXM9CisgcmV0PTAK
KyByZXR1cm4gMAorIFJFU1RBUlRFRF9TRVJWSUNFUz0KKyBFeGVjdXRlU2VydmljZXMgc3RvcCBs
YXB0b3BfbW9kZQorIGxvY2FsIGFjdGlvbgorIGxvY2FsIHNlcnZpY2VzCisgbG9jYWwgc2Vydmlj
ZQorIGFjdGlvbj1zdG9wCisgc2hpZnQKKyBzZXJ2aWNlcz1sYXB0b3BfbW9kZQorIHJldD0wCisg
Zm9yIHNlcnZpY2UgaW4gJyRzZXJ2aWNlcycKKyBJbnZva2VSQ0QgbGFwdG9wX21vZGUgc3RvcAor
IGxvY2FsIHNlcnZpY2UgYWN0aW9uIHRtcCBjbWQKKyBzZXJ2aWNlPWxhcHRvcF9tb2RlCisgYWN0
aW9uPXN0b3AKKyAnWycgLXggL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUgJ10nCisgY21kPScvZXRj
L2luaXQuZC9sYXB0b3BfbW9kZSBzdG9wJworICdbJyBzdG9wID0gc3RhcnQgJ10nCisgdmVjaG8g
MiAnRXhlY3V0aW5nIC9ldGMvaW5pdC5kL2xhcHRvcF9tb2RlIHN0b3AnCisgbG9jYWwgdgorIHY9
MgorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMiAtbGUgNCAnXScKKyBlY2hvIEV4ZWN1
dGluZyAvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSBzdG9wCkV4ZWN1dGluZyAvZXRjL2luaXQuZC9s
YXB0b3BfbW9kZSBzdG9wCisgL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUgc3RvcAogKiBTdG9wcGlu
ZyBsYXB0b3BfbW9kZSAuLi4gWyBvayBdCisgJ1snIDAgLW5lIDEwMCAnXScKKyBSRVNUQVJURURf
U0VSVklDRVM9J2xhcHRvcF9tb2RlICcKKyByZXR1cm4gMAorIHJldHVybiAwCisgcmV0PTAKKyAn
WycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJp
dCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAn
QkVHSU57cHJpbnQgc3Vic3RyKCI0MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NI
QUlOX1VQX1RPPTQwCisgJ1snIC1uIDQwICddJworIENIQUlOX1VQX1RPPTQwCisgYml0PUZCU3Bs
YXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs0MF0gRXhlY3V0aW5nIEZCU3BsYXNo
UHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzQwXScgRXhlY3V0aW5nIEZCU3Bs
YXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycg
eDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0yNjIxMgorIFRpbWVkRkJTcGxhc2hDdGwg
J3Byb2dyZXNzIDI2MjEyXG5yZXBhaW50XG4nCmhpYmVybmF0ZTogWzQwXSBFeGVjdXRpbmcgRkJT
cGxhc2hQcm9ncmVzcyAuLi4KKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisg
J1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVu
ZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0
cigiNDVGU1R5cGVzVW5tb3VudCIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89NDUKKyAnWycg
LW4gNDUgJ10nCisgQ0hBSU5fVVBfVE89NDUKKyBiaXQ9RlNUeXBlc1VubW91bnQKKyB2ZWNobyAx
ICdoaWJlcm5hdGU6IFs0NV0gRXhlY3V0aW5nIEZTVHlwZXNVbm1vdW50IC4uLiAnCisgbG9jYWwg
dgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hv
IGhpYmVybmF0ZTogJ1s0NV0nIEV4ZWN1dGluZyBGU1R5cGVzVW5tb3VudCAuLi4KaGliZXJuYXRl
OiBbNDVdIEV4ZWN1dGluZyBGU1R5cGVzVW5tb3VudCAuLi4KKyAnWycgLW4gJycgJ10nCisgRlNU
eXBlc1VubW91bnQKKyBsb2NhbCBmc3R5cGUKKyBsb2NhbCByZXQKKyAnWycgLXogJyBzbWJmcyBu
ZnMgdmZhdCBudGZzJyAnXScKKyByZXQ9MAorIGZvciBmc3R5cGUgaW4gJyRGU19UWVBFUycKKyBs
b2NhbCB1bm1vdW50cworKyBzb3J0IC1yCisrIGF3ayAnKCQzID09ICJzbWJmcyIpIHtwcmludCAk
Mn0nIC9wcm9jL21vdW50cworIHVubW91bnRzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQor
IGZvciBmc3R5cGUgaW4gJyRGU19UWVBFUycKKyBsb2NhbCB1bm1vdW50cworKyBzb3J0IC1yCisr
IGF3ayAnKCQzID09ICJuZnMiKSB7cHJpbnQgJDJ9JyAvcHJvYy9tb3VudHMKKyB1bm1vdW50cz0K
KyAnWycgLXogJycgJ10nCisgY29udGludWUKKyBmb3IgZnN0eXBlIGluICckRlNfVFlQRVMnCisg
bG9jYWwgdW5tb3VudHMKKysgYXdrICcoJDMgPT0gInZmYXQiKSB7cHJpbnQgJDJ9JyAvcHJvYy9t
b3VudHMKKysgc29ydCAtcgorIHVubW91bnRzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQor
IGZvciBmc3R5cGUgaW4gJyRGU19UWVBFUycKKyBsb2NhbCB1bm1vdW50cworKyBhd2sgJygkMyA9
PSAibnRmcyIpIHtwcmludCAkMn0nIC9wcm9jL21vdW50cworKyBzb3J0IC1yCisgdW5tb3VudHM9
CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1n
ZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdg
U29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntw
cmludCBzdWJzdHIoIjUwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBf
VE89NTAKKyAnWycgLW4gNTAgJ10nCisgQ0hBSU5fVVBfVE89NTAKKyBiaXQ9RkJTcGxhc2hQcm9n
cmVzcworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzUwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVz
cyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEg
LWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNTBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9n
cmVzcyAuLi4KaGliZXJuYXRlOiBbNTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgor
ICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJT
UExBU0hfUFJPR1JFU1M9MzI3NjUKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyAzMjc2NVxu
cmVwYWludFxuJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAt
Z3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2An
CisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI1OVJl
bW91bnRYRlNCb290Uk8iLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTU5CisgJ1snIC1uIDU5
ICddJworIENIQUlOX1VQX1RPPTU5CisgYml0PVJlbW91bnRYRlNCb290Uk8KKyB2ZWNobyAxICdo
aWJlcm5hdGU6IFs1OV0gRXhlY3V0aW5nIFJlbW91bnRYRlNCb290Uk8gLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzU5XScgRXhlY3V0aW5nIFJlbW91bnRYRlNCb290Uk8gLi4uCmhpYmVybmF0
ZTogWzU5XSBFeGVjdXRpbmcgUmVtb3VudFhGU0Jvb3RSTyAuLi4KKyAnWycgLW4gJycgJ10nCisg
UmVtb3VudFhGU0Jvb3RSTworICdbJyAnJyA9IDEgJ10nCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAn
XScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRT
dXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQg
c3Vic3RyKCI2MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTYw
CisgJ1snIC1uIDYwICddJworIENIQUlOX1VQX1RPPTYwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MK
KyB2ZWNobyAxICdoaWJlcm5hdGU6IFs2MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4u
ICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzYwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3Mg
Li4uCmhpYmVybmF0ZTogWzYwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycg
LW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNI
X1BST0dSRVNTPTM5MzE4CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMzkzMThcbnJlcGFp
bnRcbicKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAg
J10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxv
Y2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNzBDbG9ja1Nh
dmUiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTcwCisgJ1snIC1uIDcwICddJworIENIQUlO
X1VQX1RPPTcwCisgYml0PUNsb2NrU2F2ZQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVj
dXRpbmcgQ2xvY2tTYXZlIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4
MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s3MF0nIEV4ZWN1dGlu
ZyBDbG9ja1NhdmUgLi4uCmhpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tTYXZlIC4uLgor
ICdbJyAtbiAnJyAnXScKKyBDbG9ja1NhdmUKKyBjYXNlICIkRElTVFJJQlVUSU9OIiBpbgorIC9z
YmluL2h3Y2xvY2sgLS1zeXN0b2hjCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICdd
JworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1
c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBz
dWJzdHIoIjcwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89NzAK
KyAnWycgLW4gNzAgJ10nCisgQ0hBSU5fVVBfVE89NzAKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcwor
IHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4g
JworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQg
J10nCisgZWNobyBoaWJlcm5hdGU6ICdbNzBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAu
Li4KaGliZXJuYXRlOiBbNzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAt
biAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hf
UFJPR1JFU1M9NDU4NzEKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyA0NTg3MVxucmVwYWlu
dFxuJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAn
XScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9j
YWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI4MEZCU3BsYXNo
UHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTgwCisgJ1snIC1uIDgwICddJwor
IENIQUlOX1VQX1RPPTgwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5h
dGU6IFs4MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0x
Cisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJu
YXRlOiAnWzgwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzgw
XSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxh
c2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTUyNDI0Cisg
VGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNTI0MjRcbnJlcGFpbnRcbicKKyByZXR1cm4gMAor
IHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICdd
JworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9U
TworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiODlTYXZlS2VybmVsTW9kcHJvYmUiLCAxLCAy
KX0nCisgbmV3X0NIQUlOX1VQX1RPPTg5CisgJ1snIC1uIDg5ICddJworIENIQUlOX1VQX1RPPTg5
CisgYml0PVNhdmVLZXJuZWxNb2Rwcm9iZQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzg5XSBFeGVj
dXRpbmcgU2F2ZUtlcm5lbE1vZHByb2JlIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0Cisg
J1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s4OV0n
IEV4ZWN1dGluZyBTYXZlS2VybmVsTW9kcHJvYmUgLi4uCmhpYmVybmF0ZTogWzg5XSBFeGVjdXRp
bmcgU2F2ZUtlcm5lbE1vZHByb2JlIC4uLgorICdbJyAtbiAnJyAnXScKKyBTYXZlS2VybmVsTW9k
cHJvYmUKKyAnWycgLW4gJycgJ10nCisgJ1snIC1yIC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUg
J10nCisrIGNhdCAvcHJvYy9zeXMva2VybmVsL21vZHByb2JlCisgS0VSTkVMX01PRFBST0JFPS9z
YmluL21vZHByb2JlCisgJ1snIC1uIC9zYmluL21vZHByb2JlICddJworIHZlY2hvIDMgJ1NhdmVk
IC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUgaXMgL3NiaW4vbW9kcHJvYmUnCisgbG9jYWwgdgor
IHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUgNCAnXScKKyBlY2hvIFNh
dmVkIC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUgaXMgL3NiaW4vbW9kcHJvYmUKU2F2ZWQgL3By
b2Mvc3lzL2tlcm5lbC9tb2Rwcm9iZSBpcyAvc2Jpbi9tb2Rwcm9iZQorIGVjaG8gL2RvZXNudC9l
eGlzdAorICdbJyAtciAvcHJvYy9zeXMva2VybmVsL2hvdHBsdWcgJ10nCisrIGNhdCAvcHJvYy9z
eXMva2VybmVsL2hvdHBsdWcKKyBLRVJORUxfSE9UUExVRz0KKyAnWycgLW4gJycgJ10nCisgcmV0
dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAt
biAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hB
SU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjkwRkJTcGxhc2hQcm9ncmVzcyIs
IDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89OTAKKyAnWycgLW4gOTAgJ10nCisgQ0hBSU5fVVBf
VE89OTAKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzkwXSBF
eGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAor
ICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTBd
JyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbOTBdIEV4ZWN1dGlu
ZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNz
CisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NTg5NzcKKyBUaW1lZEZCU3Bs
YXNoQ3RsICdwcm9ncmVzcyA1ODk3N1xucmVwYWludFxuJworIHJldHVybiAwCisgcmV0PTAKKyAn
WycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJp
dCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAn
QkVHSU57cHJpbnQgc3Vic3RyKCI5MU1vZHVsZXNVbmxvYWRCbGFja2xpc3QiLCAxLCAyKX0nCisg
bmV3X0NIQUlOX1VQX1RPPTkxCisgJ1snIC1uIDkxICddJworIENIQUlOX1VQX1RPPTkxCisgYml0
PU1vZHVsZXNVbmxvYWRCbGFja2xpc3QKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5MV0gRXhlY3V0
aW5nIE1vZHVsZXNVbmxvYWRCbGFja2xpc3QgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQK
KyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzkx
XScgRXhlY3V0aW5nIE1vZHVsZXNVbmxvYWRCbGFja2xpc3QgLi4uCmhpYmVybmF0ZTogWzkxXSBF
eGVjdXRpbmcgTW9kdWxlc1VubG9hZEJsYWNrbGlzdCAuLi4KKyAnWycgLW4gJycgJ10nCisgTW9k
dWxlc1VubG9hZEJsYWNrbGlzdAorICdbJyB4MSA9IHgxICddJworIENoZWNrTW9kdWxlU3VwcG9y
dAorICdbJyAtZiAvcHJvYy9tb2R1bGVzICddJworIHJldHVybiAwCisgJ1snICchJyAtciAvZXRj
L2hpYmVybmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVzICddJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScgL3Byb2Mvc3lzL2tlcm5lbC9v
c3JlbGVhc2UKKyBsb2NhbCBrdmVyPTEzMjYzMQorIHZlY2hvIDIgJ1VubG9hZGluZyBibGFja2xp
c3RlZCBtb2R1bGVzIGxpc3RlZCAvZXRjL2hpYmVybmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVzJwor
IGxvY2FsIHYKKyB2PTIKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDIgLWxlIDQgJ10n
CisgZWNobyBVbmxvYWRpbmcgYmxhY2tsaXN0ZWQgbW9kdWxlcyBsaXN0ZWQgL2V0Yy9oaWJlcm5h
dGUvYmxhY2tsaXN0ZWQtbW9kdWxlcwpVbmxvYWRpbmcgYmxhY2tsaXN0ZWQgbW9kdWxlcyBsaXN0
ZWQgL2V0Yy9oaWJlcm5hdGUvYmxhY2tsaXN0ZWQtbW9kdWxlcworIGxvY2FsIGZhaWxlZG1vZHM9
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVz
ZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICdd
JworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
IGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92
ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVl
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBz
CisrIEZpbmRNb2R1bGVEZXBzIG52aWRpYQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEg
J14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9bnZp
ZGlhICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1
bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9y
IChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAo
IW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0K
ICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0K
CmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3
aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9k
dWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAg
ICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAg
ICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIs
ICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1v
ZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQog
ICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9
IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1v
ZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkg
ewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50
byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAn
CisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUK
KyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFk
IG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICdd
JworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgYWN4MTAwCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdr
IC12IG1vZHVsZT1hY3gxMDAgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGks
IGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBh
LCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51
ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1d
ID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAg
ICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hh
bmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAg
ICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7
CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tp
XQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAg
ICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIs
ImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
IGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAg
IGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAg
ICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZl
X21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1
dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMp
CiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAn
XScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9t
b2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4K
KyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBhY3hfcGNpCisr
IGF3ayAtdiBtb2R1bGU9YWN4X3BjaSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1v
ZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21v
ZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNv
bnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNb
YVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0p
CiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAg
ICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAog
ICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0g
IiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1
bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAg
ICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBz
dWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4g
ewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0g
JDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYg
KGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUp
ICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9k
dWxlcykKICAgIH0KfQogICAgJworKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40
XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVw
cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVs
ZURlcHMgaHNmbW9kZW0KKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAv
cHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWhzZm1vZGVtICcKZnVu
Y3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0g
PSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEp
IHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNb
YVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAg
ICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9u
IHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hh
bmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewog
ICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQg
aQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAo
aiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1
bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0p
CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAg
ICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewog
ICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2
ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAg
IGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxl
cyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAv
cHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisg
bG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJz
CisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2Fs
IGRlcHMKKysgRmluZE1vZHVsZURlcHMgcHJpc201NAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdy
ZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1
bGU9cHJpc201NCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewog
ICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikK
ICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAg
ICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBz
W2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQog
ICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0g
MQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihp
IGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAg
ICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAg
ICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1Yigi
XiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwg
IiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdl
ZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9t
b2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgk
MSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxl
ID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1
bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0K
fQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAn
Mi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2
MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2Nh
bCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysg
ZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSso
JDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JF
R0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhf
dmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEz
MjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxl
RGVwcyBiY200NDAwCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgYXdrIC12IG1vZHVsZT1iY200NDAw
ICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVz
W21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChp
IGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1v
ZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAg
ICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1
bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGls
ZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxl
cykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAg
cHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAg
IGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIi
LCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVs
ZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAg
ICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAK
fQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVs
ZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewog
ICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAi
bW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisr
IGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJv
Yy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9j
YWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisg
J1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTkJMi42
LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEg
Mi40LjAgMi40Ljk5IDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNo
aWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45
OSAyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2Cisr
IGVjaG8gMi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDAp
KygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEg
LWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcyLjYu
MCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8g
Mi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMiow
eDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEz
MjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBk
ZXBzCisrIEZpbmRNb2R1bGVEZXBzIGVtdTEwazEKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVw
IC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxl
PWVtdTEwazEgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAg
IG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAg
ICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAg
IGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1th
W2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAg
IH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEK
ICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBp
biBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAg
ICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAg
ICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4i
aSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIs
IiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQg
PSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9k
dWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEg
PT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9
PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0
cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0K
ICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250
aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQor
IHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4g
JzIuNC4wCTIuNC45OQkyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVy
c2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkgMi42LjAgMi42Ljk5CisgbG9jYWwga3Zlcgor
IGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdb
JyAtbiAnMi40LjAgMi40Ljk5IDIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi40LjAKKysgYXdr
ICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisg
bWluX3Zlcj0xMzIwOTYKKysgZWNobyAyLjQuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17
cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlm
dCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyMDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAn
XScKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9
e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBlY2hvIDIuNi4wCisgbWluX3Zl
cj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQo
JDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisg
J1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyBy
ZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgZm9yY2VkZXRoCisrIEdldDI2
TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVh
c2UKKysgYXdrIC12IG1vZHVsZT1mb3JjZWRldGggJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQo
ZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09
ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBt
b2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwg
aikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdl
ZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVz
W2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxl
dGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAg
ICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0K
CkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBz
WyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsK
ICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMo
bW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9z
b3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQor
ICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9k
X3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBj
YXNlICRtb2QgaW4KKyBtb2Q9aXB3MjEwMAorIHVzZV9tb2RfdmVyPTEKKyAnWycgLW4gJzAuMAkx
LjAuMicgJ10nCisgJ1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVyCisrIG1vZGluZm8gaXB3MjEw
MAorKyBzZWQgLWUgJ3MvXnZlcnNpb246WyBcdF1cK1teMC05XSpcKC4qXCkkL1wxLzt0O2QnCisr
IGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9
JworIG1vZHZlcj0KKyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBmb3IgaXB3MjEwMCBpcyAnCisg
bG9jYWwgdgorIHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUgNCAnXScK
KyBlY2hvIE1vZHVsZSB2ZXJzaW9uIGZvciBpcHcyMTAwIGlzCisgJ1snIC1uICcnICddJworIGxv
Y2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaXB3MjEwMAorKyBhd2sgLXYgbW9kdWxlPWlwdzIx
MDAgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVs
ZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3Ig
KGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICgh
bW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQog
ICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoK
ZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdo
aWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1
bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAg
ICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAg
ICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwg
IiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9k
dWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAg
ICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0g
MAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9k
dWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7
CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRv
ICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcK
TW9kdWxlIHZlcnNpb24gZm9yIGlwdzIxMDAgaXMKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVw
IC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBjYXQgL3Byb2MvbW9k
dWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIG1vZD1pcHcyMjAwCisgdXNlX21vZF92ZXI9MQor
ICdbJyAtbiAnMC4wCTAuMjAnICddJworICdbJyAteiAxICddJworIGxvY2FsIG1vZHZlcgorKyBt
b2RpbmZvIGlwdzIyMDAKKysgc2VkIC1lICdzL152ZXJzaW9uOlsgXHRdXCtbXjAtOV0qXCguKlwp
JC9cMS87dDtkJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSso
JDIqMHgxMDApKyQzfScKKyBtb2R2ZXI9NjYwNTAKKyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBm
b3IgaXB3MjIwMCBpcyA2NjA1MCcKKyBsb2NhbCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9IHgx
ICddJworICdbJyAzIC1sZSA0ICddJworIGVjaG8gTW9kdWxlIHZlcnNpb24gZm9yIGlwdzIyMDAg
aXMgNjYwNTAKKyAnWycgLW4gNjYwNTAgJ10nCisgSXNJblZlcnNpb25SYW5nZSA2NjA1MCAwLjAg
MC4yMAorIGxvY2FsIGt2ZXIKKyBrdmVyPTY2MDUwCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisg
bG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMC4wIDAuMjAnICddJwpNb2R1bGUgdmVyc2lvbiBmb3Ig
aXB3MjIwMCBpcyA2NjA1MAorKyBlY2hvIDAuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtw
cmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTAKKysgZWNobyAwLjIw
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkr
JDN9JworIG1heF92ZXI9NTEyMAorIHNoaWZ0IDIKKyAnWycgNjYwNTAgLWdlIDAgJ10nCisgJ1sn
IDY2MDUwIC1sZSA1MTIwICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVl
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42
LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEg
Mi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBt
aW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNo
byAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIq
MHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lO
e0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVy
PTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYz
MSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVw
cyBuYXRzZW1pCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mv
c3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1uYXRzZW1pICcKZnVuY3Rpb24g
ZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBz
W21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAg
ICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0p
IHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmlu
ZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9z
b3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkg
ewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAg
ICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAg
ICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBt
b2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pd
KQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAg
ICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYg
KCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1
bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRf
cmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJy
YXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9t
b2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTknICddJwor
ICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuMTkKKyBs
b2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBt
YXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuMTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAn
QkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1p
bl92ZXI9MTMyNjA4CisrIGVjaG8gMi42LjE5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjI3Cisgc2hpZnQg
MgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MjcgJ10n
CisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTkJMi42LjAJMi42
Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi40LjAg
Mi40Ljk5IDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0Cisg
bG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OSAyLjYu
MCAyLjYuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2CisrIGVjaG8g
Mi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMiow
eDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEz
MjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcyLjYuMCAyLjYu
OTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQx
KjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkr
JDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAn
XScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisr
IEZpbmRNb2R1bGVEZXBzIHJ0MjQwMAorKyBhd2sgLXYgbW9kdWxlPXJ0MjQwMCAnCmZ1bmN0aW9u
IGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVw
c1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAg
ICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1d
KSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZp
bmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bf
c29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQp
IHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAg
ICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAg
ICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4g
bW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tq
XSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQog
ICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlm
ICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9k
dWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5k
X3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFy
cmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBHZXQyNk1vZHVs
ZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisr
IGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0
cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1v
ZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAky
LjYuMTQnICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYu
MCAyLjYuMTQKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92
ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuMTQnICddJworKyBlY2hvIDIu
Ni4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEw
MCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9
IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMy
NjIyCisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1s
ZSAxMzI2MjIgJ10nCisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVl
CisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2
ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYu
MTQnICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAy
LjYuMTQKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIK
KyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuMTQnICddJworKyBlY2hvIDIuNi4w
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkr
JDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9Ilte
MC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjIy
Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAx
MzI2MjIgJ10nCisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisg
bG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJz
CisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTQn
ICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYu
MTQKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBs
b2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuMTQnICddJworKyBhd2sgJ0JFR0lOe0ZT
PSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjYu
MAorIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjIyCisg
c2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2
MjIgJ10nCisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9j
YWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisg
J1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTknICdd
JworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkK
KyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2Nh
bCBtYXhfdmVyCisgJ1snIC1uICcyLjQuMCAyLjQuOTknICddJworKyBhd2sgJ0JFR0lOe0ZTPSJb
XjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjQuMAor
IG1pbl92ZXI9MTMyMDk2CisrIGVjaG8gMi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9
e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hp
ZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUg
J10nCisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTknICddJwor
ICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkKKyBs
b2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBt
YXhfdmVyCisgJ1snIC1uICcyLjQuMCAyLjQuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAn
QkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1p
bl92ZXI9MTMyMDk2CisrIGVjaG8gMi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQg
MgorICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10n
CisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTknICddJworICdb
JyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkKKyBsb2Nh
bCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhf
dmVyCisgJ1snIC1uICcyLjQuMCAyLjQuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92
ZXI9MTMyMDk2CisrIGVjaG8gMi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50
KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgor
ICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisg
J1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAt
eiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBr
dmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVy
CisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57
RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9
MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQx
KjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdb
JyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0
dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNuZF9lbnMxMzcwCisrIEdldDI2
TW9kdWxlc0ZpbGUKKysgYXdrIC12IG1vZHVsZT1zbmRfZW5zMTM3MCAnCmZ1bmN0aW9uIGZpbmRf
cmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2Rd
CiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAg
aWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAg
ICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydCht
b2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAg
ICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAg
aWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAg
ICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxl
cykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAg
ICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAg
ICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAg
IH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAh
PSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0g
MQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0
ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAg
ICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBncmVwIC1xICdeMlwuNFwu
JyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9
CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10n
CisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2
ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAt
biAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAor
KyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAw
KSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMx
IC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisg
bG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBzbmRfZW5zMTM3MQorKyBHZXQyNk1vZHVsZXNG
aWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3
ayAtdiBtb2R1bGU9c25kX2VuczEzNzEgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyht
b2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1tt
b2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBj
b250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVz
W2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ld
KQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewog
ICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAK
ICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09
ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9k
dWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAg
ICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAg
c3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lO
IHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9
ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlm
IChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxl
KSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1v
ZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAt
eiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zlcgor
IHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRt
b2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5W
ZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYz
MQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4w
IDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJp
bnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAy
LjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4
MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMy
NjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRl
cHMKKysgRmluZE1vZHVsZURlcHMgc25kX21hZXN0cm8zCisrIEdldDI2TW9kdWxlc0ZpbGUKKysg
Z3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1v
ZHVsZT1zbmRfbWFlc3RybzMgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGks
IGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBh
LCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51
ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1d
ID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAg
ICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hh
bmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAg
ICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7
CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tp
XQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAg
ICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIs
ImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
IGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAg
IGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAg
ICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZl
X21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1
dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMp
CiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAn
XScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9t
b2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4K
KyBtb2Q9c25kX2J0X3NjbworIHVzZV9tb2RfdmVyPTEKKyAnWycgLW4gJzAuMAkxLjE4JyAnXScK
KyAnWycgLXogMSAnXScKKyBsb2NhbCBtb2R2ZXIKKysgbW9kaW5mbyBzbmRfYnRfc2NvCisrIHNl
ZCAtZSAncy9edmVyc2lvbjpbIFx0XVwrW14wLTldKlwoLipcKSQvXDEvO3Q7ZCcKKysgYXdrICdC
RUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbW9k
dmVyPQorIHZlY2hvIDMgJ01vZHVsZSB2ZXJzaW9uIGZvciBzbmRfYnRfc2NvIGlzICcKKyBsb2Nh
bCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAzIC1sZSA0ICddJworIGVj
aG8gTW9kdWxlIHZlcnNpb24gZm9yIHNuZF9idF9zY28gaXMKKyAnWycgLW4gJycgJ10nCisgbG9j
YWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBzbmRfYnRfc2NvCisrIEdldDI2TW9kdWxlc0ZpbGUK
KysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12
IG1vZHVsZT1zbmRfYnRfc2NvICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBp
LCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwg
YSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGlu
dWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ld
XSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAg
ICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNo
YW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAg
ICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikg
ewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNb
aV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAg
ICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1Yigi
LCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg
ICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAg
ICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAog
ICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2
ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBw
dXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVz
KQogICAgfQp9CiAgICAnCk1vZHVsZSB2ZXJzaW9uIGZvciBzbmRfYnRfc2NvIGlzCisrIGNhdCAv
cHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisg
bG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJz
CisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTkn
ICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYu
OTkKKyBsb2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBs
b2NhbCBtYXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisr
IGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9
JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisg
c2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3
MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGVuMTM3MAor
KyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwv
b3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9ZW4xMzcwICcKZnVuY3Rpb24gZmluZF9yZWxhdGVk
X21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNw
bGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtp
XSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAg
ICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21v
ZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMs
IGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNo
YW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9k
dWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAg
ZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAg
ICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAg
ICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAg
fQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikg
ZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVO
RCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0
b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVw
cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAn
XScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisg
a3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1sn
IC1uICcyLjYuMCAyLjYuOTknICddJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgk
MSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjYuMAorIG1pbl92ZXI9MTMyNjA4
CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAw
MDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2
MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAK
KyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGVuMTM3MQorKyBHZXQyNk1vZHVsZXNGaWxl
CisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAt
diBtb2R1bGU9ZW4xMzcxICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBh
KSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwg
IiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUK
ICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9
IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAg
ICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5n
ZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAg
Zm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewog
ICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0K
ICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAg
c3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJp
IiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBj
aGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBo
YXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAg
aWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9t
b2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRz
IHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQog
ICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10n
CisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9k
X3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisg
J1snIC1uICcyLjYuMAkyLjYuOCcgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFu
Z2UgMTMyNjMxIDIuNi4wIDIuNi44CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQK
KyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjgnICdd
JworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDAp
KyQzfScKKysgZWNobyAyLjYuMAorIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42LjgKKysgYXdr
ICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisg
bWF4X3Zlcj0xMzI2MTYKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdb
JyAxMzI2MzEgLWxlIDEzMjYxNiAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDEKKyBjb250
aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQor
IHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4g
JzIuNi4wCTIuNi45OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMy
NjMxIDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9j
YWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisr
IGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkr
KCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdC
RUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4
X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAx
MzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVs
ZURlcHMgdmlhX3JoaW5lCisrIGF3ayAtdiBtb2R1bGU9dmlhX3JoaW5lICcKZnVuY3Rpb24gZmlu
ZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21v
ZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAg
ICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsK
ICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9y
ZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0
KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewog
ICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAg
ICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAg
ICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1
bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQog
ICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAg
ICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0
ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUg
PSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkK
ICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0
IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUK
KyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZl
cnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4xMAkyLjYu
OTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMTAg
Mi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVy
CisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjEwIDIuNi45OScgJ10nCisrIGVjaG8gMi42
LjEwCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEw
MCkrJDN9JworIG1pbl92ZXI9MTMyNjE4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9
IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMy
NzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYxOCAnXScKKyAnWycgMTMyNjMxIC1s
ZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGk4
MDQyCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tl
cm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1pODA0MiAnCmZ1bmN0aW9uIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAg
ICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYg
KGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAg
ICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1
bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAg
ICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYg
KG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAg
ICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykg
ewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0K
ICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAi
LSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9
CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAg
ICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcwor
IGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXog
JycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3Zl
cgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3Zlcgor
ICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZT
PSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEz
MjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSow
eDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycg
MTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVy
biAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBpbnRlbF9tY2hfYWdwCisrIEdldDI2
TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVh
c2UKKysgYXdrIC12IG1vZHVsZT1pbnRlbF9tY2hfYWdwICcKZnVuY3Rpb24gZmluZF9yZWxhdGVk
X21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNw
bGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtp
XSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAg
ICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21v
ZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMs
IGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNo
YW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9k
dWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAg
ZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAg
ICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAg
ICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAg
fQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikg
ZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVO
RCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0
b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVw
cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTQnICddJworICdbJyAteiAnJyAn
XScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuMTQKKyBsb2NhbCBrdmVyCisg
a3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1sn
IC1uICcyLjYuMCAyLjYuMTQnICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9Ilte
MC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4
CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAw
MDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjIyCisgc2hpZnQgMgorICdbJyAxMzI2
MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MjIgJ10nCisgJ1snIC1uICcn
ICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisg
Y2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92
ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2Fz
ZSAkbW9kIGluCisgJ1snIC1uICcyLjYuOQkyLjYuMjInICddJworICdbJyAteiAnJyAnXScKKyBJ
c0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuOSAyLjYuMjIKKyBsb2NhbCBrdmVyCisga3Zlcj0x
MzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcy
LjYuOSAyLjYuMjInICddJworKyBlY2hvIDIuNi45CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9
e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjE3CisrIGVj
aG8gMi42LjIyCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjMwCisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdl
IDEzMjYxNyAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MzAgJ10nCisgJ1snIC1uICcnICddJwor
IHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIK
KyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAk
bW9kIGluCisgJ1snIC1uICcyLjYuMTIJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJ
blZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjEyIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEz
MjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIu
Ni4xMiAyLjYuOTknICddJworKyBlY2hvIDIuNi4xMgorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0i
fXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYyMAorKyBl
Y2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSso
JDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1n
ZSAxMzI2MjAgJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9j
YWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBzcGVlZHN0ZXBfc21pCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgYXdrIC12IG1vZHVsZT1zcGVlZHN0ZXBfc21pICcKZnVuY3Rpb24gZmluZF9yZWxhdGVk
X21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNw
bGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtp
XSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAg
ICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21v
ZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMs
IGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNo
YW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9k
dWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAg
ZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAg
ICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAg
ICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAg
fQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikg
ZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVO
RCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0
b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9j
L3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycg
LXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIK
KyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAk
bW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1
c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9k
IGluCisgbW9kPW5kaXN3cmFwcGVyCisgdXNlX21vZF92ZXI9MQorICdbJyAtbiAnMC4xMCAgICAw
LjExJyAnXScKKyAnWycgLXogMSAnXScKKyBsb2NhbCBtb2R2ZXIKKysgbW9kaW5mbyBuZGlzd3Jh
cHBlcgorKyBzZWQgLWUgJ3MvXnZlcnNpb246WyBcdF1cK1teMC05XSpcKC4qXCkkL1wxLzt0O2Qn
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkr
JDN9JworIG1vZHZlcj0KKyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBmb3IgbmRpc3dyYXBwZXIg
aXMgJworIGxvY2FsIHYKKyB2PTMKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDMgLWxl
IDQgJ10nCisgZWNobyBNb2R1bGUgdmVyc2lvbiBmb3IgbmRpc3dyYXBwZXIgaXMKKyAnWycgLW4g
JycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBuZGlzd3JhcHBlcgorKyBHZXQy
Nk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxl
YXNlCisrIGF3ayAtdiBtb2R1bGU9bmRpc3dyYXBwZXIgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3Bs
aXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ld
ID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAg
ICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywg
aSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hh
bmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1
bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBk
ZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAg
ICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9
Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBk
ZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5E
IHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVs
ZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRv
cF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKTW9kdWxlIHZlcnNpb24gZm9yIG5kaXN3cmFw
cGVyIGlzCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29u
dGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0K
KyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGlu
dWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyBy
ZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUK
KyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFk
IG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICdd
JworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgYXRoX3BjaQorKyBhd2sgLXYgbW9kdWxl
PWF0aF9wY2kgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAg
IG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAg
ICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAg
IGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1th
W2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAg
IH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEK
ICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBp
biBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAg
ICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAg
ICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4i
aSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIs
IiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQg
PSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9k
dWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEg
PT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9
PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0
cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0K
ICAgICcKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMv
a2VybmVsL29zcmVsZWFzZQorKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcn
ICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
IGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92
ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdb
JyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGlwdzM5NDUKKysgR2V0
MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVs
ZWFzZQorKyBhd2sgLXYgbW9kdWxlPWlwdzM5NDUgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQo
ZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09
ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBt
b2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwg
aikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdl
ZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVz
W2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxl
dGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAg
ICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0K
CkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBz
WyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsK
ICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMo
bW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9z
b3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQor
ICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9k
X3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBj
YXNlICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zl
cgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNl
ICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3Zlcgor
IHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRt
b2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBpd2wz
OTQ1CisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tl
cm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1pd2wzOTQ1ICcKZnVuY3Rpb24gZmluZF9y
ZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0K
ICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBp
ZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAg
ICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxh
dGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1v
ZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAg
ICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBp
ZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAg
ICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVz
KSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAg
ICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAg
fQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9
ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAx
Cn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAg
ICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVz
CisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmlu
ZE1vZHVsZURlcHMgbWFjODAyMTEKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBhd2sgLXYgbW9kdWxl
PW1hYzgwMjExICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAg
ICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQog
ICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAg
ICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNb
YVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAg
ICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAx
CiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkg
aW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAg
ICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAg
ICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJe
ImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAi
LCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2Vk
ID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21v
ZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQx
ID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUg
PT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3Vs
dHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9
CiAgICAnCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisr
IGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0
cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1v
ZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJwor
IGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc2t5MgorKyBhd2sgLXYgbW9kdWxlPXNreTIg
JwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNb
bW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkg
aW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9k
dWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAg
ICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVu
Y3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxl
IChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVz
KSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBw
cmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAg
Zm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIs
IG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxl
c1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAg
ICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9
Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxl
KSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAg
ICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJt
b2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysg
R2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29z
cmVsZWFzZQorKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAxIC1uZSAwICddJworICdbJyAteiAnJyAnXScKKyBicmVh
aworICdbJyAteiAnJyAnXScKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisg
J1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVu
ZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0
cigiOTRGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz05NAorICdb
JyAtbiA5NCAnXScKKyBDSEFJTl9VUF9UTz05NAorIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgdmVj
aG8gMSAnaGliZXJuYXRlOiBbOTRdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisg
bG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScK
KyBlY2hvIGhpYmVybmF0ZTogJ1s5NF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgor
ICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJT
UExBU0hfUFJPR1JFU1M9NjU1MzAKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyA2NTUzMFxu
cmVwYWludFxuJwpoaWJlcm5hdGU6IFs5NF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4u
CisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJwor
ICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBu
ZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjk1WEhhY2tzU3VzcGVu
ZEhvb2syIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz05NQorICdbJyAtbiA5NSAnXScKKyBD
SEFJTl9VUF9UTz05NQorIGJpdD1YSGFja3NTdXNwZW5kSG9vazIKKyB2ZWNobyAxICdoaWJlcm5h
dGU6IFs5NV0gRXhlY3V0aW5nIFhIYWNrc1N1c3BlbmRIb29rMiAuLi4gJworIGxvY2FsIHYKKyB2
PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJl
cm5hdGU6ICdbOTVdJyBFeGVjdXRpbmcgWEhhY2tzU3VzcGVuZEhvb2syIC4uLgorICdbJyAtbiAn
JyAnXScKKyBYSGFja3NTdXNwZW5kSG9vazIKKyAnWycgLXogMSAnXScKKyByZXR1cm4gMAorIHJl
dD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJwor
IGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTwor
KyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOTdDaGFuZ2VUb1N3c3VzcFZUIiwgMSwgMil9Jwpo
aWJlcm5hdGU6IFs5NV0gRXhlY3V0aW5nIFhIYWNrc1N1c3BlbmRIb29rMiAuLi4KKyBuZXdfQ0hB
SU5fVVBfVE89OTcKKyAnWycgLW4gOTcgJ10nCisgQ0hBSU5fVVBfVE89OTcKKyBiaXQ9Q2hhbmdl
VG9Td3N1c3BWVAorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzk3XSBFeGVjdXRpbmcgQ2hhbmdlVG9T
d3N1c3BWVCAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisg
J1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTddJyBFeGVjdXRpbmcgQ2hhbmdl
VG9Td3N1c3BWVCAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2hhbmdlVG9Td3N1c3BWVAorICdbJyAt
biAnJyAnXScKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0
IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJwor
IGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOThDaGVj
a1J1bmxldmVsIiwgMSwgMil9JwpoaWJlcm5hdGU6IFs5N10gRXhlY3V0aW5nIENoYW5nZVRvU3dz
dXNwVlQgLi4uCisgbmV3X0NIQUlOX1VQX1RPPTk4CisgJ1snIC1uIDk4ICddJworIENIQUlOX1VQ
X1RPPTk4CisgYml0PUNoZWNrUnVubGV2ZWwKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5OF0gRXhl
Y3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycg
eCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzk4XScgRXhl
Y3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uCmhpYmVybmF0ZTogWzk4XSBFeGVjdXRpbmcgQ2hlY2tS
dW5sZXZlbCAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2hlY2tSdW5sZXZlbAorICdbJyAteiAzICdd
JworIGNhc2UgIiR7UlVOTEVWRUx9IiBpbgorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2Ug
MiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNv
cnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJp
bnQgc3Vic3RyKCI5OEZ1bGxTcGVlZENQVVN1c3BlbmQiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQ
X1RPPTk4CisgJ1snIC1uIDk4ICddJworIENIQUlOX1VQX1RPPTk4CisgYml0PUZ1bGxTcGVlZENQ
VVN1c3BlbmQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5OF0gRXhlY3V0aW5nIEZ1bGxTcGVlZENQ
VVN1c3BlbmQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzk4XScgRXhlY3V0aW5nIEZ1bGxT
cGVlZENQVVN1c3BlbmQgLi4uCmhpYmVybmF0ZTogWzk4XSBFeGVjdXRpbmcgRnVsbFNwZWVkQ1BV
U3VzcGVuZCAuLi4KKyAnWycgLW4gJycgJ10nCisgRnVsbFNwZWVkQ1BVU3VzcGVuZAorIGxvY2Fs
IGNwdQorKyBta3RlbXAgL3RtcC90bXAuaGliZXJuYXRlLlhYWFhYWAorIEhXX0ZVTExTUEVFRENQ
VV9SRVNUT1JFUj0vdG1wL3RtcC5oaWJlcm5hdGUuNEdtU01nCisgZm9yIGNwdSBpbiAnL3N5cy9k
ZXZpY2VzL3N5c3RlbS9jcHUvKi9jcHVmcmVxJworIGxvY2FsIGNwdW51bSBtaW5fZnJlcSBzZXRz
cGVlZCBnb3Zlcm5vciBpCisgJ1snIC1kIC9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1L2NwdTAvY3B1
ZnJlcSAnXScKKyBjcHVudW09MC9jcHVmcmVxCisgY3B1bnVtPTAKKyBJc0FOdW1iZXIgMAorIGNh
c2UgIiQxIiBpbgorIHJldHVybiAwCisgZXZhbCAnZG9uZV90aGlzPSRod19jcHVfMF9kb25lJwor
KyBkb25lX3RoaXM9CisgJ1snIHggPSB4Y3B1ZG9uZSAnXScKKysgY2F0IC9zeXMvZGV2aWNlcy9z
eXN0ZW0vY3B1L2NwdTAvY3B1ZnJlcS9hZmZlY3RlZF9jcHVzCisgZm9yIGkgaW4gJ2BjYXQgJGNw
dS9hZmZlY3RlZF9jcHVzIDI+L2Rldi9udWxsYCcKKyBJc0FOdW1iZXIgMAorIGNhc2UgIiQxIiBp
bgorIHJldHVybiAwCisgZXZhbCBod19jcHVfMF9kb25lPWNwdWRvbmUKKysgaHdfY3B1XzBfZG9u
ZT1jcHVkb25lCisrIGNhdCAvc3lzL2RldmljZXMvc3lzdGVtL2NwdS9jcHUwL2NwdWZyZXEvc2Nh
bGluZ19tYXhfZnJlcQorIG1heF9mcmVxPTE3MzMwMDAKKysgY2F0IC9zeXMvZGV2aWNlcy9zeXN0
ZW0vY3B1L2NwdTAvY3B1ZnJlcS9zY2FsaW5nX21pbl9mcmVxCisgbWluX2ZyZXE9ODAwMDAwCisg
J1snIC1mIC9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1L2NwdTAvY3B1ZnJlcS9zY2FsaW5nX3NldHNw
ZWVkICddJworKyBjYXQgL3N5cy9kZXZpY2VzL3N5c3RlbS9jcHUvY3B1MC9jcHVmcmVxL3NjYWxp
bmdfZ292ZXJub3IKKyBnb3Zlcm5vcj1wZXJmb3JtYW5jZQorIGNhdAorIGdyZXAgLXEgcGVyZm9y
bWFuY2UgL3N5cy9kZXZpY2VzL3N5c3RlbS9jcHUvY3B1MC9jcHVmcmVxL3NjYWxpbmdfYXZhaWxh
YmxlX2dvdmVybm9ycworIGVjaG8gcGVyZm9ybWFuY2UKKyBlY2hvIDE3MzMwMDAKKyB2ZWNobyAy
ICdTd2l0Y2hlZCB0byBwZXJmb3JtYW5jZSwgd2l0aCBtaW4gZnJlcSBhdCAxNzMzMDAwJworIGxv
Y2FsIHYKKyB2PTIKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDIgLWxlIDQgJ10nCisg
ZWNobyBTd2l0Y2hlZCB0byBwZXJmb3JtYW5jZSwgd2l0aCBtaW4gZnJlcSBhdCAxNzMzMDAwCisg
cmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdb
JyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdf
Q0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjk4U3dzdXNwMkNvbmZpZ1Nl
dCIsIDEsIDIpfScKU3dpdGNoZWQgdG8gcGVyZm9ybWFuY2UsIHdpdGggbWluIGZyZXEgYXQgMTcz
MzAwMAorIG5ld19DSEFJTl9VUF9UTz05OAorICdbJyAtbiA5OCAnXScKKyBDSEFJTl9VUF9UTz05
OAorIGJpdD1Td3N1c3AyQ29uZmlnU2V0CisgdmVjaG8gMSAnaGliZXJuYXRlOiBbOThdIEV4ZWN1
dGluZyBTd3N1c3AyQ29uZmlnU2V0IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5OF0nIEV4
ZWN1dGluZyBTd3N1c3AyQ29uZmlnU2V0IC4uLgorICdbJyAtbiAnJyAnXScKKyBTd3N1c3AyQ29u
ZmlnU2V0CisgJ1snIC1uICcnICddJworICdbJyAtbiAnJyAnXScKKyAnWycgeCA9IHhub2NhY2hl
ICddJworICdbJyAtbiAnJyAnXScKKyAnWycgLW4gMCAnXScKKyAnWycgLWYgL3N5cy9wb3dlci90
dXhvbmljZS9yZWJvb3QgJ10nCisgZWNobyAwCisgJ1snIC1uIDEgJ10nCisgJ1snIC1mIC9zeXMv
cG93ZXIvdHV4b25pY2UvdXNlcl9pbnRlcmZhY2UvZW5hYmxlX2VzY2FwZSAnXScKKyBlY2hvIDEK
KyAnWycgLW4gMSAnXScKKyAnWycgLWYgL3N5cy9wb3dlci90dXhvbmljZS91c2VyX2ludGVyZmFj
ZS9kZWZhdWx0X2NvbnNvbGVfbGV2ZWwgJ10nCisgZWNobyAxCisgJ1snIC1uICcnICddJworICdb
JyAtbiAnJyAnXScKKyAnWycgLW4gJycgJ10nCisgJ1snIC1uICcnICddJworIFN3c3VzcDJTZXR1
cENyeXB0b0FQSQorIFN3c3VzcElzQXRMZWFzdFZlcnNpb24gMzM2MjIyNzcKaGliZXJuYXRlOiBb
OThdIEV4ZWN1dGluZyBTd3N1c3AyQ29uZmlnU2V0IC4uLgorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoxNjc3NzIxNikrKCQyKjY1NTM2KSsoJDMqMjU2KSskNH0nIC9zeXMvcG93
ZXIvdHV4b25pY2UvdmVyc2lvbgorIHZlcj01MDMzMTY0OAorICdbJyA1MDMzMTY0OCAtZ2UgMzM2
MjIyNzcgJ10nCisgcmV0dXJuIDAKKyBTV1NVU1BfTU9EVUxFU19MT0FERUQ9CisgJ1snIC1uIGx6
ZiAnXScKKyAnWycgbHpmICchPScgbm9uZSAnXScKKyBncmVwIC1xICdebmFtZS4qOiBsemYkJyAv
cHJvYy9jcnlwdG8KKyAnWycgbHpmICchPScgbm9uZSAnXScKKyBjb21wcmVzc2lvbl9hbGdvcml0
aG09bHpmCisgZGlzYWJsZV92YWx1ZT0wCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvY29t
cHJlc3Npb24vZGlzYWJsZV9jb21wcmVzc2lvbiAnXScKKyAnWycgLWYgL3N5cy9wb3dlci90dXhv
bmljZS9jb21wcmVzc2lvbi9lbmFibGVkICddJworIGVjaG8gMQorICdbJyAtZiAvc3lzL3Bvd2Vy
L3R1eG9uaWNlL2NvbXByZXNzaW9uL2NvbXByZXNzb3IgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIv
dHV4b25pY2UvY29tcHJlc3Npb24vYWxnb3JpdGhtICddJworIGVjaG8gbHpmCisgJ1snIC1uIG5v
bmUgJ10nCisgJ1snIG5vbmUgJyE9JyBub25lICddJworICdbJyBub25lICchPScgbm9uZSAnXScK
KyBlbmNyeXB0aW9uX2FsZ29yaXRobT0KKyBkaXNhYmxlX3ZhbHVlPTEKKyAnWycgLWYgL3N5cy9w
b3dlci90dXhvbmljZS9kaXNhYmxlX2VuY3J5cHRpb24gJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIv
dHV4b25pY2UvZW5hYmxlZCAnXScKKyAnWycgLWYgL3N5cy9wb3dlci90dXhvbmljZS9lbmNyeXB0
b3IgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvYWxnb3JpdGhtICddJworICdbJyAt
biAvdG1wL3RtcC5oaWJlcm5hdGUuZHphZ0NKICddJworICdbJyAtZiAvdG1wL3RtcC5oaWJlcm5h
dGUuZHphZ0NKICddJworIC4gL3RtcC90bXAuaGliZXJuYXRlLmR6YWdDSgorKyBlY2hvIC9zYmlu
L3R1eG9uaWNldWlfZmJzcGxhc2gKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10n
CisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3Vz
cGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1
YnN0cigiOTlEb1N3c3VzcDIiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTk5CisgJ1snIC1u
IDk5ICddJworIENIQUlOX1VQX1RPPTk5CisgYml0PURvU3dzdXNwMgorIHZlY2hvIDEgJ2hpYmVy
bmF0ZTogWzk5XSBFeGVjdXRpbmcgRG9Td3N1c3AyIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNo
aWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTog
J1s5OV0nIEV4ZWN1dGluZyBEb1N3c3VzcDIgLi4uCisgJ1snIC1uICcnICddJworIERvU3dzdXNw
MgorIGxvY2FsIGVycm9yCisgJ1snIC1uICcnICddJworICdbJyAteiAnJyAnXScKKyB2ZWNobyAx
ICdoaWJlcm5hdGU6IEFjdGl2YXRpbmcgc3VzcGVuZCAuLi4nCisgbG9jYWwgdgorIHY9MQorIHNo
aWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTog
QWN0aXZhdGluZyBzdXNwZW5kIC4uLgorIFNhdmVEbWVzZworKyBta3RlbXAgL3RtcC90bXAuaGli
ZXJuYXRlLlhYWFhYWApoaWJlcm5hdGU6IFs5OV0gRXhlY3V0aW5nIERvU3dzdXNwMiAuLi4KaGli
ZXJuYXRlOiBBY3RpdmF0aW5nIHN1c3BlbmQgLi4uCisgRE1FU0dfT1JJRz0vdG1wL3RtcC5oaWJl
cm5hdGUuQ0EydFNpCisgZG1lc2cKKyByZXR1cm4gMAorKyBEb1N1c3BlbmQKKysgJ1snIC1mIC9z
eXMvcG93ZXIvdHV4b25pY2UvZG9faGliZXJuYXRlICddJworKyBlY2hvCisrIHJlYWQgUkVQTFkK
KysgZWNobyAwCisrIHJldHVybiAwCisgZXJyb3I9MAorICdbJyAtbiAwICddJworICdbJyAwIC1u
ZSAwICddJworIFByaW50RXJyb3JzIDAKKyBsb2NhbCBjb2RlIGJpdF9udW0KKyBjb2RlPTAKKyAn
WycgLW4gMCAnXScKKyAnWycgMCAtZXEgMCAnXScKKyByZXR1cm4gMAorICdbJyAtbiAnJyAnXScK
KyBDbGVhbnVwRG1lc2cKKyAnWycgLW4gL3RtcC90bXAuaGliZXJuYXRlLkNBMnRTaSAnXScKKyBy
bSAtZiAvdG1wL3RtcC5oaWJlcm5hdGUuQ0EydFNpCisgcmV0dXJuIDAKKyAnWycgLWYgL3N5cy9w
b3dlci90dXhvbmljZS9mcmVlemVyX3Rlc3QgJ10nCisgZWNobyAwCisgJ1snIC1uICcnICddJwor
IHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAn
WycgLW4gJycgJ10nCisrIFNvcnRSZXN1bWVCaXRzCisrIHNvcnQgLXJuCisrIC9iaW4vZWNobyAt
bmUgJzE5TG9naW5QaWRnaW5cbjMwU2VydmljZXNTdGFydFxuOTBNb2R1bGVzTG9hZFxuODVYSGFj
a3NSZXN1bWVIb29rMlxuMTFYSGFja3NSZXN1bWVIb29rMVxuMTJGQlNwbGFzaE9mZlxuMTVGQlNw
bGFzaFByb2dyZXNzXG4yMEZCU3BsYXNoUHJvZ3Jlc3NcbjMwRkJTcGxhc2hQcm9ncmVzc1xuNDBG
QlNwbGFzaFByb2dyZXNzXG41MEZCU3BsYXNoUHJvZ3Jlc3NcbjYwRkJTcGxhc2hQcm9ncmVzc1xu
NzBGQlNwbGFzaFByb2dyZXNzXG44MEZCU3BsYXNoUHJvZ3Jlc3NcbjkwRkJTcGxhc2hQcm9ncmVz
c1xuOTVGQlNwbGFzaFN0YXJ0UmVzdW1lXG43MENsb2NrUmVzdG9yZVxuOThGdWxsU3BlZWRDUFVS
ZXN1bWVcbjAwUmVtb3ZlU3dzdXNwUHJvY0NydWZ0XG4xMVN3c3VzcDJDbGVhbnVwRmlsZXdyaXRl
clxuNzBDbG9ja1Jlc3RvcmVcbjk3Q2hhbmdlRnJvbVN3c3VzcFZUXG41OVJlbW91bnRYRlNCb290
Uldcbjg5UmVzdG9yZUtlcm5lbE1vZHByb2JlXG4wMU5vdGVMYXN0UmVzdW1lXG4wMUxvY2tGaWxl
UHV0XG4nCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmlu
dCBzdWJzdHIoIjk4RnVsbFNwZWVkQ1BVUmVzdW1lIiwgMSwgMil9JworIFRISVNfUE9TPTk4Cisg
J1snIC16IDk4ICddJworIGJpdD1GdWxsU3BlZWRDUFVSZXN1bWUKKyAnWycgOTggLWd0IDk5ICdd
JworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzk4XSBFeGVjdXRpbmcgRnVsbFNwZWVkQ1BVUmVzdW1l
IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAt
bGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5OF0nIEV4ZWN1dGluZyBGdWxsU3BlZWRDUFVS
ZXN1bWUgLi4uCmhpYmVybmF0ZTogWzk4XSBFeGVjdXRpbmcgRnVsbFNwZWVkQ1BVUmVzdW1lIC4u
LgorICdbJyAtbiAnJyAnXScKKyBGdWxsU3BlZWRDUFVSZXN1bWUKKyAnWycgLWYgL3RtcC90bXAu
aGliZXJuYXRlLjRHbVNNZyAnXScKKyAuIC90bXAvdG1wLmhpYmVybmF0ZS40R21TTWcKKysgZWNo
byA4MDAwMDAKKysgZWNobyBwZXJmb3JtYW5jZQorKyAnWycgLWYgL3N5cy9kZXZpY2VzL3N5c3Rl
bS9jcHUvY3B1MC9jcHVmcmVxL3NjYWxpbmdfc2V0c3BlZWQgJ10nCisgcm0gLWYgL3RtcC90bXAu
aGliZXJuYXRlLjRHbVNNZworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRz
YCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjk3Q2hhbmdlRnJvbVN3c3VzcFZUIiwgMSwg
Mil9JworIFRISVNfUE9TPTk3CisgJ1snIC16IDk3ICddJworIGJpdD1DaGFuZ2VGcm9tU3dzdXNw
VlQKKyAnWycgOTcgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzk3XSBFeGVjdXRp
bmcgQ2hhbmdlRnJvbVN3c3VzcFZUIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5N10nIEV4
ZWN1dGluZyBDaGFuZ2VGcm9tU3dzdXNwVlQgLi4uCmhpYmVybmF0ZTogWzk3XSBFeGVjdXRpbmcg
Q2hhbmdlRnJvbVN3c3VzcFZUIC4uLgorICdbJyAtbiAnJyAnXScKKyBDaGFuZ2VGcm9tU3dzdXNw
VlQKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOTVGQlNwbGFzaFN0YXJ0UmVzdW1lIiwg
MSwgMil9JworIFRISVNfUE9TPTk1CisgJ1snIC16IDk1ICddJworIGJpdD1GQlNwbGFzaFN0YXJ0
UmVzdW1lCisgJ1snIDk1IC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5NV0gRXhl
Y3V0aW5nIEZCU3BsYXNoU3RhcnRSZXN1bWUgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQK
KyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzk1
XScgRXhlY3V0aW5nIEZCU3BsYXNoU3RhcnRSZXN1bWUgLi4uCmhpYmVybmF0ZTogWzk1XSBFeGVj
dXRpbmcgRkJTcGxhc2hTdGFydFJlc3VtZSAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hT
dGFydFJlc3VtZQorIFRpbWVkRkJTcGxhc2hDdGwgJ3NldCB0dHkgc2lsZW50IDJcbnNldCBtb2Rl
IHNpbGVudFxuc2V0IHRoZW1lIHN1c3BlbmQyXG5yZXBhaW50XG4nCisgVGltZWRGQlNwbGFzaEN0
bCAnc2V0IG1lc3NhZ2UgUmVsb2FkaW5nIGRyaXZlcnMgYW5kIGFwcGxpY2F0aW9ucyAuLi5cbnJl
cGFpbnRcbicKKyBGQlNQTEFTSF9QUk9HUkVTUz0wCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4
MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTY1NTMKKyBUaW1lZEZCU3BsYXNoQ3RsICdw
cm9ncmVzcyA2NTUzXG5yZXBhaW50XG4nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJl
c3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOTBNb2R1bGVzTG9hZCIsIDEs
IDIpfScKKyBUSElTX1BPUz05MAorICdbJyAteiA5MCAnXScKKyBiaXQ9TW9kdWxlc0xvYWQKKyAn
WycgOTAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzkwXSBFeGVjdXRpbmcgTW9k
dWxlc0xvYWQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzkwXScgRXhlY3V0aW5nIE1vZHVs
ZXNMb2FkIC4uLgpoaWJlcm5hdGU6IFs5MF0gRXhlY3V0aW5nIE1vZHVsZXNMb2FkIC4uLgorICdb
JyAtbiAnJyAnXScKKyBNb2R1bGVzTG9hZAorICdbJyAteiAnIGF1dG8nICddJworIENoZWNrTW9k
dWxlU3VwcG9ydAorICdbJyAtZiAvcHJvYy9tb2R1bGVzICddJworIHJldHVybiAwCisgUmVzdG9y
ZUtlcm5lbE1vZHByb2JlCisgJ1snIC1uIC9zYmluL21vZHByb2JlICddJworIGVjaG8gL3NiaW4v
bW9kcHJvYmUKKyB1bnNldCBLRVJORUxfTU9EUFJPQkUKKyAnWycgLW4gJycgJ10nCisgcmV0dXJu
IDAKKyBsb2NhbCBtb2QKKyBmb3IgbW9kIGluICckTU9EX0xPQUQnCisgJ1snIGF1dG8gPSBhdXRv
ICddJworIGNvbnRpbnVlCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNg
JworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOTBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9
JworIFRISVNfUE9TPTkwCisgJ1snIC16IDkwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisg
J1snIDkwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5MF0gRXhlY3V0aW5nIEZC
U3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgx
ICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzkwXScgRXhlY3V0aW5n
IEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzkwXSBFeGVjdXRpbmcgRkJTcGxhc2hQ
cm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9
IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTEzMTA2CisgVGltZWRGQlNwbGFzaEN0bCAncHJv
Z3Jlc3MgMTMxMDZcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVz
dW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI4OVJlc3RvcmVLZXJuZWxNb2Rw
cm9iZSIsIDEsIDIpfScKKyBUSElTX1BPUz04OQorICdbJyAteiA4OSAnXScKKyBiaXQ9UmVzdG9y
ZUtlcm5lbE1vZHByb2JlCisgJ1snIDg5IC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6
IFs4OV0gRXhlY3V0aW5nIFJlc3RvcmVLZXJuZWxNb2Rwcm9iZSAuLi4gJworIGxvY2FsIHYKKyB2
PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJl
cm5hdGU6ICdbODldJyBFeGVjdXRpbmcgUmVzdG9yZUtlcm5lbE1vZHByb2JlIC4uLgpoaWJlcm5h
dGU6IFs4OV0gRXhlY3V0aW5nIFJlc3RvcmVLZXJuZWxNb2Rwcm9iZSAuLi4KKyAnWycgLW4gJycg
J10nCisgUmVzdG9yZUtlcm5lbE1vZHByb2JlCisgJ1snIC1uICcnICddJworICdbJyAtbiAnJyAn
XScKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVH
SU57cHJpbnQgc3Vic3RyKCI4NVhIYWNrc1Jlc3VtZUhvb2syIiwgMSwgMil9JworIFRISVNfUE9T
PTg1CisgJ1snIC16IDg1ICddJworIGJpdD1YSGFja3NSZXN1bWVIb29rMgorICdbJyA4NSAtZ3Qg
OTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbODVdIEV4ZWN1dGluZyBYSGFja3NSZXN1bWVI
b29rMiAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1sn
IDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbODVdJyBFeGVjdXRpbmcgWEhhY2tzUmVz
dW1lSG9vazIgLi4uCmhpYmVybmF0ZTogWzg1XSBFeGVjdXRpbmcgWEhhY2tzUmVzdW1lSG9vazIg
Li4uCisgJ1snIC1uICcnICddJworIFhIYWNrc1Jlc3VtZUhvb2syCisgJ1snIC16IDEgJ10nCisg
cmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3By
aW50IHN1YnN0cigiODBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNfUE9TPTgwCisg
J1snIC16IDgwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDgwIC1ndCA5OSAnXScK
KyB2ZWNobyAxICdoaWJlcm5hdGU6IFs4MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4u
ICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzgwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3Mg
Li4uCmhpYmVybmF0ZTogWzgwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycg
LW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNI
X1BST0dSRVNTPTE5NjU5CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMTk2NTlcbnJlcGFp
bnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAn
QkVHSU57cHJpbnQgc3Vic3RyKCI3MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgVEhJU19Q
T1M9NzAKKyAnWycgLXogNzAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgNzAgLWd0
IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9n
cmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1sn
IDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNzBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQ
cm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbNzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4u
LgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisg
RkJTUExBU0hfUFJPR1JFU1M9MjYyMTIKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyAyNjIx
MlxucmVwYWludFxuJworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcK
KysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjcwQ2xvY2tSZXN0b3JlIiwgMSwgMil9JworIFRI
SVNfUE9TPTcwCisgJ1snIC16IDcwICddJworIGJpdD1DbG9ja1Jlc3RvcmUKKyAnWycgNzAgLWd0
IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tSZXN0b3Jl
IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAt
bGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s3MF0nIEV4ZWN1dGluZyBDbG9ja1Jlc3RvcmUg
Li4uCmhpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tSZXN0b3JlIC4uLgorICdbJyAtbiAn
JyAnXScKKyBDbG9ja1Jlc3RvcmUKKyBjYXNlICIkRElTVFJJQlVUSU9OIiBpbgorIC9zYmluL2h3
Y2xvY2sgLS1oY3Rvc3lzCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdC
RUdJTntwcmludCBzdWJzdHIoIjcwQ2xvY2tSZXN0b3JlIiwgMSwgMil9JworIFRISVNfUE9TPTcw
CisgJ1snIC16IDcwICddJworIGJpdD1DbG9ja1Jlc3RvcmUKKyAnWycgNzAgLWd0IDk5ICddJwor
IHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tSZXN0b3JlIC4uLiAnCisg
bG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScK
KyBlY2hvIGhpYmVybmF0ZTogJ1s3MF0nIEV4ZWN1dGluZyBDbG9ja1Jlc3RvcmUgLi4uCmhpYmVy
bmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tSZXN0b3JlIC4uLgorICdbJyAtbiAnJyAnXScKKyBD
bG9ja1Jlc3RvcmUKKyBjYXNlICIkRElTVFJJQlVUSU9OIiBpbgorIC9zYmluL2h3Y2xvY2sgLS1o
Y3Rvc3lzCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmlu
dCBzdWJzdHIoIjYwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBUSElTX1BPUz02MAorICdb
JyAteiA2MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyA2MCAtZ3QgOTkgJ10nCisg
dmVjaG8gMSAnaGliZXJuYXRlOiBbNjBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAn
CisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAn
XScKKyBlY2hvIGhpYmVybmF0ZTogJ1s2MF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4u
LgpoaWJlcm5hdGU6IFs2MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1u
ICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9Q
Uk9HUkVTUz0zMjc2NQorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDMyNzY1XG5yZXBhaW50
XG4nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JF
R0lOe3ByaW50IHN1YnN0cigiNTlSZW1vdW50WEZTQm9vdFJXIiwgMSwgMil9JworIFRISVNfUE9T
PTU5CisgJ1snIC16IDU5ICddJworIGJpdD1SZW1vdW50WEZTQm9vdFJXCisgJ1snIDU5IC1ndCA5
OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs1OV0gRXhlY3V0aW5nIFJlbW91bnRYRlNCb290
UlcgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAx
IC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzU5XScgRXhlY3V0aW5nIFJlbW91bnRYRlNC
b290UlcgLi4uCmhpYmVybmF0ZTogWzU5XSBFeGVjdXRpbmcgUmVtb3VudFhGU0Jvb3RSVyAuLi4K
KyAnWycgLW4gJycgJ10nCisgUmVtb3VudFhGU0Jvb3RSVworICdbJyAnJyA9IDEgJ10nCisgZm9y
IGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjUw
RkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBUSElTX1BPUz01MAorICdbJyAteiA1MCAnXScK
KyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyA1MCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGli
ZXJuYXRlOiBbNTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgor
IHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhp
YmVybmF0ZTogJ1s1MF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6
IFs1MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZC
U3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0zOTMx
OAorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDM5MzE4XG5yZXBhaW50XG4nCisgcmV0dXJu
IDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1
YnN0cigiNDBGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNfUE9TPTQwCisgJ1snIC16
IDQwICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDQwIC1ndCA5OSAnXScKKyB2ZWNo
byAxICdoaWJlcm5hdGU6IFs0MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBs
b2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJwor
IGVjaG8gaGliZXJuYXRlOiAnWzQwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhp
YmVybmF0ZTogWzQwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycg
J10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dS
RVNTPTQ1ODcxCisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNDU4NzFcbnJlcGFpbnRcbicK
KyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57
cHJpbnQgc3Vic3RyKCIzMFNlcnZpY2VzU3RhcnQiLCAxLCAyKX0nCisgVEhJU19QT1M9MzAKKyAn
WycgLXogMzAgJ10nCisgYml0PVNlcnZpY2VzU3RhcnQKKyAnWycgMzAgLWd0IDk5ICddJworIHZl
Y2hvIDEgJ2hpYmVybmF0ZTogWzMwXSBFeGVjdXRpbmcgU2VydmljZXNTdGFydCAuLi4gJworIGxv
Y2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisg
ZWNobyBoaWJlcm5hdGU6ICdbMzBdJyBFeGVjdXRpbmcgU2VydmljZXNTdGFydCAuLi4KaGliZXJu
YXRlOiBbMzBdIEV4ZWN1dGluZyBTZXJ2aWNlc1N0YXJ0IC4uLgorICdbJyAtbiAnJyAnXScKKyBT
ZXJ2aWNlc1N0YXJ0CisgJ1snIC16IDEgJ10nCisgRXhlY3V0ZVNlcnZpY2VzIHN0YXJ0IGxhcHRv
cF9tb2RlCisgbG9jYWwgYWN0aW9uCisgbG9jYWwgc2VydmljZXMKKyBsb2NhbCBzZXJ2aWNlCisg
YWN0aW9uPXN0YXJ0Cisgc2hpZnQKKyBzZXJ2aWNlcz1sYXB0b3BfbW9kZQorIHJldD0wCisgZm9y
IHNlcnZpY2UgaW4gJyRzZXJ2aWNlcycKKyBJbnZva2VSQ0QgbGFwdG9wX21vZGUgc3RhcnQKKyBs
b2NhbCBzZXJ2aWNlIGFjdGlvbiB0bXAgY21kCisgc2VydmljZT1sYXB0b3BfbW9kZQorIGFjdGlv
bj1zdGFydAorICdbJyAteCAvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSAnXScKKyBjbWQ9Jy9ldGMv
aW5pdC5kL2xhcHRvcF9tb2RlIHN0YXJ0JworICdbJyBzdGFydCA9IHN0YXJ0ICddJworKyBlY2hv
ICcvZXRjL2luaXQuZC8uLi9yYzMuZC9LPz9sYXB0b3BfbW9kZScKKyB0bXA9Jy9ldGMvaW5pdC5k
Ly4uL3JjMy5kL0s/P2xhcHRvcF9tb2RlJworICdbJyAteCAnL2V0Yy9pbml0LmQvLi4vcmMzLmQv
Sz8/bGFwdG9wX21vZGUnICddJworIHZlY2hvIDIgJ0V4ZWN1dGluZyAvZXRjL2luaXQuZC9sYXB0
b3BfbW9kZSBzdGFydCcKKyBsb2NhbCB2Cisgdj0yCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAyIC1sZSA0ICddJworIGVjaG8gRXhlY3V0aW5nIC9ldGMvaW5pdC5kL2xhcHRvcF9tb2Rl
IHN0YXJ0CkV4ZWN1dGluZyAvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSBzdGFydAorIC9ldGMvaW5p
dC5kL2xhcHRvcF9tb2RlIHN0YXJ0CiAqIFN0YXJ0aW5nIGxhcHRvcF9tb2RlIC4uLiBbIG9rIF0K
KyAnWycgMCAtbmUgMTAwICddJworIFJFU1RBUlRFRF9TRVJWSUNFUz0nbGFwdG9wX21vZGUgbGFw
dG9wX21vZGUgJworIHJldHVybiAwCisgRXhlY3V0ZVNlcnZpY2VzIHN0YXJ0CisgbG9jYWwgYWN0
aW9uCisgbG9jYWwgc2VydmljZXMKKyBsb2NhbCBzZXJ2aWNlCisgYWN0aW9uPXN0YXJ0Cisgc2hp
ZnQKKyBzZXJ2aWNlcz0KKyByZXQ9MAorIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1
bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjMwRkJTcGxhc2hQcm9ncmVzcyIs
IDEsIDIpfScKKyBUSElTX1BPUz0zMAorICdbJyAteiAzMCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9n
cmVzcworICdbJyAzMCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMzBdIEV4ZWN1
dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1szMF0nIEV4
ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIEZC
U3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAn
WycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz01MjQyNAorIFRpbWVkRkJTcGxhc2hD
dGwgJ3Byb2dyZXNzIDUyNDI0XG5yZXBhaW50XG4nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdg
U29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMjBGQlNwbGFzaFBy
b2dyZXNzIiwgMSwgMil9JworIFRISVNfUE9TPTIwCisgJ1snIC16IDIwICddJworIGJpdD1GQlNw
bGFzaFByb2dyZXNzCisgJ1snIDIwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsy
MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hp
ZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAn
WzIwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzIwXSBFeGVj
dXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9n
cmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTU4OTc3CisgVGltZWRG
QlNwbGFzaEN0bCAncHJvZ3Jlc3MgNTg5NzdcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBi
aXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxOUxv
Z2luUGlkZ2luIiwgMSwgMil9JworIFRISVNfUE9TPTE5CisgJ1snIC16IDE5ICddJworIGJpdD1M
b2dpblBpZGdpbgorICdbJyAxOSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTld
IEV4ZWN1dGluZyBMb2dpblBpZGdpbiAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdb
JyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMTldJyBF
eGVjdXRpbmcgTG9naW5QaWRnaW4gLi4uCmhpYmVybmF0ZTogWzE5XSBFeGVjdXRpbmcgTG9naW5Q
aWRnaW4gLi4uCisgJ1snIC1uICcnICddJworIExvZ2luUGlkZ2luCisgJ1snIHgxICchPScgeDEg
J10nCisgJ1snIHgxICchPScgeDEgJ10nCisgJ1snIC16IC91c3IvYmluL3B1cnBsZS1yZW1vdGUg
J10nCisgJ1snICchJyAteCAvdXNyL2Jpbi9wdXJwbGUtcmVtb3RlICddJworIGxvY2FsIGk9MAor
IDoKKyBsb2NhbCB1c2VyIGRidXNfc2Vzc2lvbl9idXNfYWRkcmVzcyBwaWRnaW5fc3RhdHVzIHB1
cnBsZV9yZW1vdGVfY21kCisrIGV2YWwgJ2VjaG8gJFBJREdJTl9MT0dHRURfT1VUX1NFU1NJT05T
X1VTRVJfMCcKKysrIGVjaG8KKyB1c2VyPQorKyBldmFsICdlY2hvICRQSURHSU5fTE9HR0VEX09V
VF9TRVNTSU9OU19EQlVTXzAnCisrKyBlY2hvCisgZGJ1c19zZXNzaW9uX2J1c19hZGRyZXNzPQor
KyBldmFsICdlY2hvICRQSURHSU5fTE9HR0VEX09VVF9TRVNTSU9OU19TVEFUVVNfMCcKKysrIGVj
aG8KKyBwaWRnaW5fc3RhdHVzPQorKyBleHByIDAgKyAxCisgaT0xCisgJ1snIC16ICcnICddJwor
IGJyZWFrCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sg
J0JFR0lOe3ByaW50IHN1YnN0cigiMTVGQlNwbGFzaFByb2dyZXNzIiwgMSwgMil9JworIFRISVNf
UE9TPTE1CisgJ1snIC16IDE1ICddJworIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgJ1snIDE1IC1n
dCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxNV0gRXhlY3V0aW5nIEZCU3BsYXNoUHJv
Z3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdb
JyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzE1XScgRXhlY3V0aW5nIEZCU3BsYXNo
UHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzE1XSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAu
Li4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJwor
IEZCU1BMQVNIX1BST0dSRVNTPTY1NTMwCisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNjU1
MzBcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxMkZCU3BsYXNoT2ZmIiwgMSwgMil9JworIFRI
SVNfUE9TPTEyCisgJ1snIC16IDEyICddJworIGJpdD1GQlNwbGFzaE9mZgorICdbJyAxMiAtZ3Qg
OTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTJdIEV4ZWN1dGluZyBGQlNwbGFzaE9mZiAu
Li4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxl
IDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMTJdJyBFeGVjdXRpbmcgRkJTcGxhc2hPZmYgLi4u
CmhpYmVybmF0ZTogWzEyXSBFeGVjdXRpbmcgRkJTcGxhc2hPZmYgLi4uCisgJ1snIC1uICcnICdd
JworIEZCU3BsYXNoT2ZmCisgVGltZWRGQlNwbGFzaEN0bCAnc2V0IGVmZmVjdHMgZmFkZW91dFxu
JworIFRpbWVkRkJTcGxhc2hDdGwgJ2V4aXRcbicKKyBraWxsYWxsIC0wIGZic3BsYXNoZAorIHNs
ZWVwIDEKKyBraWxsYWxsIC0wIGZic3BsYXNoZApmYnNwbGFzaGQ6IG5lc3N1biBwcm9jZXNzbyB0
ZXJtaW5hdG8KKyAnWycgLW4gMSAnXScKKyBlY2hvIDEKKyByZXR1cm4gMAorIGZvciBiaXQgaW4g
J2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxMVhIYWNrc1Jl
c3VtZUhvb2sxIiwgMSwgMil9JworIFRISVNfUE9TPTExCisgJ1snIC16IDExICddJworIGJpdD1Y
SGFja3NSZXN1bWVIb29rMQorICdbJyAxMSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRl
OiBbMTFdIEV4ZWN1dGluZyBYSGFja3NSZXN1bWVIb29rMSAuLi4gJworIGxvY2FsIHYKKyB2PTEK
KyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5h
dGU6ICdbMTFdJyBFeGVjdXRpbmcgWEhhY2tzUmVzdW1lSG9vazEgLi4uCmhpYmVybmF0ZTogWzEx
XSBFeGVjdXRpbmcgWEhhY2tzUmVzdW1lSG9vazEgLi4uCisgJ1snIC1uICcnICddJworIFhIYWNr
c1Jlc3VtZUhvb2sxCisgJ1snIC1uIDEgJ10nCisgWEhhY2tzUmVzdW1lCisgJ1snIHggPSB4MSAn
XScKKyAnWycgLW4gJycgJ10nCisgJ1snIC1uIDMgJ10nCisgdmVjaG8gMyAneGhhY2tzOiBjaGFu
Z2luZyBjb25zb2xlIGJhY2sgdG8gMycKKyBsb2NhbCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9
IHgxICddJworICdbJyAzIC1sZSA0ICddJworIGVjaG8geGhhY2tzOiBjaGFuZ2luZyBjb25zb2xl
IGJhY2sgdG8gMwp4aGFja3M6IGNoYW5naW5nIGNvbnNvbGUgYmFjayB0byAzCisgY2h2dCAzCisg
cmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3By
aW50IHN1YnN0cigiMTFTd3N1c3AyQ2xlYW51cEZpbGV3cml0ZXIiLCAxLCAyKX0nCisgVEhJU19Q
T1M9MTEKKyAnWycgLXogMTEgJ10nCisgYml0PVN3c3VzcDJDbGVhbnVwRmlsZXdyaXRlcgorICdb
JyAxMSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTFdIEV4ZWN1dGluZyBTd3N1
c3AyQ2xlYW51cEZpbGV3cml0ZXIgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycg
eCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzExXScgRXhl
Y3V0aW5nIFN3c3VzcDJDbGVhbnVwRmlsZXdyaXRlciAuLi4KaGliZXJuYXRlOiBbMTFdIEV4ZWN1
dGluZyBTd3N1c3AyQ2xlYW51cEZpbGV3cml0ZXIgLi4uCisgJ1snIC1uICcnICddJworIFN3c3Vz
cDJDbGVhbnVwRmlsZXdyaXRlcgorIHJtIC1mIC92YXIvcnVuL3N1c3BlbmQyX2ZpbGV3cml0ZXJf
aW1hZ2VfZXhpc3RzCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJ
TntwcmludCBzdWJzdHIoIjAxTm90ZUxhc3RSZXN1bWUiLCAxLCAyKX0nCisgVEhJU19QT1M9MDEK
KyAnWycgLXogMDEgJ10nCisgYml0PU5vdGVMYXN0UmVzdW1lCisgJ1snIDAxIC1ndCA5OSAnXScK
KyB2ZWNobyAxICdoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIE5vdGVMYXN0UmVzdW1lIC4uLiAn
CisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAn
XScKKyBlY2hvIGhpYmVybmF0ZTogJ1swMV0nIEV4ZWN1dGluZyBOb3RlTGFzdFJlc3VtZSAuLi4K
aGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBOb3RlTGFzdFJlc3VtZSAuLi4KKyAnWycgLW4gJycg
J10nCisgTm90ZUxhc3RSZXN1bWUKKyAnWycgLWYgL3Zhci9ydW4vaGliZXJuYXRlLWxhc3QtcmVz
dW1lICddJworIGRhdGUgKyVzCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDFMb2NrRmlsZVB1dCIsIDEsIDIpfScK
KyBUSElTX1BPUz0wMQorICdbJyAteiAwMSAnXScKKyBiaXQ9TG9ja0ZpbGVQdXQKKyAnWycgMDEg
LWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTG9ja0ZpbGVQ
dXQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAx
IC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIExvY2tGaWxlUHV0
IC4uLgpoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIExvY2tGaWxlUHV0IC4uLgorICdbJyAtbiAn
JyAnXScKKyBMb2NrRmlsZVB1dAorICdbJyAteiAxICddJworIGxvY2FsIGxvY2tmaWxlX3BpZAor
IHJlYWQgbG9ja2ZpbGVfcGlkCisgSXNBTnVtYmVyIDY2ODcKKyBjYXNlICIkMSIgaW4KKyByZXR1
cm4gMAorICdbJyA2Njg3IC1lcSA2Njg3ICddJworIHJtIC1mIC92YXIvcnVuL2hpYmVybmF0ZS1z
Y3JpcHQucGlkCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBh
d2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMDBSZW1vdmVTd3N1c3BQcm9jQ3J1ZnQiLCAxLCAyKX0n
CisgVEhJU19QT1M9MDAKKyAnWycgLXogMDAgJ10nCisgYml0PVJlbW92ZVN3c3VzcFByb2NDcnVm
dAorICdbJyAwMCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDBdIEV4ZWN1dGlu
ZyBSZW1vdmVTd3N1c3BQcm9jQ3J1ZnQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAn
WycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAwXScg
RXhlY3V0aW5nIFJlbW92ZVN3c3VzcFByb2NDcnVmdCAuLi4KaGliZXJuYXRlOiBbMDBdIEV4ZWN1
dGluZyBSZW1vdmVTd3N1c3BQcm9jQ3J1ZnQgLi4uCisgJ1snIC1uICcnICddJworIFJlbW92ZVN3
c3VzcFByb2NDcnVmdAorICdbJyAtZiAvdG1wL3RtcC5oaWJlcm5hdGUuZHphZ0NKICddJworIHJt
IC1mIC90bXAvdG1wLmhpYmVybmF0ZS5kemFnQ0oKKyByZXR1cm4gMAorIHJldHVybiAwCisgZXZh
bCAnRVhJVF9DT0RFPSR7UElQRVNUQVRVU1swXX0nCisrIEVYSVRfQ09ERT0wCisgUGx1Z2luVGVy
bWluYXRpb24KKyBsb2NhbCBpCisgZm9yIGkgaW4gJyRURVJNSU5BVElPTl9IQU5ETEVSUycKKyBT
d3N1c3AyVGVybWluYXRpb24KKyByZXR1cm4gMAorIHJldHVybiAwCisrIGRhdGUKKyB0ZWUgLWEg
LWkgL3Zhci9sb2cvaGliZXJuYXRlLmxvZworIGVjaG8gJ1Jlc3VtZWQgYXQgc2FiJyBub3YgMyAx
NToyMTozMCBDRVQgMjAwNworIGV4aXQgMAo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>135087</attachid>
            <date>2007-11-03 14:26 0000</date>
            <desc>debug-without</desc>
            <filename>debug-without</filename>
            <type>text/plain</type>
            <data encoding="base64">aGliZXJuYXRlOiBUcnlpbmcgbWV0aG9kIGluIHN1c3BlbmQyLmNvbmYuLi4KaGliZXJuYXRlOiBJ
bmNsdWRpbmcgY29uZmlndXJhdGlvbiBmcm9tIGNvbW1vbi5jb25mClVzaW5nICcvZXRjL2luaXQu
ZCcgYXMgaW5pdC5kIGRpcmVjdG9yeS4KKyB0ZWUgLWEgLWkgL3Zhci9sb2cvaGliZXJuYXRlLmxv
ZworKyBkYXRlCisgZWNobyAnU3RhcnRpbmcgc3VzcGVuZCBhdCBzYWInIG5vdiAzIDE1OjE5OjI4
IENFVCAyMDA3CisgRVhJVF9DT0RFPTAKKyAnWycgJ3RlZSAtYSAtaSAvdmFyL2xvZy9oaWJlcm5h
dGUubG9nJyA9IGNhdCAnXScKKyAnWycgLW4gMSAnXScKKyBEb1dvcmsKKyB0cmFwIGN0cmxjX2hh
bmRsZXIgSU5UIEhVUAorIGxvY2FsIHJldAorIGxvY2FsIENIQUlOX1VQX1RPCisgbG9jYWwgYml0
CisgQ0hBSU5fVVBfVE89MAorKyBTb3J0U3VzcGVuZEJpdHMKKysgc29ydCAtbgorIHRlZSAtYSAt
aSAvdmFyL2xvZy9oaWJlcm5hdGUubG9nCisrIC9iaW4vZWNobyAtbmUgJzE5TG9nb3V0UGlkZ2lu
XG4zMFNlcnZpY2VzU3RvcFxuOTFNb2R1bGVzVW5sb2FkQmxhY2tsaXN0XG40NUZTVHlwZXNVbm1v
dW50XG45NVhIYWNrc1N1c3BlbmRIb29rMlxuMTFYSGFja3NTdXNwZW5kSG9vazFcbjk0RkJTcGxh
c2hQcm9ncmVzc1xuOTBGQlNwbGFzaFByb2dyZXNzXG44MEZCU3BsYXNoUHJvZ3Jlc3NcbjcwRkJT
cGxhc2hQcm9ncmVzc1xuNjBGQlNwbGFzaFByb2dyZXNzXG41MEZCU3BsYXNoUHJvZ3Jlc3NcbjQw
RkJTcGxhc2hQcm9ncmVzc1xuMzBGQlNwbGFzaFByb2dyZXNzXG4yMEZCU3BsYXNoUHJvZ3Jlc3Nc
bjEyRkJTcGxhc2hTdGFydFN1c3BlbmRcbjk4RnVsbFNwZWVkQ1BVU3VzcGVuZFxuMTFTd3N1c3Ay
U2V0dXBGaWxld3JpdGVyXG43MENsb2NrU2F2ZVxuOThTd3N1c3AyQ29uZmlnU2V0XG45OURvU3dz
dXNwMlxuOTdDaGFuZ2VUb1N3c3VzcFZUXG4xMEVuc3VyZVN3c3VzcDJDYXBhYmxlXG41OVJlbW91
bnRYRlNCb290Uk9cbjAxTmV3S2VybmVsRmlsZUNoZWNrXG44OVNhdmVLZXJuZWxNb2Rwcm9iZVxu
OThDaGVja1J1bmxldmVsXG4wMUNoZWNrUnVubGV2ZWxcbjAxQ2hlY2tMYXN0UmVzdW1lXG4wMUxv
Y2tGaWxlR2V0XG4nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3
X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUNoZWNrTGFzdFJlc3Vt
ZSIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEgJ10nCisgQ0hBSU5f
VVBfVE89MDEKKyBiaXQ9Q2hlY2tMYXN0UmVzdW1lCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFd
IEV4ZWN1dGluZyBDaGVja0xhc3RSZXN1bWUgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQK
KyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAx
XScgRXhlY3V0aW5nIENoZWNrTGFzdFJlc3VtZSAuLi4KaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGlu
ZyBDaGVja0xhc3RSZXN1bWUgLi4uCisgJ1snIC1uICcnICddJworIENoZWNrTGFzdFJlc3VtZQor
ICdbJyAtZiAvdmFyL3J1bi9oaWJlcm5hdGUtbGFzdC1yZXN1bWUgJ10nCisgbG9jYWwgbGFzdF9y
ZXN1bWUgbm93CisgcmVhZCBsYXN0X3Jlc3VtZQorKyBkYXRlICslcworIG5vdz0xMTk0MDk5NTY4
CisgJ1snIDExOTQwOTk1NjggLWd0IDExOTQwOTk1MTAgJ10nCisgcm0gLWYgL3Zhci9ydW4vaGli
ZXJuYXRlLWxhc3QtcmVzdW1lCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJwor
ICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3Bl
bmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJz
dHIoIjAxQ2hlY2tSdW5sZXZlbCIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MDEKKyAnWycg
LW4gMDEgJ10nCisgQ0hBSU5fVVBfVE89MDEKKyBiaXQ9Q2hlY2tSdW5sZXZlbAorIHZlY2hvIDEg
J2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgQ2hlY2tSdW5sZXZlbCAuLi4gJworIGxvY2FsIHYK
KyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBo
aWJlcm5hdGU6ICdbMDFdJyBFeGVjdXRpbmcgQ2hlY2tSdW5sZXZlbCAuLi4KaGliZXJuYXRlOiBb
MDFdIEV4ZWN1dGluZyBDaGVja1J1bmxldmVsIC4uLgorICdbJyAtbiAnJyAnXScKKyBDaGVja1J1
bmxldmVsCisgJ1snIC16ICcnICddJworKyAvc2Jpbi9ydW5sZXZlbAorKyBhd2sgJ3twcmludCAk
Mn0nCisgUlVOTEVWRUw9MworIGNhc2UgIiR7UlVOTEVWRUx9IiBpbgorIHJldHVybiAwCisgcmV0
PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisg
Zm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisr
IGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMUxvY2tGaWxlR2V0IiwgMSwgMil9JworIG5ld19D
SEFJTl9VUF9UTz0wMQorICdbJyAtbiAwMSAnXScKKyBDSEFJTl9VUF9UTz0wMQorIGJpdD1Mb2Nr
RmlsZUdldAorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTG9ja0ZpbGVHZXQg
Li4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1s
ZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzAxXScgRXhlY3V0aW5nIExvY2tGaWxlR2V0IC4u
LgpoaWJlcm5hdGU6IFswMV0gRXhlY3V0aW5nIExvY2tGaWxlR2V0IC4uLgorICdbJyAtbiAnJyAn
XScKKyBMb2NrRmlsZUdldAorIGxvY2FsIG90aGVyX3BpZAorICdbJyAtZiAvdmFyL3J1bi9oaWJl
cm5hdGUtc2NyaXB0LnBpZCAnXScKKyBlY2hvIDU4NjQKKyBMT0NLRklMRV9JTl9VU0U9MQorIHJl
dHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycg
LW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NI
QUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMU5ld0tlcm5lbEZpbGVDaGVj
ayIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MDEKKyAnWycgLW4gMDEgJ10nCisgQ0hBSU5f
VVBfVE89MDEKKyBiaXQ9TmV3S2VybmVsRmlsZUNoZWNrCisgdmVjaG8gMSAnaGliZXJuYXRlOiBb
MDFdIEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisg
c2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRl
OiAnWzAxXScgRXhlY3V0aW5nIE5ld0tlcm5lbEZpbGVDaGVjayAuLi4KaGliZXJuYXRlOiBbMDFd
IEV4ZWN1dGluZyBOZXdLZXJuZWxGaWxlQ2hlY2sgLi4uCisgJ1snIC1uICcnICddJworIE5ld0tl
cm5lbEZpbGVDaGVjaworICdbJyAtZiAvdmFyL3J1bi9zdXNwZW5kMi1uZXcta2VybmVsICddJwor
IHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAn
WycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3
X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIxMEVuc3VyZVN3c3VzcDJD
YXBhYmxlIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0xMAorICdbJyAtbiAxMCAnXScKKyBD
SEFJTl9VUF9UTz0xMAorIGJpdD1FbnN1cmVTd3N1c3AyQ2FwYWJsZQorIHZlY2hvIDEgJ2hpYmVy
bmF0ZTogWzEwXSBFeGVjdXRpbmcgRW5zdXJlU3dzdXNwMkNhcGFibGUgLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzEwXScgRXhlY3V0aW5nIEVuc3VyZVN3c3VzcDJDYXBhYmxlIC4uLgpoaWJl
cm5hdGU6IFsxMF0gRXhlY3V0aW5nIEVuc3VyZVN3c3VzcDJDYXBhYmxlIC4uLgorICdbJyAtbiAn
JyAnXScKKyBFbnN1cmVTd3N1c3AyQ2FwYWJsZQorIGxvY2FsIHZlcgorICdbJyAtZCAvc3lzL3Bv
d2VyL3R1eG9uaWNlICddJworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2FjdGl2YXRlICdd
JworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2RvX3N1c3BlbmQgJ10nCisgJ1snIC1mIC9z
eXMvcG93ZXIvdHV4b25pY2UvZG9faGliZXJuYXRlICddJworICdbJyAnIScgLWYgL3N5cy9wb3dl
ci90dXhvbmljZS92ZXJzaW9uICddJworIFN3c3VzcElzQXRMZWFzdFZlcnNpb24gMzM1NTQ1MzUK
KysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMTY3NzcyMTYpKygkMio2NTUzNikr
KCQzKjI1NikrJDR9JyAvc3lzL3Bvd2VyL3R1eG9uaWNlL3ZlcnNpb24KKyB2ZXI9NTAzMzE2NDgK
KyAnWycgNTAzMzE2NDggLWdlIDMzNTU0NTM1ICddJworIHJldHVybiAwCisgJ1snIHgxICchPScg
eDEgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvcmVzdW1lMiAnXScKKyAnWycgLWYg
L3N5cy9wb3dlci90dXhvbmljZS9yZXN1bWUgJ10nCisgUkVTVU1FMl9GSUxFPXJlc3VtZQorICdb
JyAtbiByZXN1bWUgJ10nCisgJ1snIC1uICcnICddJworIHJlYWQgUkVQTFkKKyAnWycgLXogZmls
ZTovZGV2L2RtLTA6MHg0NGVkMCAnXScKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIg
J10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0
U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50
IHN1YnN0cigiMTFTd3N1c3AyU2V0dXBGaWxld3JpdGVyIiwgMSwgMil9JworIG5ld19DSEFJTl9V
UF9UTz0xMQorICdbJyAtbiAxMSAnXScKKyBDSEFJTl9VUF9UTz0xMQorIGJpdD1Td3N1c3AyU2V0
dXBGaWxld3JpdGVyCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTFdIEV4ZWN1dGluZyBTd3N1c3Ay
U2V0dXBGaWxld3JpdGVyIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4
MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sxMV0nIEV4ZWN1dGlu
ZyBTd3N1c3AyU2V0dXBGaWxld3JpdGVyIC4uLgpoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5nIFN3
c3VzcDJTZXR1cEZpbGV3cml0ZXIgLi4uCisgJ1snIC1uICcnICddJworIFN3c3VzcDJTZXR1cEZp
bGV3cml0ZXIKKyBsb2NhbCBmdF9lbnRyeQorIGZ0X2VudHJ5PQorICdbJyAtZiAvc3lzL3Bvd2Vy
L3R1eG9uaWNlL2ZpbGUvZmlsZXdyaXRlcl90YXJnZXQgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIv
dHV4b25pY2UvZmlsZS90YXJnZXQgJ10nCisgZnRfZW50cnk9L3N5cy9wb3dlci90dXhvbmljZS9m
aWxlL3RhcmdldAorICdbJyAteiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2ZpbGUvdGFyZ2V0ICddJwor
ICdbJyAtZSAvc3VzcGVuZF9maWxlICddJworIGNhc2UgImBkZCBcImlmPSRTV1NVU1BfRklMRVdS
SVRFUl9MT0NcIiBicz04IGNvdW50PTEgMj4vZGV2L251bGxgIiBpbgorKyBkZCBpZj0vc3VzcGVu
ZF9maWxlIGJzPTggY291bnQ9MQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogRGV0ZWN0ZWQgZmlsZXdy
aXRlciBpbWFnZSByZWFkeSBmb3IgdXNlLicKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycg
eCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiBEZXRlY3RlZCBm
aWxld3JpdGVyIGltYWdlIHJlYWR5IGZvciB1c2UuCmhpYmVybmF0ZTogRGV0ZWN0ZWQgZmlsZXdy
aXRlciBpbWFnZSByZWFkeSBmb3IgdXNlLgorIGVjaG8gL3N1c3BlbmRfZmlsZQorIGVjaG8gL3N1
c3BlbmRfZmlsZQorIGNobW9kIDYwMCAvdmFyL3J1bi9zdXNwZW5kMl9maWxld3JpdGVyX2ltYWdl
X2V4aXN0cworICdbJyB4ID0geDEgJ10nCisgbG9jYWwgbmV3X3Jlc3VtZTIKKysgY2F0IC9zeXMv
cG93ZXIvdHV4b25pY2UvcmVzdW1lCisgbmV3X3Jlc3VtZTI9ZmlsZTovZGV2L2RtLTA6MHg0NGVk
MAorICdbJyAteiBmaWxlOi9kZXYvZG0tMDoweDQ0ZWQwICddJworIGdyZXAgZmlsZTovZGV2L2Rt
LTA6MHg0NGVkMCAvcHJvYy9jbWRsaW5lCmRvbHZtIHByb2Nlc3Nvci5tYXhfY3N0YXRlPTIgbGli
YXRhLmF0YXBpX2VuYWJsZWQ9MSByb290PS9kZXYvcmFtMCBpbml0PS9saW51eHJjIHJlYWxfcm9v
dD0vZGV2L3ZnL3Jvb3QgdmlkZW89dXZlc2FmYjoxMDI0eDc2OC0zMixtdHJyOjMseXdyYXAgc3Bs
YXNoPXNpbGVudCx0aGVtZTpsaXZlY2QtMjAwNy4wIENPTlNPTEU9L2Rldi90dHkxIHF1aWV0IHJl
c3VtZT1maWxlOi9kZXYvZG0tMDoweDQ0ZWQwCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1n
ZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdg
U29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntw
cmludCBzdWJzdHIoIjExWEhhY2tzU3VzcGVuZEhvb2sxIiwgMSwgMil9JworIG5ld19DSEFJTl9V
UF9UTz0xMQorICdbJyAtbiAxMSAnXScKKyBDSEFJTl9VUF9UTz0xMQorIGJpdD1YSGFja3NTdXNw
ZW5kSG9vazEKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5nIFhIYWNrc1N1c3Bl
bmRIb29rMSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisg
J1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMTFdJyBFeGVjdXRpbmcgWEhhY2tz
U3VzcGVuZEhvb2sxIC4uLgpoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5nIFhIYWNrc1N1c3BlbmRI
b29rMSAuLi4KKyAnWycgLW4gJycgJ10nCisgWEhhY2tzU3VzcGVuZEhvb2sxCisgJ1snIHggPSB4
MSAnXScKKyAnWycgeDEgPSB4MSAnXScKKyBYSEFDS1NfRUFSTFlfU1dJVENIPTEKKyBYSGFja3NT
dXNwZW5kCisgJ1snIHgxID0geDEgJ10nCisgY29tbWFuZCAtdiBmZ2NvbnNvbGUKKysgZmdjb25z
b2xlCisgWEhBQ0tTX09SSUdJTkFMX1ZUPTMKKyAnWycgeDEgPSB4MSAnXScKKyBsb2NhbCBkZXN0
X3Z0CisgJ1snIC16ICcnICddJworIGRlc3RfdnQ9MTUKKyB2ZWNobyAzICd4aGFja3M6IGNoYW5n
aW5nIGNvbnNvbGUgZnJvbSAzIHRvIDE1JworIGxvY2FsIHYKKyB2PTMKKyBzaGlmdAorICdbJyB4
ID0geDEgJ10nCisgJ1snIDMgLWxlIDQgJ10nCisgZWNobyB4aGFja3M6IGNoYW5naW5nIGNvbnNv
bGUgZnJvbSAzIHRvIDE1CnhoYWNrczogY2hhbmdpbmcgY29uc29sZSBmcm9tIDMgdG8gMTUKKyBj
aHZ0IDE1CisgcmV0dXJuIDAKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisg
J1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVu
ZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0
cigiMTJGQlNwbGFzaFN0YXJ0U3VzcGVuZCIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89MTIK
KyAnWycgLW4gMTIgJ10nCisgQ0hBSU5fVVBfVE89MTIKKyBiaXQ9RkJTcGxhc2hTdGFydFN1c3Bl
bmQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsxMl0gRXhlY3V0aW5nIEZCU3BsYXNoU3RhcnRTdXNw
ZW5kIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycg
MSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sxMl0nIEV4ZWN1dGluZyBGQlNwbGFzaFN0
YXJ0U3VzcGVuZCAuLi4KaGliZXJuYXRlOiBbMTJdIEV4ZWN1dGluZyBGQlNwbGFzaFN0YXJ0U3Vz
cGVuZCAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hTdGFydFN1c3BlbmQKKyBGQlNwbGFz
aEJlZ2luICdQcmVwYXJpbmcgdG8gc3VzcGVuZCAuLi4nCisgJ1snIHgxICchPScgeDEgJ10nCisg
J1snIC16IHN1c3BlbmQyICddJworIGNvbW1hbmQgLXYgZmJzcGxhc2hkCisgJ1snICchJyAtZCAv
ZXRjL3NwbGFzaC9zdXNwZW5kMi8gJ10nCisgdGVzdCAtcCAvbGliL3NwbGFzaC9jYWNoZS8uc3Bs
YXNoCisgZmJzcGxhc2hkIC0tdGhlbWUgc3VzcGVuZDIgLS1tZXNnIFN1c3BlbmRpbmcuLi4gLS1l
ZmZlY3RzIGZhZGVpbgorIFRpbWVkRkJTcGxhc2hDdGwgJ3NldCBtb2RlIHNpbGVudFxucHJvZ3Jl
c3MgMFxuc2V0IG1lc3NhZ2UgUHJlcGFyaW5nIHRvIHN1c3BlbmQgLi4uXG5yZXBhaW50XG4nCisr
IGF3ayAne3ByaW50ICQxfScKKyBTQVZFRF9GQlNQTEFTSF9QUklOVEtfTEVWRUw9MQorIGVjaG8g
MgorIEZCU1BMQVNIX1BST0dSRVNTPTAKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEg
J10nCisgRkJTUExBU0hfUFJPR1JFU1M9NjU1MworIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNz
IDY1NTNcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAt
Z2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAn
YFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57
cHJpbnQgc3Vic3RyKCIxOUxvZ291dFBpZGdpbiIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89
MTkKKyAnWycgLW4gMTkgJ10nCisgQ0hBSU5fVVBfVE89MTkKKyBiaXQ9TG9nb3V0UGlkZ2luCisg
dmVjaG8gMSAnaGliZXJuYXRlOiBbMTldIEV4ZWN1dGluZyBMb2dvdXRQaWRnaW4gLi4uICcKKyBs
b2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJwor
IGVjaG8gaGliZXJuYXRlOiAnWzE5XScgRXhlY3V0aW5nIExvZ291dFBpZGdpbiAuLi4KaGliZXJu
YXRlOiBbMTldIEV4ZWN1dGluZyBMb2dvdXRQaWRnaW4gLi4uCisgJ1snIC1uICcnICddJworIExv
Z291dFBpZGdpbgorICdbJyB4MSAnIT0nIHgxICddJworICdbJyAteiAvdXNyL2Jpbi9wdXJwbGUt
cmVtb3RlICddJworICdbJyAnIScgLXggL3Vzci9iaW4vcHVycGxlLXJlbW90ZSAnXScKKyBsb2Nh
bCBwaWQgaT0wCisrIHBpZG9mIHBpZGdpbgorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2Ug
MiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNv
cnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJp
bnQgc3Vic3RyKCIyMEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RP
PTIwCisgJ1snIC1uIDIwICddJworIENIQUlOX1VQX1RPPTIwCisgYml0PUZCU3BsYXNoUHJvZ3Jl
c3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFsyMF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3Mg
Li4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1s
ZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzIwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jl
c3MgLi4uCmhpYmVybmF0ZTogWzIwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAn
WycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BM
QVNIX1BST0dSRVNTPTEzMTA2CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMTMxMDZcbnJl
cGFpbnRcbicKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0
IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJwor
IGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMzBGQlNw
bGFzaFByb2dyZXNzIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz0zMAorICdbJyAtbiAzMCAn
XScKKyBDSEFJTl9VUF9UTz0zMAorIGJpdD1GQlNwbGFzaFByb2dyZXNzCisgdmVjaG8gMSAnaGli
ZXJuYXRlOiBbMzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgor
IHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhp
YmVybmF0ZTogJ1szMF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6
IFszMF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZC
U3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0xOTY1
OQorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDE5NjU5XG5yZXBhaW50XG4nCisgcmV0dXJu
IDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAn
JyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5f
VVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjMwU2VydmljZXNTdG9wIiwgMSwgMil9
JworIG5ld19DSEFJTl9VUF9UTz0zMAorICdbJyAtbiAzMCAnXScKKyBDSEFJTl9VUF9UTz0zMAor
IGJpdD1TZXJ2aWNlc1N0b3AKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIFNl
cnZpY2VzU3RvcCAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10n
CisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMzBdJyBFeGVjdXRpbmcgU2Vy
dmljZXNTdG9wIC4uLgpoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIFNlcnZpY2VzU3RvcCAuLi4K
KyAnWycgLW4gJycgJ10nCisgU2VydmljZXNTdG9wCisgJ1snIC16IDEgJ10nCisgRXhlY3V0ZVNl
cnZpY2VzIHN0b3AKKyBsb2NhbCBhY3Rpb24KKyBsb2NhbCBzZXJ2aWNlcworIGxvY2FsIHNlcnZp
Y2UKKyBhY3Rpb249c3RvcAorIHNoaWZ0Cisgc2VydmljZXM9CisgcmV0PTAKKyByZXR1cm4gMAor
IFJFU1RBUlRFRF9TRVJWSUNFUz0KKyBFeGVjdXRlU2VydmljZXMgc3RvcCBsYXB0b3BfbW9kZQor
IGxvY2FsIGFjdGlvbgorIGxvY2FsIHNlcnZpY2VzCisgbG9jYWwgc2VydmljZQorIGFjdGlvbj1z
dG9wCisgc2hpZnQKKyBzZXJ2aWNlcz1sYXB0b3BfbW9kZQorIHJldD0wCisgZm9yIHNlcnZpY2Ug
aW4gJyRzZXJ2aWNlcycKKyBJbnZva2VSQ0QgbGFwdG9wX21vZGUgc3RvcAorIGxvY2FsIHNlcnZp
Y2UgYWN0aW9uIHRtcCBjbWQKKyBzZXJ2aWNlPWxhcHRvcF9tb2RlCisgYWN0aW9uPXN0b3AKKyAn
WycgLXggL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUgJ10nCisgY21kPScvZXRjL2luaXQuZC9sYXB0
b3BfbW9kZSBzdG9wJworICdbJyBzdG9wID0gc3RhcnQgJ10nCisgdmVjaG8gMiAnRXhlY3V0aW5n
IC9ldGMvaW5pdC5kL2xhcHRvcF9tb2RlIHN0b3AnCisgbG9jYWwgdgorIHY9MgorIHNoaWZ0Cisg
J1snIHggPSB4MSAnXScKKyAnWycgMiAtbGUgNCAnXScKKyBlY2hvIEV4ZWN1dGluZyAvZXRjL2lu
aXQuZC9sYXB0b3BfbW9kZSBzdG9wCkV4ZWN1dGluZyAvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSBz
dG9wCisgL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUgc3RvcAogKiBTdG9wcGluZyBsYXB0b3BfbW9k
ZSAuLi4gWyBvayBdCisgJ1snIDAgLW5lIDEwMCAnXScKKyBSRVNUQVJURURfU0VSVklDRVM9J2xh
cHRvcF9tb2RlICcKKyByZXR1cm4gMAorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAn
XScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRT
dXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQg
c3Vic3RyKCI0MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTQw
CisgJ1snIC1uIDQwICddJworIENIQUlOX1VQX1RPPTQwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MK
KyB2ZWNobyAxICdoaWJlcm5hdGU6IFs0MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4u
ICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzQwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3Mg
Li4uCmhpYmVybmF0ZTogWzQwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycg
LW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNI
X1BST0dSRVNTPTI2MjEyCisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMjYyMTJcbnJlcGFp
bnRcbicKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAg
J10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxv
Y2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNDVGU1R5cGVz
VW5tb3VudCIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89NDUKKyAnWycgLW4gNDUgJ10nCisg
Q0hBSU5fVVBfVE89NDUKKyBiaXQ9RlNUeXBlc1VubW91bnQKKyB2ZWNobyAxICdoaWJlcm5hdGU6
IFs0NV0gRXhlY3V0aW5nIEZTVHlwZXNVbm1vdW50IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNo
aWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTog
J1s0NV0nIEV4ZWN1dGluZyBGU1R5cGVzVW5tb3VudCAuLi4KaGliZXJuYXRlOiBbNDVdIEV4ZWN1
dGluZyBGU1R5cGVzVW5tb3VudCAuLi4KKyAnWycgLW4gJycgJ10nCisgRlNUeXBlc1VubW91bnQK
KyBsb2NhbCBmc3R5cGUKKyBsb2NhbCByZXQKKyAnWycgLXogJyBzbWJmcyBuZnMgdmZhdCBudGZz
JyAnXScKKyByZXQ9MAorIGZvciBmc3R5cGUgaW4gJyRGU19UWVBFUycKKyBsb2NhbCB1bm1vdW50
cworKyBhd2sgJygkMyA9PSAic21iZnMiKSB7cHJpbnQgJDJ9JyAvcHJvYy9tb3VudHMKKysgc29y
dCAtcgorIHVubW91bnRzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIGZvciBmc3R5cGUg
aW4gJyRGU19UWVBFUycKKyBsb2NhbCB1bm1vdW50cworKyBhd2sgJygkMyA9PSAibmZzIikge3By
aW50ICQyfScgL3Byb2MvbW91bnRzCisrIHNvcnQgLXIKKyB1bm1vdW50cz0KKyAnWycgLXogJycg
J10nCisgY29udGludWUKKyBmb3IgZnN0eXBlIGluICckRlNfVFlQRVMnCisgbG9jYWwgdW5tb3Vu
dHMKKysgYXdrICcoJDMgPT0gInZmYXQiKSB7cHJpbnQgJDJ9JyAvcHJvYy9tb3VudHMKKysgc29y
dCAtcgorIHVubW91bnRzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIGZvciBmc3R5cGUg
aW4gJyRGU19UWVBFUycKKyBsb2NhbCB1bm1vdW50cworKyBzb3J0IC1yCisrIGF3ayAnKCQzID09
ICJudGZzIikge3ByaW50ICQyfScgL3Byb2MvbW91bnRzCisgdW5tb3VudHM9CisgJ1snIC16ICcn
ICddJworIGNvbnRpbnVlCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdb
JyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRC
aXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIo
IjUwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89NTAKKyAnWycg
LW4gNTAgJ10nCisgQ0hBSU5fVVBfVE89NTAKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworIHZlY2hv
IDEgJ2hpYmVybmF0ZTogWzUwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxv
Y2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisg
ZWNobyBoaWJlcm5hdGU6ICdbNTBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KaGli
ZXJuYXRlOiBbNTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAn
XScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JF
U1M9MzI3NjUKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyAzMjc2NVxucmVwYWludFxuJwor
IHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAn
WycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3
X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI1OVJlbW91bnRYRlNCb290
Uk8iLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTU5CisgJ1snIC1uIDU5ICddJworIENIQUlO
X1VQX1RPPTU5CisgYml0PVJlbW91bnRYRlNCb290Uk8KKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs1
OV0gRXhlY3V0aW5nIFJlbW91bnRYRlNCb290Uk8gLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hp
ZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAn
WzU5XScgRXhlY3V0aW5nIFJlbW91bnRYRlNCb290Uk8gLi4uCmhpYmVybmF0ZTogWzU5XSBFeGVj
dXRpbmcgUmVtb3VudFhGU0Jvb3RSTyAuLi4KKyAnWycgLW4gJycgJ10nCisgUmVtb3VudFhGU0Jv
b3RSTworICdbJyAnJyA9IDEgJ10nCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAt
Z3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2An
CisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI2MEZC
U3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTYwCisgJ1snIC1uIDYw
ICddJworIENIQUlOX1VQX1RPPTYwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdo
aWJlcm5hdGU6IFs2MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzYwXScgRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0
ZTogWzYwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisg
RkJTcGxhc2hQcm9ncmVzcworICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTM5
MzE4CisgVGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgMzkzMThcbnJlcGFpbnRcbicKKyByZXR1
cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1u
ICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJ
Tl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNzBDbG9ja1NhdmUiLCAxLCAyKX0n
CisgbmV3X0NIQUlOX1VQX1RPPTcwCisgJ1snIC1uIDcwICddJworIENIQUlOX1VQX1RPPTcwCisg
Yml0PUNsb2NrU2F2ZQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tT
YXZlIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycg
MSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s3MF0nIEV4ZWN1dGluZyBDbG9ja1NhdmUg
Li4uCmhpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgQ2xvY2tTYXZlIC4uLgorICdbJyAtbiAnJyAn
XScKKyBDbG9ja1NhdmUKKyBjYXNlICIkRElTVFJJQlVUSU9OIiBpbgorIC9zYmluL2h3Y2xvY2sg
LS1zeXN0b2hjCisgcmV0dXJuIDAKKyByZXQ9MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1n
dCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcK
KyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjcwRkJT
cGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89NzAKKyAnWycgLW4gNzAg
J10nCisgQ0hBSU5fVVBfVE89NzAKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworIHZlY2hvIDEgJ2hp
YmVybmF0ZTogWzcwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYK
KyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBo
aWJlcm5hdGU6ICdbNzBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRl
OiBbNzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBG
QlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NDU4
NzEKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyA0NTg3MVxucmVwYWludFxuJworIHJldHVy
biAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4g
JycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlO
X1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI4MEZCU3BsYXNoUHJvZ3Jlc3MiLCAx
LCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTgwCisgJ1snIC1uIDgwICddJworIENIQUlOX1VQX1RP
PTgwCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs4MF0gRXhl
Y3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAn
WycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzgwXScg
RXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzgwXSBFeGVjdXRpbmcg
RkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcwor
ICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTUyNDI0CisgVGltZWRGQlNwbGFz
aEN0bCAncHJvZ3Jlc3MgNTI0MjRcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIHJldD0wCisgJ1sn
IDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQg
aW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JF
R0lOe3ByaW50IHN1YnN0cigiODlTYXZlS2VybmVsTW9kcHJvYmUiLCAxLCAyKX0nCisgbmV3X0NI
QUlOX1VQX1RPPTg5CisgJ1snIC1uIDg5ICddJworIENIQUlOX1VQX1RPPTg5CisgYml0PVNhdmVL
ZXJuZWxNb2Rwcm9iZQorIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzg5XSBFeGVjdXRpbmcgU2F2ZUtl
cm5lbE1vZHByb2JlIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAn
XScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s4OV0nIEV4ZWN1dGluZyBT
YXZlS2VybmVsTW9kcHJvYmUgLi4uCmhpYmVybmF0ZTogWzg5XSBFeGVjdXRpbmcgU2F2ZUtlcm5l
bE1vZHByb2JlIC4uLgorICdbJyAtbiAnJyAnXScKKyBTYXZlS2VybmVsTW9kcHJvYmUKKyAnWycg
LW4gJycgJ10nCisgJ1snIC1yIC9wcm9jL3N5cy9rZXJuZWwvbW9kcHJvYmUgJ10nCisrIGNhdCAv
cHJvYy9zeXMva2VybmVsL21vZHByb2JlCisgS0VSTkVMX01PRFBST0JFPS9zYmluL21vZHByb2Jl
CisgJ1snIC1uIC9zYmluL21vZHByb2JlICddJworIHZlY2hvIDMgJ1NhdmVkIC9wcm9jL3N5cy9r
ZXJuZWwvbW9kcHJvYmUgaXMgL3NiaW4vbW9kcHJvYmUnCisgbG9jYWwgdgorIHY9MworIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUgNCAnXScKKyBlY2hvIFNhdmVkIC9wcm9jL3N5
cy9rZXJuZWwvbW9kcHJvYmUgaXMgL3NiaW4vbW9kcHJvYmUKU2F2ZWQgL3Byb2Mvc3lzL2tlcm5l
bC9tb2Rwcm9iZSBpcyAvc2Jpbi9tb2Rwcm9iZQorIGVjaG8gL2RvZXNudC9leGlzdAorICdbJyAt
ciAvcHJvYy9zeXMva2VybmVsL2hvdHBsdWcgJ10nCisrIGNhdCAvcHJvYy9zeXMva2VybmVsL2hv
dHBsdWcKKyBLRVJORUxfSE9UUExVRz0KKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDAKKyByZXQ9
MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBm
b3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysg
YXdrICdCRUdJTntwcmludCBzdWJzdHIoIjkwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBu
ZXdfQ0hBSU5fVVBfVE89OTAKKyAnWycgLW4gOTAgJ10nCisgQ0hBSU5fVVBfVE89OTAKKyBiaXQ9
RkJTcGxhc2hQcm9ncmVzcworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzkwXSBFeGVjdXRpbmcgRkJT
cGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTBdJyBFeGVjdXRpbmcg
RkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbOTBdIEV4ZWN1dGluZyBGQlNwbGFzaFBy
b2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0g
eDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NTg5NzcKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9n
cmVzcyA1ODk3N1xucmVwYWludFxuJworIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAn
XScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRT
dXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQg
c3Vic3RyKCI5MU1vZHVsZXNVbmxvYWRCbGFja2xpc3QiLCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQ
X1RPPTkxCisgJ1snIC1uIDkxICddJworIENIQUlOX1VQX1RPPTkxCisgYml0PU1vZHVsZXNVbmxv
YWRCbGFja2xpc3QKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5MV0gRXhlY3V0aW5nIE1vZHVsZXNV
bmxvYWRCbGFja2xpc3QgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgx
ICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzkxXScgRXhlY3V0aW5n
IE1vZHVsZXNVbmxvYWRCbGFja2xpc3QgLi4uCmhpYmVybmF0ZTogWzkxXSBFeGVjdXRpbmcgTW9k
dWxlc1VubG9hZEJsYWNrbGlzdCAuLi4KKyAnWycgLW4gJycgJ10nCisgTW9kdWxlc1VubG9hZEJs
YWNrbGlzdAorICdbJyB4MSA9IHgxICddJworIENoZWNrTW9kdWxlU3VwcG9ydAorICdbJyAtZiAv
cHJvYy9tb2R1bGVzICddJworIHJldHVybiAwCisgJ1snICchJyAtciAvZXRjL2hpYmVybmF0ZS9i
bGFja2xpc3RlZC1tb2R1bGVzICddJworKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgk
MSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKyBs
b2NhbCBrdmVyPTEzMjYzMQorIHZlY2hvIDIgJ1VubG9hZGluZyBibGFja2xpc3RlZCBtb2R1bGVz
IGxpc3RlZCAvZXRjL2hpYmVybmF0ZS9ibGFja2xpc3RlZC1tb2R1bGVzJworIGxvY2FsIHYKKyB2
PTIKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDIgLWxlIDQgJ10nCisgZWNobyBVbmxv
YWRpbmcgYmxhY2tsaXN0ZWQgbW9kdWxlcyBsaXN0ZWQgL2V0Yy9oaWJlcm5hdGUvYmxhY2tsaXN0
ZWQtbW9kdWxlcwpVbmxvYWRpbmcgYmxhY2tsaXN0ZWQgbW9kdWxlcyBsaXN0ZWQgL2V0Yy9oaWJl
cm5hdGUvYmxhY2tsaXN0ZWQtbW9kdWxlcworIGxvY2FsIGZhaWxlZG1vZHM9CisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVz
ZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICdd
JworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21v
ZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgor
IGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92
ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNv
bnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9
CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRp
bnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9Cisg
cmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVl
CisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVh
ZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJz
IHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAw
ICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVz
ZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICdd
JworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1
bGVEZXBzIG52aWRpYQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGF3ayAtdiBtb2R1bGU9bnZpZGlh
ICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVz
W21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChp
IGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1v
ZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAg
ICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1
bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGls
ZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxl
cykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAg
cHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAg
IGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIi
LCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVs
ZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAg
ICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAK
fQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVs
ZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewog
ICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAi
bW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisr
IGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJv
Yy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9j
YWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisg
J1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRl
cHMKKysgRmluZE1vZHVsZURlcHMgYWN4MTAwCisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAt
cSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1h
Y3gxMDAgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1v
ZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBm
b3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlm
ICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ld
XQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0K
fQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAg
IHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBt
b2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAg
ICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAg
ICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIs
IiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwg
bW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAx
CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxl
ID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0g
bW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAx
KSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBp
bnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAg
ICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51
ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJl
YWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycg
J10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBhY3hfcGNpCisrIEdldDI2TW9kdWxl
c0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysg
YXdrIC12IG1vZHVsZT1hY3hfcGNpICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9k
LCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9k
XSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29u
dGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1th
W2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkK
ICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAg
IGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAg
ICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAi
IikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVs
ZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAg
ICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1
YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7
CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAk
NAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAo
aGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkg
IyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1
bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXog
JycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1
c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9k
IGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaHNmbW9k
ZW0KKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2Vy
bmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWhzZm1vZGVtICcKZnVuY3Rpb24gZmluZF9y
ZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0K
ICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBp
ZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAg
ICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxh
dGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1v
ZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAg
ICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBp
ZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAg
ICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVz
KSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAg
ICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAg
fQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9
ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAx
Cn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAg
ICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVz
CisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmlu
ZE1vZHVsZURlcHMgcHJpc201NAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40
XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9cHJpc201NCAn
CmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1tt
b2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBp
biBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1
bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAg
ICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5j
dGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUg
KGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMp
IHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHBy
aW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBm
b3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwg
bW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVz
W2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAg
ICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0K
CnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUp
IGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAg
ICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1v
ZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBj
YXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1
ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2Qg
dmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5
JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42
Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisg
bG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAor
KyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQz
fScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNwor
IHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMy
NzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBiY200NDAw
CisrIEdldDI2TW9kdWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5l
bC9vc3JlbGVhc2UKKysgYXdrIC12IG1vZHVsZT1iY200NDAwICcKZnVuY3Rpb24gZmluZF9yZWxh
dGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAg
IHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAo
YVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAg
ICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVk
X21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVs
ZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAg
IGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAo
bW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAg
ICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7
CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAg
ICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQog
ICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICIt
IikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0K
CkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAg
ICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisg
ZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMg
dXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAg
J10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTkJMi42LjAJMi42Ljk5JyAn
XScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi40LjAgMi40Ljk5
IDIuNi4wIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwg
bWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OSAyLjYuMCAyLjYu
OTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQx
KjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2CisrIGVjaG8gMi40Ljk5
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkr
JDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAn
XScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICdd
JworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAw
MDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3
ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9Jwor
IG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAn
WycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRN
b2R1bGVEZXBzIGVtdTEwazEKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwu
JyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBjYXQgL3Byb2MvbW9kdWxlcworKyBhd2sg
LXYgbW9kdWxlPWVtdTEwazEgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGks
IGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBh
LCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51
ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1d
ID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAg
ICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hh
bmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAg
ICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7
CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tp
XQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAg
ICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIs
ImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
IGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAg
IGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAg
ICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZl
X21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1
dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMp
CiAgICB9Cn0KICAgICcKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUK
KyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZl
cnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNC4wCTIuNC45
OQkyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEz
MjYzMSAyLjQuMCAyLjQuOTkgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMx
Cisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi40LjAg
Mi40Ljk5IDIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi40LjAKKysgYXdrICdCRUdJTntGUz0i
W14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzIw
OTYKKysgZWNobyAyLjQuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgx
MDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzIxOTUKKyBzaGlmdCAyCisgJ1snIDEz
MjYzMSAtZ2UgMTMyMDk2ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjE5NSAnXScKKyAnWycgLW4g
JzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysgYXdrICdCRUdJTntGUz0iW14wLTld
In17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWluX3Zlcj0xMzI2MDgKKysg
ZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkr
KCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAt
Z2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxv
Y2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgZm9yY2VkZXRoCisrIEdldDI2TW9kdWxlc0ZpbGUK
KysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdrIC12
IG1vZHVsZT1mb3JjZWRldGggJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGks
IGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBh
LCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51
ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1d
ID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAg
ICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hh
bmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAg
ICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7
CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tp
XQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAg
ICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIs
ImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
IGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAg
IGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAg
ICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZl
X21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1
dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMp
CiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAn
XScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9t
b2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4K
KyBtb2Q9aXB3MjEwMAorIHVzZV9tb2RfdmVyPTEKKyAnWycgLW4gJzAuMAkxLjAuMicgJ10nCisg
J1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVyCisrIG1vZGluZm8gaXB3MjEwMAorKyBzZWQgLWUg
J3MvXnZlcnNpb246WyBcdF1cK1teMC05XSpcKC4qXCkkL1wxLzt0O2QnCisrIGF3ayAnQkVHSU57
RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1vZHZlcj0K
KyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBmb3IgaXB3MjEwMCBpcyAnCisgbG9jYWwgdgorIHY9
MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUgNCAnXScKKyBlY2hvIE1vZHVs
ZSB2ZXJzaW9uIGZvciBpcHcyMTAwIGlzCk1vZHVsZSB2ZXJzaW9uIGZvciBpcHcyMTAwIGlzCisg
J1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaXB3MjEwMAorKyBH
ZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3Ny
ZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aXB3MjEwMCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxp
dChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0g
PT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAg
IG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBp
LCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFu
Z2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVs
ZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRl
bGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAg
ICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAg
ICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0K
fQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRl
cHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQg
ewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9w
X3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9
CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9t
b2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJwor
IGNhc2UgJG1vZCBpbgorIG1vZD1pcHcyMjAwCisgdXNlX21vZF92ZXI9MQorICdbJyAtbiAnMC4w
CTAuMjAnICddJworICdbJyAteiAxICddJworIGxvY2FsIG1vZHZlcgorKyBtb2RpbmZvIGlwdzIy
MDAKKysgc2VkIC1lICdzL152ZXJzaW9uOlsgXHRdXCtbXjAtOV0qXCguKlwpJC9cMS87dDtkJwor
KyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQz
fScKKyBtb2R2ZXI9NjYwNTAKKyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBmb3IgaXB3MjIwMCBp
cyA2NjA1MCcKKyBsb2NhbCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAz
IC1sZSA0ICddJworIGVjaG8gTW9kdWxlIHZlcnNpb24gZm9yIGlwdzIyMDAgaXMgNjYwNTAKTW9k
dWxlIHZlcnNpb24gZm9yIGlwdzIyMDAgaXMgNjYwNTAKKyAnWycgLW4gNjYwNTAgJ10nCisgSXNJ
blZlcnNpb25SYW5nZSA2NjA1MCAwLjAgMC4yMAorIGxvY2FsIGt2ZXIKKyBrdmVyPTY2MDUwCisg
c2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMC4wIDAuMjAn
ICddJworKyBlY2hvIDAuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTAKKysgYXdrICdCRUdJTntGUz0iW14wLTld
In17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisrIGVjaG8gMC4yMAorIG1heF92
ZXI9NTEyMAorIHNoaWZ0IDIKKyAnWycgNjYwNTAgLWdlIDAgJ10nCisgJ1snIDY2MDUwIC1sZSA1
MTIwICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5JyAn
XScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42Ljk5
CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9j
YWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAorKyBh
d2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScK
KyBtaW5fdmVyPTEzMjYwOAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKysgZWNobyAyLjYuOTkKKyBtYXhfdmVyPTEzMjcwNworIHNo
aWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3
ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBuYXRzZW1pCisr
IGF3ayAtdiBtb2R1bGU9bmF0c2VtaSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1v
ZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21v
ZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNv
bnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNb
YVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0p
CiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAg
ICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAog
ICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0g
IiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1
bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAg
ICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBz
dWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4g
ewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0g
JDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYg
KGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUp
ICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9k
dWxlcykKICAgIH0KfQogICAgJworKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40
XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVw
cz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTknICddJworICdbJyAteiAnJyAn
XScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuMTkKKyBsb2NhbCBrdmVyCisg
a3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1sn
IC1uICcyLjYuMCAyLjYuMTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9Ilte
MC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4
CisrIGVjaG8gMi42LjE5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAw
MDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjI3Cisgc2hpZnQgMgorICdbJyAxMzI2
MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MjcgJ10nCisgJ1snIC1uICcn
ICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisg
Y2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTkJMi42LjAJMi42Ljk5JyAnXScKKyAn
WycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi40LjAgMi40Ljk5IDIuNi4w
IDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3Zl
cgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNC4wIDIuNC45OSAyLjYuMCAyLjYuOTknICdd
JworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAw
MDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2CisrIGVjaG8gMi40Ljk5CisrIGF3
ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9Jwor
IG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjA5NiAnXScKKyAn
WycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBh
d2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScK
KysgZWNobyAyLjYuMAorIG1pbl92ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92
ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMy
NjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVE
ZXBzIHJ0MjQwMAorKyBhd2sgLXYgbW9kdWxlPXJ0MjQwMCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBz
cGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFb
aV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAg
ICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVz
LCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBj
aGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1v
ZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAg
IGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewog
ICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAg
ICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAg
IH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIp
IGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpF
TkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAg
dG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdy
ZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJvYy9t
b2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTQnICddJwor
ICdbJyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuMTQKKyBs
b2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBt
YXhfdmVyCisgJ1snIC1uICcyLjYuMCAyLjYuMTQnICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAn
QkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1p
bl92ZXI9MTMyNjA4CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3By
aW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjIyCisgc2hpZnQg
MgorICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MjIgJ10n
CisgJ1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTQnICddJworICdb
JyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuMTQKKyBsb2Nh
bCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhf
dmVyCisgJ1snIC1uICcyLjYuMCAyLjYuMTQnICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92
ZXI9MTMyNjA4CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50
KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjIyCisgc2hpZnQgMgor
ICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MjIgJ10nCisg
J1snIC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZl
cnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5l
IDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuMTQnICddJworICdbJyAt
eiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuMTQKKyBsb2NhbCBr
dmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVy
CisgJ1snIC1uICcyLjYuMCAyLjYuMTQnICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57
RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9
MTMyNjA4CisrIGVjaG8gMi42LjE0CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQx
KjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNjIyCisgc2hpZnQgMgorICdb
JyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MjIgJ10nCisgJ1sn
IC1uICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMg
dXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAg
J10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTknICddJworICdbJyAteiAn
JyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkKKyBsb2NhbCBrdmVy
Cisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisg
J1snIC1uICcyLjQuMCAyLjQuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9
IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMy
MDk2CisrIGVjaG8gMi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4
MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAx
MzI2MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1u
ICcnICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNl
X21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10n
CisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTknICddJworICdbJyAteiAnJyAn
XScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkKKyBsb2NhbCBrdmVyCisg
a3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1sn
IC1uICcyLjQuMCAyLjQuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9Ilte
MC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2
CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkr
JDN9JworKyBlY2hvIDIuNC45OQorIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2
MzEgLWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcn
ICddJworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21v
ZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisg
Y2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjQuMAkyLjQuOTknICddJworICdbJyAteiAnJyAnXScK
KyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjQuMCAyLjQuOTkKKyBsb2NhbCBrdmVyCisga3Zl
cj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1u
ICcyLjQuMCAyLjQuOTknICddJworKyBlY2hvIDIuNC4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05
XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyMDk2Cisr
IGVjaG8gMi40Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDAp
KygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyMTk1Cisgc2hpZnQgMgorICdbJyAxMzI2MzEg
LWdlIDEzMjA5NiAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzIxOTUgJ10nCisgJ1snIC1uICcnICdd
JworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92
ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2Fz
ZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJ
c0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0x
MzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcy
LjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9
e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVj
aG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdl
IDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2Nh
bCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNuZF9lbnMxMzcwCisrIEdldDI2TW9kdWxlc0ZpbGUK
KysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgY2F0IC9w
cm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBs
b2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMK
KyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIuNi45OScg
J10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4wIDIuNi45
OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxv
Y2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGVjaG8gMi42LjAKKysg
YXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30n
CisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTld
In17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBz
aGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcw
NyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc25kX2VuczEz
NzEKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2Vy
bmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPXNuZF9lbnMxMzcxICcKZnVuY3Rpb24gZmlu
ZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21v
ZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAg
ICBpZiAoYVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsK
ICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9y
ZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0
KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewog
ICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAg
ICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAg
ICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1
bGVzKSB7CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQog
ICAgICAgICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAg
ICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0
ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUg
PSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkK
ICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1
bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdb
JyAteiAnJyAnXScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2Nh
bCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhf
dmVyCisgJ1snIC1uICcyLjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92
ZXI9MTMyNjA4CisrIGVjaG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50
KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgor
ICdbJyAxMzI2MzEgLWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisg
cmV0dXJuIDAKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNuZF9tYWVzdHJvMworKyBH
ZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3Ny
ZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9c25kX21hZXN0cm8zICcKZnVuY3Rpb24gZmluZF9yZWxh
dGVkX21vZHVsZXMobW9kLCBpLCBhKSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAg
IHNwbGl0KGRlcHNbbW9kXSwgYSwgIiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAo
YVtpXSA9PSAiIikgY29udGludWUKICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAg
ICAgICAgbW9kdWxlc1thW2ldXSA9IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVk
X21vZHVsZXMoYVtpXSkKICAgICAgICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVs
ZXMsIGksIGopIHsKICAgIGNoYW5nZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAg
IGNoYW5nZWQgPSAwCiAgICAgICAgZm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAo
bW9kdWxlc1tpXSA9PSAiIikgewogICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAg
ICAgZGVsZXRlIG1vZHVsZXNbaV0KICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7
CiAgICAgICAgICAgICAgICAgICAgc3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAg
ICAgICAgICAgICAgIHN1YigiLCJpIiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQog
ICAgfQp9CgpCRUdJTiB7CiAgICBoYXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICIt
IikgZGVwc1skMV0gPSAkNAogICAgaWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0K
CkVORCB7CiAgICBpZiAoaGF2ZV9tb2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKG1vZHVsZSkgIyBwdXRzIHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAg
ICB0b3Bfc29ydChtb2R1bGVzKQogICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisg
ZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMg
dXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAg
J10nCisgY2FzZSAkbW9kIGluCisgbW9kPXNuZF9idF9zY28KKyB1c2VfbW9kX3Zlcj0xCisgJ1sn
IC1uICcwLjAJMS4xOCcgJ10nCisgJ1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVyCisrIG1vZGlu
Zm8gc25kX2J0X3NjbworKyBzZWQgLWUgJ3MvXnZlcnNpb246WyBcdF1cK1teMC05XSpcKC4qXCkk
L1wxLzt0O2QnCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1vZHZlcj0KKyB2ZWNobyAzICdNb2R1bGUgdmVyc2lvbiBmb3Igc25k
X2J0X3NjbyBpcyAnCisgbG9jYWwgdgorIHY9MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAn
WycgMyAtbGUgNCAnXScKKyBlY2hvIE1vZHVsZSB2ZXJzaW9uIGZvciBzbmRfYnRfc2NvIGlzCisg
J1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc25kX2J0X3Njbwor
KyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwv
b3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9c25kX2J0X3NjbyAnCmZ1bmN0aW9uIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAg
ICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYg
KGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAg
ICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1
bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAg
ICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYg
KG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAg
ICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykg
ewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0K
ICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAi
LSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9
CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAg
ICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJwpNb2R1bGUgdmVyc2lvbiBmb3Igc25k
X2J0X3NjbyBpcworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJwor
IGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92
ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdb
JyAtbiAnMi42LjAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5n
ZSAxMzI2MzEgMi42LjAgMi42Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQK
KyBsb2NhbCBtaW5fdmVyCisgbG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAn
XScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEw
MDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBh
d2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScK
KyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisg
J1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5k
TW9kdWxlRGVwcyBlbjEzNzAKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBhd2sgLXYgbW9kdWxlPWVu
MTM3MCAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9k
dWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZv
ciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYg
KCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1d
CiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9
CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAg
d2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1v
ZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAg
ICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAg
ICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwi
LCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBt
b2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEK
ICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUg
PSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBt
b2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEp
IHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGlu
dG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAg
JworKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29zcmVsZWFzZQorKyBjYXQg
L3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42Ljk5
JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42
Ljk5CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisg
bG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMAor
KyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQz
fScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi45OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjcwNwor
IHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMy
NzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxlRGVwcyBlbjEzNzEK
KysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVs
L29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWVuMTM3MSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBz
cGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFb
aV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAg
ICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9t
b2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVz
LCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBj
aGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1v
ZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAg
IGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewog
ICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAg
ICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAg
IH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIp
IGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpF
TkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAg
dG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRl
cHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVz
ZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICdd
JworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42LjgnICddJworICdbJyAteiAnJyAn
XScKKyBJc0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOAorIGxvY2FsIGt2ZXIKKyBr
dmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycg
LW4gJzIuNi4wIDIuNi44JyAnXScKKysgZWNobyAyLjYuMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYwOAor
KyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQz
fScKKysgZWNobyAyLjYuOAorIG1heF92ZXI9MTMyNjE2Cisgc2hpZnQgMgorICdbJyAxMzI2MzEg
LWdlIDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI2MTYgJ10nCisgJ1snIC1uICcnICdd
JworIHJldHVybiAxCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92
ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2Fz
ZSAkbW9kIGluCisgJ1snIC1uICcyLjYuMAkyLjYuOTknICddJworICdbJyAteiAnJyAnXScKKyBJ
c0luVmVyc2lvblJhbmdlIDEzMjYzMSAyLjYuMCAyLjYuOTkKKyBsb2NhbCBrdmVyCisga3Zlcj0x
MzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBtYXhfdmVyCisgJ1snIC1uICcy
LjYuMCAyLjYuOTknICddJworKyBlY2hvIDIuNi4wCisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9
e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworIG1pbl92ZXI9MTMyNjA4CisrIGVj
aG8gMi42Ljk5CisrIGF3ayAnQkVHSU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygk
MioweDEwMCkrJDN9JworIG1heF92ZXI9MTMyNzA3Cisgc2hpZnQgMgorICdbJyAxMzI2MzEgLWdl
IDEzMjYwOCAnXScKKyAnWycgMTMyNjMxIC1sZSAxMzI3MDcgJ10nCisgcmV0dXJuIDAKKyBsb2Nh
bCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHZpYV9yaGluZQorKyBHZXQyNk1vZHVsZXNGaWxlCisr
IGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBt
b2R1bGU9dmlhX3JoaW5lICcKZnVuY3Rpb24gZmluZF9yZWxhdGVkX21vZHVsZXMobW9kLCBpLCBh
KSB7CiAgICBtb2R1bGVzW21vZF0gPSBkZXBzW21vZF0KICAgIHNwbGl0KGRlcHNbbW9kXSwgYSwg
IiwiKQogICAgZm9yIChpIGluIGEpIHsKICAgICAgICBpZiAoYVtpXSA9PSAiIikgY29udGludWUK
ICAgICAgICBpZiAoIW1vZHVsZXNbYVtpXV0pIHsKICAgICAgICAgICAgbW9kdWxlc1thW2ldXSA9
IGRlcHNbYVtpXV0KICAgICAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMoYVtpXSkKICAgICAg
ICB9CiAgICB9Cn0KCmZ1bmN0aW9uIHRvcF9zb3J0KG1vZHVsZXMsIGksIGopIHsKICAgIGNoYW5n
ZWQgPSAxCiAgICB3aGlsZSAoY2hhbmdlZCkgewogICAgICAgIGNoYW5nZWQgPSAwCiAgICAgICAg
Zm9yKGkgaW4gbW9kdWxlcykgewogICAgICAgICAgICBpZiAobW9kdWxlc1tpXSA9PSAiIikgewog
ICAgICAgICAgICAgICAgcHJpbnQgaQogICAgICAgICAgICAgICAgZGVsZXRlIG1vZHVsZXNbaV0K
ICAgICAgICAgICAgICAgIGZvciAoaiBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgICAgICAgICAg
c3ViKCJeImkiLCIsICIiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgICAgIHN1YigiLCJp
IiwiLCAiLCIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBj
aGFuZ2VkID0gMQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgpCRUdJTiB7CiAgICBo
YXZlX21vZHVsZSA9IDAKfQoKewogICAgaWYgKCQ0ICE9ICItIikgZGVwc1skMV0gPSAkNAogICAg
aWYgKCQxID09IG1vZHVsZSkgaGF2ZV9tb2R1bGUgPSAxCn0KCkVORCB7CiAgICBpZiAoaGF2ZV9t
b2R1bGUgPT0gMSkgewogICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZHVsZSkgIyBwdXRz
IHJlc3VsdHMgaW50byAibW9kdWxlcyIgYXJyYXkKICAgICAgICB0b3Bfc29ydChtb2R1bGVzKQog
ICAgfQp9CiAgICAnCisrIGNhdCAvcHJvYy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10n
CisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9k
X3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisg
J1snIC1uICcyLjYuMTAJMi42Ljk5JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25S
YW5nZSAxMzI2MzEgMi42LjEwIDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNo
aWZ0CisgbG9jYWwgbWluX3ZlcgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4xMCAyLjYu
OTknICddJworKyBlY2hvIDIuNi4xMAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgk
MSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtaW5fdmVyPTEzMjYxOAorKyBlY2hvIDIuNi45
OQorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDAp
KyQzfScKKyBtYXhfdmVyPTEzMjcwNworIHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MTgg
J10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNzA3ICddJworIHJldHVybiAwCisgbG9jYWwgZGVwcwor
KyBGaW5kTW9kdWxlRGVwcyBpODA0MgorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14y
XC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aTgwNDIg
JwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNb
bW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkg
aW4gYSkgewogICAgICAgIGlmIChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9k
dWxlc1thW2ldXSkgewogICAgICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAg
ICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVu
Y3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxl
IChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVz
KSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBw
cmludCBpCiAgICAgICAgICAgICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAg
Zm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIs
IG1vZHVsZXNbal0pCiAgICAgICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxl
c1tqXSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAg
ICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9
Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxl
KSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAg
ICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJt
b2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysg
Y2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRy
dWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9k
IHZlcnMKKyAnWycgMCAtbmUgMCAnXScKKyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJzIuNi4wCTIu
Ni45OScgJ10nCisgJ1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4w
IDIuNi45OQorIGxvY2FsIGt2ZXIKKyBrdmVyPTEzMjYzMQorIHNoaWZ0CisgbG9jYWwgbWluX3Zl
cgorIGxvY2FsIG1heF92ZXIKKyAnWycgLW4gJzIuNi4wIDIuNi45OScgJ10nCisrIGF3ayAnQkVH
SU57RlM9IlteMC05XSJ9e3ByaW50KCQxKjB4MTAwMDApKygkMioweDEwMCkrJDN9JworKyBlY2hv
IDIuNi4wCisgbWluX3Zlcj0xMzI2MDgKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0i
W14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3
MDcKKyBzaGlmdCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjA4ICddJworICdbJyAxMzI2MzEgLWxl
IDEzMjcwNyAnXScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgaW50
ZWxfbWNoX2FncAorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9j
L3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aW50ZWxfbWNoX2FncCAnCmZ1
bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2Rd
ID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBh
KSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVz
W2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAg
ICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlv
biB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNo
YW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsK
ICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50
IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3Ig
KGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9k
dWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pd
KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAg
ICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsK
ICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhh
dmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAg
ICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVs
ZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQg
L3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQor
IGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVy
cworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjAJMi42LjE0
JyAnXScKKyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjAgMi42
LjE0CisgbG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisg
bG9jYWwgbWF4X3ZlcgorICdbJyAtbiAnMi42LjAgMi42LjE0JyAnXScKKysgZWNobyAyLjYuMAor
KyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQz
fScKKyBtaW5fdmVyPTEzMjYwOAorKyBlY2hvIDIuNi4xNAorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAt
OV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjYyMgor
IHNoaWZ0IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MDggJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMy
NjIyICddJworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisgdHJ1ZQorIGxv
Y2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycwor
ICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2Fs
IG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdb
JyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjkJMi42LjIyJyAnXScK
KyAnWycgLXogJycgJ10nCisgSXNJblZlcnNpb25SYW5nZSAxMzI2MzEgMi42LjkgMi42LjIyCisg
bG9jYWwga3ZlcgorIGt2ZXI9MTMyNjMxCisgc2hpZnQKKyBsb2NhbCBtaW5fdmVyCisgbG9jYWwg
bWF4X3ZlcgorICdbJyAtbiAnMi42LjkgMi42LjIyJyAnXScKKysgZWNobyAyLjYuOQorKyBhd2sg
J0JFR0lOe0ZTPSJbXjAtOV0ifXtwcmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBt
aW5fdmVyPTEzMjYxNworKyBlY2hvIDIuNi4yMgorKyBhd2sgJ0JFR0lOe0ZTPSJbXjAtOV0ifXtw
cmludCgkMSoweDEwMDAwKSsoJDIqMHgxMDApKyQzfScKKyBtYXhfdmVyPTEzMjYzMAorIHNoaWZ0
IDIKKyAnWycgMTMyNjMxIC1nZSAxMzI2MTcgJ10nCisgJ1snIDEzMjYzMSAtbGUgMTMyNjMwICdd
JworICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMQorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnMi42LjEyCTIuNi45OScgJ10nCisg
J1snIC16ICcnICddJworIElzSW5WZXJzaW9uUmFuZ2UgMTMyNjMxIDIuNi4xMiAyLjYuOTkKKyBs
b2NhbCBrdmVyCisga3Zlcj0xMzI2MzEKKyBzaGlmdAorIGxvY2FsIG1pbl92ZXIKKyBsb2NhbCBt
YXhfdmVyCisgJ1snIC1uICcyLjYuMTIgMi42Ljk5JyAnXScKKysgZWNobyAyLjYuMTIKKysgYXdr
ICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisg
bWluX3Zlcj0xMzI2MjAKKysgZWNobyAyLjYuOTkKKysgYXdrICdCRUdJTntGUz0iW14wLTldIn17
cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30nCisgbWF4X3Zlcj0xMzI3MDcKKyBzaGlm
dCAyCisgJ1snIDEzMjYzMSAtZ2UgMTMyNjIwICddJworICdbJyAxMzI2MzEgLWxlIDEzMjcwNyAn
XScKKyByZXR1cm4gMAorIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMgc3BlZWRzdGVwX3Nt
aQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJu
ZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9c3BlZWRzdGVwX3NtaSAnCmZ1bmN0aW9uIGZp
bmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1tt
b2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAg
ICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7
CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRf
cmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29y
dChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsK
ICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAg
ICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAg
ICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9k
dWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkK
ICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAg
ICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgk
NCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxl
ID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3Jl
bGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5
CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9k
dWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1v
ZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAw
IC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2
ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1u
ZSAwICddJworIGNhc2UgJG1vZCBpbgorIG1vZD1uZGlzd3JhcHBlcgorIHVzZV9tb2RfdmVyPTEK
KyAnWycgLW4gJzAuMTAgICAgMC4xMScgJ10nCisgJ1snIC16IDEgJ10nCisgbG9jYWwgbW9kdmVy
CisrIHNlZCAtZSAncy9edmVyc2lvbjpbIFx0XVwrW14wLTldKlwoLipcKSQvXDEvO3Q7ZCcKKysg
YXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMHgxMDAwMCkrKCQyKjB4MTAwKSskM30n
CisrIG1vZGluZm8gbmRpc3dyYXBwZXIKKyBtb2R2ZXI9CisgdmVjaG8gMyAnTW9kdWxlIHZlcnNp
b24gZm9yIG5kaXN3cmFwcGVyIGlzICcKKyBsb2NhbCB2Cisgdj0zCisgc2hpZnQKKyAnWycgeCA9
IHgxICddJworICdbJyAzIC1sZSA0ICddJworIGVjaG8gTW9kdWxlIHZlcnNpb24gZm9yIG5kaXN3
cmFwcGVyIGlzCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysgRmluZE1vZHVsZURlcHMg
bmRpc3dyYXBwZXIKTW9kdWxlIHZlcnNpb24gZm9yIG5kaXN3cmFwcGVyIGlzCisrIEdldDI2TW9k
dWxlc0ZpbGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UK
KysgYXdrIC12IG1vZHVsZT1uZGlzd3JhcHBlciAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1
bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChk
ZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0g
IiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1v
ZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVz
KGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBq
KSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2Vk
ID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNb
aV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0
ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAg
ICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAg
ICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoK
QkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNb
JDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewog
ICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyht
b2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3Nv
cnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9Cisg
J1snIC16ICcnICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2Rf
dmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNh
c2UgJG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVy
CisgdXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2Ug
JG1vZCBpbgorIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisg
dXNlX21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1v
ZCBpbgorICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIGF0aF9w
Y2kKKysgR2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2Vy
bmVsL29zcmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPWF0aF9wY2kgJwpmdW5jdGlvbiBmaW5kX3Jl
bGF0ZWRfbW9kdWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQog
ICAgc3BsaXQoZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlm
IChhW2ldID09ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAg
ICAgICAgICBtb2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0
ZWRfbW9kdWxlcyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9k
dWxlcywgaSwgaikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAg
ICAgY2hhbmdlZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlm
IChtb2R1bGVzW2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAg
ICAgICBkZWxldGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMp
IHsKICAgICAgICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAg
ICAgICAgICAgICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9
CiAgICB9Cn0KCkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0g
Ii0iKSBkZXBzWyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEK
fQoKRU5EIHsKICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVk
X21vZHVsZXMobW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAg
ICAgIHRvcF9zb3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMK
KyBkZXBzPQorICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVy
cyB1c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUg
MCAnXScKKyBjYXNlICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1
c2VfbW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAn
XScKKyBjYXNlICRtb2QgaW4KKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2Vf
bW9kX3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMCAtbmUgMCAnXScK
KyBjYXNlICRtb2QgaW4KKyAnWycgLW4gJycgJ10nCisgbG9jYWwgZGVwcworKyBGaW5kTW9kdWxl
RGVwcyBpcHczOTQ1CisrIGF3ayAtdiBtb2R1bGU9aXB3Mzk0NSAnCmZ1bmN0aW9uIGZpbmRfcmVs
YXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAg
ICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYg
KGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAg
ICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRl
ZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1
bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAg
ICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYg
KG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAg
ICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykg
ewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAg
ICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0K
ICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAi
LSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9
CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRf
bW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAg
ICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJworKyBHZXQyNk1vZHVsZXNGaWxlCisr
IGdyZXAgLXEgJ14yXC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGNhdCAvcHJv
Yy9tb2R1bGVzCisgZGVwcz0KKyAnWycgLXogJycgJ10nCisgY29udGludWUKKyB0cnVlCisgbG9j
YWwgbW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisg
J1snIDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwg
bW9kIHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1sn
IDAgLW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgY29udGludWUKKyB0cnVlCisgbG9jYWwgbW9k
IHZlcnMgdXNlX21vZF92ZXIKKyB1c2VfbW9kX3Zlcj0KKyByZWFkIG1vZCB2ZXJzCisgJ1snIDAg
LW5lIDAgJ10nCisgY2FzZSAkbW9kIGluCisgJ1snIC1uICcnICddJworIGxvY2FsIGRlcHMKKysg
RmluZE1vZHVsZURlcHMgaXdsMzk0NQorKyBHZXQyNk1vZHVsZXNGaWxlCisrIGdyZXAgLXEgJ14y
XC40XC4nIC9wcm9jL3N5cy9rZXJuZWwvb3NyZWxlYXNlCisrIGF3ayAtdiBtb2R1bGU9aXdsMzk0
NSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwgaSwgYSkgewogICAgbW9kdWxl
c1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0sIGEsICIsIikKICAgIGZvciAo
aSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRpbnVlCiAgICAgICAgaWYgKCFt
b2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtpXV0gPSBkZXBzW2FbaV1dCiAg
ICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAgICAgICAgfQogICAgfQp9Cgpm
dW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBjaGFuZ2VkID0gMQogICAgd2hp
bGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAgICAgIGZvcihpIGluIG1vZHVs
ZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIpIHsKICAgICAgICAgICAgICAg
IHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVzW2ldCiAgICAgICAgICAgICAg
ICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAgICAgIHN1YigiXiJpIiwiLCAi
IiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIoIiwiaSIsIiwgIiwiLCBtb2R1
bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2hhbmdlZCA9IDEKICAg
ICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewogICAgaGF2ZV9tb2R1bGUgPSAw
Cn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQKICAgIGlmICgkMSA9PSBtb2R1
bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhhdmVfbW9kdWxlID09IDEpIHsK
ICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMgcHV0cyByZXN1bHRzIGludG8g
Im1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxlcykKICAgIH0KfQogICAgJwor
KyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcnICddJworIGNvbnRpbnVlCisg
dHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNlX21vZF92ZXI9CisgcmVhZCBt
b2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBpbgorICdbJyAtbiAnJyAnXScK
KyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIG1hYzgwMjExCisrIEdldDI2TW9kdWxlc0Zp
bGUKKysgZ3JlcCAtcSAnXjJcLjRcLicgL3Byb2Mvc3lzL2tlcm5lbC9vc3JlbGVhc2UKKysgYXdr
IC12IG1vZHVsZT1tYWM4MDIxMSAnCmZ1bmN0aW9uIGZpbmRfcmVsYXRlZF9tb2R1bGVzKG1vZCwg
aSwgYSkgewogICAgbW9kdWxlc1ttb2RdID0gZGVwc1ttb2RdCiAgICBzcGxpdChkZXBzW21vZF0s
IGEsICIsIikKICAgIGZvciAoaSBpbiBhKSB7CiAgICAgICAgaWYgKGFbaV0gPT0gIiIpIGNvbnRp
bnVlCiAgICAgICAgaWYgKCFtb2R1bGVzW2FbaV1dKSB7CiAgICAgICAgICAgIG1vZHVsZXNbYVtp
XV0gPSBkZXBzW2FbaV1dCiAgICAgICAgICAgIGZpbmRfcmVsYXRlZF9tb2R1bGVzKGFbaV0pCiAg
ICAgICAgfQogICAgfQp9CgpmdW5jdGlvbiB0b3Bfc29ydChtb2R1bGVzLCBpLCBqKSB7CiAgICBj
aGFuZ2VkID0gMQogICAgd2hpbGUgKGNoYW5nZWQpIHsKICAgICAgICBjaGFuZ2VkID0gMAogICAg
ICAgIGZvcihpIGluIG1vZHVsZXMpIHsKICAgICAgICAgICAgaWYgKG1vZHVsZXNbaV0gPT0gIiIp
IHsKICAgICAgICAgICAgICAgIHByaW50IGkKICAgICAgICAgICAgICAgIGRlbGV0ZSBtb2R1bGVz
W2ldCiAgICAgICAgICAgICAgICBmb3IgKGogaW4gbW9kdWxlcykgewogICAgICAgICAgICAgICAg
ICAgIHN1YigiXiJpIiwiLCAiIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgICAgICBzdWIo
IiwiaSIsIiwgIiwiLCBtb2R1bGVzW2pdKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgY2hhbmdlZCA9IDEKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKQkVHSU4gewog
ICAgaGF2ZV9tb2R1bGUgPSAwCn0KCnsKICAgIGlmICgkNCAhPSAiLSIpIGRlcHNbJDFdID0gJDQK
ICAgIGlmICgkMSA9PSBtb2R1bGUpIGhhdmVfbW9kdWxlID0gMQp9CgpFTkQgewogICAgaWYgKGhh
dmVfbW9kdWxlID09IDEpIHsKICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxlcyhtb2R1bGUpICMg
cHV0cyByZXN1bHRzIGludG8gIm1vZHVsZXMiIGFycmF5CiAgICAgICAgdG9wX3NvcnQobW9kdWxl
cykKICAgIH0KfQogICAgJworKyBjYXQgL3Byb2MvbW9kdWxlcworIGRlcHM9CisgJ1snIC16ICcn
ICddJworIGNvbnRpbnVlCisgdHJ1ZQorIGxvY2FsIG1vZCB2ZXJzIHVzZV9tb2RfdmVyCisgdXNl
X21vZF92ZXI9CisgcmVhZCBtb2QgdmVycworICdbJyAwIC1uZSAwICddJworIGNhc2UgJG1vZCBp
bgorICdbJyAtbiAnJyAnXScKKyBsb2NhbCBkZXBzCisrIEZpbmRNb2R1bGVEZXBzIHNreTIKKysg
R2V0MjZNb2R1bGVzRmlsZQorKyBncmVwIC1xICdeMlwuNFwuJyAvcHJvYy9zeXMva2VybmVsL29z
cmVsZWFzZQorKyBhd2sgLXYgbW9kdWxlPXNreTIgJwpmdW5jdGlvbiBmaW5kX3JlbGF0ZWRfbW9k
dWxlcyhtb2QsIGksIGEpIHsKICAgIG1vZHVsZXNbbW9kXSA9IGRlcHNbbW9kXQogICAgc3BsaXQo
ZGVwc1ttb2RdLCBhLCAiLCIpCiAgICBmb3IgKGkgaW4gYSkgewogICAgICAgIGlmIChhW2ldID09
ICIiKSBjb250aW51ZQogICAgICAgIGlmICghbW9kdWxlc1thW2ldXSkgewogICAgICAgICAgICBt
b2R1bGVzW2FbaV1dID0gZGVwc1thW2ldXQogICAgICAgICAgICBmaW5kX3JlbGF0ZWRfbW9kdWxl
cyhhW2ldKQogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24gdG9wX3NvcnQobW9kdWxlcywgaSwg
aikgewogICAgY2hhbmdlZCA9IDEKICAgIHdoaWxlIChjaGFuZ2VkKSB7CiAgICAgICAgY2hhbmdl
ZCA9IDAKICAgICAgICBmb3IoaSBpbiBtb2R1bGVzKSB7CiAgICAgICAgICAgIGlmIChtb2R1bGVz
W2ldID09ICIiKSB7CiAgICAgICAgICAgICAgICBwcmludCBpCiAgICAgICAgICAgICAgICBkZWxl
dGUgbW9kdWxlc1tpXQogICAgICAgICAgICAgICAgZm9yIChqIGluIG1vZHVsZXMpIHsKICAgICAg
ICAgICAgICAgICAgICBzdWIoIl4iaSIsIiwgIiIsIG1vZHVsZXNbal0pCiAgICAgICAgICAgICAg
ICAgICAgc3ViKCIsImkiLCIsICIsIiwgbW9kdWxlc1tqXSkKICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgIGNoYW5nZWQgPSAxCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0K
CkJFR0lOIHsKICAgIGhhdmVfbW9kdWxlID0gMAp9Cgp7CiAgICBpZiAoJDQgIT0gIi0iKSBkZXBz
WyQxXSA9ICQ0CiAgICBpZiAoJDEgPT0gbW9kdWxlKSBoYXZlX21vZHVsZSA9IDEKfQoKRU5EIHsK
ICAgIGlmIChoYXZlX21vZHVsZSA9PSAxKSB7CiAgICAgICAgZmluZF9yZWxhdGVkX21vZHVsZXMo
bW9kdWxlKSAjIHB1dHMgcmVzdWx0cyBpbnRvICJtb2R1bGVzIiBhcnJheQogICAgICAgIHRvcF9z
b3J0KG1vZHVsZXMpCiAgICB9Cn0KICAgICcKKysgY2F0IC9wcm9jL21vZHVsZXMKKyBkZXBzPQor
ICdbJyAteiAnJyAnXScKKyBjb250aW51ZQorIHRydWUKKyBsb2NhbCBtb2QgdmVycyB1c2VfbW9k
X3ZlcgorIHVzZV9tb2RfdmVyPQorIHJlYWQgbW9kIHZlcnMKKyAnWycgMSAtbmUgMCAnXScKKyAn
WycgLXogJycgJ10nCisgYnJlYWsKKyAnWycgLXogJycgJ10nCisgcmV0dXJuIDAKKyByZXQ9MAor
ICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBmb3Ig
Yml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysgYXdr
ICdCRUdJTntwcmludCBzdWJzdHIoIjk0RkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBuZXdf
Q0hBSU5fVVBfVE89OTQKKyAnWycgLW4gOTQgJ10nCisgQ0hBSU5fVVBfVE89OTQKKyBiaXQ9RkJT
cGxhc2hQcm9ncmVzcworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzk0XSBFeGVjdXRpbmcgRkJTcGxh
c2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10n
CisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOTRdJyBFeGVjdXRpbmcgRkJT
cGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcworICdb
JyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTY1NTMwCisgVGltZWRGQlNwbGFzaEN0
bCAncHJvZ3Jlc3MgNjU1MzBcbnJlcGFpbnRcbicKaGliZXJuYXRlOiBbOTRdIEV4ZWN1dGluZyBG
QlNwbGFzaFByb2dyZXNzIC4uLgorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScK
KyAnWycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNw
ZW5kQml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vi
c3RyKCI5NVhIYWNrc1N1c3BlbmRIb29rMiIsIDEsIDIpfScKKyBuZXdfQ0hBSU5fVVBfVE89OTUK
KyAnWycgLW4gOTUgJ10nCisgQ0hBSU5fVVBfVE89OTUKKyBiaXQ9WEhhY2tzU3VzcGVuZEhvb2sy
CisgdmVjaG8gMSAnaGliZXJuYXRlOiBbOTVdIEV4ZWN1dGluZyBYSGFja3NTdXNwZW5kSG9vazIg
Li4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1s
ZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzk1XScgRXhlY3V0aW5nIFhIYWNrc1N1c3BlbmRI
b29rMiAuLi4KaGliZXJuYXRlOiBbOTVdIEV4ZWN1dGluZyBYSGFja3NTdXNwZW5kSG9vazIgLi4u
CisgJ1snIC1uICcnICddJworIFhIYWNrc1N1c3BlbmRIb29rMgorICdbJyAteiAxICddJworIHJl
dHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAnWycgMCAtZ3QgMCAnXScKKyAnWycg
LW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5kQml0c2AnCisgbG9jYWwgbmV3X0NI
QUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI5N0NoYW5nZVRvU3dzdXNwVlQi
LCAxLCAyKX0nCisgbmV3X0NIQUlOX1VQX1RPPTk3CisgJ1snIC1uIDk3ICddJworIENIQUlOX1VQ
X1RPPTk3CisgYml0PUNoYW5nZVRvU3dzdXNwVlQKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5N10g
RXhlY3V0aW5nIENoYW5nZVRvU3dzdXNwVlQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQK
KyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzk3
XScgRXhlY3V0aW5nIENoYW5nZVRvU3dzdXNwVlQgLi4uCmhpYmVybmF0ZTogWzk3XSBFeGVjdXRp
bmcgQ2hhbmdlVG9Td3N1c3BWVCAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2hhbmdlVG9Td3N1c3BW
VAorICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisg
J1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVu
ZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9UTworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0
cigiOThDaGVja1J1bmxldmVsIiwgMSwgMil9JworIG5ld19DSEFJTl9VUF9UTz05OAorICdbJyAt
biA5OCAnXScKKyBDSEFJTl9VUF9UTz05OAorIGJpdD1DaGVja1J1bmxldmVsCisgdmVjaG8gMSAn
aGliZXJuYXRlOiBbOThdIEV4ZWN1dGluZyBDaGVja1J1bmxldmVsIC4uLiAnCisgbG9jYWwgdgor
IHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhp
YmVybmF0ZTogJ1s5OF0nIEV4ZWN1dGluZyBDaGVja1J1bmxldmVsIC4uLgpoaWJlcm5hdGU6IFs5
OF0gRXhlY3V0aW5nIENoZWNrUnVubGV2ZWwgLi4uCisgJ1snIC1uICcnICddJworIENoZWNrUnVu
bGV2ZWwKKyAnWycgLXogMyAnXScKKyBjYXNlICIke1JVTkxFVkVMfSIgaW4KKyByZXR1cm4gMAor
IHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisgJ1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICdd
JworIGZvciBiaXQgaW4gJ2BTb3J0U3VzcGVuZEJpdHNgJworIGxvY2FsIG5ld19DSEFJTl9VUF9U
TworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiOThGdWxsU3BlZWRDUFVTdXNwZW5kIiwgMSwg
Mil9JworIG5ld19DSEFJTl9VUF9UTz05OAorICdbJyAtbiA5OCAnXScKKyBDSEFJTl9VUF9UTz05
OAorIGJpdD1GdWxsU3BlZWRDUFVTdXNwZW5kCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbOThdIEV4
ZWN1dGluZyBGdWxsU3BlZWRDUFVTdXNwZW5kIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5
OF0nIEV4ZWN1dGluZyBGdWxsU3BlZWRDUFVTdXNwZW5kIC4uLgpoaWJlcm5hdGU6IFs5OF0gRXhl
Y3V0aW5nIEZ1bGxTcGVlZENQVVN1c3BlbmQgLi4uCisgJ1snIC1uICcnICddJworIEZ1bGxTcGVl
ZENQVVN1c3BlbmQKKyBsb2NhbCBjcHUKKysgbWt0ZW1wIC90bXAvdG1wLmhpYmVybmF0ZS5YWFhY
WFgKKyBIV19GVUxMU1BFRURDUFVfUkVTVE9SRVI9L3RtcC90bXAuaGliZXJuYXRlLk9jMTIxYQor
IGZvciBjcHUgaW4gJy9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1LyovY3B1ZnJlcScKKyBsb2NhbCBj
cHVudW0gbWluX2ZyZXEgc2V0c3BlZWQgZ292ZXJub3IgaQorICdbJyAtZCAvc3lzL2RldmljZXMv
c3lzdGVtL2NwdS9jcHUwL2NwdWZyZXEgJ10nCisgY3B1bnVtPTAvY3B1ZnJlcQorIGNwdW51bT0w
CisgSXNBTnVtYmVyIDAKKyBjYXNlICIkMSIgaW4KKyByZXR1cm4gMAorIGV2YWwgJ2RvbmVfdGhp
cz0kaHdfY3B1XzBfZG9uZScKKysgZG9uZV90aGlzPQorICdbJyB4ID0geGNwdWRvbmUgJ10nCisr
IGNhdCAvc3lzL2RldmljZXMvc3lzdGVtL2NwdS9jcHUwL2NwdWZyZXEvYWZmZWN0ZWRfY3B1cwor
IGZvciBpIGluICdgY2F0ICRjcHUvYWZmZWN0ZWRfY3B1cyAyPi9kZXYvbnVsbGAnCisgSXNBTnVt
YmVyIDAKKyBjYXNlICIkMSIgaW4KKyByZXR1cm4gMAorIGV2YWwgaHdfY3B1XzBfZG9uZT1jcHVk
b25lCisrIGh3X2NwdV8wX2RvbmU9Y3B1ZG9uZQorKyBjYXQgL3N5cy9kZXZpY2VzL3N5c3RlbS9j
cHUvY3B1MC9jcHVmcmVxL3NjYWxpbmdfbWF4X2ZyZXEKKyBtYXhfZnJlcT0xNzMzMDAwCisrIGNh
dCAvc3lzL2RldmljZXMvc3lzdGVtL2NwdS9jcHUwL2NwdWZyZXEvc2NhbGluZ19taW5fZnJlcQor
IG1pbl9mcmVxPTgwMDAwMAorICdbJyAtZiAvc3lzL2RldmljZXMvc3lzdGVtL2NwdS9jcHUwL2Nw
dWZyZXEvc2NhbGluZ19zZXRzcGVlZCAnXScKKysgY2F0IC9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1
L2NwdTAvY3B1ZnJlcS9zY2FsaW5nX2dvdmVybm9yCisgZ292ZXJub3I9cGVyZm9ybWFuY2UKKyBj
YXQKKyBncmVwIC1xIHBlcmZvcm1hbmNlIC9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1L2NwdTAvY3B1
ZnJlcS9zY2FsaW5nX2F2YWlsYWJsZV9nb3Zlcm5vcnMKKyBlY2hvIHBlcmZvcm1hbmNlCisgZWNo
byAxNzMzMDAwCisgdmVjaG8gMiAnU3dpdGNoZWQgdG8gcGVyZm9ybWFuY2UsIHdpdGggbWluIGZy
ZXEgYXQgMTczMzAwMCcKKyBsb2NhbCB2Cisgdj0yCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAyIC1sZSA0ICddJworIGVjaG8gU3dpdGNoZWQgdG8gcGVyZm9ybWFuY2UsIHdpdGggbWlu
IGZyZXEgYXQgMTczMzAwMAorIHJldHVybiAwCisgcmV0PTAKKyAnWycgMCAtZ2UgMiAnXScKKyAn
WycgMCAtZ3QgMCAnXScKKyAnWycgLW4gJycgJ10nCisgZm9yIGJpdCBpbiAnYFNvcnRTdXNwZW5k
Qml0c2AnCisgbG9jYWwgbmV3X0NIQUlOX1VQX1RPCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3Ry
KCI5OFN3c3VzcDJDb25maWdTZXQiLCAxLCAyKX0nClN3aXRjaGVkIHRvIHBlcmZvcm1hbmNlLCB3
aXRoIG1pbiBmcmVxIGF0IDE3MzMwMDAKKyBuZXdfQ0hBSU5fVVBfVE89OTgKKyAnWycgLW4gOTgg
J10nCisgQ0hBSU5fVVBfVE89OTgKKyBiaXQ9U3dzdXNwMkNvbmZpZ1NldAorIHZlY2hvIDEgJ2hp
YmVybmF0ZTogWzk4XSBFeGVjdXRpbmcgU3dzdXNwMkNvbmZpZ1NldCAuLi4gJworIGxvY2FsIHYK
KyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBo
aWJlcm5hdGU6ICdbOThdJyBFeGVjdXRpbmcgU3dzdXNwMkNvbmZpZ1NldCAuLi4KKyAnWycgLW4g
JycgJ10nCisgU3dzdXNwMkNvbmZpZ1NldAorICdbJyAtbiAnJyAnXScKKyAnWycgLW4gJycgJ10n
CisgJ1snIHggPSB4bm9jYWNoZSAnXScKKyAnWycgLW4gJycgJ10nCisgJ1snIC1uIDAgJ10nCisg
J1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvcmVib290ICddJworIGVjaG8gMAorICdbJyAtbiAx
ICddJworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL3VzZXJfaW50ZXJmYWNlL2VuYWJsZV9l
c2NhcGUgJ10nCisgZWNobyAxCisgJ1snIC1uIDEgJ10nCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4
b25pY2UvdXNlcl9pbnRlcmZhY2UvZGVmYXVsdF9jb25zb2xlX2xldmVsICddJworIGVjaG8gMQor
ICdbJyAtbiAnJyAnXScKKyAnWycgLW4gJycgJ10nCisgJ1snIC1uICcnICddJworICdbJyAtbiAn
JyAnXScKKyBTd3N1c3AyU2V0dXBDcnlwdG9BUEkKKyBTd3N1c3BJc0F0TGVhc3RWZXJzaW9uIDMz
NjIyMjc3CmhpYmVybmF0ZTogWzk4XSBFeGVjdXRpbmcgU3dzdXNwMkNvbmZpZ1NldCAuLi4KKysg
YXdrICdCRUdJTntGUz0iW14wLTldIn17cHJpbnQoJDEqMTY3NzcyMTYpKygkMio2NTUzNikrKCQz
KjI1NikrJDR9JyAvc3lzL3Bvd2VyL3R1eG9uaWNlL3ZlcnNpb24KKyB2ZXI9NTAzMzE2NDgKKyAn
WycgNTAzMzE2NDggLWdlIDMzNjIyMjc3ICddJworIHJldHVybiAwCisgU1dTVVNQX01PRFVMRVNf
TE9BREVEPQorICdbJyAtbiBsemYgJ10nCisgJ1snIGx6ZiAnIT0nIG5vbmUgJ10nCisgZ3JlcCAt
cSAnXm5hbWUuKjogbHpmJCcgL3Byb2MvY3J5cHRvCisgJ1snIGx6ZiAnIT0nIG5vbmUgJ10nCisg
Y29tcHJlc3Npb25fYWxnb3JpdGhtPWx6ZgorIGRpc2FibGVfdmFsdWU9MAorICdbJyAtZiAvc3lz
L3Bvd2VyL3R1eG9uaWNlL2NvbXByZXNzaW9uL2Rpc2FibGVfY29tcHJlc3Npb24gJ10nCisgJ1sn
IC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvY29tcHJlc3Npb24vZW5hYmxlZCAnXScKKyBlY2hvIDEK
KyAnWycgLWYgL3N5cy9wb3dlci90dXhvbmljZS9jb21wcmVzc2lvbi9jb21wcmVzc29yICddJwor
ICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2NvbXByZXNzaW9uL2FsZ29yaXRobSAnXScKKyBl
Y2hvIGx6ZgorICdbJyAtbiBub25lICddJworICdbJyBub25lICchPScgbm9uZSAnXScKKyAnWycg
bm9uZSAnIT0nIG5vbmUgJ10nCisgZW5jcnlwdGlvbl9hbGdvcml0aG09CisgZGlzYWJsZV92YWx1
ZT0xCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvZGlzYWJsZV9lbmNyeXB0aW9uICddJwor
ICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2VuYWJsZWQgJ10nCisgJ1snIC1mIC9zeXMvcG93
ZXIvdHV4b25pY2UvZW5jcnlwdG9yICddJworICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2Fs
Z29yaXRobSAnXScKKyAnWycgLW4gL3RtcC90bXAuaGliZXJuYXRlLmptRndBZCAnXScKKyAnWycg
LWYgL3RtcC90bXAuaGliZXJuYXRlLmptRndBZCAnXScKKyAuIC90bXAvdG1wLmhpYmVybmF0ZS5q
bUZ3QWQKKysgZWNobyAvc2Jpbi90dXhvbmljZXVpX2Zic3BsYXNoCisgcmV0dXJuIDAKKyByZXQ9
MAorICdbJyAwIC1nZSAyICddJworICdbJyAwIC1ndCAwICddJworICdbJyAtbiAnJyAnXScKKyBm
b3IgYml0IGluICdgU29ydFN1c3BlbmRCaXRzYCcKKyBsb2NhbCBuZXdfQ0hBSU5fVVBfVE8KKysg
YXdrICdCRUdJTntwcmludCBzdWJzdHIoIjk5RG9Td3N1c3AyIiwgMSwgMil9JworIG5ld19DSEFJ
Tl9VUF9UTz05OQorICdbJyAtbiA5OSAnXScKKyBDSEFJTl9VUF9UTz05OQorIGJpdD1Eb1N3c3Vz
cDIKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5OV0gRXhlY3V0aW5nIERvU3dzdXNwMiAuLi4gJwor
IGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10n
CisgZWNobyBoaWJlcm5hdGU6ICdbOTldJyBFeGVjdXRpbmcgRG9Td3N1c3AyIC4uLgpoaWJlcm5h
dGU6IFs5OV0gRXhlY3V0aW5nIERvU3dzdXNwMiAuLi4KKyAnWycgLW4gJycgJ10nCisgRG9Td3N1
c3AyCisgbG9jYWwgZXJyb3IKKyAnWycgLW4gJycgJ10nCisgJ1snIC16ICcnICddJworIHZlY2hv
IDEgJ2hpYmVybmF0ZTogQWN0aXZhdGluZyBzdXNwZW5kIC4uLicKKyBsb2NhbCB2Cisgdj0xCisg
c2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRl
OiBBY3RpdmF0aW5nIHN1c3BlbmQgLi4uCmhpYmVybmF0ZTogQWN0aXZhdGluZyBzdXNwZW5kIC4u
LgorIFNhdmVEbWVzZworKyBta3RlbXAgL3RtcC90bXAuaGliZXJuYXRlLlhYWFhYWAorIERNRVNH
X09SSUc9L3RtcC90bXAuaGliZXJuYXRlLkdTUDl3YworIGRtZXNnCisgcmV0dXJuIDAKKysgRG9T
dXNwZW5kCisrICdbJyAtZiAvc3lzL3Bvd2VyL3R1eG9uaWNlL2RvX2hpYmVybmF0ZSAnXScKKysg
ZWNobworKyByZWFkIFJFUExZCisrIGVjaG8gMAorKyByZXR1cm4gMAorIGVycm9yPTAKKyAnWycg
LW4gMCAnXScKKyAnWycgMCAtbmUgMCAnXScKKyBQcmludEVycm9ycyAwCisgbG9jYWwgY29kZSBi
aXRfbnVtCisgY29kZT0wCisgJ1snIC1uIDAgJ10nCisgJ1snIDAgLWVxIDAgJ10nCisgcmV0dXJu
IDAKKyAnWycgLW4gJycgJ10nCisgQ2xlYW51cERtZXNnCisgJ1snIC1uIC90bXAvdG1wLmhpYmVy
bmF0ZS5HU1A5d2MgJ10nCisgcm0gLWYgL3RtcC90bXAuaGliZXJuYXRlLkdTUDl3YworIHJldHVy
biAwCisgJ1snIC1mIC9zeXMvcG93ZXIvdHV4b25pY2UvZnJlZXplcl90ZXN0ICddJworIGVjaG8g
MAorICdbJyAtbiAnJyAnXScKKyByZXR1cm4gMAorIHJldD0wCisgJ1snIDAgLWdlIDIgJ10nCisg
J1snIDAgLWd0IDAgJ10nCisgJ1snIC1uICcnICddJworKyBTb3J0UmVzdW1lQml0cworKyBzb3J0
IC1ybgorKyAvYmluL2VjaG8gLW5lICcxOUxvZ2luUGlkZ2luXG4zMFNlcnZpY2VzU3RhcnRcbjkw
TW9kdWxlc0xvYWRcbjg1WEhhY2tzUmVzdW1lSG9vazJcbjExWEhhY2tzUmVzdW1lSG9vazFcbjEy
RkJTcGxhc2hPZmZcbjE1RkJTcGxhc2hQcm9ncmVzc1xuMjBGQlNwbGFzaFByb2dyZXNzXG4zMEZC
U3BsYXNoUHJvZ3Jlc3NcbjQwRkJTcGxhc2hQcm9ncmVzc1xuNTBGQlNwbGFzaFByb2dyZXNzXG42
MEZCU3BsYXNoUHJvZ3Jlc3NcbjcwRkJTcGxhc2hQcm9ncmVzc1xuODBGQlNwbGFzaFByb2dyZXNz
XG45MEZCU3BsYXNoUHJvZ3Jlc3Ncbjk1RkJTcGxhc2hTdGFydFJlc3VtZVxuNzBDbG9ja1Jlc3Rv
cmVcbjk4RnVsbFNwZWVkQ1BVUmVzdW1lXG4wMFJlbW92ZVN3c3VzcFByb2NDcnVmdFxuMTFTd3N1
c3AyQ2xlYW51cEZpbGV3cml0ZXJcbjcwQ2xvY2tSZXN0b3JlXG45N0NoYW5nZUZyb21Td3N1c3BW
VFxuNTlSZW1vdW50WEZTQm9vdFJXXG44OVJlc3RvcmVLZXJuZWxNb2Rwcm9iZVxuMDFOb3RlTGFz
dFJlc3VtZVxuMDFMb2NrRmlsZVB1dFxuJworIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI5OEZ1bGxTcGVlZENQVVJlc3VtZSIsIDEsIDIp
fScKKyBUSElTX1BPUz05OAorICdbJyAteiA5OCAnXScKKyBiaXQ9RnVsbFNwZWVkQ1BVUmVzdW1l
CisgJ1snIDk4IC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs5OF0gRXhlY3V0aW5n
IEZ1bGxTcGVlZENQVVJlc3VtZSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4
ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbOThdJyBFeGVj
dXRpbmcgRnVsbFNwZWVkQ1BVUmVzdW1lIC4uLgpoaWJlcm5hdGU6IFs5OF0gRXhlY3V0aW5nIEZ1
bGxTcGVlZENQVVJlc3VtZSAuLi4KKyAnWycgLW4gJycgJ10nCisgRnVsbFNwZWVkQ1BVUmVzdW1l
CisgJ1snIC1mIC90bXAvdG1wLmhpYmVybmF0ZS5PYzEyMWEgJ10nCisgLiAvdG1wL3RtcC5oaWJl
cm5hdGUuT2MxMjFhCisrIGVjaG8gODAwMDAwCisrIGVjaG8gcGVyZm9ybWFuY2UKKysgJ1snIC1m
IC9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1L2NwdTAvY3B1ZnJlcS9zY2FsaW5nX3NldHNwZWVkICdd
JworIHJtIC1mIC90bXAvdG1wLmhpYmVybmF0ZS5PYzEyMWEKKyByZXR1cm4gMAorIGZvciBiaXQg
aW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI5N0NoYW5n
ZUZyb21Td3N1c3BWVCIsIDEsIDIpfScKKyBUSElTX1BPUz05NworICdbJyAteiA5NyAnXScKKyBi
aXQ9Q2hhbmdlRnJvbVN3c3VzcFZUCisgJ1snIDk3IC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJl
cm5hdGU6IFs5N10gRXhlY3V0aW5nIENoYW5nZUZyb21Td3N1c3BWVCAuLi4gJworIGxvY2FsIHYK
KyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBo
aWJlcm5hdGU6ICdbOTddJyBFeGVjdXRpbmcgQ2hhbmdlRnJvbVN3c3VzcFZUIC4uLgpoaWJlcm5h
dGU6IFs5N10gRXhlY3V0aW5nIENoYW5nZUZyb21Td3N1c3BWVCAuLi4KKyAnWycgLW4gJycgJ10n
CisgQ2hhbmdlRnJvbVN3c3VzcFZUCisgJ1snIC1uICcnICddJworIHJldHVybiAwCisgZm9yIGJp
dCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjk1RkJT
cGxhc2hTdGFydFJlc3VtZSIsIDEsIDIpfScKKyBUSElTX1BPUz05NQorICdbJyAteiA5NSAnXScK
KyBiaXQ9RkJTcGxhc2hTdGFydFJlc3VtZQorICdbJyA5NSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAn
aGliZXJuYXRlOiBbOTVdIEV4ZWN1dGluZyBGQlNwbGFzaFN0YXJ0UmVzdW1lIC4uLiAnCisgbG9j
YWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBl
Y2hvIGhpYmVybmF0ZTogJ1s5NV0nIEV4ZWN1dGluZyBGQlNwbGFzaFN0YXJ0UmVzdW1lIC4uLgpo
aWJlcm5hdGU6IFs5NV0gRXhlY3V0aW5nIEZCU3BsYXNoU3RhcnRSZXN1bWUgLi4uCisgJ1snIC1u
ICcnICddJworIEZCU3BsYXNoU3RhcnRSZXN1bWUKKyBUaW1lZEZCU3BsYXNoQ3RsICdzZXQgdHR5
IHNpbGVudCAyXG5zZXQgbW9kZSBzaWxlbnRcbnNldCB0aGVtZSBzdXNwZW5kMlxucmVwYWludFxu
JworIFRpbWVkRkJTcGxhc2hDdGwgJ3NldCBtZXNzYWdlIFJlbG9hZGluZyBkcml2ZXJzIGFuZCBh
cHBsaWNhdGlvbnMgLi4uXG5yZXBhaW50XG4nCisgRkJTUExBU0hfUFJPR1JFU1M9MAorIEZCU3Bs
YXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz02NTUzCisg
VGltZWRGQlNwbGFzaEN0bCAncHJvZ3Jlc3MgNjU1M1xucmVwYWludFxuJworIHJldHVybiAwCisg
Zm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIo
IjkwTW9kdWxlc0xvYWQiLCAxLCAyKX0nCisgVEhJU19QT1M9OTAKKyAnWycgLXogOTAgJ10nCisg
Yml0PU1vZHVsZXNMb2FkCisgJ1snIDkwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6
IFs5MF0gRXhlY3V0aW5nIE1vZHVsZXNMb2FkIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s5
MF0nIEV4ZWN1dGluZyBNb2R1bGVzTG9hZCAuLi4KaGliZXJuYXRlOiBbOTBdIEV4ZWN1dGluZyBN
b2R1bGVzTG9hZCAuLi4KKyAnWycgLW4gJycgJ10nCisgTW9kdWxlc0xvYWQKKyAnWycgLXogJyBh
dXRvJyAnXScKKyBDaGVja01vZHVsZVN1cHBvcnQKKyAnWycgLWYgL3Byb2MvbW9kdWxlcyAnXScK
KyByZXR1cm4gMAorIFJlc3RvcmVLZXJuZWxNb2Rwcm9iZQorICdbJyAtbiAvc2Jpbi9tb2Rwcm9i
ZSAnXScKKyBlY2hvIC9zYmluL21vZHByb2JlCisgdW5zZXQgS0VSTkVMX01PRFBST0JFCisgJ1sn
IC1uICcnICddJworIHJldHVybiAwCisgbG9jYWwgbW9kCisgZm9yIG1vZCBpbiAnJE1PRF9MT0FE
JworICdbJyBhdXRvID0gYXV0byAnXScKKyBjb250aW51ZQorIHJldHVybiAwCisgZm9yIGJpdCBp
biAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjkwRkJTcGxh
c2hQcm9ncmVzcyIsIDEsIDIpfScKKyBUSElTX1BPUz05MAorICdbJyAteiA5MCAnXScKKyBiaXQ9
RkJTcGxhc2hQcm9ncmVzcworICdbJyA5MCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRl
OiBbOTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgorIHY9MQor
IHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0
ZTogJ1s5MF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6IFs5MF0g
RXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZCU3BsYXNo
UHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0xMzEwNgorIFRp
bWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDEzMTA2XG5yZXBhaW50XG4nCisgcmV0dXJuIDAKKyBm
b3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigi
ODlSZXN0b3JlS2VybmVsTW9kcHJvYmUiLCAxLCAyKX0nCisgVEhJU19QT1M9ODkKKyAnWycgLXog
ODkgJ10nCisgYml0PVJlc3RvcmVLZXJuZWxNb2Rwcm9iZQorICdbJyA4OSAtZ3QgOTkgJ10nCisg
dmVjaG8gMSAnaGliZXJuYXRlOiBbODldIEV4ZWN1dGluZyBSZXN0b3JlS2VybmVsTW9kcHJvYmUg
Li4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1s
ZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzg5XScgRXhlY3V0aW5nIFJlc3RvcmVLZXJuZWxN
b2Rwcm9iZSAuLi4KaGliZXJuYXRlOiBbODldIEV4ZWN1dGluZyBSZXN0b3JlS2VybmVsTW9kcHJv
YmUgLi4uCisgJ1snIC1uICcnICddJworIFJlc3RvcmVLZXJuZWxNb2Rwcm9iZQorICdbJyAtbiAn
JyAnXScKKyAnWycgLW4gJycgJ10nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3Vt
ZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiODVYSGFja3NSZXN1bWVIb29rMiIs
IDEsIDIpfScKKyBUSElTX1BPUz04NQorICdbJyAteiA4NSAnXScKKyBiaXQ9WEhhY2tzUmVzdW1l
SG9vazIKKyAnWycgODUgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzg1XSBFeGVj
dXRpbmcgWEhhY2tzUmVzdW1lSG9vazIgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAn
WycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzg1XScg
RXhlY3V0aW5nIFhIYWNrc1Jlc3VtZUhvb2syIC4uLgpoaWJlcm5hdGU6IFs4NV0gRXhlY3V0aW5n
IFhIYWNrc1Jlc3VtZUhvb2syIC4uLgorICdbJyAtbiAnJyAnXScKKyBYSGFja3NSZXN1bWVIb29r
MgorICdbJyAteiAxICddJworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRz
YCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjgwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIp
fScKKyBUSElTX1BPUz04MAorICdbJyAteiA4MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcwor
ICdbJyA4MCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbODBdIEV4ZWN1dGluZyBG
QlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4
MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s4MF0nIEV4ZWN1dGlu
ZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6IFs4MF0gRXhlY3V0aW5nIEZCU3BsYXNo
UHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEg
PSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz0xOTY1OQorIFRpbWVkRkJTcGxhc2hDdGwgJ3By
b2dyZXNzIDE5NjU5XG5yZXBhaW50XG4nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJl
c3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiNzBGQlNwbGFzaFByb2dyZXNz
IiwgMSwgMil9JworIFRISVNfUE9TPTcwCisgJ1snIC16IDcwICddJworIGJpdD1GQlNwbGFzaFBy
b2dyZXNzCisgJ1snIDcwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs3MF0gRXhl
Y3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAn
WycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzcwXScg
RXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCmhpYmVybmF0ZTogWzcwXSBFeGVjdXRpbmcg
RkJTcGxhc2hQcm9ncmVzcyAuLi4KKyAnWycgLW4gJycgJ10nCisgRkJTcGxhc2hQcm9ncmVzcwor
ICdbJyB4MSA9IHgxICddJworIEZCU1BMQVNIX1BST0dSRVNTPTI2MjEyCisgVGltZWRGQlNwbGFz
aEN0bCAncHJvZ3Jlc3MgMjYyMTJcbnJlcGFpbnRcbicKKyByZXR1cm4gMAorIGZvciBiaXQgaW4g
J2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI3MENsb2NrUmVz
dG9yZSIsIDEsIDIpfScKKyBUSElTX1BPUz03MAorICdbJyAteiA3MCAnXScKKyBiaXQ9Q2xvY2tS
ZXN0b3JlCisgJ1snIDcwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs3MF0gRXhl
Y3V0aW5nIENsb2NrUmVzdG9yZSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4
ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNzBdJyBFeGVj
dXRpbmcgQ2xvY2tSZXN0b3JlIC4uLgpoaWJlcm5hdGU6IFs3MF0gRXhlY3V0aW5nIENsb2NrUmVz
dG9yZSAuLi4KKyAnWycgLW4gJycgJ10nCisgQ2xvY2tSZXN0b3JlCisgY2FzZSAiJERJU1RSSUJV
VElPTiIgaW4KKyAvc2Jpbi9od2Nsb2NrIC0taGN0b3N5cworIGZvciBiaXQgaW4gJ2BTb3J0UmVz
dW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI3MENsb2NrUmVzdG9yZSIsIDEs
IDIpfScKKyBUSElTX1BPUz03MAorICdbJyAteiA3MCAnXScKKyBiaXQ9Q2xvY2tSZXN0b3JlCisg
J1snIDcwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFs3MF0gRXhlY3V0aW5nIENs
b2NrUmVzdG9yZSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10n
CisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNzBdJyBFeGVjdXRpbmcgQ2xv
Y2tSZXN0b3JlIC4uLgpoaWJlcm5hdGU6IFs3MF0gRXhlY3V0aW5nIENsb2NrUmVzdG9yZSAuLi4K
KyAnWycgLW4gJycgJ10nCisgQ2xvY2tSZXN0b3JlCisgY2FzZSAiJERJU1RSSUJVVElPTiIgaW4K
KyAvc2Jpbi9od2Nsb2NrIC0taGN0b3N5cworIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2An
CisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCI2MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0n
CisgVEhJU19QT1M9NjAKKyAnWycgLXogNjAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAn
WycgNjAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzYwXSBFeGVjdXRpbmcgRkJT
cGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNjBdJyBFeGVjdXRpbmcg
RkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRlOiBbNjBdIEV4ZWN1dGluZyBGQlNwbGFzaFBy
b2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0g
eDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9MzI3NjUKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9n
cmVzcyAzMjc2NVxucmVwYWludFxuJworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1
bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjU5UmVtb3VudFhGU0Jvb3RSVyIs
IDEsIDIpfScKKyBUSElTX1BPUz01OQorICdbJyAteiA1OSAnXScKKyBiaXQ9UmVtb3VudFhGU0Jv
b3RSVworICdbJyA1OSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbNTldIEV4ZWN1
dGluZyBSZW1vdW50WEZTQm9vdFJXIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s1OV0nIEV4
ZWN1dGluZyBSZW1vdW50WEZTQm9vdFJXIC4uLgpoaWJlcm5hdGU6IFs1OV0gRXhlY3V0aW5nIFJl
bW91bnRYRlNCb290UlcgLi4uCisgJ1snIC1uICcnICddJworIFJlbW91bnRYRlNCb290UlcKKyAn
WycgJycgPSAxICddJworIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVH
SU57cHJpbnQgc3Vic3RyKCI1MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgVEhJU19QT1M9
NTAKKyAnWycgLXogNTAgJ10nCisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgNTAgLWd0IDk5
ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzUwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVz
cyAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEg
LWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbNTBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9n
cmVzcyAuLi4KaGliZXJuYXRlOiBbNTBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgor
ICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJT
UExBU0hfUFJPR1JFU1M9MzkzMTgKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyAzOTMxOFxu
cmVwYWludFxuJworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysg
YXdrICdCRUdJTntwcmludCBzdWJzdHIoIjQwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBU
SElTX1BPUz00MAorICdbJyAteiA0MCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyA0
MCAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbNDBdIEV4ZWN1dGluZyBGQlNwbGFz
aFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScK
KyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1s0MF0nIEV4ZWN1dGluZyBGQlNw
bGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6IFs0MF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jl
c3MgLi4uCisgJ1snIC1uICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAn
XScKKyBGQlNQTEFTSF9QUk9HUkVTUz00NTg3MQorIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNz
IDQ1ODcxXG5yZXBhaW50XG4nCisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJp
dHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMzBTZXJ2aWNlc1N0YXJ0IiwgMSwgMil9
JworIFRISVNfUE9TPTMwCisgJ1snIC16IDMwICddJworIGJpdD1TZXJ2aWNlc1N0YXJ0CisgJ1sn
IDMwIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFszMF0gRXhlY3V0aW5nIFNlcnZp
Y2VzU3RhcnQgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJwor
ICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzMwXScgRXhlY3V0aW5nIFNlcnZp
Y2VzU3RhcnQgLi4uCmhpYmVybmF0ZTogWzMwXSBFeGVjdXRpbmcgU2VydmljZXNTdGFydCAuLi4K
KyAnWycgLW4gJycgJ10nCisgU2VydmljZXNTdGFydAorICdbJyAteiAxICddJworIEV4ZWN1dGVT
ZXJ2aWNlcyBzdGFydCBsYXB0b3BfbW9kZQorIGxvY2FsIGFjdGlvbgorIGxvY2FsIHNlcnZpY2Vz
CisgbG9jYWwgc2VydmljZQorIGFjdGlvbj1zdGFydAorIHNoaWZ0Cisgc2VydmljZXM9bGFwdG9w
X21vZGUKKyByZXQ9MAorIGZvciBzZXJ2aWNlIGluICckc2VydmljZXMnCisgSW52b2tlUkNEIGxh
cHRvcF9tb2RlIHN0YXJ0CisgbG9jYWwgc2VydmljZSBhY3Rpb24gdG1wIGNtZAorIHNlcnZpY2U9
bGFwdG9wX21vZGUKKyBhY3Rpb249c3RhcnQKKyAnWycgLXggL2V0Yy9pbml0LmQvbGFwdG9wX21v
ZGUgJ10nCisgY21kPScvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSBzdGFydCcKKyAnWycgc3RhcnQg
PSBzdGFydCAnXScKKysgZWNobyAnL2V0Yy9pbml0LmQvLi4vcmMzLmQvSz8/bGFwdG9wX21vZGUn
CisgdG1wPScvZXRjL2luaXQuZC8uLi9yYzMuZC9LPz9sYXB0b3BfbW9kZScKKyAnWycgLXggJy9l
dGMvaW5pdC5kLy4uL3JjMy5kL0s/P2xhcHRvcF9tb2RlJyAnXScKKyB2ZWNobyAyICdFeGVjdXRp
bmcgL2V0Yy9pbml0LmQvbGFwdG9wX21vZGUgc3RhcnQnCisgbG9jYWwgdgorIHY9MgorIHNoaWZ0
CisgJ1snIHggPSB4MSAnXScKKyAnWycgMiAtbGUgNCAnXScKKyBlY2hvIEV4ZWN1dGluZyAvZXRj
L2luaXQuZC9sYXB0b3BfbW9kZSBzdGFydApFeGVjdXRpbmcgL2V0Yy9pbml0LmQvbGFwdG9wX21v
ZGUgc3RhcnQKKyAvZXRjL2luaXQuZC9sYXB0b3BfbW9kZSBzdGFydAogKiBTdGFydGluZyBsYXB0
b3BfbW9kZSAuLi4gWyBvayBdCisgJ1snIDAgLW5lIDEwMCAnXScKKyBSRVNUQVJURURfU0VSVklD
RVM9J2xhcHRvcF9tb2RlIGxhcHRvcF9tb2RlICcKKyByZXR1cm4gMAorIEV4ZWN1dGVTZXJ2aWNl
cyBzdGFydAorIGxvY2FsIGFjdGlvbgorIGxvY2FsIHNlcnZpY2VzCisgbG9jYWwgc2VydmljZQor
IGFjdGlvbj1zdGFydAorIHNoaWZ0Cisgc2VydmljZXM9CisgcmV0PTAKKyByZXR1cm4gMAorIGZv
ciBiaXQgaW4gJ2BTb3J0UmVzdW1lQml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIz
MEZCU3BsYXNoUHJvZ3Jlc3MiLCAxLCAyKX0nCisgVEhJU19QT1M9MzAKKyAnWycgLXogMzAgJ10n
CisgYml0PUZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgMzAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hp
YmVybmF0ZTogWzMwXSBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4gJworIGxvY2FsIHYK
KyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEgJ10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBo
aWJlcm5hdGU6ICdbMzBdJyBFeGVjdXRpbmcgRkJTcGxhc2hQcm9ncmVzcyAuLi4KaGliZXJuYXRl
OiBbMzBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgorICdbJyAtbiAnJyAnXScKKyBG
QlNwbGFzaFByb2dyZXNzCisgJ1snIHgxID0geDEgJ10nCisgRkJTUExBU0hfUFJPR1JFU1M9NTI0
MjQKKyBUaW1lZEZCU3BsYXNoQ3RsICdwcm9ncmVzcyA1MjQyNFxucmVwYWludFxuJworIHJldHVy
biAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBz
dWJzdHIoIjIwRkJTcGxhc2hQcm9ncmVzcyIsIDEsIDIpfScKKyBUSElTX1BPUz0yMAorICdbJyAt
eiAyMCAnXScKKyBiaXQ9RkJTcGxhc2hQcm9ncmVzcworICdbJyAyMCAtZ3QgOTkgJ10nCisgdmVj
aG8gMSAnaGliZXJuYXRlOiBbMjBdIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisg
bG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScK
KyBlY2hvIGhpYmVybmF0ZTogJ1syMF0nIEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpo
aWJlcm5hdGU6IFsyMF0gRXhlY3V0aW5nIEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcn
ICddJworIEZCU3BsYXNoUHJvZ3Jlc3MKKyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9H
UkVTUz01ODk3NworIFRpbWVkRkJTcGxhc2hDdGwgJ3Byb2dyZXNzIDU4OTc3XG5yZXBhaW50XG4n
CisgcmV0dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lO
e3ByaW50IHN1YnN0cigiMTlMb2dpblBpZGdpbiIsIDEsIDIpfScKKyBUSElTX1BPUz0xOQorICdb
JyAteiAxOSAnXScKKyBiaXQ9TG9naW5QaWRnaW4KKyAnWycgMTkgLWd0IDk5ICddJworIHZlY2hv
IDEgJ2hpYmVybmF0ZTogWzE5XSBFeGVjdXRpbmcgTG9naW5QaWRnaW4gLi4uICcKKyBsb2NhbCB2
Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8g
aGliZXJuYXRlOiAnWzE5XScgRXhlY3V0aW5nIExvZ2luUGlkZ2luIC4uLgpoaWJlcm5hdGU6IFsx
OV0gRXhlY3V0aW5nIExvZ2luUGlkZ2luIC4uLgorICdbJyAtbiAnJyAnXScKKyBMb2dpblBpZGdp
bgorICdbJyB4MSAnIT0nIHgxICddJworICdbJyB4MSAnIT0nIHgxICddJworICdbJyAteiAvdXNy
L2Jpbi9wdXJwbGUtcmVtb3RlICddJworICdbJyAnIScgLXggL3Vzci9iaW4vcHVycGxlLXJlbW90
ZSAnXScKKyBsb2NhbCBpPTAKKyA6CisgbG9jYWwgdXNlciBkYnVzX3Nlc3Npb25fYnVzX2FkZHJl
c3MgcGlkZ2luX3N0YXR1cyBwdXJwbGVfcmVtb3RlX2NtZAorKyBldmFsICdlY2hvICRQSURHSU5f
TE9HR0VEX09VVF9TRVNTSU9OU19VU0VSXzAnCisrKyBlY2hvCisgdXNlcj0KKysgZXZhbCAnZWNo
byAkUElER0lOX0xPR0dFRF9PVVRfU0VTU0lPTlNfREJVU18wJworKysgZWNobworIGRidXNfc2Vz
c2lvbl9idXNfYWRkcmVzcz0KKysgZXZhbCAnZWNobyAkUElER0lOX0xPR0dFRF9PVVRfU0VTU0lP
TlNfU1RBVFVTXzAnCisrKyBlY2hvCisgcGlkZ2luX3N0YXR1cz0KKysgZXhwciAwICsgMQorIGk9
MQorICdbJyAteiAnJyAnXScKKyBicmVhaworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRS
ZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjE1RkJTcGxhc2hQcm9ncmVz
cyIsIDEsIDIpfScKKyBUSElTX1BPUz0xNQorICdbJyAteiAxNSAnXScKKyBiaXQ9RkJTcGxhc2hQ
cm9ncmVzcworICdbJyAxNSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMTVdIEV4
ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0Cisg
J1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1sxNV0n
IEV4ZWN1dGluZyBGQlNwbGFzaFByb2dyZXNzIC4uLgpoaWJlcm5hdGU6IFsxNV0gRXhlY3V0aW5n
IEZCU3BsYXNoUHJvZ3Jlc3MgLi4uCisgJ1snIC1uICcnICddJworIEZCU3BsYXNoUHJvZ3Jlc3MK
KyAnWycgeDEgPSB4MSAnXScKKyBGQlNQTEFTSF9QUk9HUkVTUz02NTUzMAorIFRpbWVkRkJTcGxh
c2hDdGwgJ3Byb2dyZXNzIDY1NTMwXG5yZXBhaW50XG4nCisgcmV0dXJuIDAKKyBmb3IgYml0IGlu
ICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50IHN1YnN0cigiMTJGQlNwbGFz
aE9mZiIsIDEsIDIpfScKKyBUSElTX1BPUz0xMgorICdbJyAteiAxMiAnXScKKyBiaXQ9RkJTcGxh
c2hPZmYKKyAnWycgMTIgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTogWzEyXSBFeGVj
dXRpbmcgRkJTcGxhc2hPZmYgLi4uICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9
IHgxICddJworICdbJyAxIC1sZSA0ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzEyXScgRXhlY3V0
aW5nIEZCU3BsYXNoT2ZmIC4uLgpoaWJlcm5hdGU6IFsxMl0gRXhlY3V0aW5nIEZCU3BsYXNoT2Zm
IC4uLgorICdbJyAtbiAnJyAnXScKKyBGQlNwbGFzaE9mZgorIFRpbWVkRkJTcGxhc2hDdGwgJ3Nl
dCBlZmZlY3RzIGZhZGVvdXRcbicKKyBUaW1lZEZCU3BsYXNoQ3RsICdleGl0XG4nCisga2lsbGFs
bCAtMCBmYnNwbGFzaGQKKyBzbGVlcCAxCisga2lsbGFsbCAtMCBmYnNwbGFzaGQKZmJzcGxhc2hk
OiBuZXNzdW4gcHJvY2Vzc28gdGVybWluYXRvCisgJ1snIC1uIDEgJ10nCisgZWNobyAxCisgcmV0
dXJuIDAKKyBmb3IgYml0IGluICdgU29ydFJlc3VtZUJpdHNgJworKyBhd2sgJ0JFR0lOe3ByaW50
IHN1YnN0cigiMTFYSGFja3NSZXN1bWVIb29rMSIsIDEsIDIpfScKKyBUSElTX1BPUz0xMQorICdb
JyAteiAxMSAnXScKKyBiaXQ9WEhhY2tzUmVzdW1lSG9vazEKKyAnWycgMTEgLWd0IDk5ICddJwor
IHZlY2hvIDEgJ2hpYmVybmF0ZTogWzExXSBFeGVjdXRpbmcgWEhhY2tzUmVzdW1lSG9vazEgLi4u
ICcKKyBsb2NhbCB2Cisgdj0xCisgc2hpZnQKKyAnWycgeCA9IHgxICddJworICdbJyAxIC1sZSA0
ICddJworIGVjaG8gaGliZXJuYXRlOiAnWzExXScgRXhlY3V0aW5nIFhIYWNrc1Jlc3VtZUhvb2sx
IC4uLgpoaWJlcm5hdGU6IFsxMV0gRXhlY3V0aW5nIFhIYWNrc1Jlc3VtZUhvb2sxIC4uLgorICdb
JyAtbiAnJyAnXScKKyBYSGFja3NSZXN1bWVIb29rMQorICdbJyAtbiAxICddJworIFhIYWNrc1Jl
c3VtZQorICdbJyB4ID0geDEgJ10nCisgJ1snIC1uICcnICddJworICdbJyAtbiAzICddJworIHZl
Y2hvIDMgJ3hoYWNrczogY2hhbmdpbmcgY29uc29sZSBiYWNrIHRvIDMnCisgbG9jYWwgdgorIHY9
MworIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMyAtbGUgNCAnXScKKyBlY2hvIHhoYWNr
czogY2hhbmdpbmcgY29uc29sZSBiYWNrIHRvIDMKeGhhY2tzOiBjaGFuZ2luZyBjb25zb2xlIGJh
Y2sgdG8gMworIGNodnQgMworIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNvcnRSZXN1bWVCaXRz
YCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjExU3dzdXNwMkNsZWFudXBGaWxld3JpdGVy
IiwgMSwgMil9JworIFRISVNfUE9TPTExCisgJ1snIC16IDExICddJworIGJpdD1Td3N1c3AyQ2xl
YW51cEZpbGV3cml0ZXIKKyAnWycgMTEgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVybmF0ZTog
WzExXSBFeGVjdXRpbmcgU3dzdXNwMkNsZWFudXBGaWxld3JpdGVyIC4uLiAnCisgbG9jYWwgdgor
IHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhp
YmVybmF0ZTogJ1sxMV0nIEV4ZWN1dGluZyBTd3N1c3AyQ2xlYW51cEZpbGV3cml0ZXIgLi4uCmhp
YmVybmF0ZTogWzExXSBFeGVjdXRpbmcgU3dzdXNwMkNsZWFudXBGaWxld3JpdGVyIC4uLgorICdb
JyAtbiAnJyAnXScKKyBTd3N1c3AyQ2xlYW51cEZpbGV3cml0ZXIKKyBybSAtZiAvdmFyL3J1bi9z
dXNwZW5kMl9maWxld3JpdGVyX2ltYWdlX2V4aXN0cworIGZvciBiaXQgaW4gJ2BTb3J0UmVzdW1l
Qml0c2AnCisrIGF3ayAnQkVHSU57cHJpbnQgc3Vic3RyKCIwMU5vdGVMYXN0UmVzdW1lIiwgMSwg
Mil9JworIFRISVNfUE9TPTAxCisgJ1snIC16IDAxICddJworIGJpdD1Ob3RlTGFzdFJlc3VtZQor
ICdbJyAwMSAtZ3QgOTkgJ10nCisgdmVjaG8gMSAnaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBO
b3RlTGFzdFJlc3VtZSAuLi4gJworIGxvY2FsIHYKKyB2PTEKKyBzaGlmdAorICdbJyB4ID0geDEg
J10nCisgJ1snIDEgLWxlIDQgJ10nCisgZWNobyBoaWJlcm5hdGU6ICdbMDFdJyBFeGVjdXRpbmcg
Tm90ZUxhc3RSZXN1bWUgLi4uCmhpYmVybmF0ZTogWzAxXSBFeGVjdXRpbmcgTm90ZUxhc3RSZXN1
bWUgLi4uCisgJ1snIC1uICcnICddJworIE5vdGVMYXN0UmVzdW1lCisgJ1snIC1mIC92YXIvcnVu
L2hpYmVybmF0ZS1sYXN0LXJlc3VtZSAnXScKKyBkYXRlICslcworIHJldHVybiAwCisgZm9yIGJp
dCBpbiAnYFNvcnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjAxTG9j
a0ZpbGVQdXQiLCAxLCAyKX0nCisgVEhJU19QT1M9MDEKKyAnWycgLXogMDEgJ10nCisgYml0PUxv
Y2tGaWxlUHV0CisgJ1snIDAxIC1ndCA5OSAnXScKKyB2ZWNobyAxICdoaWJlcm5hdGU6IFswMV0g
RXhlY3V0aW5nIExvY2tGaWxlUHV0IC4uLiAnCisgbG9jYWwgdgorIHY9MQorIHNoaWZ0CisgJ1sn
IHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hvIGhpYmVybmF0ZTogJ1swMV0nIEV4
ZWN1dGluZyBMb2NrRmlsZVB1dCAuLi4KaGliZXJuYXRlOiBbMDFdIEV4ZWN1dGluZyBMb2NrRmls
ZVB1dCAuLi4KKyAnWycgLW4gJycgJ10nCisgTG9ja0ZpbGVQdXQKKyAnWycgLXogMSAnXScKKyBs
b2NhbCBsb2NrZmlsZV9waWQKKyByZWFkIGxvY2tmaWxlX3BpZAorIElzQU51bWJlciA1ODY0Cisg
Y2FzZSAiJDEiIGluCisgcmV0dXJuIDAKKyAnWycgNTg2NCAtZXEgNTg2NCAnXScKKyBybSAtZiAv
dmFyL3J1bi9oaWJlcm5hdGUtc2NyaXB0LnBpZAorIHJldHVybiAwCisgZm9yIGJpdCBpbiAnYFNv
cnRSZXN1bWVCaXRzYCcKKysgYXdrICdCRUdJTntwcmludCBzdWJzdHIoIjAwUmVtb3ZlU3dzdXNw
UHJvY0NydWZ0IiwgMSwgMil9JworIFRISVNfUE9TPTAwCisgJ1snIC16IDAwICddJworIGJpdD1S
ZW1vdmVTd3N1c3BQcm9jQ3J1ZnQKKyAnWycgMDAgLWd0IDk5ICddJworIHZlY2hvIDEgJ2hpYmVy
bmF0ZTogWzAwXSBFeGVjdXRpbmcgUmVtb3ZlU3dzdXNwUHJvY0NydWZ0IC4uLiAnCisgbG9jYWwg
dgorIHY9MQorIHNoaWZ0CisgJ1snIHggPSB4MSAnXScKKyAnWycgMSAtbGUgNCAnXScKKyBlY2hv
IGhpYmVybmF0ZTogJ1swMF0nIEV4ZWN1dGluZyBSZW1vdmVTd3N1c3BQcm9jQ3J1ZnQgLi4uCmhp
YmVybmF0ZTogWzAwXSBFeGVjdXRpbmcgUmVtb3ZlU3dzdXNwUHJvY0NydWZ0IC4uLgorICdbJyAt
biAnJyAnXScKKyBSZW1vdmVTd3N1c3BQcm9jQ3J1ZnQKKyAnWycgLWYgL3RtcC90bXAuaGliZXJu
YXRlLmptRndBZCAnXScKKyBybSAtZiAvdG1wL3RtcC5oaWJlcm5hdGUuam1Gd0FkCisgcmV0dXJu
IDAKKyByZXR1cm4gMAorIGV2YWwgJ0VYSVRfQ09ERT0ke1BJUEVTVEFUVVNbMF19JworKyBFWElU
X0NPREU9MAorIFBsdWdpblRlcm1pbmF0aW9uCisgbG9jYWwgaQorIGZvciBpIGluICckVEVSTUlO
QVRJT05fSEFORExFUlMnCisgU3dzdXNwMlRlcm1pbmF0aW9uCisgcmV0dXJuIDAKKyByZXR1cm4g
MAorKyBkYXRlCisgdGVlIC1hIC1pIC92YXIvbG9nL2hpYmVybmF0ZS5sb2cKKyBlY2hvICdSZXN1
bWVkIGF0IHNhYicgbm92IDMgMTU6MjA6MDkgQ0VUIDIwMDcKKyBleGl0IDAK
</data>        

          </attachment>
    </bug>

</bugzilla>