(ITS#4708) refreshAndPersist retry parameter isn't meaningful
by richton@nbcs.rutgers.edu
Full_Name: Aaron Richton
Version: HEAD/RE23
OS: CentOS 4.4
URL: ftp://ftp.openldap.org/incoming/richton-20061011.patch
Submission from: (NULL) (128.6.31.135)
In the event of a loss of connection with the syncrepl server, slapd(8) in its
role as syncrepl client is expected to retry consistent with any setting in a
"retry" configuration clause. However, a refreshAndPersist client in connected
state will merely wait (forever) for the (nonexistent lost) connection to
provide data in the event of a network failure. There is no current application
layer nor network layer awareness of the connection failure apart from "it's
been quiet for a long time," which doesn't make a good algorithm. From a *ix
network stack standpoint, connections remain ESTABLISHED even in the face of
network failure, and slapd(8) doesn't have a clue that it should be retrying.
The linked patch turns on SO_KEEPALIVE if available, creating network layer
awareness of the connection failure. When combined with appropriate IP stack
tuning (out of the scope of OpenLDAP), very quick retry times can be
accomplished. I have found any retries impossible without this patch.
To replicate, install OpenLDAP with refreshAndPersist, and do something brutal
to the consumer network -- firewall off communication with your master server,
pull the network cable, etc. Wait for the connection to die off on the master
server (slapd/daemon.c already makes SO_KEEPALIVE on the server side), then
restore proper network state to the consumer. netstat on the syncrepl client
will show ESTABLISHED; it's ignorant of your network destruction and will never
retry because it still believes everything is happy.
17 years, 1 month
Re: (ITS#4706) regex.h on Solaris 10 sparc
by stew.redfield@gmail.com
Thanks Kurt, I did try to swap in all three (alternately) directly
into the include/ac/regex.h, but all gave the same type of errors on
configure.
I'll try it on a clean system in the next week or so, to see if it may
be related to a Solaris patch...
Stew
On 10/11/06, Kurt D. Zeilenga <Kurt(a)openldap.org> wrote:
>At 06:31 PM 10/11/2006, stew.redfield(a)gmail.com wrote:
>>--=====================_272409043==_
>>Content-Type: text/plain; charset="us-ascii"
>>
>>Last config.log is attached.
>>Other regex.h files on box:
>>/usr/include/regex.h (Solaris 10 Base)
>>/usr/include/unicode/regex.h (Solaris 10 Base)
>>/usr/local/include/regex.h (Spencer's 11101byte standard one)
>
>The config.log indicates the latter was selected by your
>compiler and subsequently found not to be compatible.
>It would seem that this regex.h expects, contrary to
>the POSIX regex standard, some unusual header(s) to
>included first.
>
>I see no particular reason why we should attempt to
>support this old regex library so will close this report.
>
>As far as workaround this problem, I would suggest either
>altering your include/library paths to avoid use of this
>header/library, uninstalling this header/library, or
>replacing this header/library.
>
>Kurt
>
>
>>Thanks,
>>Stew
>>
>>On 10/11/06, Kurt D. Zeilenga <Kurt(a)openldap.org> wrote:
>>>Actually, I only silenced the regex.h warning. I cannot
>>>tell from your message why the regex compat check failed.
>>>Please provide relevant details from config.log.
>>>
>>>At 11:18 PM 10/10/2006, stew.redfield(a)gmail.com wrote:
>>>>Full_Name: Stew Redfield
>>>>Version: 2.3.27
>>>>OS: Solaris 10 sparc
>>>>URL: ftp://ftp.openldap.org/incoming/
>>>>Submission from: (NULL) (65.219.72.58)
>>>>
>>>>
>>>>/configure --prefix=/usr/local
>>>>--snip--
>>>>checking regex.h presence... yes
>>>>configure: WARNING: regex.h: present but cannot be compiled
>>>>configure: WARNING: regex.h: check for missing prerequisite headers?
>>>>configure: WARNING: regex.h: see the Autoconf documentation
>>>>configure: WARNING: regex.h: section "Present But Cannot Be Compiled"
>>>>configure: WARNING: regex.h: proceeding with the preprocessor's result
>>>>configure: WARNING: regex.h: in the future, the compiler will take precedence
>>>>configure: WARNING: ## --------------------------------------------- ##
>>>>configure: WARNING: ## Report this to <http://www.openldap.org/its/> ##
>>>>configure: WARNING: ## --------------------------------------------- ##
>>>>checking for regex.h... yes
>>>>checking for library containing regfree... none required
>>>>checking for compatible POSIX regex... no
>>>>configure: error: broken POSIX regex!
>>>
>>
>>
>>--
>>Stew Redfield, CISA CISSP
>>Stew.Redfield(a)gmail.com
>>
>>Reason can be fought with reason.
>>How are you going to fight the unreasonable?
>>-A. Rand
>>
>>
[Attachment trimmed]
--
Stew Redfield, CISA CISSP
Stew.Redfield(a)gmail.com
Reason can be fought with reason.
How are you going to fight the unreasonable?
-A. Rand
17 years, 1 month
Re: (ITS#4706) regex.h on Solaris 10 sparc
by Kurt@OpenLDAP.org
At 06:31 PM 10/11/2006, stew.redfield(a)gmail.com wrote:
>--=====================_272409043==_
>Content-Type: text/plain; charset="us-ascii"
>
>Last config.log is attached.
>Other regex.h files on box:
>/usr/include/regex.h (Solaris 10 Base)
>/usr/include/unicode/regex.h (Solaris 10 Base)
>/usr/local/include/regex.h (Spencer's 11101byte standard one)
The config.log indicates the latter was selected by your
compiler and subsequently found not to be compatible.
It would seem that this regex.h expects, contrary to
the POSIX regex standard, some unusual header(s) to
included first.
I see no particular reason why we should attempt to
support this old regex library so will close this report.
As far as workaround this problem, I would suggest either
altering your include/library paths to avoid use of this
header/library, uninstalling this header/library, or
replacing this header/library.
Kurt
>Thanks,
>Stew
>
>On 10/11/06, Kurt D. Zeilenga <Kurt(a)openldap.org> wrote:
>>Actually, I only silenced the regex.h warning. I cannot
>>tell from your message why the regex compat check failed.
>>Please provide relevant details from config.log.
>>
>>At 11:18 PM 10/10/2006, stew.redfield(a)gmail.com wrote:
>>>Full_Name: Stew Redfield
>>>Version: 2.3.27
>>>OS: Solaris 10 sparc
>>>URL: ftp://ftp.openldap.org/incoming/
>>>Submission from: (NULL) (65.219.72.58)
>>>
>>>
>>>/configure --prefix=/usr/local
>>>--snip--
>>>checking regex.h presence... yes
>>>configure: WARNING: regex.h: present but cannot be compiled
>>>configure: WARNING: regex.h: check for missing prerequisite headers?
>>>configure: WARNING: regex.h: see the Autoconf documentation
>>>configure: WARNING: regex.h: section "Present But Cannot Be Compiled"
>>>configure: WARNING: regex.h: proceeding with the preprocessor's result
>>>configure: WARNING: regex.h: in the future, the compiler will take precedence
>>>configure: WARNING: ## --------------------------------------------- ##
>>>configure: WARNING: ## Report this to <http://www.openldap.org/its/> ##
>>>configure: WARNING: ## --------------------------------------------- ##
>>>checking for regex.h... yes
>>>checking for library containing regfree... none required
>>>checking for compatible POSIX regex... no
>>>configure: error: broken POSIX regex!
>>
>
>
>--
>Stew Redfield, CISA CISSP
>Stew.Redfield(a)gmail.com
>
>Reason can be fought with reason.
>How are you going to fight the unreasonable?
>-A. Rand
>
>
>Content-Type: application/octet-stream;
> name=openldap.2.3.27.sol10.config.log
>X-Attachment-Id: f_et5p2n36
>Content-Disposition: attachment; filename="openldap.2.3.27.sol10.config.log"
>
>
>--=====================_272409043==_
>Content-Type: application/octet-stream; name="openldap.2.3.27.sol10.config.log"
>Content-Transfer-Encoding: base64
>Content-Disposition: attachment; filename="openldap.2.3.27.sol10.config.log"
>
>VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp
>bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz
>IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IGNvbmZpZ3VyZSwgd2hpY2ggd2FzCmdlbmVy
>YXRlZCBieSBHTlUgQXV0b2NvbmYgMi41OS4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoK
>ICAkIC4vY29uZmlndXJlIC0tcHJlZml4PS91c3IvbG9jYWwgLS13aXRoLXRscwoKIyMgLS0tLS0t
>LS0tICMjCiMjIFBsYXRmb3JtLiAjIwojIyAtLS0tLS0tLS0gIyMKCmhvc3RuYW1lID0gbnN1cGRw
>MDEKdW5hbWUgLW0gPSBzdW40dQp1bmFtZSAtciA9IDUuMTAKdW5hbWUgLXMgPSBTdW5PUwp1bmFt
>ZSAtdiA9IEdlbmVyaWNfMTE4ODMzLTI0CgovdXNyL2Jpbi91bmFtZSAtcCA9IHNwYXJjCi9iaW4v
>dW5hbWUgLVggICAgID0gU3lzdGVtID0gU3VuT1MKTm9kZSA9IG5zdXBkcDAxClJlbGVhc2UgPSA1
>LjEwCktlcm5lbElEID0gR2VuZXJpY18xMTg4MzMtMjQKTWFjaGluZSA9IHN1bjR1CkJ1c1R5cGUg
>PSA8dW5rbm93bj4KU2VyaWFsID0gPHVua25vd24+ClVzZXJzID0gPHVua25vd24+Ck9FTSMgPSAw
>Ck9yaWdpbiMgPSAxCk51bUNQVSA9IDIKCi9iaW4vYXJjaCAgICAgICAgICAgICAgPSBzdW40Ci91
>c3IvYmluL2FyY2ggLWsgICAgICAgPSBzdW40dQovdXNyL2NvbnZleC9nZXRzeXNpbmZvID0gdW5r
>bm93bgpob3N0aW5mbyAgICAgICAgICAgICAgID0gdW5rbm93bgovYmluL21hY2hpbmUgICAgICAg
>ICAgID0gdW5rbm93bgovdXNyL2Jpbi9vc2xldmVsICAgICAgID0gdW5rbm93bgovYmluL3VuaXZl
>cnNlICAgICAgICAgID0gdW5rbm93bgoKUEFUSDogL3NiaW4KUEFUSDogL3Vzci9zYmluClBBVEg6
>IC9iaW4KUEFUSDogL3Vzci9iaW4KUEFUSDogL3Vzci9sb2NhbC9zYmluClBBVEg6IC91c3IvbG9j
>YWwvYmluClBBVEg6IC9vcHQyMDAvWHRlcm5hbHMvYmluClBBVEg6IC91c3IvdWNiClBBVEg6IC91
>c3IvY2NzL2JpbgpQQVRIOiAvb3B0MjAwL215c3FsLzUuMC4xOC9iaW4KCgojIyAtLS0tLS0tLS0t
>LSAjIwojIyBDb3JlIHRlc3RzLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoKY29uZmlndXJlOjE2MTU6
>IGNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToxNjMzOiByZXN1bHQ6IHNwYXJj
>LXN1bi1zb2xhcmlzMi4xMApjb25maWd1cmU6MTY0MTogY2hlY2tpbmcgaG9zdCBzeXN0ZW0gdHlw
>ZQpjb25maWd1cmU6MTY1NTogcmVzdWx0OiBzcGFyYy1zdW4tc29sYXJpczIuMTAKY29uZmlndXJl
>OjE2NjM6IGNoZWNraW5nIHRhcmdldCBzeXN0ZW0gdHlwZQpjb25maWd1cmU6MTY3NzogcmVzdWx0
>OiBzcGFyYy1zdW4tc29sYXJpczIuMTAKY29uZmlndXJlOjE3MDY6IGNoZWNraW5nIGZvciBhIEJT
>RC1jb21wYXRpYmxlIGluc3RhbGwKY29uZmlndXJlOjE3NjE6IHJlc3VsdDogYnVpbGQvc2h0b29s
>IGluc3RhbGwgLWMKY29uZmlndXJlOjE3NzI6IGNoZWNraW5nIHdoZXRoZXIgYnVpbGQgZW52aXJv
>bm1lbnQgaXMgc2FuZQpjb25maWd1cmU6MTgxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4ODA6
>IGNoZWNraW5nIGZvciBnYXdrCmNvbmZpZ3VyZToxODk2OiBmb3VuZCAvdXNyL2xvY2FsL2Jpbi9n
>YXdrCmNvbmZpZ3VyZToxOTA2OiByZXN1bHQ6IGdhd2sKY29uZmlndXJlOjE5MTY6IGNoZWNraW5n
>IHdoZXRoZXIgbWFrZSBzZXRzICQoTUFLRSkKY29uZmlndXJlOjE5MzY6IHJlc3VsdDogeWVzCmNv
>bmZpZ3VyZToyMTQ1OiBjaGVja2luZyBjb25maWd1cmUgYXJndW1lbnRzCmNvbmZpZ3VyZTozODQz
>OiByZXN1bHQ6IGRvbmUKY29uZmlndXJlOjQwMDk6IGNoZWNraW5nIGZvciBjYwpjb25maWd1cmU6
>NDAyNTogZm91bmQgL3Vzci9sb2NhbC9iaW4vY2MKY29uZmlndXJlOjQwMzU6IHJlc3VsdDogY2MK
>Y29uZmlndXJlOjQwNTk6IGNoZWNraW5nIGZvciBhcgpjb25maWd1cmU6NDA3NTogZm91bmQgL3Vz
>ci9jY3MvYmluL2FyCmNvbmZpZ3VyZTo0MDg1OiByZXN1bHQ6IGFyCmNvbmZpZ3VyZTo0MTQ0OiBj
>aGVja2luZyBmb3Igc3R5bGUgb2YgaW5jbHVkZSB1c2VkIGJ5IG1ha2UKY29uZmlndXJlOjQxNzI6
>IHJlc3VsdDogR05VCmNvbmZpZ3VyZTo0NTEzOiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZXJz
>aW9uCmNvbmZpZ3VyZTo0NTE2OiBjYyAtLXZlcnNpb24gPC9kZXYvbnVsbCA+JjUKY2MgKEdDQykg
>My4zLjIKQ29weXJpZ2h0IChDKSAyMDAzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpU
>aGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlv
>bnMuICBUaGVyZSBpcyBOTwp3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBv
>ciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4KCmNvbmZpZ3VyZTo0NTE5OiAkPyA9
>IDAKY29uZmlndXJlOjQ1MjE6IGNjIC12IDwvZGV2L251bGwgPiY1ClJlYWRpbmcgc3BlY3MgZnJv
>bSAvdXNyL2xvY2FsL2xpYi9nY2MtbGliL3NwYXJjLXN1bi1zb2xhcmlzMi4xMC8zLjMuMi9zcGVj
>cwpDb25maWd1cmVkIHdpdGg6IC4uL2NvbmZpZ3VyZSAtLXdpdGgtYXM9L3Vzci9jY3MvYmluL2Fz
>IC0td2l0aC1sZD0vdXNyL2Njcy9iaW4vbGQgLS1kaXNhYmxlLW5scwpUaHJlYWQgbW9kZWw6IHBv
>c2l4CmdjYyB2ZXJzaW9uIDMuMy4yCmNvbmZpZ3VyZTo0NTI0OiAkPyA9IDAKY29uZmlndXJlOjQ1
>MjY6IGNjIC1WIDwvZGV2L251bGwgPiY1CmNjOiBgLVYnIG9wdGlvbiBtdXN0IGhhdmUgYXJndW1l
>bnQKY29uZmlndXJlOjQ1Mjk6ICQ/ID0gMQpjb25maWd1cmU6NDU1MjogY2hlY2tpbmcgZm9yIEMg
>Y29tcGlsZXIgZGVmYXVsdCBvdXRwdXQgZmlsZSBuYW1lCmNvbmZpZ3VyZTo0NTU1OiBjYyAgICBj
>b25mdGVzdC5jICA+JjUKY29uZmlndXJlOjQ1NTg6ICQ/ID0gMApjb25maWd1cmU6NDYwNDogcmVz
>dWx0OiBhLm91dApjb25maWd1cmU6NDYwOTogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxl
>ciB3b3Jrcwpjb25maWd1cmU6NDYxNTogLi9hLm91dApjb25maWd1cmU6NDYxODogJD8gPSAwCmNv
>bmZpZ3VyZTo0NjM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDY0MjogY2hlY2tpbmcgd2hldGhl
>ciB3ZSBhcmUgY3Jvc3MgY29tcGlsaW5nCmNvbmZpZ3VyZTo0NjQ0OiByZXN1bHQ6IG5vCmNvbmZp
>Z3VyZTo0NjQ3OiBjaGVja2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzCmNvbmZpZ3VyZTo0
>NjQ5OiBjYyAtbyBjb25mdGVzdCAgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjQ2NTI6ICQ/
>ID0gMApjb25maWd1cmU6NDY3NzogcmVzdWx0OiAKY29uZmlndXJlOjQ2ODM6IGNoZWNraW5nIGZv
>ciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzCmNvbmZpZ3VyZTo0NzA0OiBjYyAtYyAgIGNvbmZ0ZXN0
>LmMgPiY1CmNvbmZpZ3VyZTo0NzA3OiAkPyA9IDAKY29uZmlndXJlOjQ3Mjk6IHJlc3VsdDogbwpj
>b25maWd1cmU6NDczMzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNv
>bXBpbGVyCmNvbmZpZ3VyZTo0NzU3OiBjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0
>NzYzOiAkPyA9IDAKY29uZmlndXJlOjQ3Njc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29u
>ZnRlc3QuZXJyCmNvbmZpZ3VyZTo0NzcwOiAkPyA9IDAKY29uZmlndXJlOjQ3NzM6IHRlc3QgLXMg
>Y29uZnRlc3Qubwpjb25maWd1cmU6NDc3NjogJD8gPSAwCmNvbmZpZ3VyZTo0Nzg5OiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6NDc5NTogY2hlY2tpbmcgd2hldGhlciBjYyBhY2NlcHRzIC1nCmNvbmZp
>Z3VyZTo0ODE2OiBjYyAtYyAtZyAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ4MjI6ICQ/ID0g
>MApjb25maWd1cmU6NDgyNjogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
>Y29uZmlndXJlOjQ4Mjk6ICQ/ID0gMApjb25maWd1cmU6NDgzMjogdGVzdCAtcyBjb25mdGVzdC5v
>CmNvbmZpZ3VyZTo0ODM1OiAkPyA9IDAKY29uZmlndXJlOjQ4NDY6IHJlc3VsdDogeWVzCmNvbmZp
>Z3VyZTo0ODYzOiBjaGVja2luZyBmb3IgY2Mgb3B0aW9uIHRvIGFjY2VwdCBBTlNJIEMKY29uZmln
>dXJlOjQ5MzM6IGNjICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0OTM5OiAk
>PyA9IDAKY29uZmlndXJlOjQ5NDM6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
>ZXJyCmNvbmZpZ3VyZTo0OTQ2OiAkPyA9IDAKY29uZmlndXJlOjQ5NDk6IHRlc3QgLXMgY29uZnRl
>c3Qubwpjb25maWd1cmU6NDk1MjogJD8gPSAwCmNvbmZpZ3VyZTo0OTcwOiByZXN1bHQ6IG5vbmUg
>bmVlZGVkCmNvbmZpZ3VyZTo0OTg4OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0
>ZXN0LmM6MjogZXJyb3I6IHBhcnNlIGVycm9yIGJlZm9yZSAibWUiCmNvbmZpZ3VyZTo0OTk0OiAk
>PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgI2lmbmRlZiBfX2NwbHVzcGx1
>cwp8ICAgY2hva2UgbWUKfCAjZW5kaWYKY29uZmlndXJlOjUxMjk6IGNoZWNraW5nIGRlcGVuZGVu
>Y3kgc3R5bGUgb2YgY2MKY29uZmlndXJlOjUyMTk6IHJlc3VsdDogbm9uZQpjb25maWd1cmU6NTIz
>NjogY2hlY2tpbmcgZm9yIGEgc2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0CmNvbmZp
>Z3VyZTo1MjkwOiByZXN1bHQ6IC9iaW4vc2VkCmNvbmZpZ3VyZTo1MjkzOiBjaGVja2luZyBmb3Ig
>ZWdyZXAKY29uZmlndXJlOjUzMDM6IHJlc3VsdDogZWdyZXAKY29uZmlndXJlOjUzMTk6IGNoZWNr
>aW5nIGZvciBsZCB1c2VkIGJ5IGNjCmNvbmZpZ3VyZTo1Mzg2OiByZXN1bHQ6IC91c3IvY2NzL2Jp
>bi9sZApjb25maWd1cmU6NTM5NTogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9jY3MvYmlu
>L2xkKSBpcyBHTlUgbGQKY29uZmlndXJlOjU0MTA6IHJlc3VsdDogbm8KY29uZmlndXJlOjU0MTU6
>IGNoZWNraW5nIGZvciAvdXNyL2Njcy9iaW4vbGQgb3B0aW9uIHRvIHJlbG9hZCBvYmplY3QgZmls
>ZXMKY29uZmlndXJlOjU0MjI6IHJlc3VsdDogLXIKY29uZmlndXJlOjU0NDA6IGNoZWNraW5nIGZv
>ciBCU0QtY29tcGF0aWJsZSBubQpjb25maWd1cmU6NTQ4MjogcmVzdWx0OiAvdXNyL2Njcy9iaW4v
>bm0gLXAKY29uZmlndXJlOjU0ODY6IGNoZWNraW5nIHdoZXRoZXIgbG4gLXMgd29ya3MKY29uZmln
>dXJlOjU0OTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1NDk3OiBjaGVja2luZyBob3cgdG8gcmVj
>b2duaXNlIGRlcGVuZGVudCBsaWJyYXJpZXMKY29uZmlndXJlOjU2Njk6IHJlc3VsdDogcGFzc19h
>bGwKY29uZmlndXJlOjYxMjU6IGNoZWNraW5nIGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29y
>CmNvbmZpZ3VyZTo2MTYwOiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6NjE2NjogJD8gPSAw
>CmNvbmZpZ3VyZTo2MTk4OiBjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjE2OjI4OiBhY19u
>b25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTo2MjA0OiAk
>PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICov
>CnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi
>Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAi
>Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tB
>R0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZp
>bmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lP
>Tl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5l
>IExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEK
>fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNv
>bmZpZ3VyZTo2MjQzOiByZXN1bHQ6IGNjIC1FCmNvbmZpZ3VyZTo2MjY3OiBjYyAtRSAgY29uZnRl
>c3QuYwpjb25maWd1cmU6NjI3MzogJD8gPSAwCmNvbmZpZ3VyZTo2MzA1OiBjYyAtRSAgY29uZnRl
>c3QuYwpjb25mdGVzdC5jOjE2OjI4OiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3Ig
>ZGlyZWN0b3J5CmNvbmZpZ3VyZTo2MzExOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh
>bSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIK
>fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIi
>CnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg
>IiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxE
>QVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8
>ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRP
>Ul9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcK
>fCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu
>Y2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNvbmZpZ3VyZTo2MzU1OiBjaGVja2luZyBmb3IgQU5T
>SSBDIGhlYWRlciBmaWxlcwpjb25maWd1cmU6NjM4MDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5j
>ID4mNQpjb25maWd1cmU6NjM4NjogJD8gPSAwCmNvbmZpZ3VyZTo2MzkwOiB0ZXN0IC16IAoJCQkg
>fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjM5MzogJD8gPSAwCmNvbmZpZ3Vy
>ZTo2Mzk2OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjYzOTk6ICQ/ID0gMApjb25maWd1
>cmU6NjQ4ODogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy
>ZTo2NDkxOiAkPyA9IDAKY29uZmlndXJlOjY0OTM6IC4vY29uZnRlc3QKY29uZmlndXJlOjY0OTY6
>ICQ/ID0gMApjb25maWd1cmU6NjUxMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY1MzU6IGNoZWNr
>aW5nIGZvciBzeXMvdHlwZXMuaApjb25maWd1cmU6NjU1MTogY2MgLWMgLWcgLU8yICBjb25mdGVz
>dC5jID4mNQpjb25maWd1cmU6NjU1NzogJD8gPSAwCmNvbmZpZ3VyZTo2NTYxOiB0ZXN0IC16IAoJ
>CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjU2NDogJD8gPSAwCmNvbmZp
>Z3VyZTo2NTY3OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjY1NzA6ICQ/ID0gMApjb25m
>aWd1cmU6NjU4MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY1MzU6IGNoZWNraW5nIGZvciBzeXMv
>c3RhdC5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
>Z3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
>LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRl
>c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiBy
>ZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0ZGxpYi5oCmNvbmZpZ3Vy
>ZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9
>IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJy
>CmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qu
>bwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25m
>aWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0cmluZy5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAt
>ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1
>NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0
>OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3
>MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hl
>Y2tpbmcgZm9yIG1lbW9yeS5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0
>LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJ
>CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmln
>dXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZp
>Z3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0cmlu
>Z3MuaApjb25maWd1cmU6NjU1MTogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1
>cmU6NjU1NzogJD8gPSAwCmNvbmZpZ3VyZTo2NTYxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
>IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjU2NDogJD8gPSAwCmNvbmZpZ3VyZTo2NTY3OiB0ZXN0
>IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjY1NzA6ICQ/ID0gMApjb25maWd1cmU6NjU4MTogcmVz
>dWx0OiB5ZXMKY29uZmlndXJlOjY1MzU6IGNoZWNraW5nIGZvciBpbnR0eXBlcy5oCmNvbmZpZ3Vy
>ZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9
>IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJy
>CmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qu
>bwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25m
>aWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAt
>ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1
>NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0
>OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3
>MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hl
>Y2tpbmcgZm9yIHVuaXN0ZC5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0
>LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJ
>CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmln
>dXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZp
>Z3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjYwNzogY2hlY2tpbmcgZGxmY24uaCB1
>c2FiaWxpdHkKY29uZmlndXJlOjY2MTk6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29u
>ZmlndXJlOjY2MjU6ICQ/ID0gMApjb25maWd1cmU6NjYyOTogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
>ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjY2MzI6ICQ/ID0gMApjb25maWd1cmU6NjYzNTog
>dGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo2NjM4OiAkPyA9IDAKY29uZmlndXJlOjY2NDg6
>IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NjUyOiBjaGVja2luZyBkbGZjbi5oIHByZXNlbmNlCmNv
>bmZpZ3VyZTo2NjYyOiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6NjY2ODogJD8gPSAwCmNv
>bmZpZ3VyZTo2Njg4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjcyMzogY2hlY2tpbmcgZm9yIGRs
>ZmNuLmgKY29uZmlndXJlOjY3MzA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NzQ3OiBjaGVja2lu
>ZyB0aGUgbWF4aW11bSBsZW5ndGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwpjb25maWd1cmU6
>NjgzOTogcmVzdWx0OiAyNjIxNDQKY29uZmlndXJlOjY4NTA6IGNoZWNraW5nIGNvbW1hbmQgdG8g
>cGFyc2UgL3Vzci9jY3MvYmluL25tIC1wIG91dHB1dCBmcm9tIGNjIG9iamVjdApjb25maWd1cmU6
>Njk0NjogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Njk0OTogJD8gPSAw
>CmNvbmZpZ3VyZTo2OTUzOiAvdXNyL2Njcy9iaW4vbm0gLXAgY29uZnRlc3QubyBcfCBzZWQgLW4g
>LWUgJ3MvXi4qWyAJXVwoW0JEUlRdW0JEUlRdKlwpWyAJXVsgCV0qXChbX0EtWmEtel1bX0EtWmEt
>ejAtOV0qXCkkL1wxIFwyIFwyL3AnIFw+IGNvbmZ0ZXN0Lm5tCmNvbmZpZ3VyZTo2OTU2OiAkPyA9
>IDAKY29uZmlndXJlOjcwMDg6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgY29u
>ZnRzdG0ubyA+JjUKY29uZmlndXJlOjcwMTE6ICQ/ID0gMApjb25maWd1cmU6NzA0OTogcmVzdWx0
>OiBvawpjb25maWd1cmU6NzA1MzogY2hlY2tpbmcgZm9yIG9iamRpcgpjb25maWd1cmU6NzA2ODog
>cmVzdWx0OiAubGlicwpjb25maWd1cmU6NzIzODogY2hlY2tpbmcgZm9yIHJhbmxpYgpjb25maWd1
>cmU6NzI1NDogZm91bmQgL3Vzci9jY3MvYmluL3JhbmxpYgpjb25maWd1cmU6NzI2NTogcmVzdWx0
>OiByYW5saWIKY29uZmlndXJlOjczMTg6IGNoZWNraW5nIGZvciBzdHJpcApjb25maWd1cmU6NzMz
>NDogZm91bmQgL3Vzci9jY3MvYmluL3N0cmlwCmNvbmZpZ3VyZTo3MzQ1OiByZXN1bHQ6IHN0cmlw
>CmNvbmZpZ3VyZTo3NjMyOiBjaGVja2luZyBpZiBjYyBzdGF0aWMgZmxhZyAgd29ya3MKY29uZmln
>dXJlOjc2NjA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3Njc4OiBjaGVja2luZyBpZiBjYyBzdXBw
>b3J0cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zCmNvbmZpZ3VyZTo3Njk2OiBjYyAtYyAtZyAt
>TzIgIC1mbm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMgY29uZnRlc3QuYyA+JjUKY2MxOiB3YXJuaW5n
>OiAiLWZuby1ydHRpIiBpcyB2YWxpZCBmb3IgQysrIGJ1dCBub3QgZm9yIEMvT2JqQwpjb25maWd1
>cmU6NzcwMDogJD8gPSAwCmNvbmZpZ3VyZTo3NzEzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzI4
>OiBjaGVja2luZyBmb3IgY2Mgb3B0aW9uIHRvIHByb2R1Y2UgUElDCmNvbmZpZ3VyZTo3OTMyOiBy
>ZXN1bHQ6IC1mUElDCmNvbmZpZ3VyZTo3OTQwOiBjaGVja2luZyBpZiBjYyBQSUMgZmxhZyAtZlBJ
>QyB3b3Jrcwpjb25maWd1cmU6Nzk1ODogY2MgLWMgLWcgLU8yICAtZlBJQyAtRFBJQyBjb25mdGVz
>dC5jID4mNQpjb25maWd1cmU6Nzk2MjogJD8gPSAwCmNvbmZpZ3VyZTo3OTc1OiByZXN1bHQ6IHll
>cwpjb25maWd1cmU6Nzk5OTogY2hlY2tpbmcgaWYgY2Mgc3VwcG9ydHMgLWMgLW8gZmlsZS5vCmNv
>bmZpZ3VyZTo4MDIwOiBjYyAtYyAtZyAtTzIgIC1vIG91dC9jb25mdGVzdDIubyBjb25mdGVzdC5j
>ID4mNQpjb25maWd1cmU6ODAyNDogJD8gPSAwCmNvbmZpZ3VyZTo4MDQ2OiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6ODA3MjogY2hlY2tpbmcgd2hldGhlciB0aGUgY2MgbGlua2VyICgvdXNyL2Njcy9i
>aW4vbGQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKY29uZmlndXJlOjg5Njg6IHJlc3VsdDog
>eWVzCmNvbmZpZ3VyZTo4OTk0OiBjaGVja2luZyB3aGV0aGVyIC1sYyBzaG91bGQgYmUgZXhwbGlj
>aXRseSBsaW5rZWQgaW4KY29uZmlndXJlOjg5OTk6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
>JjUKY29uZmlndXJlOjkwMDI6ICQ/ID0gMApjb25maWd1cmU6OTAxNjogY2MgLXNoYXJlZCAtV2ws
>LWggLVdsLGNvbmZ0ZXN0IC1vIGNvbmZ0ZXN0IGNvbmZ0ZXN0Lm8gIC12IDJcPlwmMSBcfCBncmVw
>ICAtbGMgIFw+L2Rldi9udWxsIDJcPlwmMQpjb25maWd1cmU6OTAxOTogJD8gPSAxCmNvbmZpZ3Vy
>ZTo5MDMxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTAzOTogY2hlY2tpbmcgZHluYW1pYyBsaW5r
>ZXIgY2hhcmFjdGVyaXN0aWNzCmNvbmZpZ3VyZTo5NTkzOiByZXN1bHQ6IHNvbGFyaXMyLjEwIGxk
>LnNvCmNvbmZpZ3VyZTo5NTk3OiBjaGVja2luZyBob3cgdG8gaGFyZGNvZGUgbGlicmFyeSBwYXRo
>cyBpbnRvIHByb2dyYW1zCmNvbmZpZ3VyZTo5NjIyOiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1
>cmU6OTYzNjogY2hlY2tpbmcgd2hldGhlciBzdHJpcHBpbmcgbGlicmFyaWVzIGlzIHBvc3NpYmxl
>CmNvbmZpZ3VyZTo5NjU3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo5NzY3OiBjaGVja2luZyBmb3Ig
>c2hsX2xvYWQKY29uZmlndXJlOjk4MjQ6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0
>LmMgID4mNQpVbmRlZmluZWQJCQlmaXJzdCByZWZlcmVuY2VkCiBzeW1ib2wgIAkJCSAgICBpbiBm
>aWxlCnNobF9sb2FkICAgICAgICAgICAgICAgICAgICAgICAgICAgIC92YXIvdG1wLy9jYzZmd1JO
>dy5vCmxkOiBmYXRhbDogU3ltYm9sIHJlZmVyZW5jaW5nIGVycm9ycy4gTm8gb3V0cHV0IHdyaXR0
>ZW4gdG8gY29uZnRlc3QKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmln
>dXJlOjk4MzA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m
>ZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tB
>R0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BF
>TkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMu
>MjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZF
>TkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1Ig
>Mwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9N
>S1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ
>UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK
>fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
>I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
>bmUgSEFWRV9ETEZDTl9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIHNo
>bF9sb2FkIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFy
>ZXMgc2hsX2xvYWQuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xh
>cmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBzaGxfbG9hZCBpbm5vY3VvdXNfc2hsX2xv
>YWQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3Bl
>ZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIg
>c2hsX2xvYWQgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+
>IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2
>ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwg
>IyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2Vu
>ZGlmCnwgCnwgI3VuZGVmIHNobF9sb2FkCnwgCnwgLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJu
>YWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMK
>fCBleHRlcm4gIkMiCnwgewp8ICNlbmRpZgp8IC8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1p
>Z2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKfCAgICBidWlsdGluIGFuZCB0aGVu
>IGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8IGNoYXIgc2hs
>X2xvYWQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlv
>bnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4g
>IFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRp
>bmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVm
>aW5lZCAoX19zdHViX3NobF9sb2FkKSB8fCBkZWZpbmVkIChfX3N0dWJfX19zaGxfbG9hZCkKfCBj
>aG9rZSBtZQp8ICNlbHNlCnwgY2hhciAoKmYpICgpID0gc2hsX2xvYWQ7CnwgI2VuZGlmCnwgI2lm
>ZGVmIF9fY3BsdXNwbHVzCnwgfQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0
>dXJuIGYgIT0gc2hsX2xvYWQ7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo5ODU1
>OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo5ODYwOiBjaGVja2luZyBmb3Igc2hsX2xvYWQgaW4gLWxk
>bGQKY29uZmlndXJlOjk4OTA6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxk
>bGQgICA+JjUKbGQ6IGZhdGFsOiBsaWJyYXJ5IC1sZGxkOiBub3QgZm91bmQKbGQ6IGZhdGFsOiBG
>aWxlIHByb2Nlc3NpbmcgZXJyb3JzLiBObyBvdXRwdXQgd3JpdHRlbiB0byBjb25mdGVzdApjb2xs
>ZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6OTg5NjogJD8gPSAxCmNv
>bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNk
>ZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVm
>aW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVm
>aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVu
>TERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBf
>VkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1Ig
>Mgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZF
>TkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmlu
>ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI
>QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF
>X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
>TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U
>X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8
>IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5h
>bCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8
>IGV4dGVybiAiQyIKfCAjZW5kaWYKfCAvKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBt
>YXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMg
>YXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIHNobF9sb2Fk
>ICgpOwp8IGludAp8IG1haW4gKCkKfCB7Cnwgc2hsX2xvYWQgKCk7CnwgICA7CnwgICByZXR1cm4g
>MDsKfCB9CmNvbmZpZ3VyZTo5OTIyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo5OTI3OiBjaGVja2lu
>ZyBmb3IgZGxvcGVuCmNvbmZpZ3VyZTo5OTg0OiBjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25m
>dGVzdC5jICA+JjUKY29uZmlndXJlOjk5OTA6ICQ/ID0gMApjb25maWd1cmU6OTk5NDogdGVzdCAt
>eiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjk5OTc6ICQ/ID0gMApj
>b25maWd1cmU6MTAwMDA6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjEwMDAzOiAkPyA9IDAK
>Y29uZmlndXJlOjEwMDE1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAyNTc6IGNoZWNraW5nIHdo
>ZXRoZXIgYSBwcm9ncmFtIGNhbiBkbG9wZW4gaXRzZWxmCmNvbmZpZ3VyZToxMDMyOTogY2MgLW8g
>Y29uZnRlc3QgLWcgLU8yICAtREhBVkVfRExGQ05fSCAgIGNvbmZ0ZXN0LmMgICA+JjUKY29uZmln
>dXJlOjEwMzMyOiAkPyA9IDAKY29uZmlndXJlOjEwMzUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6
>MTAzNTU6IGNoZWNraW5nIHdoZXRoZXIgYSBzdGF0aWNhbGx5IGxpbmtlZCBwcm9ncmFtIGNhbiBk
>bG9wZW4gaXRzZWxmCmNvbmZpZ3VyZToxMDQyNzogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAtREhB
>VkVfRExGQ05fSCAgICBjb25mdGVzdC5jICAgPiY1CmNvbmZpZ3VyZToxMDQzMDogJD8gPSAwCmNv
>bmZpZ3VyZToxMDQ0ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNDcxOiBjaGVja2luZyBpZiBs
>aWJ0b29sIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKY29uZmlndXJlOjEwNDczOiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6MTA0NzY6IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc2hhcmVkIGxp
>YnJhcmllcwpjb25maWd1cmU6MTA0OTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDUwMDogY2hl
>Y2tpbmcgd2hldGhlciB0byBidWlsZCBzdGF0aWMgbGlicmFyaWVzCmNvbmZpZ3VyZToxMDUwNDog
>cmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNTk2OiBjcmVhdGluZyBsaWJ0b29sCmNvbmZpZ3VyZTox
>MTY1NzogY2hlY2tpbmcgaG93IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IKY29uZmlndXJlOjEx
>Nzc1OiByZXN1bHQ6IGNjIC1FCmNvbmZpZ3VyZToxMTc5OTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
>ZmlndXJlOjExODA1OiAkPyA9IDAKY29uZmlndXJlOjExODM3OiBjYyAtRSAgY29uZnRlc3QuYwpj
>b25mdGVzdC5jOjI3OjI4OiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0
>b3J5CmNvbmZpZ3VyZToxMTg0MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz
>Ogp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2Rl
>ZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNk
>ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwg
>I2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZF
>UlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVm
>aW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
>U0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2Rl
>ZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg
>SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg
>SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf
>TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU
>WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
>SCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
>aW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KY29uZmlndXJlOjExOTAwOiBjaGVja2luZyBmb3Ig
>YmVfYXBwIGluIC1sYmUKY29uZmlndXJlOjExOTMwOiBjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBj
>b25mdGVzdC5jIC1sYmUgLWxyb290IC1sbmV0ICA+JjUKbGQ6IGZhdGFsOiBsaWJyYXJ5IC1sYmU6
>IG5vdCBmb3VuZApsZDogZmF0YWw6IGxpYnJhcnkgLWxyb290OiBub3QgZm91bmQKbGQ6IGZhdGFs
>OiBsaWJyYXJ5IC1sbmV0OiBub3QgZm91bmQKbGQ6IGZhdGFsOiBGaWxlIHByb2Nlc3NpbmcgZXJy
>b3JzLiBObyBvdXRwdXQgd3JpdHRlbiB0byBjb25mdGVzdApjb2xsZWN0MjogbGQgcmV0dXJuZWQg
>MSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTE5MzY6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw
>cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFN
>RSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ
>T04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF
>UE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBP
>UEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIw
>MzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBf
>VkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRD
>SCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK
>fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl
>ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l
>IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB
>VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAi
>Igp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRl
>cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1
>cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCAvKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdo
>dCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBp
>dHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIGJlX2Fw
>cCAoKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IGJlX2FwcCAoKTsKfCAgIDsKfCAgIHJldHVybiAw
>Owp8IH0KY29uZmlndXJlOjExOTYyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMjI4NzogY2hlY2tp
>bmcgZm9yIEMgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1cmU6MTIyOTA6IGNjIC0tdmVyc2lvbiA8
>L2Rldi9udWxsID4mNQpjYyAoR0NDKSAzLjMuMgpDb3B5cmlnaHQgKEMpIDIwMDMgRnJlZSBTb2Z0
>d2FyZSBGb3VuZGF0aW9uLCBJbmMuClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3Vy
>Y2UgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PCndhcnJhbnR5OyBub3QgZXZl
>biBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
>LgoKY29uZmlndXJlOjEyMjkzOiAkPyA9IDAKY29uZmlndXJlOjEyMjk1OiBjYyAtdiA8L2Rldi9u
>dWxsID4mNQpSZWFkaW5nIHNwZWNzIGZyb20gL3Vzci9sb2NhbC9saWIvZ2NjLWxpYi9zcGFyYy1z
>dW4tc29sYXJpczIuMTAvMy4zLjIvc3BlY3MKQ29uZmlndXJlZCB3aXRoOiAuLi9jb25maWd1cmUg
>LS13aXRoLWFzPS91c3IvY2NzL2Jpbi9hcyAtLXdpdGgtbGQ9L3Vzci9jY3MvYmluL2xkIC0tZGlz
>YWJsZS1ubHMKVGhyZWFkIG1vZGVsOiBwb3NpeApnY2MgdmVyc2lvbiAzLjMuMgpjb25maWd1cmU6
>MTIyOTg6ICQ/ID0gMApjb25maWd1cmU6MTIzMDA6IGNjIC1WIDwvZGV2L251bGwgPiY1CmNjOiBg
>LVYnIG9wdGlvbiBtdXN0IGhhdmUgYXJndW1lbnQKY29uZmlndXJlOjEyMzAzOiAkPyA9IDEKY29u
>ZmlndXJlOjEyMzA2OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgY29t
>cGlsZXIKY29uZmlndXJlOjEyMzYyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTIzNjg6IGNoZWNr
>aW5nIHdoZXRoZXIgY2MgYWNjZXB0cyAtZwpjb25maWd1cmU6MTI0MTk6IHJlc3VsdDogeWVzCmNv
>bmZpZ3VyZToxMjQzNjogY2hlY2tpbmcgZm9yIGNjIG9wdGlvbiB0byBhY2NlcHQgQU5TSSBDCmNv
>bmZpZ3VyZToxMjU0MzogcmVzdWx0OiBub25lIG5lZWRlZApjb25maWd1cmU6MTI1NjE6IGNjIC1j
>IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzoyOiBlcnJvcjogcGFyc2UgZXJyb3Ig
>YmVmb3JlICJtZSIKY29uZmlndXJlOjEyNTY3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv
>Z3JhbSB3YXM6CnwgI2lmbmRlZiBfX2NwbHVzcGx1cwp8ICAgY2hva2UgbWUKfCAjZW5kaWYKY29u
>ZmlndXJlOjEyNzAyOiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxlIG9mIGNjCmNvbmZpZ3VyZTox
>Mjc5MjogcmVzdWx0OiBub25lCmNvbmZpZ3VyZToxMjgyMTogY2hlY2tpbmcgZm9yIGNjIGRlcGVu
>ZCBmbGFnCmNvbmZpZ3VyZToxMjgzMzogY2MgLU0gY29uZnRlc3QuYwpjb25maWd1cmU6MTI4MzY6
>ICQ/ID0gMApjb25maWd1cmU6MTI4NTA6IHJlc3VsdDogLU0KY29uZmlndXJlOjEyODcwOiBjaGVj
>a2luZyBmb3IgYWZvcGVuIGluIC1scwpjb25maWd1cmU6MTI5MDA6IGNjIC1vIGNvbmZ0ZXN0IC1n
>IC1PMiAgIGNvbmZ0ZXN0LmMgLWxzICAgPiY1CmxkOiBmYXRhbDogbGlicmFyeSAtbHM6IG5vdCBm
>b3VuZApsZDogZmF0YWw6IEZpbGUgcHJvY2Vzc2luZyBlcnJvcnMuIE5vIG91dHB1dCB3cml0dGVu
>IHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3Vy
>ZToxMjkwNjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk
>ZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdF
>X1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVO
>TERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4y
>NyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVO
>RE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAz
>CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01L
>VkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ
>RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf
>SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgLyogZW5kIGNvbmZkZWZzLmgu
>ICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9p
>ZCBhbiBlcnJvci4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRp
>Zgp8IC8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlw
>ZSBvZiBhIGdjYzIKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUg
>d291bGQgc3RpbGwgYXBwbHkuICAqLwp8IGNoYXIgYWZvcGVuICgpOwp8IGludAp8IG1haW4gKCkK
>fCB7CnwgYWZvcGVuICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTI5MzI6
>IHJlc3VsdDogbm8KY29uZmlndXJlOjEzMjIxOiBjaGVja2luZyBmb3IgRUJDRElDCmNvbmZpZ3Vy
>ZToxMzIzOTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzozMDozODogX19BU0NJSV9fL2dl
>bmVyYXRlX2Vycm9yLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjEzMjQ1
>OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4g
>ICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFN
>RSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO
>RyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BB
>Q0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNk
>ZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
>U0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVm
>aW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9O
>IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg
>SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVf
>RExGQ05fSCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg
>CnwgI2lmICEoJ00nID09IDB4ZDQpCnwgI2luY2x1ZGUgPF9fQVNDSUlfXy9nZW5lcmF0ZV9lcnJv
>ci5oPgp8ICNlbmRpZgp8IApjb25maWd1cmU6MTMyNjY6IHJlc3VsdDogbm8KY29uZmlndXJlOjEz
>Mjc2OiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcwpjb25maWd1cmU6MTMyOTI6IGNj
>IC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxMzI5ODogJD8gPSAwCmNvbmZpZ3VyZToxMzM4OTog
>Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxMzM5Mjog
>JD8gPSAwCmNvbmZpZ3VyZToxMzM5NDogLi9jb25mdGVzdApjb25maWd1cmU6MTMzOTc6ICQ/ID0g
>MApjb25maWd1cmU6MTM0MTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzQzNjogY2hlY2tpbmcg
>Zm9yIGRpcmVudC5oIHRoYXQgZGVmaW5lcyBESVIKY29uZmlndXJlOjEzNDYwOiBjYyAtYyAtZyAt
>TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMzQ2NjogJD8gPSAwCmNvbmZpZ3VyZToxMzQ3
>MDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjEzNDcz
>OiAkPyA9IDAKY29uZmlndXJlOjEzNDc2OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjEz
>NDc5OiAkPyA9IDAKY29uZmlndXJlOjEzNDkwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM1MDM6
>IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgb3BlbmRpcgpjb25maWd1cmU6MTM1MzM6
>IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTM1Mzk6
>ICQ/ID0gMApjb25maWd1cmU6MTM1NDM6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRl
>c3QuZXJyCmNvbmZpZ3VyZToxMzU0NjogJD8gPSAwCmNvbmZpZ3VyZToxMzU0OTogdGVzdCAtcyBj
>b25mdGVzdApjb25maWd1cmU6MTM1NTI6ICQ/ID0gMApjb25maWd1cmU6MTM2MjI6IHJlc3VsdDog
>bm9uZSByZXF1aXJlZApjb25maWd1cmU6MTM3NTg6IGNoZWNraW5nIGZvciBzeXMvd2FpdC5oIHRo
>YXQgaXMgUE9TSVguMSBjb21wYXRpYmxlCmNvbmZpZ3VyZToxMzc4OTogY2MgLWMgLWcgLU8yICBj
>b25mdGVzdC5jID4mNQpjb25maWd1cmU6MTM3OTU6ICQ/ID0gMApjb25maWd1cmU6MTM3OTk6IHRl
>c3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMzgwMjogJD8g
>PSAwCmNvbmZpZ3VyZToxMzgwNTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxMzgwODog
>JD8gPSAwCmNvbmZpZ3VyZToxMzgxOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzODI5OiBjaGVj
>a2luZyB3aGV0aGVyIHRlcm1pb3MuaCBkZWZpbmVzIFRJT0NHV0lOU1oKY29uZmlndXJlOjEzODU2
>OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIGFycGEvaW5ldC5oIHVzYWJp
>bGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln
>dXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
>IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6
>IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQw
>NDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgYXJwYS9pbmV0LmggcHJl
>c2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6
>ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hl
>Y2tpbmcgZm9yIGFycGEvaW5ldC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmln
>dXJlOjE0MDAyOiBjaGVja2luZyBhcnBhL25hbWVzZXIuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0
>MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAw
>CmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
>Y29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0
>Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6MTQwNDc6IGNoZWNraW5nIGFycGEvbmFtZXNlci5oIHByZXNlbmNlCmNvbmZpZ3Vy
>ZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmln
>dXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBhcnBh
>L25hbWVzZXIuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjog
>Y2hlY2tpbmcgYXNzZXJ0LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcgLU8y
>ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6MTQwMjQ6
>IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNDAyNzog
>JD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxNDAz
>MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDQ3OiBj
>aGVja2luZyBhc3NlcnQuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVz
>dC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMK
>Y29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgYXNzZXJ0LmgKY29uZmlndXJlOjE0MTI1OiBy
>ZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIGJpdHMvdHlwZXMuaCB1c2FiaWxp
>dHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0
>LmM6Njg6MjQ6IGJpdHMvdHlwZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1
>cmU6MTQwMjA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m
>ZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tB
>R0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BF
>TkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMu
>MjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZF
>TkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1Ig
>Mwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9N
>S1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ
>UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK
>fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
>I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
>bmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFE
>RVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVT
>RVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov
>CnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUg
>PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg
>PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3Rk
>bGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJf
>SAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9T
>VFJJTkdfSAp8ICMgaWYgIVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVk
>ZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwg
>I2lmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lm
>IEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYg
>SEFWRV9TVERJTlRfSAp8ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYK
>fCAjaWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2lu
>Y2x1ZGUgPGJpdHMvdHlwZXMuaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
>ZToxNDA0NzogY2hlY2tpbmcgYml0cy90eXBlcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1Nzog
>Y2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzozNDoyNDogYml0cy90eXBlcy5oOiBObyBzdWNo
>IGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDA2MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFp
>bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FH
>RV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
>VkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
>QlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVm
>aW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
>T04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUg
>TERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9O
>X1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURF
>UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
>fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
>bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhF
>RVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx
>CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAx
>CnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0gg
>MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8Yml0cy90eXBlcy5oPgpjb25m
>aWd1cmU6MTQwODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgYml0
>cy90eXBlcy5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiBubwpjb25maWd1cmU6MTQwMDI6IGNo
>ZWNraW5nIGNvbmlvLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcgLU8yICBj
>b25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjY4OjE5OiBjb25pby5oOiBObyBzdWNoIGZpbGUgb3Ig
>ZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
>YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIi
>CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
>Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
>ICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5M
>REFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcK
>fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5E
>T1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3
>CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
>IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
>RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
>TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwg
>I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8IC8qIGVu
>ZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQ
>RVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NU
>QVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWYgU1REQ19IRUFERVJT
>CnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwg
>IyBpZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNl
>bmRpZgp8ICNpZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhU1REQ19IRUFERVJTICYmIEhBVkVfTUVN
>T1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJp
>bmcuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3Mu
>aD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5o
>Pgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURElOVF9ICnwgIyAgaW5jbHVkZSA8c3RkaW50Lmg+Cnwg
>IyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQu
>aD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8Y29uaW8uaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6
>IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgY29uaW8uaCBwcmVzZW5jZQpjb25maWd1cmU6
>MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6MzQ6MTk6IGNvbmlvLmg6IE5vIHN1
>Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDYzOiAkPyA9IDEKY29uZmlndXJlOiBm
>YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNL
>QUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNk
>ZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
>U0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmlu
>ZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
>T05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVB
>REVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU
>QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg
>MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg
>I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBF
>WEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRf
>SCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxjb25pby5oPgpjb25maWd1
>cmU6MTQwODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgY29uaW8u
>aApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBj
>cnlwdC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3Qu
>YyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJ
>CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25m
>aWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApj
>b25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgY3J5
>cHQuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3Vy
>ZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
>MTE4OiBjaGVja2luZyBmb3IgY3J5cHQuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNv
>bmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgZGlyZWN0LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAx
>NDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjY5OjIwOiBkaXJlY3Qu
>aDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMQpjb25m
>aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVm
>aW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmlu
>ZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmlu
>ZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxE
>QVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZF
>TkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIK
>fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5E
>T1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUg
>U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
>U19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAj
>ZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf
>RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQ
>QV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZF
>X0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmgu
>ICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs
>dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNs
>dWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUg
>PHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RE
>TElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhB
>VkVfU1RSSU5HX0gKfCAjIGlmICFTVERDX0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGlu
>Y2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRp
>Zgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8
>ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAj
>IGlmIEhBVkVfU1RESU5UX0gKfCAjICBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2Vu
>ZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8
>ICNpbmNsdWRlIDxkaXJlY3QuaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
>ZToxNDA0NzogY2hlY2tpbmcgZGlyZWN0LmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAt
>RSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjM1OjIwOiBkaXJlY3QuaDogTm8gc3VjaCBmaWxlIG9y
>IGRpcmVjdG9yeQpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n
>cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi
>Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g
>IiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S
>VCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVO
>TERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3
>CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVO
>RE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAy
>Nwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj
>ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu
>ZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhB
>VkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8
>ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZp
>bmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZp
>bmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVm
>aW5lIEhBVkVfQ1JZUFRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxk
>aXJlY3QuaD4KY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDExODogY2hl
>Y2tpbmcgZm9yIGRpcmVjdC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiBubwpjb25maWd1cmU6
>MTQwMDI6IGNoZWNraW5nIGVycm5vLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMg
>LWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6
>MTQwMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTox
>NDAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
>ZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
>MDQ3OiBjaGVja2luZyBlcnJuby5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNv
>bmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBlcnJuby5oCmNvbmZpZ3VyZToxNDEy
>NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBmY250bC5oIHVzYWJpbGl0
>eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl
>OjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
>IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRl
>c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6
>IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgZmNudGwuaCBwcmVzZW5jZQpj
>b25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAw
>CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBm
>b3IgZmNudGwuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjog
>Y2hlY2tpbmcgZmlsaW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIg
>IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NzE6MTk6IGZpbGlvLmg6IE5vIHN1Y2ggZmlsZSBv
>ciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv
>Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg
>IiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O
>ICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP
>UlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BF
>TkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMy
>Nwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZF
>TkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0gg
>MjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg
>I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
>I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp
>bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI
>QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF
>X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBFWEVFWFQgIiIK
>fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVm
>aW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVm
>aW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAjZGVmaW5lIEhB
>VkVfRkNOVExfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5o
>Pgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5k
>aWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRp
>Zgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8
>c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRs
>aWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFTVERD
>X0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5k
>aWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8
>ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAj
>IGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RESU5UX0gKfCAjICBp
>bmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gK
>fCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxmaWxpby5oPgpjb25m
>aWd1cmU6MTQwNDM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MDQ3OiBjaGVja2luZyBmaWxpby5o
>IHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzoz
>NzoxOTogZmlsaW8uaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTQwNjM6
>ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAg
>Ki8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F
>ICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H
>ICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFD
>S0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2Rl
>ZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJT
>SU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZp
>bmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04g
>MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l
>IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI
>QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9E
>TEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj
>ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVm
>aW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwg
>I2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAvKiBlbmQgY29uZmRl
>ZnMuaC4gICovCnwgI2luY2x1ZGUgPGZpbGlvLmg+CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiBu
>bwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBmaWxpby5oCmNvbmZpZ3VyZToxNDEyNTog
>cmVzdWx0OiBubwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIGdldG9wdC5oIHVzYWJpbGl0eQpj
>b25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0
>MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNv
>bmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3Qg
>LXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJl
>c3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgZ2V0b3B0LmggcHJlc2VuY2UKY29u
>ZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApj
>b25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9y
>IGdldG9wdC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBj
>aGVja2luZyBncnAuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNv
>bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVz
>dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9
>IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAk
>PyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNr
>aW5nIGdycC5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
>ZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1
>cmU6MTQxMTg6IGNoZWNraW5nIGZvciBncnAuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVz
>CmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgaW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0
>OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NzM6MTY6IGlvLmg6IE5v
>IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDIwOiAkPyA9IDEKY29uZmlndXJl
>OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQ
>QUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFD
>S0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFD
>S0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8
>ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1Jf
>VkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2Rl
>ZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZF
>UlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENf
>SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
>X1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
>X0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAx
>CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwg
>I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmlu
>ZSBFWEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVO
>VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5F
>VF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NF
>UlRfSCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEK
>fCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm
>aW5lIEhBVkVfR1JQX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3Rk
>aW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+Cnwg
>I2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAj
>ZW5kaWYKfCAjaWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1
>ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8
>c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR19ICnwgIyBpZiAh
>U1REQ19IRUFERVJTICYmIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAj
>IGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdT
>X0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9JTlRUWVBFU19I
>CnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURElOVF9ICnwg
>IyAgaW5jbHVkZSA8c3RkaW50Lmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1VOSVNU
>RF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8aW8uaD4KY29u
>ZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgaW8uaCBw
>cmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6Mzk6
>MTY6IGlvLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDYzOiAkPyA9
>IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg
>CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8
>ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8
>ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0Ug
>Ik9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUg
>TERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9N
>QUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExE
>QVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAj
>ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm
>aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l
>IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF
>X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05f
>SCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu
>ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI
>QVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZp
>bmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFW
>RV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q
>VF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
>aW5jbHVkZSA8aW8uaD4KY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDEx
>ODogY2hlY2tpbmcgZm9yIGlvLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
>ZToxNDAwMjogY2hlY2tpbmcgbGlidXRpbC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNj
>IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo3MzoyMTogbGlidXRpbC5oOiBO
>byBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAxCmNvbmZpZ3Vy
>ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUg
>UEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBB
>Q0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBB
>Q0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIK
>fCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9S
>X1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNk
>ZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9W
>RVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERD
>X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
>U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
>R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg
>MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
>ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZp
>bmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF
>TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lO
>RVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNT
>RVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAx
>CnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX0dSUF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0
>ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8
>ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+Cnwg
>I2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNs
>dWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUg
>PHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYg
>IVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+Cnwg
>IyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5H
>U19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfSU5UVFlQRVNf
>SAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERJTlRfSAp8
>ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9VTklT
>VERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPGxpYnV0aWwu
>aD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcg
>bGlidXRpbC5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
>ZnRlc3QuYzozOToyMTogbGlidXRpbC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZp
>Z3VyZToxNDA2MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv
>bmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNL
>QUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFD
>S0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBP
>UEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIu
>My4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBf
>VkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5P
>UiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZF
>X01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf
>VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM
>SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg
>MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK
>fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl
>ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hF
>QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU
>X0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFN
>RVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAvKiBlbmQgY29u
>ZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGxpYnV0aWwuaD4KY29uZmlndXJlOjE0MDgzOiByZXN1
>bHQ6IG5vCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIGxpYnV0aWwuaApjb25maWd1cmU6
>MTQxMjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBsaW1pdHMuaCB1c2Fi
>aWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
>Z3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
>ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMw
>OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0
>MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIGxpbWl0cy5oIHByZXNl
>bmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAk
>PyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNr
>aW5nIGZvciBsaW1pdHMuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
>NDAwMjogY2hlY2tpbmcgbG9jYWxlLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMg
>LWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6
>MTQwMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTox
>NDAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
>ZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
>MDQ3OiBjaGVja2luZyBsb2NhbGUuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBj
>b25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0
>OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgbG9jYWxlLmgKY29uZmlndXJlOjE0
>MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIG1hbGxvYy5oIHVzYWJp
>bGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln
>dXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
>IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6
>IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQw
>NDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgbWFsbG9jLmggcHJlc2Vu
>Y2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/
>ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tp
>bmcgZm9yIG1hbGxvYy5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEz
>OTkzOiBjaGVja2luZyBmb3IgbWVtb3J5LmgKY29uZmlndXJlOjEzOTk4OiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHBzYXAuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0
>OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6Nzc6MTg6IHBzYXAuaDog
>Tm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMQpjb25maWd1
>cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5l
>IFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQ
>QUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQ
>QUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAi
>CnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRP
>Ul9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAj
>ZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1Jf
>VkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1RE
>Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
>TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I
>IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK
>fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVm
>aW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElS
>RU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9J
>TkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FT
>U0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0gg
>MQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB
>VkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01F
>TU9SWV9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+Cnwg
>I2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8
>ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwg
>I2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRk
>ZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5o
>Pgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIVNURENfSEVB
>REVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8
>ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HU19ICnwgIyBp
>bmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5j
>bHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERJTlRfSAp8ICMgIGluY2x1
>ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9VTklTVERfSAp8ICMg
>aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHBzYXAuaD4KY29uZmlndXJl
>OjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgcHNhcC5oIHByZXNl
>bmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzo0MzoxODog
>cHNhcC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDA2MzogJD8gPSAx
>CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8
>ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAj
>ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAj
>ZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJP
>cGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExE
>QVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFK
>T1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQ
>X1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2Rl
>ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI
>QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
>SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0gg
>MQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg
>SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFW
>RV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5l
>IEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>RVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf
>SCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5l
>IEhBVkVfTUVNT1JZX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8cHNh
>cC5oPgpjb25maWd1cmU6MTQwODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MTE4OiBjaGVja2lu
>ZyBmb3IgcHNhcC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiBubwpjb25maWd1cmU6MTQwMDI6
>IGNoZWNraW5nIHB3ZC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAg
>Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0
>ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/
>ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6
>ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hl
>Y2tpbmcgcHdkLmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpj
>b25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZp
>Z3VyZToxNDExODogY2hlY2tpbmcgZm9yIHB3ZC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5
>ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBwcm9jZXNzLmggdXNhYmlsaXR5CmNvbmZpZ3Vy
>ZToxNDAxNDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjc4OjIxOiBw
>cm9jZXNzLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDIwOiAkPyA9
>IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg
>CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8
>ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8
>ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0Ug
>Ik9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUg
>TERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9N
>QUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExE
>QVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAj
>ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm
>aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l
>IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF
>X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05f
>SCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu
>ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI
>QVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZp
>bmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFW
>RV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q
>VF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwg
>I2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZp
>bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAvKiBlbmQgY29uZmRl
>ZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAj
>IGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAj
>IGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5j
>bHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFW
>RV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAj
>aWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwg
>IyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+Cnwg
>I2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2Vu
>ZGlmCnwgI2lmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxz
>ZQp8ICMgaWYgSEFWRV9TVERJTlRfSAp8ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYK
>fCAjZW5kaWYKfCAjaWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2Vu
>ZGlmCnwgI2luY2x1ZGUgPHByb2Nlc3MuaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNv
>bmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgcHJvY2Vzcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1
>NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzo0NDoyMTogcHJvY2Vzcy5oOiBObyBzdWNo
>IGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDA2MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFp
>bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FH
>RV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
>VkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
>QlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVm
>aW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
>T04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUg
>TERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9O
>X1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURF
>UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
>fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
>bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhF
>RVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx
>CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAx
>CnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0gg
>MQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2Rl
>ZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBI
>QVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NB
>TEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg
>MQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs
>dWRlIDxwcm9jZXNzLmg+CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiBubwpjb25maWd1cmU6MTQx
>MTg6IGNoZWNraW5nIGZvciBwcm9jZXNzLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IG5vCmNv
>bmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc2d0dHkuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0
>OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNv
>bmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
>ZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
>Y29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25m
>aWd1cmU6MTQwNDc6IGNoZWNraW5nIHNndHR5LmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBj
>YyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6
>IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIHNndHR5LmgKY29uZmln
>dXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHNoYWRvdy5o
>IHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK
>Y29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwg
>dGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6
>MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1
>cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc2hhZG93Lmgg
>cHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQw
>NjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODog
>Y2hlY2tpbmcgZm9yIHNoYWRvdy5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmln
>dXJlOjE0MDAyOiBjaGVja2luZyBzdGRkZWYuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBj
>YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZp
>Z3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
>dXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29u
>ZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1
>cmU6MTQwNDc6IGNoZWNraW5nIHN0ZGRlZi5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2Mg
>LUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiBy
>ZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzdGRkZWYuaApjb25maWd1
>cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzk5MzogY2hlY2tpbmcgZm9yIHN0cmlu
>Zy5oCmNvbmZpZ3VyZToxMzk5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzOTkzOiBjaGVja2lu
>ZyBmb3Igc3RyaW5ncy5oCmNvbmZpZ3VyZToxMzk5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
>MDAyOiBjaGVja2luZyBzeXNleGl0cy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1j
>IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJl
>OjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
>MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1
>cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
>NDA0NzogY2hlY2tpbmcgc3lzZXhpdHMuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1F
>ICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVz
>dWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3Igc3lzZXhpdHMuaApjb25maWd1
>cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL2ZpbGUu
>aCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1
>CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8
>IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJl
>OjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmln
>dXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHN5cy9maWxl
>LmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6
>MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDEx
>ODogY2hlY2tpbmcgZm9yIHN5cy9maWxlLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHN5cy9maWxpby5oIHVzYWJpbGl0eQpjb25maWd1cmU6
>MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9
>IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
>cgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRl
>c3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVz
>CmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL2ZpbGlvLmggcHJlc2VuY2UKY29uZmlndXJl
>OjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1
>cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIHN5cy9m
>aWxpby5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVj
>a2luZyBzeXMvZXJybm8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIg
>IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDog
>dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAk
>PyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMz
>OiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNo
>ZWNraW5nIHN5cy9lcnJuby5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0
>ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHll
>cwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvZXJybm8uaApjb25maWd1cmU6MTQx
>MjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL2lvY3RsLmggdXNh
>YmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m
>aWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6MTQwMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0
>ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNDAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNDAz
>MDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZTox
>NDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDQ3OiBjaGVja2luZyBzeXMvaW9jdGwuaCBw
>cmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2
>MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBj
>aGVja2luZyBmb3Igc3lzL2lvY3RsLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25m
>aWd1cmU6MTQwMDI6IGNoZWNraW5nIHN5cy9wYXJhbS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQw
>MTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAK
>Y29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpj
>b25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qu
>bwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNv
>bmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL3BhcmFtLmggcHJlc2VuY2UKY29uZmlndXJlOjE0
>MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6
>MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIHN5cy9wYXJh
>bS5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2lu
>ZyBzeXMvcmVzb3VyY2UuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIg
>IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDog
>dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAk
>PyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMz
>OiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNo
>ZWNraW5nIHN5cy9yZXNvdXJjZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNv
>bmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvcmVzb3VyY2UuaApjb25maWd1
>cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL3NlbGVj
>dC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
>JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkg
>fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1
>cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25m
>aWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL3Nl
>bGVjdC5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmln
>dXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6
>MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvc2VsZWN0LmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHN5cy9zb2NrZXQuaCB1c2FiaWxpdHkKY29u
>ZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAy
>MDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25m
>dGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1z
>IGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1
>bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHN5cy9zb2NrZXQuaCBwcmVzZW5jZQpj
>b25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAw
>CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBm
>b3Igc3lzL3NvY2tldC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEz
>OTkzOiBjaGVja2luZyBmb3Igc3lzL3N0YXQuaApjb25maWd1cmU6MTM5OTg6IHJlc3VsdDogeWVz
>CmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL3N5c2xvZy5oIHVzYWJpbGl0eQpjb25maWd1
>cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAk
>PyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
>LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29u
>ZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDog
>eWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL3N5c2xvZy5oIHByZXNlbmNlCmNvbmZp
>Z3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29u
>ZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBz
>eXMvc3lzbG9nLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6
>IGNoZWNraW5nIHN5cy90aW1lLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcg
>LU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6MTQw
>MjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNDAy
>NzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTox
>NDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDQ3
>OiBjaGVja2luZyBzeXMvdGltZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNv
>bmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvdGltZS5oCmNvbmZpZ3VyZTox
>NDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzOTkzOiBjaGVja2luZyBmb3Igc3lzL3R5cGVz
>LmgKY29uZmlndXJlOjEzOTk4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5n
>IHN5cy91aW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0
>ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAt
>eiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAK
>Y29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9
>IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5n
>IHN5cy91aW8uaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNv
>bmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmln
>dXJlOjE0MTE4OiBjaGVja2luZyBmb3Igc3lzL3Vpby5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0
>OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBzeXNsb2cuaCB1c2FiaWxpdHkKY29uZmln
>dXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDog
>JD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
>dC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNv
>bmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6
>IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHN5c2xvZy5oIHByZXNlbmNlCmNvbmZpZ3Vy
>ZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmln
>dXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXNs
>b2cuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tp
>bmcgdGVybWlvcy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29u
>ZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0
>IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0g
>MApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/
>ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tp
>bmcgdGVybWlvcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMK
>Y29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25m
>aWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciB0ZXJtaW9zLmgKY29uZmlndXJlOjE0MTI1OiByZXN1
>bHQ6IHllcwpjb25maWd1cmU6MTM5OTM6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6
>MTM5OTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgdXRpbWUuaCB1c2Fi
>aWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
>Z3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
>ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMw
>OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0
>MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHV0aW1lLmggcHJlc2Vu
>Y2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/
>ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tp
>bmcgZm9yIHV0aW1lLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQy
>OTc6IGNoZWNraW5nIGZvciByZXNvbHYuaApjb25maWd1cmU6MTQzMTU6IGNjIC1jIC1nIC1PMiAg
>Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MzIxOiAkPyA9IDAKY29uZmlndXJlOjE0MzI1OiB0
>ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQzMjg6ICQ/
>ID0gMApjb25maWd1cmU6MTQzMzE6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQzMzQ6
>ICQ/ID0gMApjb25maWd1cmU6MTQzNDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDM2MTogY2hl
>Y2tpbmcgZm9yIG5ldGluZXQvdGNwLmgKY29uZmlndXJlOjE0Mzc5OiBjYyAtYyAtZyAtTzIgIGNv
>bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDM4NTogJD8gPSAwCmNvbmZpZ3VyZToxNDM4OTogdGVz
>dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MzkyOiAkPyA9
>IDAKY29uZmlndXJlOjE0Mzk1OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0Mzk4OiAk
>PyA9IDAKY29uZmlndXJlOjE0NDA5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ0MjU6IGNoZWNr
>aW5nIGZvciBzeXMvdWNyZWQuaApjb25maWd1cmU6MTQ0NDU6IGNjIC1jIC1nIC1PMiAgY29uZnRl
>c3QuYyA+JjUKY29uZnRlc3QuYzoxMDg6MjM6IHN5cy91Y3JlZC5oOiBObyBzdWNoIGZpbGUgb3Ig
>ZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDQ1MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
>YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIi
>CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
>Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
>ICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5M
>REFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcK
>fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5E
>T1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3
>CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
>IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
>RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
>TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwg
>I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZp
>bmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZF
>X0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I
>IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwg
>I2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
>bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>SEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElUU19I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJT19I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExf
>SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V
>UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
>U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
>X1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
>U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
>TE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
>SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAxCnwg
>I2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
>aW5jbHVkZSA8c3RkaW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lz
>L3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lz
>L3N0YXQuaD4KfCAjZW5kaWYKfCAjaWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIu
>aD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURExJQl9ICnwg
>IyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklO
>R19ICnwgIyBpZiAhU1REQ19IRUFERVJTICYmIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxt
>ZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWYg
>SEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWYgSEFW
>RV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbHNlCnwgIyBpZiBIQVZF
>X1NURElOVF9ICnwgIyAgaW5jbHVkZSA8c3RkaW50Lmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNp
>ZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWZkZWYg
>SEFWRV9TWVNfUEFSQU1fSAp8ICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KfCAjZW5kaWYKfCAKfCAK
>fCAjaW5jbHVkZSA8c3lzL3VjcmVkLmg+CmNvbmZpZ3VyZToxNDQ3NTogcmVzdWx0OiBubwpjb25m
>aWd1cmU6MTQ0OTM6IGNoZWNraW5nIGZvciBzaWdhY3Rpb24KY29uZmlndXJlOjE0NTUwOiBjYyAt
>byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0NTU2OiAkPyA9
>IDAKY29uZmlndXJlOjE0NTYwOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
>cgpjb25maWd1cmU6MTQ1NjM6ICQ/ID0gMApjb25maWd1cmU6MTQ1NjY6IHRlc3QgLXMgY29uZnRl
>c3QKY29uZmlndXJlOjE0NTY5OiAkPyA9IDAKY29uZmlndXJlOjE0NTgxOiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6MTQ0OTM6IGNoZWNraW5nIGZvciBzaWdzZXQKY29uZmlndXJlOjE0NTUwOiBjYyAt
>byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0NTU2OiAkPyA9
>IDAKY29uZmlndXJlOjE0NTYwOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
>cgpjb25maWd1cmU6MTQ1NjM6ICQ/ID0gMApjb25maWd1cmU6MTQ1NjY6IHRlc3QgLXMgY29uZnRl
>c3QKY29uZmlndXJlOjE0NTY5OiAkPyA9IDAKY29uZmlndXJlOjE0NTgxOiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6MTQ3NTk6IGNoZWNraW5nIGZvciBzb2NrZXQKY29uZmlndXJlOjE0ODE2OiBjYyAt
>byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKVW5kZWZpbmVkCQkJZmlyc3QgcmVm
>ZXJlbmNlZAogc3ltYm9sICAJCQkgICAgaW4gZmlsZQpzb2NrZXQgICAgICAgICAgICAgICAgICAg
>ICAgICAgICAgICAvdmFyL3RtcC8vY2NLRHBzTUYubwpsZDogZmF0YWw6IFN5bWJvbCByZWZlcmVu
>Y2luZyBlcnJvcnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCBy
>ZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxNDgyMjogJD8gPSAxCmNvbmZpZ3VyZTog
>ZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFD
>S0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tB
>R0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tB
>R0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAj
>ZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZF
>UlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZp
>bmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJT
>SU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hF
>QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
>VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I
>IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8
>ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUg
>RVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRf
>SCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRf
>SCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJU
>X0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwg
>I2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9M
>T0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ
>X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TSEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5l
>IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TWVNFWElUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZF
>X1NZU19GSUxJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhB
>VkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZp
>bmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm
>aW5lIEhBVkVfU1lTX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2Rl
>ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVm
>aW5lIEhBVkVfU1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUg
>SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9S
>RVNPTFZfSCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>SUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAg
>Ki8KfCAvKiBEZWZpbmUgc29ja2V0IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxs
>aW1pdHMuaD4gZGVjbGFyZXMgc29ja2V0Lgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxp
>bWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgc29ja2V0IGlubm9j
>dW91c19zb2NrZXQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9z
>IGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3
>aXRoIGNoYXIgc29ja2V0ICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFz
>c2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAgICA8bGltaXRzLmg+IGV4
>aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8IAp8ICNpZmRlZiBfX1NU
>RENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5o
>Pgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBzb2NrZXQKfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBp
>bnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVz
>cGx1cwp8IGV4dGVybiAiQyIKfCB7CnwgI2VuZGlmCnwgLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBp
>bnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgp8ICAgIGJ1aWx0aW4gYW5k
>IHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgY2hh
>ciBzb2NrZXQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5j
>dGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZ
>Uy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3Rh
>cnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYg
>ZGVmaW5lZCAoX19zdHViX3NvY2tldCkgfHwgZGVmaW5lZCAoX19zdHViX19fc29ja2V0KQp8IGNo
>b2tlIG1lCnwgI2Vsc2UKfCBjaGFyICgqZikgKCkgPSBzb2NrZXQ7CnwgI2VuZGlmCnwgI2lmZGVm
>IF9fY3BsdXNwbHVzCnwgfQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJu
>IGYgIT0gc29ja2V0Owp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTQ4NDc6IHJl
>c3VsdDogbm8KY29uZmlndXJlOjE0ODU0OiBjaGVja2luZyBmb3IgbWFpbiBpbiAtbHNvY2tldApj
>b25maWd1cmU6MTQ4Nzg6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxzb2Nr
>ZXQgICA+JjUKY29uZmlndXJlOjE0ODg0OiAkPyA9IDAKY29uZmlndXJlOjE0ODg4OiB0ZXN0IC16
>IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQ4OTE6ICQ/ID0gMApj
>b25maWd1cmU6MTQ4OTQ6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE0ODk3OiAkPyA9IDAK
>Y29uZmlndXJlOjE0OTEwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ5MjI6IGNoZWNraW5nIGZv
>ciBtYWluIGluIC1sbmV0CmNvbmZpZ3VyZToxNDk0NjogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
>Y29uZnRlc3QuYyAtbG5ldCAgLWxzb2NrZXQgID4mNQpsZDogZmF0YWw6IGxpYnJhcnkgLWxuZXQ6
>IG5vdCBmb3VuZApsZDogZmF0YWw6IEZpbGUgcHJvY2Vzc2luZyBlcnJvcnMuIE5vIG91dHB1dCB3
>cml0dGVuIHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNv
>bmZpZ3VyZToxNDk1MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q
>IGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQ
>QUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUg
>UEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmlu
>ZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04g
>IjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExE
>QVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9N
>SU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBI
>QVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T
>WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I
>IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
>I2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERD
>X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19X
>QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFf
>TkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQ
>VF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8
>ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5l
>IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZF
>X01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf
>SCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TSEFET1dfSCAxCnwg
>I2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp
>bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElUU19IIDEKfCAjZGVmaW5l
>IEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJT19IIDEKfCAjZGVmaW5l
>IEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0xPR19IIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTTE9HX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAxCnwgI2RlZmluZSBIQVZF
>X05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFW
>RV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJTT0NLRVQgMQp8IC8qIGVuZCBjb25mZGVmcy5o
>LiAgKi8KfCAKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IG1haW4gKCk7CnwgICA7CnwgICByZXR1
>cm4gMDsKfCB9CmNvbmZpZ3VyZToxNDk3ODogcmVzdWx0OiBubwpjb25maWd1cmU6MTQ5OTA6IGNo
>ZWNraW5nIGZvciBtYWluIGluIC1sbnNsX3MKY29uZmlndXJlOjE1MDE0OiBjYyAtbyBjb25mdGVz
>dCAtZyAtTzIgICBjb25mdGVzdC5jIC1sbnNsX3MgIC1sc29ja2V0ICA+JjUKbGQ6IGZhdGFsOiBs
>aWJyYXJ5IC1sbnNsX3M6IG5vdCBmb3VuZApsZDogZmF0YWw6IEZpbGUgcHJvY2Vzc2luZyBlcnJv
>cnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAx
>IGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxNTAyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy
>b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F
>ICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP
>TiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ
>T1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9Q
>RU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAz
>MjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9W
>RU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENI
>IDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
>ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
>aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
>SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
>RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIi
>CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBI
>QVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dS
>UF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAx
>CnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TSEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS
>SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElU
>U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJ
>T19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9D
>VExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JF
>U09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>WVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>U1lTX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZF
>X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVf
>U1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT
>VERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAx
>CnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04g
>MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJTT0NLRVQgMQp8IC8q
>IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IG1haW4gKCk7
>CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxNTA0NjogcmVzdWx0OiBubwpjb25m
>aWd1cmU6MTUwNTg6IGNoZWNraW5nIGZvciBtYWluIGluIC1sbnNsCmNvbmZpZ3VyZToxNTA4Mjog
>Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbG5zbCAgLWxzb2NrZXQgID4mNQpj
>b25maWd1cmU6MTUwODg6ICQ/ID0gMApjb25maWd1cmU6MTUwOTI6IHRlc3QgLXogCgkJCSB8fCB0
>ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTA5NTogJD8gPSAwCmNvbmZpZ3VyZTox
>NTA5ODogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTUxMDE6ICQ/ID0gMApjb25maWd1cmU6
>MTUxMTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTEyNjogY2hlY2tpbmcgZm9yIHNvY2tldCBp
>biAtbGluZXQKY29uZmlndXJlOjE1MTU2OiBjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVz
>dC5jIC1saW5ldCAgLWxuc2wgLWxzb2NrZXQgID4mNQpsZDogZmF0YWw6IGxpYnJhcnkgLWxpbmV0
>OiBub3QgZm91bmQKbGQ6IGZhdGFsOiBGaWxlIHByb2Nlc3NpbmcgZXJyb3JzLiBObyBvdXRwdXQg
>d3JpdHRlbiB0byBjb25mdGVzdApjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpj
>b25maWd1cmU6MTUxNjI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv
>KiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUg
>UEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5l
>IFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZp
>bmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9O
>ICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBM
>REFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05f
>TUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUg
>SEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf
>U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9S
>WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf
>SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
>ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1RE
>Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
>V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBB
>X05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZ
>UFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEK
>fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFW
>RV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdE
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU0hBRE9XX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
>aW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTRVhJVFNfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMSU9fSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZp
>bmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNMT0dfSCAx
>CnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx
>CnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU0xPR19IIDEKfCAj
>ZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
>bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVTT0xWX0ggMQp8ICNkZWZpbmUgSEFW
>RV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhB
>VkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCU09DS0VUIDEKfCAjZGVmaW5lIEhBVkVfTElC
>TlNMIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgLyogT3ZlcnJpZGUgYW55IGdjYzIg
>aW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KfCAjaWZkZWYgX19jcGx1
>c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBpbnQg
>bWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgp8ICAgIGJ1aWx0aW4gYW5kIHRo
>ZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgY2hhciBz
>b2NrZXQgKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBzb2NrZXQgKCk7CnwgICA7CnwgICByZXR1
>cm4gMDsKfCB9CmNvbmZpZ3VyZToxNTE4ODogcmVzdWx0OiBubwpjb25maWd1cmU6MTUyMDA6IGNo
>ZWNraW5nIGZvciBtYWluIGluIC1sZ2VuCmNvbmZpZ3VyZToxNTIyNDogY2MgLW8gY29uZnRlc3Qg
>LWcgLU8yICAgY29uZnRlc3QuYyAtbGdlbiAgLWxuc2wgLWxzb2NrZXQgID4mNQpjb25maWd1cmU6
>MTUyMzA6ICQ/ID0gMApjb25maWd1cmU6MTUyMzQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMg
>Y29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTIzNzogJD8gPSAwCmNvbmZpZ3VyZToxNTI0MDogdGVz
>dCAtcyBjb25mdGVzdApjb25maWd1cmU6MTUyNDM6ICQ/ID0gMApjb25maWd1cmU6MTUyNTY6IHJl
>c3VsdDogeWVzCmNvbmZpZ3VyZToxNTI3MTogY2hlY2tpbmcgZm9yIHNlbGVjdApjb25maWd1cmU6
>MTUzMjg6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnZW4gLWxuc2wgLWxz
>b2NrZXQgID4mNQpjb25maWd1cmU6MTUzMzQ6ICQ/ID0gMApjb25maWd1cmU6MTUzMzg6IHRlc3Qg
>LXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTM0MTogJD8gPSAw
>CmNvbmZpZ3VyZToxNTM0NDogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTUzNDc6ICQ/ID0g
>MApjb25maWd1cmU6MTUzNTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTM3NzogY2hlY2tpbmcg
>Zm9yIHN5cy9zZWxlY3QuaApjb25maWd1cmU6MTUzODI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
>NTM3NzogY2hlY2tpbmcgZm9yIHN5cy9zb2NrZXQuaApjb25maWd1cmU6MTUzODI6IHJlc3VsdDog
>eWVzCmNvbmZpZ3VyZToxNTUyMjogY2hlY2tpbmcgdHlwZXMgb2YgYXJndW1lbnRzIGZvciBzZWxl
>Y3QKY29uZmlndXJlOjE1NTU1OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy
>ZToxNTU2MTogJD8gPSAwCmNvbmZpZ3VyZToxNTU2NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
>cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE1NTY4OiAkPyA9IDAKY29uZmlndXJlOjE1NTcxOiB0
>ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE1NTc0OiAkPyA9IDAKY29uZmlndXJlOjE1NTkw
>OiByZXN1bHQ6IGludCxmZF9zZXQgKixzdHJ1Y3QgdGltZXZhbCAqCmNvbmZpZ3VyZToxNTYyMDog
>Y2hlY2tpbmcgZm9yIHBvbGwKY29uZmlndXJlOjE1Njc3OiBjYyAtbyBjb25mdGVzdCAtZyAtTzIg
>ICBjb25mdGVzdC5jIC1sZ2VuIC1sbnNsIC1sc29ja2V0ICA+JjUKY29uZmlndXJlOjE1NjgzOiAk
>PyA9IDAKY29uZmlndXJlOjE1Njg3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
>LmVycgpjb25maWd1cmU6MTU2OTA6ICQ/ID0gMApjb25maWd1cmU6MTU2OTM6IHRlc3QgLXMgY29u
>ZnRlc3QKY29uZmlndXJlOjE1Njk2OiAkPyA9IDAKY29uZmlndXJlOjE1NzA4OiByZXN1bHQ6IHll
>cwpjb25maWd1cmU6MTU3MzI6IGNoZWNraW5nIHBvbGwuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE1
>NzQ0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNTc1MDogJD8gPSAw
>CmNvbmZpZ3VyZToxNTc1NDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
>Y29uZmlndXJlOjE1NzU3OiAkPyA9IDAKY29uZmlndXJlOjE1NzYwOiB0ZXN0IC1zIGNvbmZ0ZXN0
>Lm8KY29uZmlndXJlOjE1NzYzOiAkPyA9IDAKY29uZmlndXJlOjE1NzczOiByZXN1bHQ6IHllcwpj
>b25maWd1cmU6MTU3Nzc6IGNoZWNraW5nIHBvbGwuaCBwcmVzZW5jZQpjb25maWd1cmU6MTU3ODc6
>IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNTc5MzogJD8gPSAwCmNvbmZpZ3VyZToxNTgx
>MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODQ4OiBjaGVja2luZyBmb3IgcG9sbC5oCmNvbmZp
>Z3VyZToxNTg1NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODgzOiBjaGVja2luZyBzeXMvZXBv
>bGwuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE1ODk1OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg
>PiY1CmNvbmZ0ZXN0LmM6MTE1OjIzOiBzeXMvZXBvbGwuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVj
>dG9yeQpjb25maWd1cmU6MTU5MDE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh
>czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNk
>ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAj
>ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8
>ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9W
>RVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2Rl
>ZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZF
>UlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNk
>ZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l
>IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l
>IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF
>X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U
>VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE
>X0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZp
>bmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFW
>RV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhB
>VkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05U
>TF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwg
>I2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZp
>bmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB
>VkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU0hBRE9X
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
>fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTRVhJVFNfSCAxCnwg
>I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMSU9fSCAxCnwg
>I2RlZmluZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF
>VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNM
>T0dfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ
>RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU0xPR19I
>IDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
>ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVTT0xWX0ggMQp8ICNkZWZp
>bmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVm
>aW5lIEhBVkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCU09DS0VUIDEKfCAjZGVmaW5lIEhB
>VkVfTElCTlNMIDEKfCAjZGVmaW5lIEhBVkVfTElCR0VOIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF
>TEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIFNFTEVDVF9U
>WVBFX0FSRzEgaW50CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcyMzQgKGZkX3NldCAqKQp8ICNk
>ZWZpbmUgU0VMRUNUX1RZUEVfQVJHNSAoc3RydWN0IHRpbWV2YWwgKikKfCAjZGVmaW5lIEhBVkVf
>UE9MTCAxCnwgI2RlZmluZSBIQVZFX1BPTExfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8
>ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxz
>eXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxz
>eXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxp
>Yi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RETElCX0gK
>fCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RS
>SU5HX0gKfCAjIGlmICFTVERDX0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUg
>PG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNp
>ZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBI
>QVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhB
>VkVfU1RESU5UX0gKfCAjICBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwg
>I2lmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNs
>dWRlIDxzeXMvZXBvbGwuaD4KY29uZmlndXJlOjE1OTI0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTox
>NTkyODogY2hlY2tpbmcgc3lzL2Vwb2xsLmggcHJlc2VuY2UKY29uZmlndXJlOjE1OTM4OiBjYyAt
>RSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjgxOjIzOiBzeXMvZXBvbGwuaDogTm8gc3VjaCBmaWxl
>IG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTU5NDQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw
>cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFN
>RSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ
>T04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF
>UE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBP
>UEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIw
>MzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBf
>VkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRD
>SCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK
>fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl
>ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l
>IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB
>VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAi
>Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAj
>ZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUg
>SEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9H
>UlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0gg
>MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj
>ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhB
>VkVfU0hBRE9XX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NU
>UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTRVhJ
>VFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
>SU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lP
>Q1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S
>RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>U1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
>X1NZU19TWVNMT0dfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwgI2RlZmluZSBIQVZF
>X1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5J
>U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVTT0xWX0gg
>MQp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9O
>IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCU09DS0VUIDEKfCAj
>ZGVmaW5lIEhBVkVfTElCTlNMIDEKfCAjZGVmaW5lIEhBVkVfTElCR0VOIDEKfCAjZGVmaW5lIEhB
>VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5l
>IFNFTEVDVF9UWVBFX0FSRzEgaW50CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcyMzQgKGZkX3Nl
>dCAqKQp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHNSAoc3RydWN0IHRpbWV2YWwgKikKfCAjZGVm
>aW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1BPTExfSCAxCnwgLyogZW5kIGNvbmZkZWZz
>LmguICAqLwp8ICNpbmNsdWRlIDxzeXMvZXBvbGwuaD4KY29uZmlndXJlOjE1OTY0OiByZXN1bHQ6
>IG5vCmNvbmZpZ3VyZToxNTk5OTogY2hlY2tpbmcgZm9yIHN5cy9lcG9sbC5oCmNvbmZpZ3VyZTox
>NjAwNjogcmVzdWx0OiBubwpjb25maWd1cmU6MTYwNzA6IGNoZWNraW5nIGRlY2xhcmF0aW9uIG9m
>IHN5c19lcnJsaXN0CmNvbmZpZ3VyZToxNjA5ODogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4m
>NQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6OTI6IGVycm9yOiBg
>c3lzX2Vycmxpc3QnIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQpjb25m
>dGVzdC5jOjkyOiBlcnJvcjogKEVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVk
>IG9ubHkgb25jZQpjb25mdGVzdC5jOjkyOiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBw
>ZWFycyBpbi4pCmNvbmZpZ3VyZToxNjEwNDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
>YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIi
>CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
>Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
>ICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5M
>REFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcK
>fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5E
>T1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3
>CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
>IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
>RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
>TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwg
>I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu
>ZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZp
>bmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZF
>X0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I
>IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwg
>I2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
>bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>SEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElUU19I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJT19I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExf
>SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V
>UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
>U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
>X1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
>U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
>TE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
>SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAxCnwg
>I2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8
>ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJTT0NLRVQgMQp8ICNkZWZp
>bmUgSEFWRV9MSUJOU0wgMQp8ICNkZWZpbmUgSEFWRV9MSUJHRU4gMQp8ICNkZWZpbmUgSEFWRV9T
>WVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgU0VM
>RUNUX1RZUEVfQVJHMSBpbnQKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FSRzIzNCAoZmRfc2V0ICop
>CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkc1IChzdHJ1Y3QgdGltZXZhbCAqKQp8ICNkZWZpbmUg
>SEFWRV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUE9MTF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g
>ICovCnwgCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNp
>bmNsdWRlIDxlcnJuby5oPgp8ICNpZmRlZiBXSU5OVAp8ICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAj
>ZW5kaWYKfCBpbnQKfCBtYWluICgpCnwgewp8IGNoYXIgKmMgPSAoY2hhciAqKSAqc3lzX2Vycmxp
>c3QKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE2MTI5OiByZXN1bHQ6IG5vCmNv
>bmZpZ3VyZToxNjE0MDogY2hlY2tpbmcgZXhpc3RlbmNlIG9mIHN5c19lcnJsaXN0CmNvbmZpZ3Vy
>ZToxNjE2MjogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdlbiAtbG5zbCAt
>bHNvY2tldCAgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzo4
>NzogZXJyb3I6IGBzeXNfZXJybGlzdCcgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVu
>Y3Rpb24pCmNvbmZ0ZXN0LmM6ODc6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlkZW50aWZpZXIg
>aXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6ODc6IGVycm9yOiBmb3IgZWFjaCBmdW5j
>dGlvbiBpdCBhcHBlYXJzIGluLikKY29uZmlndXJlOjE2MTY4OiAkPyA9IDEKY29uZmlndXJlOiBm
>YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNL
>QUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FH
>RV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNk
>ZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
>U0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmlu
>ZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
>T05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVB
>REVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU
>QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg
>MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg
>I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBF
>WEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9I
>IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRf
>SCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAj
>ZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l
>IEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX0xP
>Q0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf
>SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2Rl
>ZmluZSBIQVZFX1NIQURPV19IIDEKfCAjZGVmaW5lIEhBVkVfU1REREVGX0ggMQp8ICNkZWZpbmUg
>SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF
>X1NZU0VYSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVf
>U1lTX0ZJTElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZF
>X1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp
>bmUgSEFWRV9TWVNfU1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm
>aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVUlPX0ggMQp8ICNkZWZp
>bmUgSEFWRV9TWVNMT0dfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBI
>QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1JF
>U09MVl9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9UQ1BfSCAxCnwgI2RlZmluZSBIQVZFX1NJ
>R0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVCAxCnwgI2RlZmluZSBIQVZFX0xJQlNPQ0tF
>VCAxCnwgI2RlZmluZSBIQVZFX0xJQk5TTCAxCnwgI2RlZmluZSBIQVZFX0xJQkdFTiAxCnwgI2Rl
>ZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwg
>I2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcxIGludAp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHMjM0
>IChmZF9zZXQgKikKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FSRzUgKHN0cnVjdCB0aW1ldmFsICop
>CnwgI2RlZmluZSBIQVZFX1BPTEwgMQp8ICNkZWZpbmUgSEFWRV9QT0xMX0ggMQp8ICNkZWZpbmUg
>REVDTF9TWVNfRVJSTElTVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxl
>cnJuby5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgY2hhciAqYyA9IChjaGFyICopICpzeXNfZXJy
>bGlzdAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTYxOTM6IHJlc3VsdDogbm8K
>Y29uZmlndXJlOjE2MjA4OiBjaGVja2luZyBmb3Igc3RyZXJyb3IKY29uZmlndXJlOjE2MjY1OiBj
>YyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ2VuIC1sbnNsIC1sc29ja2V0ICA+
>JjUKY29uZmlndXJlOjE2MjcxOiAkPyA9IDAKY29uZmlndXJlOjE2Mjc1OiB0ZXN0IC16IAoJCQkg
>fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTYyNzg6ICQ/ID0gMApjb25maWd1
>cmU6MTYyODE6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE2Mjg0OiAkPyA9IDAKY29uZmln
>dXJlOjE2Mjk2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTYyMDg6IGNoZWNraW5nIGZvciBzdHJl
>cnJvcl9yCmNvbmZpZ3VyZToxNjI2NTogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3Qu
>YyAtbGdlbiAtbG5zbCAtbHNvY2tldCAgPiY1CmNvbmZpZ3VyZToxNjI3MTogJD8gPSAwCmNvbmZp
>Z3VyZToxNjI3NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
>dXJlOjE2Mjc4OiAkPyA9IDAKY29uZmlndXJlOjE2MjgxOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZp
>Z3VyZToxNjI4NDogJD8gPSAwCmNvbmZpZ3VyZToxNjI5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJl
>OjE2MzA4OiBjaGVja2luZyBub24tcG9zaXggc3RyZXJyb3Jfcgpjb25maWd1cmU6MTYzNTE6IGNj
>IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gYG1haW4n
>Ogpjb25mdGVzdC5jOjkwOiBlcnJvcjogaW52YWxpZCB0eXBlIGFyZ3VtZW50IG9mIGB1bmFyeSAq
>Jwpjb25mdGVzdC5jOjkxOiB3YXJuaW5nOiBpbml0aWFsaXphdGlvbiBtYWtlcyBwb2ludGVyIGZy
>b20gaW50ZWdlciB3aXRob3V0IGEgY2FzdApjb25maWd1cmU6MTYzNTc6ICQ/ID0gMQpjb25maWd1
>cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5l
>IFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQ
>QUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQ
>QUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAi
>CnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRP
>Ul9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAj
>ZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1Jf
>VkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1RE
>Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
>WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
>TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I
>IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK
>fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVm
>aW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElS
>RU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9J
>TkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FT
>U0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0gg
>MQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB
>VkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01F
>TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEK
>fCAjZGVmaW5lIEhBVkVfU0hBRE9XX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2Rl
>ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l
>IEhBVkVfU1lTRVhJVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUg
>SEFWRV9TWVNfRklMSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5l
>IEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu
>ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
>I2RlZmluZSBIQVZFX1NZU19TWVNMT0dfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwg
>I2RlZmluZSBIQVZFX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVm
>aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhB
>VkVfUkVTT0xWX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhB
>VkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElC
>U09DS0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCTlNMIDEKfCAjZGVmaW5lIEhBVkVfTElCR0VOIDEK
>fCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9I
>IDEKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FSRzEgaW50CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9B
>UkcyMzQgKGZkX3NldCAqKQp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHNSAoc3RydWN0IHRpbWV2
>YWwgKikKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1BPTExfSCAxCnwgI2Rl
>ZmluZSBERUNMX1NZU19FUlJMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZp
>bmUgSEFWRV9TVFJFUlJPUl9SIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg
>PHN0cmluZy5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgICAgLyogZnJvbSBhdXRvY29uZiAyLjU5
>ICovCnwgCQkJCWNoYXIgYnVmWzEwMF07CnwgCQkJCWNoYXIgeCA9ICpzdHJlcnJvcl9yICgwLCBi
>dWYsIHNpemVvZiBidWYpOwp8IAkJCQljaGFyICpwID0gc3RyZXJyb3JfciAoMCwgYnVmLCBzaXpl
>b2YgYnVmKTsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE2NDI0OiByZXN1
>bHQ6IG5vCmNvbmZpZ3VyZToxNjU4NjogY2hlY2tpbmcgcmVnZXguaCB1c2FiaWxpdHkKY29uZmln
>dXJlOjE2NTk4OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CkluIGZpbGUgaW5jbHVkZWQg
>ZnJvbSBjb25mdGVzdC5jOjExODoKL3Vzci9sb2NhbC9pbmNsdWRlL3JlZ2V4Lmg6Mjk3OiBlcnJv
>cjogc3ludGF4IGVycm9yIGJlZm9yZSAiaW50IgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDoz
>MDY6IGVycm9yOiBzeW50YXggZXJyb3IgYmVmb3JlICJpbnQiCi91c3IvbG9jYWwvaW5jbHVkZS9y
>ZWdleC5oOjMwODogZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgInJlX3ZvaWQiCi91c3IvbG9j
>YWwvaW5jbHVkZS9yZWdleC5oOjMwOTogZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgInNpemVf
>dCIKY29uZmlndXJlOjE2NjA0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
>CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVm
>aW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2Rl
>ZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAj
>ZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVS
>U0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZp
>bmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJT
>SU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVm
>aW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI
>QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI
>QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N
>RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ
>UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I
>IDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAjZGVmaW5l
>IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>U1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVf
>QVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZF
>X0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExf
>SCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5l
>IEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF
>X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NIQURPV19I
>IDEKfCAjZGVmaW5lIEhBVkVfU1REREVGX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg
>I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU0VYSVRTX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTElPX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx
>CnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRf
>SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTTE9H
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT
>X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNMT0dfSCAx
>CnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
>ZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1JFU09MVl9IIDEKfCAjZGVmaW5l
>IEhBVkVfTkVUSU5FVF9UQ1BfSCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmlu
>ZSBIQVZFX1NJR1NFVCAxCnwgI2RlZmluZSBIQVZFX0xJQlNPQ0tFVCAxCnwgI2RlZmluZSBIQVZF
>X0xJQk5TTCAxCnwgI2RlZmluZSBIQVZFX0xJQkdFTiAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxF
>Q1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBTRUxFQ1RfVFlQ
>RV9BUkcxIGludAp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHMjM0IChmZF9zZXQgKikKfCAjZGVm
>aW5lIFNFTEVDVF9UWVBFX0FSRzUgKHN0cnVjdCB0aW1ldmFsICopCnwgI2RlZmluZSBIQVZFX1BP
>TEwgMQp8ICNkZWZpbmUgSEFWRV9QT0xMX0ggMQp8ICNkZWZpbmUgREVDTF9TWVNfRVJSTElTVCAx
>CnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1JfUiAxCnwg
>LyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZiBIQVZFX1NZ
>U19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9T
>WVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZiBTVERDX0hF
>QURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vs
>c2UKfCAjIGlmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlm
>CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFTVERDX0hFQURFUlMgJiYgSEFW
>RV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUg
>PHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3Ry
>aW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5
>cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RESU5UX0gKfCAjICBpbmNsdWRlIDxzdGRpbnQu
>aD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVu
>aXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxyZWdleC5oPgpjb25maWd1cmU6MTY2Mjc6IHJl
>c3VsdDogbm8KY29uZmlndXJlOjE2NjMxOiBjaGVja2luZyByZWdleC5oIHByZXNlbmNlCmNvbmZp
>Z3VyZToxNjY0MTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE2NjQ3OiAkPyA9IDAKY29u
>ZmlndXJlOjE2NjY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY2ODA6IFdBUk5JTkc6IHJlZ2V4
>Lmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZApjb25maWd1cmU6MTY2ODI6IFdBUk5J
>Tkc6IHJlZ2V4Lmg6ICAgICBjaGVjayBmb3IgbWlzc2luZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8K
>Y29uZmlndXJlOjE2Njg0OiBXQVJOSU5HOiByZWdleC5oOiBzZWUgdGhlIEF1dG9jb25mIGRvY3Vt
>ZW50YXRpb24KY29uZmlndXJlOjE2Njg2OiBXQVJOSU5HOiByZWdleC5oOiAgICAgc2VjdGlvbiAi
>UHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkIgpjb25maWd1cmU6MTY2ODg6IFdBUk5JTkc6
>IHJlZ2V4Lmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0CmNvbmZp
>Z3VyZToxNjY5MDogV0FSTklORzogcmVnZXguaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVy
>IHdpbGwgdGFrZSBwcmVjZWRlbmNlCmNvbmZpZ3VyZToxNjcwMjogY2hlY2tpbmcgZm9yIHJlZ2V4
>LmgKY29uZmlndXJlOjE2NzA5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3Mjc6IGNoZWNraW5n
>IGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgcmVnZnJlZQpjb25maWd1cmU6MTY3NTc6IGNjIC1vIGNv
>bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnZW4gLWxuc2wgLWxzb2NrZXQgID4mNQpjb25m
>aWd1cmU6MTY3NjM6ICQ/ID0gMApjb25maWd1cmU6MTY3Njc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0
>ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNjc3MDogJD8gPSAwCmNvbmZpZ3VyZToxNjc3
>MzogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTY3NzY6ICQ/ID0gMApjb25maWd1cmU6MTY4
>NDY6IHJlc3VsdDogbm9uZSByZXF1aXJlZApjb25maWd1cmU6MTY4NTk6IGNoZWNraW5nIGZvciBj
>b21wYXRpYmxlIFBPU0lYIHJlZ2V4CmNvbmZpZ3VyZToxNjg5OTogY2MgLW8gY29uZnRlc3QgLWcg
>LU8yICAgY29uZnRlc3QuYyAtbGdlbiAtbG5zbCAtbHNvY2tldCAgPiY1CkluIGZpbGUgaW5jbHVk
>ZWQgZnJvbSBjb25mdGVzdC5jOjg3OgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDoxMzg6IGVy
>cm9yOiBwYXJzZSBlcnJvciBiZWZvcmUgInJlX3ZvaWQiCi91c3IvbG9jYWwvaW5jbHVkZS9yZWdl
>eC5oOjI5NzogZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgImludCIKL3Vzci9sb2NhbC9pbmNs
>dWRlL3JlZ2V4Lmg6Mjk3OiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJDT05TVCIKL3Vzci9s
>b2NhbC9pbmNsdWRlL3JlZ2V4Lmg6MzA2OiBlcnJvcjogc3ludGF4IGVycm9yIGJlZm9yZSAiaW50
>IgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDozMDY6IGVycm9yOiBwYXJzZSBlcnJvciBiZWZv
>cmUgIkNPTlNUIgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDozMDg6IGVycm9yOiBwYXJzZSBl
>cnJvciBiZWZvcmUgInJlX3ZvaWQiCi91c3IvbG9jYWwvaW5jbHVkZS9yZWdleC5oOjMwOTogZXJy
>b3I6IHN5bnRheCBlcnJvciBiZWZvcmUgInNpemVfdCIKL3Vzci9sb2NhbC9pbmNsdWRlL3JlZ2V4
>Lmg6MzA5OiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJDT05TVCIKY29uZmlndXJlOjE2OTAy
>OiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRoIHN0YXR1cyAxCmNvbmZpZ3Vy
>ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUg
>UEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBB
>Q0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBB
>Q0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIK
>fCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9S
>X1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNk
>ZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9W
>RVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERD
>X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
>U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
>R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg
>MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
>ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZp
>bmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF
>TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lO
>RVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNT
>RVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAx
>CnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl
>ZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFW
>RV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVN
>T1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8
>ICNkZWZpbmUgSEFWRV9TSEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVm
>aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
>SEFWRV9TWVNFWElUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBI
>QVZFX1NZU19GSUxJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUg
>SEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5l
>IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNk
>ZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1lTX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg
>I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAj
>ZGVmaW5lIEhBVkVfU1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZp
>bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFW
>RV9SRVNPTFZfSCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFW
>RV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJT
>T0NLRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJOU0wgMQp8ICNkZWZpbmUgSEFWRV9MSUJHRU4gMQp8
>ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0gg
>MQp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHMSBpbnQKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FS
>RzIzNCAoZmRfc2V0ICopCnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkc1IChzdHJ1Y3QgdGltZXZh
>bCAqKQp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUE9MTF9IIDEKfCAjZGVm
>aW5lIERFQ0xfU1lTX0VSUkxJU1QgMQp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmlu
>ZSBIQVZFX1NUUkVSUk9SX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAvKiBlbmQgY29u
>ZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxyZWdl
>eC5oPgp8IHN0YXRpYyBjaGFyICpwYXR0ZXJuLCAqc3RyaW5nOwp8IG1haW4oKQp8IHsKfCAJaW50
>IHJjOwp8IAlyZWdleF90IHJlOwp8IAp8IAlwYXR0ZXJuID0gIl5BIjsKfCAKfCAJaWYocmVnY29t
>cCgmcmUsIHBhdHRlcm4sIDApKSB7CnwgCQlyZXR1cm4gLTE7CnwgCX0KfCAKfCAJc3RyaW5nID0g
>IkFMTCBNQVRDSCI7CnwgCnwgCXJjID0gcmVnZXhlYygmcmUsIHN0cmluZywgMCwgKHZvaWQqKTAs
>IDApOwp8IAp8IAlyZWdmcmVlKCZyZSk7CnwgCnwgCXJldHVybiByYzsKfCB9CmNvbmZpZ3VyZTox
>NjkyMTogcmVzdWx0OiBubwpjb25maWd1cmU6MTY5MjU6IGVycm9yOiBicm9rZW4gUE9TSVggcmVn
>ZXghCgojIyAtLS0tLS0tLS0tLS0tLS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMKIyMgLS0t
>LS0tLS0tLS0tLS0tLSAjIwoKYWNfY3ZfYnVpbGQ9c3BhcmMtc3VuLXNvbGFyaXMyLjEwCmFjX2N2
>X2J1aWxkX2FsaWFzPXNwYXJjLXN1bi1zb2xhcmlzMi4xMAphY19jdl9jX2NvbXBpbGVyX2dudT15
>ZXMKYWNfY3ZfZW52X0NDX3NldD0KYWNfY3ZfZW52X0NDX3ZhbHVlPQphY19jdl9lbnZfQ0ZMQUdT
>X3NldD0KYWNfY3ZfZW52X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0NQUEZMQUdTX3NldD0KYWNf
>Y3ZfZW52X0NQUEZMQUdTX3ZhbHVlPQphY19jdl9lbnZfQ1BQX3NldD0KYWNfY3ZfZW52X0NQUF92
>YWx1ZT0KYWNfY3ZfZW52X0xERkxBR1Nfc2V0PQphY19jdl9lbnZfTERGTEFHU192YWx1ZT0KYWNf
>Y3ZfZW52X2J1aWxkX2FsaWFzX3NldD0KYWNfY3ZfZW52X2J1aWxkX2FsaWFzX3ZhbHVlPQphY19j
>dl9lbnZfaG9zdF9hbGlhc19zZXQ9CmFjX2N2X2Vudl9ob3N0X2FsaWFzX3ZhbHVlPQphY19jdl9l
>bnZfdGFyZ2V0X2FsaWFzX3NldD0KYWNfY3ZfZW52X3RhcmdldF9hbGlhc192YWx1ZT0KYWNfY3Zf
>ZXhlZXh0PQphY19jdl9mdW5jX2Rsb3Blbj15ZXMKYWNfY3ZfZnVuY19wb2xsPXllcwphY19jdl9m
>dW5jX3NlbGVjdD15ZXMKYWNfY3ZfZnVuY19zZWxlY3RfYXJncz0naW50LGZkX3NldCAqLHN0cnVj
>dCB0aW1ldmFsIConCmFjX2N2X2Z1bmNfc2hsX2xvYWQ9bm8KYWNfY3ZfZnVuY19zaWdhY3Rpb249
>eWVzCmFjX2N2X2Z1bmNfc2lnc2V0PXllcwphY19jdl9mdW5jX3NvY2tldD1ubwphY19jdl9mdW5j
>X3N0cmVycm9yPXllcwphY19jdl9mdW5jX3N0cmVycm9yX3I9eWVzCmFjX2N2X2hlYWRlcl9hcnBh
>X2luZXRfaD15ZXMKYWNfY3ZfaGVhZGVyX2FycGFfbmFtZXNlcl9oPXllcwphY19jdl9oZWFkZXJf
>YXNzZXJ0X2g9eWVzCmFjX2N2X2hlYWRlcl9iaXRzX3R5cGVzX2g9bm8KYWNfY3ZfaGVhZGVyX2Nv
>bmlvX2g9bm8KYWNfY3ZfaGVhZGVyX2NyeXB0X2g9eWVzCmFjX2N2X2hlYWRlcl9kaXJlY3RfaD1u
>bwphY19jdl9oZWFkZXJfZGlyZW50X2RpcmVudF9oPXllcwphY19jdl9oZWFkZXJfZGxmY25faD15
>ZXMKYWNfY3ZfaGVhZGVyX2Vycm5vX2g9eWVzCmFjX2N2X2hlYWRlcl9mY250bF9oPXllcwphY19j
>dl9oZWFkZXJfZmlsaW9faD1ubwphY19jdl9oZWFkZXJfZ2V0b3B0X2g9eWVzCmFjX2N2X2hlYWRl
>cl9ncnBfaD15ZXMKYWNfY3ZfaGVhZGVyX2ludHR5cGVzX2g9eWVzCmFjX2N2X2hlYWRlcl9pb19o
>PW5vCmFjX2N2X2hlYWRlcl9saWJ1dGlsX2g9bm8KYWNfY3ZfaGVhZGVyX2xpbWl0c19oPXllcwph
>Y19jdl9oZWFkZXJfbG9jYWxlX2g9eWVzCmFjX2N2X2hlYWRlcl9tYWxsb2NfaD15ZXMKYWNfY3Zf
>aGVhZGVyX21lbW9yeV9oPXllcwphY19jdl9oZWFkZXJfbmV0aW5ldF90Y3BfaD15ZXMKYWNfY3Zf
>aGVhZGVyX3BvbGxfaD15ZXMKYWNfY3ZfaGVhZGVyX3Byb2Nlc3NfaD1ubwphY19jdl9oZWFkZXJf
>cHNhcF9oPW5vCmFjX2N2X2hlYWRlcl9wd2RfaD15ZXMKYWNfY3ZfaGVhZGVyX3JlZ2V4X2g9eWVz
>CmFjX2N2X2hlYWRlcl9yZXNvbHZfaD15ZXMKYWNfY3ZfaGVhZGVyX3NndHR5X2g9eWVzCmFjX2N2
>X2hlYWRlcl9zaGFkb3dfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGM9ZGlzYWJsZQphY19jdl9oZWFk
>ZXJfc3RkZGVmX2g9eWVzCmFjX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0
>ZGxpYl9oPXllcwphY19jdl9oZWFkZXJfc3RyaW5nX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdz
>X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfZXBvbGxfaD1ubwphY19jdl9oZWFkZXJfc3lzX2Vycm5v
>X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfZmlsZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX2ZpbGlv
>X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfaW9jdGxfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19wYXJh
>bV9oPXllcwphY19jdl9oZWFkZXJfc3lzX3Jlc291cmNlX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNf
>c2VsZWN0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc29ja2V0X2g9eWVzCmFjX2N2X2hlYWRlcl9z
>eXNfc3RhdF9oPXllcwphY19jdl9oZWFkZXJfc3lzX3N5c2xvZ19oPXllcwphY19jdl9oZWFkZXJf
>c3lzX3RpbWVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c190eXBlc19oPXllcwphY19jdl9oZWFkZXJf
>c3lzX3VjcmVkX2g9bm8KYWNfY3ZfaGVhZGVyX3N5c191aW9faD15ZXMKYWNfY3ZfaGVhZGVyX3N5
>c193YWl0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNleGl0c19oPXllcwphY19jdl9oZWFkZXJfc3lz
>bG9nX2g9eWVzCmFjX2N2X2hlYWRlcl90ZXJtaW9zX2g9eWVzCmFjX2N2X2hlYWRlcl91bmlzdGRf
>aD15ZXMKYWNfY3ZfaGVhZGVyX3V0aW1lX2g9eWVzCmFjX2N2X2hvc3Q9c3BhcmMtc3VuLXNvbGFy
>aXMyLjEwCmFjX2N2X2hvc3RfYWxpYXM9c3BhcmMtc3VuLXNvbGFyaXMyLjEwCmFjX2N2X2xpYl9i
>ZV9iZV9hcHA9bm8KYWNfY3ZfbGliX2RsZF9zaGxfbG9hZD1ubwphY19jdl9saWJfZ2VuX21haW49
>eWVzCmFjX2N2X2xpYl9pbmV0X3NvY2tldD1ubwphY19jdl9saWJfbmV0X21haW49bm8KYWNfY3Zf
>bGliX25zbF9tYWluPXllcwphY19jdl9saWJfbnNsX3NfbWFpbj1ubwphY19jdl9saWJfc19hZm9w
>ZW49bm8KYWNfY3ZfbGliX3NvY2tldF9tYWluPXllcwphY19jdl9vYmpleHQ9bwphY19jdl9wcm9n
>X0FSPWFyCmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJvZ19DQz1jYwphY19jdl9wcm9nX0NQ
>UD0nY2MgLUUnCmFjX2N2X3Byb2dfYWNfY3RfUkFOTElCPXJhbmxpYgphY19jdl9wcm9nX2FjX2N0
>X1NUUklQPXN0cmlwCmFjX2N2X3Byb2dfY2NfZz15ZXMKYWNfY3ZfcHJvZ19jY19zdGRjPQphY19j
>dl9wcm9nX2VncmVwPWVncmVwCmFjX2N2X3Byb2dfbWFrZV9tYWtlX3NldD15ZXMKYWNfY3Zfc2Vh
>cmNoX29wZW5kaXI9J25vbmUgcmVxdWlyZWQnCmFjX2N2X3NlYXJjaF9yZWdmcmVlPSdub25lIHJl
>cXVpcmVkJwphY19jdl9zaHRvb2w9YnVpbGQvc2h0b29sCmFjX2N2X3N5c190aW9jZ3dpbnN6X2lu
>X3Rlcm1pb3NfaD15ZXMKYWNfY3ZfdGFyZ2V0PXNwYXJjLXN1bi1zb2xhcmlzMi4xMAphY19jdl90
>YXJnZXRfYWxpYXM9c3BhcmMtc3VuLXNvbGFyaXMyLjEwCmFtX2N2X0NDX2RlcGVuZGVuY2llc19j
>b21waWxlcl90eXBlPW5vbmUKbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKbHRf
>Y3ZfZGxvcGVuPWRsb3BlbgpsdF9jdl9kbG9wZW5fbGlicz0KbHRfY3ZfZGxvcGVuX3NlbGY9eWVz
>Cmx0X2N2X2Rsb3Blbl9zZWxmX3N0YXRpYz15ZXMKbHRfY3ZfZmlsZV9tYWdpY19jbWQ9JyRNQUdJ
>Q19DTUQnCmx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPQpsdF9jdl9sZF9yZWxvYWRfZmxhZz0t
>cgpsdF9jdl9vYmpkaXI9LmxpYnMKbHRfY3ZfcGF0aF9MRD0vdXNyL2Njcy9iaW4vbGQKbHRfY3Zf
>cGF0aF9OTT0nL3Vzci9jY3MvYmluL25tIC1wJwpsdF9jdl9wYXRoX1NFRD0vYmluL3NlZApsdF9j
>dl9wcm9nX2NvbXBpbGVyX2Nfbz15ZXMKbHRfY3ZfcHJvZ19jb21waWxlcl9ydHRpX2V4Y2VwdGlv
>bnM9bm8KbHRfY3ZfcHJvZ19nbnVfbGQ9bm8KbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZT0n
>c2VkIC1uIC1lICdcJydzL14uKlsgCV1cKFtCRFJUXVtCRFJUXSpcKVsgCV1bIAldKlwoW19BLVph
>LXpdW19BLVphLXowLTldKlwpJC9cMSBcMiBcMi9wJ1wnJycKbHRfY3Zfc3lzX2dsb2JhbF9zeW1i
>b2xfdG9fY19uYW1lX2FkZHJlc3M9J3NlZCAtbiAtZSAnXCcncy9eOiBcKFteIF0qXCkgJC8gIHtc
>IlwxXCIsIChsdF9wdHIpIDB9LC9wJ1wnJyAtZSAnXCcncy9eW0JDREVHUlNUXSBcKFteIF0qXCkg
>XChbXiBdKlwpJC8gIHsiXDIiLCAobHRfcHRyKSBcJlwyfSwvcCdcJycnCmx0X2N2X3N5c19nbG9i
>YWxfc3ltYm9sX3RvX2NkZWNsPSdzZWQgLW4gLWUgJ1wnJ3MvXi4gLiogXCguKlwpJC9leHRlcm4g
>aW50IFwxOy9wJ1wnJycKbHRfY3Zfc3lzX21heF9jbWRfbGVuPTI2MjE0NApsdF9sdF9jdl9wcm9n
>X2NvbXBpbGVyX2Nfbz0nInllcyInCmx0X2x0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGU9JyJz
>ZWQgLW4gLWUgJ1wnJ3MvXi4qWyAJXVxcKFtCRFJUXVtCRFJUXSpcXClbIAldWyAJXSpcXChbX0Et
>WmEtel1bX0EtWmEtejAtOV0qXFwpXCQvXFwxIFxcMiBcXDIvcCdcJyciJwpsdF9sdF9jdl9zeXNf
>Z2xvYmFsX3N5bWJvbF90b19jX25hbWVfYWRkcmVzcz0nInNlZCAtbiAtZSAnXCcncy9eOiBcXChb
>XiBdKlxcKSBcJC8gIHtcXFwiXFwxXFxcIiwgKGx0X3B0cikgMH0sL3AnXCcnIC1lICdcJydzL15b
>QkNERUdSU1RdIFxcKFteIF0qXFwpIFxcKFteIF0qXFwpXCQvICB7XCJcXDJcIiwgKGx0X3B0cikg
>XFwmXFwyfSwvcCdcJyciJwpsdF9sdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbD0nInNl
>ZCAtbiAtZSAnXCcncy9eLiAuKiBcXCguKlxcKVwkL2V4dGVybiBpbnQgXFwxOy9wJ1wnJyInCm9s
>X2N2X2NfcG9zaXhfcmVnZXg9bm8Kb2xfY3ZfY3BwX2ViY2RpYz1ubwpvbF9jdl9kY2xfc3lzX2Vy
>cmxpc3Q9bm8Kb2xfY3ZfZnVuY19zdHJlcnJvcl9yPW5vCm9sX2N2X2hhdmVfc3lzX2Vycmxpc3Q9
>bm8Kb2xfY3ZfaGVhZGVyX3N0ZGM9eWVzCm9sX2N2X21rZGVwPS1NCm9sX2N2X25vbnBvc2l4X3N0
>cmVycm9yX3I9bm8KCiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIE91dHB1dCB2YXJpYWJsZXMu
>ICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCgpBQ0xPQ0FMPScke1NIRUxMfSAvb3B0L1NvdXJj
>ZS9vcGVubGRhcC0yLjMuMjcvYnVpbGQvbWlzc2luZyAtLXJ1biBhY2xvY2FsLTEuOScKQU1ERVBC
>QUNLU0xBU0g9J1wnCkFNREVQX0ZBTFNFPScjJwpBTURFUF9UUlVFPScnCkFNVEFSPScke1NIRUxM
>fSAvb3B0L1NvdXJjZS9vcGVubGRhcC0yLjMuMjcvYnVpbGQvbWlzc2luZyAtLXJ1biB0YXInCkFS
>PSdhcicKQVM9J2FzJwpBVVRIX0xJQlM9JycKQVVUT0NPTkY9JyR7U0hFTEx9IC9vcHQvU291cmNl
>L29wZW5sZGFwLTIuMy4yNy9idWlsZC9taXNzaW5nIC0tcnVuIGF1dG9jb25mJwpBVVRPSEVBREVS
>PScke1NIRUxMfSAvb3B0L1NvdXJjZS9vcGVubGRhcC0yLjMuMjcvYnVpbGQvbWlzc2luZyAtLXJ1
>biBhdXRvaGVhZGVyJwpBVVRPTUFLRT0nJHtTSEVMTH0gL29wdC9Tb3VyY2Uvb3BlbmxkYXAtMi4z
>LjI3L2J1aWxkL21pc3NpbmcgLS1ydW4gYXV0b21ha2UtMS45JwpBV0s9J2dhd2snCkJVSUxEX0FD
>Q0VTU0xPRz0nbm8nCkJVSUxEX0FVRElUTE9HPSdubycKQlVJTERfQkRCPSdubycKQlVJTERfREVO
>WU9QPSdubycKQlVJTERfRE5TU1JWPSdubycKQlVJTERfRFlOR1JPVVA9J25vJwpCVUlMRF9EWU5M
>SVNUPSdubycKQlVJTERfSERCPSdubycKQlVJTERfTEFTVE1PRD0nbm8nCkJVSUxEX0xEQVA9J25v
>JwpCVUlMRF9MREJNPSdubycKQlVJTERfTElCU19EWU5BTUlDPScnCkJVSUxEX01FVEE9J25vJwpC
>VUlMRF9NT05JVE9SPSdubycKQlVJTERfTlVMTD0nbm8nCkJVSUxEX1BBU1NXRD0nbm8nCkJVSUxE
>X1BFUkw9J25vJwpCVUlMRF9QUE9MSUNZPSdubycKQlVJTERfUFJPWFlDQUNIRT0nbm8nCkJVSUxE
>X1JFRklOVD0nbm8nCkJVSUxEX1JFTEFZPSdubycKQlVJTERfUkVUQ09ERT0nbm8nCkJVSUxEX1JX
>TT0nbm8nCkJVSUxEX1NIRUxMPSdubycKQlVJTERfU0xBUEQ9J25vJwpCVUlMRF9TTEFQST0nbm8n
>CkJVSUxEX1NMVVJQRD0nbm8nCkJVSUxEX1NRTD0nbm8nCkJVSUxEX1NZTkNQUk9WPSdubycKQlVJ
>TERfVEhSRUFEPSdubycKQlVJTERfVFJBTlNMVUNFTlQ9J25vJwpCVUlMRF9VTklRVUU9J25vJwpC
>VUlMRF9WQUxTT1JUPSdubycKQ0M9J2NjJwpDQ0RFUE1PREU9J2RlcG1vZGU9bm9uZScKQ0ZMQUdT
>PSctZyAtTzInCkNQUD0nY2MgLUUnCkNQUEZMQUdTPScnCkNZR1BBVEhfVz0nZWNobycKREVGUz0n
>JwpERVBESVI9Jy5kZXBzJwpETExUT09MPSdkbGx0b29sJwpFQ0hPPSdlY2hvJwpFQ0hPX0M9JycK
>RUNIT19OPSctbicKRUNIT19UPScnCkVHUkVQPSdlZ3JlcCcKRVhFRVhUPScnCklOU1RBTExfREFU
>QT0nJHtJTlNUQUxMfSAtbSA2NDQnCklOU1RBTExfUFJPR1JBTT0nJHtJTlNUQUxMfScKSU5TVEFM
>TF9TQ1JJUFQ9JyR7SU5TVEFMTH0nCklOU1RBTExfU1RSSVBfUFJPR1JBTT0nJHtTSEVMTH0gJChp
>bnN0YWxsX3NoKSAtYyAtcycKS1JCNF9MSUJTPScnCktSQjVfTElCUz0nJwpMREFQX0xJQlM9JycK
>TERCTV9MSUJTPScnCkxERkxBR1M9JycKTElCT0JKUz0nJwpMSUJTPSctbGdlbiAtbG5zbCAtbHNv
>Y2tldCAnCkxJQlNMQVBJPScnCkxJQlNMQVBJVE9PTFM9JycKTElCU1JDUz0nJwpMSUJUT09MPSck
>KFNIRUxMKSAkKHRvcF9idWlsZGRpcikvbGlidG9vbCcKTE5fUz0nbG4gLXMnCkxUSFJFQURfTElC
>Uz0nJwpMVExJQk9CSlM9JycKTFRTVEFUSUM9JycKTFVUSUxfTElCUz0nJwpNQUtFSU5GTz0nJHtT
>SEVMTH0gL29wdC9Tb3VyY2Uvb3BlbmxkYXAtMi4zLjI3L2J1aWxkL21pc3NpbmcgLS1ydW4gbWFr
>ZWluZm8nCk1PRFVMRVNfTElCUz0nJwpNT0RfUEVSTF9MREZMQUdTPScnCk9CSkRVTVA9J29iamR1
>bXAnCk9CSkVYVD0nbycKT0xfTUtERVA9J2NjJwpPTF9NS0RFUF9GTEFHUz0nLU0nCk9QRU5MREFQ
>X0xJQlJFTEVBU0U9JzIuMycKT1BFTkxEQVBfTElCVkVSU0lPTj0nMjoxNToyJwpPUEVOTERBUF9S
>RUxFQVNFX0RBVEU9JzIwMDYvMDgvMTknClBBQ0tBR0U9J09wZW5MREFQJwpQQUNLQUdFX0JVR1JF
>UE9SVD0nJwpQQUNLQUdFX05BTUU9JycKUEFDS0FHRV9TVFJJTkc9JycKUEFDS0FHRV9UQVJOQU1F
>PScnClBBQ0tBR0VfVkVSU0lPTj0nJwpQQVRIX1NFUEFSQVRPUj0nOicKUEVSTEJJTj0nJwpQRVJM
>X0NQUEZMQUdTPScnClBMQVQ9JycKUkFOTElCPSdyYW5saWInClNBU0xfTElCUz0nJwpTRVRfTUFL
>RT0nJwpTSEVMTD0nL2Jpbi9iYXNoJwpTTEFQRF9EWU5BTUlDX0JBQ0tFTkRTPScnClNMQVBEX0RZ
>TkFNSUNfT1ZFUkxBWVM9JycKU0xBUERfR01QX0xJQlM9JycKU0xBUERfTElCUz0nJwpTTEFQRF9N
>T0RVTEVTX0NQUEZMQUdTPScnClNMQVBEX01PRFVMRVNfTERGTEFHUz0nJwpTTEFQRF9OT19TVEFU
>SUM9JycKU0xBUERfUEVSTF9MREZMQUdTPScnClNMQVBEX1NMQVBJX0RFUEVORD0nJwpTTEFQRF9T
>TFBfTElCUz0nJwpTTEFQRF9TUUxfSU5DTFVERVM9JycKU0xBUERfU1FMX0xERkxBR1M9JycKU0xB
>UERfU1FMX0xJQlM9JycKU0xBUERfU1RBVElDX0JBQ0tFTkRTPSdiYWNrLWxkaWYnClNMQVBEX1NU
>QVRJQ19PVkVSTEFZUz0nJwpTTEFQSV9MSUJTPScnClNMVVJQRF9MSUJTPScnClNUUklQPSdzdHJp
>cCcKVExTX0xJQlM9JycKVkVSU0lPTj0nMi4zLjI3JwpXSVRIX0FDSV9FTkFCTEVEPScnCldJVEhf
>TU9EVUxFU19FTkFCTEVEPSdubycKV0lUSF9TQVNMPScnCldJVEhfVExTPScnCldSQVBfTElCUz0n
>JwphY19jdF9BUj0nJwphY19jdF9BUz0nJwphY19jdF9DQz0nJwphY19jdF9ETExUT09MPScnCmFj
>X2N0X09CSkRVTVA9JycKYWNfY3RfUkFOTElCPSdyYW5saWInCmFjX2N0X1NUUklQPSdzdHJpcCcK
>YW1fX2Zhc3RkZXBDQ19GQUxTRT0nJwphbV9fZmFzdGRlcENDX1RSVUU9JyMnCmFtX19pbmNsdWRl
>PSdpbmNsdWRlJwphbV9fbGVhZGluZ19kb3Q9Jy4nCmFtX19xdW90ZT0nJwphbV9fdGFyPScke0FN
>VEFSfSBjaG9mIC0gIiQkdGFyZGlyIicKYW1fX3VudGFyPScke0FNVEFSfSB4ZiAtJwpiaW5kaXI9
>JyR7ZXhlY19wcmVmaXh9L2JpbicKYnVpbGQ9J3NwYXJjLXN1bi1zb2xhcmlzMi4xMCcKYnVpbGRf
>YWxpYXM9JycKYnVpbGRfY3B1PSdzcGFyYycKYnVpbGRfb3M9J3NvbGFyaXMyLjEwJwpidWlsZF92
>ZW5kb3I9J3N1bicKZGF0YWRpcj0nJHtwcmVmaXh9L3NoYXJlJwpleGVjX3ByZWZpeD0nTk9ORScK
>aG9zdD0nc3BhcmMtc3VuLXNvbGFyaXMyLjEwJwpob3N0X2FsaWFzPScnCmhvc3RfY3B1PSdzcGFy
>YycKaG9zdF9vcz0nc29sYXJpczIuMTAnCmhvc3RfdmVuZG9yPSdzdW4nCmluY2x1ZGVkaXI9JyR7
>cHJlZml4fS9pbmNsdWRlJwppbmZvZGlyPScke3ByZWZpeH0vaW5mbycKaW5zdGFsbF9zaD0nL29w
>dC9Tb3VyY2Uvb3BlbmxkYXAtMi4zLjI3L2J1aWxkL2luc3RhbGwtc2gnCmxkYXBfc3ViZGlyPScv
>b3BlbmxkYXAnCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vbGliJwpsaWJleGVjZGlyPScke2V4ZWNf
>cHJlZml4fS9saWJleGVjJwpsb2NhbHN0YXRlZGlyPScke3ByZWZpeH0vdmFyJwptYW5kaXI9JyR7
>cHJlZml4fS9tYW4nCm1rZGlyX3A9JyQoaW5zdGFsbF9zaCkgLWQnCm9sZGluY2x1ZGVkaXI9Jy91
>c3IvaW5jbHVkZScKcHJlZml4PScvdXNyL2xvY2FsJwpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPSdz
>LHgseCwnCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCnNoYXJlZHN0YXRlZGlyPScke3By
>ZWZpeH0vY29tJwpzeXNjb25mZGlyPScke3ByZWZpeH0vZXRjJwp0YXJnZXQ9J3NwYXJjLXN1bi1z
>b2xhcmlzMi4xMCcKdGFyZ2V0X2FsaWFzPScnCnRhcmdldF9jcHU9J3NwYXJjJwp0YXJnZXRfb3M9
>J3NvbGFyaXMyLjEwJwp0YXJnZXRfdmVuZG9yPSdzdW4nCnRvcF9idWlsZGRpcj0nL29wdC9Tb3Vy
>Y2Uvb3BlbmxkYXAtMi4zLjI3JwoKIyMgLS0tLS0tLS0tLS0gIyMKIyMgY29uZmRlZnMuaC4gIyMK
>IyMgLS0tLS0tLS0tLS0gIyMKCiNkZWZpbmUgREVDTF9TWVNfRVJSTElTVCAxCiNkZWZpbmUgRVhF
>RVhUICIiCiNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCiNkZWZpbmUgSEFWRV9BUlBBX05BTUVT
>RVJfSCAxCiNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCiNkZWZpbmUgSEFWRV9DUllQVF9IIDEKI2Rl
>ZmluZSBIQVZFX0RJUkVOVF9IIDEKI2RlZmluZSBIQVZFX0RMRkNOX0ggMQojZGVmaW5lIEhBVkVf
>RVJSTk9fSCAxCiNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEK
>I2RlZmluZSBIQVZFX0dSUF9IIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhB
>VkVfTElCR0VOIDEKI2RlZmluZSBIQVZFX0xJQk5TTCAxCiNkZWZpbmUgSEFWRV9MSUJTT0NLRVQg
>MQojZGVmaW5lIEhBVkVfTElNSVRTX0ggMQojZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQojZGVmaW5l
>IEhBVkVfTUFMTE9DX0ggMQojZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQojZGVmaW5lIEhBVkVfTUVN
>T1JZX0ggMQojZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKI2RlZmluZSBIQVZFX05FVElORVRfVENQ
>X0ggMQojZGVmaW5lIEhBVkVfUE9MTCAxCiNkZWZpbmUgSEFWRV9QT0xMX0ggMQojZGVmaW5lIEhB
>VkVfUFdEX0ggMQojZGVmaW5lIEhBVkVfUkVHRVhfSCAxCiNkZWZpbmUgSEFWRV9SRVNPTFZfSCAx
>CiNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKI2RlZmluZSBIQVZFX1NIQURPV19IIDEKI2RlZmluZSBI
>QVZFX1NJR0FDVElPTiAxCiNkZWZpbmUgSEFWRV9TSUdTRVQgMQojZGVmaW5lIEhBVkVfU1REREVG
>X0ggMQojZGVmaW5lIEhBVkVfU1RESU5UX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0ggMQojZGVm
>aW5lIEhBVkVfU1RSRVJST1IgMQojZGVmaW5lIEhBVkVfU1RSRVJST1JfUiAxCiNkZWZpbmUgSEFW
>RV9TVFJJTkdTX0ggMQojZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKI2RlZmluZSBIQVZFX1NUUklO
>R19IIDEKI2RlZmluZSBIQVZFX1NUUklOR19IIDEKI2RlZmluZSBIQVZFX1NZU0VYSVRTX0ggMQoj
>ZGVmaW5lIEhBVkVfU1lTTE9HX0ggMQojZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQojZGVmaW5l
>IEhBVkVfU1lTX0ZJTEVfSCAxCiNkZWZpbmUgSEFWRV9TWVNfRklMSU9fSCAxCiNkZWZpbmUgSEFW
>RV9TWVNfSU9DVExfSCAxCiNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCiNkZWZpbmUgSEFWRV9T
>WVNfUkVTT1VSQ0VfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQojZGVmaW5lIEhBVkVf
>U1lTX1NFTEVDVF9IIDEKI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCiNkZWZpbmUgSEFWRV9T
>WVNfU09DS0VUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCiNkZWZpbmUgSEFWRV9TWVNf
>U1RBVF9IIDEKI2RlZmluZSBIQVZFX1NZU19TWVNMT0dfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVElN
>RV9IIDEKI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKI2RlZmluZSBIQVZFX1NZU19UWVBFU19I
>IDEKI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCiNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKI2Rl
>ZmluZSBIQVZFX1RFUk1JT1NfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERfSCAxCiNkZWZpbmUgSEFW
>RV9VTklTVERfSCAxCiNkZWZpbmUgSEFWRV9VVElNRV9IIDEKI2RlZmluZSBMREFQX1ZFTkRPUl9W
>RVJTSU9OIDIwMzI3CiNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCiNkZWZpbmUg
>TERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCiNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9Q
>QVRDSCAyNwojZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgojZGVmaW5lIE9QRU5M
>REFQX1ZFUlNJT04gIjIuMy4yNyIKI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgojZGVmaW5l
>IFBBQ0tBR0VfTkFNRSAiIgojZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCiNkZWZpbmUgUEFDS0FH
>RV9UQVJOQU1FICIiCiNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCiNkZWZpbmUgU0VMRUNUX1RZ
>UEVfQVJHMSBpbnQKI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcyMzQgKGZkX3NldCAqKQojZGVmaW5l
>IFNFTEVDVF9UWVBFX0FSRzUgKHN0cnVjdCB0aW1ldmFsICopCiNkZWZpbmUgU1REQ19IRUFERVJT
>IDEKI2RlZmluZSBTVERDX0hFQURFUlMgMQoKY29uZmlndXJlOiBleGl0IDEK
>--=====================_272409043==_--
17 years, 1 month
Re: (ITS#4706) regex.h on Solaris 10 sparc
by stew.redfield@gmail.com
--=====================_272409043==_
Content-Type: text/plain; charset="us-ascii"
Last config.log is attached.
Other regex.h files on box:
/usr/include/regex.h (Solaris 10 Base)
/usr/include/unicode/regex.h (Solaris 10 Base)
/usr/local/include/regex.h (Spencer's 11101byte standard one)
Thanks,
Stew
On 10/11/06, Kurt D. Zeilenga <Kurt(a)openldap.org> wrote:
>Actually, I only silenced the regex.h warning. I cannot
>tell from your message why the regex compat check failed.
>Please provide relevant details from config.log.
>
>At 11:18 PM 10/10/2006, stew.redfield(a)gmail.com wrote:
>>Full_Name: Stew Redfield
>>Version: 2.3.27
>>OS: Solaris 10 sparc
>>URL: ftp://ftp.openldap.org/incoming/
>>Submission from: (NULL) (65.219.72.58)
>>
>>
>>/configure --prefix=/usr/local
>>--snip--
>>checking regex.h presence... yes
>>configure: WARNING: regex.h: present but cannot be compiled
>>configure: WARNING: regex.h: check for missing prerequisite headers?
>>configure: WARNING: regex.h: see the Autoconf documentation
>>configure: WARNING: regex.h: section "Present But Cannot Be Compiled"
>>configure: WARNING: regex.h: proceeding with the preprocessor's result
>>configure: WARNING: regex.h: in the future, the compiler will take precedence
>>configure: WARNING: ## --------------------------------------------- ##
>>configure: WARNING: ## Report this to <http://www.openldap.org/its/> ##
>>configure: WARNING: ## --------------------------------------------- ##
>>checking for regex.h... yes
>>checking for library containing regfree... none required
>>checking for compatible POSIX regex... no
>>configure: error: broken POSIX regex!
>
--
Stew Redfield, CISA CISSP
Stew.Redfield(a)gmail.com
Reason can be fought with reason.
How are you going to fight the unreasonable?
-A. Rand
Content-Type: application/octet-stream;
name=openldap.2.3.27.sol10.config.log
X-Attachment-Id: f_et5p2n36
Content-Disposition: attachment; filename="openldap.2.3.27.sol10.config.log"
--=====================_272409043==_
Content-Type: application/octet-stream; name="openldap.2.3.27.sol10.config.log"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="openldap.2.3.27.sol10.config.log"
VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp
bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz
IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IGNvbmZpZ3VyZSwgd2hpY2ggd2FzCmdlbmVy
YXRlZCBieSBHTlUgQXV0b2NvbmYgMi41OS4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcwoK
ICAkIC4vY29uZmlndXJlIC0tcHJlZml4PS91c3IvbG9jYWwgLS13aXRoLXRscwoKIyMgLS0tLS0t
LS0tICMjCiMjIFBsYXRmb3JtLiAjIwojIyAtLS0tLS0tLS0gIyMKCmhvc3RuYW1lID0gbnN1cGRw
MDEKdW5hbWUgLW0gPSBzdW40dQp1bmFtZSAtciA9IDUuMTAKdW5hbWUgLXMgPSBTdW5PUwp1bmFt
ZSAtdiA9IEdlbmVyaWNfMTE4ODMzLTI0CgovdXNyL2Jpbi91bmFtZSAtcCA9IHNwYXJjCi9iaW4v
dW5hbWUgLVggICAgID0gU3lzdGVtID0gU3VuT1MKTm9kZSA9IG5zdXBkcDAxClJlbGVhc2UgPSA1
LjEwCktlcm5lbElEID0gR2VuZXJpY18xMTg4MzMtMjQKTWFjaGluZSA9IHN1bjR1CkJ1c1R5cGUg
PSA8dW5rbm93bj4KU2VyaWFsID0gPHVua25vd24+ClVzZXJzID0gPHVua25vd24+Ck9FTSMgPSAw
Ck9yaWdpbiMgPSAxCk51bUNQVSA9IDIKCi9iaW4vYXJjaCAgICAgICAgICAgICAgPSBzdW40Ci91
c3IvYmluL2FyY2ggLWsgICAgICAgPSBzdW40dQovdXNyL2NvbnZleC9nZXRzeXNpbmZvID0gdW5r
bm93bgpob3N0aW5mbyAgICAgICAgICAgICAgID0gdW5rbm93bgovYmluL21hY2hpbmUgICAgICAg
ICAgID0gdW5rbm93bgovdXNyL2Jpbi9vc2xldmVsICAgICAgID0gdW5rbm93bgovYmluL3VuaXZl
cnNlICAgICAgICAgID0gdW5rbm93bgoKUEFUSDogL3NiaW4KUEFUSDogL3Vzci9zYmluClBBVEg6
IC9iaW4KUEFUSDogL3Vzci9iaW4KUEFUSDogL3Vzci9sb2NhbC9zYmluClBBVEg6IC91c3IvbG9j
YWwvYmluClBBVEg6IC9vcHQyMDAvWHRlcm5hbHMvYmluClBBVEg6IC91c3IvdWNiClBBVEg6IC91
c3IvY2NzL2JpbgpQQVRIOiAvb3B0MjAwL215c3FsLzUuMC4xOC9iaW4KCgojIyAtLS0tLS0tLS0t
LSAjIwojIyBDb3JlIHRlc3RzLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoKY29uZmlndXJlOjE2MTU6
IGNoZWNraW5nIGJ1aWxkIHN5c3RlbSB0eXBlCmNvbmZpZ3VyZToxNjMzOiByZXN1bHQ6IHNwYXJj
LXN1bi1zb2xhcmlzMi4xMApjb25maWd1cmU6MTY0MTogY2hlY2tpbmcgaG9zdCBzeXN0ZW0gdHlw
ZQpjb25maWd1cmU6MTY1NTogcmVzdWx0OiBzcGFyYy1zdW4tc29sYXJpczIuMTAKY29uZmlndXJl
OjE2NjM6IGNoZWNraW5nIHRhcmdldCBzeXN0ZW0gdHlwZQpjb25maWd1cmU6MTY3NzogcmVzdWx0
OiBzcGFyYy1zdW4tc29sYXJpczIuMTAKY29uZmlndXJlOjE3MDY6IGNoZWNraW5nIGZvciBhIEJT
RC1jb21wYXRpYmxlIGluc3RhbGwKY29uZmlndXJlOjE3NjE6IHJlc3VsdDogYnVpbGQvc2h0b29s
IGluc3RhbGwgLWMKY29uZmlndXJlOjE3NzI6IGNoZWNraW5nIHdoZXRoZXIgYnVpbGQgZW52aXJv
bm1lbnQgaXMgc2FuZQpjb25maWd1cmU6MTgxNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE4ODA6
IGNoZWNraW5nIGZvciBnYXdrCmNvbmZpZ3VyZToxODk2OiBmb3VuZCAvdXNyL2xvY2FsL2Jpbi9n
YXdrCmNvbmZpZ3VyZToxOTA2OiByZXN1bHQ6IGdhd2sKY29uZmlndXJlOjE5MTY6IGNoZWNraW5n
IHdoZXRoZXIgbWFrZSBzZXRzICQoTUFLRSkKY29uZmlndXJlOjE5MzY6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToyMTQ1OiBjaGVja2luZyBjb25maWd1cmUgYXJndW1lbnRzCmNvbmZpZ3VyZTozODQz
OiByZXN1bHQ6IGRvbmUKY29uZmlndXJlOjQwMDk6IGNoZWNraW5nIGZvciBjYwpjb25maWd1cmU6
NDAyNTogZm91bmQgL3Vzci9sb2NhbC9iaW4vY2MKY29uZmlndXJlOjQwMzU6IHJlc3VsdDogY2MK
Y29uZmlndXJlOjQwNTk6IGNoZWNraW5nIGZvciBhcgpjb25maWd1cmU6NDA3NTogZm91bmQgL3Vz
ci9jY3MvYmluL2FyCmNvbmZpZ3VyZTo0MDg1OiByZXN1bHQ6IGFyCmNvbmZpZ3VyZTo0MTQ0OiBj
aGVja2luZyBmb3Igc3R5bGUgb2YgaW5jbHVkZSB1c2VkIGJ5IG1ha2UKY29uZmlndXJlOjQxNzI6
IHJlc3VsdDogR05VCmNvbmZpZ3VyZTo0NTEzOiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZXJz
aW9uCmNvbmZpZ3VyZTo0NTE2OiBjYyAtLXZlcnNpb24gPC9kZXYvbnVsbCA+JjUKY2MgKEdDQykg
My4zLjIKQ29weXJpZ2h0IChDKSAyMDAzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpU
aGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlv
bnMuICBUaGVyZSBpcyBOTwp3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBv
ciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4KCmNvbmZpZ3VyZTo0NTE5OiAkPyA9
IDAKY29uZmlndXJlOjQ1MjE6IGNjIC12IDwvZGV2L251bGwgPiY1ClJlYWRpbmcgc3BlY3MgZnJv
bSAvdXNyL2xvY2FsL2xpYi9nY2MtbGliL3NwYXJjLXN1bi1zb2xhcmlzMi4xMC8zLjMuMi9zcGVj
cwpDb25maWd1cmVkIHdpdGg6IC4uL2NvbmZpZ3VyZSAtLXdpdGgtYXM9L3Vzci9jY3MvYmluL2Fz
IC0td2l0aC1sZD0vdXNyL2Njcy9iaW4vbGQgLS1kaXNhYmxlLW5scwpUaHJlYWQgbW9kZWw6IHBv
c2l4CmdjYyB2ZXJzaW9uIDMuMy4yCmNvbmZpZ3VyZTo0NTI0OiAkPyA9IDAKY29uZmlndXJlOjQ1
MjY6IGNjIC1WIDwvZGV2L251bGwgPiY1CmNjOiBgLVYnIG9wdGlvbiBtdXN0IGhhdmUgYXJndW1l
bnQKY29uZmlndXJlOjQ1Mjk6ICQ/ID0gMQpjb25maWd1cmU6NDU1MjogY2hlY2tpbmcgZm9yIEMg
Y29tcGlsZXIgZGVmYXVsdCBvdXRwdXQgZmlsZSBuYW1lCmNvbmZpZ3VyZTo0NTU1OiBjYyAgICBj
b25mdGVzdC5jICA+JjUKY29uZmlndXJlOjQ1NTg6ICQ/ID0gMApjb25maWd1cmU6NDYwNDogcmVz
dWx0OiBhLm91dApjb25maWd1cmU6NDYwOTogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxl
ciB3b3Jrcwpjb25maWd1cmU6NDYxNTogLi9hLm91dApjb25maWd1cmU6NDYxODogJD8gPSAwCmNv
bmZpZ3VyZTo0NjM1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDY0MjogY2hlY2tpbmcgd2hldGhl
ciB3ZSBhcmUgY3Jvc3MgY29tcGlsaW5nCmNvbmZpZ3VyZTo0NjQ0OiByZXN1bHQ6IG5vCmNvbmZp
Z3VyZTo0NjQ3OiBjaGVja2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzCmNvbmZpZ3VyZTo0
NjQ5OiBjYyAtbyBjb25mdGVzdCAgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjQ2NTI6ICQ/
ID0gMApjb25maWd1cmU6NDY3NzogcmVzdWx0OiAKY29uZmlndXJlOjQ2ODM6IGNoZWNraW5nIGZv
ciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzCmNvbmZpZ3VyZTo0NzA0OiBjYyAtYyAgIGNvbmZ0ZXN0
LmMgPiY1CmNvbmZpZ3VyZTo0NzA3OiAkPyA9IDAKY29uZmlndXJlOjQ3Mjk6IHJlc3VsdDogbwpj
b25maWd1cmU6NDczMzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNv
bXBpbGVyCmNvbmZpZ3VyZTo0NzU3OiBjYyAtYyAgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0
NzYzOiAkPyA9IDAKY29uZmlndXJlOjQ3Njc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29u
ZnRlc3QuZXJyCmNvbmZpZ3VyZTo0NzcwOiAkPyA9IDAKY29uZmlndXJlOjQ3NzM6IHRlc3QgLXMg
Y29uZnRlc3Qubwpjb25maWd1cmU6NDc3NjogJD8gPSAwCmNvbmZpZ3VyZTo0Nzg5OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6NDc5NTogY2hlY2tpbmcgd2hldGhlciBjYyBhY2NlcHRzIC1nCmNvbmZp
Z3VyZTo0ODE2OiBjYyAtYyAtZyAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ4MjI6ICQ/ID0g
MApjb25maWd1cmU6NDgyNjogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjQ4Mjk6ICQ/ID0gMApjb25maWd1cmU6NDgzMjogdGVzdCAtcyBjb25mdGVzdC5v
CmNvbmZpZ3VyZTo0ODM1OiAkPyA9IDAKY29uZmlndXJlOjQ4NDY6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZTo0ODYzOiBjaGVja2luZyBmb3IgY2Mgb3B0aW9uIHRvIGFjY2VwdCBBTlNJIEMKY29uZmln
dXJlOjQ5MzM6IGNjICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo0OTM5OiAk
PyA9IDAKY29uZmlndXJlOjQ5NDM6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3Qu
ZXJyCmNvbmZpZ3VyZTo0OTQ2OiAkPyA9IDAKY29uZmlndXJlOjQ5NDk6IHRlc3QgLXMgY29uZnRl
c3Qubwpjb25maWd1cmU6NDk1MjogJD8gPSAwCmNvbmZpZ3VyZTo0OTcwOiByZXN1bHQ6IG5vbmUg
bmVlZGVkCmNvbmZpZ3VyZTo0OTg4OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0
ZXN0LmM6MjogZXJyb3I6IHBhcnNlIGVycm9yIGJlZm9yZSAibWUiCmNvbmZpZ3VyZTo0OTk0OiAk
PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgI2lmbmRlZiBfX2NwbHVzcGx1
cwp8ICAgY2hva2UgbWUKfCAjZW5kaWYKY29uZmlndXJlOjUxMjk6IGNoZWNraW5nIGRlcGVuZGVu
Y3kgc3R5bGUgb2YgY2MKY29uZmlndXJlOjUyMTk6IHJlc3VsdDogbm9uZQpjb25maWd1cmU6NTIz
NjogY2hlY2tpbmcgZm9yIGEgc2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0CmNvbmZp
Z3VyZTo1MjkwOiByZXN1bHQ6IC9iaW4vc2VkCmNvbmZpZ3VyZTo1MjkzOiBjaGVja2luZyBmb3Ig
ZWdyZXAKY29uZmlndXJlOjUzMDM6IHJlc3VsdDogZWdyZXAKY29uZmlndXJlOjUzMTk6IGNoZWNr
aW5nIGZvciBsZCB1c2VkIGJ5IGNjCmNvbmZpZ3VyZTo1Mzg2OiByZXN1bHQ6IC91c3IvY2NzL2Jp
bi9sZApjb25maWd1cmU6NTM5NTogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL3Vzci9jY3MvYmlu
L2xkKSBpcyBHTlUgbGQKY29uZmlndXJlOjU0MTA6IHJlc3VsdDogbm8KY29uZmlndXJlOjU0MTU6
IGNoZWNraW5nIGZvciAvdXNyL2Njcy9iaW4vbGQgb3B0aW9uIHRvIHJlbG9hZCBvYmplY3QgZmls
ZXMKY29uZmlndXJlOjU0MjI6IHJlc3VsdDogLXIKY29uZmlndXJlOjU0NDA6IGNoZWNraW5nIGZv
ciBCU0QtY29tcGF0aWJsZSBubQpjb25maWd1cmU6NTQ4MjogcmVzdWx0OiAvdXNyL2Njcy9iaW4v
bm0gLXAKY29uZmlndXJlOjU0ODY6IGNoZWNraW5nIHdoZXRoZXIgbG4gLXMgd29ya3MKY29uZmln
dXJlOjU0OTA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo1NDk3OiBjaGVja2luZyBob3cgdG8gcmVj
b2duaXNlIGRlcGVuZGVudCBsaWJyYXJpZXMKY29uZmlndXJlOjU2Njk6IHJlc3VsdDogcGFzc19h
bGwKY29uZmlndXJlOjYxMjU6IGNoZWNraW5nIGhvdyB0byBydW4gdGhlIEMgcHJlcHJvY2Vzc29y
CmNvbmZpZ3VyZTo2MTYwOiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6NjE2NjogJD8gPSAw
CmNvbmZpZ3VyZTo2MTk4OiBjYyAtRSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjE2OjI4OiBhY19u
b25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZTo2MjA0OiAk
PyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICov
CnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi
Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAi
Igp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tB
R0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZp
bmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lP
Tl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5l
IExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEK
fCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNv
bmZpZ3VyZTo2MjQzOiByZXN1bHQ6IGNjIC1FCmNvbmZpZ3VyZTo2MjY3OiBjYyAtRSAgY29uZnRl
c3QuYwpjb25maWd1cmU6NjI3MzogJD8gPSAwCmNvbmZpZ3VyZTo2MzA1OiBjYyAtRSAgY29uZnRl
c3QuYwpjb25mdGVzdC5jOjE2OjI4OiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3Ig
ZGlyZWN0b3J5CmNvbmZpZ3VyZTo2MzExOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3Jh
bSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIK
fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIi
CnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQg
IiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxE
QVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8
ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRP
Ul9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcK
fCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu
Y2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CmNvbmZpZ3VyZTo2MzU1OiBjaGVja2luZyBmb3IgQU5T
SSBDIGhlYWRlciBmaWxlcwpjb25maWd1cmU6NjM4MDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5j
ID4mNQpjb25maWd1cmU6NjM4NjogJD8gPSAwCmNvbmZpZ3VyZTo2MzkwOiB0ZXN0IC16IAoJCQkg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjM5MzogJD8gPSAwCmNvbmZpZ3Vy
ZTo2Mzk2OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjYzOTk6ICQ/ID0gMApjb25maWd1
cmU6NjQ4ODogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3Vy
ZTo2NDkxOiAkPyA9IDAKY29uZmlndXJlOjY0OTM6IC4vY29uZnRlc3QKY29uZmlndXJlOjY0OTY6
ICQ/ID0gMApjb25maWd1cmU6NjUxMTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY1MzU6IGNoZWNr
aW5nIGZvciBzeXMvdHlwZXMuaApjb25maWd1cmU6NjU1MTogY2MgLWMgLWcgLU8yICBjb25mdGVz
dC5jID4mNQpjb25maWd1cmU6NjU1NzogJD8gPSAwCmNvbmZpZ3VyZTo2NTYxOiB0ZXN0IC16IAoJ
CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjU2NDogJD8gPSAwCmNvbmZp
Z3VyZTo2NTY3OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjY1NzA6ICQ/ID0gMApjb25m
aWd1cmU6NjU4MTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjY1MzU6IGNoZWNraW5nIGZvciBzeXMv
c3RhdC5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEg
LXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRl
c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0ZGxpYi5oCmNvbmZpZ3Vy
ZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9
IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJy
CmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qu
bwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0cmluZy5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAt
ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1
NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0
OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3
MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hl
Y2tpbmcgZm9yIG1lbW9yeS5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0
LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmln
dXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZp
Z3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0cmlu
Z3MuaApjb25maWd1cmU6NjU1MTogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1
cmU6NjU1NzogJD8gPSAwCmNvbmZpZ3VyZTo2NTYxOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6NjU2NDogJD8gPSAwCmNvbmZpZ3VyZTo2NTY3OiB0ZXN0
IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjY1NzA6ICQ/ID0gMApjb25maWd1cmU6NjU4MTogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjY1MzU6IGNoZWNraW5nIGZvciBpbnR0eXBlcy5oCmNvbmZpZ3Vy
ZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9
IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJy
CmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qu
bwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6NjUzNTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAt
ZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1
NjE6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0
OiAkPyA9IDAKY29uZmlndXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3
MDogJD8gPSAwCmNvbmZpZ3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjUzNTogY2hl
Y2tpbmcgZm9yIHVuaXN0ZC5oCmNvbmZpZ3VyZTo2NTUxOiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0
LmMgPiY1CmNvbmZpZ3VyZTo2NTU3OiAkPyA9IDAKY29uZmlndXJlOjY1NjE6IHRlc3QgLXogCgkJ
CSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTo2NTY0OiAkPyA9IDAKY29uZmln
dXJlOjY1Njc6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6NjU3MDogJD8gPSAwCmNvbmZp
Z3VyZTo2NTgxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjYwNzogY2hlY2tpbmcgZGxmY24uaCB1
c2FiaWxpdHkKY29uZmlndXJlOjY2MTk6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29u
ZmlndXJlOjY2MjU6ICQ/ID0gMApjb25maWd1cmU6NjYyOTogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjY2MzI6ICQ/ID0gMApjb25maWd1cmU6NjYzNTog
dGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTo2NjM4OiAkPyA9IDAKY29uZmlndXJlOjY2NDg6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NjUyOiBjaGVja2luZyBkbGZjbi5oIHByZXNlbmNlCmNv
bmZpZ3VyZTo2NjYyOiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6NjY2ODogJD8gPSAwCmNv
bmZpZ3VyZTo2Njg4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6NjcyMzogY2hlY2tpbmcgZm9yIGRs
ZmNuLmgKY29uZmlndXJlOjY3MzA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo2NzQ3OiBjaGVja2lu
ZyB0aGUgbWF4aW11bSBsZW5ndGggb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwpjb25maWd1cmU6
NjgzOTogcmVzdWx0OiAyNjIxNDQKY29uZmlndXJlOjY4NTA6IGNoZWNraW5nIGNvbW1hbmQgdG8g
cGFyc2UgL3Vzci9jY3MvYmluL25tIC1wIG91dHB1dCBmcm9tIGNjIG9iamVjdApjb25maWd1cmU6
Njk0NjogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6Njk0OTogJD8gPSAw
CmNvbmZpZ3VyZTo2OTUzOiAvdXNyL2Njcy9iaW4vbm0gLXAgY29uZnRlc3QubyBcfCBzZWQgLW4g
LWUgJ3MvXi4qWyAJXVwoW0JEUlRdW0JEUlRdKlwpWyAJXVsgCV0qXChbX0EtWmEtel1bX0EtWmEt
ejAtOV0qXCkkL1wxIFwyIFwyL3AnIFw+IGNvbmZ0ZXN0Lm5tCmNvbmZpZ3VyZTo2OTU2OiAkPyA9
IDAKY29uZmlndXJlOjcwMDg6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgY29u
ZnRzdG0ubyA+JjUKY29uZmlndXJlOjcwMTE6ICQ/ID0gMApjb25maWd1cmU6NzA0OTogcmVzdWx0
OiBvawpjb25maWd1cmU6NzA1MzogY2hlY2tpbmcgZm9yIG9iamRpcgpjb25maWd1cmU6NzA2ODog
cmVzdWx0OiAubGlicwpjb25maWd1cmU6NzIzODogY2hlY2tpbmcgZm9yIHJhbmxpYgpjb25maWd1
cmU6NzI1NDogZm91bmQgL3Vzci9jY3MvYmluL3JhbmxpYgpjb25maWd1cmU6NzI2NTogcmVzdWx0
OiByYW5saWIKY29uZmlndXJlOjczMTg6IGNoZWNraW5nIGZvciBzdHJpcApjb25maWd1cmU6NzMz
NDogZm91bmQgL3Vzci9jY3MvYmluL3N0cmlwCmNvbmZpZ3VyZTo3MzQ1OiByZXN1bHQ6IHN0cmlw
CmNvbmZpZ3VyZTo3NjMyOiBjaGVja2luZyBpZiBjYyBzdGF0aWMgZmxhZyAgd29ya3MKY29uZmln
dXJlOjc2NjA6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTo3Njc4OiBjaGVja2luZyBpZiBjYyBzdXBw
b3J0cyAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zCmNvbmZpZ3VyZTo3Njk2OiBjYyAtYyAtZyAt
TzIgIC1mbm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMgY29uZnRlc3QuYyA+JjUKY2MxOiB3YXJuaW5n
OiAiLWZuby1ydHRpIiBpcyB2YWxpZCBmb3IgQysrIGJ1dCBub3QgZm9yIEMvT2JqQwpjb25maWd1
cmU6NzcwMDogJD8gPSAwCmNvbmZpZ3VyZTo3NzEzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzI4
OiBjaGVja2luZyBmb3IgY2Mgb3B0aW9uIHRvIHByb2R1Y2UgUElDCmNvbmZpZ3VyZTo3OTMyOiBy
ZXN1bHQ6IC1mUElDCmNvbmZpZ3VyZTo3OTQwOiBjaGVja2luZyBpZiBjYyBQSUMgZmxhZyAtZlBJ
QyB3b3Jrcwpjb25maWd1cmU6Nzk1ODogY2MgLWMgLWcgLU8yICAtZlBJQyAtRFBJQyBjb25mdGVz
dC5jID4mNQpjb25maWd1cmU6Nzk2MjogJD8gPSAwCmNvbmZpZ3VyZTo3OTc1OiByZXN1bHQ6IHll
cwpjb25maWd1cmU6Nzk5OTogY2hlY2tpbmcgaWYgY2Mgc3VwcG9ydHMgLWMgLW8gZmlsZS5vCmNv
bmZpZ3VyZTo4MDIwOiBjYyAtYyAtZyAtTzIgIC1vIG91dC9jb25mdGVzdDIubyBjb25mdGVzdC5j
ID4mNQpjb25maWd1cmU6ODAyNDogJD8gPSAwCmNvbmZpZ3VyZTo4MDQ2OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6ODA3MjogY2hlY2tpbmcgd2hldGhlciB0aGUgY2MgbGlua2VyICgvdXNyL2Njcy9i
aW4vbGQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKY29uZmlndXJlOjg5Njg6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZTo4OTk0OiBjaGVja2luZyB3aGV0aGVyIC1sYyBzaG91bGQgYmUgZXhwbGlj
aXRseSBsaW5rZWQgaW4KY29uZmlndXJlOjg5OTk6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
JjUKY29uZmlndXJlOjkwMDI6ICQ/ID0gMApjb25maWd1cmU6OTAxNjogY2MgLXNoYXJlZCAtV2ws
LWggLVdsLGNvbmZ0ZXN0IC1vIGNvbmZ0ZXN0IGNvbmZ0ZXN0Lm8gIC12IDJcPlwmMSBcfCBncmVw
ICAtbGMgIFw+L2Rldi9udWxsIDJcPlwmMQpjb25maWd1cmU6OTAxOTogJD8gPSAxCmNvbmZpZ3Vy
ZTo5MDMxOiByZXN1bHQ6IHllcwpjb25maWd1cmU6OTAzOTogY2hlY2tpbmcgZHluYW1pYyBsaW5r
ZXIgY2hhcmFjdGVyaXN0aWNzCmNvbmZpZ3VyZTo5NTkzOiByZXN1bHQ6IHNvbGFyaXMyLjEwIGxk
LnNvCmNvbmZpZ3VyZTo5NTk3OiBjaGVja2luZyBob3cgdG8gaGFyZGNvZGUgbGlicmFyeSBwYXRo
cyBpbnRvIHByb2dyYW1zCmNvbmZpZ3VyZTo5NjIyOiByZXN1bHQ6IGltbWVkaWF0ZQpjb25maWd1
cmU6OTYzNjogY2hlY2tpbmcgd2hldGhlciBzdHJpcHBpbmcgbGlicmFyaWVzIGlzIHBvc3NpYmxl
CmNvbmZpZ3VyZTo5NjU3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo5NzY3OiBjaGVja2luZyBmb3Ig
c2hsX2xvYWQKY29uZmlndXJlOjk4MjQ6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0
LmMgID4mNQpVbmRlZmluZWQJCQlmaXJzdCByZWZlcmVuY2VkCiBzeW1ib2wgIAkJCSAgICBpbiBm
aWxlCnNobF9sb2FkICAgICAgICAgICAgICAgICAgICAgICAgICAgIC92YXIvdG1wLy9jYzZmd1JO
dy5vCmxkOiBmYXRhbDogU3ltYm9sIHJlZmVyZW5jaW5nIGVycm9ycy4gTm8gb3V0cHV0IHdyaXR0
ZW4gdG8gY29uZnRlc3QKY29sbGVjdDI6IGxkIHJldHVybmVkIDEgZXhpdCBzdGF0dXMKY29uZmln
dXJlOjk4MzA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m
ZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tB
R0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BF
TkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMu
MjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZF
TkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1Ig
Mwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9N
S1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK
fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgSEFWRV9ETEZDTl9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyogRGVmaW5lIHNo
bF9sb2FkIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFy
ZXMgc2hsX2xvYWQuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGltaXRzLmg+IGRlY2xh
cmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBzaGxfbG9hZCBpbm5vY3VvdXNfc2hsX2xv
YWQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9zIGFuZCBob3Bl
ZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3aXRoIGNoYXIg
c2hsX2xvYWQgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+
IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhpc3RzIGV2
ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1REQ19fCnwg
IyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+CnwgI2Vu
ZGlmCnwgCnwgI3VuZGVmIHNobF9sb2FkCnwgCnwgLyogT3ZlcnJpZGUgYW55IGdjYzIgaW50ZXJu
YWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMK
fCBleHRlcm4gIkMiCnwgewp8ICNlbmRpZgp8IC8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1p
Z2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIGdjYzIKfCAgICBidWlsdGluIGFuZCB0aGVu
IGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8IGNoYXIgc2hs
X2xvYWQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlv
bnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4g
IFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRp
bmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVm
aW5lZCAoX19zdHViX3NobF9sb2FkKSB8fCBkZWZpbmVkIChfX3N0dWJfX19zaGxfbG9hZCkKfCBj
aG9rZSBtZQp8ICNlbHNlCnwgY2hhciAoKmYpICgpID0gc2hsX2xvYWQ7CnwgI2VuZGlmCnwgI2lm
ZGVmIF9fY3BsdXNwbHVzCnwgfQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0
dXJuIGYgIT0gc2hsX2xvYWQ7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZTo5ODU1
OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo5ODYwOiBjaGVja2luZyBmb3Igc2hsX2xvYWQgaW4gLWxk
bGQKY29uZmlndXJlOjk4OTA6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxk
bGQgICA+JjUKbGQ6IGZhdGFsOiBsaWJyYXJ5IC1sZGxkOiBub3QgZm91bmQKbGQ6IGZhdGFsOiBG
aWxlIHByb2Nlc3NpbmcgZXJyb3JzLiBObyBvdXRwdXQgd3JpdHRlbiB0byBjb25mdGVzdApjb2xs
ZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6OTg5NjogJD8gPSAxCmNv
bmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNk
ZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVm
aW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVm
aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVu
TERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBf
VkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1Ig
Mgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZF
TkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmlu
ZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZF
X1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5U
X0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8
IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRlcm5h
bCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8
IGV4dGVybiAiQyIKfCAjZW5kaWYKfCAvKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBt
YXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMg
YXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIHNobF9sb2Fk
ICgpOwp8IGludAp8IG1haW4gKCkKfCB7Cnwgc2hsX2xvYWQgKCk7CnwgICA7CnwgICByZXR1cm4g
MDsKfCB9CmNvbmZpZ3VyZTo5OTIyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo5OTI3OiBjaGVja2lu
ZyBmb3IgZGxvcGVuCmNvbmZpZ3VyZTo5OTg0OiBjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25m
dGVzdC5jICA+JjUKY29uZmlndXJlOjk5OTA6ICQ/ID0gMApjb25maWd1cmU6OTk5NDogdGVzdCAt
eiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjk5OTc6ICQ/ID0gMApj
b25maWd1cmU6MTAwMDA6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjEwMDAzOiAkPyA9IDAK
Y29uZmlndXJlOjEwMDE1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTAyNTc6IGNoZWNraW5nIHdo
ZXRoZXIgYSBwcm9ncmFtIGNhbiBkbG9wZW4gaXRzZWxmCmNvbmZpZ3VyZToxMDMyOTogY2MgLW8g
Y29uZnRlc3QgLWcgLU8yICAtREhBVkVfRExGQ05fSCAgIGNvbmZ0ZXN0LmMgICA+JjUKY29uZmln
dXJlOjEwMzMyOiAkPyA9IDAKY29uZmlndXJlOjEwMzUwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MTAzNTU6IGNoZWNraW5nIHdoZXRoZXIgYSBzdGF0aWNhbGx5IGxpbmtlZCBwcm9ncmFtIGNhbiBk
bG9wZW4gaXRzZWxmCmNvbmZpZ3VyZToxMDQyNzogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAtREhB
VkVfRExGQ05fSCAgICBjb25mdGVzdC5jICAgPiY1CmNvbmZpZ3VyZToxMDQzMDogJD8gPSAwCmNv
bmZpZ3VyZToxMDQ0ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNDcxOiBjaGVja2luZyBpZiBs
aWJ0b29sIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKY29uZmlndXJlOjEwNDczOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTA0NzY6IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc2hhcmVkIGxp
YnJhcmllcwpjb25maWd1cmU6MTA0OTc6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMDUwMDogY2hl
Y2tpbmcgd2hldGhlciB0byBidWlsZCBzdGF0aWMgbGlicmFyaWVzCmNvbmZpZ3VyZToxMDUwNDog
cmVzdWx0OiB5ZXMKY29uZmlndXJlOjEwNTk2OiBjcmVhdGluZyBsaWJ0b29sCmNvbmZpZ3VyZTox
MTY1NzogY2hlY2tpbmcgaG93IHRvIHJ1biB0aGUgQyBwcmVwcm9jZXNzb3IKY29uZmlndXJlOjEx
Nzc1OiByZXN1bHQ6IGNjIC1FCmNvbmZpZ3VyZToxMTc5OTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
ZmlndXJlOjExODA1OiAkPyA9IDAKY29uZmlndXJlOjExODM3OiBjYyAtRSAgY29uZnRlc3QuYwpj
b25mdGVzdC5jOjI3OjI4OiBhY19ub25leGlzdGVudC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0
b3J5CmNvbmZpZ3VyZToxMTg0MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2Fz
Ogp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2Rl
ZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNk
ZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwg
I2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZF
UlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVm
aW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
U0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2Rl
ZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg
SEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVf
TUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRU
WVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
SCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
aW5jbHVkZSA8YWNfbm9uZXhpc3RlbnQuaD4KY29uZmlndXJlOjExOTAwOiBjaGVja2luZyBmb3Ig
YmVfYXBwIGluIC1sYmUKY29uZmlndXJlOjExOTMwOiBjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBj
b25mdGVzdC5jIC1sYmUgLWxyb290IC1sbmV0ICA+JjUKbGQ6IGZhdGFsOiBsaWJyYXJ5IC1sYmU6
IG5vdCBmb3VuZApsZDogZmF0YWw6IGxpYnJhcnkgLWxyb290OiBub3QgZm91bmQKbGQ6IGZhdGFs
OiBsaWJyYXJ5IC1sbmV0OiBub3QgZm91bmQKbGQ6IGZhdGFsOiBGaWxlIHByb2Nlc3NpbmcgZXJy
b3JzLiBObyBvdXRwdXQgd3JpdHRlbiB0byBjb25mdGVzdApjb2xsZWN0MjogbGQgcmV0dXJuZWQg
MSBleGl0IHN0YXR1cwpjb25maWd1cmU6MTE5MzY6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw
cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFN
RSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ
T04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF
UE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBP
UEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIw
MzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBf
VkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRD
SCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK
fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl
ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l
IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB
VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAi
Igp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBpbnRl
cm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1
cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCAvKiBXZSB1c2UgY2hhciBiZWNhdXNlIGludCBtaWdo
dCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBnY2MyCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBp
dHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCBjaGFyIGJlX2Fw
cCAoKTsKfCBpbnQKfCBtYWluICgpCnwgewp8IGJlX2FwcCAoKTsKfCAgIDsKfCAgIHJldHVybiAw
Owp8IH0KY29uZmlndXJlOjExOTYyOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMjI4NzogY2hlY2tp
bmcgZm9yIEMgY29tcGlsZXIgdmVyc2lvbgpjb25maWd1cmU6MTIyOTA6IGNjIC0tdmVyc2lvbiA8
L2Rldi9udWxsID4mNQpjYyAoR0NDKSAzLjMuMgpDb3B5cmlnaHQgKEMpIDIwMDMgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uLCBJbmMuClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3Vy
Y2UgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PCndhcnJhbnR5OyBub3QgZXZl
biBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
LgoKY29uZmlndXJlOjEyMjkzOiAkPyA9IDAKY29uZmlndXJlOjEyMjk1OiBjYyAtdiA8L2Rldi9u
dWxsID4mNQpSZWFkaW5nIHNwZWNzIGZyb20gL3Vzci9sb2NhbC9saWIvZ2NjLWxpYi9zcGFyYy1z
dW4tc29sYXJpczIuMTAvMy4zLjIvc3BlY3MKQ29uZmlndXJlZCB3aXRoOiAuLi9jb25maWd1cmUg
LS13aXRoLWFzPS91c3IvY2NzL2Jpbi9hcyAtLXdpdGgtbGQ9L3Vzci9jY3MvYmluL2xkIC0tZGlz
YWJsZS1ubHMKVGhyZWFkIG1vZGVsOiBwb3NpeApnY2MgdmVyc2lvbiAzLjMuMgpjb25maWd1cmU6
MTIyOTg6ICQ/ID0gMApjb25maWd1cmU6MTIzMDA6IGNjIC1WIDwvZGV2L251bGwgPiY1CmNjOiBg
LVYnIG9wdGlvbiBtdXN0IGhhdmUgYXJndW1lbnQKY29uZmlndXJlOjEyMzAzOiAkPyA9IDEKY29u
ZmlndXJlOjEyMzA2OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgY29t
cGlsZXIKY29uZmlndXJlOjEyMzYyOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTIzNjg6IGNoZWNr
aW5nIHdoZXRoZXIgY2MgYWNjZXB0cyAtZwpjb25maWd1cmU6MTI0MTk6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToxMjQzNjogY2hlY2tpbmcgZm9yIGNjIG9wdGlvbiB0byBhY2NlcHQgQU5TSSBDCmNv
bmZpZ3VyZToxMjU0MzogcmVzdWx0OiBub25lIG5lZWRlZApjb25maWd1cmU6MTI1NjE6IGNjIC1j
IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzoyOiBlcnJvcjogcGFyc2UgZXJyb3Ig
YmVmb3JlICJtZSIKY29uZmlndXJlOjEyNTY3OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6CnwgI2lmbmRlZiBfX2NwbHVzcGx1cwp8ICAgY2hva2UgbWUKfCAjZW5kaWYKY29u
ZmlndXJlOjEyNzAyOiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxlIG9mIGNjCmNvbmZpZ3VyZTox
Mjc5MjogcmVzdWx0OiBub25lCmNvbmZpZ3VyZToxMjgyMTogY2hlY2tpbmcgZm9yIGNjIGRlcGVu
ZCBmbGFnCmNvbmZpZ3VyZToxMjgzMzogY2MgLU0gY29uZnRlc3QuYwpjb25maWd1cmU6MTI4MzY6
ICQ/ID0gMApjb25maWd1cmU6MTI4NTA6IHJlc3VsdDogLU0KY29uZmlndXJlOjEyODcwOiBjaGVj
a2luZyBmb3IgYWZvcGVuIGluIC1scwpjb25maWd1cmU6MTI5MDA6IGNjIC1vIGNvbmZ0ZXN0IC1n
IC1PMiAgIGNvbmZ0ZXN0LmMgLWxzICAgPiY1CmxkOiBmYXRhbDogbGlicmFyeSAtbHM6IG5vdCBm
b3VuZApsZDogZmF0YWw6IEZpbGUgcHJvY2Vzc2luZyBlcnJvcnMuIE5vIG91dHB1dCB3cml0dGVu
IHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3Vy
ZToxMjkwNjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZk
ZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdF
X1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVO
TERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4y
NyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVO
RE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAz
CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01L
VkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ
RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJf
SCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAj
ZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu
ZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgLyogZW5kIGNvbmZkZWZzLmgu
ICAqLwp8IAp8IC8qIE92ZXJyaWRlIGFueSBnY2MyIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9p
ZCBhbiBlcnJvci4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRp
Zgp8IC8qIFdlIHVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlw
ZSBvZiBhIGdjYzIKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUg
d291bGQgc3RpbGwgYXBwbHkuICAqLwp8IGNoYXIgYWZvcGVuICgpOwp8IGludAp8IG1haW4gKCkK
fCB7CnwgYWZvcGVuICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTI5MzI6
IHJlc3VsdDogbm8KY29uZmlndXJlOjEzMjIxOiBjaGVja2luZyBmb3IgRUJDRElDCmNvbmZpZ3Vy
ZToxMzIzOTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzozMDozODogX19BU0NJSV9fL2dl
bmVyYXRlX2Vycm9yLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjEzMjQ1
OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4g
ICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFN
RSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO
RyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BB
Q0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNk
ZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
U0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVm
aW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9O
IDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVf
RExGQ05fSCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwg
CnwgI2lmICEoJ00nID09IDB4ZDQpCnwgI2luY2x1ZGUgPF9fQVNDSUlfXy9nZW5lcmF0ZV9lcnJv
ci5oPgp8ICNlbmRpZgp8IApjb25maWd1cmU6MTMyNjY6IHJlc3VsdDogbm8KY29uZmlndXJlOjEz
Mjc2OiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcwpjb25maWd1cmU6MTMyOTI6IGNj
IC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxMzI5ODogJD8gPSAwCmNvbmZpZ3VyZToxMzM4OTog
Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CmNvbmZpZ3VyZToxMzM5Mjog
JD8gPSAwCmNvbmZpZ3VyZToxMzM5NDogLi9jb25mdGVzdApjb25maWd1cmU6MTMzOTc6ICQ/ID0g
MApjb25maWd1cmU6MTM0MTI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzQzNjogY2hlY2tpbmcg
Zm9yIGRpcmVudC5oIHRoYXQgZGVmaW5lcyBESVIKY29uZmlndXJlOjEzNDYwOiBjYyAtYyAtZyAt
TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxMzQ2NjogJD8gPSAwCmNvbmZpZ3VyZToxMzQ3
MDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjEzNDcz
OiAkPyA9IDAKY29uZmlndXJlOjEzNDc2OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjEz
NDc5OiAkPyA9IDAKY29uZmlndXJlOjEzNDkwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTM1MDM6
IGNoZWNraW5nIGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgb3BlbmRpcgpjb25maWd1cmU6MTM1MzM6
IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpjb25maWd1cmU6MTM1Mzk6
ICQ/ID0gMApjb25maWd1cmU6MTM1NDM6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRl
c3QuZXJyCmNvbmZpZ3VyZToxMzU0NjogJD8gPSAwCmNvbmZpZ3VyZToxMzU0OTogdGVzdCAtcyBj
b25mdGVzdApjb25maWd1cmU6MTM1NTI6ICQ/ID0gMApjb25maWd1cmU6MTM2MjI6IHJlc3VsdDog
bm9uZSByZXF1aXJlZApjb25maWd1cmU6MTM3NTg6IGNoZWNraW5nIGZvciBzeXMvd2FpdC5oIHRo
YXQgaXMgUE9TSVguMSBjb21wYXRpYmxlCmNvbmZpZ3VyZToxMzc4OTogY2MgLWMgLWcgLU8yICBj
b25mdGVzdC5jID4mNQpjb25maWd1cmU6MTM3OTU6ICQ/ID0gMApjb25maWd1cmU6MTM3OTk6IHRl
c3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxMzgwMjogJD8g
PSAwCmNvbmZpZ3VyZToxMzgwNTogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxMzgwODog
JD8gPSAwCmNvbmZpZ3VyZToxMzgxOTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzODI5OiBjaGVj
a2luZyB3aGV0aGVyIHRlcm1pb3MuaCBkZWZpbmVzIFRJT0NHV0lOU1oKY29uZmlndXJlOjEzODU2
OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIGFycGEvaW5ldC5oIHVzYWJp
bGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln
dXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6
IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQw
NDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgYXJwYS9pbmV0LmggcHJl
c2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6
ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hl
Y2tpbmcgZm9yIGFycGEvaW5ldC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjE0MDAyOiBjaGVja2luZyBhcnBhL25hbWVzZXIuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0
MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAw
CmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0
Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTQwNDc6IGNoZWNraW5nIGFycGEvbmFtZXNlci5oIHByZXNlbmNlCmNvbmZpZ3Vy
ZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmln
dXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBhcnBh
L25hbWVzZXIuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjog
Y2hlY2tpbmcgYXNzZXJ0LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcgLU8y
ICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6MTQwMjQ6
IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNDAyNzog
JD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxNDAz
MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDQ3OiBj
aGVja2luZyBhc3NlcnQuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVz
dC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMK
Y29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgYXNzZXJ0LmgKY29uZmlndXJlOjE0MTI1OiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIGJpdHMvdHlwZXMuaCB1c2FiaWxp
dHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0
LmM6Njg6MjQ6IGJpdHMvdHlwZXMuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1
cmU6MTQwMjA6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25m
ZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tB
R0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BF
TkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMu
MjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZF
TkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1Ig
Mwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9N
S1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElC
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEK
fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwg
I2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFE
RVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9I
IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVT
RVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov
CnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUg
PHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUg
PHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3Rk
bGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJf
SAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9T
VFJJTkdfSAp8ICMgaWYgIVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVk
ZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwg
I2lmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lm
IEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYg
SEFWRV9TVERJTlRfSAp8ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYK
fCAjaWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2lu
Y2x1ZGUgPGJpdHMvdHlwZXMuaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
ZToxNDA0NzogY2hlY2tpbmcgYml0cy90eXBlcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1Nzog
Y2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzozNDoyNDogYml0cy90eXBlcy5oOiBObyBzdWNo
IGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDA2MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFp
bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FH
RV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
QlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVm
aW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
T04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUg
TERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9O
X1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURF
UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhF
RVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAx
CnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0gg
MQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8Yml0cy90eXBlcy5oPgpjb25m
aWd1cmU6MTQwODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgYml0
cy90eXBlcy5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiBubwpjb25maWd1cmU6MTQwMDI6IGNo
ZWNraW5nIGNvbmlvLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcgLU8yICBj
b25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjY4OjE5OiBjb25pby5oOiBObyBzdWNoIGZpbGUgb3Ig
ZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIi
CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
ICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5M
REFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcK
fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5E
T1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3
CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwg
I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu
ZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8IC8qIGVu
ZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQ
RVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NU
QVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAjZW5kaWYKfCAjaWYgU1REQ19IRUFERVJT
CnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwg
IyBpZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNl
bmRpZgp8ICNpZiBIQVZFX1NUUklOR19ICnwgIyBpZiAhU1REQ19IRUFERVJTICYmIEhBVkVfTUVN
T1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJp
bmcuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3Mu
aD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5o
Pgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURElOVF9ICnwgIyAgaW5jbHVkZSA8c3RkaW50Lmg+Cnwg
IyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQu
aD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8Y29uaW8uaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6
IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgY29uaW8uaCBwcmVzZW5jZQpjb25maWd1cmU6
MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6MzQ6MTk6IGNvbmlvLmg6IE5vIHN1
Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDYzOiAkPyA9IDEKY29uZmlndXJlOiBm
YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNL
QUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNk
ZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
U0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmlu
ZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
T05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVB
REVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU
QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg
MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg
I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl
ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBF
WEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9I
IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRf
SCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxjb25pby5oPgpjb25maWd1
cmU6MTQwODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgY29uaW8u
aApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBj
cnlwdC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3Qu
YyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJ
CQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25m
aWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApj
b25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgY3J5
cHQuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3Vy
ZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
MTE4OiBjaGVja2luZyBmb3IgY3J5cHQuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgZGlyZWN0LmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAx
NDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjY5OjIwOiBkaXJlY3Qu
aDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMQpjb25m
aWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVm
aW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmlu
ZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmlu
ZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxE
QVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZF
TkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIK
fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5E
T1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUg
U1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
U19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9I
IDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAj
ZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf
RElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQ
QV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZF
X0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmgu
ICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNs
dWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNs
dWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUg
PHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RE
TElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhB
VkVfU1RSSU5HX0gKfCAjIGlmICFTVERDX0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGlu
Y2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRp
Zgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8
ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAj
IGlmIEhBVkVfU1RESU5UX0gKfCAjICBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2Vu
ZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8
ICNpbmNsdWRlIDxkaXJlY3QuaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
ZToxNDA0NzogY2hlY2tpbmcgZGlyZWN0LmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAt
RSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjM1OjIwOiBkaXJlY3QuaDogTm8gc3VjaCBmaWxlIG9y
IGRpcmVjdG9yeQpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9n
cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAi
Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04g
IiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S
VCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVO
TERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3
CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVO
RE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAy
Nwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmlu
ZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhB
VkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVf
VU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8
ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZp
bmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVm
aW5lIEhBVkVfQ1JZUFRfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxk
aXJlY3QuaD4KY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDExODogY2hl
Y2tpbmcgZm9yIGRpcmVjdC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiBubwpjb25maWd1cmU6
MTQwMDI6IGNoZWNraW5nIGVycm5vLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMg
LWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6
MTQwMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTox
NDAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
ZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
MDQ3OiBjaGVja2luZyBlcnJuby5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNv
bmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBlcnJuby5oCmNvbmZpZ3VyZToxNDEy
NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBmY250bC5oIHVzYWJpbGl0
eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJl
OjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1z
IGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRl
c3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgZmNudGwuaCBwcmVzZW5jZQpj
b25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAw
CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBm
b3IgZmNudGwuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjog
Y2hlY2tpbmcgZmlsaW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIg
IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NzE6MTk6IGZpbGlvLmg6IE5vIHN1Y2ggZmlsZSBv
ciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDIwOiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJv
Z3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg
IiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9O
ICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP
UlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BF
TkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMy
Nwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZF
TkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0gg
MjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwg
I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
I2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp
bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBI
QVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZF
X1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBFWEVFWFQgIiIK
fCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVm
aW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2Rl
ZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAjZGVmaW5lIEhB
VkVfRkNOVExfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5o
Pgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5k
aWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRp
Zgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8
c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRs
aWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFTVERD
X0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5k
aWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8
ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAj
IGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RESU5UX0gKfCAjICBp
bmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gK
fCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxmaWxpby5oPgpjb25m
aWd1cmU6MTQwNDM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MDQ3OiBjaGVja2luZyBmaWxpby5o
IHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzoz
NzoxOTogZmlsaW8uaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTQwNjM6
ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAg
Ki8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F
ICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H
ICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFD
S0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2Rl
ZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJT
SU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZp
bmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04g
MQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBI
QVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9E
TEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAj
ZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVm
aW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwg
I2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmlu
ZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAvKiBlbmQgY29uZmRl
ZnMuaC4gICovCnwgI2luY2x1ZGUgPGZpbGlvLmg+CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiBu
bwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBmaWxpby5oCmNvbmZpZ3VyZToxNDEyNTog
cmVzdWx0OiBubwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIGdldG9wdC5oIHVzYWJpbGl0eQpj
b25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0
MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNv
bmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3Qg
LXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgZ2V0b3B0LmggcHJlc2VuY2UKY29u
ZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApj
b25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9y
IGdldG9wdC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBj
aGVja2luZyBncnAuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVz
dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9
IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAk
PyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNr
aW5nIGdycC5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
ZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MTQxMTg6IGNoZWNraW5nIGZvciBncnAuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgaW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0
OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6NzM6MTY6IGlvLmg6IE5v
IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDIwOiAkPyA9IDEKY29uZmlndXJl
OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQ
QUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFD
S0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFD
S0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8
ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1Jf
VkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2Rl
ZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZF
UlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENf
SEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
X0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAx
CnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwg
I2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmlu
ZSBFWEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVO
VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5F
VF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NF
UlRfSCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEK
fCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVm
aW5lIEhBVkVfR1JQX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3Rk
aW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+Cnwg
I2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KfCAj
ZW5kaWYKfCAjaWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGluY2x1
ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURExJQl9ICnwgIyAgaW5jbHVkZSA8
c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR19ICnwgIyBpZiAh
U1REQ19IRUFERVJTICYmIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxtZW1vcnkuaD4KfCAj
IGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdT
X0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9JTlRUWVBFU19I
CnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURElOVF9ICnwg
IyAgaW5jbHVkZSA8c3RkaW50Lmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1VOSVNU
RF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaW5jbHVkZSA8aW8uaD4KY29u
ZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgaW8uaCBw
cmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZ0ZXN0LmM6Mzk6
MTY6IGlvLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDYzOiAkPyA9
IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg
CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8
ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8
ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0Ug
Ik9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUg
TERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9N
QUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExE
QVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAj
ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF
X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05f
SCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu
ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI
QVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZp
bmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFW
RV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q
VF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
aW5jbHVkZSA8aW8uaD4KY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDEx
ODogY2hlY2tpbmcgZm9yIGlvLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IG5vCmNvbmZpZ3Vy
ZToxNDAwMjogY2hlY2tpbmcgbGlidXRpbC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzo3MzoyMTogbGlidXRpbC5oOiBO
byBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAxCmNvbmZpZ3Vy
ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUg
UEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBB
Q0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBB
Q0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIK
fCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9S
X1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNk
ZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9W
RVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERD
X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg
MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZp
bmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF
TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lO
RVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNT
RVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAx
CnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl
ZmluZSBIQVZFX0dSUF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0
ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8
ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+Cnwg
I2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNs
dWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUg
PHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYg
IVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+Cnwg
IyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5H
U19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfSU5UVFlQRVNf
SAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERJTlRfSAp8
ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9VTklT
VERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPGxpYnV0aWwu
aD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcg
bGlidXRpbC5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29u
ZnRlc3QuYzozOToyMTogbGlidXRpbC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZp
Z3VyZToxNDA2MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv
bmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNL
QUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFD
S0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBP
UEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIu
My4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBf
VkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5P
UiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZF
X01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNf
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERM
SUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg
MQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2Rl
ZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hF
QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlU
X0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFN
RVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9I
IDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNk
ZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAvKiBlbmQgY29u
ZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPGxpYnV0aWwuaD4KY29uZmlndXJlOjE0MDgzOiByZXN1
bHQ6IG5vCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIGxpYnV0aWwuaApjb25maWd1cmU6
MTQxMjU6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBsaW1pdHMuaCB1c2Fi
aWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMw
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0
MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIGxpbWl0cy5oIHByZXNl
bmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAk
PyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNr
aW5nIGZvciBsaW1pdHMuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
NDAwMjogY2hlY2tpbmcgbG9jYWxlLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMg
LWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6
MTQwMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZTox
NDAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3Vy
ZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
MDQ3OiBjaGVja2luZyBsb2NhbGUuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBj
b25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0
OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3IgbG9jYWxlLmgKY29uZmlndXJlOjE0
MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIG1hbGxvYy5oIHVzYWJp
bGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmln
dXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAh
IC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6
IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQw
NDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgbWFsbG9jLmggcHJlc2Vu
Y2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/
ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tp
bmcgZm9yIG1hbGxvYy5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEz
OTkzOiBjaGVja2luZyBmb3IgbWVtb3J5LmgKY29uZmlndXJlOjEzOTk4OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHBzYXAuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0
OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6Nzc6MTg6IHBzYXAuaDog
Tm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMQpjb25maWd1
cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5l
IFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQ
QUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQ
QUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAi
CnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRP
Ul9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAj
ZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1Jf
VkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1RE
Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I
IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK
fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVm
aW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElS
RU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9J
TkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FT
U0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0gg
MQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB
VkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01F
TU9SWV9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+Cnwg
I2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAjIGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8
ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwg
I2lmIFNURENfSEVBREVSUwp8ICMgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRk
ZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5o
Pgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIVNURENfSEVB
REVSUyAmJiBIQVZFX01FTU9SWV9ICnwgIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8
ICMgaW5jbHVkZSA8c3RyaW5nLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HU19ICnwgIyBp
bmNsdWRlIDxzdHJpbmdzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5j
bHVkZSA8aW50dHlwZXMuaD4KfCAjZWxzZQp8ICMgaWYgSEFWRV9TVERJTlRfSAp8ICMgIGluY2x1
ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAjaWYgSEFWRV9VTklTVERfSAp8ICMg
aW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwgI2luY2x1ZGUgPHBzYXAuaD4KY29uZmlndXJl
OjE0MDQzOiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgcHNhcC5oIHByZXNl
bmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzo0MzoxODog
cHNhcC5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDA2MzogJD8gPSAx
CmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8
ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAj
ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAj
ZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJP
cGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExE
QVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFK
T1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQ
X1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2Rl
ZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBI
QVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RE
SU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0gg
MQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUg
SEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFW
RV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5l
IEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVf
RVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRf
SCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5l
IEhBVkVfTUVNT1JZX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8cHNh
cC5oPgpjb25maWd1cmU6MTQwODM6IHJlc3VsdDogbm8KY29uZmlndXJlOjE0MTE4OiBjaGVja2lu
ZyBmb3IgcHNhcC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiBubwpjb25maWd1cmU6MTQwMDI6
IGNoZWNraW5nIHB3ZC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAg
Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0
ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/
ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6
ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hl
Y2tpbmcgcHdkLmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpj
b25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZp
Z3VyZToxNDExODogY2hlY2tpbmcgZm9yIHB3ZC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5
ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBwcm9jZXNzLmggdXNhYmlsaXR5CmNvbmZpZ3Vy
ZToxNDAxNDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjc4OjIxOiBw
cm9jZXNzLmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKY29uZmlndXJlOjE0MDIwOiAkPyA9
IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwg
CnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8
ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8
ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0Ug
Ik9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUg
TERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9N
QUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExE
QVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAj
ZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF
X1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05f
SCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmlu
ZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBI
QVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZp
bmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFW
RV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9Q
VF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwg
I2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZp
bmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAvKiBlbmQgY29uZmRl
ZnMuaC4gICovCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2lmIEhBVkVfU1lTX1RZUEVTX0gKfCAj
IGluY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NZU19TVEFUX0gKfCAj
IGluY2x1ZGUgPHN5cy9zdGF0Lmg+CnwgI2VuZGlmCnwgI2lmIFNURENfSEVBREVSUwp8ICMgaW5j
bHVkZSA8c3RkbGliLmg+CnwgIyBpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZWxzZQp8ICMgaWYgSEFW
RV9TVERMSUJfSAp8ICMgIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgZW5kaWYKfCAjZW5kaWYKfCAj
aWYgSEFWRV9TVFJJTkdfSAp8ICMgaWYgIVNURENfSEVBREVSUyAmJiBIQVZFX01FTU9SWV9ICnwg
IyAgaW5jbHVkZSA8bWVtb3J5Lmg+CnwgIyBlbmRpZgp8ICMgaW5jbHVkZSA8c3RyaW5nLmg+Cnwg
I2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HU19ICnwgIyBpbmNsdWRlIDxzdHJpbmdzLmg+CnwgI2Vu
ZGlmCnwgI2lmIEhBVkVfSU5UVFlQRVNfSAp8ICMgaW5jbHVkZSA8aW50dHlwZXMuaD4KfCAjZWxz
ZQp8ICMgaWYgSEFWRV9TVERJTlRfSAp8ICMgIGluY2x1ZGUgPHN0ZGludC5oPgp8ICMgZW5kaWYK
fCAjZW5kaWYKfCAjaWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2Vu
ZGlmCnwgI2luY2x1ZGUgPHByb2Nlc3MuaD4KY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IG5vCmNv
bmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgcHJvY2Vzcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1
NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZnRlc3QuYzo0NDoyMTogcHJvY2Vzcy5oOiBObyBzdWNo
IGZpbGUgb3IgZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDA2MzogJD8gPSAxCmNvbmZpZ3VyZTogZmFp
bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FH
RV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
VkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0Vf
QlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVm
aW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
T04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUg
TERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9O
X1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURF
UlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFU
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
fCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhF
RVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAx
CnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0gg
MQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2Rl
ZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBI
QVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NB
TEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0gg
MQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs
dWRlIDxwcm9jZXNzLmg+CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiBubwpjb25maWd1cmU6MTQx
MTg6IGNoZWNraW5nIGZvciBwcm9jZXNzLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IG5vCmNv
bmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc2d0dHkuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0
OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNv
bmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29u
ZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8K
Y29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTQwNDc6IGNoZWNraW5nIHNndHR5LmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBj
YyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6
IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIHNndHR5LmgKY29uZmln
dXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHNoYWRvdy5o
IHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUK
Y29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwg
dGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6
MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1
cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc2hhZG93Lmgg
cHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQw
NjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODog
Y2hlY2tpbmcgZm9yIHNoYWRvdy5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjE0MDAyOiBjaGVja2luZyBzdGRkZWYuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBj
YyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZp
Z3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29u
ZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1
cmU6MTQwNDc6IGNoZWNraW5nIHN0ZGRlZi5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2Mg
LUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiBy
ZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzdGRkZWYuaApjb25maWd1
cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxMzk5MzogY2hlY2tpbmcgZm9yIHN0cmlu
Zy5oCmNvbmZpZ3VyZToxMzk5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzOTkzOiBjaGVja2lu
ZyBmb3Igc3RyaW5ncy5oCmNvbmZpZ3VyZToxMzk5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0
MDAyOiBjaGVja2luZyBzeXNleGl0cy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1j
IC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJl
OjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6
MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1
cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
NDA0NzogY2hlY2tpbmcgc3lzZXhpdHMuaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1F
ICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVz
dWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBmb3Igc3lzZXhpdHMuaApjb25maWd1
cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL2ZpbGUu
aCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1
CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8
IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJl
OjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmln
dXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHN5cy9maWxl
LmggcHJlc2VuY2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6
MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDEx
ODogY2hlY2tpbmcgZm9yIHN5cy9maWxlLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHN5cy9maWxpby5oIHVzYWJpbGl0eQpjb25maWd1cmU6
MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9
IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRl
c3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL2ZpbGlvLmggcHJlc2VuY2UKY29uZmlndXJl
OjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1
cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIHN5cy9m
aWxpby5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVj
a2luZyBzeXMvZXJybm8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIg
IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAk
PyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMz
OiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNo
ZWNraW5nIHN5cy9lcnJuby5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0
ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHll
cwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvZXJybm8uaApjb25maWd1cmU6MTQx
MjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL2lvY3RsLmggdXNh
YmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25m
aWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6MTQwMjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0
ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNDAyNzogJD8gPSAwCmNvbmZpZ3VyZToxNDAz
MDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZToxNDAzMzogJD8gPSAwCmNvbmZpZ3VyZTox
NDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDQ3OiBjaGVja2luZyBzeXMvaW9jdGwuaCBw
cmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2
MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBj
aGVja2luZyBmb3Igc3lzL2lvY3RsLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTQwMDI6IGNoZWNraW5nIHN5cy9wYXJhbS5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQw
MTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAK
Y29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpj
b25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qu
bwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNv
bmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL3BhcmFtLmggcHJlc2VuY2UKY29uZmlndXJlOjE0
MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/ID0gMApjb25maWd1cmU6
MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tpbmcgZm9yIHN5cy9wYXJh
bS5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2lu
ZyBzeXMvcmVzb3VyY2UuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIg
IGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDog
dGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAk
PyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMz
OiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNo
ZWNraW5nIHN5cy9yZXNvdXJjZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNv
bmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvcmVzb3VyY2UuaApjb25maWd1
cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL3NlbGVj
dC5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+
JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1
cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25m
aWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL3Nl
bGVjdC5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmln
dXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6
MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvc2VsZWN0LmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5nIHN5cy9zb2NrZXQuaCB1c2FiaWxpdHkKY29u
ZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAy
MDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25m
dGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1z
IGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1
bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHN5cy9zb2NrZXQuaCBwcmVzZW5jZQpj
b25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNDA2MzogJD8gPSAw
CmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MTE4OiBjaGVja2luZyBm
b3Igc3lzL3NvY2tldC5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEz
OTkzOiBjaGVja2luZyBmb3Igc3lzL3N0YXQuaApjb25maWd1cmU6MTM5OTg6IHJlc3VsdDogeWVz
CmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgc3lzL3N5c2xvZy5oIHVzYWJpbGl0eQpjb25maWd1
cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAk
PyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0gMApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29u
ZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tpbmcgc3lzL3N5c2xvZy5oIHByZXNlbmNlCmNvbmZp
Z3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29u
ZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBz
eXMvc3lzbG9nLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6
IGNoZWNraW5nIHN5cy90aW1lLmggdXNhYmlsaXR5CmNvbmZpZ3VyZToxNDAxNDogY2MgLWMgLWcg
LU8yICBjb25mdGVzdC5jID4mNQpjb25maWd1cmU6MTQwMjA6ICQ/ID0gMApjb25maWd1cmU6MTQw
MjQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNDAy
NzogJD8gPSAwCmNvbmZpZ3VyZToxNDAzMDogdGVzdCAtcyBjb25mdGVzdC5vCmNvbmZpZ3VyZTox
NDAzMzogJD8gPSAwCmNvbmZpZ3VyZToxNDA0MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE0MDQ3
OiBjaGVja2luZyBzeXMvdGltZS5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNv
bmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXMvdGltZS5oCmNvbmZpZ3VyZTox
NDEyNTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjEzOTkzOiBjaGVja2luZyBmb3Igc3lzL3R5cGVz
LmgKY29uZmlndXJlOjEzOTk4OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwMDI6IGNoZWNraW5n
IHN5cy91aW8uaCB1c2FiaWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0
ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAt
eiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAK
Y29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9
IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5n
IHN5cy91aW8uaCBwcmVzZW5jZQpjb25maWd1cmU6MTQwNTc6IGNjIC1FICBjb25mdGVzdC5jCmNv
bmZpZ3VyZToxNDA2MzogJD8gPSAwCmNvbmZpZ3VyZToxNDA4MzogcmVzdWx0OiB5ZXMKY29uZmln
dXJlOjE0MTE4OiBjaGVja2luZyBmb3Igc3lzL3Vpby5oCmNvbmZpZ3VyZToxNDEyNTogcmVzdWx0
OiB5ZXMKY29uZmlndXJlOjE0MDAyOiBjaGVja2luZyBzeXNsb2cuaCB1c2FiaWxpdHkKY29uZmln
dXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDAyMDog
JD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVz
dC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMwOiB0ZXN0IC1zIGNv
bmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0MDQzOiByZXN1bHQ6
IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHN5c2xvZy5oIHByZXNlbmNlCmNvbmZpZ3Vy
ZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmln
dXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciBzeXNs
b2cuaApjb25maWd1cmU6MTQxMjU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tp
bmcgdGVybWlvcy5oIHVzYWJpbGl0eQpjb25maWd1cmU6MTQwMTQ6IGNjIC1jIC1nIC1PMiAgY29u
ZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MDIwOiAkPyA9IDAKY29uZmlndXJlOjE0MDI0OiB0ZXN0
IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQwMjc6ICQ/ID0g
MApjb25maWd1cmU6MTQwMzA6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQwMzM6ICQ/
ID0gMApjb25maWd1cmU6MTQwNDM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDA0NzogY2hlY2tp
bmcgdGVybWlvcy5oIHByZXNlbmNlCmNvbmZpZ3VyZToxNDA1NzogY2MgLUUgIGNvbmZ0ZXN0LmMK
Y29uZmlndXJlOjE0MDYzOiAkPyA9IDAKY29uZmlndXJlOjE0MDgzOiByZXN1bHQ6IHllcwpjb25m
aWd1cmU6MTQxMTg6IGNoZWNraW5nIGZvciB0ZXJtaW9zLmgKY29uZmlndXJlOjE0MTI1OiByZXN1
bHQ6IHllcwpjb25maWd1cmU6MTM5OTM6IGNoZWNraW5nIGZvciB1bmlzdGQuaApjb25maWd1cmU6
MTM5OTg6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDAwMjogY2hlY2tpbmcgdXRpbWUuaCB1c2Fi
aWxpdHkKY29uZmlndXJlOjE0MDE0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZp
Z3VyZToxNDAyMDogJD8gPSAwCmNvbmZpZ3VyZToxNDAyNDogdGVzdCAteiAKCQkJIHx8IHRlc3Qg
ISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MDI3OiAkPyA9IDAKY29uZmlndXJlOjE0MDMw
OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0MDMzOiAkPyA9IDAKY29uZmlndXJlOjE0
MDQzOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQwNDc6IGNoZWNraW5nIHV0aW1lLmggcHJlc2Vu
Y2UKY29uZmlndXJlOjE0MDU3OiBjYyAtRSAgY29uZnRlc3QuYwpjb25maWd1cmU6MTQwNjM6ICQ/
ID0gMApjb25maWd1cmU6MTQwODM6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDExODogY2hlY2tp
bmcgZm9yIHV0aW1lLmgKY29uZmlndXJlOjE0MTI1OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQy
OTc6IGNoZWNraW5nIGZvciByZXNvbHYuaApjb25maWd1cmU6MTQzMTU6IGNjIC1jIC1nIC1PMiAg
Y29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjE0MzIxOiAkPyA9IDAKY29uZmlndXJlOjE0MzI1OiB0
ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQzMjg6ICQ/
ID0gMApjb25maWd1cmU6MTQzMzE6IHRlc3QgLXMgY29uZnRlc3Qubwpjb25maWd1cmU6MTQzMzQ6
ICQ/ID0gMApjb25maWd1cmU6MTQzNDU6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNDM2MTogY2hl
Y2tpbmcgZm9yIG5ldGluZXQvdGNwLmgKY29uZmlndXJlOjE0Mzc5OiBjYyAtYyAtZyAtTzIgIGNv
bmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNDM4NTogJD8gPSAwCmNvbmZpZ3VyZToxNDM4OTogdGVz
dCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE0MzkyOiAkPyA9
IDAKY29uZmlndXJlOjE0Mzk1OiB0ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE0Mzk4OiAk
PyA9IDAKY29uZmlndXJlOjE0NDA5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ0MjU6IGNoZWNr
aW5nIGZvciBzeXMvdWNyZWQuaApjb25maWd1cmU6MTQ0NDU6IGNjIC1jIC1nIC1PMiAgY29uZnRl
c3QuYyA+JjUKY29uZnRlc3QuYzoxMDg6MjM6IHN5cy91Y3JlZC5oOiBObyBzdWNoIGZpbGUgb3Ig
ZGlyZWN0b3J5CmNvbmZpZ3VyZToxNDQ1MTogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIi
CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
ICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5M
REFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcK
fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5E
T1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3
CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwg
I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu
ZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZp
bmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZF
X0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I
IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwg
I2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
SEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElUU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJT19I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V
UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
TE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAxCnwg
I2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAj
aW5jbHVkZSA8c3RkaW8uaD4KfCAjaWYgSEFWRV9TWVNfVFlQRVNfSAp8ICMgaW5jbHVkZSA8c3lz
L3R5cGVzLmg+CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1lTX1NUQVRfSAp8ICMgaW5jbHVkZSA8c3lz
L3N0YXQuaD4KfCAjZW5kaWYKfCAjaWYgU1REQ19IRUFERVJTCnwgIyBpbmNsdWRlIDxzdGRsaWIu
aD4KfCAjIGluY2x1ZGUgPHN0ZGRlZi5oPgp8ICNlbHNlCnwgIyBpZiBIQVZFX1NURExJQl9ICnwg
IyAgaW5jbHVkZSA8c3RkbGliLmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklO
R19ICnwgIyBpZiAhU1REQ19IRUFERVJTICYmIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNsdWRlIDxt
ZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYKfCAjaWYg
SEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYKfCAjaWYgSEFW
RV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbHNlCnwgIyBpZiBIQVZF
X1NURElOVF9ICnwgIyAgaW5jbHVkZSA8c3RkaW50Lmg+CnwgIyBlbmRpZgp8ICNlbmRpZgp8ICNp
ZiBIQVZFX1VOSVNURF9ICnwgIyBpbmNsdWRlIDx1bmlzdGQuaD4KfCAjZW5kaWYKfCAjaWZkZWYg
SEFWRV9TWVNfUEFSQU1fSAp8ICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KfCAjZW5kaWYKfCAKfCAK
fCAjaW5jbHVkZSA8c3lzL3VjcmVkLmg+CmNvbmZpZ3VyZToxNDQ3NTogcmVzdWx0OiBubwpjb25m
aWd1cmU6MTQ0OTM6IGNoZWNraW5nIGZvciBzaWdhY3Rpb24KY29uZmlndXJlOjE0NTUwOiBjYyAt
byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0NTU2OiAkPyA9
IDAKY29uZmlndXJlOjE0NTYwOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MTQ1NjM6ICQ/ID0gMApjb25maWd1cmU6MTQ1NjY6IHRlc3QgLXMgY29uZnRl
c3QKY29uZmlndXJlOjE0NTY5OiAkPyA9IDAKY29uZmlndXJlOjE0NTgxOiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTQ0OTM6IGNoZWNraW5nIGZvciBzaWdzZXQKY29uZmlndXJlOjE0NTUwOiBjYyAt
byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjE0NTU2OiAkPyA9
IDAKY29uZmlndXJlOjE0NTYwOiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVy
cgpjb25maWd1cmU6MTQ1NjM6ICQ/ID0gMApjb25maWd1cmU6MTQ1NjY6IHRlc3QgLXMgY29uZnRl
c3QKY29uZmlndXJlOjE0NTY5OiAkPyA9IDAKY29uZmlndXJlOjE0NTgxOiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTQ3NTk6IGNoZWNraW5nIGZvciBzb2NrZXQKY29uZmlndXJlOjE0ODE2OiBjYyAt
byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKVW5kZWZpbmVkCQkJZmlyc3QgcmVm
ZXJlbmNlZAogc3ltYm9sICAJCQkgICAgaW4gZmlsZQpzb2NrZXQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvdmFyL3RtcC8vY2NLRHBzTUYubwpsZDogZmF0YWw6IFN5bWJvbCByZWZlcmVu
Y2luZyBlcnJvcnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCBy
ZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxNDgyMjogJD8gPSAxCmNvbmZpZ3VyZTog
ZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFD
S0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tB
R0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tB
R0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAj
ZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZF
UlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZp
bmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJT
SU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hF
QURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19T
VEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19I
IDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8
ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNk
ZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUg
RVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRf
SCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJU
X0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwg
I2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmlu
ZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9M
T0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ
X0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TSEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNFWElUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19GSUxJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUg
SEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9S
RVNPTFZfSCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9T
SUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAg
Ki8KfCAvKiBEZWZpbmUgc29ja2V0IHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxs
aW1pdHMuaD4gZGVjbGFyZXMgc29ja2V0Lgp8ICAgIEZvciBleGFtcGxlLCBIUC1VWCAxMWkgPGxp
bWl0cy5oPiBkZWNsYXJlcyBnZXR0aW1lb2ZkYXkuICAqLwp8ICNkZWZpbmUgc29ja2V0IGlubm9j
dW91c19zb2NrZXQKfCAKfCAvKiBTeXN0ZW0gaGVhZGVyIHRvIGRlZmluZSBfX3N0dWIgbWFjcm9z
IGFuZCBob3BlZnVsbHkgZmV3IHByb3RvdHlwZXMsCnwgICAgIHdoaWNoIGNhbiBjb25mbGljdCB3
aXRoIGNoYXIgc29ja2V0ICgpOyBiZWxvdy4KfCAgICAgUHJlZmVyIDxsaW1pdHMuaD4gdG8gPGFz
c2VydC5oPiBpZiBfX1NURENfXyBpcyBkZWZpbmVkLCBzaW5jZQp8ICAgICA8bGltaXRzLmg+IGV4
aXN0cyBldmVuIG9uIGZyZWVzdGFuZGluZyBjb21waWxlcnMuICAqLwp8IAp8ICNpZmRlZiBfX1NU
RENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5o
Pgp8ICNlbmRpZgp8IAp8ICN1bmRlZiBzb2NrZXQKfCAKfCAvKiBPdmVycmlkZSBhbnkgZ2NjMiBp
bnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuICAqLwp8ICNpZmRlZiBfX2NwbHVz
cGx1cwp8IGV4dGVybiAiQyIKfCB7CnwgI2VuZGlmCnwgLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBp
bnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgp8ICAgIGJ1aWx0aW4gYW5k
IHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgY2hh
ciBzb2NrZXQgKCk7CnwgLyogVGhlIEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5j
dGlvbnMgd2hpY2ggaXQgaW1wbGVtZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZ
Uy4gIFNvbWUgZnVuY3Rpb25zIGFyZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3Rh
cnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYg
ZGVmaW5lZCAoX19zdHViX3NvY2tldCkgfHwgZGVmaW5lZCAoX19zdHViX19fc29ja2V0KQp8IGNo
b2tlIG1lCnwgI2Vsc2UKfCBjaGFyICgqZikgKCkgPSBzb2NrZXQ7CnwgI2VuZGlmCnwgI2lmZGVm
IF9fY3BsdXNwbHVzCnwgfQp8ICNlbmRpZgp8IAp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJu
IGYgIT0gc29ja2V0Owp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTQ4NDc6IHJl
c3VsdDogbm8KY29uZmlndXJlOjE0ODU0OiBjaGVja2luZyBmb3IgbWFpbiBpbiAtbHNvY2tldApj
b25maWd1cmU6MTQ4Nzg6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxzb2Nr
ZXQgICA+JjUKY29uZmlndXJlOjE0ODg0OiAkPyA9IDAKY29uZmlndXJlOjE0ODg4OiB0ZXN0IC16
IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTQ4OTE6ICQ/ID0gMApj
b25maWd1cmU6MTQ4OTQ6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE0ODk3OiAkPyA9IDAK
Y29uZmlndXJlOjE0OTEwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTQ5MjI6IGNoZWNraW5nIGZv
ciBtYWluIGluIC1sbmV0CmNvbmZpZ3VyZToxNDk0NjogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAg
Y29uZnRlc3QuYyAtbG5ldCAgLWxzb2NrZXQgID4mNQpsZDogZmF0YWw6IGxpYnJhcnkgLWxuZXQ6
IG5vdCBmb3VuZApsZDogZmF0YWw6IEZpbGUgcHJvY2Vzc2luZyBlcnJvcnMuIE5vIG91dHB1dCB3
cml0dGVuIHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCmNv
bmZpZ3VyZToxNDk1MjogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8q
IGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQ
QUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUg
UEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmlu
ZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04g
IjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExE
QVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9N
SU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBI
QVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9T
WVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
VERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZ
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwg
I2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERD
X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19X
QUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFf
TkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQ
VF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8
ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5l
IEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZF
X01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0Rf
SCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9TSEFET1dfSCAxCnwg
I2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZp
bmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElUU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJT19IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NZU0xPR19IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTTE9HX0ggMQp8ICNk
ZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmlu
ZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAxCnwgI2RlZmluZSBIQVZF
X05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFW
RV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJTT0NLRVQgMQp8IC8qIGVuZCBjb25mZGVmcy5o
LiAgKi8KfCAKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IG1haW4gKCk7CnwgICA7CnwgICByZXR1
cm4gMDsKfCB9CmNvbmZpZ3VyZToxNDk3ODogcmVzdWx0OiBubwpjb25maWd1cmU6MTQ5OTA6IGNo
ZWNraW5nIGZvciBtYWluIGluIC1sbnNsX3MKY29uZmlndXJlOjE1MDE0OiBjYyAtbyBjb25mdGVz
dCAtZyAtTzIgICBjb25mdGVzdC5jIC1sbnNsX3MgIC1sc29ja2V0ICA+JjUKbGQ6IGZhdGFsOiBs
aWJyYXJ5IC1sbnNsX3M6IG5vdCBmb3VuZApsZDogZmF0YWw6IEZpbGUgcHJvY2Vzc2luZyBlcnJv
cnMuIE5vIG91dHB1dCB3cml0dGVuIHRvIGNvbmZ0ZXN0CmNvbGxlY3QyOiBsZCByZXR1cm5lZCAx
IGV4aXQgc3RhdHVzCmNvbmZpZ3VyZToxNTAyMDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHBy
b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F
ICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP
TiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ
T1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9Q
RU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAz
MjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9W
RU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENI
IDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8
ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
aW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
SEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIi
CnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2Rl
ZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBI
QVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dS
UF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAx
CnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNk
ZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFW
RV9TSEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RS
SU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElU
U19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJ
T19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9D
VExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JF
U09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklT
VERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAx
CnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04g
MQp8ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJTT0NLRVQgMQp8IC8q
IGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAKfCBpbnQKfCBtYWluICgpCnwgewp8IG1haW4gKCk7
CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CmNvbmZpZ3VyZToxNTA0NjogcmVzdWx0OiBubwpjb25m
aWd1cmU6MTUwNTg6IGNoZWNraW5nIGZvciBtYWluIGluIC1sbnNsCmNvbmZpZ3VyZToxNTA4Mjog
Y2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbG5zbCAgLWxzb2NrZXQgID4mNQpj
b25maWd1cmU6MTUwODg6ICQ/ID0gMApjb25maWd1cmU6MTUwOTI6IHRlc3QgLXogCgkJCSB8fCB0
ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTA5NTogJD8gPSAwCmNvbmZpZ3VyZTox
NTA5ODogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTUxMDE6ICQ/ID0gMApjb25maWd1cmU6
MTUxMTQ6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTEyNjogY2hlY2tpbmcgZm9yIHNvY2tldCBp
biAtbGluZXQKY29uZmlndXJlOjE1MTU2OiBjYyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVz
dC5jIC1saW5ldCAgLWxuc2wgLWxzb2NrZXQgID4mNQpsZDogZmF0YWw6IGxpYnJhcnkgLWxpbmV0
OiBub3QgZm91bmQKbGQ6IGZhdGFsOiBGaWxlIHByb2Nlc3NpbmcgZXJyb3JzLiBObyBvdXRwdXQg
d3JpdHRlbiB0byBjb25mdGVzdApjb2xsZWN0MjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpj
b25maWd1cmU6MTUxNjI6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAv
KiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUg
UEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5l
IFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZp
bmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9O
ICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBM
REFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05f
TUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUg
SEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVf
U1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9S
WV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNf
SCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1RE
Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
V0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBB
X05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZ
UFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEK
fCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmlu
ZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFW
RV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdE
X0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU0hBRE9XX0ggMQp8
ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVm
aW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTRVhJVFNfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMSU9fSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNMT0dfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU0xPR19IIDEKfCAj
ZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZp
bmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVTT0xWX0ggMQp8ICNkZWZpbmUgSEFW
RV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhB
VkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCU09DS0VUIDEKfCAjZGVmaW5lIEhBVkVfTElC
TlNMIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgCnwgLyogT3ZlcnJpZGUgYW55IGdjYzIg
aW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLiAgKi8KfCAjaWZkZWYgX19jcGx1
c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgLyogV2UgdXNlIGNoYXIgYmVjYXVzZSBpbnQg
bWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgZ2NjMgp8ICAgIGJ1aWx0aW4gYW5kIHRo
ZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgY2hhciBz
b2NrZXQgKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBzb2NrZXQgKCk7CnwgICA7CnwgICByZXR1
cm4gMDsKfCB9CmNvbmZpZ3VyZToxNTE4ODogcmVzdWx0OiBubwpjb25maWd1cmU6MTUyMDA6IGNo
ZWNraW5nIGZvciBtYWluIGluIC1sZ2VuCmNvbmZpZ3VyZToxNTIyNDogY2MgLW8gY29uZnRlc3Qg
LWcgLU8yICAgY29uZnRlc3QuYyAtbGdlbiAgLWxuc2wgLWxzb2NrZXQgID4mNQpjb25maWd1cmU6
MTUyMzA6ICQ/ID0gMApjb25maWd1cmU6MTUyMzQ6IHRlc3QgLXogCgkJCSB8fCB0ZXN0ICEgLXMg
Y29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTIzNzogJD8gPSAwCmNvbmZpZ3VyZToxNTI0MDogdGVz
dCAtcyBjb25mdGVzdApjb25maWd1cmU6MTUyNDM6ICQ/ID0gMApjb25maWd1cmU6MTUyNTY6IHJl
c3VsdDogeWVzCmNvbmZpZ3VyZToxNTI3MTogY2hlY2tpbmcgZm9yIHNlbGVjdApjb25maWd1cmU6
MTUzMjg6IGNjIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnZW4gLWxuc2wgLWxz
b2NrZXQgID4mNQpjb25maWd1cmU6MTUzMzQ6ICQ/ID0gMApjb25maWd1cmU6MTUzMzg6IHRlc3Qg
LXogCgkJCSB8fCB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNTM0MTogJD8gPSAw
CmNvbmZpZ3VyZToxNTM0NDogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTUzNDc6ICQ/ID0g
MApjb25maWd1cmU6MTUzNTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToxNTM3NzogY2hlY2tpbmcg
Zm9yIHN5cy9zZWxlY3QuaApjb25maWd1cmU6MTUzODI6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZTox
NTM3NzogY2hlY2tpbmcgZm9yIHN5cy9zb2NrZXQuaApjb25maWd1cmU6MTUzODI6IHJlc3VsdDog
eWVzCmNvbmZpZ3VyZToxNTUyMjogY2hlY2tpbmcgdHlwZXMgb2YgYXJndW1lbnRzIGZvciBzZWxl
Y3QKY29uZmlndXJlOjE1NTU1OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3Vy
ZToxNTU2MTogJD8gPSAwCmNvbmZpZ3VyZToxNTU2NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAt
cyBjb25mdGVzdC5lcnIKY29uZmlndXJlOjE1NTY4OiAkPyA9IDAKY29uZmlndXJlOjE1NTcxOiB0
ZXN0IC1zIGNvbmZ0ZXN0Lm8KY29uZmlndXJlOjE1NTc0OiAkPyA9IDAKY29uZmlndXJlOjE1NTkw
OiByZXN1bHQ6IGludCxmZF9zZXQgKixzdHJ1Y3QgdGltZXZhbCAqCmNvbmZpZ3VyZToxNTYyMDog
Y2hlY2tpbmcgZm9yIHBvbGwKY29uZmlndXJlOjE1Njc3OiBjYyAtbyBjb25mdGVzdCAtZyAtTzIg
ICBjb25mdGVzdC5jIC1sZ2VuIC1sbnNsIC1sc29ja2V0ICA+JjUKY29uZmlndXJlOjE1NjgzOiAk
PyA9IDAKY29uZmlndXJlOjE1Njg3OiB0ZXN0IC16IAoJCQkgfHwgdGVzdCAhIC1zIGNvbmZ0ZXN0
LmVycgpjb25maWd1cmU6MTU2OTA6ICQ/ID0gMApjb25maWd1cmU6MTU2OTM6IHRlc3QgLXMgY29u
ZnRlc3QKY29uZmlndXJlOjE1Njk2OiAkPyA9IDAKY29uZmlndXJlOjE1NzA4OiByZXN1bHQ6IHll
cwpjb25maWd1cmU6MTU3MzI6IGNoZWNraW5nIHBvbGwuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE1
NzQ0OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZpZ3VyZToxNTc1MDogJD8gPSAw
CmNvbmZpZ3VyZToxNTc1NDogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIK
Y29uZmlndXJlOjE1NzU3OiAkPyA9IDAKY29uZmlndXJlOjE1NzYwOiB0ZXN0IC1zIGNvbmZ0ZXN0
Lm8KY29uZmlndXJlOjE1NzYzOiAkPyA9IDAKY29uZmlndXJlOjE1NzczOiByZXN1bHQ6IHllcwpj
b25maWd1cmU6MTU3Nzc6IGNoZWNraW5nIHBvbGwuaCBwcmVzZW5jZQpjb25maWd1cmU6MTU3ODc6
IGNjIC1FICBjb25mdGVzdC5jCmNvbmZpZ3VyZToxNTc5MzogJD8gPSAwCmNvbmZpZ3VyZToxNTgx
MzogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODQ4OiBjaGVja2luZyBmb3IgcG9sbC5oCmNvbmZp
Z3VyZToxNTg1NTogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjE1ODgzOiBjaGVja2luZyBzeXMvZXBv
bGwuaCB1c2FiaWxpdHkKY29uZmlndXJlOjE1ODk1OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg
PiY1CmNvbmZ0ZXN0LmM6MTE1OjIzOiBzeXMvZXBvbGwuaDogTm8gc3VjaCBmaWxlIG9yIGRpcmVj
dG9yeQpjb25maWd1cmU6MTU5MDE6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBwcm9ncmFtIHdh
czoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNk
ZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gIiIKfCAj
ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgp8
ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBPUEVOTERBUF9W
RVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIwMzI3CnwgI2Rl
ZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZF
UlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRDSCAyNwp8ICNk
ZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5l
IEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZF
X01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfSU5U
VFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1RE
X0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAiIgp8ICNkZWZp
bmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNkZWZpbmUgSEFW
RV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAjZGVmaW5lIEhB
VkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9GQ05U
TF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9HUlBfSCAxCnwg
I2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQp8ICNkZWZp
bmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhB
VkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhBVkVfU0hBRE9X
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEK
fCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTRVhJVFNfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMSU9fSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lPQ1RMX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19SRVNPVVJDRV9I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tF
VF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TWVNM
T0dfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQ
RVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU0xPR19I
IDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8
ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVTT0xWX0ggMQp8ICNkZWZp
bmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9OIDEKfCAjZGVm
aW5lIEhBVkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCU09DS0VUIDEKfCAjZGVmaW5lIEhB
VkVfTElCTlNMIDEKfCAjZGVmaW5lIEhBVkVfTElCR0VOIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NF
TEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIFNFTEVDVF9U
WVBFX0FSRzEgaW50CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcyMzQgKGZkX3NldCAqKQp8ICNk
ZWZpbmUgU0VMRUNUX1RZUEVfQVJHNSAoc3RydWN0IHRpbWV2YWwgKikKfCAjZGVmaW5lIEhBVkVf
UE9MTCAxCnwgI2RlZmluZSBIQVZFX1BPTExfSCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8
ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxz
eXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxz
eXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxp
Yi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RETElCX0gK
fCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RS
SU5HX0gKfCAjIGlmICFTVERDX0hFQURFUlMgJiYgSEFWRV9NRU1PUllfSAp8ICMgIGluY2x1ZGUg
PG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUgPHN0cmluZy5oPgp8ICNlbmRpZgp8ICNp
ZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3RyaW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBI
QVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhB
VkVfU1RESU5UX0gKfCAjICBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwg
I2lmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVuaXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNs
dWRlIDxzeXMvZXBvbGwuaD4KY29uZmlndXJlOjE1OTI0OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTox
NTkyODogY2hlY2tpbmcgc3lzL2Vwb2xsLmggcHJlc2VuY2UKY29uZmlndXJlOjE1OTM4OiBjYyAt
RSAgY29uZnRlc3QuYwpjb25mdGVzdC5jOjgxOjIzOiBzeXMvZXBvbGwuaDogTm8gc3VjaCBmaWxl
IG9yIGRpcmVjdG9yeQpjb25maWd1cmU6MTU5NDQ6ICQ/ID0gMQpjb25maWd1cmU6IGZhaWxlZCBw
cm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5lIFBBQ0tBR0VfTkFN
RSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ
T04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF
UE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAiCnwgI2RlZmluZSBP
UEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OIDIw
MzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAjZGVmaW5lIExEQVBf
VkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9QQVRD
SCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK
fCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwgI2Rl
ZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l
IEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEKfCAjZGVmaW5lIEhB
VkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVmaW5lIEVYRUVYVCAi
Igp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElSRU5UX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9JTkVUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FTU0VSVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0ggMQp8ICNkZWZpbmUg
SEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNkZWZpbmUgSEFWRV9H
UlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhBVkVfTE9DQUxFX0gg
MQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAj
ZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKfCAjZGVmaW5lIEhB
VkVfU0hBRE9XX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2RlZmluZSBIQVZFX1NU
UklOR19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTRVhJ
VFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklM
SU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0lP
Q1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19S
RVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19TWVNMT0dfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwgI2RlZmluZSBIQVZF
X1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVmaW5lIEhBVkVfVU5J
U1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfUkVTT0xWX0gg
MQp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhBVkVfU0lHQUNUSU9O
IDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCU09DS0VUIDEKfCAj
ZGVmaW5lIEhBVkVfTElCTlNMIDEKfCAjZGVmaW5lIEhBVkVfTElCR0VOIDEKfCAjZGVmaW5lIEhB
VkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5l
IFNFTEVDVF9UWVBFX0FSRzEgaW50CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcyMzQgKGZkX3Nl
dCAqKQp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHNSAoc3RydWN0IHRpbWV2YWwgKikKfCAjZGVm
aW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1BPTExfSCAxCnwgLyogZW5kIGNvbmZkZWZz
LmguICAqLwp8ICNpbmNsdWRlIDxzeXMvZXBvbGwuaD4KY29uZmlndXJlOjE1OTY0OiByZXN1bHQ6
IG5vCmNvbmZpZ3VyZToxNTk5OTogY2hlY2tpbmcgZm9yIHN5cy9lcG9sbC5oCmNvbmZpZ3VyZTox
NjAwNjogcmVzdWx0OiBubwpjb25maWd1cmU6MTYwNzA6IGNoZWNraW5nIGRlY2xhcmF0aW9uIG9m
IHN5c19lcnJsaXN0CmNvbmZpZ3VyZToxNjA5ODogY2MgLWMgLWcgLU8yICBjb25mdGVzdC5jID4m
NQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiBgbWFpbic6CmNvbmZ0ZXN0LmM6OTI6IGVycm9yOiBg
c3lzX2Vycmxpc3QnIHVuZGVjbGFyZWQgKGZpcnN0IHVzZSBpbiB0aGlzIGZ1bmN0aW9uKQpjb25m
dGVzdC5jOjkyOiBlcnJvcjogKEVhY2ggdW5kZWNsYXJlZCBpZGVudGlmaWVyIGlzIHJlcG9ydGVk
IG9ubHkgb25jZQpjb25mdGVzdC5jOjkyOiBlcnJvcjogZm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBw
ZWFycyBpbi4pCmNvbmZpZ3VyZToxNjEwNDogJD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dy
YW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICIi
CnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAi
Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JU
ICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIKfCAjZGVmaW5lIE9QRU5M
REFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT04gMjAzMjcK
fCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNkZWZpbmUgTERBUF9WRU5E
T1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX1BBVENIIDI3
CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5l
IEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFW
RV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9V
TklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZpbmUgRVhFRVhUICIiCnwg
I2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCnwgI2RlZmlu
ZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNTRVJUX0ggMQp8ICNkZWZp
bmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZF
X0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2RlZmluZSBIQVZFX0dSUF9I
IDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9MT0NBTEVfSCAxCnwg
I2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZp
bmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8ICNkZWZpbmUgSEFWRV9T
SEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5H
X0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNFWElUU19I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxJT19I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfSU9DVExf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1JFU09V
UkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNf
U09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
X1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lT
TE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZpbmUgSEFWRV9VTklTVERf
SCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFWRV9SRVNPTFZfSCAxCnwg
I2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFWRV9TSUdBQ1RJT04gMQp8
ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJTT0NLRVQgMQp8ICNkZWZp
bmUgSEFWRV9MSUJOU0wgMQp8ICNkZWZpbmUgSEFWRV9MSUJHRU4gMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgU0VM
RUNUX1RZUEVfQVJHMSBpbnQKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FSRzIzNCAoZmRfc2V0ICop
CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkc1IChzdHJ1Y3QgdGltZXZhbCAqKQp8ICNkZWZpbmUg
SEFWRV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUE9MTF9IIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g
ICovCnwgCnwgI2luY2x1ZGUgPHN0ZGlvLmg+CnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNp
bmNsdWRlIDxlcnJuby5oPgp8ICNpZmRlZiBXSU5OVAp8ICNpbmNsdWRlIDxzdGRsaWIuaD4KfCAj
ZW5kaWYKfCBpbnQKfCBtYWluICgpCnwgewp8IGNoYXIgKmMgPSAoY2hhciAqKSAqc3lzX2Vycmxp
c3QKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE2MTI5OiByZXN1bHQ6IG5vCmNv
bmZpZ3VyZToxNjE0MDogY2hlY2tpbmcgZXhpc3RlbmNlIG9mIHN5c19lcnJsaXN0CmNvbmZpZ3Vy
ZToxNjE2MjogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbGdlbiAtbG5zbCAt
bHNvY2tldCAgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uIGBtYWluJzoKY29uZnRlc3QuYzo4
NzogZXJyb3I6IGBzeXNfZXJybGlzdCcgdW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVu
Y3Rpb24pCmNvbmZ0ZXN0LmM6ODc6IGVycm9yOiAoRWFjaCB1bmRlY2xhcmVkIGlkZW50aWZpZXIg
aXMgcmVwb3J0ZWQgb25seSBvbmNlCmNvbmZ0ZXN0LmM6ODc6IGVycm9yOiBmb3IgZWFjaCBmdW5j
dGlvbiBpdCBhcHBlYXJzIGluLikKY29uZmlndXJlOjE2MTY4OiAkPyA9IDEKY29uZmlndXJlOiBm
YWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNL
QUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FH
RV9CVUdSRVBPUlQgIiIKfCAjZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNk
ZWZpbmUgT1BFTkxEQVBfVkVSU0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVS
U0lPTiAyMDMyNwp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmlu
ZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJ
T05fUEFUQ0ggMjcKfCAjZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVB
REVSUyAxCnwgI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NU
QVRfSCAxCnwgI2RlZmluZSBIQVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0gg
MQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwg
I2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2Rl
ZmluZSBIQVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBF
WEVFWFQgIiIKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9I
IDEKfCAjZGVmaW5lIEhBVkVfU1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9I
IDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRf
SCAxCnwgI2RlZmluZSBIQVZFX0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAj
ZGVmaW5lIEhBVkVfRkNOVExfSCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5l
IEhBVkVfR1JQX0ggMQp8ICNkZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX0xP
Q0FMRV9IIDEKfCAjZGVmaW5lIEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllf
SCAxCnwgI2RlZmluZSBIQVZFX1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NIQURPV19IIDEKfCAjZGVmaW5lIEhBVkVfU1REREVGX0ggMQp8ICNkZWZpbmUg
SEFWRV9TVFJJTkdfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZF
X1NZU0VYSVRTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX0ZJTElPX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZF
X1NZU19JT0NUTF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFW
RV9TWVNfUkVTT1VSQ0VfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNfU1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVm
aW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVUlPX0ggMQp8ICNkZWZp
bmUgSEFWRV9TWVNMT0dfSCAxCnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBI
QVZFX1VOSVNURF9IIDEKfCAjZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1JF
U09MVl9IIDEKfCAjZGVmaW5lIEhBVkVfTkVUSU5FVF9UQ1BfSCAxCnwgI2RlZmluZSBIQVZFX1NJ
R0FDVElPTiAxCnwgI2RlZmluZSBIQVZFX1NJR1NFVCAxCnwgI2RlZmluZSBIQVZFX0xJQlNPQ0tF
VCAxCnwgI2RlZmluZSBIQVZFX0xJQk5TTCAxCnwgI2RlZmluZSBIQVZFX0xJQkdFTiAxCnwgI2Rl
ZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwg
I2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcxIGludAp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHMjM0
IChmZF9zZXQgKikKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FSRzUgKHN0cnVjdCB0aW1ldmFsICop
CnwgI2RlZmluZSBIQVZFX1BPTEwgMQp8ICNkZWZpbmUgSEFWRV9QT0xMX0ggMQp8ICNkZWZpbmUg
REVDTF9TWVNfRVJSTElTVCAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxl
cnJuby5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgY2hhciAqYyA9IChjaGFyICopICpzeXNfZXJy
bGlzdAp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6MTYxOTM6IHJlc3VsdDogbm8K
Y29uZmlndXJlOjE2MjA4OiBjaGVja2luZyBmb3Igc3RyZXJyb3IKY29uZmlndXJlOjE2MjY1OiBj
YyAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sZ2VuIC1sbnNsIC1sc29ja2V0ICA+
JjUKY29uZmlndXJlOjE2MjcxOiAkPyA9IDAKY29uZmlndXJlOjE2Mjc1OiB0ZXN0IC16IAoJCQkg
fHwgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgpjb25maWd1cmU6MTYyNzg6ICQ/ID0gMApjb25maWd1
cmU6MTYyODE6IHRlc3QgLXMgY29uZnRlc3QKY29uZmlndXJlOjE2Mjg0OiAkPyA9IDAKY29uZmln
dXJlOjE2Mjk2OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTYyMDg6IGNoZWNraW5nIGZvciBzdHJl
cnJvcl9yCmNvbmZpZ3VyZToxNjI2NTogY2MgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3Qu
YyAtbGdlbiAtbG5zbCAtbHNvY2tldCAgPiY1CmNvbmZpZ3VyZToxNjI3MTogJD8gPSAwCmNvbmZp
Z3VyZToxNjI3NTogdGVzdCAteiAKCQkJIHx8IHRlc3QgISAtcyBjb25mdGVzdC5lcnIKY29uZmln
dXJlOjE2Mjc4OiAkPyA9IDAKY29uZmlndXJlOjE2MjgxOiB0ZXN0IC1zIGNvbmZ0ZXN0CmNvbmZp
Z3VyZToxNjI4NDogJD8gPSAwCmNvbmZpZ3VyZToxNjI5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJl
OjE2MzA4OiBjaGVja2luZyBub24tcG9zaXggc3RyZXJyb3Jfcgpjb25maWd1cmU6MTYzNTE6IGNj
IC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gYG1haW4n
Ogpjb25mdGVzdC5jOjkwOiBlcnJvcjogaW52YWxpZCB0eXBlIGFyZ3VtZW50IG9mIGB1bmFyeSAq
Jwpjb25mdGVzdC5jOjkxOiB3YXJuaW5nOiBpbml0aWFsaXphdGlvbiBtYWtlcyBwb2ludGVyIGZy
b20gaW50ZWdlciB3aXRob3V0IGEgY2FzdApjb25maWd1cmU6MTYzNTc6ICQ/ID0gMQpjb25maWd1
cmU6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oLiAgKi8KfCAKfCAjZGVmaW5l
IFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQ
QUNLQUdFX1ZFUlNJT04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQ
QUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgT1BFTkxEQVBfUEFDS0FHRSAiT3BlbkxEQVAi
CnwgI2RlZmluZSBPUEVOTERBUF9WRVJTSU9OICIyLjMuMjciCnwgI2RlZmluZSBMREFQX1ZFTkRP
Ul9WRVJTSU9OIDIwMzI3CnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJTSU9OX01BSk9SIDIKfCAj
ZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUlOT1IgMwp8ICNkZWZpbmUgTERBUF9WRU5ET1Jf
VkVSU0lPTl9QQVRDSCAyNwp8ICNkZWZpbmUgSEFWRV9NS1ZFUlNJT04gMQp8ICNkZWZpbmUgU1RE
Q19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9T
WVNfU1RBVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1RETElCX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJ
TkdfSCAxCnwgI2RlZmluZSBIQVZFX01FTU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19I
IDEKfCAjZGVmaW5lIEhBVkVfSU5UVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NURElOVF9IIDEK
fCAjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9ETEZDTl9IIDEKfCAjZGVm
aW5lIEVYRUVYVCAiIgp8ICNkZWZpbmUgU1REQ19IRUFERVJTIDEKfCAjZGVmaW5lIEhBVkVfRElS
RU5UX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKfCAjZGVmaW5lIEhBVkVfQVJQQV9J
TkVUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX05BTUVTRVJfSCAxCnwgI2RlZmluZSBIQVZFX0FT
U0VSVF9IIDEKfCAjZGVmaW5lIEhBVkVfQ1JZUFRfSCAxCnwgI2RlZmluZSBIQVZFX0VSUk5PX0gg
MQp8ICNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKfCAjZGVmaW5lIEhBVkVfR0VUT1BUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9HUlBfSCAxCnwgI2RlZmluZSBIQVZFX0xJTUlUU19IIDEKfCAjZGVmaW5lIEhB
VkVfTE9DQUxFX0ggMQp8ICNkZWZpbmUgSEFWRV9NQUxMT0NfSCAxCnwgI2RlZmluZSBIQVZFX01F
TU9SWV9IIDEKfCAjZGVmaW5lIEhBVkVfUFdEX0ggMQp8ICNkZWZpbmUgSEFWRV9TR1RUWV9IIDEK
fCAjZGVmaW5lIEhBVkVfU0hBRE9XX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERERUZfSCAxCnwgI2Rl
ZmluZSBIQVZFX1NUUklOR19IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTRVhJVFNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19GSUxFX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfRklMSU9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19FUlJOT19IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX0lPQ1RMX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCnwgI2RlZmlu
ZSBIQVZFX1NZU19SRVNPVVJDRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19TWVNMT0dfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19USU1FX0ggMQp8
ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCnwg
I2RlZmluZSBIQVZFX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKfCAjZGVm
aW5lIEhBVkVfVU5JU1REX0ggMQp8ICNkZWZpbmUgSEFWRV9VVElNRV9IIDEKfCAjZGVmaW5lIEhB
VkVfUkVTT0xWX0ggMQp8ICNkZWZpbmUgSEFWRV9ORVRJTkVUX1RDUF9IIDEKfCAjZGVmaW5lIEhB
VkVfU0lHQUNUSU9OIDEKfCAjZGVmaW5lIEhBVkVfU0lHU0VUIDEKfCAjZGVmaW5lIEhBVkVfTElC
U09DS0VUIDEKfCAjZGVmaW5lIEhBVkVfTElCTlNMIDEKfCAjZGVmaW5lIEhBVkVfTElCR0VOIDEK
fCAjZGVmaW5lIEhBVkVfU1lTX1NFTEVDVF9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NPQ0tFVF9I
IDEKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FSRzEgaW50CnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9B
UkcyMzQgKGZkX3NldCAqKQp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHNSAoc3RydWN0IHRpbWV2
YWwgKikKfCAjZGVmaW5lIEhBVkVfUE9MTCAxCnwgI2RlZmluZSBIQVZFX1BPTExfSCAxCnwgI2Rl
ZmluZSBERUNMX1NZU19FUlJMSVNUIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1IgMQp8ICNkZWZp
bmUgSEFWRV9TVFJFUlJPUl9SIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg
PHN0cmluZy5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgICAgLyogZnJvbSBhdXRvY29uZiAyLjU5
ICovCnwgCQkJCWNoYXIgYnVmWzEwMF07CnwgCQkJCWNoYXIgeCA9ICpzdHJlcnJvcl9yICgwLCBi
dWYsIHNpemVvZiBidWYpOwp8IAkJCQljaGFyICpwID0gc3RyZXJyb3JfciAoMCwgYnVmLCBzaXpl
b2YgYnVmKTsKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjE2NDI0OiByZXN1
bHQ6IG5vCmNvbmZpZ3VyZToxNjU4NjogY2hlY2tpbmcgcmVnZXguaCB1c2FiaWxpdHkKY29uZmln
dXJlOjE2NTk4OiBjYyAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CkluIGZpbGUgaW5jbHVkZWQg
ZnJvbSBjb25mdGVzdC5jOjExODoKL3Vzci9sb2NhbC9pbmNsdWRlL3JlZ2V4Lmg6Mjk3OiBlcnJv
cjogc3ludGF4IGVycm9yIGJlZm9yZSAiaW50IgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDoz
MDY6IGVycm9yOiBzeW50YXggZXJyb3IgYmVmb3JlICJpbnQiCi91c3IvbG9jYWwvaW5jbHVkZS9y
ZWdleC5oOjMwODogZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgInJlX3ZvaWQiCi91c3IvbG9j
YWwvaW5jbHVkZS9yZWdleC5oOjMwOTogZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgInNpemVf
dCIKY29uZmlndXJlOjE2NjA0OiAkPyA9IDEKY29uZmlndXJlOiBmYWlsZWQgcHJvZ3JhbSB3YXM6
CnwgLyogY29uZmRlZnMuaC4gICovCnwgCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVm
aW5lIFBBQ0tBR0VfVEFSTkFNRSAiIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2Rl
ZmluZSBQQUNLQUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIKfCAj
ZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgp8ICNkZWZpbmUgT1BFTkxEQVBfVkVS
U0lPTiAiMi4zLjI3Igp8ICNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTiAyMDMyNwp8ICNkZWZp
bmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9WRVJT
SU9OX01JTk9SIDMKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fUEFUQ0ggMjcKfCAjZGVm
aW5lIEhBVkVfTUtWRVJTSU9OIDEKfCAjZGVmaW5lIFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBI
QVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCnwgI2RlZmluZSBI
QVZFX1NURExJQl9IIDEKfCAjZGVmaW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9N
RU1PUllfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX0lOVFRZ
UEVTX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERJTlRfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9I
IDEKfCAjZGVmaW5lIEhBVkVfRExGQ05fSCAxCnwgI2RlZmluZSBFWEVFWFQgIiIKfCAjZGVmaW5l
IFNURENfSEVBREVSUyAxCnwgI2RlZmluZSBIQVZFX0RJUkVOVF9IIDEKfCAjZGVmaW5lIEhBVkVf
U1lTX1dBSVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IIDEKfCAjZGVmaW5lIEhBVkVf
QVJQQV9OQU1FU0VSX0ggMQp8ICNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCnwgI2RlZmluZSBIQVZF
X0NSWVBUX0ggMQp8ICNkZWZpbmUgSEFWRV9FUlJOT19IIDEKfCAjZGVmaW5lIEhBVkVfRkNOVExf
SCAxCnwgI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEKfCAjZGVmaW5lIEhBVkVfR1JQX0ggMQp8ICNk
ZWZpbmUgSEFWRV9MSU1JVFNfSCAxCnwgI2RlZmluZSBIQVZFX0xPQ0FMRV9IIDEKfCAjZGVmaW5l
IEhBVkVfTUFMTE9DX0ggMQp8ICNkZWZpbmUgSEFWRV9NRU1PUllfSCAxCnwgI2RlZmluZSBIQVZF
X1BXRF9IIDEKfCAjZGVmaW5lIEhBVkVfU0dUVFlfSCAxCnwgI2RlZmluZSBIQVZFX1NIQURPV19I
IDEKfCAjZGVmaW5lIEhBVkVfU1REREVGX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdfSCAxCnwg
I2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCnwgI2RlZmluZSBIQVZFX1NZU0VYSVRTX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfRklMRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTElPX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfRVJSTk9fSCAxCnwgI2RlZmluZSBIQVZFX1NZU19JT0NUTF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1BBUkFNX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfUkVTT1VSQ0VfSCAx
CnwgI2RlZmluZSBIQVZFX1NZU19TRUxFQ1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRf
SCAxCnwgI2RlZmluZSBIQVZFX1NZU19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1lTTE9H
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVElNRV9IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RZUEVT
X0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfVUlPX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNMT0dfSCAx
CnwgI2RlZmluZSBIQVZFX1RFUk1JT1NfSCAxCnwgI2RlZmluZSBIQVZFX1VOSVNURF9IIDEKfCAj
ZGVmaW5lIEhBVkVfVVRJTUVfSCAxCnwgI2RlZmluZSBIQVZFX1JFU09MVl9IIDEKfCAjZGVmaW5l
IEhBVkVfTkVUSU5FVF9UQ1BfSCAxCnwgI2RlZmluZSBIQVZFX1NJR0FDVElPTiAxCnwgI2RlZmlu
ZSBIQVZFX1NJR1NFVCAxCnwgI2RlZmluZSBIQVZFX0xJQlNPQ0tFVCAxCnwgI2RlZmluZSBIQVZF
X0xJQk5TTCAxCnwgI2RlZmluZSBIQVZFX0xJQkdFTiAxCnwgI2RlZmluZSBIQVZFX1NZU19TRUxF
Q1RfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCnwgI2RlZmluZSBTRUxFQ1RfVFlQ
RV9BUkcxIGludAp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHMjM0IChmZF9zZXQgKikKfCAjZGVm
aW5lIFNFTEVDVF9UWVBFX0FSRzUgKHN0cnVjdCB0aW1ldmFsICopCnwgI2RlZmluZSBIQVZFX1BP
TEwgMQp8ICNkZWZpbmUgSEFWRV9QT0xMX0ggMQp8ICNkZWZpbmUgREVDTF9TWVNfRVJSTElTVCAx
CnwgI2RlZmluZSBIQVZFX1NUUkVSUk9SIDEKfCAjZGVmaW5lIEhBVkVfU1RSRVJST1JfUiAxCnwg
LyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZiBIQVZFX1NZ
U19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAjaWYgSEFWRV9T
WVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8ICNpZiBTVERDX0hF
QURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8c3RkZGVmLmg+CnwgI2Vs
c2UKfCAjIGlmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxzdGRsaWIuaD4KfCAjIGVuZGlm
CnwgI2VuZGlmCnwgI2lmIEhBVkVfU1RSSU5HX0gKfCAjIGlmICFTVERDX0hFQURFUlMgJiYgSEFW
RV9NRU1PUllfSAp8ICMgIGluY2x1ZGUgPG1lbW9yeS5oPgp8ICMgZW5kaWYKfCAjIGluY2x1ZGUg
PHN0cmluZy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX1NUUklOR1NfSAp8ICMgaW5jbHVkZSA8c3Ry
aW5ncy5oPgp8ICNlbmRpZgp8ICNpZiBIQVZFX0lOVFRZUEVTX0gKfCAjIGluY2x1ZGUgPGludHR5
cGVzLmg+CnwgI2Vsc2UKfCAjIGlmIEhBVkVfU1RESU5UX0gKfCAjICBpbmNsdWRlIDxzdGRpbnQu
aD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmIEhBVkVfVU5JU1REX0gKfCAjIGluY2x1ZGUgPHVu
aXN0ZC5oPgp8ICNlbmRpZgp8ICNpbmNsdWRlIDxyZWdleC5oPgpjb25maWd1cmU6MTY2Mjc6IHJl
c3VsdDogbm8KY29uZmlndXJlOjE2NjMxOiBjaGVja2luZyByZWdleC5oIHByZXNlbmNlCmNvbmZp
Z3VyZToxNjY0MTogY2MgLUUgIGNvbmZ0ZXN0LmMKY29uZmlndXJlOjE2NjQ3OiAkPyA9IDAKY29u
ZmlndXJlOjE2NjY3OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY2ODA6IFdBUk5JTkc6IHJlZ2V4
Lmg6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZApjb25maWd1cmU6MTY2ODI6IFdBUk5J
Tkc6IHJlZ2V4Lmg6ICAgICBjaGVjayBmb3IgbWlzc2luZyBwcmVyZXF1aXNpdGUgaGVhZGVycz8K
Y29uZmlndXJlOjE2Njg0OiBXQVJOSU5HOiByZWdleC5oOiBzZWUgdGhlIEF1dG9jb25mIGRvY3Vt
ZW50YXRpb24KY29uZmlndXJlOjE2Njg2OiBXQVJOSU5HOiByZWdleC5oOiAgICAgc2VjdGlvbiAi
UHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkIgpjb25maWd1cmU6MTY2ODg6IFdBUk5JTkc6
IHJlZ2V4Lmg6IHByb2NlZWRpbmcgd2l0aCB0aGUgcHJlcHJvY2Vzc29yJ3MgcmVzdWx0CmNvbmZp
Z3VyZToxNjY5MDogV0FSTklORzogcmVnZXguaDogaW4gdGhlIGZ1dHVyZSwgdGhlIGNvbXBpbGVy
IHdpbGwgdGFrZSBwcmVjZWRlbmNlCmNvbmZpZ3VyZToxNjcwMjogY2hlY2tpbmcgZm9yIHJlZ2V4
LmgKY29uZmlndXJlOjE2NzA5OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MTY3Mjc6IGNoZWNraW5n
IGZvciBsaWJyYXJ5IGNvbnRhaW5pbmcgcmVnZnJlZQpjb25maWd1cmU6MTY3NTc6IGNjIC1vIGNv
bmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxnZW4gLWxuc2wgLWxzb2NrZXQgID4mNQpjb25m
aWd1cmU6MTY3NjM6ICQ/ID0gMApjb25maWd1cmU6MTY3Njc6IHRlc3QgLXogCgkJCSB8fCB0ZXN0
ICEgLXMgY29uZnRlc3QuZXJyCmNvbmZpZ3VyZToxNjc3MDogJD8gPSAwCmNvbmZpZ3VyZToxNjc3
MzogdGVzdCAtcyBjb25mdGVzdApjb25maWd1cmU6MTY3NzY6ICQ/ID0gMApjb25maWd1cmU6MTY4
NDY6IHJlc3VsdDogbm9uZSByZXF1aXJlZApjb25maWd1cmU6MTY4NTk6IGNoZWNraW5nIGZvciBj
b21wYXRpYmxlIFBPU0lYIHJlZ2V4CmNvbmZpZ3VyZToxNjg5OTogY2MgLW8gY29uZnRlc3QgLWcg
LU8yICAgY29uZnRlc3QuYyAtbGdlbiAtbG5zbCAtbHNvY2tldCAgPiY1CkluIGZpbGUgaW5jbHVk
ZWQgZnJvbSBjb25mdGVzdC5jOjg3OgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDoxMzg6IGVy
cm9yOiBwYXJzZSBlcnJvciBiZWZvcmUgInJlX3ZvaWQiCi91c3IvbG9jYWwvaW5jbHVkZS9yZWdl
eC5oOjI5NzogZXJyb3I6IHN5bnRheCBlcnJvciBiZWZvcmUgImludCIKL3Vzci9sb2NhbC9pbmNs
dWRlL3JlZ2V4Lmg6Mjk3OiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJDT05TVCIKL3Vzci9s
b2NhbC9pbmNsdWRlL3JlZ2V4Lmg6MzA2OiBlcnJvcjogc3ludGF4IGVycm9yIGJlZm9yZSAiaW50
IgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDozMDY6IGVycm9yOiBwYXJzZSBlcnJvciBiZWZv
cmUgIkNPTlNUIgovdXNyL2xvY2FsL2luY2x1ZGUvcmVnZXguaDozMDg6IGVycm9yOiBwYXJzZSBl
cnJvciBiZWZvcmUgInJlX3ZvaWQiCi91c3IvbG9jYWwvaW5jbHVkZS9yZWdleC5oOjMwOTogZXJy
b3I6IHN5bnRheCBlcnJvciBiZWZvcmUgInNpemVfdCIKL3Vzci9sb2NhbC9pbmNsdWRlL3JlZ2V4
Lmg6MzA5OiBlcnJvcjogcGFyc2UgZXJyb3IgYmVmb3JlICJDT05TVCIKY29uZmlndXJlOjE2OTAy
OiAkPyA9IDEKY29uZmlndXJlOiBwcm9ncmFtIGV4aXRlZCB3aXRoIHN0YXR1cyAxCmNvbmZpZ3Vy
ZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmguICAqLwp8IAp8ICNkZWZpbmUg
UEFDS0FHRV9OQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKfCAjZGVmaW5lIFBB
Q0tBR0VfVkVSU0lPTiAiIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgIiIKfCAjZGVmaW5lIFBB
Q0tBR0VfQlVHUkVQT1JUICIiCnwgI2RlZmluZSBPUEVOTERBUF9QQUNLQUdFICJPcGVuTERBUCIK
fCAjZGVmaW5lIE9QRU5MREFQX1ZFUlNJT04gIjIuMy4yNyIKfCAjZGVmaW5lIExEQVBfVkVORE9S
X1ZFUlNJT04gMjAzMjcKfCAjZGVmaW5lIExEQVBfVkVORE9SX1ZFUlNJT05fTUFKT1IgMgp8ICNk
ZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCnwgI2RlZmluZSBMREFQX1ZFTkRPUl9W
RVJTSU9OX1BBVENIIDI3CnwgI2RlZmluZSBIQVZFX01LVkVSU0lPTiAxCnwgI2RlZmluZSBTVERD
X0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCnwgI2RlZmluZSBIQVZFX1NZ
U19TVEFUX0ggMQp8ICNkZWZpbmUgSEFWRV9TVERMSUJfSCAxCnwgI2RlZmluZSBIQVZFX1NUUklO
R19IIDEKfCAjZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0gg
MQp8ICNkZWZpbmUgSEFWRV9JTlRUWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1RESU5UX0ggMQp8
ICNkZWZpbmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX0RMRkNOX0ggMQp8ICNkZWZp
bmUgRVhFRVhUICIiCnwgI2RlZmluZSBTVERDX0hFQURFUlMgMQp8ICNkZWZpbmUgSEFWRV9ESVJF
TlRfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19XQUlUX0ggMQp8ICNkZWZpbmUgSEFWRV9BUlBBX0lO
RVRfSCAxCnwgI2RlZmluZSBIQVZFX0FSUEFfTkFNRVNFUl9IIDEKfCAjZGVmaW5lIEhBVkVfQVNT
RVJUX0ggMQp8ICNkZWZpbmUgSEFWRV9DUllQVF9IIDEKfCAjZGVmaW5lIEhBVkVfRVJSTk9fSCAx
CnwgI2RlZmluZSBIQVZFX0ZDTlRMX0ggMQp8ICNkZWZpbmUgSEFWRV9HRVRPUFRfSCAxCnwgI2Rl
ZmluZSBIQVZFX0dSUF9IIDEKfCAjZGVmaW5lIEhBVkVfTElNSVRTX0ggMQp8ICNkZWZpbmUgSEFW
RV9MT0NBTEVfSCAxCnwgI2RlZmluZSBIQVZFX01BTExPQ19IIDEKfCAjZGVmaW5lIEhBVkVfTUVN
T1JZX0ggMQp8ICNkZWZpbmUgSEFWRV9QV0RfSCAxCnwgI2RlZmluZSBIQVZFX1NHVFRZX0ggMQp8
ICNkZWZpbmUgSEFWRV9TSEFET1dfSCAxCnwgI2RlZmluZSBIQVZFX1NURERFRl9IIDEKfCAjZGVm
aW5lIEhBVkVfU1RSSU5HX0ggMQp8ICNkZWZpbmUgSEFWRV9TVFJJTkdTX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNFWElUU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0ZJTEVfSCAxCnwgI2RlZmluZSBI
QVZFX1NZU19GSUxJT19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQp8ICNkZWZpbmUg
SEFWRV9TWVNfSU9DVExfSCAxCnwgI2RlZmluZSBIQVZFX1NZU19QQVJBTV9IIDEKfCAjZGVmaW5l
IEhBVkVfU1lTX1JFU09VUkNFX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNk
ZWZpbmUgSEFWRV9TWVNfU09DS0VUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTX1NZU0xPR19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCnwg
I2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKfCAjZGVmaW5lIEhBVkVfU1lTX1VJT19IIDEKfCAj
ZGVmaW5lIEhBVkVfU1lTTE9HX0ggMQp8ICNkZWZpbmUgSEFWRV9URVJNSU9TX0ggMQp8ICNkZWZp
bmUgSEFWRV9VTklTVERfSCAxCnwgI2RlZmluZSBIQVZFX1VUSU1FX0ggMQp8ICNkZWZpbmUgSEFW
RV9SRVNPTFZfSCAxCnwgI2RlZmluZSBIQVZFX05FVElORVRfVENQX0ggMQp8ICNkZWZpbmUgSEFW
RV9TSUdBQ1RJT04gMQp8ICNkZWZpbmUgSEFWRV9TSUdTRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJT
T0NLRVQgMQp8ICNkZWZpbmUgSEFWRV9MSUJOU0wgMQp8ICNkZWZpbmUgSEFWRV9MSUJHRU4gMQp8
ICNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQp8ICNkZWZpbmUgSEFWRV9TWVNfU09DS0VUX0gg
MQp8ICNkZWZpbmUgU0VMRUNUX1RZUEVfQVJHMSBpbnQKfCAjZGVmaW5lIFNFTEVDVF9UWVBFX0FS
RzIzNCAoZmRfc2V0ICopCnwgI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkc1IChzdHJ1Y3QgdGltZXZh
bCAqKQp8ICNkZWZpbmUgSEFWRV9QT0xMIDEKfCAjZGVmaW5lIEhBVkVfUE9MTF9IIDEKfCAjZGVm
aW5lIERFQ0xfU1lTX0VSUkxJU1QgMQp8ICNkZWZpbmUgSEFWRV9TVFJFUlJPUiAxCnwgI2RlZmlu
ZSBIQVZFX1NUUkVSUk9SX1IgMQp8ICNkZWZpbmUgSEFWRV9SRUdFWF9IIDEKfCAvKiBlbmQgY29u
ZmRlZnMuaC4gICovCnwgCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxyZWdl
eC5oPgp8IHN0YXRpYyBjaGFyICpwYXR0ZXJuLCAqc3RyaW5nOwp8IG1haW4oKQp8IHsKfCAJaW50
IHJjOwp8IAlyZWdleF90IHJlOwp8IAp8IAlwYXR0ZXJuID0gIl5BIjsKfCAKfCAJaWYocmVnY29t
cCgmcmUsIHBhdHRlcm4sIDApKSB7CnwgCQlyZXR1cm4gLTE7CnwgCX0KfCAKfCAJc3RyaW5nID0g
IkFMTCBNQVRDSCI7CnwgCnwgCXJjID0gcmVnZXhlYygmcmUsIHN0cmluZywgMCwgKHZvaWQqKTAs
IDApOwp8IAp8IAlyZWdmcmVlKCZyZSk7CnwgCnwgCXJldHVybiByYzsKfCB9CmNvbmZpZ3VyZTox
NjkyMTogcmVzdWx0OiBubwpjb25maWd1cmU6MTY5MjU6IGVycm9yOiBicm9rZW4gUE9TSVggcmVn
ZXghCgojIyAtLS0tLS0tLS0tLS0tLS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMKIyMgLS0t
LS0tLS0tLS0tLS0tLSAjIwoKYWNfY3ZfYnVpbGQ9c3BhcmMtc3VuLXNvbGFyaXMyLjEwCmFjX2N2
X2J1aWxkX2FsaWFzPXNwYXJjLXN1bi1zb2xhcmlzMi4xMAphY19jdl9jX2NvbXBpbGVyX2dudT15
ZXMKYWNfY3ZfZW52X0NDX3NldD0KYWNfY3ZfZW52X0NDX3ZhbHVlPQphY19jdl9lbnZfQ0ZMQUdT
X3NldD0KYWNfY3ZfZW52X0NGTEFHU192YWx1ZT0KYWNfY3ZfZW52X0NQUEZMQUdTX3NldD0KYWNf
Y3ZfZW52X0NQUEZMQUdTX3ZhbHVlPQphY19jdl9lbnZfQ1BQX3NldD0KYWNfY3ZfZW52X0NQUF92
YWx1ZT0KYWNfY3ZfZW52X0xERkxBR1Nfc2V0PQphY19jdl9lbnZfTERGTEFHU192YWx1ZT0KYWNf
Y3ZfZW52X2J1aWxkX2FsaWFzX3NldD0KYWNfY3ZfZW52X2J1aWxkX2FsaWFzX3ZhbHVlPQphY19j
dl9lbnZfaG9zdF9hbGlhc19zZXQ9CmFjX2N2X2Vudl9ob3N0X2FsaWFzX3ZhbHVlPQphY19jdl9l
bnZfdGFyZ2V0X2FsaWFzX3NldD0KYWNfY3ZfZW52X3RhcmdldF9hbGlhc192YWx1ZT0KYWNfY3Zf
ZXhlZXh0PQphY19jdl9mdW5jX2Rsb3Blbj15ZXMKYWNfY3ZfZnVuY19wb2xsPXllcwphY19jdl9m
dW5jX3NlbGVjdD15ZXMKYWNfY3ZfZnVuY19zZWxlY3RfYXJncz0naW50LGZkX3NldCAqLHN0cnVj
dCB0aW1ldmFsIConCmFjX2N2X2Z1bmNfc2hsX2xvYWQ9bm8KYWNfY3ZfZnVuY19zaWdhY3Rpb249
eWVzCmFjX2N2X2Z1bmNfc2lnc2V0PXllcwphY19jdl9mdW5jX3NvY2tldD1ubwphY19jdl9mdW5j
X3N0cmVycm9yPXllcwphY19jdl9mdW5jX3N0cmVycm9yX3I9eWVzCmFjX2N2X2hlYWRlcl9hcnBh
X2luZXRfaD15ZXMKYWNfY3ZfaGVhZGVyX2FycGFfbmFtZXNlcl9oPXllcwphY19jdl9oZWFkZXJf
YXNzZXJ0X2g9eWVzCmFjX2N2X2hlYWRlcl9iaXRzX3R5cGVzX2g9bm8KYWNfY3ZfaGVhZGVyX2Nv
bmlvX2g9bm8KYWNfY3ZfaGVhZGVyX2NyeXB0X2g9eWVzCmFjX2N2X2hlYWRlcl9kaXJlY3RfaD1u
bwphY19jdl9oZWFkZXJfZGlyZW50X2RpcmVudF9oPXllcwphY19jdl9oZWFkZXJfZGxmY25faD15
ZXMKYWNfY3ZfaGVhZGVyX2Vycm5vX2g9eWVzCmFjX2N2X2hlYWRlcl9mY250bF9oPXllcwphY19j
dl9oZWFkZXJfZmlsaW9faD1ubwphY19jdl9oZWFkZXJfZ2V0b3B0X2g9eWVzCmFjX2N2X2hlYWRl
cl9ncnBfaD15ZXMKYWNfY3ZfaGVhZGVyX2ludHR5cGVzX2g9eWVzCmFjX2N2X2hlYWRlcl9pb19o
PW5vCmFjX2N2X2hlYWRlcl9saWJ1dGlsX2g9bm8KYWNfY3ZfaGVhZGVyX2xpbWl0c19oPXllcwph
Y19jdl9oZWFkZXJfbG9jYWxlX2g9eWVzCmFjX2N2X2hlYWRlcl9tYWxsb2NfaD15ZXMKYWNfY3Zf
aGVhZGVyX21lbW9yeV9oPXllcwphY19jdl9oZWFkZXJfbmV0aW5ldF90Y3BfaD15ZXMKYWNfY3Zf
aGVhZGVyX3BvbGxfaD15ZXMKYWNfY3ZfaGVhZGVyX3Byb2Nlc3NfaD1ubwphY19jdl9oZWFkZXJf
cHNhcF9oPW5vCmFjX2N2X2hlYWRlcl9wd2RfaD15ZXMKYWNfY3ZfaGVhZGVyX3JlZ2V4X2g9eWVz
CmFjX2N2X2hlYWRlcl9yZXNvbHZfaD15ZXMKYWNfY3ZfaGVhZGVyX3NndHR5X2g9eWVzCmFjX2N2
X2hlYWRlcl9zaGFkb3dfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0ZGM9ZGlzYWJsZQphY19jdl9oZWFk
ZXJfc3RkZGVmX2g9eWVzCmFjX2N2X2hlYWRlcl9zdGRpbnRfaD15ZXMKYWNfY3ZfaGVhZGVyX3N0
ZGxpYl9oPXllcwphY19jdl9oZWFkZXJfc3RyaW5nX2g9eWVzCmFjX2N2X2hlYWRlcl9zdHJpbmdz
X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfZXBvbGxfaD1ubwphY19jdl9oZWFkZXJfc3lzX2Vycm5v
X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfZmlsZV9oPXllcwphY19jdl9oZWFkZXJfc3lzX2ZpbGlv
X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfaW9jdGxfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c19wYXJh
bV9oPXllcwphY19jdl9oZWFkZXJfc3lzX3Jlc291cmNlX2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNf
c2VsZWN0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNfc29ja2V0X2g9eWVzCmFjX2N2X2hlYWRlcl9z
eXNfc3RhdF9oPXllcwphY19jdl9oZWFkZXJfc3lzX3N5c2xvZ19oPXllcwphY19jdl9oZWFkZXJf
c3lzX3RpbWVfaD15ZXMKYWNfY3ZfaGVhZGVyX3N5c190eXBlc19oPXllcwphY19jdl9oZWFkZXJf
c3lzX3VjcmVkX2g9bm8KYWNfY3ZfaGVhZGVyX3N5c191aW9faD15ZXMKYWNfY3ZfaGVhZGVyX3N5
c193YWl0X2g9eWVzCmFjX2N2X2hlYWRlcl9zeXNleGl0c19oPXllcwphY19jdl9oZWFkZXJfc3lz
bG9nX2g9eWVzCmFjX2N2X2hlYWRlcl90ZXJtaW9zX2g9eWVzCmFjX2N2X2hlYWRlcl91bmlzdGRf
aD15ZXMKYWNfY3ZfaGVhZGVyX3V0aW1lX2g9eWVzCmFjX2N2X2hvc3Q9c3BhcmMtc3VuLXNvbGFy
aXMyLjEwCmFjX2N2X2hvc3RfYWxpYXM9c3BhcmMtc3VuLXNvbGFyaXMyLjEwCmFjX2N2X2xpYl9i
ZV9iZV9hcHA9bm8KYWNfY3ZfbGliX2RsZF9zaGxfbG9hZD1ubwphY19jdl9saWJfZ2VuX21haW49
eWVzCmFjX2N2X2xpYl9pbmV0X3NvY2tldD1ubwphY19jdl9saWJfbmV0X21haW49bm8KYWNfY3Zf
bGliX25zbF9tYWluPXllcwphY19jdl9saWJfbnNsX3NfbWFpbj1ubwphY19jdl9saWJfc19hZm9w
ZW49bm8KYWNfY3ZfbGliX3NvY2tldF9tYWluPXllcwphY19jdl9vYmpleHQ9bwphY19jdl9wcm9n
X0FSPWFyCmFjX2N2X3Byb2dfQVdLPWdhd2sKYWNfY3ZfcHJvZ19DQz1jYwphY19jdl9wcm9nX0NQ
UD0nY2MgLUUnCmFjX2N2X3Byb2dfYWNfY3RfUkFOTElCPXJhbmxpYgphY19jdl9wcm9nX2FjX2N0
X1NUUklQPXN0cmlwCmFjX2N2X3Byb2dfY2NfZz15ZXMKYWNfY3ZfcHJvZ19jY19zdGRjPQphY19j
dl9wcm9nX2VncmVwPWVncmVwCmFjX2N2X3Byb2dfbWFrZV9tYWtlX3NldD15ZXMKYWNfY3Zfc2Vh
cmNoX29wZW5kaXI9J25vbmUgcmVxdWlyZWQnCmFjX2N2X3NlYXJjaF9yZWdmcmVlPSdub25lIHJl
cXVpcmVkJwphY19jdl9zaHRvb2w9YnVpbGQvc2h0b29sCmFjX2N2X3N5c190aW9jZ3dpbnN6X2lu
X3Rlcm1pb3NfaD15ZXMKYWNfY3ZfdGFyZ2V0PXNwYXJjLXN1bi1zb2xhcmlzMi4xMAphY19jdl90
YXJnZXRfYWxpYXM9c3BhcmMtc3VuLXNvbGFyaXMyLjEwCmFtX2N2X0NDX2RlcGVuZGVuY2llc19j
b21waWxlcl90eXBlPW5vbmUKbHRfY3ZfZGVwbGlic19jaGVja19tZXRob2Q9cGFzc19hbGwKbHRf
Y3ZfZGxvcGVuPWRsb3BlbgpsdF9jdl9kbG9wZW5fbGlicz0KbHRfY3ZfZGxvcGVuX3NlbGY9eWVz
Cmx0X2N2X2Rsb3Blbl9zZWxmX3N0YXRpYz15ZXMKbHRfY3ZfZmlsZV9tYWdpY19jbWQ9JyRNQUdJ
Q19DTUQnCmx0X2N2X2ZpbGVfbWFnaWNfdGVzdF9maWxlPQpsdF9jdl9sZF9yZWxvYWRfZmxhZz0t
cgpsdF9jdl9vYmpkaXI9LmxpYnMKbHRfY3ZfcGF0aF9MRD0vdXNyL2Njcy9iaW4vbGQKbHRfY3Zf
cGF0aF9OTT0nL3Vzci9jY3MvYmluL25tIC1wJwpsdF9jdl9wYXRoX1NFRD0vYmluL3NlZApsdF9j
dl9wcm9nX2NvbXBpbGVyX2Nfbz15ZXMKbHRfY3ZfcHJvZ19jb21waWxlcl9ydHRpX2V4Y2VwdGlv
bnM9bm8KbHRfY3ZfcHJvZ19nbnVfbGQ9bm8KbHRfY3Zfc3lzX2dsb2JhbF9zeW1ib2xfcGlwZT0n
c2VkIC1uIC1lICdcJydzL14uKlsgCV1cKFtCRFJUXVtCRFJUXSpcKVsgCV1bIAldKlwoW19BLVph
LXpdW19BLVphLXowLTldKlwpJC9cMSBcMiBcMi9wJ1wnJycKbHRfY3Zfc3lzX2dsb2JhbF9zeW1i
b2xfdG9fY19uYW1lX2FkZHJlc3M9J3NlZCAtbiAtZSAnXCcncy9eOiBcKFteIF0qXCkgJC8gIHtc
IlwxXCIsIChsdF9wdHIpIDB9LC9wJ1wnJyAtZSAnXCcncy9eW0JDREVHUlNUXSBcKFteIF0qXCkg
XChbXiBdKlwpJC8gIHsiXDIiLCAobHRfcHRyKSBcJlwyfSwvcCdcJycnCmx0X2N2X3N5c19nbG9i
YWxfc3ltYm9sX3RvX2NkZWNsPSdzZWQgLW4gLWUgJ1wnJ3MvXi4gLiogXCguKlwpJC9leHRlcm4g
aW50IFwxOy9wJ1wnJycKbHRfY3Zfc3lzX21heF9jbWRfbGVuPTI2MjE0NApsdF9sdF9jdl9wcm9n
X2NvbXBpbGVyX2Nfbz0nInllcyInCmx0X2x0X2N2X3N5c19nbG9iYWxfc3ltYm9sX3BpcGU9JyJz
ZWQgLW4gLWUgJ1wnJ3MvXi4qWyAJXVxcKFtCRFJUXVtCRFJUXSpcXClbIAldWyAJXSpcXChbX0Et
WmEtel1bX0EtWmEtejAtOV0qXFwpXCQvXFwxIFxcMiBcXDIvcCdcJyciJwpsdF9sdF9jdl9zeXNf
Z2xvYmFsX3N5bWJvbF90b19jX25hbWVfYWRkcmVzcz0nInNlZCAtbiAtZSAnXCcncy9eOiBcXChb
XiBdKlxcKSBcJC8gIHtcXFwiXFwxXFxcIiwgKGx0X3B0cikgMH0sL3AnXCcnIC1lICdcJydzL15b
QkNERUdSU1RdIFxcKFteIF0qXFwpIFxcKFteIF0qXFwpXCQvICB7XCJcXDJcIiwgKGx0X3B0cikg
XFwmXFwyfSwvcCdcJyciJwpsdF9sdF9jdl9zeXNfZ2xvYmFsX3N5bWJvbF90b19jZGVjbD0nInNl
ZCAtbiAtZSAnXCcncy9eLiAuKiBcXCguKlxcKVwkL2V4dGVybiBpbnQgXFwxOy9wJ1wnJyInCm9s
X2N2X2NfcG9zaXhfcmVnZXg9bm8Kb2xfY3ZfY3BwX2ViY2RpYz1ubwpvbF9jdl9kY2xfc3lzX2Vy
cmxpc3Q9bm8Kb2xfY3ZfZnVuY19zdHJlcnJvcl9yPW5vCm9sX2N2X2hhdmVfc3lzX2Vycmxpc3Q9
bm8Kb2xfY3ZfaGVhZGVyX3N0ZGM9eWVzCm9sX2N2X21rZGVwPS1NCm9sX2N2X25vbnBvc2l4X3N0
cmVycm9yX3I9bm8KCiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIE91dHB1dCB2YXJpYWJsZXMu
ICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCgpBQ0xPQ0FMPScke1NIRUxMfSAvb3B0L1NvdXJj
ZS9vcGVubGRhcC0yLjMuMjcvYnVpbGQvbWlzc2luZyAtLXJ1biBhY2xvY2FsLTEuOScKQU1ERVBC
QUNLU0xBU0g9J1wnCkFNREVQX0ZBTFNFPScjJwpBTURFUF9UUlVFPScnCkFNVEFSPScke1NIRUxM
fSAvb3B0L1NvdXJjZS9vcGVubGRhcC0yLjMuMjcvYnVpbGQvbWlzc2luZyAtLXJ1biB0YXInCkFS
PSdhcicKQVM9J2FzJwpBVVRIX0xJQlM9JycKQVVUT0NPTkY9JyR7U0hFTEx9IC9vcHQvU291cmNl
L29wZW5sZGFwLTIuMy4yNy9idWlsZC9taXNzaW5nIC0tcnVuIGF1dG9jb25mJwpBVVRPSEVBREVS
PScke1NIRUxMfSAvb3B0L1NvdXJjZS9vcGVubGRhcC0yLjMuMjcvYnVpbGQvbWlzc2luZyAtLXJ1
biBhdXRvaGVhZGVyJwpBVVRPTUFLRT0nJHtTSEVMTH0gL29wdC9Tb3VyY2Uvb3BlbmxkYXAtMi4z
LjI3L2J1aWxkL21pc3NpbmcgLS1ydW4gYXV0b21ha2UtMS45JwpBV0s9J2dhd2snCkJVSUxEX0FD
Q0VTU0xPRz0nbm8nCkJVSUxEX0FVRElUTE9HPSdubycKQlVJTERfQkRCPSdubycKQlVJTERfREVO
WU9QPSdubycKQlVJTERfRE5TU1JWPSdubycKQlVJTERfRFlOR1JPVVA9J25vJwpCVUlMRF9EWU5M
SVNUPSdubycKQlVJTERfSERCPSdubycKQlVJTERfTEFTVE1PRD0nbm8nCkJVSUxEX0xEQVA9J25v
JwpCVUlMRF9MREJNPSdubycKQlVJTERfTElCU19EWU5BTUlDPScnCkJVSUxEX01FVEE9J25vJwpC
VUlMRF9NT05JVE9SPSdubycKQlVJTERfTlVMTD0nbm8nCkJVSUxEX1BBU1NXRD0nbm8nCkJVSUxE
X1BFUkw9J25vJwpCVUlMRF9QUE9MSUNZPSdubycKQlVJTERfUFJPWFlDQUNIRT0nbm8nCkJVSUxE
X1JFRklOVD0nbm8nCkJVSUxEX1JFTEFZPSdubycKQlVJTERfUkVUQ09ERT0nbm8nCkJVSUxEX1JX
TT0nbm8nCkJVSUxEX1NIRUxMPSdubycKQlVJTERfU0xBUEQ9J25vJwpCVUlMRF9TTEFQST0nbm8n
CkJVSUxEX1NMVVJQRD0nbm8nCkJVSUxEX1NRTD0nbm8nCkJVSUxEX1NZTkNQUk9WPSdubycKQlVJ
TERfVEhSRUFEPSdubycKQlVJTERfVFJBTlNMVUNFTlQ9J25vJwpCVUlMRF9VTklRVUU9J25vJwpC
VUlMRF9WQUxTT1JUPSdubycKQ0M9J2NjJwpDQ0RFUE1PREU9J2RlcG1vZGU9bm9uZScKQ0ZMQUdT
PSctZyAtTzInCkNQUD0nY2MgLUUnCkNQUEZMQUdTPScnCkNZR1BBVEhfVz0nZWNobycKREVGUz0n
JwpERVBESVI9Jy5kZXBzJwpETExUT09MPSdkbGx0b29sJwpFQ0hPPSdlY2hvJwpFQ0hPX0M9JycK
RUNIT19OPSctbicKRUNIT19UPScnCkVHUkVQPSdlZ3JlcCcKRVhFRVhUPScnCklOU1RBTExfREFU
QT0nJHtJTlNUQUxMfSAtbSA2NDQnCklOU1RBTExfUFJPR1JBTT0nJHtJTlNUQUxMfScKSU5TVEFM
TF9TQ1JJUFQ9JyR7SU5TVEFMTH0nCklOU1RBTExfU1RSSVBfUFJPR1JBTT0nJHtTSEVMTH0gJChp
bnN0YWxsX3NoKSAtYyAtcycKS1JCNF9MSUJTPScnCktSQjVfTElCUz0nJwpMREFQX0xJQlM9JycK
TERCTV9MSUJTPScnCkxERkxBR1M9JycKTElCT0JKUz0nJwpMSUJTPSctbGdlbiAtbG5zbCAtbHNv
Y2tldCAnCkxJQlNMQVBJPScnCkxJQlNMQVBJVE9PTFM9JycKTElCU1JDUz0nJwpMSUJUT09MPSck
KFNIRUxMKSAkKHRvcF9idWlsZGRpcikvbGlidG9vbCcKTE5fUz0nbG4gLXMnCkxUSFJFQURfTElC
Uz0nJwpMVExJQk9CSlM9JycKTFRTVEFUSUM9JycKTFVUSUxfTElCUz0nJwpNQUtFSU5GTz0nJHtT
SEVMTH0gL29wdC9Tb3VyY2Uvb3BlbmxkYXAtMi4zLjI3L2J1aWxkL21pc3NpbmcgLS1ydW4gbWFr
ZWluZm8nCk1PRFVMRVNfTElCUz0nJwpNT0RfUEVSTF9MREZMQUdTPScnCk9CSkRVTVA9J29iamR1
bXAnCk9CSkVYVD0nbycKT0xfTUtERVA9J2NjJwpPTF9NS0RFUF9GTEFHUz0nLU0nCk9QRU5MREFQ
X0xJQlJFTEVBU0U9JzIuMycKT1BFTkxEQVBfTElCVkVSU0lPTj0nMjoxNToyJwpPUEVOTERBUF9S
RUxFQVNFX0RBVEU9JzIwMDYvMDgvMTknClBBQ0tBR0U9J09wZW5MREFQJwpQQUNLQUdFX0JVR1JF
UE9SVD0nJwpQQUNLQUdFX05BTUU9JycKUEFDS0FHRV9TVFJJTkc9JycKUEFDS0FHRV9UQVJOQU1F
PScnClBBQ0tBR0VfVkVSU0lPTj0nJwpQQVRIX1NFUEFSQVRPUj0nOicKUEVSTEJJTj0nJwpQRVJM
X0NQUEZMQUdTPScnClBMQVQ9JycKUkFOTElCPSdyYW5saWInClNBU0xfTElCUz0nJwpTRVRfTUFL
RT0nJwpTSEVMTD0nL2Jpbi9iYXNoJwpTTEFQRF9EWU5BTUlDX0JBQ0tFTkRTPScnClNMQVBEX0RZ
TkFNSUNfT1ZFUkxBWVM9JycKU0xBUERfR01QX0xJQlM9JycKU0xBUERfTElCUz0nJwpTTEFQRF9N
T0RVTEVTX0NQUEZMQUdTPScnClNMQVBEX01PRFVMRVNfTERGTEFHUz0nJwpTTEFQRF9OT19TVEFU
SUM9JycKU0xBUERfUEVSTF9MREZMQUdTPScnClNMQVBEX1NMQVBJX0RFUEVORD0nJwpTTEFQRF9T
TFBfTElCUz0nJwpTTEFQRF9TUUxfSU5DTFVERVM9JycKU0xBUERfU1FMX0xERkxBR1M9JycKU0xB
UERfU1FMX0xJQlM9JycKU0xBUERfU1RBVElDX0JBQ0tFTkRTPSdiYWNrLWxkaWYnClNMQVBEX1NU
QVRJQ19PVkVSTEFZUz0nJwpTTEFQSV9MSUJTPScnClNMVVJQRF9MSUJTPScnClNUUklQPSdzdHJp
cCcKVExTX0xJQlM9JycKVkVSU0lPTj0nMi4zLjI3JwpXSVRIX0FDSV9FTkFCTEVEPScnCldJVEhf
TU9EVUxFU19FTkFCTEVEPSdubycKV0lUSF9TQVNMPScnCldJVEhfVExTPScnCldSQVBfTElCUz0n
JwphY19jdF9BUj0nJwphY19jdF9BUz0nJwphY19jdF9DQz0nJwphY19jdF9ETExUT09MPScnCmFj
X2N0X09CSkRVTVA9JycKYWNfY3RfUkFOTElCPSdyYW5saWInCmFjX2N0X1NUUklQPSdzdHJpcCcK
YW1fX2Zhc3RkZXBDQ19GQUxTRT0nJwphbV9fZmFzdGRlcENDX1RSVUU9JyMnCmFtX19pbmNsdWRl
PSdpbmNsdWRlJwphbV9fbGVhZGluZ19kb3Q9Jy4nCmFtX19xdW90ZT0nJwphbV9fdGFyPScke0FN
VEFSfSBjaG9mIC0gIiQkdGFyZGlyIicKYW1fX3VudGFyPScke0FNVEFSfSB4ZiAtJwpiaW5kaXI9
JyR7ZXhlY19wcmVmaXh9L2JpbicKYnVpbGQ9J3NwYXJjLXN1bi1zb2xhcmlzMi4xMCcKYnVpbGRf
YWxpYXM9JycKYnVpbGRfY3B1PSdzcGFyYycKYnVpbGRfb3M9J3NvbGFyaXMyLjEwJwpidWlsZF92
ZW5kb3I9J3N1bicKZGF0YWRpcj0nJHtwcmVmaXh9L3NoYXJlJwpleGVjX3ByZWZpeD0nTk9ORScK
aG9zdD0nc3BhcmMtc3VuLXNvbGFyaXMyLjEwJwpob3N0X2FsaWFzPScnCmhvc3RfY3B1PSdzcGFy
YycKaG9zdF9vcz0nc29sYXJpczIuMTAnCmhvc3RfdmVuZG9yPSdzdW4nCmluY2x1ZGVkaXI9JyR7
cHJlZml4fS9pbmNsdWRlJwppbmZvZGlyPScke3ByZWZpeH0vaW5mbycKaW5zdGFsbF9zaD0nL29w
dC9Tb3VyY2Uvb3BlbmxkYXAtMi4zLjI3L2J1aWxkL2luc3RhbGwtc2gnCmxkYXBfc3ViZGlyPScv
b3BlbmxkYXAnCmxpYmRpcj0nJHtleGVjX3ByZWZpeH0vbGliJwpsaWJleGVjZGlyPScke2V4ZWNf
cHJlZml4fS9saWJleGVjJwpsb2NhbHN0YXRlZGlyPScke3ByZWZpeH0vdmFyJwptYW5kaXI9JyR7
cHJlZml4fS9tYW4nCm1rZGlyX3A9JyQoaW5zdGFsbF9zaCkgLWQnCm9sZGluY2x1ZGVkaXI9Jy91
c3IvaW5jbHVkZScKcHJlZml4PScvdXNyL2xvY2FsJwpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPSdz
LHgseCwnCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCnNoYXJlZHN0YXRlZGlyPScke3By
ZWZpeH0vY29tJwpzeXNjb25mZGlyPScke3ByZWZpeH0vZXRjJwp0YXJnZXQ9J3NwYXJjLXN1bi1z
b2xhcmlzMi4xMCcKdGFyZ2V0X2FsaWFzPScnCnRhcmdldF9jcHU9J3NwYXJjJwp0YXJnZXRfb3M9
J3NvbGFyaXMyLjEwJwp0YXJnZXRfdmVuZG9yPSdzdW4nCnRvcF9idWlsZGRpcj0nL29wdC9Tb3Vy
Y2Uvb3BlbmxkYXAtMi4zLjI3JwoKIyMgLS0tLS0tLS0tLS0gIyMKIyMgY29uZmRlZnMuaC4gIyMK
IyMgLS0tLS0tLS0tLS0gIyMKCiNkZWZpbmUgREVDTF9TWVNfRVJSTElTVCAxCiNkZWZpbmUgRVhF
RVhUICIiCiNkZWZpbmUgSEFWRV9BUlBBX0lORVRfSCAxCiNkZWZpbmUgSEFWRV9BUlBBX05BTUVT
RVJfSCAxCiNkZWZpbmUgSEFWRV9BU1NFUlRfSCAxCiNkZWZpbmUgSEFWRV9DUllQVF9IIDEKI2Rl
ZmluZSBIQVZFX0RJUkVOVF9IIDEKI2RlZmluZSBIQVZFX0RMRkNOX0ggMQojZGVmaW5lIEhBVkVf
RVJSTk9fSCAxCiNkZWZpbmUgSEFWRV9GQ05UTF9IIDEKI2RlZmluZSBIQVZFX0dFVE9QVF9IIDEK
I2RlZmluZSBIQVZFX0dSUF9IIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVmaW5lIEhB
VkVfTElCR0VOIDEKI2RlZmluZSBIQVZFX0xJQk5TTCAxCiNkZWZpbmUgSEFWRV9MSUJTT0NLRVQg
MQojZGVmaW5lIEhBVkVfTElNSVRTX0ggMQojZGVmaW5lIEhBVkVfTE9DQUxFX0ggMQojZGVmaW5l
IEhBVkVfTUFMTE9DX0ggMQojZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQojZGVmaW5lIEhBVkVfTUVN
T1JZX0ggMQojZGVmaW5lIEhBVkVfTUtWRVJTSU9OIDEKI2RlZmluZSBIQVZFX05FVElORVRfVENQ
X0ggMQojZGVmaW5lIEhBVkVfUE9MTCAxCiNkZWZpbmUgSEFWRV9QT0xMX0ggMQojZGVmaW5lIEhB
VkVfUFdEX0ggMQojZGVmaW5lIEhBVkVfUkVHRVhfSCAxCiNkZWZpbmUgSEFWRV9SRVNPTFZfSCAx
CiNkZWZpbmUgSEFWRV9TR1RUWV9IIDEKI2RlZmluZSBIQVZFX1NIQURPV19IIDEKI2RlZmluZSBI
QVZFX1NJR0FDVElPTiAxCiNkZWZpbmUgSEFWRV9TSUdTRVQgMQojZGVmaW5lIEhBVkVfU1REREVG
X0ggMQojZGVmaW5lIEhBVkVfU1RESU5UX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0ggMQojZGVm
aW5lIEhBVkVfU1RSRVJST1IgMQojZGVmaW5lIEhBVkVfU1RSRVJST1JfUiAxCiNkZWZpbmUgSEFW
RV9TVFJJTkdTX0ggMQojZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKI2RlZmluZSBIQVZFX1NUUklO
R19IIDEKI2RlZmluZSBIQVZFX1NUUklOR19IIDEKI2RlZmluZSBIQVZFX1NZU0VYSVRTX0ggMQoj
ZGVmaW5lIEhBVkVfU1lTTE9HX0ggMQojZGVmaW5lIEhBVkVfU1lTX0VSUk5PX0ggMQojZGVmaW5l
IEhBVkVfU1lTX0ZJTEVfSCAxCiNkZWZpbmUgSEFWRV9TWVNfRklMSU9fSCAxCiNkZWZpbmUgSEFW
RV9TWVNfSU9DVExfSCAxCiNkZWZpbmUgSEFWRV9TWVNfUEFSQU1fSCAxCiNkZWZpbmUgSEFWRV9T
WVNfUkVTT1VSQ0VfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU0VMRUNUX0ggMQojZGVmaW5lIEhBVkVf
U1lTX1NFTEVDVF9IIDEKI2RlZmluZSBIQVZFX1NZU19TT0NLRVRfSCAxCiNkZWZpbmUgSEFWRV9T
WVNfU09DS0VUX0ggMQojZGVmaW5lIEhBVkVfU1lTX1NUQVRfSCAxCiNkZWZpbmUgSEFWRV9TWVNf
U1RBVF9IIDEKI2RlZmluZSBIQVZFX1NZU19TWVNMT0dfSCAxCiNkZWZpbmUgSEFWRV9TWVNfVElN
RV9IIDEKI2RlZmluZSBIQVZFX1NZU19UWVBFU19IIDEKI2RlZmluZSBIQVZFX1NZU19UWVBFU19I
IDEKI2RlZmluZSBIQVZFX1NZU19VSU9fSCAxCiNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKI2Rl
ZmluZSBIQVZFX1RFUk1JT1NfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERfSCAxCiNkZWZpbmUgSEFW
RV9VTklTVERfSCAxCiNkZWZpbmUgSEFWRV9VVElNRV9IIDEKI2RlZmluZSBMREFQX1ZFTkRPUl9W
RVJTSU9OIDIwMzI3CiNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9NQUpPUiAyCiNkZWZpbmUg
TERBUF9WRU5ET1JfVkVSU0lPTl9NSU5PUiAzCiNkZWZpbmUgTERBUF9WRU5ET1JfVkVSU0lPTl9Q
QVRDSCAyNwojZGVmaW5lIE9QRU5MREFQX1BBQ0tBR0UgIk9wZW5MREFQIgojZGVmaW5lIE9QRU5M
REFQX1ZFUlNJT04gIjIuMy4yNyIKI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiIgojZGVmaW5l
IFBBQ0tBR0VfTkFNRSAiIgojZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCiNkZWZpbmUgUEFDS0FH
RV9UQVJOQU1FICIiCiNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCiNkZWZpbmUgU0VMRUNUX1RZ
UEVfQVJHMSBpbnQKI2RlZmluZSBTRUxFQ1RfVFlQRV9BUkcyMzQgKGZkX3NldCAqKQojZGVmaW5l
IFNFTEVDVF9UWVBFX0FSRzUgKHN0cnVjdCB0aW1ldmFsICopCiNkZWZpbmUgU1REQ19IRUFERVJT
IDEKI2RlZmluZSBTVERDX0hFQURFUlMgMQoKY29uZmlndXJlOiBleGl0IDEK
--=====================_272409043==_--
17 years, 1 month
Re: (ITS#4706) regex.h on Solaris 10 sparc
by Kurt@OpenLDAP.org
Actually, I only silenced the regex.h warning. I cannot
tell from your message why the regex compat check failed.
Please provide relevant details from config.log.
At 11:18 PM 10/10/2006, stew.redfield(a)gmail.com wrote:
>Full_Name: Stew Redfield
>Version: 2.3.27
>OS: Solaris 10 sparc
>URL: ftp://ftp.openldap.org/incoming/
>Submission from: (NULL) (65.219.72.58)
>
>
>/configure --prefix=/usr/local
>--snip--
>checking regex.h presence... yes
>configure: WARNING: regex.h: present but cannot be compiled
>configure: WARNING: regex.h: check for missing prerequisite headers?
>configure: WARNING: regex.h: see the Autoconf documentation
>configure: WARNING: regex.h: section "Present But Cannot Be Compiled"
>configure: WARNING: regex.h: proceeding with the preprocessor's result
>configure: WARNING: regex.h: in the future, the compiler will take precedence
>configure: WARNING: ## --------------------------------------------- ##
>configure: WARNING: ## Report this to <http://www.openldap.org/its/> ##
>configure: WARNING: ## --------------------------------------------- ##
>checking for regex.h... yes
>checking for library containing regfree... none required
>checking for compatible POSIX regex... no
>configure: error: broken POSIX regex!
17 years, 1 month
Re: (ITS#4706) regex.h on Solaris 10 sparc
by Kurt@OpenLDAP.org
I've committed a fix to HEAD which likely addresses this issue.
Please test. Thanks, Kurt
At 11:18 PM 10/10/2006, stew.redfield(a)gmail.com wrote:
>Full_Name: Stew Redfield
>Version: 2.3.27
>OS: Solaris 10 sparc
>URL: ftp://ftp.openldap.org/incoming/
>Submission from: (NULL) (65.219.72.58)
>
>
>/configure --prefix=/usr/local
>--snip--
>checking regex.h presence... yes
>configure: WARNING: regex.h: present but cannot be compiled
>configure: WARNING: regex.h: check for missing prerequisite headers?
>configure: WARNING: regex.h: see the Autoconf documentation
>configure: WARNING: regex.h: section "Present But Cannot Be Compiled"
>configure: WARNING: regex.h: proceeding with the preprocessor's result
>configure: WARNING: regex.h: in the future, the compiler will take precedence
>configure: WARNING: ## --------------------------------------------- ##
>configure: WARNING: ## Report this to <http://www.openldap.org/its/> ##
>configure: WARNING: ## --------------------------------------------- ##
>checking for regex.h... yes
>checking for library containing regfree... none required
>checking for compatible POSIX regex... no
>configure: error: broken POSIX regex!
17 years, 1 month
Re: (ITS#4702) out-of-memory on huge DB ?
by Paolo.Rossi.con@h3g.it
> No. As I already mentioned, there is no reason for slapcat to use
> large amounts of RAM, it should use whatever size your BDB cache is
> configured for and that's about it. It's possible there is a memory
> leak, but since no such leak appears under Linux that would point
> to either the Solaris C library or some other library specific to
> your platform.
>
> Perhaps you should post your actual slapd.conf file (removing any
> passwords or other sensitive info).
shure, here we are:
( this one, is the 64bit test; I've use the consumer for this try)
------------------------------------------
>$ cat slapd.conf
#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
schemacheck on
include /app/ldap23/consumer/openldap/schema/core.schema
include /app/ldap23/consumer/openldap/schema/ppscore.schema
include /app/ldap23/consumer/openldap/schema/ppsattributes.schema
include /app/ldap23/consumer/openldap/schema/capability.schema
include /app/ldap23/consumer/openldap/schema/java.schema
include /app/ldap23/consumer/openldap/schema/cosine.schema
include /app/ldap23/consumer/openldap/schema/inetorgperson.schema
#loglevel stats config acl sync
loglevel stats config acl
pidfile /app/ldap23/consumer/run/slapd.pid
argsfile /app/ldap23/consumer/run/slapd.args
threads 20
idletimeout 30
#######################################################################
# db database definitions
#######################################################################
database hdb
shm_key 10000
suffix "dc=foo,dc=bar"
rootdn "cn=Admin,dc=foo,dc=bar"
checkpoint 15360 5
cachesize 100
#cachesize 5000
idlcachesize 5000
# Cleartext passwords, especially for the rootdn, should
# be avoid. See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
rootpw XXX
# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory /app/ldap23/consumer/openldap-data
# Indices to maintain
index objectClass,contactCode,partyId,entryCSN,entryUUID eq
#######################################################################
# CONSUMER #
#######################################################################
syncrepl rid=102
provider=ldap://10.xxx.xxx.xxx:389
type=refreshAndPersist
retry="120 +"
searchbase="ou=profiles,dc=foo,dc=bar"
filter="(objectClass=*)"
scope=sub
attrs="*"
schemachecking=off
binddn="cn=syncuserman,dc=foo,dc=bar"
credentials=XXX
bindmethod=simple
------------------------------------------
and DB_CONFIG also:
------------------------------------------
>$ cat DB_CONFIG
set_lg_dir /app/ldap23/consumer/openldap-data/logs
#set_cachesize 0 256000000 1
set_cachesize 0 64000000 1
set_lg_regionmax 262144
set_lg_bsize 2097152
# Automatically remove log files that are no longer needed.
set_flags DB_LOG_AUTOREMOVE
set_flags DB_TXN_NOSYNC
#set_flags DB_TXN_NOT_DURABLE
------------------------------------------
In this run, I've set << set_cachesize >> to 64Mb due to speed up
the test.
Paolo
17 years, 1 month
Re: (ITS#4702) out-of-memory on huge DB ?
by hyc@symas.com
Paolo.Rossi.con(a)h3g.it wrote:
> Now, the question: Huge LDAP only possible with big RAM ? :D
>
>
> Other ideas? :/
No. As I already mentioned, there is no reason for slapcat to use large
amounts of RAM, it should use whatever size your BDB cache is configured
for and that's about it. It's possible there is a memory leak, but since
no such leak appears under Linux that would point to either the Solaris
C library or some other library specific to your platform.
Perhaps you should post your actual slapd.conf file (removing any
passwords or other sensitive info).
--
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
OpenLDAP Core Team http://www.openldap.org/project/
17 years, 1 month
Re: (ITS#4702) out-of-memory on huge DB ?
by Paolo.Rossi.con@h3g.it
Quanah Gibson-Mount wrote:
> 4GB is the memory limit on 32-bit Solaris, IIRC. Just like it is
> 2GB on 32-bit linux. Try building everything 64-bit.
Hello again.
Today I've rebuilt everything 64-bit
To have a "fast shot", I've load a 1m dn, then I've ulimit -d 96304
the data memory for user.
After a some minutes slapcat:
slapcat -f openldap/slapd.conf |gzip > delete-me.ldif
ch_malloc of 16396 bytes failed
Assertion failed: 0, file ch_malloc.c, line 57
Abort (core dumped)
and a second try:
slapcat -f openldap/slapd.conf > delete-me.ldif
bdb_db_open: unclean shutdown detected; attempting recovery.
bdb_db_open: Recovery skipped in read-only mode. Run manual recovery
if errors are encountered.
ch_malloc of 16396 bytes failed
Assertion failed: 0, file ch_malloc.c, line 57
Abort (core dumped)
at crash moment, with top: size=180M res=176M
Now, the question: Huge LDAP only possible with big RAM ? :D
Other ideas? :/
Paolo
17 years, 1 month