From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi1-x230.google.com (mail-oi1-x230.google.com [IPv6:2607:f8b0:4864:20::230]) by sourceware.org (Postfix) with ESMTPS id 8C57E3959C5E for ; Tue, 10 May 2022 11:18:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 8C57E3959C5E Received: by mail-oi1-x230.google.com with SMTP id l16so18137324oil.6 for ; Tue, 10 May 2022 04:18:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=wM3WLrYRnFNcUz+AHGCTWS9EaXpb3Mobb0eJCcq/e7Y=; b=3Vv3QHmNu6Ei+X6xE5t0ZojesB3VHxNZKhlSOMZnE5zuIhMbH/D/orYBpjo/8pCexO 1JaLh2SWjqatMxvefZ8A8k+NBWSnc1lhq23juAbXNd63WcqouitOuc5O+PcxQlMHNHeW co0I1KfnIXD8e0IcH5Xa2O2oE+WYiJreAbuwq0dNHcU9C688wq+q+er8IHV/jQCZFmLy KpF40RrI7JAag4/NUns6N+NQl8ycKRJgf3RqINRdltAcsJCSQEV/4mWHnNvAfsbiaml3 6p7k8HDFV9Ko0ZjibWqKrcPNTfEolnzI21g6B/8w/iprlBAe5rNTB7f/x38Txrr0GHmW UWIw== X-Gm-Message-State: AOAM530bBI2hxWSH5XGlrBiHSs9lFvI6WPwXbmFooeyrMi69o1BQnfOn aEQmalGmGvzgiUIPz+ADnH6OF8Ub6g5Z15MNrVU= X-Google-Smtp-Source: ABdhPJwhFef9pP4tKR5YyAeglUhbaqA4TlHfolqYrXEpVfdQEiHjiulZzvSIho55rEUFso3beTGlqX2cO1eLIBTxdac= X-Received: by 2002:a05:6808:2097:b0:326:6bc9:407e with SMTP id s23-20020a056808209700b003266bc9407emr13326461oiw.250.1652181536783; Tue, 10 May 2022 04:18:56 -0700 (PDT) MIME-Version: 1.0 References: <4d4d2db210a3f181e0114d2670a7918826957900.camel@xry111.site> <8f8fb7611632ff388659b1da3500abc181da97c2.camel@xry111.site> In-Reply-To: From: Zopolis0 Date: Tue, 10 May 2022 21:18:46 +1000 Message-ID: Subject: Re: libjava configure fails on finding no C compiler in $PATH despite gcc being present To: Xi Ruoyao Cc: Jonathan Wakely , gcc-help Content-Type: multipart/mixed; boundary="0000000000009ae46a05dea67df2" X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, HTML_MESSAGE, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gcc-help@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-help mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 May 2022 11:19:01 -0000 --0000000000009ae46a05dea67df2 Content-Type: text/plain; charset="UTF-8" Thanks. So, the build system is invoking it correctly, as far as I can tell. (/home/zopolis4/gcj/libjava/configure --srcdir=../../../gcj/libjava --cache-file=./config.cache --enable-multilib --disable-bootstrap --disable-libstdcxx --enable-languages=c,c++,java,lto --program-transform-name=s,y,y, --disable-option-checking --with-target-subdir=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --target=x86_64-pc-linux-gnu --disable-static) On Tue, May 10, 2022 at 9:01 PM Xi Ruoyao wrote: > On Tue, 2022-05-10 at 20:56 +1000, Zopolis0 wrote: > > By the build tree do you mean the directory I'm running configure > > from? If so, then no libjava directory is present despite the libjava > > configure script certainly running during the build process. > > It should be in x86_64-pc-linux-gnu (or whatever triplet for your > platform) directory, along with other target libraries (for eg > libstdc++-v3). If not, something is wrong. > > -- > Xi Ruoyao > School of Aerospace Science and Technology, Xidian University > --0000000000009ae46a05dea67df2 Content-Type: application/octet-stream; name="config.log" Content-Disposition: attachment; filename="config.log" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_l3027u9w0 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hp bGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2Vz IGEgbWlzdGFrZS4KCkl0IHdhcyBjcmVhdGVkIGJ5IGxpYmphdmEgIHZlcnNpb24tdW51c2VkLCB3 aGljaCB3YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY5LiAgSW52b2NhdGlvbiBjb21t YW5kIGxpbmUgd2FzCgogICQgL2hvbWUvem9wb2xpczQvZ2NqL2xpYmphdmEvY29uZmlndXJlIC0t c3JjZGlyPS4uLy4uLy4uL2djai9saWJqYXZhIC0tY2FjaGUtZmlsZT0uL2NvbmZpZy5jYWNoZSAt LWVuYWJsZS1tdWx0aWxpYiAtLWRpc2FibGUtYm9vdHN0cmFwIC0tZGlzYWJsZS1saWJzdGRjeHgg LS1lbmFibGUtbGFuZ3VhZ2VzPWMsYysrLGphdmEsbHRvIC0tcHJvZ3JhbS10cmFuc2Zvcm0tbmFt ZT1zLHkseSwgLS1kaXNhYmxlLW9wdGlvbi1jaGVja2luZyAtLXdpdGgtdGFyZ2V0LXN1YmRpcj14 ODZfNjQtcGMtbGludXgtZ251IC0tYnVpbGQ9eDg2XzY0LXBjLWxpbnV4LWdudSAtLWhvc3Q9eDg2 XzY0LXBjLWxpbnV4LWdudSAtLXRhcmdldD14ODZfNjQtcGMtbGludXgtZ251IC0tZGlzYWJsZS1z dGF0aWMKCiMjIC0tLS0tLS0tLSAjIwojIyBQbGF0Zm9ybS4gIyMKIyMgLS0tLS0tLS0tICMjCgpo b3N0bmFtZSA9IENCMTBMT0FOMDFMCnVuYW1lIC1tID0geDg2XzY0CnVuYW1lIC1yID0gNS4xMC4x MDIuMS1taWNyb3NvZnQtc3RhbmRhcmQtV1NMMgp1bmFtZSAtcyA9IExpbnV4CnVuYW1lIC12ID0g IzEgU01QIFdlZCBNYXIgMiAwMDozMDo1OSBVVEMgMjAyMgoKL3Vzci9iaW4vdW5hbWUgLXAgPSB1 bmtub3duCi9iaW4vdW5hbWUgLVggICAgID0gdW5rbm93bgoKL2Jpbi9hcmNoICAgICAgICAgICAg ICA9IHVua25vd24KL3Vzci9iaW4vYXJjaCAtayAgICAgICA9IHVua25vd24KL3Vzci9jb252ZXgv Z2V0c3lzaW5mbyA9IHVua25vd24KL3Vzci9iaW4vaG9zdGluZm8gICAgICA9IHVua25vd24KL2Jp bi9tYWNoaW5lICAgICAgICAgICA9IHVua25vd24KL3Vzci9iaW4vb3NsZXZlbCAgICAgICA9IHVu a25vd24KL2Jpbi91bml2ZXJzZSAgICAgICAgICA9IHVua25vd24KClBBVEg6IC91c3IvbG9jYWwv c2JpbgpQQVRIOiAvdXNyL2xvY2FsL2JpbgpQQVRIOiAvdXNyL3NiaW4KUEFUSDogL3Vzci9iaW4K UEFUSDogL3NiaW4KUEFUSDogL2JpbgpQQVRIOiAvdXNyL2dhbWVzClBBVEg6IC91c3IvbG9jYWwv Z2FtZXMKUEFUSDogL3Vzci9saWIvd3NsL2xpYgpQQVRIOiAvbW50L2MvUHJvZ3JhbSBGaWxlcy9X aW5kb3dzQXBwcy9UaGVEZWJpYW5Qcm9qZWN0LkRlYmlhbkdOVUxpbnV4XzEuMTIuMi4wX3g2NF9f NzZ2NGdmc3oxOWh2NApQQVRIOiAvbW50L2MvV0lORE9XUy9zeXN0ZW0zMgpQQVRIOiAvbW50L2Mv V0lORE9XUwpQQVRIOiAvbW50L2MvV0lORE9XUy9TeXN0ZW0zMi9XYmVtClBBVEg6IC9tbnQvYy9X SU5ET1dTL1N5c3RlbTMyL1dpbmRvd3NQb3dlclNoZWxsL3YxLjAvClBBVEg6IC9tbnQvYy9XSU5E T1dTL1N5c3RlbTMyL09wZW5TU0gvClBBVEg6IC9tbnQvYy9Qcm9ncmFtIEZpbGVzICh4ODYpL0Nv bW1vbiBGaWxlcy9Qcm9wZWxsZXJoZWFkIFNvZnR3YXJlL1JlV2lyZS8KUEFUSDogL21udC9jL1By b2dyYW0gRmlsZXMvQ29tbW9uIEZpbGVzL1Byb3BlbGxlcmhlYWQgU29mdHdhcmUvUmVXaXJlLwpQ QVRIOiAvbW50L2MvVXNlcnMvMjRtcy5kb3duL0FwcERhdGEvTG9jYWwvTWljcm9zb2Z0L1dpbmRv d3NBcHBzClBBVEg6IC9tbnQvYy9Vc2Vycy8yNG1zLmRvd24vQXBwRGF0YS9Mb2NhbC9QYWNrYWdl cy9QeXRob25Tb2Z0d2FyZUZvdW5kYXRpb24uUHl0aG9uLjMuMTBfcWJ6NW4ya2ZyYThwMC9Mb2Nh bENhY2hlL2xvY2FsLXBhY2thZ2VzL1B5dGhvbjMxMC9TY3JpcHRzCgoKIyMgLS0tLS0tLS0tLS0g IyMKIyMgQ29yZSB0ZXN0cy4gIyMKIyMgLS0tLS0tLS0tLS0gIyMKCjoyODIzOiBjcmVhdGluZyBj YWNoZSAuL2NvbmZpZy5jYWNoZQo6MjkzNTogY2hlY2tpbmcgYnVpbGQgc3lzdGVtIHR5cGUKOjI5 NDk6IHJlc3VsdDogeDg2XzY0LXBjLWxpbnV4LWdudQo6MzA2NTogY2hlY2tpbmcgaG9zdCBzeXN0 ZW0gdHlwZQo6MzA3ODogcmVzdWx0OiB4ODZfNjQtcGMtbGludXgtZ251CjozMDk4OiBjaGVja2lu ZyB0YXJnZXQgc3lzdGVtIHR5cGUKOjMxMTE6IHJlc3VsdDogeDg2XzY0LXBjLWxpbnV4LWdudQo6 MzE2MzogY2hlY2tpbmcgd2hldGhlciBsbiAtcyB3b3Jrcwo6MzE2NzogcmVzdWx0OiB5ZXMKOjMy NTY6IGNoZWNraW5nIGZvciBhbnRsci5qYXIKOjMyNzI6IHJlc3VsdDogL3Vzci9zaGFyZS9qYXZh L2FudGxyLmphcgo6MzI5NzogY2hlY2tpbmcgd2hldGhlciB0byBidWlsZCBnamRvYwo6MzMwMjog cmVzdWx0OiB5ZXMKOjMzNTU6IGNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwK OjM0MjM6IHJlc3VsdDogL3Vzci9iaW4vaW5zdGFsbCAtYwo6MzQzNDogY2hlY2tpbmcgd2hldGhl ciBidWlsZCBlbnZpcm9ubWVudCBpcyBzYW5lCjozNDg5OiByZXN1bHQ6IHllcwo6MzY0MDogY2hl Y2tpbmcgZm9yIGEgdGhyZWFkLXNhZmUgbWtkaXIgLXAKOjM2Nzk6IHJlc3VsdDogLi4vLi4vLi4v Z2NqL2xpYmphdmEvLi4vaW5zdGFsbC1zaCAtYyAtZAo6MzY4NjogY2hlY2tpbmcgZm9yIGdhd2sK OjM3MTM6IHJlc3VsdDogbWF3awo6MzcyNDogY2hlY2tpbmcgd2hldGhlciBtYWtlIHNldHMgJChN QUtFKQo6Mzc0NjogcmVzdWx0OiB5ZXMKOjM3NzU6IGNoZWNraW5nIHdoZXRoZXIgbWFrZSBzdXBw b3J0cyBuZXN0ZWQgdmFyaWFibGVzCjozNzkyOiByZXN1bHQ6IHllcwo6MzgwOTogZXJyb3I6IHNv dXJjZSBkaXJlY3RvcnkgYWxyZWFkeSBjb25maWd1cmVkOyBydW4gIm1ha2UgZGlzdGNsZWFuIiB0 aGVyZSBmaXJzdAo6MzgwOTogY2hlY2tpbmcgZm9yIHg4Nl82NC1wYy1saW51eC1nbnUtZ2NjCjoz ODA5OiByZXN1bHQ6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgIAo6MzgwOTogY2hlY2tpbmcgZm9yIEMgY29t cGlsZXIgdmVyc2lvbgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAt Qi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0 ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC0tdmVyc2lvbiA+JjUKeGdj YyAoR0NDKSAxMy4wLjAgMjAyMjA1MDggKGV4cGVyaW1lbnRhbCkKQ29weXJpZ2h0IChDKSAyMDIy IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNl ZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTwp3YXJyYW50 eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4KCjozODA5OiAkPyA9IDAKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxk Ly4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1p c3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtdiA+ JjUKUmVhZGluZyBzcGVjcyBmcm9tIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3NwZWNz CkNPTExFQ1RfR0NDPS9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MKQ09MTEVDVF9M VE9fV1JBUFBFUj0vaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy9sdG8td3JhcHBlcgpUYXJn ZXQ6IHg4Nl82NC1wYy1saW51eC1nbnUKQ29uZmlndXJlZCB3aXRoOiAuLi9nY2ovY29uZmlndXJl IC0tZGlzYWJsZS1ib290c3RyYXAgLS1kaXNhYmxlLWxpYnN0ZGN4eCAtLWVuYWJsZS1sYW5ndWFn ZXM9amF2YQpUaHJlYWQgbW9kZWw6IHBvc2l4ClN1cHBvcnRlZCBMVE8gY29tcHJlc3Npb24gYWxn b3JpdGhtczogemxpYgpnY2MgdmVyc2lvbiAxMy4wLjAgMjAyMjA1MDggKGV4cGVyaW1lbnRhbCkg KEdDQykgCjozODA5OiAkPyA9IDAKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2Nj L3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIv IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtViA+JjUKeGdj YzogZXJyb3I6IHVucmVjb2duaXplZCBjb21tYW5kLWxpbmUgb3B0aW9uICctVicKeGdjYzogZmF0 YWwgZXJyb3I6IG5vIGlucHV0IGZpbGVzCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCjozODA5OiAk PyA9IDEKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtcXZlcnNpb24gPiY1CnhnY2M6IGVycm9y OiB1bnJlY29nbml6ZWQgY29tbWFuZC1saW5lIG9wdGlvbiAnLXF2ZXJzaW9uJzsgZGlkIHlvdSBt ZWFuICctLXZlcnNpb24nPwp4Z2NjOiBmYXRhbCBlcnJvcjogbm8gaW5wdXQgZmlsZXMKY29tcGls YXRpb24gdGVybWluYXRlZC4KOjM4MDk6ICQ/ID0gMQo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAg IC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5 OiBjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzCjozODA5OiAvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv IC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWlu Y2x1ZGUgICAgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJl c3VsdDogeWVzCjozODA5OiBjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBm aWxlIG5hbWUKOjM4MDk6IHJlc3VsdDogYS5vdXQKOjM4MDk6IGNoZWNraW5nIGZvciBzdWZmaXgg b2YgZXhlY3V0YWJsZXMKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2Mg LUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lz dGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAt TzIgICBjb25mdGVzdC5jICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiAKOjM4MDk6 IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZwo6MzgwOTogL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2Nj LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgt Z251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1p bmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8g PSAwCjozODA5OiAuL2NvbmZ0ZXN0CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4 MDk6IGNoZWNraW5nIGZvciBzdWZmaXggb2Ygb2JqZWN0IGZpbGVzCjozODA5OiAvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv IC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWlu Y2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiBy ZXN1bHQ6IG8KOjM4MDk6IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQyBj b21waWxlcgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21l L3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+ JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhl ciAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvc3lzLWluY2x1ZGUgICAgYWNjZXB0cyAtZwo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAg IC1jIC1nICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiAvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1C L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1 ZGUgICAgLWMgICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiAvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv IC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWlu Y2x1ZGUgICAgLWMgLWcgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3Vs dDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94 Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgb3B0aW9uIHRvIGFj Y2VwdCBJU08gQzg5CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1C L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgIC1jIC1nIC1PMiAgY29uZnRl c3QuYyA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9n Y2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xp Yi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1xbGFuZ2x2 bD1leHRjODkgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQp4Z2NjOiBlcnJvcjogdW5yZWNvZ25p emVkIGNvbW1hbmQtbGluZSBvcHRpb24gJy1xbGFuZ2x2bD1leHRjODknCjozODA5OiAkPyA9IDEK OiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FH RV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJqYXZhIgp8ICNk ZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0Vf U1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBP UlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAi bGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8IC8qIGVuZCBjb25m ZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkYXJnLmg+CnwgI2luY2x1ZGUgPHN0ZGlvLmg+Cnwg c3RydWN0IHN0YXQ7CnwgLyogTW9zdCBvZiB0aGUgZm9sbG93aW5nIHRlc3RzIGFyZSBzdG9sZW4g ZnJvbSBSQ1MgNS43J3Mgc3JjL2NvbmYuc2guICAqLwp8IHN0cnVjdCBidWYgeyBpbnQgeDsgfTsK fCBGSUxFICogKCpyY3NvcGVuKSAoc3RydWN0IGJ1ZiAqLCBzdHJ1Y3Qgc3RhdCAqLCBpbnQpOwp8 IHN0YXRpYyBjaGFyICplIChwLCBpKQp8ICAgICAgY2hhciAqKnA7CnwgICAgICBpbnQgaTsKfCB7 CnwgICByZXR1cm4gcFtpXTsKfCB9Cnwgc3RhdGljIGNoYXIgKmYgKGNoYXIgKiAoKmcpIChjaGFy ICoqLCBpbnQpLCBjaGFyICoqcCwgLi4uKQp8IHsKfCAgIGNoYXIgKnM7CnwgICB2YV9saXN0IHY7 CnwgICB2YV9zdGFydCAodixwKTsKfCAgIHMgPSBnIChwLCB2YV9hcmcgKHYsaW50KSk7CnwgICB2 YV9lbmQgKHYpOwp8ICAgcmV0dXJuIHM7CnwgfQp8IAp8IC8qIE9TRiA0LjAgQ29tcGFxIGNjIGlz IHNvbWUgc29ydCBvZiBhbG1vc3QtQU5TSSBieSBkZWZhdWx0LiAgSXQgaGFzCnwgICAgZnVuY3Rp b24gcHJvdG90eXBlcyBhbmQgc3R1ZmYsIGJ1dCBub3QgJ1x4SEgnIGhleCBjaGFyYWN0ZXIgY29u c3RhbnRzLgp8ICAgIFRoZXNlIGRvbid0IHByb3Zva2UgYW4gZXJyb3IgdW5mb3J0dW5hdGVseSwg aW5zdGVhZCBhcmUgc2lsZW50bHkgdHJlYXRlZAp8ICAgIGFzICd4Jy4gIFRoZSBmb2xsb3dpbmcg aW5kdWNlcyBhbiBlcnJvciwgdW50aWwgLXN0ZCBpcyBhZGRlZCB0byBnZXQKfCAgICBwcm9wZXIg QU5TSSBtb2RlLiAgQ3VyaW91c2x5ICdceDAwJyE9J3gnIGFsd2F5cyBjb21lcyBvdXQgdHJ1ZSwg Zm9yIGFuCnwgICAgYXJyYXkgc2l6ZSBhdCBsZWFzdC4gIEl0J3MgbmVjZXNzYXJ5IHRvIHdyaXRl ICdceDAwJz09MCB0byBnZXQgc29tZXRoaW5nCnwgICAgdGhhdCdzIHRydWUgb25seSB3aXRoIC1z dGQuICAqLwp8IGludCBvc2Y0X2NjX2FycmF5IFsnXHgwMCcgPT0gMCA/IDEgOiAtMV07CnwgCnwg LyogSUJNIEMgNiBmb3IgQUlYIGlzIGFsbW9zdC1BTlNJIGJ5IGRlZmF1bHQsIGJ1dCBpdCByZXBs YWNlcyBtYWNybyBwYXJhbWV0ZXJzCnwgICAgaW5zaWRlIHN0cmluZ3MgYW5kIGNoYXJhY3RlciBj b25zdGFudHMuICAqLwp8ICNkZWZpbmUgRk9PKHgpICd4Jwp8IGludCB4bGM2X2NjX2FycmF5W0ZP TyhhKSA9PSAneCcgPyAxIDogLTFdOwp8IAp8IGludCB0ZXN0IChpbnQgaSwgZG91YmxlIHgpOwp8 IHN0cnVjdCBzMSB7aW50ICgqZikgKGludCBhKTt9Owp8IHN0cnVjdCBzMiB7aW50ICgqZikgKGRv dWJsZSBhKTt9Owp8IGludCBwYWlybmFtZXMgKGludCwgY2hhciAqKiwgRklMRSAqKCopKHN0cnVj dCBidWYgKiwgc3RydWN0IHN0YXQgKiwgaW50KSwgaW50LCBpbnQpOwp8IGludCBhcmdjOwp8IGNo YXIgKiphcmd2Owp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIGYgKGUsIGFyZ3YsIDApICE9 IGFyZ3ZbMF0gIHx8ICBmIChlLCBhcmd2LCAxKSAhPSBhcmd2WzFdOwp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21l L3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1xbGFuZ2x2bD1hbnNpIC1jIC1nIC1P MiAgY29uZnRlc3QuYyA+JjUKeGdjYzogZXJyb3I6IHVucmVjb2duaXplZCBjb21tYW5kLWxpbmUg b3B0aW9uICctcWxhbmdsdmw9YW5zaScKOjM4MDk6ICQ/ID0gMQo6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImxpYmphdmEiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmphdmEgdmVy c2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIKfCAjZGVm aW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJqYXZhIgp8ICNkZWZpbmUg VkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs dWRlIDxzdGRhcmcuaD4KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCBzdHJ1Y3Qgc3RhdDsKfCAvKiBN b3N0IG9mIHRoZSBmb2xsb3dpbmcgdGVzdHMgYXJlIHN0b2xlbiBmcm9tIFJDUyA1LjcncyBzcmMv Y29uZi5zaC4gICovCnwgc3RydWN0IGJ1ZiB7IGludCB4OyB9Owp8IEZJTEUgKiAoKnJjc29wZW4p IChzdHJ1Y3QgYnVmICosIHN0cnVjdCBzdGF0ICosIGludCk7Cnwgc3RhdGljIGNoYXIgKmUgKHAs IGkpCnwgICAgICBjaGFyICoqcDsKfCAgICAgIGludCBpOwp8IHsKfCAgIHJldHVybiBwW2ldOwp8 IH0KfCBzdGF0aWMgY2hhciAqZiAoY2hhciAqICgqZykgKGNoYXIgKiosIGludCksIGNoYXIgKipw LCAuLi4pCnwgewp8ICAgY2hhciAqczsKfCAgIHZhX2xpc3QgdjsKfCAgIHZhX3N0YXJ0ICh2LHAp Owp8ICAgcyA9IGcgKHAsIHZhX2FyZyAodixpbnQpKTsKfCAgIHZhX2VuZCAodik7CnwgICByZXR1 cm4gczsKfCB9CnwgCnwgLyogT1NGIDQuMCBDb21wYXEgY2MgaXMgc29tZSBzb3J0IG9mIGFsbW9z dC1BTlNJIGJ5IGRlZmF1bHQuICBJdCBoYXMKfCAgICBmdW5jdGlvbiBwcm90b3R5cGVzIGFuZCBz dHVmZiwgYnV0IG5vdCAnXHhISCcgaGV4IGNoYXJhY3RlciBjb25zdGFudHMuCnwgICAgVGhlc2Ug ZG9uJ3QgcHJvdm9rZSBhbiBlcnJvciB1bmZvcnR1bmF0ZWx5LCBpbnN0ZWFkIGFyZSBzaWxlbnRs eSB0cmVhdGVkCnwgICAgYXMgJ3gnLiAgVGhlIGZvbGxvd2luZyBpbmR1Y2VzIGFuIGVycm9yLCB1 bnRpbCAtc3RkIGlzIGFkZGVkIHRvIGdldAp8ICAgIHByb3BlciBBTlNJIG1vZGUuICBDdXJpb3Vz bHkgJ1x4MDAnIT0neCcgYWx3YXlzIGNvbWVzIG91dCB0cnVlLCBmb3IgYW4KfCAgICBhcnJheSBz aXplIGF0IGxlYXN0LiAgSXQncyBuZWNlc3NhcnkgdG8gd3JpdGUgJ1x4MDAnPT0wIHRvIGdldCBz b21ldGhpbmcKfCAgICB0aGF0J3MgdHJ1ZSBvbmx5IHdpdGggLXN0ZC4gICovCnwgaW50IG9zZjRf Y2NfYXJyYXkgWydceDAwJyA9PSAwID8gMSA6IC0xXTsKfCAKfCAvKiBJQk0gQyA2IGZvciBBSVgg aXMgYWxtb3N0LUFOU0kgYnkgZGVmYXVsdCwgYnV0IGl0IHJlcGxhY2VzIG1hY3JvIHBhcmFtZXRl cnMKfCAgICBpbnNpZGUgc3RyaW5ncyBhbmQgY2hhcmFjdGVyIGNvbnN0YW50cy4gICovCnwgI2Rl ZmluZSBGT08oeCkgJ3gnCnwgaW50IHhsYzZfY2NfYXJyYXlbRk9PKGEpID09ICd4JyA/IDEgOiAt MV07CnwgCnwgaW50IHRlc3QgKGludCBpLCBkb3VibGUgeCk7Cnwgc3RydWN0IHMxIHtpbnQgKCpm KSAoaW50IGEpO307Cnwgc3RydWN0IHMyIHtpbnQgKCpmKSAoZG91YmxlIGEpO307CnwgaW50IHBh aXJuYW1lcyAoaW50LCBjaGFyICoqLCBGSUxFICooKikoc3RydWN0IGJ1ZiAqLCBzdHJ1Y3Qgc3Rh dCAqLCBpbnQpLCBpbnQsIGludCk7CnwgaW50IGFyZ2M7CnwgY2hhciAqKmFyZ3Y7CnwgaW50Cnwg bWFpbiAoKQp8IHsKfCByZXR1cm4gZiAoZSwgYXJndiwgMCkgIT0gYXJndlswXSAgfHwgIGYgKGUs IGFyZ3YsIDEpICE9IGFyZ3ZbMV07CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CjozODA5OiAvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv Li9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv c3lzLWluY2x1ZGUgICAgLXN0ZCAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CnhnY2M6IGVycm9y OiB1bnJlY29nbml6ZWQgY29tbWFuZC1saW5lIG9wdGlvbiAnLXN0ZCcKOjM4MDk6ICQ/ID0gMQo6 IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdF X05BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwgI2Rl ZmluZSBQQUNLQUdFX1ZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9T VFJJTkcgImxpYmphdmEgdmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9S VCAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJs aWJqYXZhIgp8ICNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRhcmcuaD4KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCBz dHJ1Y3Qgc3RhdDsKfCAvKiBNb3N0IG9mIHRoZSBmb2xsb3dpbmcgdGVzdHMgYXJlIHN0b2xlbiBm cm9tIFJDUyA1LjcncyBzcmMvY29uZi5zaC4gICovCnwgc3RydWN0IGJ1ZiB7IGludCB4OyB9Owp8 IEZJTEUgKiAoKnJjc29wZW4pIChzdHJ1Y3QgYnVmICosIHN0cnVjdCBzdGF0ICosIGludCk7Cnwg c3RhdGljIGNoYXIgKmUgKHAsIGkpCnwgICAgICBjaGFyICoqcDsKfCAgICAgIGludCBpOwp8IHsK fCAgIHJldHVybiBwW2ldOwp8IH0KfCBzdGF0aWMgY2hhciAqZiAoY2hhciAqICgqZykgKGNoYXIg KiosIGludCksIGNoYXIgKipwLCAuLi4pCnwgewp8ICAgY2hhciAqczsKfCAgIHZhX2xpc3QgdjsK fCAgIHZhX3N0YXJ0ICh2LHApOwp8ICAgcyA9IGcgKHAsIHZhX2FyZyAodixpbnQpKTsKfCAgIHZh X2VuZCAodik7CnwgICByZXR1cm4gczsKfCB9CnwgCnwgLyogT1NGIDQuMCBDb21wYXEgY2MgaXMg c29tZSBzb3J0IG9mIGFsbW9zdC1BTlNJIGJ5IGRlZmF1bHQuICBJdCBoYXMKfCAgICBmdW5jdGlv biBwcm90b3R5cGVzIGFuZCBzdHVmZiwgYnV0IG5vdCAnXHhISCcgaGV4IGNoYXJhY3RlciBjb25z dGFudHMuCnwgICAgVGhlc2UgZG9uJ3QgcHJvdm9rZSBhbiBlcnJvciB1bmZvcnR1bmF0ZWx5LCBp bnN0ZWFkIGFyZSBzaWxlbnRseSB0cmVhdGVkCnwgICAgYXMgJ3gnLiAgVGhlIGZvbGxvd2luZyBp bmR1Y2VzIGFuIGVycm9yLCB1bnRpbCAtc3RkIGlzIGFkZGVkIHRvIGdldAp8ICAgIHByb3BlciBB TlNJIG1vZGUuICBDdXJpb3VzbHkgJ1x4MDAnIT0neCcgYWx3YXlzIGNvbWVzIG91dCB0cnVlLCBm b3IgYW4KfCAgICBhcnJheSBzaXplIGF0IGxlYXN0LiAgSXQncyBuZWNlc3NhcnkgdG8gd3JpdGUg J1x4MDAnPT0wIHRvIGdldCBzb21ldGhpbmcKfCAgICB0aGF0J3MgdHJ1ZSBvbmx5IHdpdGggLXN0 ZC4gICovCnwgaW50IG9zZjRfY2NfYXJyYXkgWydceDAwJyA9PSAwID8gMSA6IC0xXTsKfCAKfCAv KiBJQk0gQyA2IGZvciBBSVggaXMgYWxtb3N0LUFOU0kgYnkgZGVmYXVsdCwgYnV0IGl0IHJlcGxh Y2VzIG1hY3JvIHBhcmFtZXRlcnMKfCAgICBpbnNpZGUgc3RyaW5ncyBhbmQgY2hhcmFjdGVyIGNv bnN0YW50cy4gICovCnwgI2RlZmluZSBGT08oeCkgJ3gnCnwgaW50IHhsYzZfY2NfYXJyYXlbRk9P KGEpID09ICd4JyA/IDEgOiAtMV07CnwgCnwgaW50IHRlc3QgKGludCBpLCBkb3VibGUgeCk7Cnwg c3RydWN0IHMxIHtpbnQgKCpmKSAoaW50IGEpO307Cnwgc3RydWN0IHMyIHtpbnQgKCpmKSAoZG91 YmxlIGEpO307CnwgaW50IHBhaXJuYW1lcyAoaW50LCBjaGFyICoqLCBGSUxFICooKikoc3RydWN0 IGJ1ZiAqLCBzdHJ1Y3Qgc3RhdCAqLCBpbnQpLCBpbnQsIGludCk7CnwgaW50IGFyZ2M7CnwgY2hh ciAqKmFyZ3Y7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gZiAoZSwgYXJndiwgMCkgIT0g YXJndlswXSAgfHwgIGYgKGUsIGFyZ3YsIDEpICE9IGFyZ3ZbMV07CnwgICA7CnwgICByZXR1cm4g MDsKfCB9CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUv em9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLUFlIC1jIC1nIC1PMiAgY29uZnRlc3Qu YyA+JjUKPGNvbW1hbmQtbGluZT46IGVycm9yOiBtaXNzaW5nICcoJyBhZnRlciBwcmVkaWNhdGUK OjM4MDk6ICQ/ID0gMQo6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwg I2RlZmluZSBQQUNLQUdFX05BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUg ImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNk ZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmphdmEgdmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2Rl ZmluZSBQQUNLQUdFICJsaWJqYXZhIgp8ICNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVzZWQi CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRhcmcuaD4KfCAjaW5jbHVk ZSA8c3RkaW8uaD4KfCBzdHJ1Y3Qgc3RhdDsKfCAvKiBNb3N0IG9mIHRoZSBmb2xsb3dpbmcgdGVz dHMgYXJlIHN0b2xlbiBmcm9tIFJDUyA1LjcncyBzcmMvY29uZi5zaC4gICovCnwgc3RydWN0IGJ1 ZiB7IGludCB4OyB9Owp8IEZJTEUgKiAoKnJjc29wZW4pIChzdHJ1Y3QgYnVmICosIHN0cnVjdCBz dGF0ICosIGludCk7Cnwgc3RhdGljIGNoYXIgKmUgKHAsIGkpCnwgICAgICBjaGFyICoqcDsKfCAg ICAgIGludCBpOwp8IHsKfCAgIHJldHVybiBwW2ldOwp8IH0KfCBzdGF0aWMgY2hhciAqZiAoY2hh ciAqICgqZykgKGNoYXIgKiosIGludCksIGNoYXIgKipwLCAuLi4pCnwgewp8ICAgY2hhciAqczsK fCAgIHZhX2xpc3QgdjsKfCAgIHZhX3N0YXJ0ICh2LHApOwp8ICAgcyA9IGcgKHAsIHZhX2FyZyAo dixpbnQpKTsKfCAgIHZhX2VuZCAodik7CnwgICByZXR1cm4gczsKfCB9CnwgCnwgLyogT1NGIDQu MCBDb21wYXEgY2MgaXMgc29tZSBzb3J0IG9mIGFsbW9zdC1BTlNJIGJ5IGRlZmF1bHQuICBJdCBo YXMKfCAgICBmdW5jdGlvbiBwcm90b3R5cGVzIGFuZCBzdHVmZiwgYnV0IG5vdCAnXHhISCcgaGV4 IGNoYXJhY3RlciBjb25zdGFudHMuCnwgICAgVGhlc2UgZG9uJ3QgcHJvdm9rZSBhbiBlcnJvciB1 bmZvcnR1bmF0ZWx5LCBpbnN0ZWFkIGFyZSBzaWxlbnRseSB0cmVhdGVkCnwgICAgYXMgJ3gnLiAg VGhlIGZvbGxvd2luZyBpbmR1Y2VzIGFuIGVycm9yLCB1bnRpbCAtc3RkIGlzIGFkZGVkIHRvIGdl dAp8ICAgIHByb3BlciBBTlNJIG1vZGUuICBDdXJpb3VzbHkgJ1x4MDAnIT0neCcgYWx3YXlzIGNv bWVzIG91dCB0cnVlLCBmb3IgYW4KfCAgICBhcnJheSBzaXplIGF0IGxlYXN0LiAgSXQncyBuZWNl c3NhcnkgdG8gd3JpdGUgJ1x4MDAnPT0wIHRvIGdldCBzb21ldGhpbmcKfCAgICB0aGF0J3MgdHJ1 ZSBvbmx5IHdpdGggLXN0ZC4gICovCnwgaW50IG9zZjRfY2NfYXJyYXkgWydceDAwJyA9PSAwID8g MSA6IC0xXTsKfCAKfCAvKiBJQk0gQyA2IGZvciBBSVggaXMgYWxtb3N0LUFOU0kgYnkgZGVmYXVs dCwgYnV0IGl0IHJlcGxhY2VzIG1hY3JvIHBhcmFtZXRlcnMKfCAgICBpbnNpZGUgc3RyaW5ncyBh bmQgY2hhcmFjdGVyIGNvbnN0YW50cy4gICovCnwgI2RlZmluZSBGT08oeCkgJ3gnCnwgaW50IHhs YzZfY2NfYXJyYXlbRk9PKGEpID09ICd4JyA/IDEgOiAtMV07CnwgCnwgaW50IHRlc3QgKGludCBp LCBkb3VibGUgeCk7Cnwgc3RydWN0IHMxIHtpbnQgKCpmKSAoaW50IGEpO307Cnwgc3RydWN0IHMy IHtpbnQgKCpmKSAoZG91YmxlIGEpO307CnwgaW50IHBhaXJuYW1lcyAoaW50LCBjaGFyICoqLCBG SUxFICooKikoc3RydWN0IGJ1ZiAqLCBzdHJ1Y3Qgc3RhdCAqLCBpbnQpLCBpbnQsIGludCk7Cnwg aW50IGFyZ2M7CnwgY2hhciAqKmFyZ3Y7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gZiAo ZSwgYXJndiwgMCkgIT0gYXJndlswXSAgfHwgIGYgKGUsIGFyZ3YsIDEpICE9IGFyZ3ZbMV07Cnwg ICA7CnwgICByZXR1cm4gMDsKfCB9CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2dj Yy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGli LyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLUFhIC1EX0hQ VVhfU09VUkNFIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKPGNvbW1hbmQtbGluZT46IGVycm9y OiBtaXNzaW5nICcoJyBhZnRlciBwcmVkaWNhdGUKOjM4MDk6ICQ/ID0gMQo6IGZhaWxlZCBwcm9n cmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImxpYmph dmEiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdF X1ZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmph dmEgdmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIK fCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJqYXZhIgp8ICNk ZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8 ICNpbmNsdWRlIDxzdGRhcmcuaD4KfCAjaW5jbHVkZSA8c3RkaW8uaD4KfCBzdHJ1Y3Qgc3RhdDsK fCAvKiBNb3N0IG9mIHRoZSBmb2xsb3dpbmcgdGVzdHMgYXJlIHN0b2xlbiBmcm9tIFJDUyA1Ljcn cyBzcmMvY29uZi5zaC4gICovCnwgc3RydWN0IGJ1ZiB7IGludCB4OyB9Owp8IEZJTEUgKiAoKnJj c29wZW4pIChzdHJ1Y3QgYnVmICosIHN0cnVjdCBzdGF0ICosIGludCk7Cnwgc3RhdGljIGNoYXIg KmUgKHAsIGkpCnwgICAgICBjaGFyICoqcDsKfCAgICAgIGludCBpOwp8IHsKfCAgIHJldHVybiBw W2ldOwp8IH0KfCBzdGF0aWMgY2hhciAqZiAoY2hhciAqICgqZykgKGNoYXIgKiosIGludCksIGNo YXIgKipwLCAuLi4pCnwgewp8ICAgY2hhciAqczsKfCAgIHZhX2xpc3QgdjsKfCAgIHZhX3N0YXJ0 ICh2LHApOwp8ICAgcyA9IGcgKHAsIHZhX2FyZyAodixpbnQpKTsKfCAgIHZhX2VuZCAodik7Cnwg ICByZXR1cm4gczsKfCB9CnwgCnwgLyogT1NGIDQuMCBDb21wYXEgY2MgaXMgc29tZSBzb3J0IG9m IGFsbW9zdC1BTlNJIGJ5IGRlZmF1bHQuICBJdCBoYXMKfCAgICBmdW5jdGlvbiBwcm90b3R5cGVz IGFuZCBzdHVmZiwgYnV0IG5vdCAnXHhISCcgaGV4IGNoYXJhY3RlciBjb25zdGFudHMuCnwgICAg VGhlc2UgZG9uJ3QgcHJvdm9rZSBhbiBlcnJvciB1bmZvcnR1bmF0ZWx5LCBpbnN0ZWFkIGFyZSBz aWxlbnRseSB0cmVhdGVkCnwgICAgYXMgJ3gnLiAgVGhlIGZvbGxvd2luZyBpbmR1Y2VzIGFuIGVy cm9yLCB1bnRpbCAtc3RkIGlzIGFkZGVkIHRvIGdldAp8ICAgIHByb3BlciBBTlNJIG1vZGUuICBD dXJpb3VzbHkgJ1x4MDAnIT0neCcgYWx3YXlzIGNvbWVzIG91dCB0cnVlLCBmb3IgYW4KfCAgICBh cnJheSBzaXplIGF0IGxlYXN0LiAgSXQncyBuZWNlc3NhcnkgdG8gd3JpdGUgJ1x4MDAnPT0wIHRv IGdldCBzb21ldGhpbmcKfCAgICB0aGF0J3MgdHJ1ZSBvbmx5IHdpdGggLXN0ZC4gICovCnwgaW50 IG9zZjRfY2NfYXJyYXkgWydceDAwJyA9PSAwID8gMSA6IC0xXTsKfCAKfCAvKiBJQk0gQyA2IGZv ciBBSVggaXMgYWxtb3N0LUFOU0kgYnkgZGVmYXVsdCwgYnV0IGl0IHJlcGxhY2VzIG1hY3JvIHBh cmFtZXRlcnMKfCAgICBpbnNpZGUgc3RyaW5ncyBhbmQgY2hhcmFjdGVyIGNvbnN0YW50cy4gICov CnwgI2RlZmluZSBGT08oeCkgJ3gnCnwgaW50IHhsYzZfY2NfYXJyYXlbRk9PKGEpID09ICd4JyA/ IDEgOiAtMV07CnwgCnwgaW50IHRlc3QgKGludCBpLCBkb3VibGUgeCk7Cnwgc3RydWN0IHMxIHtp bnQgKCpmKSAoaW50IGEpO307Cnwgc3RydWN0IHMyIHtpbnQgKCpmKSAoZG91YmxlIGEpO307Cnwg aW50IHBhaXJuYW1lcyAoaW50LCBjaGFyICoqLCBGSUxFICooKikoc3RydWN0IGJ1ZiAqLCBzdHJ1 Y3Qgc3RhdCAqLCBpbnQpLCBpbnQsIGludCk7CnwgaW50IGFyZ2M7CnwgY2hhciAqKmFyZ3Y7Cnwg aW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gZiAoZSwgYXJndiwgMCkgIT0gYXJndlswXSAgfHwg IGYgKGUsIGFyZ3YsIDEpICE9IGFyZ3ZbMV07CnwgICA7CnwgICByZXR1cm4gMDsKfCB9CjozODA5 OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvc3lzLWluY2x1ZGUgICAgLVhjIC1EX19FWFRFTlNJT05TX18gLWMgLWcgLU8yICBjb25m dGVzdC5jID4mNQp4Z2NjOiBlcnJvcjogdW5yZWNvZ25pemVkIGNvbW1hbmQtbGluZSBvcHRpb24g Jy1YYyc7IGRpZCB5b3UgbWVhbiAnLVgnPwo6MzgwOTogJD8gPSAxCjogZmFpbGVkIHByb2dyYW0g d2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliamF2YSIK fCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVS U0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGliamF2YSB2 ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJsaWJqYXZhIgp8ICNk ZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCnwgI2RlZmlu ZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2lu Y2x1ZGUgPHN0ZGFyZy5oPgp8ICNpbmNsdWRlIDxzdGRpby5oPgp8IHN0cnVjdCBzdGF0Owp8IC8q IE1vc3Qgb2YgdGhlIGZvbGxvd2luZyB0ZXN0cyBhcmUgc3RvbGVuIGZyb20gUkNTIDUuNydzIHNy Yy9jb25mLnNoLiAgKi8KfCBzdHJ1Y3QgYnVmIHsgaW50IHg7IH07CnwgRklMRSAqICgqcmNzb3Bl bikgKHN0cnVjdCBidWYgKiwgc3RydWN0IHN0YXQgKiwgaW50KTsKfCBzdGF0aWMgY2hhciAqZSAo cCwgaSkKfCAgICAgIGNoYXIgKipwOwp8ICAgICAgaW50IGk7Cnwgewp8ICAgcmV0dXJuIHBbaV07 CnwgfQp8IHN0YXRpYyBjaGFyICpmIChjaGFyICogKCpnKSAoY2hhciAqKiwgaW50KSwgY2hhciAq KnAsIC4uLikKfCB7CnwgICBjaGFyICpzOwp8ICAgdmFfbGlzdCB2Owp8ICAgdmFfc3RhcnQgKHYs cCk7CnwgICBzID0gZyAocCwgdmFfYXJnICh2LGludCkpOwp8ICAgdmFfZW5kICh2KTsKfCAgIHJl dHVybiBzOwp8IH0KfCAKfCAvKiBPU0YgNC4wIENvbXBhcSBjYyBpcyBzb21lIHNvcnQgb2YgYWxt b3N0LUFOU0kgYnkgZGVmYXVsdC4gIEl0IGhhcwp8ICAgIGZ1bmN0aW9uIHByb3RvdHlwZXMgYW5k IHN0dWZmLCBidXQgbm90ICdceEhIJyBoZXggY2hhcmFjdGVyIGNvbnN0YW50cy4KfCAgICBUaGVz ZSBkb24ndCBwcm92b2tlIGFuIGVycm9yIHVuZm9ydHVuYXRlbHksIGluc3RlYWQgYXJlIHNpbGVu dGx5IHRyZWF0ZWQKfCAgICBhcyAneCcuICBUaGUgZm9sbG93aW5nIGluZHVjZXMgYW4gZXJyb3Is IHVudGlsIC1zdGQgaXMgYWRkZWQgdG8gZ2V0CnwgICAgcHJvcGVyIEFOU0kgbW9kZS4gIEN1cmlv dXNseSAnXHgwMCchPSd4JyBhbHdheXMgY29tZXMgb3V0IHRydWUsIGZvciBhbgp8ICAgIGFycmF5 IHNpemUgYXQgbGVhc3QuICBJdCdzIG5lY2Vzc2FyeSB0byB3cml0ZSAnXHgwMCc9PTAgdG8gZ2V0 IHNvbWV0aGluZwp8ICAgIHRoYXQncyB0cnVlIG9ubHkgd2l0aCAtc3RkLiAgKi8KfCBpbnQgb3Nm NF9jY19hcnJheSBbJ1x4MDAnID09IDAgPyAxIDogLTFdOwp8IAp8IC8qIElCTSBDIDYgZm9yIEFJ WCBpcyBhbG1vc3QtQU5TSSBieSBkZWZhdWx0LCBidXQgaXQgcmVwbGFjZXMgbWFjcm8gcGFyYW1l dGVycwp8ICAgIGluc2lkZSBzdHJpbmdzIGFuZCBjaGFyYWN0ZXIgY29uc3RhbnRzLiAgKi8KfCAj ZGVmaW5lIEZPTyh4KSAneCcKfCBpbnQgeGxjNl9jY19hcnJheVtGT08oYSkgPT0gJ3gnID8gMSA6 IC0xXTsKfCAKfCBpbnQgdGVzdCAoaW50IGksIGRvdWJsZSB4KTsKfCBzdHJ1Y3QgczEge2ludCAo KmYpIChpbnQgYSk7fTsKfCBzdHJ1Y3QgczIge2ludCAoKmYpIChkb3VibGUgYSk7fTsKfCBpbnQg cGFpcm5hbWVzIChpbnQsIGNoYXIgKiosIEZJTEUgKigqKShzdHJ1Y3QgYnVmICosIHN0cnVjdCBz dGF0ICosIGludCksIGludCwgaW50KTsKfCBpbnQgYXJnYzsKfCBjaGFyICoqYXJndjsKfCBpbnQK fCBtYWluICgpCnwgewp8IHJldHVybiBmIChlLCBhcmd2LCAwKSAhPSBhcmd2WzBdICB8fCAgZiAo ZSwgYXJndiwgMSkgIT0gYXJndlsxXTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KOjM4MDk6IHJl c3VsdDogdW5zdXBwb3J0ZWQKOjM4MDk6IGNoZWNraW5nIHdoZXRoZXIgL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRl ICAgIHVuZGVyc3RhbmRzIC1jIGFuZCAtbyB0b2dldGhlcgo6NDc2OTogL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRl ICAgIC1jIGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QyLm8KOjQ3NzI6ICQ/ID0gMAo6NDc2OTogL2hv bWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxk Ly4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L3N5cy1pbmNsdWRlICAgIC1jIGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QyLm8KOjQ3NzI6ICQ/ID0g MAo6MzgwOTogcmVzdWx0OiB5ZXMKOjM4MDk6IGNoZWNraW5nIGZvciBzdHlsZSBvZiBpbmNsdWRl IHVzZWQgYnkgbWFrZQo6MzgwOTogcmVzdWx0OiBHTlUKOjM4MDk6IGNoZWNraW5nIGRlcGVuZGVu Y3kgc3R5bGUgb2YgL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pv cG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9i aW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgCjozODA5OiByZXN1bHQ6IGdjYzMKOjM4MDk6 IGNoZWNraW5nIGZvciBDKysgY29tcGlsZXIgdmVyc2lvbgo6MzgwOTogIC9ob21lL3pvcG9saXM0 L2djamJ1aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pi dWlsZC8uL2djYyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1w Yy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4 Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8ubGlicyAtTC9ob21lL3pvcG9saXM0 L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL2xpYnN1cGMrKy8ubGli cyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgt Z251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1p bmNsdWRlICAgIC0tdmVyc2lvbiA+JjUKeGdjYyAoR0NDKSAxMy4wLjAgMjAyMjA1MDggKGV4cGVy aW1lbnRhbCkKQ29weXJpZ2h0IChDKSAyMDIyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j LgpUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRp dGlvbnMuICBUaGVyZSBpcyBOTwp3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4KCjozODA5OiAkPyA9IDAKOjM4 MDk6ICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1C L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MgLW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlz NC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxp YnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMr Ky12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmlu LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtdiA+JjUKUmVhZGluZyBzcGVjcyBmcm9tIC9o b21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3NwZWNzCkNPTExFQ1RfR0NDPS9ob21lL3pvcG9s aXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MKQ09MTEVDVF9MVE9fV1JBUFBFUj0vaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy9sdG8td3JhcHBlcgpUYXJnZXQ6IHg4Nl82NC1wYy1saW51eC1nbnUK Q29uZmlndXJlZCB3aXRoOiAuLi9nY2ovY29uZmlndXJlIC0tZGlzYWJsZS1ib290c3RyYXAgLS1k aXNhYmxlLWxpYnN0ZGN4eCAtLWVuYWJsZS1sYW5ndWFnZXM9amF2YQpUaHJlYWQgbW9kZWw6IHBv c2l4ClN1cHBvcnRlZCBMVE8gY29tcHJlc3Npb24gYWxnb3JpdGhtczogemxpYgpnY2MgdmVyc2lv biAxMy4wLjAgMjAyMjA1MDggKGV4cGVyaW1lbnRhbCkgKEdDQykgCjozODA5OiAkPyA9IDAKOjM4 MDk6ICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1C L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MgLW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlz NC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxp YnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMr Ky12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmlu LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtViA+JjUKeGdjYzogZXJyb3I6IHVucmVjb2du aXplZCBjb21tYW5kLWxpbmUgb3B0aW9uICctVicKeGdjYzogZmF0YWwgZXJyb3I6IG5vIGlucHV0 IGZpbGVzCmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCjozODA5OiAkPyA9IDEKOjM4MDk6ICAvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MgLW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWls ZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJz dXBjKysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9zeXMtaW5jbHVkZSAgICAtcXZlcnNpb24gPiY1CnhnY2M6IGVycm9yOiB1bnJlY29nbml6 ZWQgY29tbWFuZC1saW5lIG9wdGlvbiAnLXF2ZXJzaW9uJzsgZGlkIHlvdSBtZWFuICctLXZlcnNp b24nPwp4Z2NjOiBmYXRhbCBlcnJvcjogbm8gaW5wdXQgZmlsZXMKY29tcGlsYXRpb24gdGVybWlu YXRlZC4KOjM4MDk6ICQ/ID0gMQo6MzgwOTogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcg dGhlIEdOVSBDKysgY29tcGlsZXIKOjM4MDk6ICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2dj Yy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MgLW5v c3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xp YnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgt Z251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZf NjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1p c3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAt ZyAtTzIgLURfR05VX1NPVVJDRSAtZm5vLWJ1aWx0aW4gIGNvbmZ0ZXN0LmNwcCA+JjUKOjM4MDk6 ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhlciAgL2hvbWUv em9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtc2hhcmVkLWxpYmdjYyAtQi9ob21lL3pvcG9s aXM0L2djamJ1aWxkLy4vZ2NjIC1ub3N0ZGluYysrIC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv eDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjIC1ML2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjLy5saWJzIC1ML2hvbWUv em9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvbGlic3Vw YysrLy5saWJzIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvc3lzLWluY2x1ZGUgICAgYWNjZXB0cyAtZwo6MzgwOTogIC9ob21lL3pvcG9saXM0L2djamJ1 aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8u L2djYyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51 eC1nbnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1w Yy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8ubGlicyAtTC9ob21lL3pvcG9saXM0L2djamJ1 aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL2xpYnN1cGMrKy8ubGlicyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRl ICAgIC1jIC1nICBjb25mdGVzdC5jcHAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6ICAvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xp czQvZ2NqYnVpbGQvLi9nY2MgLW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94 ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pi dWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBj KysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9zeXMtaW5jbHVkZSAgICAtYyAgIGNvbmZ0ZXN0LmNwcCA+JjUKOjM4MDk6ICQ/ID0gMAo6Mzgw OTogIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2MgLUIv aG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9saXM0 L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21lL3pv cG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8ubGli cyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysr LXYzL2xpYnN1cGMrKy8ubGlicyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4v IC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nICBjb25mdGVzdC5jcHAgPiY1CjozODA5 OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGRlcGVuZGVuY3kgc3R5 bGUgb2YgIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2Mg LUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9s aXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21l L3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8u bGlicyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3Rk YysrLXYzL2xpYnN1cGMrKy8ubGlicyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9i aW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgCjozODA5OiByZXN1bHQ6IGdjYzMKOjM4MDk6 IGNoZWNraW5nIGZvciB4ODZfNjQtcGMtbGludXgtZ251LWFzCjozODA5OiByZXN1bHQ6IC9ob21l L3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL2FzCjozODA5OiBjaGVja2luZyBmb3IgeDg2XzY0LXBj LWxpbnV4LWdudS1sZAo6MzgwOTogcmVzdWx0OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2dj Yy9jb2xsZWN0LWxkCjozODA5OiBjaGVja2luZyBmb3IgeDg2XzY0LXBjLWxpbnV4LWdudS1hcgo6 MzgwOTogcmVzdWx0OiBhcgo6MzgwOTogY2hlY2tpbmcgZm9yIHg4Nl82NC1wYy1saW51eC1nbnUt cmFubGliCjozODA5OiByZXN1bHQ6IHJhbmxpYgo6MzgwOTogY2hlY2tpbmcgZm9yIHg4Nl82NC1w Yy1saW51eC1nbnUtZGxsdG9vbAo6MzgwOTogcmVzdWx0OiBkbGx0b29sCjozODA5OiBjaGVja2lu ZyBmb3IgZ2F3awo6MzgwOTogcmVzdWx0OiBtYXdrCjozODA5OiBjaGVja2luZyBmb3IgamFyCjoz ODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgZmFzdGphcgo6MzgwOTogcmVzdWx0 OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGdqYXIKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNo ZWNraW5nIGZvciB6aXAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciB1bnpp cAo6MzgwOTogcmVzdWx0OiB1bnppcAo6MzgwOTogZXJyb3I6IGNhbm5vdCBmaW5kIG5laXRoZXIg emlwIG5vciBqYXIsIGNhbm5vdCBjb250aW51ZQo6MzgwOTogY2hlY2tpbmcgd2hldGhlciB0byBl bmFibGUgbWFpbnRhaW5lci1zcGVjaWZpYyBwb3J0aW9ucyBvZiBNYWtlZmlsZXMKOjM4MDk6IHJl c3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGlmIHRoZSBsaW5rZXIgKC9ob21lL3pvcG9saXM0L2dj amJ1aWxkLy4vZ2NjL2NvbGxlY3QtbGQpIGlzIEdOVSBsZApHTlUgbGQgKEdOVSBCaW51dGlscyBm b3IgRGViaWFuKSAyLjM1LjIKOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyBpZiB0 aGUgR05VIGxpbmtlciAoL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvY29sbGVjdC1sZCkg c3VwcG9ydHMgLUJzeW1ib2xpYy1mdW5jdGlvbnMKICAtQnN5bWJvbGljLWZ1bmN0aW9ucyAgICAg ICAgQmluZCBnbG9iYWwgZnVuY3Rpb24gcmVmZXJlbmNlcyBsb2NhbGx5CjozODA5OiByZXN1bHQ6 IHllcwo6MzgwOTogY2hlY2tpbmcgZHluYW1pYyBsaW5rZXIgY2hhcmFjdGVyaXN0aWNzCjozODA5 OiByZXN1bHQ6IEdOVS9MaW51eCBsZC5zbwo6MzgwOTogY2hlY2tpbmcgd2hpY2ggdmFyaWFibGUg c3BlY2lmaWVzIHJ1bi10aW1lIGxpYnJhcnkgcGF0aAo6MzgwOTogcmVzdWx0OiBMRF9MSUJSQVJZ X1BBVEgKOjM4MDk6IGNoZWNraW5nIGhvdyB0byBwcmludCBzdHJpbmdzCjozODA5OiByZXN1bHQ6 IHByaW50Zgo6MzgwOTogY2hlY2tpbmcgZm9yIGEgc2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUg b3V0cHV0CjozODA5OiByZXN1bHQ6IC9iaW4vc2VkCjozODA5OiBjaGVja2luZyBmb3IgZ3JlcCB0 aGF0IGhhbmRsZXMgbG9uZyBsaW5lcyBhbmQgLWUKOjM4MDk6IGVycm9yOiBubyBhY2NlcHRhYmxl IGdyZXAgY291bGQgYmUgZm91bmQgaW4gL3Vzci9sb2NhbC9zYmluOi91c3IvbG9jYWwvYmluOi91 c3Ivc2JpbjovdXNyL2Jpbjovc2JpbjovYmluOi91c3IvZ2FtZXM6L3Vzci9sb2NhbC9nYW1lczov dXNyL2xpYi93c2wvbGliOi9tbnQvYy9Qcm9ncmFtIEZpbGVzL1dpbmRvd3NBcHBzL1RoZURlYmlh blByb2plY3QuRGViaWFuR05VTGludXhfMS4xMi4yLjBfeDY0X183NnY0Z2ZzejE5aHY0Oi9tbnQv Yy9XSU5ET1dTL3N5c3RlbTMyOi9tbnQvYy9XSU5ET1dTOi9tbnQvYy9XSU5ET1dTL1N5c3RlbTMy L1diZW06L21udC9jL1dJTkRPV1MvU3lzdGVtMzIvV2luZG93c1Bvd2VyU2hlbGwvdjEuMC86L21u dC9jL1dJTkRPV1MvU3lzdGVtMzIvT3BlblNTSC86L21udC9jL1Byb2dyYW0gRmlsZXMgKHg4Nikv Q29tbW9uIEZpbGVzL1Byb3BlbGxlcmhlYWQgU29mdHdhcmUvUmVXaXJlLzovbW50L2MvUHJvZ3Jh bSBGaWxlcy9Db21tb24gRmlsZXMvUHJvcGVsbGVyaGVhZCBTb2Z0d2FyZS9SZVdpcmUvOi9tbnQv Yy9Vc2Vycy8yNG1zLmRvd24vQXBwRGF0YS9Mb2NhbC9NaWNyb3NvZnQvV2luZG93c0FwcHM6L21u dC9jL1VzZXJzLzI0bXMuZG93bi9BcHBEYXRhL0xvY2FsL1BhY2thZ2VzL1B5dGhvblNvZnR3YXJl Rm91bmRhdGlvbi5QeXRob24uMy4xMF9xYno1bjJrZnJhOHAwL0xvY2FsQ2FjaGUvbG9jYWwtcGFj a2FnZXMvUHl0aG9uMzEwL1NjcmlwdHM6L3Vzci94cGc0L2Jpbgo6MzgwOTogcmVzdWx0OiAKOjM4 MDk6IGNoZWNraW5nIGZvciBlZ3JlcAo6MzgwOTogZXJyb3I6IG5vIGFjY2VwdGFibGUgZWdyZXAg Y291bGQgYmUgZm91bmQgaW4gL3Vzci9sb2NhbC9zYmluOi91c3IvbG9jYWwvYmluOi91c3Ivc2Jp bjovdXNyL2Jpbjovc2JpbjovYmluOi91c3IvZ2FtZXM6L3Vzci9sb2NhbC9nYW1lczovdXNyL2xp Yi93c2wvbGliOi9tbnQvYy9Qcm9ncmFtIEZpbGVzL1dpbmRvd3NBcHBzL1RoZURlYmlhblByb2pl Y3QuRGViaWFuR05VTGludXhfMS4xMi4yLjBfeDY0X183NnY0Z2ZzejE5aHY0Oi9tbnQvYy9XSU5E T1dTL3N5c3RlbTMyOi9tbnQvYy9XSU5ET1dTOi9tbnQvYy9XSU5ET1dTL1N5c3RlbTMyL1diZW06 L21udC9jL1dJTkRPV1MvU3lzdGVtMzIvV2luZG93c1Bvd2VyU2hlbGwvdjEuMC86L21udC9jL1dJ TkRPV1MvU3lzdGVtMzIvT3BlblNTSC86L21udC9jL1Byb2dyYW0gRmlsZXMgKHg4NikvQ29tbW9u IEZpbGVzL1Byb3BlbGxlcmhlYWQgU29mdHdhcmUvUmVXaXJlLzovbW50L2MvUHJvZ3JhbSBGaWxl cy9Db21tb24gRmlsZXMvUHJvcGVsbGVyaGVhZCBTb2Z0d2FyZS9SZVdpcmUvOi9tbnQvYy9Vc2Vy cy8yNG1zLmRvd24vQXBwRGF0YS9Mb2NhbC9NaWNyb3NvZnQvV2luZG93c0FwcHM6L21udC9jL1Vz ZXJzLzI0bXMuZG93bi9BcHBEYXRhL0xvY2FsL1BhY2thZ2VzL1B5dGhvblNvZnR3YXJlRm91bmRh dGlvbi5QeXRob24uMy4xMF9xYno1bjJrZnJhOHAwL0xvY2FsQ2FjaGUvbG9jYWwtcGFja2FnZXMv UHl0aG9uMzEwL1NjcmlwdHM6L3Vzci94cGc0L2Jpbgo6MzgwOTogcmVzdWx0OiAKOjM4MDk6IGNo ZWNraW5nIGZvciBmZ3JlcAo6MzgwOTogZXJyb3I6IG5vIGFjY2VwdGFibGUgZmdyZXAgY291bGQg YmUgZm91bmQgaW4gL3Vzci9sb2NhbC9zYmluOi91c3IvbG9jYWwvYmluOi91c3Ivc2JpbjovdXNy L2Jpbjovc2JpbjovYmluOi91c3IvZ2FtZXM6L3Vzci9sb2NhbC9nYW1lczovdXNyL2xpYi93c2wv bGliOi9tbnQvYy9Qcm9ncmFtIEZpbGVzL1dpbmRvd3NBcHBzL1RoZURlYmlhblByb2plY3QuRGVi aWFuR05VTGludXhfMS4xMi4yLjBfeDY0X183NnY0Z2ZzejE5aHY0Oi9tbnQvYy9XSU5ET1dTL3N5 c3RlbTMyOi9tbnQvYy9XSU5ET1dTOi9tbnQvYy9XSU5ET1dTL1N5c3RlbTMyL1diZW06L21udC9j L1dJTkRPV1MvU3lzdGVtMzIvV2luZG93c1Bvd2VyU2hlbGwvdjEuMC86L21udC9jL1dJTkRPV1Mv U3lzdGVtMzIvT3BlblNTSC86L21udC9jL1Byb2dyYW0gRmlsZXMgKHg4NikvQ29tbW9uIEZpbGVz L1Byb3BlbGxlcmhlYWQgU29mdHdhcmUvUmVXaXJlLzovbW50L2MvUHJvZ3JhbSBGaWxlcy9Db21t b24gRmlsZXMvUHJvcGVsbGVyaGVhZCBTb2Z0d2FyZS9SZVdpcmUvOi9tbnQvYy9Vc2Vycy8yNG1z LmRvd24vQXBwRGF0YS9Mb2NhbC9NaWNyb3NvZnQvV2luZG93c0FwcHM6L21udC9jL1VzZXJzLzI0 bXMuZG93bi9BcHBEYXRhL0xvY2FsL1BhY2thZ2VzL1B5dGhvblNvZnR3YXJlRm91bmRhdGlvbi5Q eXRob24uMy4xMF9xYno1bjJrZnJhOHAwL0xvY2FsQ2FjaGUvbG9jYWwtcGFja2FnZXMvUHl0aG9u MzEwL1NjcmlwdHM6L3Vzci94cGc0L2Jpbgo6MzgwOTogcmVzdWx0OiAKOjM4MDk6IGNoZWNraW5n IGZvciBHTlUgbGQKOjM4MDk6IHJlc3VsdDogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv Y29sbGVjdC1sZAo6MzgwOTogY2hlY2tpbmcgaWYgdGhlIGxpbmtlciAoL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MvY29sbGVjdC1sZCkgaXMgR05VIGxkCjozODA5OiByZXN1bHQ6IHllcwo6 MzgwOTogY2hlY2tpbmcgZm9yIEJTRC0gb3IgTVMtY29tcGF0aWJsZSBuYW1lIGxpc3RlciAobm0p CjozODA5OiByZXN1bHQ6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL25tCjozODA5OiBj aGVja2luZyB0aGUgbmFtZSBsaXN0ZXIgKC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL25t KSBpbnRlcmZhY2UKOjc3Mjg6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIv aG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0 LmMgPiY1Cjo3NzMxOiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy9ubSAiY29uZnRlc3Qu byIKOjc3MzQ6IG91dHB1dAowMDAwMDAwMDAwMDAwMDAwIEIgc29tZV92YXJpYWJsZQo6MzgwOTog cmVzdWx0OiBCU0Qgbm0KOjM4MDk6IGNoZWNraW5nIHRoZSBtYXhpbXVtIGxlbmd0aCBvZiBjb21t YW5kIGxpbmUgYXJndW1lbnRzCjozODA5OiByZXN1bHQ6IDE1NzI4NjQKOjM4MDk6IGNoZWNraW5n IHdoZXRoZXIgdGhlIHNoZWxsIHVuZGVyc3RhbmRzIHNvbWUgWFNJIGNvbnN0cnVjdHMKOjM4MDk6 IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyB3aGV0aGVyIHRoZSBzaGVsbCB1bmRlcnN0YW5k cyAiKz0iCjozODA5OiByZXN1bHQ6IHllcwo6MzgwOTogY2hlY2tpbmcgZm9yIC9ob21lL3pvcG9s aXM0L2djamJ1aWxkLy4vZ2NjL2NvbGxlY3QtbGQgb3B0aW9uIHRvIHJlbG9hZCBvYmplY3QgZmls ZXMKOjM4MDk6IHJlc3VsdDogLXIKOjM4MDk6IGNoZWNraW5nIGZvciB4ODZfNjQtcGMtbGludXgt Z251LW9iamR1bXAKOjM4MDk6IHJlc3VsdDogb2JqZHVtcAo6MzgwOTogY2hlY2tpbmcgaG93IHRv IHJlY29nbml6ZSBkZXBlbmRlbnQgbGlicmFyaWVzCjozODA5OiByZXN1bHQ6IHBhc3NfYWxsCjoz ODA5OiBjaGVja2luZyBmb3IgeDg2XzY0LXBjLWxpbnV4LWdudS1hcgo6MzgwOTogcmVzdWx0OiBh cgo6MzgwOTogY2hlY2tpbmcgZm9yIHg4Nl82NC1wYy1saW51eC1nbnUtc3RyaXAKOjM4MDk6IHJl c3VsdDogc3RyaXAKOjM4MDk6IGNoZWNraW5nIGZvciB4ODZfNjQtcGMtbGludXgtZ251LXJhbmxp Ygo6MzgwOTogcmVzdWx0OiByYW5saWIKOjM4MDk6IGNoZWNraW5nIGNvbW1hbmQgdG8gcGFyc2Ug L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mvbm0gb3V0cHV0IGZyb20gL2hvbWUvem9wb2xp czQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAt Qi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNs dWRlICAgIG9iamVjdAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAt Qi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0 ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1PMiAgY29uZnRl c3QuYyA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9n Y2Mvbm0gY29uZnRlc3QubyBcfCBzZWQgLW4gLWUgJ3MvXi4qWyBdXChbQUJDREdJUlNUV11bQUJD REdJUlNUV10qXClbIF1bIF0qXChbX0EtWmEtel1bX0EtWmEtejAtOV0qXCkkL1wxIFwyIFwyL3An IFw+IGNvbmZ0ZXN0Lm5tCjozODA5OiAkPyA9IDAKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1 aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRl IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAt byBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIGNvbmZ0c3RtLm8gPiY1CjozODA5OiAkPyA9 IDAKOjM4MDk6IHJlc3VsdDogb2sKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2Nj L3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIv IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIg IGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IGNoZWNraW5nIGhvdyB0byBydW4g dGhlIEMgcHJlcHJvY2Vzc29yCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94 Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLUUgIGNvbmZ0ZXN0 LmMKOjM4MDk6ICQ/ID0gMAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdj YyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlz eXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1FICBjb25mdGVzdC5j CjozODA5OiAkPyA9IDAKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2Mg LUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lz dGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtRSAtdHJhZGl0aW9uYWwt Y3BwICBjb25mdGVzdC5jCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2luY2x1ZGUvZmVhdHVy ZXMuaDo0NjIsCiAgICAgICAgICAgICAgICAgZnJvbSAvdXNyL2luY2x1ZGUvYXNzZXJ0Lmg6MzYs CiAgICAgICAgICAgICAgICAgZnJvbSBjb25mdGVzdC5jOjE5OgovdXNyL2luY2x1ZGUveDg2XzY0 LWxpbnV4LWdudS9zeXMvY2RlZnMuaDozMDozOiBlcnJvcjogI2Vycm9yICJZb3UgbmVlZCBhIElT TyBDIGNvbmZvcm1pbmcgY29tcGlsZXIgdG8gdXNlIHRoZSBnbGliYyBoZWFkZXJzIgogICAzMCB8 ICMgZXJyb3IgIllvdSBuZWVkIGEgSVNPIEMgY29uZm9ybWluZyBjb21waWxlciB0byB1c2UgdGhl IGdsaWJjIGhlYWRlcnMiCiAgICAgIHwgICBefn5+fgo6MzgwOTogJD8gPSAxCjogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGli amF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGli amF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJsaWJqYXZh Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCnwg I2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExURExfU0hMSUJQQVRI X1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQgIiIKfCAjZGVmaW5l IExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRETCAxCnwgLyogZW5k IGNvbmZkZWZzLmguICAqLwp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+ CnwgI2Vsc2UKfCAjIGluY2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAkJICAgICBTeW50YXgg ZXJyb3IKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtRSAtdHJhZGl0aW9uYWwtY3BwICBjb25m dGVzdC5jCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2luY2x1ZGUvZmVhdHVyZXMuaDo0NjIs CiAgICAgICAgICAgICAgICAgZnJvbSAvdXNyL2luY2x1ZGUvYXNzZXJ0Lmg6MzYsCiAgICAgICAg ICAgICAgICAgZnJvbSBjb25mdGVzdC5jOjE5OgovdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdu dS9zeXMvY2RlZnMuaDozMDozOiBlcnJvcjogI2Vycm9yICJZb3UgbmVlZCBhIElTTyBDIGNvbmZv cm1pbmcgY29tcGlsZXIgdG8gdXNlIHRoZSBnbGliYyBoZWFkZXJzIgogICAzMCB8ICMgZXJyb3Ig IllvdSBuZWVkIGEgSVNPIEMgY29uZm9ybWluZyBjb21waWxlciB0byB1c2UgdGhlIGdsaWJjIGhl YWRlcnMiCiAgICAgIHwgICBefn5+fgo6MzgwOTogJD8gPSAxCjogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliamF2YSIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGliamF2YSB2ZXJz aW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJsaWJqYXZhIgp8ICNkZWZp bmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCnwgI2RlZmluZSBW RVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExURExfU0hMSUJQQVRIX1ZBUiAiTERf TElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQgIiIKfCAjZGVmaW5lIExJQkdDSl9Q UkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRETCAxCnwgLyogZW5kIGNvbmZkZWZz LmguICAqLwp8ICNpZmRlZiBfX1NURENfXwp8ICMgaW5jbHVkZSA8bGltaXRzLmg+CnwgI2Vsc2UK fCAjIGluY2x1ZGUgPGFzc2VydC5oPgp8ICNlbmRpZgp8IAkJICAgICBTeW50YXggZXJyb3IKOjM4 MDk6IC9saWIvY3BwICBjb25mdGVzdC5jCjozODA5OiAkPyA9IDAKOjM4MDk6IC9saWIvY3BwICBj b25mdGVzdC5jCjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogL2xpYi9jcHAKOjM4MDk6IC9s aWIvY3BwICBjb25mdGVzdC5jCjozODA5OiAkPyA9IDAKOjM4MDk6IC9saWIvY3BwICBjb25mdGVz dC5jCjozODA5OiAkPyA9IDAKOjM4MDk6IGVycm9yOiBpbiBgL2hvbWUvem9wb2xpczQvZ2NqYnVp bGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJqYXZhJzoKOjM4MDk6IGVycm9yOiBDIHByZXByb2Nl c3NvciAiL2xpYi9jcHAiIGZhaWxzIHNhbml0eSBjaGVjawpTZWUgYGNvbmZpZy5sb2cnIGZvciBt b3JlIGRldGFpbHMKOjM4MDk6IGNoZWNraW5nIGZvciBBTlNJIEMgaGVhZGVyIGZpbGVzCjozODA5 OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8g PSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igc3lzL3R5cGVzLmgKOjM4 MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAk PyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBzeXMvc3RhdC5oCjoz ODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTog JD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igc3RkbGliLmgKOjM4 MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAk PyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBzdHJpbmcuaAo6Mzgw OTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIG1lbW9yeS5oCjozODA5OiByZXN1bHQ6 IG5vCjozODA5OiBjaGVja2luZyBmb3Igc3RyaW5ncy5oCjozODA5OiAvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUg ICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6 IG5vCjozODA5OiBjaGVja2luZyBmb3IgaW50dHlwZXMuaAo6MzgwOTogcmVzdWx0OiBubwo6Mzgw OTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2lu ZyBmb3IgdW5pc3RkLmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBkbGZj bi5oCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jp bi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6 MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igb2JqZGly CjozODA5OiByZXN1bHQ6IC5saWJzCjozODA5OiBjaGVja2luZyBmb3IgL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRl ICAgIG9wdGlvbiB0byBwcm9kdWNlIFBJQwo6MzgwOTogcmVzdWx0OiAgLURQSUMKOjM4MDk6IGNo ZWNraW5nIGlmIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmlu LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICBQSUMgZmxhZyAgLURQSUMgd29ya3MKOjEwODYx OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICAgLURQSUMgLURQSUMgY29uZnRlc3QuYyA+ JjUKOjEwODY1OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyBpZiAv aG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVp bGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvc3lzLWluY2x1ZGUgICAgc3RhdGljIGZsYWcgIHdvcmtzCjozODA5OiByZXN1bHQ6IHllcwo6 MzgwOTogY2hlY2tpbmcgaWYgL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9o b21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0g L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIHN1cHBvcnRzIC1jIC1vIGZpbGUu bwo6MTA5NjY6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmlu LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIC1vIG91dC9jb25mdGVzdDIu byBjb25mdGVzdC5jID4mNQo6MTA5NzA6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiB5ZXMKOjM4MDk6 IGNoZWNraW5nIGlmIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICBzdXBwb3J0cyAtYyAtbyBmaWxlLm8KOjM4 MDk6IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyB3aGV0aGVyIHRoZSAvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1C L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1 ZGUgICAgbGlua2VyICgvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy9jb2xsZWN0LWxkIC1t IGVsZl94ODZfNjQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKOjM4MDk6IHJlc3VsdDogbm8K OjM4MDk6IGNoZWNraW5nIGR5bmFtaWMgbGlua2VyIGNoYXJhY3RlcmlzdGljcwo6MzgwOTogL2hv bWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxk Ly4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgICBjb25mdGVzdC5jICA+JjUKOjM4 MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBHTlUvTGludXggbGQuc28KOjM4MDk6IGNoZWNraW5n IGhvdyB0byBoYXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKOjM4MDk6IHJlc3Vs dDogdW5zdXBwb3J0ZWQKOjM4MDk6IGNoZWNraW5nIGZvciBzaGxfbG9hZAo6MzgwOTogL2hvbWUv em9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4v Z2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5 cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQovdXNyL2Jp bi9sZDogL3RtcC9jY3lOaTc3Ny5vOiBpbiBmdW5jdGlvbiBgbWFpbic6Ci9ob21lL3pvcG9saXM0 L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGliamF2YS9jb25mdGVzdC5jOjUwOiB1bmRl ZmluZWQgcmVmZXJlbmNlIHRvIGBzaGxfbG9hZCcKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5l ZCAxIGV4aXQgc3RhdHVzCjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUg UEFDS0FHRV9UQVJOQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJz aW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51 c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNL QUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04g InZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZ X1BBVEgiCnwgI2RlZmluZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAi L3Vzci9sb2NhbCIKfCAjZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxp YnMvIgp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAvKiBEZWZpbmUgc2hsX2xvYWQgdG8gYW4g aW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxpbWl0cy5oPiBkZWNsYXJlcyBzaGxfbG9hZC4K fCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9m ZGF5LiAgKi8KfCAjZGVmaW5lIHNobF9sb2FkIGlubm9jdW91c19zaGxfbG9hZAp8IAp8IC8qIFN5 c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJv dG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdpdGggY2hhciBzaGxfbG9hZCAoKTsg YmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4gaWYgX19TVERDX18g aXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3Rh bmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERDX18KfCAjIGluY2x1ZGUgPGxp bWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5kaWYKfCAKfCAjdW5k ZWYgc2hsX2xvYWQKfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0 byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0 aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVu dCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8 IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIHNobF9sb2FkICgpOwp8IC8qIFRoZSBHTlUgQyBs aWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0IGltcGxlbWVudHMKfCAg ICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFs bHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18gYW5kIHRoZSBub3JtYWwg bmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHViX3NobF9sb2FkIHx8IGRl ZmluZWQgX19zdHViX19fc2hsX2xvYWQKfCBjaG9rZSBtZQp8ICNlbmRpZgp8IAp8IGludAp8IG1h aW4gKCkKfCB7CnwgcmV0dXJuIHNobF9sb2FkICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQo6 MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHNobF9sb2FkIGluIC1sZGxkCjoz ODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAt bGRsZCAgID4mNQovdXNyL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxkbGQKY29sbGVjdDI6IGVycm9y OiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3Jh bSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZh Igp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9W RVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZh IHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwg I2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVm aW5lIFZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFS ICJMRF9MSUJSQVJZX1BBVEgiCnwgI2RlZmluZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElC R0NKX1BSRUZJWCAiL3Vzci9sb2NhbCIKfCAjZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExU X09CSkRJUiAiLmxpYnMvIgp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlk ZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2Ug Y2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAg ICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBw bHkuICAqLwp8ICNpZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFy IHNobF9sb2FkICgpOwp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIHNobF9sb2FkICgpOwp8 ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcg Zm9yIGRsb3Blbgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9o b21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0g L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAg IGNvbmZ0ZXN0LmMgID4mNQovdXNyL2Jpbi9sZDogL3RtcC9jY3pZcjA5RS5vOiBpbiBmdW5jdGlv biBgbWFpbic6Ci9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGli amF2YS9jb25mdGVzdC5jOjUwOiB1bmRlZmluZWQgcmVmZXJlbmNlIHRvIGBkbG9wZW4nCmNvbGxl Y3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwo6MzgwOTogJD8gPSAxCjogZmFp bGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFN RSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5l IFBBQ0tBR0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklO RyAibGliamF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJs aWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmph dmEiCnwgI2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExURExfU0hM SUJQQVRIX1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQgIiIKfCAj ZGVmaW5lIExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRETCAxCnwg I2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgLyog RGVmaW5lIGRsb3BlbiB0byBhbiBpbm5vY3VvdXMgdmFyaWFudCwgaW4gY2FzZSA8bGltaXRzLmg+ IGRlY2xhcmVzIGRsb3Blbi4KfCAgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4g ZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KfCAjZGVmaW5lIGRsb3BlbiBpbm5vY3VvdXNfZGxv cGVuCnwgCnwgLyogU3lzdGVtIGhlYWRlciB0byBkZWZpbmUgX19zdHViIG1hY3JvcyBhbmQgaG9w ZWZ1bGx5IGZldyBwcm90b3R5cGVzLAp8ICAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFy IGRsb3BlbiAoKTsgYmVsb3cuCnwgICAgIFByZWZlciA8bGltaXRzLmg+IHRvIDxhc3NlcnQuaD4g aWYgX19TVERDX18gaXMgZGVmaW5lZCwgc2luY2UKfCAgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZl biBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KfCAKfCAjaWZkZWYgX19TVERDX18KfCAj IGluY2x1ZGUgPGxpbWl0cy5oPgp8ICNlbHNlCnwgIyBpbmNsdWRlIDxhc3NlcnQuaD4KfCAjZW5k aWYKfCAKfCAjdW5kZWYgZGxvcGVuCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBw cm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWln aHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBp dHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19j cGx1c3BsdXMKfCBleHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBkbG9wZW4gKCk7CnwgLyogVGhl IEdOVSBDIGxpYnJhcnkgZGVmaW5lcyB0aGlzIGZvciBmdW5jdGlvbnMgd2hpY2ggaXQgaW1wbGVt ZW50cwp8ICAgICB0byBhbHdheXMgZmFpbCB3aXRoIEVOT1NZUy4gIFNvbWUgZnVuY3Rpb25zIGFy ZSBhY3R1YWxseSBuYW1lZAp8ICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhl IG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KfCAjaWYgZGVmaW5lZCBfX3N0dWJfZGxvcGVu IHx8IGRlZmluZWQgX19zdHViX19fZGxvcGVuCnwgY2hva2UgbWUKfCAjZW5kaWYKfCAKfCBpbnQK fCBtYWluICgpCnwgewp8IHJldHVybiBkbG9wZW4gKCk7CnwgICA7CnwgICByZXR1cm4gMDsKfCB9 CjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgZGxvcGVuIGluIC1sZGwKOjM4 MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1s ZGwgICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcg Zm9yIGRsb3BlbiBpbiAtbHN2bGQKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2Nj L3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIv IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVz dCAtZyAtTzIgICBjb25mdGVzdC5jIC1sc3ZsZCAgID4mNQovdXNyL2Jpbi9sZDogY2Fubm90IGZp bmQgLWxzdmxkCmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwo6Mzgw OTogJD8gPSAxCjogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVm aW5lIFBBQ0tBR0VfTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGli amF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmlu ZSBQQUNLQUdFX1NUUklORyAibGliamF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tB R0VfQlVHUkVQT1JUICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5l IFBBQ0tBR0UgImxpYmphdmEiCnwgI2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAj ZGVmaW5lIExURExfU0hMSUJQQVRIX1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdU X1RPT0xLSVQgIiIKfCAjZGVmaW5lIExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmlu ZSBVU0VfTFRETCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8g YXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhl IHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQg cHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBl eHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBkbG9wZW4gKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsK fCByZXR1cm4gZGxvcGVuICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQo6MzgwOTogcmVzdWx0 OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGRsZF9saW5rIGluIC1sZGxkCjozODA5OiAvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9n Y2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lz LWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbGRsZCAgID4mNQov dXNyL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxkbGQKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5l ZCAxIGV4aXQgc3RhdHVzCjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyog Y29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUg UEFDS0FHRV9UQVJOQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJz aW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51 c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNL QUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04g InZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZ X1BBVEgiCnwgI2RlZmluZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAi L3Vzci9sb2NhbCIKfCAjZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxp YnMvIgp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAvKiBPdmVycmlkZSBhbnkgR0NDIGlu dGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KfCAgICBVc2UgY2hhciBiZWNhdXNl IGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKfCAgICBidWlsdGluIGFu ZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLwp8ICNp ZmRlZiBfX2NwbHVzcGx1cwp8IGV4dGVybiAiQyIKfCAjZW5kaWYKfCBjaGFyIGRsZF9saW5rICgp Owp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJuIGRsZF9saW5rICgpOwp8ICAgOwp8ICAgcmV0 dXJuIDA7CnwgfQo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhlciBzdHJp cHBpbmcgbGlicmFyaWVzIGlzIHBvc3NpYmxlCjozODA5OiByZXN1bHQ6IHllcwo6MzgwOTogY2hl Y2tpbmcgaWYgbGlidG9vbCBzdXBwb3J0cyBzaGFyZWQgbGlicmFyaWVzCjozODA5OiByZXN1bHQ6 IG5vCjozODA5OiBjaGVja2luZyB3aGV0aGVyIHRvIGJ1aWxkIHNoYXJlZCBsaWJyYXJpZXMKOjM4 MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIHdoZXRoZXIgdG8gYnVpbGQgc3RhdGljIGxp YnJhcmllcwo6MzgwOTogcmVzdWx0OiB5ZXMKOjM4MDk6IGNoZWNraW5nIGhvdyB0byBydW4gdGhl IEMrKyBwcmVwcm9jZXNzb3IKOjM4MDk6ICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94 Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MgLW5vc3Rk aW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0 ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251 L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQt cGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9s aWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lz dGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtRSAgY29u ZnRlc3QuY3BwCjozODA5OiAkPyA9IDAKOjM4MDk6ICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8u L2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mg LW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251 L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94 ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRl IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAt RSAgY29uZnRlc3QuY3BwCjozODA5OiAkPyA9IDAKOjM4MDk6IC9saWIvY3BwICBjb25mdGVzdC5j cHAKOjM4MDk6ICQ/ID0gMAo6MzgwOTogL2xpYi9jcHAgIGNvbmZ0ZXN0LmNwcAo6MzgwOTogJD8g PSAwCjozODA5OiByZXN1bHQ6IC9saWIvY3BwCjozODA5OiAvbGliL2NwcCAgY29uZnRlc3QuY3Bw CjozODA5OiAkPyA9IDAKOjM4MDk6IC9saWIvY3BwICBjb25mdGVzdC5jcHAKOjM4MDk6ICQ/ID0g MAo6MzgwOTogZXJyb3I6IGluIGAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYmphdmEnOgo6MzgwOTogZXJyb3I6IEMrKyBwcmVwcm9jZXNzb3IgIi9saWIvY3Bw IiBmYWlscyBzYW5pdHkgY2hlY2sKU2VlIGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzCjoz ODA5OiBjaGVja2luZyB3aGV0aGVyIHRoZSAgL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv eGdjYyAtc2hhcmVkLWxpYmdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjIC1ub3N0 ZGluYysrIC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJz dGRjKystdjMvc3JjIC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdu dS9saWJzdGRjKystdjMvc3JjLy5saWJzIC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0 LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvbGlic3VwYysrLy5saWJzIC1CL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv bGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgbGlua2Vy ICgvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy9jb2xsZWN0LWxkIC1tIGVsZl94ODZfNjQp IHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJpZXMKOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiAgL2hv bWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtc2hhcmVkLWxpYmdjYyAtQi9ob21lL3pv cG9saXM0L2djamJ1aWxkLy4vZ2NjIC1ub3N0ZGluYysrIC1ML2hvbWUvem9wb2xpczQvZ2NqYnVp bGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjIC1ML2hvbWUvem9wb2xpczQv Z2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjLy5saWJzIC1ML2hv bWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvbGli c3VwYysrLy5saWJzIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yIC1EX0dOVV9TT1VSQ0UgIGNvbmZ0ZXN0LmNw cCA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogY2hlY2tpbmcgZm9yICAvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVp bGQvLi9nY2MgLW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMt bGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZf NjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBjKysvLmxpYnMg LUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5j bHVkZSAgICBvcHRpb24gdG8gcHJvZHVjZSBQSUMKOjM4MDk6IHJlc3VsdDogIC1EUElDCjozODA5 OiBjaGVja2luZyBpZiAgL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtc2hhcmVk LWxpYmdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjIC1ub3N0ZGluYysrIC1ML2hv bWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3Jj IC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKyst djMvc3JjLy5saWJzIC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdu dS9saWJzdGRjKystdjMvbGlic3VwYysrLy5saWJzIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgUElDIGZsYWcgIC1EUElDIHdv cmtzCjoxNTc3MjogIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1s aWJnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYyAtbm9zdGRpbmMrKyAtTC9ob21l L3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYyAt TC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYz L3NyYy8ubGlicyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUv bGlic3RkYysrLXYzL2xpYnN1cGMrKy8ubGlicyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0g L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1PMiAtRF9HTlVfU09V UkNFICAgLURQSUMgLURQSUMgY29uZnRlc3QuY3BwID4mNQo6MTU3NzY6ICQ/ID0gMAo6MzgwOTog cmVzdWx0OiB5ZXMKOjM4MDk6IGNoZWNraW5nIGlmICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8u L2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mg LW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251 L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94 ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRl IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICBz dGF0aWMgZmxhZyAgd29ya3MKOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyBpZiAg L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtc2hhcmVkLWxpYmdjYyAtQi9ob21l L3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjIC1ub3N0ZGluYysrIC1ML2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjIC1ML2hvbWUvem9wb2xp czQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjLy5saWJzIC1M L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMv bGlic3VwYysrLy5saWJzIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvc3lzLWluY2x1ZGUgICAgc3VwcG9ydHMgLWMgLW8gZmlsZS5vCjoxNTg3MTogIC9o b21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9saXM0L2djamJ1 aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21lL3pvcG9saXM0 L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8ubGlicyAtTC9o b21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL2xp YnN1cGMrKy8ubGlicyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1PMiAtRF9HTlVfU09VUkNFICAtbyBvdXQvY29u ZnRlc3QyLm8gY29uZnRlc3QuY3BwID4mNQo6MTU4NzU6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiB5 ZXMKOjM4MDk6IGNoZWNraW5nIGlmICAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2Nj IC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MgLW5vc3RkaW5j KysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMr Ky12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xp YnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMt bGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBjKysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIv IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICBzdXBwb3J0cyAt YyAtbyBmaWxlLm8KOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyB3aGV0aGVyIHRo ZSAgL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtc2hhcmVkLWxpYmdjYyAtQi9o b21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjIC1ub3N0ZGluYysrIC1ML2hvbWUvem9wb2xpczQv Z2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjIC1ML2hvbWUvem9w b2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKystdjMvc3JjLy5saWJz IC1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJzdGRjKyst djMvbGlic3VwYysrLy5saWJzIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8g LUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgbGlua2VyICgvaG9tZS96b3BvbGlzNC9nY2pidWls ZC8uL2djYy9jb2xsZWN0LWxkIC1tIGVsZl94ODZfNjQpIHN1cHBvcnRzIHNoYXJlZCBsaWJyYXJp ZXMKOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBjaGVja2luZyBkeW5hbWljIGxpbmtlciBjaGFy YWN0ZXJpc3RpY3MKOjM4MDk6IHJlc3VsdDogR05VL0xpbnV4IGxkLnNvCjozODA5OiBjaGVja2lu ZyBob3cgdG8gaGFyZGNvZGUgbGlicmFyeSBwYXRocyBpbnRvIHByb2dyYW1zCjozODA5OiByZXN1 bHQ6IHVuc3VwcG9ydGVkCjozODA5OiBjaGVja2luZyBmb3IgeDg2XzY0LXBjLWxpbnV4LWdudS1n Y2oKOjM4MDk6IHJlc3VsdDogIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxp bnV4LWdudS9saWJqYXZhLwo6MzgwOTogY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiAgLUIv aG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYmphdmEvCjozODA5 OiByZXN1bHQ6IG5vbmUKOjM4MDk6IGNoZWNraW5nIGZvciB4ODZfNjQtcGMtbGludXgtZ251LWdj ago6MzgwOTogcmVzdWx0OiAgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYmphdmEvCjozODA5OiBjaGVja2luZyBkZXBlbmRlbmN5IHN0eWxlIG9mICAtQi9o b21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGliamF2YS8KOjM4MDk6 IHJlc3VsdDogbm9uZQo6MzgwOTogY2hlY2tpbmcgaWYgL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv Li9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIHN1cHBv cnRzIC1mbm8tcnR0aSAtZm5vLWV4Y2VwdGlvbnMKOjE3NDc4OiAvaG9tZS96b3BvbGlzNC9nY2pi dWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAg LWMgLWcgLU8yICAtZm5vLXJ0dGkgLWZuby1leGNlcHRpb25zIGNvbmZ0ZXN0LmMgPiY1CmNjMTog d2FybmluZzogY29tbWFuZC1saW5lIG9wdGlvbiAnLWZuby1ydHRpJyBpcyB2YWxpZCBmb3IgQysr L0QvT2JqQysrIGJ1dCBub3QgZm9yIEMKOjE3NDgyOiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8K OjM4MDk6IGNoZWNraW5nIGZvciAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1C L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgb3B0aW9uIHRvIHByb2R1Y2Ug UElDCjozODA5OiByZXN1bHQ6IC1mUElDCjozODA5OiBjaGVja2luZyBpZiAvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1C L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1 ZGUgICAgUElDIGZsYWcgLWZQSUMgd29ya3MKOjE3ODI1OiAvaG9tZS96b3BvbGlzNC9nY2pidWls ZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMg LWcgLU8yICAtZlBJQyBjb25mdGVzdC5jID4mNQo6MTc4Mjk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0 OiB5ZXMKOjM4MDk6IGNoZWNraW5nIGlmIC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hn Y2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1p c3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICBzdGF0aWMgZmxhZyAt c3RhdGljIHdvcmtzCjozODA5OiByZXN1bHQ6IHllcwo6MzgwOTogY2hlY2tpbmcgaWYgL2hvbWUv em9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4v Z2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5 cy1pbmNsdWRlICAgIHN1cHBvcnRzIC1jIC1vIGZpbGUubwo6MTc5MjQ6IC9ob21lL3pvcG9saXM0 L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9p bmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVk ZSAgICAtYyAtZyAtTzIgIC1vIG91dC9jb25mdGVzdDIubyBjb25mdGVzdC5jID4mNQo6MTc5Mjg6 ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiB5ZXMKOjM4MDk6IGNoZWNraW5nIGlmIC9ob21lL3pvcG9s aXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8g LUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5j bHVkZSAgICBzdXBwb3J0cyAtYyAtbyBmaWxlLm8KOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBj aGVja2luZyB3aGV0aGVyIHRoZSAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1C L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgbGlua2VyICgvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy9jb2xsZWN0LWxkIC1tIGVsZl94ODZfNjQpIHN1cHBvcnRzIHNo YXJlZCBsaWJyYXJpZXMKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGhvdyB0byBo YXJkY29kZSBsaWJyYXJ5IHBhdGhzIGludG8gcHJvZ3JhbXMKOjM4MDk6IHJlc3VsdDogdW5zdXBw b3J0ZWQKOjM4MDk6IGNoZWNraW5nIHdoZXRoZXIgdGhlIGNvbXBpbGVyIGlzIGNvbmZpZ3VyZWQg Zm9yIHNldGptcC9sb25nam1wIGV4Y2VwdGlvbnMKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1 aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRl IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAt YyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogeWVz CmNvbmZ0ZXN0LmM6MTk6MTA6IGZhdGFsIGVycm9yOiBzeXMvY29uZmlnLmg6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKICAgMTkgfCAjaW5jbHVkZSA8c3lzL2NvbmZpZy5oPgogICAgICB8ICAg ICAgICAgIF5+fn5+fn5+fn5+fn5+CmNvbXBpbGF0aW9uIHRlcm1pbmF0ZWQuCjozODA5OiBjaGVj a2luZyBmb3IgWAo6MzgwOTogL2xpYi9jcHAgIGNvbmZ0ZXN0LmMKOjM4MDk6ICQ/ID0gMAo6Mzgw OTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2dj amJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgLWxY MTEgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBm b3IgLS1uby1tZXJnZS1leGlkeC1lbnRyaWVzCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWls ZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8g Y29uZnRlc3QgLWcgLU8yICAgLVdsLC0tbm8tbWVyZ2UtZXhpZHgtZW50cmllcyBjb25mdGVzdC5j ICA+JjUKL3Vzci9iaW4vbGQ6IHVucmVjb2duaXplZCBvcHRpb24gJy0tbm8tbWVyZ2UtZXhpZHgt ZW50cmllcycKL3Vzci9iaW4vbGQ6IHVzZSB0aGUgLS1oZWxwIG9wdGlvbiBmb3IgdXNhZ2UgaW5m b3JtYXRpb24KY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCjozODA5 OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZp bmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJq YXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5l IFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FH RV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUg UEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNk ZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCnwgI2RlZmluZSBBV1Rf VE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9sb2NhbCIKfCAjZGVmaW5l IFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSU5URVJQ UkVURVIgMQp8ICNkZWZpbmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBFTkFCTEVfSlZNUEkgMQp8 ICNkZWZpbmUgWF9ESVNQTEFZX01JU1NJTkcgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCBp bnQgbWFpbih2b2lkKXsgcmV0dXJuIDA7fQo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tp bmcgZm9yIGdhcmJhZ2UgY29sbGVjdG9yIHRvIHVzZQo6MzgwOTogcmVzdWx0OiBib2VobQo6Mzgw OTogY2hlY2tpbmcgZm9yIHRocmVhZCBtb2RlbCB1c2VkIGJ5IEdDQwo6MzgwOTogcmVzdWx0OiBw b3NpeAo6MzgwOTogY2hlY2tpbmcgZm9yIHN0cmVycm9yX3IKOjM4MDk6IHJlc3VsdDogbm8KOjM4 MDk6IGNoZWNraW5nIGZvciBzZWxlY3QKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4v Z2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9s aWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lz dGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25m dGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0 OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGZzdGF0CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pi dWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVk ZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAg LW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6 IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBvcGVuCjozODA5OiAvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1C L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv aW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1 ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAgPiY1CjozODA5OiAkPyA9IDAK OjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBmc3luYwo6MzgwOTogcmVzdWx0 OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHNsZWVwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBj aGVja2luZyBmb3Igb3BlbmRpcgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv eGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8g LWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0 IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5v CjozODA5OiBjaGVja2luZyBmb3IgbG9jYWx0aW1lX3IKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6 IGNoZWNraW5nIGZvciBnZXRwd3VpZF9yCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2lu ZyBmb3IgZ2V0Y3dkCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgYWNjZXNz CjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igc3RhdAo6MzgwOTogcmVzdWx0 OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGxzdGF0CjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBj aGVja2luZyBmb3IgbWtkaXIKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBy ZW5hbWUKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBybWRpcgo6MzgwOTog cmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHVubGluawo6MzgwOTogcmVzdWx0OiBubwo6 MzgwOTogY2hlY2tpbmcgZm9yIHV0aW1lCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2lu ZyBmb3IgY2htb2QKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciByZWFkbGlu awo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9s aXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4v IC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0 LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBm b3IgbmxfbGFuZ2luZm8KOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBzZXRs b2NhbGUKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25m dGVzdC5jICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tp bmcgZm9yIGluZXRfcHRvbgo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHVu YW1lCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgaW5ldF9udG9hCjozODA5 OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgZ2V0cmxpbWl0CjozODA5OiByZXN1bHQ6 IG5vCjozODA5OiBjaGVja2luZyBmb3Igc2lnYWN0aW9uCjozODA5OiByZXN1bHQ6IG5vCjozODA5 OiBjaGVja2luZyBmb3IgZnRydW5jYXRlCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2lu ZyBmb3IgbW1hcAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGdldGlmYWRk cnMKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBpbmV0X2F0b24KOjM4MDk6 IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBpbmV0X2FkZHIKOjM4MDk6IHJlc3VsdDog bm8KOjM4MDk6IGNoZWNraW5nIGZvciB1bmlzdGQuaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTog Y2hlY2tpbmcgZm9yIGRsZmNuLmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIHN5 cy9yZXNvdXJjZS5oIHVzYWJpbGl0eQo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9n Y2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xp Yi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1P MiAgY29uZnRlc3QuYyA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTog Y2hlY2tpbmcgc3lzL3Jlc291cmNlLmggcHJlc2VuY2UKOjM4MDk6IC9saWIvY3BwICBjb25mdGVz dC5jCjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBz eXMvcmVzb3VyY2UuaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGRsYWRk ciBpbiAtbGRsCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hv bWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgt Z251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAg Y29uZnRlc3QuYyAtbGRsICAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4 MDk6IGNoZWNraW5nIGZvciBkbGFkZHIgaW4gLWxkbGQKOjM4MDk6IC9ob21lL3pvcG9saXM0L2dj amJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNs dWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAg ICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jIC1sZGxkICAgPiY1Ci91c3IvYmluL2xk OiBjYW5ub3QgZmluZCAtbGRsZApjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhpdCBz dGF0dXMKOjM4MDk6ICQ/ID0gMQo6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5o ICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1RB Uk5BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gInZlcnNpb24tdW51c2Vk Igp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmphdmEgdmVyc2lvbi11bnVzZWQiCnwgI2Rl ZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIi CnwgI2RlZmluZSBQQUNLQUdFICJsaWJqYXZhIgp8ICNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11 bnVzZWQiCnwgI2RlZmluZSBMVERMX1NITElCUEFUSF9WQVIgIkxEX0xJQlJBUllfUEFUSCIKfCAj ZGVmaW5lIEFXVF9UT09MS0lUICIiCnwgI2RlZmluZSBMSUJHQ0pfUFJFRklYICIvdXNyL2xvY2Fs Igp8ICNkZWZpbmUgVVNFX0xUREwgMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2Rl ZmluZSBJTlRFUlBSRVRFUiAxCnwgI2RlZmluZSBVU0VfTElCRkZJIDEKfCAjZGVmaW5lIEVOQUJM RV9KVk1QSSAxCnwgI2RlZmluZSBYX0RJU1BMQVlfTUlTU0lORyAxCnwgI2RlZmluZSBIQVZFX0JP RUhNX0dDIDEKfCAjZGVmaW5lIExJTlVYX1RIUkVBRFMgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFE X01VVEVYQVRUUl9JTklUIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwg I2RlZmluZSBKVl9IQVNIX1NZTkNIUk9OSVpBVElPTiAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFu IGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4g dHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlw ZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lmZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJD Igp8ICNlbmRpZgp8IGNoYXIgZGxhZGRyICgpOwp8IGludAp8IG1haW4gKCkKfCB7CnwgcmV0dXJu IGRsYWRkciAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KOjM4MDk6IHJlc3VsdDogbm8KOjM4 MDk6IGNoZWNraW5nIGZvciAvcHJvYy9zZWxmL2V4ZQo6MzgwOTogcmVzdWx0OiB5ZXMKOjM4MDk6 IGNoZWNraW5nIGZvciAvcHJvYy9zZWxmL21hcHMKOjM4MDk6IHJlc3VsdDogeWVzCjozODA5OiBj aGVja2luZyBmb3IgbGQgdXNlZCBieSBHQ0MKOjM4MDk6IHJlc3VsdDogL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MvY29sbGVjdC1sZCAtbSBlbGZfeDg2XzY0CjozODA5OiBjaGVja2luZyBp ZiB0aGUgbGlua2VyICgvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy9jb2xsZWN0LWxkIC1t IGVsZl94ODZfNjQpIGlzIEdOVSBsZAo6MzgwOTogcmVzdWx0OiB5ZXMKOjM4MDk6IGNoZWNraW5n IGZvciBzaGFyZWQgbGlicmFyeSBydW4gcGF0aCBvcmlnaW4KOjM4MDk6IHJlc3VsdDogZG9uZQo6 MzgwOTogY2hlY2tpbmcgZm9yIGljb252CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8u L2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv bGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29u ZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiAvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv Li9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv c3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgIGNvbmZ0ZXN0LmMgIC1saWNvbnYg PiY1Ci91c3IvYmluL2xkOiBjYW5ub3QgZmluZCAtbGljb252CmNvbGxlY3QyOiBlcnJvcjogbGQg cmV0dXJuZWQgMSBleGl0IHN0YXR1cwo6MzgwOTogJD8gPSAxCjogZmFpbGVkIHByb2dyYW0gd2Fz Ogp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliamF2YSIKfCAj ZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lP TiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGliamF2YSB2ZXJz aW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJsaWJqYXZhIgp8ICNkZWZp bmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCnwgI2RlZmluZSBW RVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExURExfU0hMSUJQQVRIX1ZBUiAiTERf TElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQgIiIKfCAjZGVmaW5lIExJQkdDSl9Q UkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRETCAxCnwgI2RlZmluZSBMVF9PQkpE SVIgIi5saWJzLyIKfCAjZGVmaW5lIElOVEVSUFJFVEVSIDEKfCAjZGVmaW5lIFVTRV9MSUJGRkkg MQp8ICNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKfCAjZGVmaW5lIFhfRElTUExBWV9NSVNTSU5HIDEK fCAjZGVmaW5lIEhBVkVfQk9FSE1fR0MgMQp8ICNkZWZpbmUgTElOVVhfVEhSRUFEUyAxCnwgI2Rl ZmluZSBIQVZFX1BUSFJFQURfTVVURVhBVFRSX0lOSVQgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJF QURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIEpWX0hBU0hfU1lOQ0hST05JWkFUSU9OIDEKfCAjZGVm aW5lIEhBVkVfX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NFTEZfRVhFIDEK fCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBTIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ19TRUxG X01BUFMgMQp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8c3RkbGliLmg+Cnwg I2luY2x1ZGUgPGljb252Lmg+CnwgaW50CnwgbWFpbiAoKQp8IHsKfCBpY29udl90IGNkID0gaWNv bnZfb3BlbigiIiwiIik7CnwgICAgICAgICAgaWNvbnYoY2QsTlVMTCxOVUxMLE5VTEwsTlVMTCk7 CnwgICAgICAgICAgaWNvbnZfY2xvc2UoY2QpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQo6Mzgw OTogcmVzdWx0OiBubywgY29uc2lkZXIgaW5zdGFsbGluZyBHTlUgbGliaWNvbnYKOjM4MDk6IGNo ZWNraW5nIGZvciBMQ19NRVNTQUdFUwo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9n Y2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xp Yi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0 ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6 IG5vCjozODA5OiBjaGVja2luZyB3aGV0aGVyIHN0cnVjdCB0bSBpcyBpbiBzeXMvdGltZS5oIG9y IHRpbWUuaAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21l L3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+ JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBzeXMvdGltZS5oCjozODA5OiBjaGVja2lu ZyBmb3Igc3RydWN0IHRtLnRtX3pvbmUKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4v Z2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9s aWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lz dGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAt TzIgIGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6IEluIGZ1bmN0aW9uICdtYWluJzoKY29uZnRl c3QuYzozNzoxODogZXJyb3I6IHN0b3JhZ2Ugc2l6ZSBvZiAnYWNfYWdncicgaXNuJ3Qga25vd24K ICAgMzcgfCBzdGF0aWMgc3RydWN0IHRtIGFjX2FnZ3I7CiAgICAgIHwgICAgICAgICAgICAgICAg ICBefn5+fn5+CjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRl ZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FH RV9UQVJOQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVu dXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8 ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VS TCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNp b24tdW51c2VkIgp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgi CnwgI2RlZmluZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9s b2NhbCIKfCAjZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8 ICNkZWZpbmUgSU5URVJQUkVURVIgMQp8ICNkZWZpbmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBF TkFCTEVfSlZNUEkgMQp8ICNkZWZpbmUgWF9ESVNQTEFZX01JU1NJTkcgMQp8ICNkZWZpbmUgSEFW RV9CT0VITV9HQyAxCnwgI2RlZmluZSBMSU5VWF9USFJFQURTIDEKfCAjZGVmaW5lIEhBVkVfUFRI UkVBRF9NVVRFWEFUVFJfSU5JVCAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1Mg MQp8ICNkZWZpbmUgSlZfSEFTSF9TWU5DSFJPTklaQVRJT04gMQp8ICNkZWZpbmUgSEFWRV9fUFJP Q19TRUxGX0VYRSAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFW RV9fUFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NFTEZfTUFQUyAxCnwgI2Rl ZmluZSBUTV9JTl9TWVNfVElNRSAxCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRl IDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KfCAKfCAKfCBpbnQKfCBtYWlu ICgpCnwgewp8IHN0YXRpYyBzdHJ1Y3QgdG0gYWNfYWdncjsKfCBpZiAoYWNfYWdnci50bV96b25l KQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQo6MzgwOTogL2hvbWUvem9wb2xp czQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAt Qi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNs dWRlICAgIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24g J21haW4nOgpjb25mdGVzdC5jOjM3OjE4OiBlcnJvcjogc3RvcmFnZSBzaXplIG9mICdhY19hZ2dy JyBpc24ndCBrbm93bgogICAzNyB8IHN0YXRpYyBzdHJ1Y3QgdG0gYWNfYWdncjsKICAgICAgfCAg ICAgICAgICAgICAgICAgIF5+fn5+fn4KOjM4MDk6ICQ/ID0gMQo6IGZhaWxlZCBwcm9ncmFtIHdh czoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImxpYmphdmEiCnwg I2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmphdmEgdmVy c2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIKfCAjZGVm aW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJqYXZhIgp8ICNkZWZpbmUg VkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBMVERMX1NITElCUEFUSF9WQVIgIkxE X0xJQlJBUllfUEFUSCIKfCAjZGVmaW5lIEFXVF9UT09MS0lUICIiCnwgI2RlZmluZSBMSUJHQ0pf UFJFRklYICIvdXNyL2xvY2FsIgp8ICNkZWZpbmUgVVNFX0xUREwgMQp8ICNkZWZpbmUgTFRfT0JK RElSICIubGlicy8iCnwgI2RlZmluZSBJTlRFUlBSRVRFUiAxCnwgI2RlZmluZSBVU0VfTElCRkZJ IDEKfCAjZGVmaW5lIEVOQUJMRV9KVk1QSSAxCnwgI2RlZmluZSBYX0RJU1BMQVlfTUlTU0lORyAx CnwgI2RlZmluZSBIQVZFX0JPRUhNX0dDIDEKfCAjZGVmaW5lIExJTlVYX1RIUkVBRFMgMQp8ICNk ZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYQVRUUl9JTklUIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhS RUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBKVl9IQVNIX1NZTkNIUk9OSVpBVElPTiAxCnwgI2Rl ZmluZSBIQVZFX19QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ19TRUxGX0VYRSAx CnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VM Rl9NQVBTIDEKfCAjZGVmaW5lIFRNX0lOX1NZU19USU1FIDEKfCAvKiBlbmQgY29uZmRlZnMuaC4g ICovCnwgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgp8ICNpbmNsdWRlIDxzeXMvdGltZS5oPgp8IAp8 IAp8IGludAp8IG1haW4gKCkKfCB7Cnwgc3RhdGljIHN0cnVjdCB0bSBhY19hZ2dyOwp8IGlmIChz aXplb2YgYWNfYWdnci50bV96b25lKQp8IHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7Cnwg fQo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhlciB0em5hbWUgaXMgZGVj bGFyZWQKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1 CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciB0em5h bWUKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmlu LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVz dC5jICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcg Zm9yIGdldGhvc3RieW5hbWVfcgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv eGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8g LWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0g L3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0 IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5v CjozODA5OiBjaGVja2luZyBmb3IgZ2V0aG9zdG5hbWUKOjM4MDk6IC9ob21lL3pvcG9saXM0L2dj amJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNs dWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAg ICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUKOjM4MDk6ICQ/ID0gMAo6Mzgw OTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHVzbGVlcAo6MzgwOTogL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2Nj LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgt Z251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1p bmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8g PSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igc2NoZWRfeWllbGQKOjM4 MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICAt bHB0aHJlYWQgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNr aW5nIGZvciBzY2hlZF95aWVsZCBpbiAtbHJ0CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWls ZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8g Y29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbHJ0ICAgLWxwdGhyZWFkID4mNQo6MzgwOTog JD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igc2NoZWRfeWllbGQg aW4gLWxwb3NpeDQKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIv aG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIg ICBjb25mdGVzdC5jIC1scG9zaXg0ICAgLWxwdGhyZWFkID4mNQovdXNyL2Jpbi9sZDogY2Fubm90 IGZpbmQgLWxwb3NpeDQKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVz CjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNk ZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24tdW51c2Vk Igp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCnwgI2RlZmlu ZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9sb2NhbCIKfCAj ZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUg SU5URVJQUkVURVIgMQp8ICNkZWZpbmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBFTkFCTEVfSlZN UEkgMQp8ICNkZWZpbmUgWF9ESVNQTEFZX01JU1NJTkcgMQp8ICNkZWZpbmUgSEFWRV9CT0VITV9H QyAxCnwgI2RlZmluZSBMSU5VWF9USFJFQURTIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9NVVRF WEFUVFJfSU5JVCAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp bmUgSlZfSEFTSF9TWU5DSFJPTklaQVRJT04gMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19TRUxGX0VY RSAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19T RUxGX01BUFMgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBUTV9J Tl9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfVFpOQU1FIDAKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8g YXZvaWQgYW4gZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhl IHJldHVybiB0eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQg cHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBl eHRlcm4gIkMiCnwgI2VuZGlmCnwgY2hhciBzY2hlZF95aWVsZCAoKTsKfCBpbnQKfCBtYWluICgp Cnwgewp8IHJldHVybiBzY2hlZF95aWVsZCAoKTsKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KOjM4 MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBjbG9ja19nZXR0aW1lIGluIC1scnQK OjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAt Qi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5j IC1scnQgICAtbHB0aHJlYWQgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4 MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAk PyA9IDAKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv YmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1 CjozODA5OiAkPyA9IDAKOjM4MDk6IGNoZWNraW5nIGZvciBnZXR0aW1lb2ZkYXkKOjM4MDk6IHJl c3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciB0aW1lCjozODA5OiByZXN1bHQ6IG5vCjozODA5 OiBjaGVja2luZyBmb3IgZnRpbWUKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGVycm9yOiBubyBm dW5jdGlvbiBmb3VuZCB0byBnZXQgdGhlIHRpbWUKOjM4MDk6IGNoZWNraW5nIGZvciBtZW1tb3Zl CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xp czQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8g LUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRlc3Qu YyAgPiY1CmNvbmZ0ZXN0LmM6NTQ6Njogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIGJ1 aWx0LWluIGZ1bmN0aW9uICdtZW1tb3ZlJzsgZXhwZWN0ZWQgJ3ZvaWQgKih2b2lkICosIGNvbnN0 IHZvaWQgKiwgbG9uZyB1bnNpZ25lZCBpbnQpJyBbLVdidWlsdGluLWRlY2xhcmF0aW9uLW1pc21h dGNoXQogICA1NCB8IGNoYXIgbWVtbW92ZSAoKTsKICAgICAgfCAgICAgIF5+fn5+fn4KY29uZnRl c3QuYzo0MjoxOiBub3RlOiAnbWVtbW92ZScgaXMgZGVjbGFyZWQgaW4gaGVhZGVyICc8c3RyaW5n Lmg+JwogICA0MSB8ICMgaW5jbHVkZSA8bGltaXRzLmg+CiAgIDQyIHwgI2Vsc2UKOjM4MDk6ICQ/ ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIG1lbWNweQo6MzgwOTog L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1 aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9s b2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgt Z251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1nIC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQpj b25mdGVzdC5jOjU0OjY6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciBidWlsdC1pbiBm dW5jdGlvbiAnbWVtY3B5JzsgZXhwZWN0ZWQgJ3ZvaWQgKih2b2lkICosIGNvbnN0IHZvaWQgKiwg bG9uZyB1bnNpZ25lZCBpbnQpJyBbLVdidWlsdGluLWRlY2xhcmF0aW9uLW1pc21hdGNoXQogICA1 NCB8IGNoYXIgbWVtY3B5ICgpOwogICAgICB8ICAgICAgXn5+fn5+CmNvbmZ0ZXN0LmM6NDI6MTog bm90ZTogJ21lbWNweScgaXMgZGVjbGFyZWQgaW4gaGVhZGVyICc8c3RyaW5nLmg+JwogICA0MSB8 ICMgaW5jbHVkZSA8bGltaXRzLmg+CiAgIDQyIHwgI2Vsc2UKOjM4MDk6ICQ/ID0gMAo6MzgwOTog cmVzdWx0OiBubwo6MzgwOTogZXJyb3I6IG1lbWNweSBpcyByZXF1aXJlZAo6MzgwOTogY2hlY2tp bmcgZm9yIGRsb3BlbiBpbiAtbGRsCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBm b3IgZGxvcGVuIGluIC1sZGxkCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94 Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3Qg LWcgLU8yICAgY29uZnRlc3QuYyAtbGRsZCAgID4mNQovdXNyL2Jpbi9sZDogY2Fubm90IGZpbmQg LWxkbGQKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVzCjozODA5OiAk PyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUg UEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJqYXZh Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBB Q0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9C VUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFD S0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZp bmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCnwgI2RlZmluZSBBV1RfVE9P TEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9sb2NhbCIKfCAjZGVmaW5lIFVT RV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSU5URVJQUkVU RVIgMQp8ICNkZWZpbmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBFTkFCTEVfSlZNUEkgMQp8ICNk ZWZpbmUgWF9ESVNQTEFZX01JU1NJTkcgMQp8ICNkZWZpbmUgSEFWRV9CT0VITV9HQyAxCnwgI2Rl ZmluZSBMSU5VWF9USFJFQURTIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9NVVRFWEFUVFJfSU5J VCAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgSlZfSEFT SF9TWU5DSFJPTklaQVRJT04gMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19TRUxGX0VYRSAxCnwgI2Rl ZmluZSBIQVZFX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19TRUxGX01BUFMg MQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBUTV9JTl9TWVNfVElN RSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfVFpOQU1FIDAKfCAvKiBlbmQgY29uZmRlZnMuaC4gICov CnwgCnwgLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4g ZXJyb3IuCnwgICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0 eXBlIG9mIGEgR0NDCnwgICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBl IHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KfCAjaWZkZWYgX19jcGx1c3BsdXMKfCBleHRlcm4gIkMi CnwgI2VuZGlmCnwgY2hhciBkbG9wZW4gKCk7CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4g ZGxvcGVuICgpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQo6MzgwOTogcmVzdWx0OiBubwo6Mzgw OTogY2hlY2tpbmcgZm9yIHNvY2tldCBsaWJyYXJpZXMKOjM4MDk6IGNoZWNraW5nIGZvciBjb25u ZWN0CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jp bi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRl c3QuYyAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5n IGZvciBtYWluIGluIC1sc29ja2V0CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2dj Yy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGli LyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRl c3QgLWcgLU8yICAgY29uZnRlc3QuYyAtbHNvY2tldCAgID4mNQovdXNyL2Jpbi9sZDogY2Fubm90 IGZpbmQgLWxzb2NrZXQKY29sbGVjdDI6IGVycm9yOiBsZCByZXR1cm5lZCAxIGV4aXQgc3RhdHVz CjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8 ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1F ICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAj ZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUg UEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNk ZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24tdW51c2Vk Igp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCnwgI2RlZmlu ZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9sb2NhbCIKfCAj ZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUg SU5URVJQUkVURVIgMQp8ICNkZWZpbmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBFTkFCTEVfSlZN UEkgMQp8ICNkZWZpbmUgWF9ESVNQTEFZX01JU1NJTkcgMQp8ICNkZWZpbmUgSEFWRV9CT0VITV9H QyAxCnwgI2RlZmluZSBMSU5VWF9USFJFQURTIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9NVVRF WEFUVFJfSU5JVCAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZp bmUgSlZfSEFTSF9TWU5DSFJPTklaQVRJT04gMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19TRUxGX0VY RSAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19T RUxGX01BUFMgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBUTV9J Tl9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfVFpOQU1FIDAKfCAvKiBlbmQgY29uZmRl ZnMuaC4gICovCnwgCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gbWFpbiAoKTsKfCAg IDsKfCAgIHJldHVybiAwOwp8IH0KOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZv ciBhY2NlcHQKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBj b25mdGVzdC5jICAtbHNvY2tldCAtbG5zbCA+JjUKL3Vzci9iaW4vbGQ6IGNhbm5vdCBmaW5kIC1s c29ja2V0CmNvbGxlY3QyOiBlcnJvcjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwo6MzgwOTog JD8gPSAxCjogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5l IFBBQ0tBR0VfTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2 YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQ QUNLQUdFX1NUUklORyAibGliamF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0Vf QlVHUkVQT1JUICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBB Q0tBR0UgImxpYmphdmEiCnwgI2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVm aW5lIExURExfU0hMSUJQQVRIX1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RP T0xLSVQgIiIKfCAjZGVmaW5lIExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBV U0VfTFRETCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5lIElOVEVSUFJF VEVSIDEKfCAjZGVmaW5lIFVTRV9MSUJGRkkgMQp8ICNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKfCAj ZGVmaW5lIFhfRElTUExBWV9NSVNTSU5HIDEKfCAjZGVmaW5lIEhBVkVfQk9FSE1fR0MgMQp8ICNk ZWZpbmUgTElOVVhfVEhSRUFEUyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfTVVURVhBVFRSX0lO SVQgMQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIEpWX0hB U0hfU1lOQ0hST05JWkFUSU9OIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9FWEUgMQp8ICNk ZWZpbmUgSEFWRV9QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBT IDEKfCAjZGVmaW5lIEhBVkVfUFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgVE1fSU5fU1lTX1RJ TUUgMQp8ICNkZWZpbmUgSEFWRV9ERUNMX1RaTkFNRSAwCnwgLyogZW5kIGNvbmZkZWZzLmguICAq Lwp8IC8qIERlZmluZSBhY2NlcHQgdG8gYW4gaW5ub2N1b3VzIHZhcmlhbnQsIGluIGNhc2UgPGxp bWl0cy5oPiBkZWNsYXJlcyBhY2NlcHQuCnwgICAgRm9yIGV4YW1wbGUsIEhQLVVYIDExaSA8bGlt aXRzLmg+IGRlY2xhcmVzIGdldHRpbWVvZmRheS4gICovCnwgI2RlZmluZSBhY2NlcHQgaW5ub2N1 b3VzX2FjY2VwdAp8IAp8IC8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3Mg YW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKfCAgICAgd2hpY2ggY2FuIGNvbmZsaWN0IHdp dGggY2hhciBhY2NlcHQgKCk7IGJlbG93Lgp8ICAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNz ZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCnwgICAgIDxsaW1pdHMuaD4gZXhp c3RzIGV2ZW4gb24gZnJlZXN0YW5kaW5nIGNvbXBpbGVycy4gICovCnwgCnwgI2lmZGVmIF9fU1RE Q19fCnwgIyBpbmNsdWRlIDxsaW1pdHMuaD4KfCAjZWxzZQp8ICMgaW5jbHVkZSA8YXNzZXJ0Lmg+ CnwgI2VuZGlmCnwgCnwgI3VuZGVmIGFjY2VwdAp8IAp8IC8qIE92ZXJyaWRlIGFueSBHQ0MgaW50 ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgp8ICAgIFVzZSBjaGFyIGJlY2F1c2Ug aW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQwp8ICAgIGJ1aWx0aW4gYW5k IHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCnwgI2lm ZGVmIF9fY3BsdXNwbHVzCnwgZXh0ZXJuICJDIgp8ICNlbmRpZgp8IGNoYXIgYWNjZXB0ICgpOwp8 IC8qIFRoZSBHTlUgQyBsaWJyYXJ5IGRlZmluZXMgdGhpcyBmb3IgZnVuY3Rpb25zIHdoaWNoIGl0 IGltcGxlbWVudHMKfCAgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0 aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKfCAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggX18g YW5kIHRoZSBub3JtYWwgbmFtZSBpcyBhbiBhbGlhcy4gICovCnwgI2lmIGRlZmluZWQgX19zdHVi X2FjY2VwdCB8fCBkZWZpbmVkIF9fc3R1Yl9fX2FjY2VwdAp8IGNob2tlIG1lCnwgI2VuZGlmCnwg CnwgaW50CnwgbWFpbiAoKQp8IHsKfCByZXR1cm4gYWNjZXB0ICgpOwp8ICAgOwp8ICAgcmV0dXJu IDA7CnwgfQo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGdldGhvc3RieW5h bWUKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmlu LyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVz dC5jICAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5n IGZvciBtYWluIGluIC1sbnNsCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94 Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3Qg LWcgLU8yICAgY29uZnRlc3QuYyAtbG5zbCAgICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVz dWx0OiBubwo6MzgwOTogcmVzdWx0OiAKOjM4MDk6IGNoZWNraW5nIGZvciBtYWluIGluIC1sZGwK OjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAt Qi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5j IC1sZGwgICA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tp bmcgZm9yIHg4Nl82NC1wYy1saW51eC1nbnUtZ2NqCjozODA5OiByZXN1bHQ6ICAtQi9ob21lL3pv cG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGliamF2YS8KOjM4MDk6IGNoZWNr aW5nIGRlcGVuZGVuY3kgc3R5bGUgb2YgIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0 LXBjLWxpbnV4LWdudS9saWJqYXZhLwo6MzgwOTogcmVzdWx0OiBub25lCjozODA5OiBjaGVja2lu ZyBzaXplIG9mIHZvaWQgKgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdj YyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlz eXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1vIGNvbmZ0ZXN0IC1n IC1PMiAgIGNvbmZ0ZXN0LmMgID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiAuL2NvbmZ0ZXN0Cjoz ODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogMAo6MzgwOTogY2hlY2tpbmcgd2hldGhlciBieXRl IG9yZGVyaW5nIGlzIGJpZ2VuZGlhbgo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9n Y2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xp Yi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0 ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1P MiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzozMzoxNjogZXJyb3I6IHVua25vd24gdHlwZSBu YW1lICdub3QnCiAgIDMzIHwgICAgICAgICAgICAgICAgbm90IGEgdW5pdmVyc2FsIGNhcGFibGUg Y29tcGlsZXIKICAgICAgfCAgICAgICAgICAgICAgICBefn4KY29uZnRlc3QuYzozMzoyMjogZXJy b3I6IGV4cGVjdGVkICc9JywgJywnLCAnOycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZv cmUgJ3VuaXZlcnNhbCcKICAgMzMgfCAgICAgICAgICAgICAgICBub3QgYSB1bml2ZXJzYWwgY2Fw YWJsZSBjb21waWxlcgogICAgICB8ICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fgpjb25m dGVzdC5jOjMzOjIyOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUgJ3VuaXZlcnNhbCcKOjM4MDk6 ICQ/ID0gMQo6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmph dmEiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUg UEFDS0FHRV9TVFJJTkcgImxpYmphdmEgdmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdF X0JVR1JFUE9SVCAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQ QUNLQUdFICJsaWJqYXZhIgp8ICNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2Rl ZmluZSBMVERMX1NITElCUEFUSF9WQVIgIkxEX0xJQlJBUllfUEFUSCIKfCAjZGVmaW5lIEFXVF9U T09MS0lUICIiCnwgI2RlZmluZSBMSUJHQ0pfUFJFRklYICIvdXNyL2xvY2FsIgp8ICNkZWZpbmUg VVNFX0xUREwgMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBJTlRFUlBS RVRFUiAxCnwgI2RlZmluZSBVU0VfTElCRkZJIDEKfCAjZGVmaW5lIEVOQUJMRV9KVk1QSSAxCnwg I2RlZmluZSBYX0RJU1BMQVlfTUlTU0lORyAxCnwgI2RlZmluZSBIQVZFX0JPRUhNX0dDIDEKfCAj ZGVmaW5lIExJTlVYX1RIUkVBRFMgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYQVRUUl9J TklUIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBKVl9I QVNIX1NZTkNIUk9OSVpBVElPTiAxCnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfRVhFIDEKfCAj ZGVmaW5lIEhBVkVfUFJPQ19TRUxGX0VYRSAxCnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfTUFQ UyAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VMRl9NQVBTIDEKfCAjZGVmaW5lIFRNX0lOX1NZU19U SU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9UWk5BTUUgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURf UCAwCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpZm5kZWYgX19BUFBMRV9DQ19fCnwgCSAg ICAgICBub3QgYSB1bml2ZXJzYWwgY2FwYWJsZSBjb21waWxlcgp8IAkgICAgICNlbmRpZgp8IAkg ICAgIHR5cGVkZWYgaW50IGR1bW15Owp8IAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv Li9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKOjM4MDk6ICQ/ID0gMAo6MzgwOTogL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2lu Y2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRl ICAgIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzogSW4gZnVuY3Rpb24gJ21h aW4nOgpjb25mdGVzdC5jOjM4OjE1OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUgJ2JvZ3VzJwog ICAzOCB8ICAgICAgICAgICAgICAgYm9ndXMgZW5kaWFuIG1hY3JvcwogICAgICB8ICAgICAgICAg ICAgICAgXn5+fn4KY29uZnRlc3QuYzozODoyODogZXJyb3I6IGV4cGVjdGVkICc9JywgJywnLCAn OycsICdhc20nIG9yICdfX2F0dHJpYnV0ZV9fJyBiZWZvcmUgJ21hY3JvcycKICAgMzggfCAgICAg ICAgICAgICAgIGJvZ3VzIGVuZGlhbiBtYWNyb3MKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICBefn5+fn4KOjM4MDk6ICQ/ID0gMQo6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBj b25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gInZlcnNp b24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcgImxpYmphdmEgdmVyc2lvbi11bnVz ZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tB R0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJqYXZhIgp8ICNkZWZpbmUgVkVSU0lPTiAi dmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBMVERMX1NITElCUEFUSF9WQVIgIkxEX0xJQlJBUllf UEFUSCIKfCAjZGVmaW5lIEFXVF9UT09MS0lUICIiCnwgI2RlZmluZSBMSUJHQ0pfUFJFRklYICIv dXNyL2xvY2FsIgp8ICNkZWZpbmUgVVNFX0xUREwgMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGli cy8iCnwgI2RlZmluZSBJTlRFUlBSRVRFUiAxCnwgI2RlZmluZSBVU0VfTElCRkZJIDEKfCAjZGVm aW5lIEVOQUJMRV9KVk1QSSAxCnwgI2RlZmluZSBYX0RJU1BMQVlfTUlTU0lORyAxCnwgI2RlZmlu ZSBIQVZFX0JPRUhNX0dDIDEKfCAjZGVmaW5lIExJTlVYX1RIUkVBRFMgMQp8ICNkZWZpbmUgSEFW RV9QVEhSRUFEX01VVEVYQVRUUl9JTklUIDEKfCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFO VElDUyAxCnwgI2RlZmluZSBKVl9IQVNIX1NZTkNIUk9OSVpBVElPTiAxCnwgI2RlZmluZSBIQVZF X19QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfUFJPQ19TRUxGX0VYRSAxCnwgI2RlZmlu ZSBIQVZFX19QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VMRl9NQVBTIDEK fCAjZGVmaW5lIFRNX0lOX1NZU19USU1FIDEKfCAjZGVmaW5lIEhBVkVfREVDTF9UWk5BTUUgMAp8 ICNkZWZpbmUgU0laRU9GX1ZPSURfUCAwCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNs dWRlIDxsaW1pdHMuaD4KfCAKfCBpbnQKfCBtYWluICgpCnwgewp8ICNpZiAhIChkZWZpbmVkIF9M SVRUTEVfRU5ESUFOIHx8IGRlZmluZWQgX0JJR19FTkRJQU4pCnwgCSAgICAgIGJvZ3VzIGVuZGlh biBtYWNyb3MKfCAJICAgICAjZW5kaWYKfCAKfCAgIDsKfCAgIHJldHVybiAwOwp8IH0KOjM4MDk6 IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pi dWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0 LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4 LWdudS9zeXMtaW5jbHVkZSAgICAtbyBjb25mdGVzdCAtZyAtTzIgICBjb25mdGVzdC5jICA+JjUK OjM4MDk6ICQ/ID0gMAo6MzgwOTogLi9jb25mdGVzdAo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1 bHQ6IHllcwo6MzgwOTogY2hlY2tpbmcgZm9yIHVuaXN0ZC5oCjozODA5OiByZXN1bHQ6IG5vCjoz ODA5OiBjaGVja2luZyBmb3Igc3lzL3RpbWUuaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hl Y2tpbmcgZm9yIHN5cy90eXBlcy5oCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBm b3IgZmNudGwuaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHN5cy9pb2N0 bC5oCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3Igc3lzL2ZpbGlvLmgKOjM4 MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBzeXMvc3RhdC5oCjozODA5OiByZXN1 bHQ6IG5vCjozODA5OiBjaGVja2luZyBzeXMvc2VsZWN0LmggdXNhYmlsaXR5CjozODA5OiAvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv Li9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2Fs L3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv c3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjoz ODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBzeXMvc2VsZWN0LmggcHJlc2VuY2UKOjM4 MDk6IC9saWIvY3BwICBjb25mdGVzdC5jCjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8K OjM4MDk6IGNoZWNraW5nIGZvciBzeXMvc2VsZWN0LmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6 IGNoZWNraW5nIGZvciBzeXMvc29ja2V0LmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNr aW5nIGZvciBuZXRpbmV0L2luLmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZv ciBhcnBhL2luZXQuaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIG5ldGRi LmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBwd2QuaAo6MzgwOTogcmVz dWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHN5cy9jb25maWcuaAo6MzgwOTogcmVzdWx0OiBu bwo6MzgwOTogY2hlY2tpbmcgZm9yIHN0ZGludC5oCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBj aGVja2luZyBmb3IgbGFuZ2luZm8uaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcg Zm9yIGxvY2FsZS5oCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgZGlyZW50 LmgKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIHN5cy9yd19sb2NrLmggdXNhYmls aXR5CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jp bi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpj b25mdGVzdC5jOjY5OjEwOiBmYXRhbCBlcnJvcjogc3lzL3J3X2xvY2suaDogTm8gc3VjaCBmaWxl IG9yIGRpcmVjdG9yeQogICA2OSB8ICNpbmNsdWRlIDxzeXMvcndfbG9jay5oPgogICAgICB8ICAg ICAgICAgIF5+fn5+fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgo6MzgwOTogJD8g PSAxCjogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBB Q0tBR0VfTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIK fCAjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAibGliamF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVH UkVQT1JUICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tB R0UgImxpYmphdmEiCnwgI2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5l IExURExfU0hMSUJQQVRIX1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xL SVQgIiIKfCAjZGVmaW5lIExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0Vf TFRETCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5lIElOVEVSUFJFVEVS IDEKfCAjZGVmaW5lIFVTRV9MSUJGRkkgMQp8ICNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKfCAjZGVm aW5lIFhfRElTUExBWV9NSVNTSU5HIDEKfCAjZGVmaW5lIEhBVkVfQk9FSE1fR0MgMQp8ICNkZWZp bmUgTElOVVhfVEhSRUFEUyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfTVVURVhBVFRSX0lOSVQg MQp8ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIEpWX0hBU0hf U1lOQ0hST05JWkFUSU9OIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZp bmUgSEFWRV9QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBTIDEK fCAjZGVmaW5lIEhBVkVfUFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgVE1fSU5fU1lTX1RJTUUg MQp8ICNkZWZpbmUgSEFWRV9ERUNMX1RaTkFNRSAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDAK fCAjZGVmaW5lIFdPUkRTX0JJR0VORElBTiAxCnwgI2RlZmluZSBHQ0pWRVJTSU9OICIxMy4wLjAi CnwgI2RlZmluZSBKVl9WRVJTSU9OICIxLjUuMCIKfCAjZGVmaW5lIEpWX0FQSV9WRVJTSU9OICIx LjUiCnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzdGRpby5oPgp8ICNpZmRl ZiBIQVZFX1NZU19UWVBFU19ICnwgIyBpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9TWVNfU1RBVF9ICnwgIyBpbmNsdWRlIDxzeXMvc3RhdC5oPgp8ICNlbmRpZgp8 ICNpZmRlZiBTVERDX0hFQURFUlMKfCAjIGluY2x1ZGUgPHN0ZGxpYi5oPgp8ICMgaW5jbHVkZSA8 c3RkZGVmLmg+CnwgI2Vsc2UKfCAjIGlmZGVmIEhBVkVfU1RETElCX0gKfCAjICBpbmNsdWRlIDxz dGRsaWIuaD4KfCAjIGVuZGlmCnwgI2VuZGlmCnwgI2lmZGVmIEhBVkVfU1RSSU5HX0gKfCAjIGlm ICFkZWZpbmVkIFNURENfSEVBREVSUyAmJiBkZWZpbmVkIEhBVkVfTUVNT1JZX0gKfCAjICBpbmNs dWRlIDxtZW1vcnkuaD4KfCAjIGVuZGlmCnwgIyBpbmNsdWRlIDxzdHJpbmcuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9TVFJJTkdTX0gKfCAjIGluY2x1ZGUgPHN0cmluZ3MuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9JTlRUWVBFU19ICnwgIyBpbmNsdWRlIDxpbnR0eXBlcy5oPgp8ICNlbmRp Zgp8ICNpZmRlZiBIQVZFX1NURElOVF9ICnwgIyBpbmNsdWRlIDxzdGRpbnQuaD4KfCAjZW5kaWYK fCAjaWZkZWYgSEFWRV9VTklTVERfSAp8ICMgaW5jbHVkZSA8dW5pc3RkLmg+CnwgI2VuZGlmCnwg I2luY2x1ZGUgPHN5cy9yd19sb2NrLmg+CjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2lu ZyBzeXMvcndfbG9jay5oIHByZXNlbmNlCjozODA5OiAvbGliL2NwcCAgY29uZnRlc3QuYwpjb25m dGVzdC5jOjM2OjEwOiBmYXRhbCBlcnJvcjogc3lzL3J3X2xvY2suaDogTm8gc3VjaCBmaWxlIG9y IGRpcmVjdG9yeQogICAzNiB8ICNpbmNsdWRlIDxzeXMvcndfbG9jay5oPgogICAgICB8ICAgICAg ICAgIF5+fn5+fn5+fn5+fn5+fgpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgo6MzgwOTogJD8gPSAx CjogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tB R0VfTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAj ZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdF X1NUUklORyAibGliamF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQ T1JUICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0Ug ImxpYmphdmEiCnwgI2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExU RExfU0hMSUJQQVRIX1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQg IiIKfCAjZGVmaW5lIExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRE TCAxCnwgI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5lIElOVEVSUFJFVEVSIDEK fCAjZGVmaW5lIFVTRV9MSUJGRkkgMQp8ICNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKfCAjZGVmaW5l IFhfRElTUExBWV9NSVNTSU5HIDEKfCAjZGVmaW5lIEhBVkVfQk9FSE1fR0MgMQp8ICNkZWZpbmUg TElOVVhfVEhSRUFEUyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfTVVURVhBVFRSX0lOSVQgMQp8 ICNkZWZpbmUgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIEpWX0hBU0hfU1lO Q0hST05JWkFUSU9OIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUg SEFWRV9QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBTIDEKfCAj ZGVmaW5lIEhBVkVfUFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgVE1fSU5fU1lTX1RJTUUgMQp8 ICNkZWZpbmUgSEFWRV9ERUNMX1RaTkFNRSAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDAKfCAj ZGVmaW5lIFdPUkRTX0JJR0VORElBTiAxCnwgI2RlZmluZSBHQ0pWRVJTSU9OICIxMy4wLjAiCnwg I2RlZmluZSBKVl9WRVJTSU9OICIxLjUuMCIKfCAjZGVmaW5lIEpWX0FQSV9WRVJTSU9OICIxLjUi CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvcndfbG9jay5oPgo6Mzgw OTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHN5cy9yd19sb2NrLmgKOjM4MDk6IHJl c3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBtYWdpYy5oCjozODA5OiByZXN1bHQ6IG5vCjoz ODA5OiBjaGVja2luZyBmb3IgaWZhZGRycy5oCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVj a2luZyBmb3IgbmV0L2lmLmgKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hn Y2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1w Yy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1p c3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNv bmZ0ZXN0LmMgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNr aW5nIGludHR5cGVzLmggdXNhYmlsaXR5CjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8u L2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv bGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcg LU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5 OiBjaGVja2luZyBpbnR0eXBlcy5oIHByZXNlbmNlCjozODA5OiAvbGliL2NwcCAgY29uZnRlc3Qu Ywo6MzgwOTogJD8gPSAwCjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgaW50 dHlwZXMuaAo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHNzaXplX3QKOjM4 MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2 XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxp bnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAk PyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBtYWdpY190CjozODA5 OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2Nq YnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNy L2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51 eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5j OiBJbiBmdW5jdGlvbiAnbWFpbic6CmNvbmZ0ZXN0LmM6NDU6MTM6IGVycm9yOiAnbWFnaWNfdCcg dW5kZWNsYXJlZCAoZmlyc3QgdXNlIGluIHRoaXMgZnVuY3Rpb24pCiAgIDQ1IHwgaWYgKHNpemVv ZiAobWFnaWNfdCkpCiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fgpjb25mdGVzdC5jOjQ1OjEz OiBub3RlOiBlYWNoIHVuZGVjbGFyZWQgaWRlbnRpZmllciBpcyByZXBvcnRlZCBvbmx5IG9uY2Ug Zm9yIGVhY2ggZnVuY3Rpb24gaXQgYXBwZWFycyBpbgo6MzgwOTogJD8gPSAxCjogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGli amF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGli amF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJsaWJqYXZh Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCnwg I2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExURExfU0hMSUJQQVRI X1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQgIiIKfCAjZGVmaW5l IExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRETCAxCnwgI2RlZmlu ZSBMVF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5lIElOVEVSUFJFVEVSIDEKfCAjZGVmaW5lIFVT RV9MSUJGRkkgMQp8ICNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKfCAjZGVmaW5lIFhfRElTUExBWV9N SVNTSU5HIDEKfCAjZGVmaW5lIEhBVkVfQk9FSE1fR0MgMQp8ICNkZWZpbmUgTElOVVhfVEhSRUFE UyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfTVVURVhBVFRSX0lOSVQgMQp8ICNkZWZpbmUgX1BP U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIEpWX0hBU0hfU1lOQ0hST05JWkFUSU9O IDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NF TEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBTIDEKfCAjZGVmaW5lIEhBVkVf UFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgVE1fSU5fU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1RaTkFNRSAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDAKfCAjZGVmaW5lIFdPUkRT X0JJR0VORElBTiAxCnwgI2RlZmluZSBHQ0pWRVJTSU9OICIxMy4wLjAiCnwgI2RlZmluZSBKVl9W RVJTSU9OICIxLjUuMCIKfCAjZGVmaW5lIEpWX0FQSV9WRVJTSU9OICIxLjUiCnwgI2RlZmluZSBz c2l6ZV90IGludAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAKfCAjaWZkZWYgSEFWRV9NQUdJ Q19ICnwgI2luY2x1ZGUgPG1hZ2ljLmg+CnwgI2VuZGlmCnwgCnwgaW50CnwgbWFpbiAoKQp8IHsK fCBpZiAoc2l6ZW9mIChtYWdpY190KSkKfCAJIHJldHVybiAwOwp8ICAgOwp8ICAgcmV0dXJuIDA7 CnwgfQo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIGluX2FkZHJfdAo6Mzgw OTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2dj amJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1nIC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3Qu YzozNToxNzogZXJyb3I6IHR3byBvciBtb3JlIGRhdGEgdHlwZXMgaW4gZGVjbGFyYXRpb24gc3Bl Y2lmaWVycwogICAzNSB8ICNkZWZpbmUgc3NpemVfdCBpbnQKICAgICAgfCAgICAgICAgICAgICAg ICAgXn5+CjozODA5OiAkPyA9IDEKOiBmYWlsZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMu aCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9U QVJOQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNl ZCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNk ZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAi Igp8ICNkZWZpbmUgUEFDS0FHRSAibGliamF2YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24t dW51c2VkIgp8ICNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCnwg I2RlZmluZSBBV1RfVE9PTEtJVCAiIgp8ICNkZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9sb2Nh bCIKfCAjZGVmaW5lIFVTRV9MVERMIDEKfCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNk ZWZpbmUgSU5URVJQUkVURVIgMQp8ICNkZWZpbmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBFTkFC TEVfSlZNUEkgMQp8ICNkZWZpbmUgWF9ESVNQTEFZX01JU1NJTkcgMQp8ICNkZWZpbmUgSEFWRV9C T0VITV9HQyAxCnwgI2RlZmluZSBMSU5VWF9USFJFQURTIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVB RF9NVVRFWEFUVFJfSU5JVCAxCnwgI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8 ICNkZWZpbmUgSlZfSEFTSF9TWU5DSFJPTklaQVRJT04gMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19T RUxGX0VYRSAxCnwgI2RlZmluZSBIQVZFX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9f UFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmlu ZSBUTV9JTl9TWVNfVElNRSAxCnwgI2RlZmluZSBIQVZFX0RFQ0xfVFpOQU1FIDAKfCAjZGVmaW5l IFNJWkVPRl9WT0lEX1AgMAp8ICNkZWZpbmUgV09SRFNfQklHRU5ESUFOIDEKfCAjZGVmaW5lIEdD SlZFUlNJT04gIjEzLjAuMCIKfCAjZGVmaW5lIEpWX1ZFUlNJT04gIjEuNS4wIgp8ICNkZWZpbmUg SlZfQVBJX1ZFUlNJT04gIjEuNSIKfCAjZGVmaW5lIHNzaXplX3QgaW50CnwgLyogZW5kIGNvbmZk ZWZzLmguICAqLwp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaWZkZWYgU1REQ19IRUFERVJT CnwgI2luY2x1ZGUgPHN0ZGxpYi5oPgp8ICNpbmNsdWRlIDxzdGRkZWYuaD4KfCAjZW5kaWYKfCAj aWZkZWYgSEFWRV9ORVRJTkVUX0lOX0gKfCAjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgp8ICNlbmRp Zgo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhlciBzdHJ1Y3QgaXBfbXJl cSBpcyBpbiBuZXRpbmV0L2luLmgKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2Nj L3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIv IC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVt IC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIg IGNvbmZ0ZXN0LmMgPiY1CmNvbmZ0ZXN0LmM6MzU6MTc6IGVycm9yOiB0d28gb3IgbW9yZSBkYXRh IHR5cGVzIGluIGRlY2xhcmF0aW9uIHNwZWNpZmllcnMKICAgMzUgfCAjZGVmaW5lIHNzaXplX3Qg aW50CiAgICAgIHwgICAgICAgICAgICAgICAgIF5+fgo6MzgwOTogJD8gPSAxCjogZmFpbGVkIHBy b2dyYW0gd2FzOgp8IC8qIGNvbmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGli amF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tB R0VfVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGli amF2YSB2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfQlVHUkVQT1JUICJsaWJqYXZh Igp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIKfCAjZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCnwg I2RlZmluZSBWRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIExURExfU0hMSUJQQVRI X1ZBUiAiTERfTElCUkFSWV9QQVRIIgp8ICNkZWZpbmUgQVdUX1RPT0xLSVQgIiIKfCAjZGVmaW5l IExJQkdDSl9QUkVGSVggIi91c3IvbG9jYWwiCnwgI2RlZmluZSBVU0VfTFRETCAxCnwgI2RlZmlu ZSBMVF9PQkpESVIgIi5saWJzLyIKfCAjZGVmaW5lIElOVEVSUFJFVEVSIDEKfCAjZGVmaW5lIFVT RV9MSUJGRkkgMQp8ICNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKfCAjZGVmaW5lIFhfRElTUExBWV9N SVNTSU5HIDEKfCAjZGVmaW5lIEhBVkVfQk9FSE1fR0MgMQp8ICNkZWZpbmUgTElOVVhfVEhSRUFE UyAxCnwgI2RlZmluZSBIQVZFX1BUSFJFQURfTVVURVhBVFRSX0lOSVQgMQp8ICNkZWZpbmUgX1BP U0lYX1BUSFJFQURfU0VNQU5USUNTIDEKfCAjZGVmaW5lIEpWX0hBU0hfU1lOQ0hST05JWkFUSU9O IDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9QUk9DX1NF TEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBTIDEKfCAjZGVmaW5lIEhBVkVf UFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUgVE1fSU5fU1lTX1RJTUUgMQp8ICNkZWZpbmUgSEFW RV9ERUNMX1RaTkFNRSAwCnwgI2RlZmluZSBTSVpFT0ZfVk9JRF9QIDAKfCAjZGVmaW5lIFdPUkRT X0JJR0VORElBTiAxCnwgI2RlZmluZSBHQ0pWRVJTSU9OICIxMy4wLjAiCnwgI2RlZmluZSBKVl9W RVJTSU9OICIxLjUuMCIKfCAjZGVmaW5lIEpWX0FQSV9WRVJTSU9OICIxLjUiCnwgI2RlZmluZSBz c2l6ZV90IGludAp8IC8qIGVuZCBjb25mZGVmcy5oLiAgKi8KfCAjaW5jbHVkZSA8bmV0aW5ldC9p bi5oPgo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhlciBzdHJ1Y3QgaXB2 Nl9tcmVxIGlzIGluIG5ldGluZXQvaW4uaAo6MzgwOTogL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQv Li9nY2MveGdjYyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjLyAtQi91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1ZGUgLWlz eXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAgIC1jIC1n IC1PMiAgY29uZnRlc3QuYyA+JjUKY29uZnRlc3QuYzozNToxNzogZXJyb3I6IHR3byBvciBtb3Jl IGRhdGEgdHlwZXMgaW4gZGVjbGFyYXRpb24gc3BlY2lmaWVycwogICAzNSB8ICNkZWZpbmUgc3Np emVfdCBpbnQKICAgICAgfCAgICAgICAgICAgICAgICAgXn5+CjozODA5OiAkPyA9IDEKOiBmYWls ZWQgcHJvZ3JhbSB3YXM6CnwgLyogY29uZmRlZnMuaCAqLwp8ICNkZWZpbmUgUEFDS0FHRV9OQU1F ICJsaWJqYXZhIgp8ICNkZWZpbmUgUEFDS0FHRV9UQVJOQU1FICJsaWJqYXZhIgp8ICNkZWZpbmUg UEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9uLXVudXNlZCIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5H ICJsaWJqYXZhIHZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgImxp YmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1VSTCAiIgp8ICNkZWZpbmUgUEFDS0FHRSAibGliamF2 YSIKfCAjZGVmaW5lIFZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgTFRETF9TSExJ QlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCnwgI2RlZmluZSBBV1RfVE9PTEtJVCAiIgp8ICNk ZWZpbmUgTElCR0NKX1BSRUZJWCAiL3Vzci9sb2NhbCIKfCAjZGVmaW5lIFVTRV9MVERMIDEKfCAj ZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8ICNkZWZpbmUgSU5URVJQUkVURVIgMQp8ICNkZWZp bmUgVVNFX0xJQkZGSSAxCnwgI2RlZmluZSBFTkFCTEVfSlZNUEkgMQp8ICNkZWZpbmUgWF9ESVNQ TEFZX01JU1NJTkcgMQp8ICNkZWZpbmUgSEFWRV9CT0VITV9HQyAxCnwgI2RlZmluZSBMSU5VWF9U SFJFQURTIDEKfCAjZGVmaW5lIEhBVkVfUFRIUkVBRF9NVVRFWEFUVFJfSU5JVCAxCnwgI2RlZmlu ZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQp8ICNkZWZpbmUgSlZfSEFTSF9TWU5DSFJPTkla QVRJT04gMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19TRUxGX0VYRSAxCnwgI2RlZmluZSBIQVZFX1BS T0NfU0VMRl9FWEUgMQp8ICNkZWZpbmUgSEFWRV9fUFJPQ19TRUxGX01BUFMgMQp8ICNkZWZpbmUg SEFWRV9QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBUTV9JTl9TWVNfVElNRSAxCnwgI2RlZmlu ZSBIQVZFX0RFQ0xfVFpOQU1FIDAKfCAjZGVmaW5lIFNJWkVPRl9WT0lEX1AgMAp8ICNkZWZpbmUg V09SRFNfQklHRU5ESUFOIDEKfCAjZGVmaW5lIEdDSlZFUlNJT04gIjEzLjAuMCIKfCAjZGVmaW5l IEpWX1ZFUlNJT04gIjEuNS4wIgp8ICNkZWZpbmUgSlZfQVBJX1ZFUlNJT04gIjEuNSIKfCAjZGVm aW5lIHNzaXplX3QgaW50CnwgLyogZW5kIGNvbmZkZWZzLmguICAqLwp8ICNpbmNsdWRlIDxuZXRp bmV0L2luLmg+CjozODA5OiByZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyB3aGV0aGVyIHN0cnVj dCBzb2NrYWRkcl9pbjYgaXMgaW4gbmV0aW5ldC9pbi5oCjozODA5OiAvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUg ICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjM1OjE3OiBlcnJvcjogdHdv IG9yIG1vcmUgZGF0YSB0eXBlcyBpbiBkZWNsYXJhdGlvbiBzcGVjaWZpZXJzCiAgIDM1IHwgI2Rl ZmluZSBzc2l6ZV90IGludAogICAgICB8ICAgICAgICAgICAgICAgICBefn4KOjM4MDk6ICQ/ID0g MQo6IGZhaWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNL QUdFX05BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwg I2RlZmluZSBQQUNLQUdFX1ZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FH RV9TVFJJTkcgImxpYmphdmEgdmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JF UE9SVCAibGliamF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdF ICJsaWJqYXZhIgp8ICNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBM VERMX1NITElCUEFUSF9WQVIgIkxEX0xJQlJBUllfUEFUSCIKfCAjZGVmaW5lIEFXVF9UT09MS0lU ICIiCnwgI2RlZmluZSBMSUJHQ0pfUFJFRklYICIvdXNyL2xvY2FsIgp8ICNkZWZpbmUgVVNFX0xU REwgMQp8ICNkZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBJTlRFUlBSRVRFUiAx CnwgI2RlZmluZSBVU0VfTElCRkZJIDEKfCAjZGVmaW5lIEVOQUJMRV9KVk1QSSAxCnwgI2RlZmlu ZSBYX0RJU1BMQVlfTUlTU0lORyAxCnwgI2RlZmluZSBIQVZFX0JPRUhNX0dDIDEKfCAjZGVmaW5l IExJTlVYX1RIUkVBRFMgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYQVRUUl9JTklUIDEK fCAjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBKVl9IQVNIX1NZ TkNIUk9OSVpBVElPTiAxCnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5l IEhBVkVfUFJPQ19TRUxGX0VYRSAxCnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfTUFQUyAxCnwg I2RlZmluZSBIQVZFX1BST0NfU0VMRl9NQVBTIDEKfCAjZGVmaW5lIFRNX0lOX1NZU19USU1FIDEK fCAjZGVmaW5lIEhBVkVfREVDTF9UWk5BTUUgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCAwCnwg I2RlZmluZSBXT1JEU19CSUdFTkRJQU4gMQp8ICNkZWZpbmUgR0NKVkVSU0lPTiAiMTMuMC4wIgp8 ICNkZWZpbmUgSlZfVkVSU0lPTiAiMS41LjAiCnwgI2RlZmluZSBKVl9BUElfVkVSU0lPTiAiMS41 Igp8ICNkZWZpbmUgc3NpemVfdCBpbnQKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1 ZGUgPG5ldGluZXQvaW4uaD4KOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBz b2NrbGVuX3QgaW4gc3lzL3NvY2tldC5oCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8u L2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94 ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUv bGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5 c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLWMgLWcg LU8yICBjb25mdGVzdC5jID4mNQpjb25mdGVzdC5jOjM1OjE3OiBlcnJvcjogdHdvIG9yIG1vcmUg ZGF0YSB0eXBlcyBpbiBkZWNsYXJhdGlvbiBzcGVjaWZpZXJzCiAgIDM1IHwgI2RlZmluZSBzc2l6 ZV90IGludAogICAgICB8ICAgICAgICAgICAgICAgICBefn4KOjM4MDk6ICQ/ID0gMQo6IGZhaWxl ZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmluZSBQQUNLQUdFX05BTUUg ImxpYmphdmEiCnwgI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCnwgI2RlZmluZSBQ QUNLQUdFX1ZFUlNJT04gInZlcnNpb24tdW51c2VkIgp8ICNkZWZpbmUgUEFDS0FHRV9TVFJJTkcg ImxpYmphdmEgdmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGli amF2YSIKfCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBQQUNLQUdFICJsaWJqYXZh Igp8ICNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVzZWQiCnwgI2RlZmluZSBMVERMX1NITElC UEFUSF9WQVIgIkxEX0xJQlJBUllfUEFUSCIKfCAjZGVmaW5lIEFXVF9UT09MS0lUICIiCnwgI2Rl ZmluZSBMSUJHQ0pfUFJFRklYICIvdXNyL2xvY2FsIgp8ICNkZWZpbmUgVVNFX0xUREwgMQp8ICNk ZWZpbmUgTFRfT0JKRElSICIubGlicy8iCnwgI2RlZmluZSBJTlRFUlBSRVRFUiAxCnwgI2RlZmlu ZSBVU0VfTElCRkZJIDEKfCAjZGVmaW5lIEVOQUJMRV9KVk1QSSAxCnwgI2RlZmluZSBYX0RJU1BM QVlfTUlTU0lORyAxCnwgI2RlZmluZSBIQVZFX0JPRUhNX0dDIDEKfCAjZGVmaW5lIExJTlVYX1RI UkVBRFMgMQp8ICNkZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYQVRUUl9JTklUIDEKfCAjZGVmaW5l IF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxCnwgI2RlZmluZSBKVl9IQVNIX1NZTkNIUk9OSVpB VElPTiAxCnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfRVhFIDEKfCAjZGVmaW5lIEhBVkVfUFJP Q19TRUxGX0VYRSAxCnwgI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfTUFQUyAxCnwgI2RlZmluZSBI QVZFX1BST0NfU0VMRl9NQVBTIDEKfCAjZGVmaW5lIFRNX0lOX1NZU19USU1FIDEKfCAjZGVmaW5l IEhBVkVfREVDTF9UWk5BTUUgMAp8ICNkZWZpbmUgU0laRU9GX1ZPSURfUCAwCnwgI2RlZmluZSBX T1JEU19CSUdFTkRJQU4gMQp8ICNkZWZpbmUgR0NKVkVSU0lPTiAiMTMuMC4wIgp8ICNkZWZpbmUg SlZfVkVSU0lPTiAiMS41LjAiCnwgI2RlZmluZSBKVl9BUElfVkVSU0lPTiAiMS41Igp8ICNkZWZp bmUgc3NpemVfdCBpbnQKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2RlZmluZSBfUE9TSVhf UElJX1NPQ0tFVAp8ICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KfCAjaW5jbHVkZSA8c3lzL3NvY2tl dC5oPgo6MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgZm9yIHRtX2dtdG9mZiBpbiBz dHJ1Y3QgdG0KOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLUIvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91 c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwv eDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAtTzIgIGNvbmZ0ZXN0LmMg PiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6IGNoZWNraW5nIGZvciBn bG9iYWwgdGltZXpvbmUgdmFyaWFibGUKOjM4MDk6IC9ob21lL3pvcG9saXM0L2djamJ1aWxkLy4v Z2NjL3hnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy8gLUIvdXNyL2xvY2FsL3g4 Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9s aWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9pbmNsdWRlIC1pc3lz dGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9zeXMtaW5jbHVkZSAgICAtYyAtZyAt TzIgIGNvbmZ0ZXN0LmMgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6 IGNoZWNraW5nIGZvciBnbG9iYWwgX3RpbWV6b25lIHZhcmlhYmxlCjozODA5OiAvaG9tZS96b3Bv bGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2Mv IC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1n bnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWlu Y2x1ZGUgICAgLWMgLWcgLU8yICBjb25mdGVzdC5jID4mNQo6MzgwOTogJD8gPSAwCjozODA5OiBy ZXN1bHQ6IG5vCjozODA5OiBjaGVja2luZyBmb3IgcGVybAo6MzgwOTogcmVzdWx0OiBubwo6Mzgw OTogY2hlY2tpbmcgd2hldGhlciB0aGUgdGFyZ2V0IHN1cHBvcnRzIHRocmVhZC1sb2NhbCBzdG9y YWdlCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9w b2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jp bi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xv Y2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82 NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRlc3QgLWcgLU8yICAgY29uZnRl c3QuYyAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IC4vY29uZnRlc3QKOjM4MDk6ICQ/ID0gMAo6 MzgwOTogcmVzdWx0OiBubwo6MzgwOTogY2hlY2tpbmcgd2hldGhlciBsZCBzdXBwb3J0cyBhbm9u eW1vdXMgdmVyc2lvbiBzY3JpcHRzCjozODA5OiAvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2dj Yy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZf NjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGli LyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3Rl bSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAgLW8gY29uZnRl c3QgLWcgLU8yIC1mUElDICAgLXNoYXJlZCAtV2wsLS12ZXJzaW9uLXNjcmlwdCxjb25mdGVzdC5t YXAgY29uZnRlc3QuYyAgPiY1CjozODA5OiAkPyA9IDAKOjM4MDk6IHJlc3VsdDogbm8KOjM4MDk6 IHJlc3VsdDogUHl0aG9uIG1vZHVsZXMgZGlyOiAvdXNyL2xvY2FsL3NoYXJlL2djYy0xMy4wLjAv cHl0aG9uL2xpYmphdmEKOjM4MDk6IHVwZGF0aW5nIGNhY2hlIC4vY29uZmlnLmNhY2hlCjozODA5 OiBjaGVja2luZyB0aGF0IGdlbmVyYXRlZCBmaWxlcyBhcmUgbmV3ZXIgdGhhbiBjb25maWd1cmUK OjM4MDk6IHJlc3VsdDogZG9uZQo6MzgwOTogY3JlYXRpbmcgLi9jb25maWcuc3RhdHVzCgojIyAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIFJ1bm5pbmcgY29uZmlnLnN0YXR1cy4gIyMKIyMg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIwoKVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBsaWJq YXZhIGNvbmZpZy5zdGF0dXMgdmVyc2lvbi11bnVzZWQsIHdoaWNoIHdhcwpnZW5lcmF0ZWQgYnkg R05VIEF1dG9jb25mIDIuNjkuICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKCiAgQ09ORklH X0ZJTEVTICAgID0gCiAgQ09ORklHX0hFQURFUlMgID0gCiAgQ09ORklHX0xJTktTICAgID0gCiAg Q09ORklHX0NPTU1BTkRTID0gCiAgJCAuL2NvbmZpZy5zdGF0dXMgCgpvbiBDQjEwTE9BTjAxTAoK Y29uZmlnLnN0YXR1czoxNDE5OiBjcmVhdGluZyBNYWtlZmlsZQpjb25maWcuc3RhdHVzOjE0MTk6 IGNyZWF0aW5nIGxpYmdjai5wYwpjb25maWcuc3RhdHVzOjE0MTk6IGNyZWF0aW5nIGxpYmdjai5z cGVjCmNvbmZpZy5zdGF0dXM6MTQxOTogY3JlYXRpbmcgbGliZ2NqLXRlc3Quc3BlYwpjb25maWcu c3RhdHVzOjE0MTk6IGNyZWF0aW5nIGdjai9NYWtlZmlsZQpjb25maWcuc3RhdHVzOjE0MTk6IGNy ZWF0aW5nIGluY2x1ZGUvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoxNDE5OiBjcmVhdGluZyB0ZXN0 c3VpdGUvTWFrZWZpbGUKY29uZmlnLnN0YXR1czoxNDE5OiBjcmVhdGluZyBjb250cmliL2FvdGNv bXBpbGUucHkKY29uZmlnLnN0YXR1czoxNDE5OiBjcmVhdGluZyBjb250cmliL2FvdC1jb21waWxl CmNvbmZpZy5zdGF0dXM6MTQxOTogY3JlYXRpbmcgY29udHJpYi9hb3QtY29tcGlsZS1ycG0KY29u ZmlnLnN0YXR1czoxNDE5OiBjcmVhdGluZyBjb250cmliL2dlbmVyYXRlLWNhY2VydHMucGwKY29u ZmlnLnN0YXR1czoxNDE5OiBjcmVhdGluZyBjb250cmliL3JlYnVpbGQtZ2NqLWRiCmNvbmZpZy5z dGF0dXM6MTQxOTogY3JlYXRpbmcgc2NyaXB0cy9qYXIKY29uZmlnLnN0YXR1czoxNDE5OiBjcmVh dGluZyBpbmNsdWRlL2NvbmZpZy5oCmNvbmZpZy5zdGF0dXM6MTQxOTogY3JlYXRpbmcgZ2NqL2xp Ymdjai1jb25maWcuaApjb25maWcuc3RhdHVzOjE2NDU6IGxpbmtpbmcgLi4vLi4vLi4vZ2NqL2xp YmphdmEvaW5jbHVkZS9wb3NpeC5oIHRvIGluY2x1ZGUvcGxhdGZvcm0uaApjb25maWcuc3RhdHVz OjE2NDU6IGxpbmtpbmcgLi4vLi4vLi4vZ2NqL2xpYmphdmEvamF2YS9pby9uYXRGaWxlUG9zaXgu Y2MgdG8gamF2YS9pby9uYXRGaWxlLmNjCmNvbmZpZy5zdGF0dXM6MTY0NTogbGlua2luZyAuLi8u Li8uLi9nY2ovbGliamF2YS9qYXZhL2xhbmcvbmF0UG9zaXhQcm9jZXNzLmNjIHRvIGphdmEvbGFu Zy9uYXRDb25jcmV0ZVByb2Nlc3MuY2MKY29uZmlnLnN0YXR1czoxNjQ1OiBsaW5raW5nIC4uLy4u Ly4uL2djai9saWJqYXZhL2phdmEvbmV0L25hdFZNSW5ldEFkZHJlc3NQb3NpeC5jYyB0byBqYXZh L25ldC9uYXRWTUluZXRBZGRyZXNzLmNjCmNvbmZpZy5zdGF0dXM6MTY0NTogbGlua2luZyAuLi8u Li8uLi9nY2ovbGliamF2YS9qYXZhL25ldC9uYXRWTU5ldHdvcmtJbnRlcmZhY2VQb3NpeC5jYyB0 byBqYXZhL25ldC9uYXRWTU5ldHdvcmtJbnRlcmZhY2UuY2MKY29uZmlnLnN0YXR1czoxNjQ1OiBs aW5raW5nIC4uLy4uLy4uL2djai9saWJqYXZhL2dudS9qYXZhL25ldC9uYXRQbGFpblNvY2tldElt cGxQb3NpeC5jYyB0byBnbnUvamF2YS9uZXQvbmF0UGxhaW5Tb2NrZXRJbXBsLmNjCmNvbmZpZy5z dGF0dXM6MTY0NTogbGlua2luZyAuLi8uLi8uLi9nY2ovbGliamF2YS9nbnUvamF2YS9uZXQvbmF0 UGxhaW5EYXRhZ3JhbVNvY2tldEltcGxQb3NpeC5jYyB0byBnbnUvamF2YS9uZXQvbmF0UGxhaW5E YXRhZ3JhbVNvY2tldEltcGwuY2MKY29uZmlnLnN0YXR1czoxNjQ1OiBsaW5raW5nIC4uLy4uLy4u L2djai9saWJqYXZhL2dudS9qYXZhL25pby9uYXRWTVBpcGVQb3NpeC5jYyB0byBnbnUvamF2YS9u aW8vbmF0Vk1QaXBlLmNjCmNvbmZpZy5zdGF0dXM6MTY0NTogbGlua2luZyAuLi8uLi8uLi9nY2ov bGliamF2YS9nbnUvamF2YS9uaW8vbmF0Vk1TZWxlY3RvclBvc2l4LmNjIHRvIGdudS9qYXZhL25p by9uYXRWTVNlbGVjdG9yLmNjCmNvbmZpZy5zdGF0dXM6MTY0NTogbGlua2luZyAuLi8uLi8uLi9n Y2ovbGliamF2YS9nbnUvamF2YS9uaW8vY2hhbm5lbHMvbmF0RmlsZUNoYW5uZWxQb3NpeC5jYyB0 byBnbnUvamF2YS9uaW8vY2hhbm5lbHMvbmF0RmlsZUNoYW5uZWxJbXBsLmNjCmNvbmZpZy5zdGF0 dXM6MTY0NTogbGlua2luZyAuLi8uLi8uLi9nY2ovbGliamF2YS9nbnUvamF2YS9zZWN1cml0eS9q Y2UvcHJuZy9uYXRWTVNlY3VyZVJhbmRvbVBvc2l4LmNjIHRvIGdudS9qYXZhL3NlY3VyaXR5L2pj ZS9wcm5nL25hdFZNU2VjdXJlUmFuZG9tLmNjCmNvbmZpZy5zdGF0dXM6MTY0NTogbGlua2luZyAu Li8uLi8uLi9nY2ovbGliamF2YS9pbmNsdWRlL2JvZWhtLWdjLmggdG8gaW5jbHVkZS9qYXZhLWdj LmgKY29uZmlnLnN0YXR1czoxNjQ1OiBsaW5raW5nIC4uLy4uLy4uL2djai9saWJqYXZhL2luY2x1 ZGUvcG9zaXgtdGhyZWFkcy5oIHRvIGluY2x1ZGUvamF2YS10aHJlYWRzLmgKY29uZmlnLnN0YXR1 czoxNjQ1OiBsaW5raW5nIC4uLy4uLy4uL2djai9saWJqYXZhL3N5c2RlcC9pMzg2L2xvY2tzLmgg dG8gc3lzZGVwL2xvY2tzLmgKY29uZmlnLnN0YXR1czoxNjQ1OiBsaW5raW5nIC4uLy4uLy4uL2dj ai9saWJqYXZhL3N5c2RlcC9nZW5lcmljL2JhY2t0cmFjZS5oIHRvIHN5c2RlcC9iYWNrdHJhY2Uu aApjb25maWcuc3RhdHVzOjE2NDU6IGxpbmtpbmcgLi4vLi4vLi4vZ2NqL2xpYmphdmEvc3lzZGVw L2Rlc2NyaXB0b3Itbi5oIHRvIHN5c2RlcC9kZXNjcmlwdG9yLmgKY29uZmlnLnN0YXR1czoxNjQ1 OiBsaW5raW5nIC4uLy4uLy4uL2djai9saWJqYXZhL2luY2x1ZGUvZGVmYXVsdC1zaWduYWwuaCB0 byBpbmNsdWRlL2phdmEtc2lnbmFsLmgKY29uZmlnLnN0YXR1czoxNjQ1OiBsaW5raW5nIC4uLy4u Ly4uL2djai9saWJqYXZhL2luY2x1ZGUvZGVmYXVsdC1zaWduYWwuaCB0byBpbmNsdWRlL2phdmEt c2lnbmFsLWF1eC5oCmNvbmZpZy5zdGF0dXM6MTY2NDogZXhlY3V0aW5nIGRlZmF1bHQtMSBjb21t YW5kcwpjb25maWcuc3RhdHVzOjE2NjQ6IGV4ZWN1dGluZyBkZXBmaWxlcyBjb21tYW5kcwpjb25m aWcuc3RhdHVzOjE2NjQ6IGV4ZWN1dGluZyBsaWJ0b29sIGNvbW1hbmRzCjozODA5OiA9PT0gY29u ZmlndXJpbmcgaW4gY2xhc3NwYXRoICgvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMt bGludXgtZ251L2xpYmphdmEvY2xhc3NwYXRoKQo6MzgwOTogcnVubmluZyAvYmluL2Jhc2ggLi4v Li4vLi4vLi4vZ2NqL2xpYmphdmEvY2xhc3NwYXRoL2NvbmZpZ3VyZSAtLWRpc2FibGUtb3B0aW9u LWNoZWNraW5nICctLXByZWZpeD0vdXNyL2xvY2FsJyAgJy0tZW5hYmxlLW11bHRpbGliJyAnLS1k aXNhYmxlLWJvb3RzdHJhcCcgJy0tZGlzYWJsZS1saWJzdGRjeHgnICctLWVuYWJsZS1sYW5ndWFn ZXM9YyxjKyssamF2YSxsdG8nICctLXByb2dyYW0tdHJhbnNmb3JtLW5hbWU9cyx5LHksJyAnLS13 aXRoLXRhcmdldC1zdWJkaXI9eDg2XzY0LXBjLWxpbnV4LWdudScgJy0tYnVpbGQ9eDg2XzY0LXBj LWxpbnV4LWdudScgJy0taG9zdD14ODZfNjQtcGMtbGludXgtZ251JyAnLS10YXJnZXQ9eDg2XzY0 LXBjLWxpbnV4LWdudScgJy0tZGlzYWJsZS1zdGF0aWMnICdidWlsZF9hbGlhcz14ODZfNjQtcGMt bGludXgtZ251JyAnaG9zdF9hbGlhcz14ODZfNjQtcGMtbGludXgtZ251JyAndGFyZ2V0X2FsaWFz PXg4Nl82NC1wYy1saW51eC1nbnUnICdDQz0vaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy94 Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vzci9sb2NhbC94ODZfNjQt cGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvbGliLyAt aXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5jbHVkZSAtaXN5c3RlbSAv dXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUgICAnICdDRkxBR1M9LWcg LU8yJyAnTERGTEFHUz0nICdDUFBGTEFHUz0nICdDWFg9IC9ob21lL3pvcG9saXM0L2djamJ1aWxk Ly4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2MgLUIvaG9tZS96b3BvbGlzNC9nY2pidWlsZC8uL2dj YyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1n bnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1s aW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8ubGlicyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxk L3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL2xpYnN1cGMrKy8ubGlicyAtQi91c3Iv bG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2NhbC94ODZfNjQtcGMtbGlu dXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2luY2x1 ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L3N5cy1pbmNsdWRlICAg JyAnQ1hYRkxBR1M9LWcgLU8yIC1EX0dOVV9TT1VSQ0UnICctLWRpc2FibGUtdG9vbC13cmFwcGVy cycgJy0tZGlzYWJsZS1sb2FkLWxpYnJhcnknICctLWRpc2FibGUtZGVidWcnICctLWVuYWJsZS1k ZWZhdWx0LXRvb2xraXQ9JyAnLS13aXRoLXZtLWNsYXNzZXM9L2hvbWUvem9wb2xpczQvZ2NqL2xp YmphdmE6L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJqYXZh JyAnLS1kaXNhYmxlLWNvcmUtam5pJyAnLS1kaXNhYmxlLWV4YW1wbGVzJyAnLS13aXRoLWdsaWJq PWJ1aWxkJyAnLS1kaXNhYmxlLXBsdWdpbicgJy0tZGlzYWJsZS1nY29uZi1wZWVyJyAnLS1lbmFi bGUtZGVmYXVsdC1wcmVmZXJlbmNlcy1wZWVyPWdudS5qYXZhLnV0aWwucHJlZnMuRmlsZUJhc2Vk RmFjdG9yeScgJy0tZGlzYWJsZS1ndGstcGVlcicgJy0tZGlzYWJsZS1wbHVnaW4nICctLWRpc2Fi bGUtcXQtcGVlcicgJy0td2l0aG91dC1lc2NoZXInICctLWRpc2FibGUtcmVnZW4taGVhZGVycycg Jy0tZGlzYWJsZS1XZXJyb3InICctLWVuYWJsZS1sdGRsLWNvbnZlbmllbmNlJyAnLS13aXRoLWF1 eGRpcj0vaG9tZS96b3BvbGlzNC9nY2onIC0tY2FjaGUtZmlsZT0uLi8uL2NvbmZpZy5jYWNoZSAt LXNyY2Rpcj0uLi8uLi8uLi8uLi9nY2ovbGliamF2YS9jbGFzc3BhdGgKOjM4MDk6IGVycm9yOiAu Li8uLi8uLi8uLi9nY2ovbGliamF2YS9jbGFzc3BhdGgvY29uZmlndXJlIGZhaWxlZCBmb3IgY2xh c3NwYXRoCjozODA5OiA9PT0gY29uZmlndXJpbmcgaW4gbGlibHRkbCAoL2hvbWUvem9wb2xpczQv Z2NqYnVpbGQveDg2XzY0LXBjLWxpbnV4LWdudS9saWJqYXZhL2xpYmx0ZGwpCjozODA5OiBydW5u aW5nIC9iaW4vYmFzaCAuLi8uLi8uLi8uLi9nY2ovbGliamF2YS9saWJsdGRsL2NvbmZpZ3VyZSAt LWRpc2FibGUtb3B0aW9uLWNoZWNraW5nICctLXByZWZpeD0vdXNyL2xvY2FsJyAgJy0tZW5hYmxl LW11bHRpbGliJyAnLS1kaXNhYmxlLWJvb3RzdHJhcCcgJy0tZGlzYWJsZS1saWJzdGRjeHgnICct LWVuYWJsZS1sYW5ndWFnZXM9YyxjKyssamF2YSxsdG8nICctLXByb2dyYW0tdHJhbnNmb3JtLW5h bWU9cyx5LHksJyAnLS13aXRoLXRhcmdldC1zdWJkaXI9eDg2XzY0LXBjLWxpbnV4LWdudScgJy0t YnVpbGQ9eDg2XzY0LXBjLWxpbnV4LWdudScgJy0taG9zdD14ODZfNjQtcGMtbGludXgtZ251JyAn LS10YXJnZXQ9eDg2XzY0LXBjLWxpbnV4LWdudScgJy0tZGlzYWJsZS1zdGF0aWMnICdidWlsZF9h bGlhcz14ODZfNjQtcGMtbGludXgtZ251JyAnaG9zdF9hbGlhcz14ODZfNjQtcGMtbGludXgtZ251 JyAndGFyZ2V0X2FsaWFzPXg4Nl82NC1wYy1saW51eC1nbnUnICdDQz0vaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUg ICAnICdDRkxBR1M9LWcgLU8yJyAnTERGTEFHUz0nICdDUFBGTEFHUz0nICdDWFg9IC9ob21lL3pv cG9saXM0L2djamJ1aWxkLy4vZ2NjL3hnY2MgLXNoYXJlZC1saWJnY2MgLUIvaG9tZS96b3BvbGlz NC9nY2pidWlsZC8uL2djYyAtbm9zdGRpbmMrKyAtTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4 Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYyAtTC9ob21lL3pvcG9saXM0L2djamJ1 aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL3NyYy8ubGlicyAtTC9ob21lL3pv cG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1saW51eC1nbnUvbGlic3RkYysrLXYzL2xpYnN1cGMr Ky8ubGlicyAtQi91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdudS9iaW4vIC1CL3Vzci9sb2Nh bC94ODZfNjQtcGMtbGludXgtZ251L2xpYi8gLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMt bGludXgtZ251L2luY2x1ZGUgLWlzeXN0ZW0gL3Vzci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251 L3N5cy1pbmNsdWRlICAgJyAnQ1hYRkxBR1M9LWcgLU8yIC1EX0dOVV9TT1VSQ0UnICctLWRpc2Fi bGUtdG9vbC13cmFwcGVycycgJy0tZGlzYWJsZS1sb2FkLWxpYnJhcnknICctLWRpc2FibGUtZGVi dWcnICctLWVuYWJsZS1kZWZhdWx0LXRvb2xraXQ9JyAnLS13aXRoLXZtLWNsYXNzZXM9L2hvbWUv em9wb2xpczQvZ2NqL2xpYmphdmE6L2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2XzY0LXBjLWxp bnV4LWdudS9saWJqYXZhJyAnLS1kaXNhYmxlLWNvcmUtam5pJyAnLS1kaXNhYmxlLWV4YW1wbGVz JyAnLS13aXRoLWdsaWJqPWJ1aWxkJyAnLS1kaXNhYmxlLXBsdWdpbicgJy0tZGlzYWJsZS1nY29u Zi1wZWVyJyAnLS1lbmFibGUtZGVmYXVsdC1wcmVmZXJlbmNlcy1wZWVyPWdudS5qYXZhLnV0aWwu cHJlZnMuRmlsZUJhc2VkRmFjdG9yeScgJy0tZGlzYWJsZS1ndGstcGVlcicgJy0tZGlzYWJsZS1w bHVnaW4nICctLWRpc2FibGUtcXQtcGVlcicgJy0td2l0aG91dC1lc2NoZXInICctLWRpc2FibGUt cmVnZW4taGVhZGVycycgJy0tZGlzYWJsZS1XZXJyb3InICctLWVuYWJsZS1sdGRsLWNvbnZlbmll bmNlJyAnLS13aXRoLWF1eGRpcj0vaG9tZS96b3BvbGlzNC9nY2onIC0tY2FjaGUtZmlsZT0uLi8u L2NvbmZpZy5jYWNoZSAtLXNyY2Rpcj0uLi8uLi8uLi8uLi9nY2ovbGliamF2YS9saWJsdGRsCgoj IyAtLS0tLS0tLS0tLS0tLS0tICMjCiMjIENhY2hlIHZhcmlhYmxlcy4gIyMKIyMgLS0tLS0tLS0t LS0tLS0tLSAjIwoKCiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCiMjIE91dHB1dCB2YXJpYWJsZXMu ICMjCiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCgpBQ0xPQ0FMPScke1NIRUxMfSAvaG9tZS96b3Bv bGlzNC9nY2ovbWlzc2luZyBhY2xvY2FsLTEuMTUnCkFNREVQQkFDS1NMQVNIPSdcJwpBTURFUF9G QUxTRT0nIycKQU1ERVBfVFJVRT0nJwpBTVRBUj0nJCR7VEFSLXRhcn0nCkFNX0JBQ0tTTEFTSD0n XCcKQU1fREVGQVVMVF9WPSckKEFNX0RFRkFVTFRfVkVSQk9TSVRZKScKQU1fREVGQVVMVF9WRVJC T1NJVFk9JzEnCkFNX1Y9JyQoViknCkFOT05WRVJTQ1JJUFRfRkFMU0U9JycKQU5PTlZFUlNDUklQ VF9HTlVfRkFMU0U9JycKQU5PTlZFUlNDUklQVF9HTlVfVFJVRT0nIycKQU5PTlZFUlNDUklQVF9T VU5fRkFMU0U9JycKQU5PTlZFUlNDUklQVF9TVU5fVFJVRT0nIycKQU5PTlZFUlNDUklQVF9UUlVF PScjJwpBTlRMUl9KQVI9Jy91c3Ivc2hhcmUvamF2YS9hbnRsci5qYXInCkFSPSdhcicKQVM9Jy9o b21lL3pvcG9saXM0L2djamJ1aWxkLy4vZ2NjL2FzJwpBVE9NSUNTUEVDPScnCkFVVE9DT05GPSck e1NIRUxMfSAvaG9tZS96b3BvbGlzNC9nY2ovbWlzc2luZyBhdXRvY29uZicKQVVUT0hFQURFUj0n JHtTSEVMTH0gL2hvbWUvem9wb2xpczQvZ2NqL21pc3NpbmcgYXV0b2hlYWRlcicKQVVUT01BS0U9 JyR7U0hFTEx9IC9ob21lL3pvcG9saXM0L2djai9taXNzaW5nIGF1dG9tYWtlLTEuMTUnCkFXSz0n bWF3aycKQkFDS1RSQUNFU1BFQz0nJwpCVUlMRF9FQ0oxX0ZBTFNFPScnCkJVSUxEX0VDSjFfVFJV RT0nIycKQlVJTERfTElCR0NKX1JFRFVDRURfUkVGTEVDVElPTl9GQUxTRT0nJwpCVUlMRF9MSUJH Q0pfUkVEVUNFRF9SRUZMRUNUSU9OX1RSVUU9JyMnCkJVSUxEX1NVQkxJQlNfRkFMU0U9JycKQlVJ TERfU1VCTElCU19UUlVFPScjJwpCVUlMRF9WRVJTSU9OPScnCkNDPScvaG9tZS96b3BvbGlzNC9n Y2pidWlsZC8uL2djYy94Z2NjIC1CL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQvLi9nY2MvIC1CL3Vz ci9sb2NhbC94ODZfNjQtcGMtbGludXgtZ251L2Jpbi8gLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1s aW51eC1nbnUvbGliLyAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvaW5j bHVkZSAtaXN5c3RlbSAvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvc3lzLWluY2x1ZGUg ICAnCkNDREVQTU9ERT0nZGVwbW9kZT1nY2MzJwpDRkxBR1M9Jy1nIC1PMicKQ0hFQ0tSRUZTUEVD PScnCkNMQVNTUEFUSF9TRVBBUkFUT1I9JzonCkNQUD0nL2xpYi9jcHAnCkNQUEZMQUdTPScnCkNQ VT0nJwpDUkVBVEVfR0pET0NfRkFMU0U9JyMnCkNSRUFURV9HSkRPQ19UUlVFPScnCkNSRUFURV9K QVZBX0hPTUVfRkFMU0U9JycKQ1JFQVRFX0pBVkFfSE9NRV9UUlVFPScjJwpDWFg9JyAvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC8uL2djYy94Z2NjIC1zaGFyZWQtbGliZ2NjIC1CL2hvbWUvem9wb2xp czQvZ2NqYnVpbGQvLi9nY2MgLW5vc3RkaW5jKysgLUwvaG9tZS96b3BvbGlzNC9nY2pidWlsZC94 ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMgLUwvaG9tZS96b3BvbGlzNC9nY2pi dWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9zcmMvLmxpYnMgLUwvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYnN0ZGMrKy12My9saWJzdXBj KysvLmxpYnMgLUIvdXNyL2xvY2FsL3g4Nl82NC1wYy1saW51eC1nbnUvYmluLyAtQi91c3IvbG9j YWwveDg2XzY0LXBjLWxpbnV4LWdudS9saWIvIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBj LWxpbnV4LWdudS9pbmNsdWRlIC1pc3lzdGVtIC91c3IvbG9jYWwveDg2XzY0LXBjLWxpbnV4LWdu dS9zeXMtaW5jbHVkZSAgICcKQ1hYQ1BQPScvbGliL2NwcCcKQ1hYREVQTU9ERT0nZGVwbW9kZT1n Y2MzJwpDWFhGTEFHUz0nLWcgLU8yIC1EX0dOVV9TT1VSQ0UnCkNZR1BBVEhfVz0nZWNobycKREVG Uz0nLURIQVZFX0NPTkZJR19IJwpERVBESVI9Jy5kZXBzJwpESVJMVERMPSdsaWJsdGRsJwpESVZJ REVTUEVDPSctZm5vLXVzZS1kaXZpZGUtc3Vicm91dGluZScKRExMVE9PTD0nZGxsdG9vbCcKRFNZ TVVUSUw9J2RzeW11dGlsJwpEVU1QQklOPScnCkVDSE9fQz0nJwpFQ0hPX049Jy1uJwpFQ0hPX1Q9 JycKRUNKX0JVSUxEX0pBUj0nJwpFQ0pfSkFSPScnCkVHUkVQPScnCkVOQUJMRV9TSEFSRURfRkFM U0U9JycKRU5BQkxFX1NIQVJFRF9UUlVFPScjJwpFWENFUFRJT05TUEVDPSctZm5vbi1jYWxsLWV4 Y2VwdGlvbnMnCkVYRUVYVD0nJwpGR1JFUD0nJwpHQ0NfRk9SX0VDSlg9JyQoQ1hYKScKR0NERVBT PScnCkdDSU5DUz0nLUkkKHRvcF9zcmNkaXIpLy4uL2JvZWhtLWdjL2luY2x1ZGUgLUkuLi9ib2Vo bS1nYy9pbmNsdWRlJwpHQ0o9JyAtQi9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1s aW51eC1nbnUvbGliamF2YS8nCkdDSkRFUE1PREU9J2RlcG1vZGU9bm9uZScKR0NKRkxBR1M9Jy1n IC1PMicKR0NKSD0nJCh0b3BfYnVpbGRkaXIpLyQoTVVMVElCVUlMRFRPUCkuLi8uLi8kKGhvc3Rf c3ViZGlyKS9nY2MvZ2NqaCcKR0NKVkVSU0lPTj0nMTMuMC4wJwpHQ0pfQklOX0RJUj0nJwpHQ0pf Rk9SX0VDSlg9JyQoR0NKKScKR0NMSUJTPScuLi9ib2VobS1nYy9saWJnY2pnY19jb252ZW5pZW5j ZS5sYScKR0NTUEVDPScnCkdDVEVTVFNQRUM9Jy1ML2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2 XzY0LXBjLWxpbnV4LWdudS9saWJqYXZhLy4uL2JvZWhtLWdjLy5saWJzIC1ycGF0aCAvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYmphdmEvLi4vYm9laG0tZ2Mv LmxpYnMnCkdMSUJfQ0ZMQUdTPScnCkdMSUJfTElCUz0nJwpHUkVQPSdncmVwJwpHVEtfQ0ZMQUdT PScnCkdUS19MSUJTPScnCkhBU0hfU1lOQ19TUEVDPSctZmhhc2gtc3luY2hyb25pemF0aW9uJwpJ RUVFU1BFQz0nJwpJTkNMVERMPSctSSQodG9wX3NyY2RpcikvbGlibHRkbCAtSSR7dG9wX3NyY2Rp cn0vbGlibHRkbCcKSU5TVEFMTF9BT1RfUlBNX0ZBTFNFPScnCklOU1RBTExfQU9UX1JQTV9UUlVF PScjJwpJTlNUQUxMX0JJTkFSSUVTX0ZBTFNFPScjJwpJTlNUQUxMX0JJTkFSSUVTX1RSVUU9JycK SU5TVEFMTF9EQVRBPScvdXNyL2Jpbi9pbnN0YWxsIC1jIC1tIDY0NCcKSU5TVEFMTF9FQ0pfSkFS X0ZBTFNFPScnCklOU1RBTExfRUNKX0pBUl9UUlVFPScjJwpJTlNUQUxMX1BST0dSQU09Jy91c3Iv YmluL2luc3RhbGwgLWMnCklOU1RBTExfU0NSSVBUPScvdXNyL2Jpbi9pbnN0YWxsIC1jJwpJTlNU QUxMX1NUUklQX1BST0dSQU09JyQoaW5zdGFsbF9zaCkgLWMgLXMnCklOVEVSUFJFVEVSPSd5ZXMn CklOVEVSUFJFVEVSX0ZBTFNFPScjJwpJTlRFUlBSRVRFUl9UUlVFPScnCkpBUj0nbm8nCkpBVkFf SE9NRT0nJwpKQVZBX0hPTUVfU0VUX0ZBTFNFPScnCkpBVkFfSE9NRV9TRVRfVFJVRT0nIycKSkFW QV9NQUlOVEFJTkVSX01PREVfRkFMU0U9JycKSkFWQV9NQUlOVEFJTkVSX01PREVfVFJVRT0nIycK SkFWQV9WRVJTSU9OPScnCkpDMUdDU1BFQz0nLWZ1c2UtYm9laG0tZ2MnCkpSRV9CSU5fRElSPScn CkpSRV9ESVI9JycKSlJFX0xJQl9ESVI9JycKSlJFX0xOSz0nJwpKVk1fSkFSX0RJUj0nJwpKVk1f SkFSX1JPT1RfRElSPScnCkpWTV9ST09UX0RJUj0nJwpMRD0nL2hvbWUvem9wb2xpczQvZ2NqYnVp bGQvLi9nY2MvY29sbGVjdC1sZCAtbSBlbGZfeDg2XzY0JwpMREZMQUdTPScnCkxETElCSUNPTlY9 JyAgJwpMRF9GSU5JU0hfU1RBVElDX1NQRUM9JyV7c3RhdGljLWxpYmdjajotY2FsbF9zaGFyZWR9 JwpMRF9TVEFSVF9TVEFUSUNfU1BFQz0nJXtzdGF0aWMtbGliZ2NqOi1ub25fc2hhcmVkfScKTElC QVJUX0NGTEFHUz0nJwpMSUJBUlRfTElCUz0nJwpMSUJESVI9JycKTElCRkZJPScuLi9saWJmZmkv bGliZmZpX2NvbnZlbmllbmNlLmxhJwpMSUJGRklJTkNTPSctSSQodG9wX3NyY2RpcikvLi4vbGli ZmZpL2luY2x1ZGUgLUkuLi9saWJmZmkvaW5jbHVkZScKTElCR0NDX1VOV0lORF9JTkNMVURFPSct SSQobXVsdGlfYmFzZWRpcikvLi9saWJqYXZhLy4uL2xpYmdjYycKTElCR0NKREVCVUc9J2Rpc2Fi bGUnCkxJQkdDSlRFU1RTUEVDPSctTC9ob21lL3pvcG9saXM0L2djamJ1aWxkL3g4Nl82NC1wYy1s aW51eC1nbnUvbGliamF2YS8ubGlicyAtcnBhdGggL2hvbWUvem9wb2xpczQvZ2NqYnVpbGQveDg2 XzY0LXBjLWxpbnV4LWdudS9saWJqYXZhLy5saWJzJwpMSUJHQ0pfQkNfU1BFQz0nJwpMSUJHQ0pf Q0ZMQUdTPScgIC1mb21pdC1mcmFtZS1wb2ludGVyIC1Vc3VuJwpMSUJHQ0pfQ1hYRkxBR1M9JyAg LWZvbWl0LWZyYW1lLXBvaW50ZXIgLVVzdW4nCkxJQkdDSl9KQVZBRkxBR1M9JyAgLWZvbWl0LWZy YW1lLXBvaW50ZXIgLVVzdW4nCkxJQkdDSl9MRF9FWFBPUlRfQUxMPScnCkxJQkdDSl9MRF9TWU1C T0xJQz0nLVdsLC1Cc3ltYm9saWMnCkxJQkdDSl9MRF9TWU1CT0xJQ19GVU5DVElPTlM9Jy1XbCwt QnN5bWJvbGljLWZ1bmN0aW9ucycKTElCR0NKX1NQRUM9JyV7cy1iYy1hYmk6fSAtbGdjaicKTElC R0NKX1NVQkxJQl9DT1JFX0VYVFJBX0RFUFM9JycKTElCR0NKX1NVQkxJQl9MVEZMQUdTPScnCkxJ QklDT05WPScnCkxJQkxUREw9JyR7dG9wX2J1aWxkZGlyfS9saWJsdGRsL2xpYmx0ZGxjLmxhJwpM SUJNQVRIU1BFQz0nLWxtJwpMSUJPQkpTPScnCkxJQlM9JycKTElCU1REQ1hYU1BFQz0nJwpMSUJT VERDWFhfUkFXX0NYWF9DWFhGTEFHUz0nICAgIC1JJCh0b3BfYnVpbGRkaXIpLy4uL2xpYnN0ZGMr Ky12My9pbmNsdWRlICAgICAtSSQodG9wX2J1aWxkZGlyKS8uLi9saWJzdGRjKystdjMvaW5jbHVk ZS8kKHRhcmdldF9ub25jYW5vbmljYWwpICAgICAtSSQodG9wX3NyY2RpcikvLi4vbGlic3RkYysr LXYzL2xpYnN1cGMrKycKTElCU1REQ1hYX1JBV19DWFhfTERGTEFHUz0nICAgICQodG9wX2J1aWxk ZGlyKS8uLi9saWJzdGRjKystdjMvc3JjL2xpYnN0ZGMrKy5sYScKTElCVE9PTD0nJChTSEVMTCkg JCh0b3BfYnVpbGRkaXIpL2xpYnRvb2wnCkxJUE89J2xpcG8nCkxOX1M9J2xuIC1zJwpMVExJQklD T05WPScnCkxUTElCT0JKUz0nJwpNQUlOVD0nIycKTUFJTlRBSU5FUl9NT0RFX0ZBTFNFPScnCk1B SU5UQUlORVJfTU9ERV9UUlVFPScjJwpNQUtFPScvdXNyL2Jpbi9tYWtlJwpNQUtFSU5GTz0nbWFr ZWluZm8gLS1zcGxpdC1zaXplPTUwMDAwMDAnCk1LRElSX1A9Jy4uLy4uLy4uL2djai9saWJqYXZh Ly4uL2luc3RhbGwtc2ggLWMgLWQnCk5BVElWRV9GQUxTRT0nIycKTkFUSVZFX1RSVUU9JycKTkVF RFNfREFUQV9TVEFSVF9GQUxTRT0nJwpORUVEU19EQVRBX1NUQVJUX1RSVUU9JyMnCk5NPScvaG9t ZS96b3BvbGlzNC9nY2pidWlsZC8uL2djYy9ubScKTk1FRElUPScnCk9CSkRVTVA9J29iamR1bXAn Ck9CSkVYVD0nbycKT1M9JycKT1RPT0w2ND0nJwpPVE9PTD0nb3Rvb2wnClBBQ0tBR0U9J2xpYmph dmEnClBBQ0tBR0VfQlVHUkVQT1JUPSdsaWJqYXZhJwpQQUNLQUdFX05BTUU9J2xpYmphdmEnClBB Q0tBR0VfU1RSSU5HPSdsaWJqYXZhIHZlcnNpb24tdW51c2VkJwpQQUNLQUdFX1RBUk5BTUU9J2xp YmphdmEnClBBQ0tBR0VfVVJMPScnClBBQ0tBR0VfVkVSU0lPTj0ndmVyc2lvbi11bnVzZWQnClBB VEhfU0VQQVJBVE9SPSc6JwpQRVJMPSdmYWxzZScKUEtHX0NPTkZJRz0nJwpQTEFURk9STT0nUG9z aXgnClJBTkxJQj0ncmFubGliJwpTREtfQklOX0RJUj0nJwpTREtfSU5DTFVERV9ESVI9JycKU0RL X0xJQl9ESVI9JycKU0RLX0xOSz0nJwpTRUQ9Jy9iaW4vc2VkJwpTRVRfTUFLRT0nJwpTSEVMTD0n L2Jpbi9iYXNoJwpTVFJJUD0nc3RyaXAnClNVUFBSRVNTX0xJQkdDSl9CQ19GQUxTRT0nJwpTVVBQ UkVTU19MSUJHQ0pfQkNfVFJVRT0nIycKU1lTREVQX1NPVVJDRVM9JycKU1lTVEVNU1BFQz0nICcK U1lTX1pMSUJTPScnClRFU1RTVUJESVJfRkFMU0U9JyMnClRFU1RTVUJESVJfVFJVRT0nJwpUSFJF QURDWFhGTEFHUz0nJwpUSFJFQURERVBTPScnClRIUkVBRElOQ1M9JycKVEhSRUFETERGTEFHUz0n JwpUSFJFQURMSUJTPSctbHB0aHJlYWQnClRIUkVBRFNQRUM9Jy1scHRocmVhZCcKVEhSRUFEU1RB UlRGSUxFU1BFQz0nJwpUT09MS0lUPScnClVOWklQPSd1bnppcCcKVVNFX0xJQkdDSl9CQ19GQUxT RT0nJwpVU0VfTElCR0NKX0JDX1RSVUU9JyMnClVTSU5HX0JPRUhNR0NfRkFMU0U9JyMnClVTSU5H X0JPRUhNR0NfVFJVRT0nJwpVU0lOR19EQVJXSU5fQ1JUX0ZBTFNFPScnClVTSU5HX0RBUldJTl9D UlRfVFJVRT0nIycKVVNJTkdfR0NDX0ZBTFNFPScjJwpVU0lOR19HQ0NfVFJVRT0nJwpVU0lOR19O T0dDX0ZBTFNFPScnClVTSU5HX05PR0NfVFJVRT0nIycKVVNJTkdfTk9fVEhSRUFEU19GQUxTRT0n JwpVU0lOR19OT19USFJFQURTX1RSVUU9JyMnClVTSU5HX1BPU0lYX1BMQVRGT1JNX0ZBTFNFPScj JwpVU0lOR19QT1NJWF9QTEFURk9STV9UUlVFPScnClVTSU5HX1BPU0lYX1RIUkVBRFNfRkFMU0U9 JyMnClVTSU5HX1BPU0lYX1RIUkVBRFNfVFJVRT0nJwpVU0lOR19XSU4zMl9QTEFURk9STV9GQUxT RT0nJwpVU0lOR19XSU4zMl9QTEFURk9STV9UUlVFPScjJwpVU0lOR19XSU4zMl9USFJFQURTX0ZB TFNFPScnClVTSU5HX1dJTjMyX1RIUkVBRFNfVFJVRT0nIycKVkVSU0lPTj0ndmVyc2lvbi11bnVz ZWQnClhMSUJfQVdUX0ZBTFNFPScnClhMSUJfQVdUX1RSVUU9JyMnClhNS01GPScnClhfQVdUX0ZB TFNFPScnClhfQVdUX1RSVUU9JyMnClhfQ0ZMQUdTPScnClhfRVhUUkFfTElCUz0nJwpYX0xJQlM9 JycKWF9QUkVfTElCUz0nJwpaSU5DUz0nLUkkKHRvcF9zcmNkaXIpLy4uL3psaWInClpJUD0nbm8n ClpMSUJTPScuLi96bGliL2xpYnpnY2pfY29udmVuaWVuY2UubGEnClpMSUJTUEVDPScnClpMSUJU RVNUU1BFQz0nJwphY19jdF9DQz0nJwphY19jdF9DWFg9JycKYWNfY3RfRFVNUEJJTj0nJwphY19j dF9HQ0o9JycKYW1fX0VYRUVYVF9GQUxTRT0nJwphbV9fRVhFRVhUX1RSVUU9JyMnCmFtX19mYXN0 ZGVwQ0NfRkFMU0U9JyMnCmFtX19mYXN0ZGVwQ0NfVFJVRT0nJwphbV9fZmFzdGRlcENYWF9GQUxT RT0nIycKYW1fX2Zhc3RkZXBDWFhfVFJVRT0nJwphbV9fZmFzdGRlcEdDSl9GQUxTRT0nJwphbV9f ZmFzdGRlcEdDSl9UUlVFPScjJwphbV9faW5jbHVkZT0naW5jbHVkZScKYW1fX2lzcmM9JyAtSSQo c3JjZGlyKScKYW1fX2xlYWRpbmdfZG90PScuJwphbV9fbm9kZXA9J19ubycKYW1fX3F1b3RlPScn CmFtX190YXI9JyQke1RBUi10YXJ9IGNob2YgLSAiJCR0YXJkaXIiJwphbV9fdW50YXI9JyQke1RB Ui10YXJ9IHhmIC0nCmJpbmRpcj0nJHtleGVjX3ByZWZpeH0vYmluJwpidWlsZD0neDg2XzY0LXBj LWxpbnV4LWdudScKYnVpbGRfYWxpYXM9J3g4Nl82NC1wYy1saW51eC1nbnUnCmJ1aWxkX2NwdT0n eDg2XzY0JwpidWlsZF9saWJzdWJkaXI9J2J1aWxkLXg4Nl82NC1wYy1saW51eC1nbnUnCmJ1aWxk X25vbmNhbm9uaWNhbD0neDg2XzY0LXBjLWxpbnV4LWdudScKYnVpbGRfb3M9J2xpbnV4LWdudScK YnVpbGRfc3ViZGlyPSdidWlsZC14ODZfNjQtcGMtbGludXgtZ251JwpidWlsZF92ZW5kb3I9J3Bj JwpkYXRhZGlyPScke2RhdGFyb290ZGlyfScKZGF0YXJvb3RkaXI9JyR7cHJlZml4fS9zaGFyZScK ZGJleGVjZGlyPSckKHRvb2xleGVjbGliZGlyKS9nY2otMTMuMC4wLTE4Jwpkb2NkaXI9JyR7ZGF0 YXJvb3RkaXJ9L2RvYy8ke1BBQ0tBR0VfVEFSTkFNRX0nCmR2aWRpcj0nJHtkb2NkaXJ9JwpleGVj X3ByZWZpeD0nJHtwcmVmaXh9JwpleHRyYV9sZGZsYWdzPScnCmV4dHJhX2xkZmxhZ3NfbGliamF2 YT0nJwpnY2Nfc3VmZml4PScnCmdjanN1YmRpcj0nZ2NqLTEzLjAuMC0xOCcKZ3h4X2luY2x1ZGVf ZGlyPScke3ByZWZpeH0vaW5jbHVkZS8kKGxpYnN0ZGN4eF9pbmNkaXIpJwpoZXJlPScvaG9tZS96 b3BvbGlzNC9nY2pidWlsZC94ODZfNjQtcGMtbGludXgtZ251L2xpYmphdmEnCmhvc3Q9J3g4Nl82 NC1wYy1saW51eC1nbnUnCmhvc3RfYWxpYXM9J3g4Nl82NC1wYy1saW51eC1nbnUnCmhvc3RfY3B1 PSd4ODZfNjQnCmhvc3RfZXhlZXh0PScnCmhvc3Rfb3M9J2xpbnV4LWdudScKaG9zdF9zdWJkaXI9 Jy4nCmhvc3RfdmVuZG9yPSdwYycKaHRtbGRpcj0nJHtkb2NkaXJ9JwppbmNsdWRlZGlyPScke3By ZWZpeH0vaW5jbHVkZScKaW5mb2Rpcj0nJHtkYXRhcm9vdGRpcn0vaW5mbycKaW5zdGFsbF9zaD0n JHtTSEVMTH0gL2hvbWUvem9wb2xpczQvZ2NqL2luc3RhbGwtc2gnCmxpYmRpcj0nJHtleGVjX3By ZWZpeH0vbGliJwpsaWJleGVjZGlyPScke2V4ZWNfcHJlZml4fS9saWJleGVjJwpsaWJzdGRjeHhf aW5jZGlyPSdjKysvJChnY2NfdmVyc2lvbiknCmxvY2FsZWRpcj0nJHtkYXRhcm9vdGRpcn0vbG9j YWxlJwpsb2NhbHN0YXRlZGlyPScke3ByZWZpeH0vdmFyJwpsdF9ob3N0X2ZsYWdzPScnCm1hbmRp cj0nJHtkYXRhcm9vdGRpcn0vbWFuJwpta2Rpcl9wPSckKE1LRElSX1ApJwpta2luc3RhbGxkaXJz PScvaG9tZS96b3BvbGlzNC9nY2ovbWtpbnN0YWxsZGlycycKbXVsdGlfYmFzZWRpcj0nLi4vLi4v Li4vZ2NqL2xpYmphdmEvLi4nCm9sZGluY2x1ZGVkaXI9Jy91c3IvaW5jbHVkZScKcGRmZGlyPSck e2RvY2Rpcn0nCnByZWZpeD0nL3Vzci9sb2NhbCcKcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZT0ncyx5 LHksJwpwc2Rpcj0nJHtkb2NkaXJ9JwpweXRob25fbW9kX2Rpcj0nJHtwcmVmaXh9L3NoYXJlL2dj Yy0xMy4wLjAvcHl0aG9uL2xpYmphdmEnCnB5dGhvbl9tb2RfZGlyX2V4cGFuZGVkPScvdXNyL2xv Y2FsL3NoYXJlL2djYy0xMy4wLjAvcHl0aG9uL2xpYmphdmEnCnJ1bnN0YXRlZGlyPScke2xvY2Fs c3RhdGVkaXJ9L3J1bicKc2JpbmRpcj0nJHtleGVjX3ByZWZpeH0vc2JpbicKc2hhcmVkc3RhdGVk aXI9JyR7cHJlZml4fS9jb20nCnN1YmRpcnM9JyBjbGFzc3BhdGggbGlibHRkbCcKc3lzY29uZmRp cj0nJHtwcmVmaXh9L2V0YycKdGFyZ2V0PSd4ODZfNjQtcGMtbGludXgtZ251Jwp0YXJnZXRfYWxp YXM9J3g4Nl82NC1wYy1saW51eC1nbnUnCnRhcmdldF9jcHU9J3g4Nl82NCcKdGFyZ2V0X25vbmNh bm9uaWNhbD0neDg2XzY0LXBjLWxpbnV4LWdudScKdGFyZ2V0X29zPSdsaW51eC1nbnUnCnRhcmdl dF9zdWJkaXI9J3g4Nl82NC1wYy1saW51eC1nbnUnCnRhcmdldF92ZW5kb3I9J3BjJwp0b29sZXhl Y2Rpcj0nJChsaWJkaXIpL2djYy1saWIvJCh0YXJnZXRfbm9uY2Fub25pY2FsKScKdG9vbGV4ZWNs aWJkaXI9JyQobGliZGlyKS8uLi9saWI2NCcKdG9vbGV4ZWNtYWlubGliZGlyPSckKGxpYmRpcikn CgojIyAtLS0tLS0tLS0tLSAjIwojIyBjb25mZGVmcy5oLiAjIwojIyAtLS0tLS0tLS0tLSAjIwoK LyogY29uZmRlZnMuaCAqLwojZGVmaW5lIFBBQ0tBR0VfTkFNRSAibGliamF2YSIKI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImxpYmphdmEiCiNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICJ2ZXJzaW9u LXVudXNlZCIKI2RlZmluZSBQQUNLQUdFX1NUUklORyAibGliamF2YSB2ZXJzaW9uLXVudXNlZCIK I2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAibGliamF2YSIKI2RlZmluZSBQQUNLQUdFX1VSTCAi IgojZGVmaW5lIFBBQ0tBR0UgImxpYmphdmEiCiNkZWZpbmUgVkVSU0lPTiAidmVyc2lvbi11bnVz ZWQiCiNkZWZpbmUgTFRETF9TSExJQlBBVEhfVkFSICJMRF9MSUJSQVJZX1BBVEgiCiNkZWZpbmUg QVdUX1RPT0xLSVQgIiIKI2RlZmluZSBMSUJHQ0pfUFJFRklYICIvdXNyL2xvY2FsIgojZGVmaW5l IFVTRV9MVERMIDEKI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKI2RlZmluZSBJTlRFUlBSRVRF UiAxCiNkZWZpbmUgVVNFX0xJQkZGSSAxCiNkZWZpbmUgRU5BQkxFX0pWTVBJIDEKI2RlZmluZSBY X0RJU1BMQVlfTUlTU0lORyAxCiNkZWZpbmUgSEFWRV9CT0VITV9HQyAxCiNkZWZpbmUgTElOVVhf VEhSRUFEUyAxCiNkZWZpbmUgSEFWRV9QVEhSRUFEX01VVEVYQVRUUl9JTklUIDEKI2RlZmluZSBf UE9TSVhfUFRIUkVBRF9TRU1BTlRJQ1MgMQojZGVmaW5lIEpWX0hBU0hfU1lOQ0hST05JWkFUSU9O IDEKI2RlZmluZSBIQVZFX19QUk9DX1NFTEZfRVhFIDEKI2RlZmluZSBIQVZFX1BST0NfU0VMRl9F WEUgMQojZGVmaW5lIEhBVkVfX1BST0NfU0VMRl9NQVBTIDEKI2RlZmluZSBIQVZFX1BST0NfU0VM Rl9NQVBTIDEKI2RlZmluZSBUTV9JTl9TWVNfVElNRSAxCiNkZWZpbmUgSEFWRV9ERUNMX1RaTkFN RSAwCiNkZWZpbmUgU0laRU9GX1ZPSURfUCAwCiNkZWZpbmUgV09SRFNfQklHRU5ESUFOIDEKI2Rl ZmluZSBHQ0pWRVJTSU9OICIxMy4wLjAiCiNkZWZpbmUgSlZfVkVSU0lPTiAiMS41LjAiCiNkZWZp bmUgSlZfQVBJX1ZFUlNJT04gIjEuNSIKI2RlZmluZSBzc2l6ZV90IGludAojZGVmaW5lIEhBVkVf R0VUSVBJTkZPIDEKCjogZXhpdCAwCg== --0000000000009ae46a05dea67df2--