Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qGcu4-0006Mi-4N for pgsql-hackers@arkaria.postgresql.org; Tue, 04 Jul 2023 10:05:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1qGcu2-0006MC-2s for pgsql-hackers@arkaria.postgresql.org; Tue, 04 Jul 2023 10:04:58 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qGcu1-0006M3-Je for pgsql-hackers@lists.postgresql.org; Tue, 04 Jul 2023 10:04:57 +0000 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1qGctx-0027q2-AI for pgsql-hackers@lists.postgresql.org; Tue, 04 Jul 2023 10:04:57 +0000 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3142860734aso2830635f8f.1 for ; Tue, 04 Jul 2023 03:04:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1688465092; x=1691057092; h=in-reply-to:references:cc:to:from:content-language:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=2qKILxL+e+uIlCOPwwYJaYRe2vpSRn28owKZApellME=; b=lNifh07N7mG6qJRndWi7a76dNK3yQWoL17q9rA8zPz1fRWwqUyASTm9M4jND4yEyP6 6JH2sYGu4bIGfQLOPxXrKNYrxeMVq2kJlh5h4Pd/xhYhdLPiC3KUXAZJrW2IX30bC7JY gGUq2re64aVKwt6N+lwOfUC125nbwFtc5qn62e4JGo0XQvPIjLl2LyvvRuOkCdwPJXZn OnBhCcQhercj87R5k6+vBs6NjRRE0Xjm7oneYVJPbcFiAlVN310CsKG1JAseRTWRv1kH v+kMZrJ/vzypbwc0wbUdsRrFIMlv95fqjYXGWOWBTw8gMtuJ3f/SQ0Rum/o9qivjgxWq //1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688465092; x=1691057092; h=in-reply-to:references:cc:to:from:content-language:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=2qKILxL+e+uIlCOPwwYJaYRe2vpSRn28owKZApellME=; b=LmVHXc72haV0V1KgTH7e/dPq11A+nxeF1gAHBLNq8uRURkXCyAMR3gtPGGpaTrKZ4B LZ5aacjb1GiOegQ7Uz9KkNoKf289pZlK/gZsQ5bFot2mPgh5YNtNKMbwVCIyhO7U/M7s h3Y/SbTWAWHuHgvTRL/QAGWkVAxuMJLd9vqNM2K8UpgZuU8jgpx+MGc+YVstfCKiShlG bZxmwsJkOecjNg8Q3113fEuT3Nz02KgIy1Yjx+0ABHJ1CmIyVISijzRI+vvUdEClRbn2 udtJd1dRH2v0A6EAeddlBQGW63pJm5oMLGoqQYTzW9tMQc1eskL8Vh7c+Cm2yVY3p4n0 T6dA== X-Gm-Message-State: AC+VfDyi/Zog5trsf6qAmE6Q0hD7SneT0NUOqKqzFy8U5BTwU6bLaGYG 4OK6XJZ8WrN6QpAY78lIu/fTCIo5mONuJw== X-Google-Smtp-Source: ACHHUZ4YYywFtirQG+npZrqybV4u2Bae/VFedTC+XNKYiV5LsGlyMjGROq2g1hsHcHwCge2V+zoCcw== X-Received: by 2002:adf:e892:0:b0:314:1f0:5846 with SMTP id d18-20020adfe892000000b0031401f05846mr15664752wrm.19.1688465091613; Tue, 04 Jul 2023 03:04:51 -0700 (PDT) Received: from ?IPV6:2a01:cb11:55e:1700:e41e:a8d9:34c2:2d97? ([2a01:cb11:55e:1700:e41e:a8d9:34c2:2d97]) by smtp.gmail.com with ESMTPSA id n5-20020adfe345000000b0030e5bd253aasm27912883wrj.39.2023.07.04.03.04.50 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 04 Jul 2023 03:04:51 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------c9TE5p6TbYjLUbFOblLdyNyY" Message-ID: <2b81dcc2-7a3d-10f0-e93d-016002bbc721@gmail.com> Date: Tue, 4 Jul 2023 12:04:50 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: Autogenerate some wait events code and documentation Content-Language: en-US From: "Drouvot, Bertrand" To: Michael Paquier Cc: PostgreSQL Hackers References: <124bdcea-bdc8-e3d2-2357-0c6a857bc557@gmail.com> <106e8d0a-0820-687a-7da5-3143e1f5b05b@gmail.com> <976f4eb1-cbc0-9616-ec26-ebb4a252315c@gmail.com> <69588eaf-02d7-95a8-0da4-3e120de16a59@gmail.com> <0b3cdac7-f078-61a6-76e0-99db7aae78ce@gmail.com> In-Reply-To: <0b3cdac7-f078-61a6-76e0-99db7aae78ce@gmail.com> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------c9TE5p6TbYjLUbFOblLdyNyY Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, On 7/4/23 9:34 AM, Drouvot, Bertrand wrote: > Hi, > > On 7/3/23 9:11 AM, Michael Paquier wrote: >> On Mon, Jul 03, 2023 at 03:57:42PM +0900, Michael Paquier wrote: > > Thanks for looking at it and having fixed the issues that were present in > v10. > >>> I think that we should add some options to the perl script to be more >>> selective with the files generated.  How about having two options >>> called --docs and --code to select one or the other, then limit what >>> gets generated in each path?  I guess that it would be cleaner if we >>> error in the case where both options are defined, and just use some >>> gotos to redirect to each foreach loop to limit extra indentations in >>> the script.  This would avoid the need to remove the C and H files >>> from the docs, additionally, which is what the Makefile in doc/ does. >>> >>> I have fixed all the issues I've found in v11 attached, except for the >>> last one (I have added the OUTDIR trick for reference, but that's >>> incorrect and incomplete).  Could you look at this part? >> >> Ah.  It took me a few extra minutes, but I think that we should set >> "capture" to "false", no?  It looks like meson is getting confused, >> expecting something in stdout but the new script generates a few >> files, and does not output anything.  That's different from the other >> doc-related perl scripts. >> -- > > Yeah, with "capture" set to "false" then ninja alldocs does not error out > and wait_event_types.sgml gets generated. > > I'll look at the extra options --code and --docs. Please find attached v12 that: - sets "capture" to "false" - adds the --code and --docs extra options to generate-wait_event_types.pl - makes sure at least one of those option is provided - makes sure that both options can't be provided simultaneously - update the related Makefile/meson.build files accordingly - fix a bug in generate-wait_event_types.pl (die on rename($stmp...) was not using the right file (it was using ctmp). That was not visible before the docs/code split. Not related to this patch but I noticed that when building with meson some c files are duplicated a the end of the build. Indeed, they also appear in some include directories: ./meson_build/src/include/storage/lwlocknames.c ./meson_build/src/include/utils/pgstat_wait_event.c ./meson_build/src/include/utils/fmgrtab.c ./meson_build/src/include/nodes/queryjumblefuncs.funcs.c ./meson_build/src/include/nodes/readfuncs.switch.c ./meson_build/src/include/nodes/readfuncs.funcs.c ./meson_build/src/include/nodes/copyfuncs.switch.c ./meson_build/src/include/nodes/equalfuncs.funcs.c ./meson_build/src/include/nodes/outfuncs.switch.c ./meson_build/src/include/nodes/queryjumblefuncs.switch.c ./meson_build/src/include/nodes/copyfuncs.funcs.c ./meson_build/src/include/nodes/equalfuncs.switch.c ./meson_build/src/include/nodes/outfuncs.funcs.c Is it expected? If not, I guess it's worth another patch. Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com --------------c9TE5p6TbYjLUbFOblLdyNyY Content-Type: text/plain; charset=UTF-8; name="v12-0001-Generate-automatically-wait-event-related-code-a.patch" Content-Disposition: attachment; filename*0="v12-0001-Generate-automatically-wait-event-related-code-a.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5ZjNkNWVjZTkwMmFkMjYwM2FmZGM1NjgyMDRlNzdlMGMxNjhiYTM5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIFBhcXVpZXIgPG1pY2hhZWxAcGFxdWll ci54eXo+CkRhdGU6IE1vbiwgMyBKdWwgMjAyMyAxNTo1MTo0MCArMDkwMApTdWJqZWN0OiBb UEFUQ0ggdjEyXSBHZW5lcmF0ZSBhdXRvbWF0aWNhbGx5IHdhaXQtZXZlbnQgcmVsYXRlZCBj b2RlIGFuZCBkb2NzCgpQdXJwb3NlIGlzIHRvIGF1dG8tZ2VuZXJhdGUgdGhvc2UgZmlsZXMg YmFzZWQgb24gdGhlIG5ld2x5IGNyZWF0ZWQKd2FpdGV2ZW50bmFtZXMudHh0IGZpbGUuCgpI YXZpbmcgYXV0byBnZW5lcmF0ZWQgZmlsZXMgd291bGQgaGVscCB0byBhdm9pZDoKCi0gd2Fp dCBldmVudCB3aXRob3V0IGRlc2NyaXB0aW9uIGxpa2Ugb2JzZXJ2ZWQgaW4KLSBodHRwczov L3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL0NBJTJCaFVLR0ppeEFIYzg2MEVqOVF6 ZF96OTZaNmFvYWpBZ0oxOGJZZlYzTGZuNnQ5JTNEJTJCUSU0MG1haWwuZ21haWwuY29tCi0g b3JwaGFuZWQgd2FpdCBldmVudCBsaWtlIG9ic2VydmVkIGluCi0gaHR0cHM6Ly93d3cucG9z dGdyZXNxbC5vcmcvbWVzc2FnZS1pZC9DQSUyQmhVS0dLNnRxbTU5S3VGMXolMkJoNVk4ZnNX Y3U1djglMkI4NGtkdVNId1J6d2pCMmFhX0ElNDBtYWlsLmdtYWlsLmNvbQotLS0KIGRvYy9z cmMvc2dtbC8uZ2l0aWdub3JlICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgKwogZG9j L3NyYy9zZ21sL01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQog ZG9jL3NyYy9zZ21sL2ZpbGVsaXN0LnNnbWwgICAgICAgICAgICAgICAgICAgIHwgICAgMSAr CiBkb2Mvc3JjL3NnbWwvbWVzb24uYnVpbGQgICAgICAgICAgICAgICAgICAgICAgfCAgIDEy ICsKIGRvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNnbWwgICAgICAgICAgICAgICAgICB8IDEy NzEgKy0tLS0tLS0tLS0tLS0tLS0KIHNyYy9iYWNrZW5kL01ha2VmaWxlICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMTMgKy0KIHNyYy9iYWNrZW5kL3N0b3JhZ2UvbG1nci9sd2xv Y2tuYW1lcy50eHQgICAgICB8ICAgIDQgKy0KIHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5 Ly5naXRpZ25vcmUgICAgICAgICB8ICAgIDMgKwogc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZp dHkvTWFrZWZpbGUgICAgICAgICAgIHwgICAxMCArCiAuLi4vYWN0aXZpdHkvZ2VuZXJhdGUt d2FpdF9ldmVudF90eXBlcy5wbCAgICAgfCAgMjM5ICsrKysKIHNyYy9iYWNrZW5kL3V0aWxz L2FjdGl2aXR5L21lc29uLmJ1aWxkICAgICAgICB8ICAgMjQgKwogc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvd2FpdF9ldmVudC5jICAgICAgIHwgIDYxMSArLS0tLS0tLQogLi4uL3V0 aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfbmFtZXMudHh0ICAgICAgIHwgIDM3MSArKysrKwog c3JjL2JhY2tlbmQvdXRpbHMvYWR0L2xvY2tmdW5jcy5jICAgICAgICAgICAgIHwgICAgMyAr LQogc3JjL2NvbW1vbi9tZXNvbi5idWlsZCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg NyArLQogc3JjL2luY2x1ZGUvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgMiArLQogc3JjL2luY2x1ZGUvdXRpbHMvLmdpdGlnbm9yZSAgICAgICAgICAgICAgICAg IHwgICAgMSArCiBzcmMvaW5jbHVkZS91dGlscy9tZXNvbi5idWlsZCAgICAgICAgICAgICAg ICAgfCAgIDE4ICsKIHNyYy9pbmNsdWRlL3V0aWxzL3dhaXRfZXZlbnQuaCAgICAgICAgICAg ICAgICB8ICAyMzIgKy0tCiBzcmMvdGVzdC9zc2wvdC8wMDJfc2NyYW0ucGwgICAgICAgICAg ICAgICAgICAgfCAgICAzICstCiBzcmMvdG9vbHMvbXN2Yy9Tb2x1dGlvbi5wbSAgICAgICAg ICAgICAgICAgICAgfCAgIDE5ICsKIHNyYy90b29scy9tc3ZjL2NsZWFuLmJhdCAgICAgICAg ICAgICAgICAgICAgICB8ICAgIDMgKwogMjIgZmlsZXMgY2hhbmdlZCwgNzQxIGluc2VydGlv bnMoKyksIDIxMTEgZGVsZXRpb25zKC0pCiAgNDEuMyUgZG9jL3NyYy9zZ21sLwogIDQ5LjQl IHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5LwogICA2LjYlIHNyYy9pbmNsdWRlL3V0aWxz LwoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC8uZ2l0aWdub3JlIGIvZG9jL3NyYy9zZ21s Ly5naXRpZ25vcmUKaW5kZXggZDhlM2RhYjMzOC4uMWNjYjcyMjI3ZSAxMDA2NDQKLS0tIGEv ZG9jL3NyYy9zZ21sLy5naXRpZ25vcmUKKysrIGIvZG9jL3NyYy9zZ21sLy5naXRpZ25vcmUK QEAgLTE3LDYgKzE3LDcgQEAKIC9lcnJjb2Rlcy10YWJsZS5zZ21sCiAva2V5d29yZHMtdGFi bGUuc2dtbAogL3ZlcnNpb24uc2dtbAorL3dhaXRfZXZlbnRfdHlwZXMuc2dtbAogIyBBc3Nv cnRlZCBieXByb2R1Y3RzIGZyb20gYnVpbGRpbmcgdGhlIGFib3ZlCiAvcG9zdGdyZXMtZnVs bC54bWwKIC9JTlNUQUxMLmh0bWwKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9NYWtlZmls ZSBiL2RvYy9zcmMvc2dtbC9NYWtlZmlsZQppbmRleCA3MWNiZWYyMzBmLi44NmE0MzUxMTJi IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvTWFrZWZpbGUKKysrIGIvZG9jL3NyYy9zZ21s L01ha2VmaWxlCkBAIC01OCw3ICs1OCw3IEBAIG92ZXJyaWRlIFhTTFRQUk9DRkxBR1MgKz0g LS1zdHJpbmdwYXJhbSBwZy52ZXJzaW9uICckKFZFUlNJT04pJwogCiBHRU5FUkFURURfU0dN TCA9IHZlcnNpb24uc2dtbCBcCiAJZmVhdHVyZXMtc3VwcG9ydGVkLnNnbWwgZmVhdHVyZXMt dW5zdXBwb3J0ZWQuc2dtbCBlcnJjb2Rlcy10YWJsZS5zZ21sIFwKLQlrZXl3b3Jkcy10YWJs ZS5zZ21sCisJa2V5d29yZHMtdGFibGUuc2dtbCB3YWl0X2V2ZW50X3R5cGVzLnNnbWwKIAog QUxMU0dNTCA6PSAkKHdpbGRjYXJkICQoc3JjZGlyKS8qLnNnbWwgJChzcmNkaXIpL3JlZi8q LnNnbWwpICQoR0VORVJBVEVEX1NHTUwpCiAKQEAgLTExMSw2ICsxMTEsOCBAQCBlcnJjb2Rl cy10YWJsZS5zZ21sOiAkKHRvcF9zcmNkaXIpL3NyYy9iYWNrZW5kL3V0aWxzL2VycmNvZGVz LnR4dCBnZW5lcmF0ZS1lcnJjbwoga2V5d29yZHMtdGFibGUuc2dtbDogJCh0b3Bfc3JjZGly KS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmggJCh3aWxkY2FyZCAkKHNyY2Rpcikva2V5 d29yZHMvc3FsKi50eHQpIGdlbmVyYXRlLWtleXdvcmRzLXRhYmxlLnBsCiAJJChQRVJMKSAk KHNyY2RpcikvZ2VuZXJhdGUta2V5d29yZHMtdGFibGUucGwgJChzcmNkaXIpID4gJEAKIAor d2FpdF9ldmVudF90eXBlcy5zZ21sOiAkKHRvcF9zcmNkaXIpL3NyYy9iYWNrZW5kL3V0aWxz L2FjdGl2aXR5L3dhaXRfZXZlbnRfbmFtZXMudHh0ICQodG9wX3NyY2Rpcikvc3JjL2JhY2tl bmQvdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdF9ldmVudF90eXBlcy5wbAorCSQoUEVS TCkgJCh0b3Bfc3JjZGlyKS9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9nZW5lcmF0ZS13 YWl0X2V2ZW50X3R5cGVzLnBsIC0tZG9jcyAkPCA+ICRACiAKICMjCiAjIyBHZW5lcmF0aW9u IG9mIHNvbWUgdGV4dCBmaWxlcy4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9maWxlbGlz dC5zZ21sIGIvZG9jL3NyYy9zZ21sL2ZpbGVsaXN0LnNnbWwKaW5kZXggNTQ2NWY5YTQ2ZC4u NjNiMGZjMmE0NiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2ZpbGVsaXN0LnNnbWwKKysr IGIvZG9jL3NyYy9zZ21sL2ZpbGVsaXN0LnNnbWwKQEAgLTQyLDYgKzQyLDcgQEAKIDwhRU5U SVRZIG1haW50ZW5hbmNlICAgU1lTVEVNICJtYWludGVuYW5jZS5zZ21sIj4KIDwhRU5USVRZ IG1hbmFnZS1hZyAgICAgU1lTVEVNICJtYW5hZ2UtYWcuc2dtbCI+CiA8IUVOVElUWSBtb25p dG9yaW5nICAgIFNZU1RFTSAibW9uaXRvcmluZy5zZ21sIj4KKzwhRU5USVRZIHdhaXRfZXZl bnRfdHlwZXMgICAgU1lTVEVNICJ3YWl0X2V2ZW50X3R5cGVzLnNnbWwiPgogPCFFTlRJVFkg cmVncmVzcyAgICAgICBTWVNURU0gInJlZ3Jlc3Muc2dtbCI+CiA8IUVOVElUWSBydW50aW1l ICAgICAgIFNZU1RFTSAicnVudGltZS5zZ21sIj4KIDwhRU5USVRZIGNvbmZpZyAgICAgICAg U1lTVEVNICJjb25maWcuc2dtbCI+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvbWVzb24u YnVpbGQgYi9kb2Mvc3JjL3NnbWwvbWVzb24uYnVpbGQKaW5kZXggYzZkNzdiNWExNS4uMTZj MWFhOTgwYyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL21lc29uLmJ1aWxkCisrKyBiL2Rv Yy9zcmMvc2dtbC9tZXNvbi5idWlsZApAQCAtNDYsNiArNDYsMTggQEAgZG9jX2dlbmVyYXRl ZCArPSBjdXN0b21fdGFyZ2V0KCdlcnJjb2Rlcy10YWJsZS5zZ21sJywKICAgY2FwdHVyZTog dHJ1ZSwKICkKIAorZG9jX2dlbmVyYXRlZCArPSBjdXN0b21fdGFyZ2V0KCd3YWl0X2V2ZW50 X3R5cGVzLnNnbWwnLAorICBpbnB1dDogZmlsZXMoCisgICAgJy4uLy4uLy4uL3NyYy9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfbmFtZXMudHh0JyksCisgIG91dHB1dDog J3dhaXRfZXZlbnRfdHlwZXMuc2dtbCcsCisgIGNvbW1hbmQ6IFtwZXJsLAorICAgIGZpbGVz KCcuLi8uLi8uLi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS9nZW5lcmF0ZS13YWl0X2V2 ZW50X3R5cGVzLnBsJyksCisgICAgJy0tb3V0ZGlyJywgJ0BPVVRESVJAJywgJy0tZG9jcycs ICdASU5QVVRAJ10sCisgIGJ1aWxkX2J5X2RlZmF1bHQ6IGZhbHNlLAorICBpbnN0YWxsOiBm YWxzZSwKKyAgY2FwdHVyZTogZmFsc2UsCispCisKICMgRklYTUU6IHRoaXMgYWN0dWFsbHkg aGFzIGZ1cnRoZXIgaW5wdXRzLCBhZGRpbmcgZGVwZmlsZSBzdXBwb3J0IHRvCiAjIGdlbmVy YXRlLWtleXdvcmRzLXRhYmxlLnBsIGlzIHByb2JhYmx5IHRoZSBiZXN0IHdheSB0byBhZGRy ZXNzIHRoYXQKICMgcm9idXN0bHkuCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvbW9uaXRv cmluZy5zZ21sIGIvZG9jL3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbAppbmRleCA1Y2ZkYzcw YzAzLi41MDZhZWFhODc5IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvbW9uaXRvcmluZy5z Z21sCisrKyBiL2RvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNnbWwKQEAgLTExMDAsMTI2NiAr MTEwMCw3IEBAIHBvc3RncmVzICAgMjcwOTMgIDAuMCAgMC4wICAzMDA5NiAgMjc1MiA/ICAg ICAgICBTcyAgIDExOjM0ICAgMDowMCBwb3N0Z3Jlczogc2VyCiAgICA8L3Rncm91cD4KICAg PC90YWJsZT4KIAotICA8dGFibGUgaWQ9IndhaXQtZXZlbnQtYWN0aXZpdHktdGFibGUiPgot ICAgPHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUgPGxpdGVyYWw+QWN0aXZpdHk8L2xpdGVy YWw+PC90aXRsZT4KLSAgIDx0Z3JvdXAgY29scz0iMiI+Ci0gICAgPHRoZWFkPgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkFjdGl2aXR5PC9saXRlcmFsPiBXYWl0IEV2 ZW50PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5EZXNjcmlwdGlvbjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgIDwvdGhlYWQ+Ci0KLSAgICA8dGJvZHk+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+QXJjaGl2ZXJNYWluPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2YgYXJjaGl2ZXIgcHJvY2Vzcy48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5BdXRv VmFjdXVtTWFpbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4g bWFpbiBsb29wIG9mIGF1dG92YWN1dW0gbGF1bmNoZXIgcHJvY2Vzcy48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CZ1dyaXRlckhp YmVybmF0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gYmFj a2dyb3VuZCB3cml0ZXIgcHJvY2VzcywgaGliZXJuYXRpbmcuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QmdXcml0ZXJNYWluPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2Yg YmFja2dyb3VuZCB3cml0ZXIgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5DaGVja3BvaW50ZXJNYWluPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2YgY2hlY2tw b2ludGVyIHByb2Nlc3MuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+TG9naWNhbEFwcGx5TWFpbjwvbGl0ZXJhbD48L2VudHJ5Pgot ICAgICAgPGVudHJ5PldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIGxvZ2ljYWwgcmVwbGljYXRp b24gYXBwbHkgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5Mb2dpY2FsTGF1bmNoZXJNYWluPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2YgbG9naWNhbCByZXBs aWNhdGlvbiBsYXVuY2hlciBwcm9jZXNzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2ljYWxQYXJhbGxlbEFwcGx5TWFpbjwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gbWFpbiBsb29wIG9m IGxvZ2ljYWwgcmVwbGljYXRpb24gcGFyYWxsZWwgYXBwbHkKLSAgICAgICBwcm9jZXNzLjwv ZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFs PlJlY292ZXJ5V2FsU3RyZWFtPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2Fp dGluZyBpbiBtYWluIGxvb3Agb2Ygc3RhcnR1cCBwcm9jZXNzIGZvciBXQUwgdG8gYXJyaXZl LCBkdXJpbmcKLSAgICAgICBzdHJlYW1pbmcgcmVjb3ZlcnkuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U3lzTG9nZ2VyTWFpbjwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gbWFpbiBsb29wIG9m IHN5c2xvZ2dlciBwcm9jZXNzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPldhbFJlY2VpdmVyTWFpbjwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIFdBTCByZWNlaXZlciBw cm9jZXNzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPldhbFNlbmRlck1haW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRy eT5XYWl0aW5nIGluIG1haW4gbG9vcCBvZiBXQUwgc2VuZGVyIHByb2Nlc3MuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V2FsV3Jp dGVyTWFpbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gbWFp biBsb29wIG9mIFdBTCB3cml0ZXIgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICA8L3Rib2R5PgotICAgPC90Z3JvdXA+Ci0gIDwvdGFibGU+Ci0KLSAgPHRhYmxlIGlkPSJ3 YWl0LWV2ZW50LWJ1ZmZlcnBpbi10YWJsZSI+Ci0gICA8dGl0bGU+V2FpdCBFdmVudHMgb2Yg VHlwZSA8bGl0ZXJhbD5CdWZmZXJQaW48L2xpdGVyYWw+PC90aXRsZT4KLSAgIDx0Z3JvdXAg Y29scz0iMiI+Ci0gICAgPHRoZWFkPgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPkJ1ZmZlclBpbjwvbGl0ZXJhbD4gV2FpdCBFdmVudDwvZW50cnk+Ci0gICAgICA8ZW50 cnk+RGVzY3JpcHRpb248L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICA8L3RoZWFkPgotCi0g ICAgPHRib2R5PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkJ1ZmZlclBp bjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNxdWlyZSBh biBleGNsdXNpdmUgcGluIG9uIGEgYnVmZmVyLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg IDwvdGJvZHk+Ci0gICA8L3Rncm91cD4KLSAgPC90YWJsZT4KLQotICA8dGFibGUgaWQ9Indh aXQtZXZlbnQtY2xpZW50LXRhYmxlIj4KLSAgIDx0aXRsZT5XYWl0IEV2ZW50cyBvZiBUeXBl IDxsaXRlcmFsPkNsaWVudDwvbGl0ZXJhbD48L3RpdGxlPgotICAgPHRncm91cCBjb2xzPSIy Ij4KLSAgICA8dGhlYWQ+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+Q2xp ZW50PC9saXRlcmFsPiBXYWl0IEV2ZW50PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5EZXNjcmlw dGlvbjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgIDwvdGhlYWQ+Ci0KLSAgICA8dGJvZHk+ Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+Q2xpZW50UmVhZDwvbGl0ZXJh bD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gcmVhZCBkYXRhIGZyb20gdGhl IGNsaWVudC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRy eT48bGl0ZXJhbD5DbGllbnRXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgdG8gd3JpdGUgZGF0YSB0byB0aGUgY2xpZW50LjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkdTU09wZW5TZXJ2ZXI8 L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHJlYWQgZGF0YSBm cm9tIHRoZSBjbGllbnQgd2hpbGUgZXN0YWJsaXNoaW5nIGEgR1NTQVBJCi0gICAgICAgc2Vz c2lvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5MaWJQUVdhbFJlY2VpdmVyQ29ubmVjdDwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgaW4gV0FMIHJlY2VpdmVyIHRvIGVzdGFibGlzaCBjb25uZWN0 aW9uIHRvIHJlbW90ZQotICAgICAgIHNlcnZlci48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5MaWJQUVdhbFJlY2VpdmVyUmVjZWl2 ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gV0FMIHJlY2Vp dmVyIHRvIHJlY2VpdmUgZGF0YSBmcm9tIHJlbW90ZSBzZXJ2ZXIuPC9lbnRyeT4KLSAgICAg PC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U1NMT3BlblNlcnZl cjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIFNTTCB3aGls ZSBhdHRlbXB0aW5nIGNvbm5lY3Rpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V2FsU2VuZGVyV2FpdEZvcldBTDwvbGl0ZXJh bD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIFdBTCB0byBiZSBmbHVzaGVk IGluIFdBTCBzZW5kZXIgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XYWxTZW5kZXJXcml0ZURhdGE8L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhbnkgYWN0aXZpdHkgd2hlbiBw cm9jZXNzaW5nIHJlcGxpZXMgZnJvbSBXQUwKLSAgICAgICByZWNlaXZlciBpbiBXQUwgc2Vu ZGVyIHByb2Nlc3MuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90Ym9keT4KLSAgIDwv dGdyb3VwPgotICA8L3RhYmxlPgotCi0gIDx0YWJsZSBpZD0id2FpdC1ldmVudC1leHRlbnNp b24tdGFibGUiPgotICAgPHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUgPGxpdGVyYWw+RXh0 ZW5zaW9uPC9saXRlcmFsPjwvdGl0bGU+Ci0gICA8dGdyb3VwIGNvbHM9IjIiPgotICAgIDx0 aGVhZD4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5FeHRlbnNpb248L2xp dGVyYWw+IFdhaXQgRXZlbnQ8L2VudHJ5PgotICAgICAgPGVudHJ5PkRlc2NyaXB0aW9uPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90aGVhZD4KLQotICAgIDx0Ym9keT4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5FeHRlbnNpb248L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGluIGFuIGV4dGVuc2lvbi48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICA8L3Rib2R5PgotICAgPC90Z3JvdXA+Ci0gIDwvdGFibGU+Ci0KLSAg PHRhYmxlIGlkPSJ3YWl0LWV2ZW50LWlvLXRhYmxlIj4KLSAgIDx0aXRsZT5XYWl0IEV2ZW50 cyBvZiBUeXBlIDxsaXRlcmFsPklPPC9saXRlcmFsPjwvdGl0bGU+Ci0gICA8dGdyb3VwIGNv bHM9IjIiPgotICAgIDx0aGVhZD4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5JTzwvbGl0ZXJhbD4gV2FpdCBFdmVudDwvZW50cnk+Ci0gICAgICA8ZW50cnk+RGVzY3Jp cHRpb248L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICA8L3RoZWFkPgotCi0gICAgPHRib2R5 PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkJhc2VCYWNrdXBSZWFkPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYmFzZSBiYWNrdXAg dG8gcmVhZCBmcm9tIGEgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CYXNlQmFja3VwU3luYzwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGRhdGEgd3JpdHRlbiBieSBhIGJhc2UgYmFj a3VwIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CYXNlQmFja3VwV3JpdGU8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBiYXNlIGJhY2t1cCB0byB3 cml0ZSB0byBhIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+QnVmRmlsZVJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIGZvciBhIHJlYWQgZnJvbSBhIGJ1ZmZlcmVkIGZpbGUuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QnVm RmlsZVRydW5jYXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBm b3IgYSBidWZmZXJlZCBmaWxlIHRvIGJlIHRydW5jYXRlZC48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CdWZGaWxlV3JpdGU8L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIHRvIGEg YnVmZmVyZWQgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5Db250cm9sRmlsZVJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAg ICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJlYWQgZnJvbSB0aGUgPGZpbGVuYW1lPnBnX2Nv bnRyb2w8L2ZpbGVuYW1lPgotICAgICAgIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+Q29udHJvbEZpbGVTeW5jPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgdGhlIDxmaWxlbmFtZT5w Z19jb250cm9sPC9maWxlbmFtZT4gZmlsZSB0byByZWFjaAotICAgICAgIGR1cmFibGUgc3Rv cmFnZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5Db250cm9sRmlsZVN5bmNVcGRhdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIGZvciBhbiB1cGRhdGUgdG8gdGhlIDxmaWxlbmFtZT5wZ19jb250 cm9sPC9maWxlbmFtZT4gZmlsZQotICAgICAgIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5Db250cm9sRmlsZVdyaXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2Fp dGluZyBmb3IgYSB3cml0ZSB0byB0aGUgPGZpbGVuYW1lPnBnX2NvbnRyb2w8L2ZpbGVuYW1l PgotICAgICAgIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+Q29udHJvbEZpbGVXcml0ZVVwZGF0ZTwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gdXBkYXRlIHRoZSA8 ZmlsZW5hbWU+cGdfY29udHJvbDwvZmlsZW5hbWU+Ci0gICAgICAgZmlsZS48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Db3B5Rmls ZVJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJl YWQgZHVyaW5nIGEgZmlsZSBjb3B5IG9wZXJhdGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Db3B5RmlsZVdyaXRlPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0ZSBkdXJpbmcg YSBmaWxlIGNvcHkgb3BlcmF0aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRTTUFsbG9jYXRlPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBkeW5hbWljIHNoYXJlZCBtZW1vcnkgc2Vn bWVudCB0byBiZQotICAgICAgIGFsbG9jYXRlZC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5EU01GaWxsWmVyb1dyaXRlPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBmaWxsIGEgZHluYW1pYyBz aGFyZWQgbWVtb3J5IGJhY2tpbmcgZmlsZSB3aXRoCi0gICAgICAgemVyb2VzLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRhdGFG aWxlRXh0ZW5kPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Ig YSByZWxhdGlvbiBkYXRhIGZpbGUgdG8gYmUgZXh0ZW5kZWQuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVGbHVzaDwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVsYXRpb24g ZGF0YSBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5EYXRhRmlsZUltbWVkaWF0 ZVN5bmM8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhbiBp bW1lZGlhdGUgc3luY2hyb25pemF0aW9uIG9mIGEgcmVsYXRpb24gZGF0YSBmaWxlIHRvCi0g ICAgICAgZHVyYWJsZSBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRhdGFGaWxlUHJlZmV0Y2g8L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhbiBhc3luY2hyb25vdXMgcHJlZmV0 Y2ggZnJvbSBhIHJlbGF0aW9uIGRhdGEKLSAgICAgICBmaWxlLjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRhdGFGaWxlUmVhZDwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBmcm9t IGEgcmVsYXRpb24gZGF0YSBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRhdGFGaWxlU3luYzwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGNoYW5nZXMgdG8gYSByZWxhdGlvbiBkYXRh IGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93Pgot ICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRhdGFGaWxlVHJ1bmNhdGU8L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJlbGF0aW9uIGRh dGEgZmlsZSB0byBiZSB0cnVuY2F0ZWQuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVXcml0ZTwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gYSByZWxhdGlvbiBk YXRhIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+TG9ja0ZpbGVBZGRUb0RhdGFEaXJSZWFkPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIHdoaWxlIGFkZGluZyBhIGxpbmUg dG8gdGhlIGRhdGEgZGlyZWN0b3J5IGxvY2sKLSAgICAgICBmaWxlLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvY2tGaWxlQWRk VG9EYXRhRGlyU3luYzwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIGRhdGEgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlIHdoaWxlIGFkZGluZyBhIGxpbmUg dG8gdGhlCi0gICAgICAgZGF0YSBkaXJlY3RvcnkgbG9jayBmaWxlLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvY2tGaWxlQWRk VG9EYXRhRGlyV3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IGZvciBhIHdyaXRlIHdoaWxlIGFkZGluZyBhIGxpbmUgdG8gdGhlIGRhdGEgZGlyZWN0b3J5 Ci0gICAgICAgbG9jayBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvY2tGaWxlQ3JlYXRlUmVhZDwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gcmVhZCB3aGlsZSBjcmVhdGluZyB0aGUg ZGF0YSBkaXJlY3RvcnkgbG9jawotICAgICAgIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+ Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9ja0ZpbGVDcmVhdGVTeW5j PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgZGF0YSB0byBy ZWFjaCBkdXJhYmxlIHN0b3JhZ2Ugd2hpbGUgY3JlYXRpbmcgdGhlIGRhdGEKLSAgICAgICBk aXJlY3RvcnkgbG9jayBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvY2tGaWxlQ3JlYXRlV3JpdGU8L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIHdoaWxlIGNyZWF0aW5n IHRoZSBkYXRhIGRpcmVjdG9yeSBsb2NrCi0gICAgICAgZmlsZS48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Mb2NrRmlsZVJlQ2hl Y2tEYXRhRGlyUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIGEgcmVhZCBkdXJpbmcgcmVjaGVjayBvZiB0aGUgZGF0YSBkaXJlY3RvcnkgbG9jawot ICAgICAgIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+TG9naWNhbFJld3JpdGVDaGVja3BvaW50U3luYzwvbGl0ZXJhbD48 L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGxvZ2ljYWwgcmV3cml0ZSBtYXBw aW5ncyB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UKLSAgICAgICBkdXJpbmcgYSBjaGVja3Bv aW50LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkxvZ2ljYWxSZXdyaXRlTWFwcGluZ1N5bmM8L2xpdGVyYWw+PC9lbnRyeT4KLSAg ICAgIDxlbnRyeT5XYWl0aW5nIGZvciBtYXBwaW5nIGRhdGEgdG8gcmVhY2ggZHVyYWJsZSBz dG9yYWdlIGR1cmluZyBhIGxvZ2ljYWwKLSAgICAgICByZXdyaXRlLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2ljYWxSZXdy aXRlTWFwcGluZ1dyaXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyBmb3IgYSB3cml0ZSBvZiBtYXBwaW5nIGRhdGEgZHVyaW5nIGEgbG9naWNhbAotICAgICAg IHJld3JpdGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+TG9naWNhbFJld3JpdGVTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAg ICA8ZW50cnk+V2FpdGluZyBmb3IgbG9naWNhbCByZXdyaXRlIG1hcHBpbmdzIHRvIHJlYWNo IGR1cmFibGUKLSAgICAgICBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2ljYWxSZXdyaXRlVHJ1bmNhdGU8L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciB0cnVuY2F0ZSBvZiBt YXBwaW5nIGRhdGEgZHVyaW5nIGEgbG9naWNhbAotICAgICAgIHJld3JpdGUuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9naWNh bFJld3JpdGVXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIGEgd3JpdGUgb2YgbG9naWNhbCByZXdyaXRlIG1hcHBpbmdzLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlbGF0aW9uTWFw UmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVh ZCBvZiB0aGUgcmVsYXRpb24gbWFwIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAg IDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UmVsYXRpb25NYXBSZXBsYWNlPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgZHVyYWJsZSByZXBsYWNl bWVudCBvZiBhIHJlbGF0aW9uIG1hcCBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlbGF0aW9uTWFwV3JpdGU8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIHRvIHRoZSBy ZWxhdGlvbiBtYXAgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5SZW9yZGVyQnVmZmVyUmVhZDwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBkdXJpbmcgcmVvcmRlciBidWZm ZXIgbWFuYWdlbWVudC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5SZW9yZGVyQnVmZmVyV3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIGR1cmluZyByZW9yZGVyIGJ1ZmZl ciBtYW5hZ2VtZW50LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAg PGVudHJ5PjxsaXRlcmFsPlJlb3JkZXJMb2dpY2FsTWFwcGluZ1JlYWQ8L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJlYWQgb2YgYSBsb2dpY2FsIG1h cHBpbmcgZHVyaW5nIHJlb3JkZXIgYnVmZmVyCi0gICAgICAgbWFuYWdlbWVudC48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZXBs aWNhdGlvblNsb3RSZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyBmb3IgYSByZWFkIGZyb20gYSByZXBsaWNhdGlvbiBzbG90IGNvbnRyb2wgZmlsZS48L2Vu dHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5S ZXBsaWNhdGlvblNsb3RSZXN0b3JlU3luYzwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVu dHJ5PldhaXRpbmcgZm9yIGEgcmVwbGljYXRpb24gc2xvdCBjb250cm9sIGZpbGUgdG8gcmVh Y2ggZHVyYWJsZSBzdG9yYWdlCi0gICAgICAgd2hpbGUgcmVzdG9yaW5nIGl0IHRvIG1lbW9y eS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5SZXBsaWNhdGlvblNsb3RTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50 cnk+V2FpdGluZyBmb3IgYSByZXBsaWNhdGlvbiBzbG90IGNvbnRyb2wgZmlsZSB0byByZWFj aCBkdXJhYmxlCi0gICAgICAgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZXBsaWNhdGlvblNsb3RXcml0ZTwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gYSBy ZXBsaWNhdGlvbiBzbG90IGNvbnRyb2wgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TTFJVRmx1c2hTeW5jPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgU0xSVSBkYXRhIHRvIHJlYWNo IGR1cmFibGUgc3RvcmFnZSBkdXJpbmcgYSBjaGVja3BvaW50Ci0gICAgICAgb3IgZGF0YWJh c2Ugc2h1dGRvd24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+U0xSVVJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRy eT5XYWl0aW5nIGZvciBhIHJlYWQgb2YgYW4gU0xSVSBwYWdlLjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlNMUlVTeW5jPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgU0xSVSBkYXRhIHRvIHJl YWNoIGR1cmFibGUgc3RvcmFnZSBmb2xsb3dpbmcgYSBwYWdlCi0gICAgICAgd3JpdGUuPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+ U0xSVVdyaXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Ig YSB3cml0ZSBvZiBhbiBTTFJVIHBhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U25hcGJ1aWxkUmVhZDwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBvZiBhIHNlcmlhbGl6ZWQg aGlzdG9yaWNhbCBjYXRhbG9nCi0gICAgICAgc25hcHNob3QuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U25hcGJ1aWxkU3luYzwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgc2VyaWFsaXpl ZCBoaXN0b3JpY2FsIGNhdGFsb2cgc25hcHNob3QgdG8gcmVhY2gKLSAgICAgICBkdXJhYmxl IHN0b3JhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+U25hcGJ1aWxkV3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIG9mIGEgc2VyaWFsaXplZCBoaXN0b3JpY2FsIGNh dGFsb2cKLSAgICAgICBzbmFwc2hvdC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5UaW1lbGluZUhpc3RvcnlGaWxlU3luYzwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgdGltZWxpbmUgaGlz dG9yeSBmaWxlIHJlY2VpdmVkIHZpYSBzdHJlYW1pbmcKLSAgICAgICByZXBsaWNhdGlvbiB0 byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+VGltZWxpbmVIaXN0b3J5RmlsZVdyaXRlPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0ZSBvZiBh IHRpbWVsaW5lIGhpc3RvcnkgZmlsZSByZWNlaXZlZCB2aWEKLSAgICAgICBzdHJlYW1pbmcg cmVwbGljYXRpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+VGltZWxpbmVIaXN0b3J5UmVhZDwvbGl0ZXJhbD48L2VudHJ5Pgot ICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBvZiBhIHRpbWVsaW5lIGhpc3Rvcnkg ZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5UaW1lbGluZUhpc3RvcnlTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgYSBuZXdseSBjcmVhdGVkIHRpbWVsaW5lIGhpc3RvcnkgZmls ZSB0byByZWFjaCBkdXJhYmxlCi0gICAgICAgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5UaW1lbGluZUhpc3RvcnlX cml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3Jp dGUgb2YgYSBuZXdseSBjcmVhdGVkIHRpbWVsaW5lIGhpc3RvcnkKLSAgICAgICBmaWxlLjwv ZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFs PlR3b3BoYXNlRmlsZVJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBhIHJlYWQgb2YgYSB0d28gcGhhc2Ugc3RhdGUgZmlsZS48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Ud29waGFzZUZp bGVTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB0 d28gcGhhc2Ugc3RhdGUgZmlsZSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+VHdvcGhh c2VGaWxlV3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZv ciBhIHdyaXRlIG9mIGEgdHdvIHBoYXNlIHN0YXRlIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+VmVyc2lvbkZpbGVXcml0 ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHRoZSB2ZXJz aW9uIGZpbGUgdG8gYmUgd3JpdHRlbiB3aGlsZSBjcmVhdGluZyBhIGRhdGFiYXNlLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldB TEJvb3RzdHJhcFN5bmM8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IGZvciBXQUwgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlIGR1cmluZwotICAgICAgIGJvb3Rz dHJhcHBpbmcuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+V0FMQm9vdHN0cmFwV3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIG9mIGEgV0FMIHBhZ2UgZHVyaW5nIGJvb3Rz dHJhcHBpbmcuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+V0FMQ29weVJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRy eT5XYWl0aW5nIGZvciBhIHJlYWQgd2hlbiBjcmVhdGluZyBhIG5ldyBXQUwgc2VnbWVudCBi eSBjb3B5aW5nIGFuCi0gICAgICAgZXhpc3Rpbmcgb25lLjwvZW50cnk+Ci0gICAgIDwvcm93 PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldBTENvcHlTeW5jPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBuZXcgV0FMIHNlZ21l bnQgY3JlYXRlZCBieSBjb3B5aW5nIGFuIGV4aXN0aW5nIG9uZSB0bwotICAgICAgIHJlYWNo IGR1cmFibGUgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5XQUxDb3B5V3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAg ICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIHdoZW4gY3JlYXRpbmcgYSBuZXcgV0FM IHNlZ21lbnQgYnkgY29weWluZyBhbgotICAgICAgIGV4aXN0aW5nIG9uZS48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XQUxJbml0 U3luYzwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgbmV3 bHkgaW5pdGlhbGl6ZWQgV0FMIGZpbGUgdG8gcmVhY2ggZHVyYWJsZQotICAgICAgIHN0b3Jh Z2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxp dGVyYWw+V0FMSW5pdFdyaXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2Fp dGluZyBmb3IgYSB3cml0ZSB3aGlsZSBpbml0aWFsaXppbmcgYSBuZXcgV0FMIGZpbGUuPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+ V0FMUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEg cmVhZCBmcm9tIGEgV0FMIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+ Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V0FMU2VuZGVyVGltZWxpbmVIaXN0b3J5UmVhZDwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBmcm9t IGEgdGltZWxpbmUgaGlzdG9yeSBmaWxlIGR1cmluZyBhIHdhbHNlbmRlcgotICAgICAgIHRp bWVsaW5lIGNvbW1hbmQuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+V0FMU3luYzwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVu dHJ5PldhaXRpbmcgZm9yIGEgV0FMIGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLjwv ZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFs PldBTFN5bmNNZXRob2RBc3NpZ248L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIGZvciBkYXRhIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZSB3aGlsZSBhc3NpZ25p bmcgYSBuZXcKLSAgICAgICBXQUwgc3luYyBtZXRob2QuPC9lbnRyeT4KLSAgICAgPC9yb3c+ Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V0FMV3JpdGU8L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIHRvIGEgV0FMIGZp bGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90Ym9keT4KLSAgIDwvdGdyb3VwPgot ICA8L3RhYmxlPgotCi0gIDx0YWJsZSBpZD0id2FpdC1ldmVudC1pcGMtdGFibGUiPgotICAg PHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUgPGxpdGVyYWw+SVBDPC9saXRlcmFsPjwvdGl0 bGU+Ci0gICA8dGdyb3VwIGNvbHM9IjIiPgotICAgIDx0aGVhZD4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5JUEM8L2xpdGVyYWw+IFdhaXQgRXZlbnQ8L2VudHJ5Pgot ICAgICAgPGVudHJ5PkRlc2NyaXB0aW9uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90 aGVhZD4KLQotICAgIDx0Ym9keT4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5BcHBlbmRSZWFkeTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIHN1YnBsYW4gbm9kZXMgb2YgYW4gPGxpdGVyYWw+QXBwZW5kPC9saXRlcmFsPiBwbGFu Ci0gICAgICAgbm9kZSB0byBiZSByZWFkeS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5BcmNoaXZlQ2xlYW51cENvbW1hbmQ8L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciA8eHJlZiBsaW5rZW5k PSJndWMtYXJjaGl2ZS1jbGVhbnVwLWNvbW1hbmQiLz4gdG8KLSAgICAgICBjb21wbGV0ZS48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5BcmNoaXZlQ29tbWFuZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgZm9yIDx4cmVmIGxpbmtlbmQ9Imd1Yy1hcmNoaXZlLWNvbW1hbmQiLz4gdG8KLSAgICAg ICBjb21wbGV0ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5CYWNrZW5kVGVybWluYXRpb248L2xpdGVyYWw+PC9lbnRyeT4KLSAg ICAgIDxlbnRyeT5XYWl0aW5nIGZvciB0aGUgdGVybWluYXRpb24gb2YgYW5vdGhlciBiYWNr ZW5kLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkJhY2t1cFdhaXRXYWxBcmNoaXZlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgV0FMIGZpbGVzIHJlcXVpcmVkIGZvciBhIGJhY2t1cCB0byBi ZSBzdWNjZXNzZnVsbHkKLSAgICAgICBhcmNoaXZlZC48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CZ1dvcmtlclNodXRkb3duPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYmFja2dyb3VuZCB3 b3JrZXIgdG8gc2h1dCBkb3duLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPkJnV29ya2VyU3RhcnR1cDwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGJhY2tncm91bmQgd29ya2VyIHRvIHN0YXJ0 IHVwLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkJ0cmVlUGFnZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgZm9yIHRoZSBwYWdlIG51bWJlciBuZWVkZWQgdG8gY29udGludWUgYSBwYXJhbGxlbCBC LXRyZWUKLSAgICAgICBzY2FuIHRvIGJlY29tZSBhdmFpbGFibGUuPC9lbnRyeT4KLSAgICAg PC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QnVmZmVySU88L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBidWZmZXIgSS9PIHRv IGNvbXBsZXRlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPkNoZWNrcG9pbnREb25lPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgYSBjaGVja3BvaW50IHRvIGNvbXBsZXRlLjwvZW50cnk+Ci0g ICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNoZWNrcG9p bnRTdGFydDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEg Y2hlY2twb2ludCB0byBzdGFydC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5FeGVjdXRlR2F0aGVyPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYWN0aXZpdHkgZnJvbSBhIGNoaWxkIHByb2Nl c3Mgd2hpbGUKLSAgICAgICBleGVjdXRpbmcgYSA8bGl0ZXJhbD5HYXRoZXI8L2xpdGVyYWw+ IHBsYW4gbm9kZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5IYXNoQmF0Y2hBbGxvY2F0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgZm9yIGFuIGVsZWN0ZWQgUGFyYWxsZWwgSGFzaCBwYXJ0aWNp cGFudCB0byBhbGxvY2F0ZSBhIGhhc2gKLSAgICAgICB0YWJsZS48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNoQmF0Y2hFbGVj dDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gZWxlY3QgYSBQ YXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGFsbG9jYXRlIGEgaGFzaAotICAgICAgIHRh YmxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkhhc2hCYXRjaExvYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIGZvciBvdGhlciBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50cyB0byBmaW5pc2gg bG9hZGluZyBhCi0gICAgICAgaGFzaCB0YWJsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNoQnVpbGRBbGxvY2F0ZTwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGFuIGVsZWN0ZWQgUGFy YWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0byBhbGxvY2F0ZSB0aGUKLSAgICAgICBpbml0aWFs IGhhc2ggdGFibGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+SGFzaEJ1aWxkRWxlY3Q8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIHRvIGVsZWN0IGEgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0 byBhbGxvY2F0ZSB0aGUKLSAgICAgICBpbml0aWFsIGhhc2ggdGFibGUuPC9lbnRyeT4KLSAg ICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+SGFzaEJ1aWxk SGFzaElubmVyPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Ig b3RoZXIgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoIGhhc2hpbmcgdGhl Ci0gICAgICAgaW5uZXIgcmVsYXRpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+SGFzaEJ1aWxkSGFzaE91dGVyPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Igb3RoZXIgUGFyYWxsZWwgSGFz aCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoIHBhcnRpdGlvbmluZwotICAgICAgIHRoZSBvdXRl ciByZWxhdGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5IYXNoR3Jvd0JhdGNoZXNEZWNpZGU8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGVsZWN0IGEgUGFyYWxsZWwgSGFzaCBwYXJ0aWNp cGFudCB0byBkZWNpZGUgb24gZnV0dXJlCi0gICAgICAgYmF0Y2ggZ3Jvd3RoLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkhhc2hH cm93QmF0Y2hlc0VsZWN0PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnQgdG8gYWxsb2NhdGUgbW9y ZQotICAgICAgIGJhdGNoZXMuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0g ICAgICA8ZW50cnk+PGxpdGVyYWw+SGFzaEdyb3dCYXRjaGVzRmluaXNoPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYW4gZWxlY3RlZCBQYXJhbGxlbCBI YXNoIHBhcnRpY2lwYW50IHRvIGRlY2lkZSBvbgotICAgICAgIGZ1dHVyZSBiYXRjaCBncm93 dGguPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxp dGVyYWw+SGFzaEdyb3dCYXRjaGVzUmVhbGxvY2F0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgZm9yIGFuIGVsZWN0ZWQgUGFyYWxsZWwgSGFzaCBwYXJ0aWNp cGFudCB0byBhbGxvY2F0ZSBtb3JlCi0gICAgICAgYmF0Y2hlcy48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNoR3Jvd0JhdGNo ZXNSZXBhcnRpdGlvbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIG90aGVyIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnRzIHRvIGZpbmlzaAotICAgICAg IHJlcGFydGl0aW9uaW5nLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAg ICAgPGVudHJ5PjxsaXRlcmFsPkhhc2hHcm93QnVja2V0c0VsZWN0PC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhhc2ggcGFy dGljaXBhbnQgdG8gYWxsb2NhdGUgbW9yZQotICAgICAgIGJ1Y2tldHMuPC9lbnRyeT4KLSAg ICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+SGFzaEdyb3dC dWNrZXRzUmVhbGxvY2F0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgZm9yIGFuIGVsZWN0ZWQgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0byBmaW5pc2gK LSAgICAgICBhbGxvY2F0aW5nIG1vcmUgYnVja2V0cy48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNoR3Jvd0J1Y2tldHNSZWlu c2VydDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIG90aGVy IFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnRzIHRvIGZpbmlzaCBpbnNlcnRpbmcKLSAgICAg ICB0dXBsZXMgaW50byBuZXcgYnVja2V0cy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Mb2dpY2FsQXBwbHlTZW5kRGF0YTwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgbG9naWNhbCByZXBs aWNhdGlvbiBsZWFkZXIgYXBwbHkgcHJvY2VzcyB0byBzZW5kCi0gICAgICAgZGF0YSB0byBh IHBhcmFsbGVsIGFwcGx5IHByb2Nlc3MuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9naWNhbFBhcmFsbGVsQXBwbHlTdGF0ZUNo YW5nZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgbG9n aWNhbCByZXBsaWNhdGlvbiBwYXJhbGxlbCBhcHBseSBwcm9jZXNzIHRvIGNoYW5nZQotICAg ICAgIHN0YXRlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPkxvZ2ljYWxTeW5jRGF0YTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAg PGVudHJ5PldhaXRpbmcgZm9yIGEgbG9naWNhbCByZXBsaWNhdGlvbiByZW1vdGUgc2VydmVy IHRvIHNlbmQgZGF0YSBmb3IKLSAgICAgICBpbml0aWFsIHRhYmxlIHN5bmNocm9uaXphdGlv bi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5Mb2dpY2FsU3luY1N0YXRlQ2hhbmdlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgYSBsb2dpY2FsIHJlcGxpY2F0aW9uIHJlbW90ZSBzZXJ2ZXIg dG8gY2hhbmdlCi0gICAgICAgc3RhdGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TWVzc2FnZVF1ZXVlSW50ZXJuYWw8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhbm90aGVyIHByb2Nlc3Mg dG8gYmUgYXR0YWNoZWQgdG8gYSBzaGFyZWQgbWVzc2FnZQotICAgICAgIHF1ZXVlLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk1l c3NhZ2VRdWV1ZVB1dE1lc3NhZ2U8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIHRvIHdyaXRlIGEgcHJvdG9jb2wgbWVzc2FnZSB0byBhIHNoYXJlZCBtZXNzYWdl IHF1ZXVlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPk1lc3NhZ2VRdWV1ZVJlY2VpdmU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIHRvIHJlY2VpdmUgYnl0ZXMgZnJvbSBhIHNoYXJlZCBtZXNzYWdl IHF1ZXVlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPk1lc3NhZ2VRdWV1ZVNlbmQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIHRvIHNlbmQgYnl0ZXMgdG8gYSBzaGFyZWQgbWVzc2FnZSBxdWV1ZS48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5QYXJhbGxlbEJpdG1hcFNjYW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIGZvciBwYXJhbGxlbCBiaXRtYXAgc2NhbiB0byBiZWNvbWUgaW5pdGlhbGl6ZWQu PC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+UGFyYWxsZWxDcmVhdGVJbmRleFNjYW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciBwYXJhbGxlbCA8Y29tbWFuZD5DUkVBVEUgSU5ERVg8L2NvbW1h bmQ+IHdvcmtlcnMgdG8KLSAgICAgICBmaW5pc2ggaGVhcCBzY2FuLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlBhcmFsbGVsRmlu aXNoPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgcGFyYWxs ZWwgd29ya2VycyB0byBmaW5pc2ggY29tcHV0aW5nLjwvZW50cnk+Ci0gICAgIDwvcm93Pgot ICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlByb2NBcnJheUdyb3VwVXBkYXRl PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgdGhlIGdyb3Vw IGxlYWRlciB0byBjbGVhciB0aGUgdHJhbnNhY3Rpb24gSUQgYXQKLSAgICAgICBlbmQgb2Yg YSBwYXJhbGxlbCBvcGVyYXRpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+ Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UHJvY1NpZ25hbEJhcnJpZXI8L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIGJhcnJpZXIgZXZlbnQgdG8gYmUg cHJvY2Vzc2VkIGJ5IGFsbAotICAgICAgIGJhY2tlbmRzLjwvZW50cnk+Ci0gICAgIDwvcm93 PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlByb21vdGU8L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBzdGFuZGJ5IHByb21vdGlvbi48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5SZWNvdmVyeUNvbmZsaWN0U25hcHNob3Q8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciByZWNvdmVyeSBjb25mbGljdCByZXNvbHV0aW9uIGZvciBhIHZh Y3V1bQotICAgICAgIGNsZWFudXAuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+ Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UmVjb3ZlcnlDb25mbGljdFRhYmxlc3BhY2U8L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciByZWNvdmVyeSBjb25m bGljdCByZXNvbHV0aW9uIGZvciBkcm9wcGluZyBhCi0gICAgICAgdGFibGVzcGFjZS48L2Vu dHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5S ZWNvdmVyeUVuZENvbW1hbmQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciA8eHJlZiBsaW5rZW5kPSJndWMtcmVjb3ZlcnktZW5kLWNvbW1hbmQiLz4gdG8K LSAgICAgICBjb21wbGV0ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5SZWNvdmVyeVBhdXNlPC9saXRlcmFsPjwvZW50cnk+Ci0g ICAgICA8ZW50cnk+V2FpdGluZyBmb3IgcmVjb3ZlcnkgdG8gYmUgcmVzdW1lZC48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZXBs aWNhdGlvbk9yaWdpbkRyb3A8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBhIHJlcGxpY2F0aW9uIG9yaWdpbiB0byBiZWNvbWUgaW5hY3RpdmUgc28gaXQg Y2FuIGJlCi0gICAgICAgZHJvcHBlZC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZXBsaWNhdGlvblNsb3REcm9wPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZXBsaWNhdGlvbiBzbG90 IHRvIGJlY29tZSBpbmFjdGl2ZSBzbyBpdCBjYW4gYmUKLSAgICAgICBkcm9wcGVkLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJl c3RvcmVDb21tYW5kPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBm b3IgPHhyZWYgbGlua2VuZD0iZ3VjLXJlc3RvcmUtY29tbWFuZCIvPiB0bwotICAgICAgIGNv bXBsZXRlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPlNhZmVTbmFwc2hvdDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgdG8gb2J0YWluIGEgdmFsaWQgc25hcHNob3QgZm9yIGEgPGxpdGVyYWw+UkVB RCBPTkxZCi0gICAgICAgREVGRVJSQUJMRTwvbGl0ZXJhbD4gdHJhbnNhY3Rpb24uPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U3lu Y1JlcDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGNvbmZp cm1hdGlvbiBmcm9tIGEgcmVtb3RlIHNlcnZlciBkdXJpbmcgc3luY2hyb25vdXMKLSAgICAg ICByZXBsaWNhdGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5XYWxSZWNlaXZlckV4aXQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAg ICAgIDxlbnRyeT5XYWl0aW5nIGZvciB0aGUgV0FMIHJlY2VpdmVyIHRvIGV4aXQuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V2Fs UmVjZWl2ZXJXYWl0U3RhcnQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBzdGFydHVwIHByb2Nlc3MgdG8gc2VuZCBpbml0aWFsIGRhdGEgZm9yIHN0cmVh bWluZwotICAgICAgIHJlcGxpY2F0aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlhhY3RHcm91cFVwZGF0ZTwvbGl0ZXJhbD48 L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHRoZSBncm91cCBsZWFkZXIgdG8g dXBkYXRlIHRyYW5zYWN0aW9uIHN0YXR1cyBhdAotICAgICAgIGVuZCBvZiBhIHBhcmFsbGVs IG9wZXJhdGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICA8L3Rib2R5PgotICAgPC90 Z3JvdXA+Ci0gIDwvdGFibGU+Ci0KLSAgPHRhYmxlIGlkPSJ3YWl0LWV2ZW50LWxvY2stdGFi bGUiPgotICAgPHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUgPGxpdGVyYWw+TG9jazwvbGl0 ZXJhbD48L3RpdGxlPgotICAgPHRncm91cCBjb2xzPSIyIj4KLSAgICA8dGhlYWQ+Ci0gICAg IDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9jazwvbGl0ZXJhbD4gV2FpdCBFdmVu dDwvZW50cnk+Ci0gICAgICA8ZW50cnk+RGVzY3JpcHRpb248L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICA8L3RoZWFkPgotCi0gICAgPHRib2R5PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPmFkdmlzb3J5PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+ V2FpdGluZyB0byBhY3F1aXJlIGFuIGFkdmlzb3J5IHVzZXIgbG9jay48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5hcHBseXRyYW5z YWN0aW9uPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhY3F1 aXJlIGEgbG9jayBvbiBhIHJlbW90ZSB0cmFuc2FjdGlvbiBiZWluZyBhcHBsaWVkCi0gICAg ICBieSBhIGxvZ2ljYWwgcmVwbGljYXRpb24gc3Vic2NyaWJlci48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5leHRlbmQ8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGV4dGVuZCBhIHJlbGF0aW9u LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPmZyb3plbmlkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0 bwotICAgICAgIHVwZGF0ZSA8c3RydWN0bmFtZT5wZ19kYXRhYmFzZTwvc3RydWN0bmFtZT4u PHN0cnVjdGZpZWxkPmRhdGZyb3plbnhpZDwvc3RydWN0ZmllbGQ+Ci0gICAgICAgYW5kIDxz dHJ1Y3RuYW1lPnBnX2RhdGFiYXNlPC9zdHJ1Y3RuYW1lPi48c3RydWN0ZmllbGQ+ZGF0bWlu bXhpZDwvc3RydWN0ZmllbGQ+LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPm9iamVjdDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAg PGVudHJ5PldhaXRpbmcgdG8gYWNxdWlyZSBhIGxvY2sgb24gYSBub24tcmVsYXRpb24gZGF0 YWJhc2Ugb2JqZWN0LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAg PGVudHJ5PjxsaXRlcmFsPnBhZ2U8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIHRvIGFjcXVpcmUgYSBsb2NrIG9uIGEgcGFnZSBvZiBhIHJlbGF0aW9uLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPnJl bGF0aW9uPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhY3F1 aXJlIGEgbG9jayBvbiBhIHJlbGF0aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPnNwZWN0b2tlbjwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNxdWlyZSBhIHNwZWN1bGF0aXZlIGluc2Vy dGlvbiBsb2NrLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPnRyYW5zYWN0aW9uaWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciBhIHRyYW5zYWN0aW9uIHRvIGZpbmlzaC48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD50dXBsZTwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNxdWlyZSBhIGxvY2sg b24gYSB0dXBsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD51c2VybG9jazwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgdG8gYWNxdWlyZSBhIHVzZXIgbG9jay48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD52aXJ0dWFseGlkPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhY3F1aXJlIGEgdmlydHVhbCB0 cmFuc2FjdGlvbiBJRCBsb2NrOyAgc2VlCi0gICAgICA8eHJlZiBsaW5rZW5kPSJ0cmFuc2Fj dGlvbi1pZCIvPi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICA8L3Rib2R5PgotICAgPC90 Z3JvdXA+Ci0gIDwvdGFibGU+Ci0KLSAgPHRhYmxlIGlkPSJ3YWl0LWV2ZW50LWx3bG9jay10 YWJsZSI+Ci0gICA8dGl0bGU+V2FpdCBFdmVudHMgb2YgVHlwZSA8bGl0ZXJhbD5MV0xvY2s8 L2xpdGVyYWw+PC90aXRsZT4KLSAgIDx0Z3JvdXAgY29scz0iMiI+Ci0gICAgPHRoZWFkPgot ICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxXTG9jazwvbGl0ZXJhbD4gV2Fp dCBFdmVudDwvZW50cnk+Ci0gICAgICA8ZW50cnk+RGVzY3JpcHRpb248L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICA8L3RoZWFkPgotCi0gICAgPHRib2R5PgotICAgICA8cm93PgotICAg ICAgPGVudHJ5PjxsaXRlcmFsPkFkZGluU2htZW1Jbml0PC9saXRlcmFsPjwvZW50cnk+Ci0g ICAgICA8ZW50cnk+V2FpdGluZyB0byBtYW5hZ2UgYW4gZXh0ZW5zaW9uJ3Mgc3BhY2UgYWxs b2NhdGlvbiBpbiBzaGFyZWQKLSAgICAgICBtZW1vcnkuPC9lbnRyeT4KLSAgICAgPC9yb3c+ Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QXV0b0ZpbGU8L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHVwZGF0ZSB0aGUgPGZpbGVuYW1l PnBvc3RncmVzcWwuYXV0by5jb25mPC9maWxlbmFtZT4KLSAgICAgICBmaWxlLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkF1dG92 YWN1dW08L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHJlYWQg b3IgdXBkYXRlIHRoZSBjdXJyZW50IHN0YXRlIG9mIGF1dG92YWN1dW0KLSAgICAgICB3b3Jr ZXJzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkF1dG92YWN1dW1TY2hlZHVsZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVu dHJ5PldhaXRpbmcgdG8gZW5zdXJlIHRoYXQgYSB0YWJsZSBzZWxlY3RlZCBmb3IgYXV0b3Zh Y3V1bQotICAgICAgIHN0aWxsIG5lZWRzIHZhY3V1bWluZy48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CYWNrZ3JvdW5kV29ya2Vy PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byByZWFkIG9yIHVw ZGF0ZSBiYWNrZ3JvdW5kIHdvcmtlciBzdGF0ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CdHJlZVZhY3V1bTwvbGl0ZXJhbD48 L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gcmVhZCBvciB1cGRhdGUgdmFjdXVt LXJlbGF0ZWQgaW5mb3JtYXRpb24gZm9yIGEKLSAgICAgICBCLXRyZWUgaW5kZXguPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QnVm ZmVyQ29udGVudDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8g YWNjZXNzIGEgZGF0YSBwYWdlIGluIG1lbW9yeS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CdWZmZXJNYXBwaW5nPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhc3NvY2lhdGUgYSBkYXRhIGJs b2NrIHdpdGggYSBidWZmZXIgaW4gdGhlIGJ1ZmZlcgotICAgICAgIHBvb2wuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+Q2hlY2tw b2ludGVyQ29tbTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8g bWFuYWdlIGZzeW5jIHJlcXVlc3RzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNvbW1pdFRzPC9saXRlcmFsPjwvZW50cnk+Ci0g ICAgICA8ZW50cnk+V2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSB0aGUgbGFzdCB2YWx1ZSBz ZXQgZm9yIGEKLSAgICAgICB0cmFuc2FjdGlvbiBjb21taXQgdGltZXN0YW1wLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNvbW1p dFRzQnVmZmVyPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Ig SS9PIG9uIGEgY29tbWl0IHRpbWVzdGFtcCBTTFJVIGJ1ZmZlci48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Db21taXRUc1NMUlU8 L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFjY2VzcyB0aGUg Y29tbWl0IHRpbWVzdGFtcCBTTFJVIGNhY2hlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNvbnRyb2xGaWxlPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSB0aGUgPGZp bGVuYW1lPnBnX2NvbnRyb2w8L2ZpbGVuYW1lPgotICAgICAgIGZpbGUgb3IgY3JlYXRlIGEg bmV3IFdBTCBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAg PGVudHJ5PjxsaXRlcmFsPkR5bmFtaWNTaGFyZWRNZW1vcnlDb250cm9sPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSBkeW5hbWlj IHNoYXJlZCBtZW1vcnkgYWxsb2NhdGlvbgotICAgICAgIGluZm9ybWF0aW9uLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvY2tG YXN0UGF0aDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gcmVh ZCBvciB1cGRhdGUgYSBwcm9jZXNzJyBmYXN0LXBhdGggbG9jawotICAgICAgIGluZm9ybWF0 aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkxvY2tNYW5hZ2VyPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2Fp dGluZyB0byByZWFkIG9yIHVwZGF0ZSBpbmZvcm1hdGlvbgotICAgICAgIGFib3V0IDxxdW90 ZT5oZWF2eXdlaWdodDwvcXVvdGU+IGxvY2tzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2ljYWxSZXBMYXVuY2hlckRTQTwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNjZXNzIGxvZ2lj YWwgcmVwbGljYXRpb24gbGF1bmNoZXIncyBkeW5hbWljIHNoYXJlZAotICAgICAgIG1lbW9y eSBhbGxvY2F0b3IuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+TG9naWNhbFJlcExhdW5jaGVySGFzaDwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNjZXNzIGxvZ2ljYWwgcmVwbGljYXRpb24g bGF1bmNoZXIncyBzaGFyZWQKLSAgICAgICBoYXNoIHRhYmxlLjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2ljYWxSZXBXb3Jr ZXI8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHJlYWQgb3Ig dXBkYXRlIHRoZSBzdGF0ZSBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uCi0gICAgICAgd29ya2Vy cy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5NdWx0aVhhY3RHZW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIHRvIHJlYWQgb3IgdXBkYXRlIHNoYXJlZCBtdWx0aXhhY3Qgc3RhdGUuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TXVsdGlY YWN0TWVtYmVyQnVmZmVyPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyBmb3IgSS9PIG9uIGEgbXVsdGl4YWN0IG1lbWJlciBTTFJVIGJ1ZmZlci48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5NdWx0aVhh Y3RNZW1iZXJTTFJVPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0 byBhY2Nlc3MgdGhlIG11bHRpeGFjdCBtZW1iZXIgU0xSVSBjYWNoZS48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5NdWx0aVhhY3RP ZmZzZXRCdWZmZXI8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZv ciBJL08gb24gYSBtdWx0aXhhY3Qgb2Zmc2V0IFNMUlUgYnVmZmVyLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk11bHRpWGFjdE9m ZnNldFNMUlU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFj Y2VzcyB0aGUgbXVsdGl4YWN0IG9mZnNldCBTTFJVIGNhY2hlLjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk11bHRpWGFjdFRydW5j YXRpb248L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHJlYWQg b3IgdHJ1bmNhdGUgbXVsdGl4YWN0IGluZm9ybWF0aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93 PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk5vdGlmeUJ1ZmZlcjwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIEkvTyBvbiBhIDxjb21t YW5kPk5PVElGWTwvY29tbWFuZD4gbWVzc2FnZSBTTFJVCi0gICAgICAgYnVmZmVyLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk5v dGlmeVF1ZXVlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBy ZWFkIG9yIHVwZGF0ZSA8Y29tbWFuZD5OT1RJRlk8L2NvbW1hbmQ+IG1lc3NhZ2VzLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk5v dGlmeVF1ZXVlVGFpbDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg dG8gdXBkYXRlIGxpbWl0IG9uIDxjb21tYW5kPk5PVElGWTwvY29tbWFuZD4gbWVzc2FnZQot ICAgICAgIHN0b3JhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+Tm90aWZ5U0xSVTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAg PGVudHJ5PldhaXRpbmcgdG8gYWNjZXNzIHRoZSA8Y29tbWFuZD5OT1RJRlk8L2NvbW1hbmQ+ IG1lc3NhZ2UgU0xSVQotICAgICAgIGNhY2hlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk9pZEdlbjwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWxsb2NhdGUgYSBuZXcgT0lELjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPk9sZFNu YXBzaG90VGltZU1hcDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg dG8gcmVhZCBvciB1cGRhdGUgb2xkIHNuYXBzaG90IGNvbnRyb2wgaW5mb3JtYXRpb24uPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+ UGFyYWxsZWxBcHBlbmQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IHRvIGNob29zZSB0aGUgbmV4dCBzdWJwbGFuIGR1cmluZyBQYXJhbGxlbCBBcHBlbmQgcGxh bgotICAgICAgIGV4ZWN1dGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5QYXJhbGxlbEhhc2hKb2luPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBzeW5jaHJvbml6ZSB3b3JrZXJzIGR1cmlu ZyBQYXJhbGxlbCBIYXNoIEpvaW4gcGxhbgotICAgICAgIGV4ZWN1dGlvbi48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5QYXJhbGxl bFF1ZXJ5RFNBPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Ig cGFyYWxsZWwgcXVlcnkgZHluYW1pYyBzaGFyZWQgbWVtb3J5IGFsbG9jYXRpb24uPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UGVy U2Vzc2lvbkRTQTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9y IHBhcmFsbGVsIHF1ZXJ5IGR5bmFtaWMgc2hhcmVkIG1lbW9yeSBhbGxvY2F0aW9uLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlBl clNlc3Npb25SZWNvcmRUeXBlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2Fp dGluZyB0byBhY2Nlc3MgYSBwYXJhbGxlbCBxdWVyeSdzIGluZm9ybWF0aW9uIGFib3V0IGNv bXBvc2l0ZQotICAgICAgIHR5cGVzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlBlclNlc3Npb25SZWNvcmRUeXBtb2Q8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFjY2VzcyBhIHBhcmFsbGVs IHF1ZXJ5J3MgaW5mb3JtYXRpb24gYWJvdXQgdHlwZQotICAgICAgIG1vZGlmaWVycyB0aGF0 IGlkZW50aWZ5IGFub255bW91cyByZWNvcmQgdHlwZXMuPC9lbnRyeT4KLSAgICAgPC9yb3c+ Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UGVyWGFjdFByZWRpY2F0ZUxp c3Q8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFjY2VzcyB0 aGUgbGlzdCBvZiBwcmVkaWNhdGUgbG9ja3MgaGVsZCBieSB0aGUgY3VycmVudAotICAgICAg IHNlcmlhbGl6YWJsZSB0cmFuc2FjdGlvbiBkdXJpbmcgYSBwYXJhbGxlbCBxdWVyeS48L2Vu dHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Q Z1N0YXRzRGF0YTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9y IHNoYXJlZCBtZW1vcnkgc3RhdHMgZGF0YSBhY2Nlc3M8L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5QZ1N0YXRzRFNBPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Igc3RhdHMgZHluYW1pYyBzaGFy ZWQgbWVtb3J5IGFsbG9jYXRvciBhY2Nlc3M8L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5QZ1N0YXRzSGFzaDwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHN0YXRzIHNoYXJlZCBtZW1vcnkgaGFz aCB0YWJsZSBhY2Nlc3M8L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5QcmVkaWNhdGVMb2NrTWFuYWdlcjwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNjZXNzIHByZWRpY2F0ZSBsb2NrIGluZm9y bWF0aW9uIHVzZWQgYnkKLSAgICAgICBzZXJpYWxpemFibGUgdHJhbnNhY3Rpb25zLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlBy b2NBcnJheTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNj ZXNzIHRoZSBzaGFyZWQgcGVyLXByb2Nlc3MgZGF0YSBzdHJ1Y3R1cmVzCi0gICAgICAgKHR5 cGljYWxseSwgdG8gZ2V0IGEgc25hcHNob3Qgb3IgcmVwb3J0IGEgc2Vzc2lvbidzIHRyYW5z YWN0aW9uCi0gICAgICAgSUQpLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlbGF0aW9uTWFwcGluZzwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gcmVhZCBvciB1cGRhdGUKLSAgICAgICBhIDxm aWxlbmFtZT5wZ19maWxlbm9kZS5tYXA8L2ZpbGVuYW1lPiBmaWxlICh1c2VkIHRvIHRyYWNr IHRoZQotICAgICAgIGZpbGVub2RlIGFzc2lnbm1lbnRzIG9mIGNlcnRhaW4gc3lzdGVtIGNh dGFsb2dzKS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRy eT48bGl0ZXJhbD5SZWxDYWNoZUluaXQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRy eT5XYWl0aW5nIHRvIHJlYWQgb3IgdXBkYXRlIGEgPGZpbGVuYW1lPnBnX2ludGVybmFsLmlu aXQ8L2ZpbGVuYW1lPgotICAgICAgIHJlbGF0aW9uIGNhY2hlIGluaXRpYWxpemF0aW9uIGZp bGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxp dGVyYWw+UmVwbGljYXRpb25PcmlnaW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRy eT5XYWl0aW5nIHRvIGNyZWF0ZSwgZHJvcCBvciB1c2UgYSByZXBsaWNhdGlvbiBvcmlnaW4u PC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+UmVwbGljYXRpb25PcmlnaW5TdGF0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVu dHJ5PldhaXRpbmcgdG8gcmVhZCBvciB1cGRhdGUgdGhlIHByb2dyZXNzIG9mIG9uZSByZXBs aWNhdGlvbgotICAgICAgIG9yaWdpbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZXBsaWNhdGlvblNsb3RBbGxvY2F0aW9uPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhbGxvY2F0ZSBvciBm cmVlIGEgcmVwbGljYXRpb24gc2xvdC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZXBsaWNhdGlvblNsb3RDb250cm9sPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSBy ZXBsaWNhdGlvbiBzbG90IHN0YXRlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlcGxpY2F0aW9uU2xvdElPPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgSS9PIG9uIGEgcmVwbGljYXRpb24g c2xvdC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5TZXJpYWxCdWZmZXI8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIGZvciBJL08gb24gYSBzZXJpYWxpemFibGUgdHJhbnNhY3Rpb24gY29uZmxpY3Qg U0xSVQotICAgICAgIGJ1ZmZlci48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TZXJpYWxpemFibGVGaW5pc2hlZExpc3Q8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFjY2VzcyB0aGUgbGlzdCBv ZiBmaW5pc2hlZCBzZXJpYWxpemFibGUKLSAgICAgICB0cmFuc2FjdGlvbnMuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U2VyaWFs aXphYmxlUHJlZGljYXRlTGlzdDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5Pldh aXRpbmcgdG8gYWNjZXNzIHRoZSBsaXN0IG9mIHByZWRpY2F0ZSBsb2NrcyBoZWxkIGJ5Ci0g ICAgICAgc2VyaWFsaXphYmxlIHRyYW5zYWN0aW9ucy48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TZXJpYWxpemFibGVYYWN0SGFz aDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gcmVhZCBvciB1 cGRhdGUgaW5mb3JtYXRpb24gYWJvdXQgc2VyaWFsaXphYmxlCi0gICAgICAgdHJhbnNhY3Rp b25zLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPlNlcmlhbFNMUlU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIHRvIGFjY2VzcyB0aGUgc2VyaWFsaXphYmxlIHRyYW5zYWN0aW9uIGNvbmZsaWN0IFNM UlUKLSAgICAgICBjYWNoZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5TaGFyZWRUaWRCaXRtYXA8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFjY2VzcyBhIHNoYXJlZCBUSUQgYml0bWFwIGR1 cmluZyBhIHBhcmFsbGVsIGJpdG1hcAotICAgICAgIGluZGV4IHNjYW4uPC9lbnRyeT4KLSAg ICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U2hhcmVkVHVw bGVTdG9yZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8gYWNj ZXNzIGEgc2hhcmVkIHR1cGxlIHN0b3JlIGR1cmluZyBwYXJhbGxlbAotICAgICAgIHF1ZXJ5 LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPlNobWVtSW5kZXg8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IHRvIGZpbmQgb3IgYWxsb2NhdGUgc3BhY2UgaW4gc2hhcmVkIG1lbW9yeS48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TSW52YWxS ZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byByZXRyaWV2 ZSBtZXNzYWdlcyBmcm9tIHRoZSBzaGFyZWQgY2F0YWxvZyBpbnZhbGlkYXRpb24KLSAgICAg ICBxdWV1ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRy eT48bGl0ZXJhbD5TSW52YWxXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgdG8gYWRkIGEgbWVzc2FnZSB0byB0aGUgc2hhcmVkIGNhdGFsb2cgaW52YWxp ZGF0aW9uCi0gICAgICBxdWV1ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TdWJ0cmFuc0J1ZmZlcjwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIEkvTyBvbiBhIHN1Yi10cmFuc2FjdGlvbiBT TFJVIGJ1ZmZlci48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5TdWJ0cmFuc1NMUlU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIHRvIGFjY2VzcyB0aGUgc3ViLXRyYW5zYWN0aW9uIFNMUlUgY2FjaGUu PC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+U3luY1JlcDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8g cmVhZCBvciB1cGRhdGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHN0YXRlIG9mCi0gICAgICAg c3luY2hyb25vdXMgcmVwbGljYXRpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U3luY1NjYW48L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHNlbGVjdCB0aGUgc3RhcnRpbmcgbG9jYXRpb24g b2YgYSBzeW5jaHJvbml6ZWQgdGFibGUKLSAgICAgICBzY2FuLjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlRhYmxlc3BhY2VDcmVh dGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGNyZWF0ZSBv ciBkcm9wIGEgdGFibGVzcGFjZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Ud29QaGFzZVN0YXRlPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSB0aGUgc3RhdGUgb2Yg cHJlcGFyZWQgdHJhbnNhY3Rpb25zLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldBTEJ1Zk1hcHBpbmc8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHJlcGxhY2UgYSBwYWdlIGluIFdBTCBidWZm ZXJzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPldBTEluc2VydDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgdG8gaW5zZXJ0IFdBTCBkYXRhIGludG8gYSBtZW1vcnkgYnVmZmVyLjwvZW50cnk+Ci0g ICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldBTFdyaXRl PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgV0FMIGJ1ZmZl cnMgdG8gYmUgd3JpdHRlbiB0byBkaXNrLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldyYXBMaW1pdHNWYWN1dW08L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIHVwZGF0ZSBsaW1pdHMgb24gdHJh bnNhY3Rpb24gaWQgYW5kIG11bHRpeGFjdAotICAgICAgIGNvbnN1bXB0aW9uLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlhhY3RC dWZmZXI8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBJL08g b24gYSB0cmFuc2FjdGlvbiBzdGF0dXMgU0xSVSBidWZmZXIuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+WGFjdFNMUlU8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGFjY2VzcyB0aGUgdHJhbnNh Y3Rpb24gc3RhdHVzIFNMUlUgY2FjaGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+WGFjdFRydW5jYXRpb248L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGV4ZWN1dGUgPGZ1bmN0aW9uPnBnX3hh Y3Rfc3RhdHVzPC9mdW5jdGlvbj4gb3IgdXBkYXRlCi0gICAgICAgdGhlIG9sZGVzdCB0cmFu c2FjdGlvbiBJRCBhdmFpbGFibGUgdG8gaXQuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAg IDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+WGlkR2VuPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhbGxvY2F0ZSBhIG5ldyB0cmFuc2FjdGlvbiBJ RC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICA8L3Rib2R5PgotICAgPC90Z3JvdXA+Ci0g IDwvdGFibGU+Ci0KLSAgIDxub3RlPgotICAgIDxwYXJhPgotICAgICBFeHRlbnNpb25zIGNh biBhZGQgPGxpdGVyYWw+TFdMb2NrPC9saXRlcmFsPiB0eXBlcyB0byB0aGUgbGlzdCBzaG93 biBpbgotICAgICA8eHJlZiBsaW5rZW5kPSJ3YWl0LWV2ZW50LWx3bG9jay10YWJsZSIvPi4g IEluIHNvbWUgY2FzZXMsIHRoZSBuYW1lCi0gICAgIGFzc2lnbmVkIGJ5IGFuIGV4dGVuc2lv biB3aWxsIG5vdCBiZSBhdmFpbGFibGUgaW4gYWxsIHNlcnZlciBwcm9jZXNzZXM7Ci0gICAg IHNvIGFuIDxsaXRlcmFsPkxXTG9jazwvbGl0ZXJhbD4gd2FpdCBldmVudCBtaWdodCBiZSBy ZXBvcnRlZCBhcwotICAgICBqdXN0IDxxdW90ZT48bGl0ZXJhbD5leHRlbnNpb248L2xpdGVy YWw+PC9xdW90ZT4gcmF0aGVyIHRoYW4gdGhlCi0gICAgIGV4dGVuc2lvbi1hc3NpZ25lZCBu YW1lLgotICAgIDwvcGFyYT4KLSAgIDwvbm90ZT4KLQotICA8dGFibGUgaWQ9IndhaXQtZXZl bnQtdGltZW91dC10YWJsZSI+Ci0gICA8dGl0bGU+V2FpdCBFdmVudHMgb2YgVHlwZSA8bGl0 ZXJhbD5UaW1lb3V0PC9saXRlcmFsPjwvdGl0bGU+Ci0gICA8dGdyb3VwIGNvbHM9IjIiPgot ICAgIDx0aGVhZD4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5UaW1lb3V0 PC9saXRlcmFsPiBXYWl0IEV2ZW50PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5EZXNjcmlwdGlv bjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgIDwvdGhlYWQ+Ci0KLSAgICA8dGJvZHk+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QmFzZUJhY2t1cFRocm90dGxlPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBkdXJpbmcgYmFzZSBiYWNr dXAgd2hlbiB0aHJvdHRsaW5nIGFjdGl2aXR5LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNoZWNrcG9pbnRXcml0ZURlbGF5PC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBiZXR3ZWVuIHdyaXRlcyB3 aGlsZSBwZXJmb3JtaW5nIGEgY2hlY2twb2ludC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5QZ1NsZWVwPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBkdWUgdG8gYSBjYWxsIHRvIDxmdW5jdGlvbj5w Z19zbGVlcDwvZnVuY3Rpb24+IG9yCi0gICAgICAgYSBzaWJsaW5nIGZ1bmN0aW9uLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJl Y292ZXJ5QXBwbHlEZWxheTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgdG8gYXBwbHkgV0FMIGR1cmluZyByZWNvdmVyeSBiZWNhdXNlIG9mIGEgZGVsYXkKLSAg ICAgICBzZXR0aW5nLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAg PGVudHJ5PjxsaXRlcmFsPlJlY292ZXJ5UmV0cmlldmVSZXRyeUludGVydmFsPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBkdXJpbmcgcmVjb3Zlcnkgd2hlbiBX QUwgZGF0YSBpcyBub3QgYXZhaWxhYmxlIGZyb20gYW55Ci0gICAgICAgc291cmNlICg8Zmls ZW5hbWU+cGdfd2FsPC9maWxlbmFtZT4sIGFyY2hpdmUgb3Igc3RyZWFtKS48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5SZWdpc3Rl clN5bmNSZXF1ZXN0PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB3 aGlsZSBzZW5kaW5nIHN5bmNocm9uaXphdGlvbiByZXF1ZXN0cyB0byB0aGUKLSAgICAgICBj aGVja3BvaW50ZXIsIGJlY2F1c2UgdGhlIHJlcXVlc3QgcXVldWUgaXMgZnVsbC48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TcGlu RGVsYXk8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHdoaWxlIGFj cXVpcmluZyBhIGNvbnRlbmRlZCBzcGlubG9jay48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5WYWN1dW1EZWxheTwvbGl0ZXJhbD48 L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gYSBjb3N0LWJhc2VkIHZhY3V1bSBk ZWxheSBwb2ludC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5WYWN1dW1UcnVuY2F0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAg PGVudHJ5PldhaXRpbmcgdG8gYWNxdWlyZSBhbiBleGNsdXNpdmUgbG9jayB0byB0cnVuY2F0 ZSBvZmYgYW55Ci0gICAgICAgZW1wdHkgcGFnZXMgYXQgdGhlIGVuZCBvZiBhIHRhYmxlIHZh Y3V1bWVkLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgIDwvdGJvZHk+Ci0gICA8L3Rncm91 cD4KLSAgPC90YWJsZT4KKyAgJndhaXRfZXZlbnRfdHlwZXM7CiAKICAgIDxwYXJhPgogICAg ICBIZXJlIGlzIGFuIGV4YW1wbGUgb2YgaG93IHdhaXQgZXZlbnRzIGNhbiBiZSB2aWV3ZWQ6 CkBAIC0yMzc0LDYgKzExMTUsMTYgQEAgU0VMRUNUIHBpZCwgd2FpdF9ldmVudF90eXBlLCB3 YWl0X2V2ZW50IEZST00gcGdfc3RhdF9hY3Rpdml0eSBXSEVSRSB3YWl0X2V2ZW50IGkKIDwv cHJvZ3JhbWxpc3Rpbmc+CiAgICA8L3BhcmE+CiAKKyAgIDxub3RlPgorICAgIDxwYXJhPgor ICAgICBFeHRlbnNpb25zIGNhbiBhZGQgPGxpdGVyYWw+TFdMb2NrPC9saXRlcmFsPiB0eXBl cyB0byB0aGUgbGlzdCBzaG93biBpbgorICAgICA8eHJlZiBsaW5rZW5kPSJ3YWl0LWV2ZW50 LWx3bG9jay10YWJsZSIvPi4gIEluIHNvbWUgY2FzZXMsIHRoZSBuYW1lCisgICAgIGFzc2ln bmVkIGJ5IGFuIGV4dGVuc2lvbiB3aWxsIG5vdCBiZSBhdmFpbGFibGUgaW4gYWxsIHNlcnZl ciBwcm9jZXNzZXM7CisgICAgIHNvIGFuIDxsaXRlcmFsPkxXTG9jazwvbGl0ZXJhbD4gd2Fp dCBldmVudCBtaWdodCBiZSByZXBvcnRlZCBhcworICAgICBqdXN0IDxxdW90ZT48bGl0ZXJh bD5leHRlbnNpb248L2xpdGVyYWw+PC9xdW90ZT4gcmF0aGVyIHRoYW4gdGhlCisgICAgIGV4 dGVuc2lvbi1hc3NpZ25lZCBuYW1lLgorICAgIDwvcGFyYT4KKyAgIDwvbm90ZT4KICA8L3Nl Y3QyPgogCiAgPHNlY3QyIGlkPSJtb25pdG9yaW5nLXBnLXN0YXQtcmVwbGljYXRpb24tdmll dyI+CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9NYWtlZmlsZSBiL3NyYy9iYWNrZW5kL01h a2VmaWxlCmluZGV4IDNjNDIwMDMxNzUuLjFjOTI5MzgzYzQgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL01ha2VmaWxlCisrKyBiL3NyYy9iYWNrZW5kL01ha2VmaWxlCkBAIC0xMzMsNiAr MTMzLDkgQEAgcGFyc2VyL2dyYW0uaDogcGFyc2VyL2dyYW0ueQogc3RvcmFnZS9sbWdyL2x3 bG9ja25hbWVzLmg6IHN0b3JhZ2UvbG1nci9nZW5lcmF0ZS1sd2xvY2tuYW1lcy5wbCBzdG9y YWdlL2xtZ3IvbHdsb2NrbmFtZXMudHh0CiAJJChNQUtFKSAtQyBzdG9yYWdlL2xtZ3IgbHds b2NrbmFtZXMuaCBsd2xvY2tuYW1lcy5jCiAKK3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRf dHlwZXMuaDogdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdF9ldmVudF90eXBlcy5wbCB1 dGlscy9hY3Rpdml0eS93YWl0X2V2ZW50X25hbWVzLnR4dAorCSQoTUFLRSkgLUMgdXRpbHMv YWN0aXZpdHkgd2FpdF9ldmVudF90eXBlcy5oIHBnc3RhdF93YWl0X2V2ZW50LmMKKwogIyBy dW4gdGhpcyB1bmNvbmRpdGlvbmFsbHkgdG8gYXZvaWQgbmVlZGluZyB0byBrbm93IGl0cyBk ZXBlbmRlbmNpZXMgaGVyZToKIHN1Ym1ha2UtY2F0YWxvZy1oZWFkZXJzOgogCSQoTUFLRSkg LUMgY2F0YWxvZyBkaXN0cHJlcCBnZW5lcmF0ZWQtaGVhZGVyLXN5bWxpbmtzCkBAIC0xNjAs MTMgKzE2MywxOCBAQCBzdWJtYWtlLXV0aWxzLWhlYWRlcnM6CiAKIC5QSE9OWTogZ2VuZXJh dGVkLWhlYWRlcnMKIAotZ2VuZXJhdGVkLWhlYWRlcnM6ICQodG9wX2J1aWxkZGlyKS9zcmMv aW5jbHVkZS9zdG9yYWdlL2x3bG9ja25hbWVzLmggc3VibWFrZS1jYXRhbG9nLWhlYWRlcnMg c3VibWFrZS1ub2Rlcy1oZWFkZXJzIHN1Ym1ha2UtdXRpbHMtaGVhZGVycworZ2VuZXJhdGVk LWhlYWRlcnM6ICQodG9wX2J1aWxkZGlyKS9zcmMvaW5jbHVkZS9zdG9yYWdlL2x3bG9ja25h bWVzLmggJCh0b3BfYnVpbGRkaXIpL3NyYy9pbmNsdWRlL3V0aWxzL3dhaXRfZXZlbnRfdHlw ZXMuaCBzdWJtYWtlLWNhdGFsb2ctaGVhZGVycyBzdWJtYWtlLW5vZGVzLWhlYWRlcnMgc3Vi bWFrZS11dGlscy1oZWFkZXJzCiAKICQodG9wX2J1aWxkZGlyKS9zcmMvaW5jbHVkZS9zdG9y YWdlL2x3bG9ja25hbWVzLmg6IHN0b3JhZ2UvbG1nci9sd2xvY2tuYW1lcy5oCiAJcHJlcmVx ZGlyPWBjZCAnJChkaXIgJDwpJyA+L2Rldi9udWxsICYmIHB3ZGAgJiYgXAogCSAgY2QgJyQo ZGlyICRAKScgJiYgcm0gLWYgJChub3RkaXIgJEApICYmIFwKIAkgICQoTE5fUykgIiQkcHJl cmVxZGlyLyQobm90ZGlyICQ8KSIgLgogCiskKHRvcF9idWlsZGRpcikvc3JjL2luY2x1ZGUv dXRpbHMvd2FpdF9ldmVudF90eXBlcy5oOiB1dGlscy9hY3Rpdml0eS93YWl0X2V2ZW50X3R5 cGVzLmgKKwlwcmVyZXFkaXI9YGNkICckKGRpciAkPCknID4vZGV2L251bGwgJiYgcHdkYCAm JiBcCisJICBjZCAnJChkaXIgJEApJyAmJiBybSAtZiAkKG5vdGRpciAkQCkgJiYgXAorCSAg JChMTl9TKSAiJCRwcmVyZXFkaXIvJChub3RkaXIgJDwpIiAuCisKIHV0aWxzL3Byb2Jlcy5v OiB1dGlscy9wcm9iZXMuZCAkKFNVQkRJUk9CSlMpCiAJJChEVFJBQ0UpICQoRFRSQUNFRkxB R1MpIC1DIC1HIC1zICQoY2FsbCBleHBhbmRfc3Vic3lzLCReKSAtbyAkQAogCkBAIC0xODIs NiArMTkwLDcgQEAgZGlzdHByZXA6CiAJJChNQUtFKSAtQyByZXBsaWNhdGlvbglyZXBsX2dy YW0uYyByZXBsX2dyYW0uaCByZXBsX3NjYW5uZXIuYyBzeW5jcmVwX2dyYW0uYyBzeW5jcmVw X2dyYW0uaCBzeW5jcmVwX3NjYW5uZXIuYwogCSQoTUFLRSkgLUMgc3RvcmFnZS9sbWdyCWx3 bG9ja25hbWVzLmggbHdsb2NrbmFtZXMuYwogCSQoTUFLRSkgLUMgdXRpbHMJZGlzdHByZXAK KwkkKE1BS0UpIC1DIHV0aWxzL2FjdGl2aXR5CXdhaXRfZXZlbnRfdHlwZXMuaCBwZ3N0YXRf d2FpdF9ldmVudC5jCiAJJChNQUtFKSAtQyB1dGlscy9hZHQJanNvbnBhdGhfZ3JhbS5jIGpz b25wYXRoX2dyYW0uaCBqc29ucGF0aF9zY2FuLmMKIAkkKE1BS0UpIC1DIHV0aWxzL21pc2MJ Z3VjLWZpbGUuYwogCkBAIC0zMDEsNiArMzEwLDggQEAgbWFpbnRhaW5lci1jbGVhbjogZGlz dGNsZWFuCiAJICAgICAgcmVwbGljYXRpb24vc3luY3JlcF9zY2FubmVyLmMgXAogCSAgICAg IHN0b3JhZ2UvbG1nci9sd2xvY2tuYW1lcy5jIFwKIAkgICAgICBzdG9yYWdlL2xtZ3IvbHds b2NrbmFtZXMuaCBcCisJICAgICAgdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3dhaXRfZXZlbnQu YyBcCisJICAgICAgdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudF90eXBlcy5oIFwKIAkgICAg ICB1dGlscy9hZHQvanNvbnBhdGhfZ3JhbS5jIFwKIAkgICAgICB1dGlscy9hZHQvanNvbnBh dGhfZ3JhbS5oIFwKIAkgICAgICB1dGlscy9hZHQvanNvbnBhdGhfc2Nhbi5jIFwKZGlmZiAt LWdpdCBhL3NyYy9iYWNrZW5kL3N0b3JhZ2UvbG1nci9sd2xvY2tuYW1lcy50eHQgYi9zcmMv YmFja2VuZC9zdG9yYWdlL2xtZ3IvbHdsb2NrbmFtZXMudHh0CmluZGV4IDZjN2NmNmMyOTUu LmIzNGI2YWZlY2QgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3N0b3JhZ2UvbG1nci9sd2xv Y2tuYW1lcy50eHQKKysrIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9sbWdyL2x3bG9ja25hbWVz LnR4dApAQCAtMiw4ICsyLDggQEAKICMgdGhlc2UgYXJlIGRlZmluZWQgaGVyZS4gIElmIHlv dSBhZGQgYSBsb2NrLCBhZGQgaXQgdG8gdGhlIGVuZCB0byBhdm9pZAogIyByZW51bWJlcmlu ZyB0aGUgZXhpc3RpbmcgbG9ja3M7IGlmIHlvdSByZW1vdmUgYSBsb2NrLCBjb25zaWRlciBs ZWF2aW5nIGEgZ2FwCiAjIGluIHRoZSBudW1iZXJpbmcgc2VxdWVuY2UgZm9yIHRoZSBiZW5l Zml0IG9mIERUcmFjZSBhbmQgb3RoZXIgZXh0ZXJuYWwKLSMgZGVidWdnaW5nIHNjcmlwdHMu ICBBbHNvLCBkbyBub3QgZm9yZ2V0IHRvIHVwZGF0ZSB0aGUgbGlzdCBvZiB3YWl0IGV2ZW50 cwotIyBpbiB0aGUgdXNlciBkb2N1bWVudGF0aW9uLgorIyBkZWJ1Z2dpbmcgc2NyaXB0cy4g IEFsc28sIGRvIG5vdCBmb3JnZXQgdG8gdXBkYXRlIHRoZSBzZWN0aW9uCisjIFdhaXRFdmVu dExXTG9jayBvZiBzcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS93YWl0X2V2ZW50X25hbWVz LnR4dC4KIAogIyAwIGlzIGF2YWlsYWJsZTsgd2FzIGZvcm1lcmx5IEJ1ZkZyZWVsaXN0TG9j awogU2htZW1JbmRleExvY2sJCQkJCQkxCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGls cy9hY3Rpdml0eS8uZ2l0aWdub3JlIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvLmdp dGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5hNjIzNzg0 MDVlCi0tLSAvZGV2L251bGwKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvLmdp dGlnbm9yZQpAQCAtMCwwICsxLDMgQEAKKy9wZ3N0YXRfd2FpdF9ldmVudC5jCisvd2FpdF9l dmVudF90eXBlcy5oCisvd2FpdF9ldmVudF90eXBlcy5zZ21sCmRpZmYgLS1naXQgYS9zcmMv YmFja2VuZC91dGlscy9hY3Rpdml0eS9NYWtlZmlsZSBiL3NyYy9iYWNrZW5kL3V0aWxzL2Fj dGl2aXR5L01ha2VmaWxlCmluZGV4IDdkNzQ4MmRkZTAuLjRjMzI5NDcwMTYgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L01ha2VmaWxlCisrKyBiL3NyYy9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L01ha2VmaWxlCkBAIC0zMywzICszMywxMyBAQCBPQkpTID0g XAogCXdhaXRfZXZlbnQubwogCiBpbmNsdWRlICQodG9wX3NyY2Rpcikvc3JjL2JhY2tlbmQv Y29tbW9uLm1rCisKK3dhaXRfZXZlbnQubzogcGdzdGF0X3dhaXRfZXZlbnQuYworcGdzdGF0 X3dhaXRfZXZlbnQuYzogd2FpdF9ldmVudF90eXBlcy5oCisJdG91Y2ggJEAKKword2FpdF9l dmVudF90eXBlcy5oOiAkKHRvcF9zcmNkaXIpL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5 L3dhaXRfZXZlbnRfbmFtZXMudHh0IGdlbmVyYXRlLXdhaXRfZXZlbnRfdHlwZXMucGwKKwkk KFBFUkwpICQoc3JjZGlyKS9nZW5lcmF0ZS13YWl0X2V2ZW50X3R5cGVzLnBsIC0tY29kZSAk PAorCittYWludGFpbmVyLWNsZWFuOiBjbGVhbgorCXJtIC1mIHdhaXRfZXZlbnRfdHlwZXMu aCBwZ3N0YXRfd2FpdF9ldmVudC5jCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9h Y3Rpdml0eS9nZW5lcmF0ZS13YWl0X2V2ZW50X3R5cGVzLnBsIGIvc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdF9ldmVudF90eXBlcy5wbApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi4wZTRhZGE0N2EzCi0tLSAvZGV2L251bGwKKysr IGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdF9ldmVudF90eXBl cy5wbApAQCAtMCwwICsxLDIzOSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQorIworIyBHZW5lcmF0ZSB3YWl0IGV2ZW50cyBzdXBwb3J0IGZpbGVzIGZyb20gd2Fp dF9ldmVudF9uYW1lcy50eHQ6CisjIC0gd2FpdF9ldmVudF90eXBlcy5oIChpZiAtLWNvZGUg aXMgcGFzc2VkKQorIyAtIHBnc3RhdF93YWl0X2V2ZW50LmMgKGlmIC0tY29kZSBpcyBwYXNz ZWQpCisjIC0gd2FpdF9ldmVudF90eXBlcy5zZ21sIChpZiAtLWRvY3MgaXMgcGFzc2VkKQor IworIyBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMywgUG9zdGdyZVNRTCBHbG9i YWwgRGV2ZWxvcG1lbnQgR3JvdXAKKyMgUG9ydGlvbnMgQ29weXJpZ2h0IChjKSAxOTk0LCBS ZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEKKyMKKyMgc3JjL2JhY2tl bmQvdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdF9ldmVudF90eXBlcy5wbAorIworIy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKK3VzZSBHZXRv cHQ6Okxvbmc7CisKK215ICRvdXRwdXRfcGF0aCA9ICcuJzsKK215ICRnZW5fZG9jcyA9IDA7 CitteSAkZ2VuX2NvZGUgPSAwOworCitteSAkY29udGludWUgPSAiXG4iOworbXkgJWhhc2h3 ZTsKKworR2V0T3B0aW9ucygKKwknb3V0ZGlyOnMnID0+IFwkb3V0cHV0X3BhdGgsCisJJ2Rv Y3MnID0+IFwkZ2VuX2RvY3MsCisJJ2NvZGUnID0+IFwkZ2VuX2NvZGUpOworCitkaWUgIk5l ZWRzIHRvIHNwZWNpZnkgLS1kb2NzIG9yIC0tY29kZSIKKwlpZiAoISRnZW5fZG9jcyAmJiAh JGdlbl9jb2RlKSAgOworCitkaWUgIk5vdCBwb3NzaWJsZSB0byBzcGVjaWZ5IC0tZG9jcyBh bmQgLS1jb2RlIHNpbXVsdGFuZW91c2x5IgorCWlmICgkZ2VuX2RvY3MgJiYgJGdlbl9jb2Rl KSAgOworCitvcGVuIG15ICR3YWl0X2V2ZW50X25hbWVzLCAnPCcsICRBUkdWWzBdIG9yIGRp ZTsKKworbXkgQGxpbmVzOworbXkgJHNlY3Rpb25fbmFtZTsKK215ICRub3RlOworbXkgJG5v dGVfbmFtZTsKKworIyBSZW1vdmUgY29tbWVudHMgYW5kIGVtcHR5IGxpbmVzIGFuZCBhZGQg d2FpdGNsYXNzbmFtZSBiYXNlZCBvbiB0aGUgc2VjdGlvbgord2hpbGUgKDwkd2FpdF9ldmVu dF9uYW1lcz4pCit7CisJY2hvbXA7CisKKwkjIFNraXAgY29tbWVudHMKKwluZXh0IGlmIC9e Iy87CisKKwkjIFNraXAgZW1wdHkgbGluZXMKKwluZXh0IGlmIC9eXHMqJC87CisKKwkjIEdl dCB3YWl0Y2xhc3NuYW1lIGJhc2VkIG9uIHRoZSBzZWN0aW9uCisJaWYgKC9eU2VjdGlvbjog Q2xhc3NOYW1lKC4qKS8pCisJeworCQkkc2VjdGlvbl9uYW1lID0gJF87CisJCSRzZWN0aW9u X25hbWUgPX4gcy9eLiotIC8vOworCQluZXh0OworCX0KKworCXB1c2goQGxpbmVzLCAkc2Vj dGlvbl9uYW1lIC4gIlx0IiAuICRfKTsKK30KKworIyBTb3J0IHRoZSBsaW5lcyBiYXNlZCBv biB0aGUgdGhpcmQgY29sdW1uLgorIyB1YygpIGlzIGJlaW5nIHVzZWQgdG8gZm9yY2UgdGhl IGNvbXBhcmlzb24gdG8gYmUgY2FzZS1pbnNlbnNpdGl2ZS4KK215IEBsaW5lc19zb3J0ZWQg PQorICBzb3J0IHsgdWMoKHNwbGl0KC9cdC8sICRhKSlbMl0pIGNtcCB1Yygoc3BsaXQoL1x0 LywgJGIpKVsyXSkgfSBAbGluZXM7CisKKyMgUmVhZCB0aGUgc29ydGVkIGxpbmVzIGFuZCBw b3B1bGF0ZSB0aGUgaGFzaCB0YWJsZQorZm9yZWFjaCBteSAkbGluZSAoQGxpbmVzX3NvcnRl ZCkKK3sKKwlkaWUgInVuYWJsZSB0byBwYXJzZSB3YWl0X2V2ZW50X25hbWVzLnR4dCIKKwkg IHVubGVzcyAkbGluZSA9fiAvXihcdyspXHQrKFx3KylcdCsoIlx3KyIpXHQrKCJcdy4qXC4i KSQvOworCisJKCAgIG15ICR3YWl0Y2xhc3NuYW1lLAorCQlteSAkd2FpdGV2ZW50ZW51bW5h bWUsCisJCW15ICR3YWl0ZXZlbnRkZXNjcmlwdGlvbiwKKwkJbXkgJHdhaXRldmVuZG9jc2Vu dGVuY2UpID0gc3BsaXQoL1x0LywgJGxpbmUpOworCisJbXkgQHdhaXRldmVudGxpc3QgPQor CSAgWyAkd2FpdGV2ZW50ZW51bW5hbWUsICR3YWl0ZXZlbnRkZXNjcmlwdGlvbiwgJHdhaXRl dmVuZG9jc2VudGVuY2UgXTsKKwlteSAkdHJpbW1lZHdhaXRldmVudG5hbWUgPSAkd2FpdGV2 ZW50ZW51bW5hbWU7CisJJHRyaW1tZWR3YWl0ZXZlbnRuYW1lID1+IHMvXldBSVRfRVZFTlRf Ly87CisKKwkjIEFuIGV4Y2VwdGlvbiBpcyByZXF1aXJlZCBmb3IgTFdMb2NrIGFuZCBMb2Nr IGFzIHRoZXNlIGRvbid0IHJlcXVpcmUKKwkjIGFueSBDIGFuZCBoZWFkZXIgZmlsZXMgZ2Vu ZXJhdGVkLgorCWRpZSAid2FpdCBldmVudCBuYW1lcyBtdXN0IHN0YXJ0IHdpdGggJ1dBSVRf RVZFTlRfJyIKKwkgIGlmICggJHRyaW1tZWR3YWl0ZXZlbnRuYW1lIGVxICR3YWl0ZXZlbnRl bnVtbmFtZQorCQkmJiAkd2FpdGV2ZW50ZW51bW5hbWUgIX4gL15MV0xvY2svCisJCSYmICR3 YWl0ZXZlbnRlbnVtbmFtZSAhfiAvXkxvY2svKTsKKwkkY29udGludWUgPSAiLFxuIjsKKwlw dXNoKEB7ICRoYXNod2V7JHdhaXRjbGFzc25hbWV9IH0sIEB3YWl0ZXZlbnRsaXN0KTsKK30K KworCisjIEdlbmVyYXRlIHRoZSAuYyBhbmQgLmggZmlsZXMuCitpZiAoJGdlbl9jb2RlKQor eworCSMgSW5jbHVkZSBQSUQgaW4gc3VmZml4IGluIGNhc2UgcGFyYWxsZWwgbWFrZSBydW5z IHRoaXMgbXVsdGlwbGUgdGltZXMuCisJbXkgJGh0bXAgPSAiJG91dHB1dF9wYXRoL3dhaXRf ZXZlbnRfdHlwZXMuaC50bXAkJCI7CisJbXkgJGN0bXAgPSAiJG91dHB1dF9wYXRoL3Bnc3Rh dF93YWl0X2V2ZW50LmMudG1wJCQiOworCW9wZW4gbXkgJGgsICc+JywgJGh0bXAgb3IgZGll ICJDb3VsZCBub3Qgb3BlbiAkaHRtcDogJCEiOworCW9wZW4gbXkgJGMsICc+JywgJGN0bXAg b3IgZGllICJDb3VsZCBub3Qgb3BlbiAkY3RtcDogJCEiOworCisJbXkgJGhlYWRlcl9jb21t ZW50ID0KKycvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiAlcworICogICAgR2VuZXJh dGVkIHdhaXQgZXZlbnRzIGluZnJhc3RydWN0dXJlIGNvZGUKKyAqCisgKiBQb3J0aW9ucyBD b3B5cmlnaHQgKGMpIDE5OTYtMjAyMywgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQg R3JvdXAKKyAqIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5NCwgUmVnZW50cyBvZiB0aGUg VW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisgKgorICogTk9URVMKKyAqICAqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioKKyAqICAqKiogRE8gTk9UIEVESVQgVEhJUyBGSUxFISAq KioKKyAqICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqCisgKiAgSXQgaGFz IGJlZW4gR0VORVJBVEVEIGJ5IHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L2dlbmVyYXRl LXdhaXRfZXZlbnRfdHlwZXMucGwKKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqLwor JzsKKworCXByaW50ZiAkaCAkaGVhZGVyX2NvbW1lbnQsICd3YWl0X2V2ZW50X3R5cGVzLmgn OworCXByaW50ZiAkaCAiI2lmbmRlZiBXQUlUX0VWRU5UX1RZUEVTX0hcbiI7CisJcHJpbnRm ICRoICIjZGVmaW5lIFdBSVRfRVZFTlRfVFlQRVNfSFxuXG4iOworCXByaW50ZiAkaCAiI2lu Y2x1ZGUgXCJ1dGlscy93YWl0X2V2ZW50LmhcIlxuXG4iOworCisJcHJpbnRmICRjICRoZWFk ZXJfY29tbWVudCwgJ3Bnc3RhdF93YWl0X2V2ZW50LmMnOworCisJIyB1YygpIGlzIGJlaW5n IHVzZWQgdG8gZm9yY2UgdGhlIGNvbXBhcmlzb24gdG8gYmUgY2FzZS1pbnNlbnNpdGl2ZS4K Kwlmb3JlYWNoIG15ICR3YWl0Y2xhc3MgKHNvcnQgeyB1YygkYSkgY21wIHVjKCRiKSB9IGtl eXMgJWhhc2h3ZSkKKwl7CisKKwkJIyBEb24ndCBnZW5lcmF0ZSAuYyBhbmQgLmggZmlsZXMg Zm9yIExXTG9jayBhbmQgTG9jaywgdGhlc2UgYXJlCisJCSMgaGFuZGxlZCBpbmRlcGVuZGVu dGx5LgorCQluZXh0CisJCSAgaWYgKCAkd2FpdGNsYXNzID1+IC9eV2FpdEV2ZW50TFdMb2Nr JC8KKwkJCXx8ICR3YWl0Y2xhc3MgPX4gL15XYWl0RXZlbnRMb2NrJC8pOworCisJCW15ICRs YXN0ID0gJHdhaXRjbGFzczsKKwkJJGxhc3QgPX4gcy9eV2FpdEV2ZW50Ly87CisJCW15ICRs YXN0dWMgPSB1YyAkbGFzdDsKKwkJbXkgJGxhc3RsYyA9IGxjICRsYXN0OworCQlteSAkZmly c3RwYXNzID0gMTsKKwkJbXkgJHBnX3dhaXRfY2xhc3M7CisKKwkJcHJpbnRmICRjCisJCSAg InN0YXRpYyBjb25zdCBjaGFyICpcbnBnc3RhdF9nZXRfd2FpdF8kbGFzdGxjKCR3YWl0Y2xh c3MgdylcbntcbiI7CisJCXByaW50ZiAkYyAiXHRjb25zdCBjaGFyICpldmVudF9uYW1lID0g XCJ1bmtub3duIHdhaXQgZXZlbnRcIjtcblxuIjsKKwkJcHJpbnRmICRjICJcdHN3aXRjaCAo dylcblx0e1xuIjsKKworCQlmb3JlYWNoIG15ICR3ZXYgKEB7ICRoYXNod2V7JHdhaXRjbGFz c30gfSkKKwkJeworCQkJaWYgKCRmaXJzdHBhc3MpCisJCQl7CisJCQkJcHJpbnRmICRoICJ0 eXBlZGVmIGVudW1cbntcbiI7CisJCQkJJHBnX3dhaXRfY2xhc3MgPSAiUEdfV0FJVF8iIC4g JGxhc3R1YzsKKwkJCQlwcmludGYgJGggIlx0JXMgPSAlcyIsICR3ZXYtPlswXSwgJHBnX3dh aXRfY2xhc3M7CisJCQkJJGNvbnRpbnVlID0gIixcbiI7CisJCQl9CisJCQllbHNlCisJCQl7 CisJCQkJcHJpbnRmICRoICIlc1x0JXMiLCAkY29udGludWUsICR3ZXYtPlswXTsKKwkJCQkk Y29udGludWUgPSAiLFxuIjsKKwkJCX0KKwkJCSRmaXJzdHBhc3MgPSAwOworCisJCQlwcmlu dGYgJGMgIlx0XHQgY2FzZSAlczpcbiIsICR3ZXYtPlswXTsKKwkJCXByaW50ZiAkYyAiXHRc dFx0IGV2ZW50X25hbWUgPSAlcztcblx0XHRcdCBicmVhaztcbiIsICR3ZXYtPlsxXTsKKwkJ fQorCisJCXByaW50ZiAkaCAiXG59ICR3YWl0Y2xhc3M7XG5cbiI7CisKKwkJcHJpbnRmICRj ICJcdFx0XHQgLyogbm8gZGVmYXVsdCBjYXNlLCBzbyB0aGF0IGNvbXBpbGVyIHdpbGwgd2Fy biAqL1xuIjsKKwkJcHJpbnRmICRjICJcdH1cblxuIjsKKwkJcHJpbnRmICRjICJcdHJldHVy biBldmVudF9uYW1lO1xuIjsKKwkJcHJpbnRmICRjICJ9XG5cbiI7CisJfQorCisJcHJpbnRm ICRoICIjZW5kaWYgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFdBSVRfRVZFTlRfVFlQ RVNfSCAqLyI7CisJY2xvc2UgJGg7CisJY2xvc2UgJGM7CisKKwlyZW5hbWUoJGh0bXAsICIk b3V0cHV0X3BhdGgvd2FpdF9ldmVudF90eXBlcy5oIikKKwkgIHx8IGRpZSAicmVuYW1lOiAk aHRtcCB0byAkb3V0cHV0X3BhdGgvd2FpdF9ldmVudF90eXBlcy5oOiAkISI7CisJcmVuYW1l KCRjdG1wLCAiJG91dHB1dF9wYXRoL3Bnc3RhdF93YWl0X2V2ZW50LmMiKSB8fCBkaWUgInJl bmFtZTogJGN0bXA6ICQhIjsKK30KKyMgR2VuZXJhdGUgdGhlIC5zZ21sIGZpbGUuCitlbHNp ZiAoJGdlbl9kb2NzKQoreworCSMgSW5jbHVkZSBQSUQgaW4gc3VmZml4IGluIGNhc2UgcGFy YWxsZWwgbWFrZSBydW5zIHRoaXMgbXVsdGlwbGUgdGltZXMuCisJbXkgJHN0bXAgPSAiJG91 dHB1dF9wYXRoL3dhaXRfZXZlbnRfbmFtZXMucy50bXAkJCI7CisJb3BlbiBteSAkcywgJz4n LCAkc3RtcCBvciBkaWUgIkNvdWxkIG5vdCBvcGVuICRzdG1wOiAkISI7CisKKwkjIHVjKCkg aXMgYmVpbmcgdXNlZCB0byBmb3JjZSB0aGUgY29tcGFyaXNvbiB0byBiZSBjYXNlLWluc2Vu c2l0aXZlLgorCWZvcmVhY2ggbXkgJHdhaXRjbGFzcyAoc29ydCB7IHVjKCRhKSBjbXAgdWMo JGIpIH0ga2V5cyAlaGFzaHdlKQorCXsKKwkJbXkgJGxhc3QgPSAkd2FpdGNsYXNzOworCQkk bGFzdCA9fiBzL15XYWl0RXZlbnQvLzsKKwkJbXkgJGxhc3RsYyA9IGxjICRsYXN0OworCisJ CXByaW50ZiAkcyAiICA8dGFibGUgaWQ9XCJ3YWl0LWV2ZW50LSVzLXRhYmxlXCI+XG4iLCAk bGFzdGxjOworCQlwcmludGYgJHMgIiAgIDx0aXRsZT5XYWl0IEV2ZW50cyBvZiBUeXBlIDxs aXRlcmFsPiVzPC9saXRlcmFsPjwvdGl0bGU+XG4iLAorCQkgIHVjZmlyc3QoJGxhc3RsYyk7 CisJCXByaW50ZiAkcyAiICAgPHRncm91cCBjb2xzPVwiMlwiPlxuIjsKKwkJcHJpbnRmICRz ICIgICAgPHRoZWFkPlxuIjsKKwkJcHJpbnRmICRzICIgICAgIDxyb3c+XG4iOworCQlwcmlu dGYgJHMgIiAgICAgIDxlbnRyeT48bGl0ZXJhbD4kbGFzdDwvbGl0ZXJhbD4gV2FpdCBFdmVu dDwvZW50cnk+XG4iOworCQlwcmludGYgJHMgIiAgICAgIDxlbnRyeT5EZXNjcmlwdGlvbjwv ZW50cnk+XG4iOworCQlwcmludGYgJHMgIiAgICAgPC9yb3c+XG4iOworCQlwcmludGYgJHMg IiAgICA8L3RoZWFkPlxuXG4iOworCQlwcmludGYgJHMgIiAgICA8dGJvZHk+XG4iOworCisJ CWZvcmVhY2ggbXkgJHdldiAoQHsgJGhhc2h3ZXskd2FpdGNsYXNzfSB9KQorCQl7CisJCQlw cmludGYgJHMgIiAgICAgPHJvdz5cbiI7CisJCQlwcmludGYgJHMgIiAgICAgIDxlbnRyeT48 bGl0ZXJhbD4lczwvbGl0ZXJhbD48L2VudHJ5PlxuIiwKKwkJCSAgc3Vic3RyICR3ZXYtPlsx XSwgMSwgLTE7CisJCQlwcmludGYgJHMgIiAgICAgIDxlbnRyeT4lczwvZW50cnk+XG4iLCBz dWJzdHIgJHdldi0+WzJdLCAxLCAtMTsKKwkJCXByaW50ZiAkcyAiICAgICA8L3Jvdz5cbiI7 CisJCX0KKworCQlwcmludGYgJHMgIiAgICA8L3Rib2R5PlxuIjsKKwkJcHJpbnRmICRzICIg ICA8L3Rncm91cD5cbiI7CisJCXByaW50ZiAkcyAiICA8L3RhYmxlPlxuXG4iOworCX0KKwor CWNsb3NlICRzOworCisJcmVuYW1lKCRzdG1wLCAiJG91dHB1dF9wYXRoL3dhaXRfZXZlbnRf dHlwZXMuc2dtbCIpCisJICB8fCBkaWUgInJlbmFtZTogJHN0bXA6ICQhIjsKK30KKworY2xv c2UgJHdhaXRfZXZlbnRfbmFtZXM7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9h Y3Rpdml0eS9tZXNvbi5idWlsZCBiL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L21lc29u LmJ1aWxkCmluZGV4IDUxOGVlM2Y3OTguLmYxY2YyYWY3MWYgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL3V0aWxzL2FjdGl2aXR5L21lc29uLmJ1aWxkCisrKyBiL3NyYy9iYWNrZW5kL3V0 aWxzL2FjdGl2aXR5L21lc29uLmJ1aWxkCkBAIC0xLDUgKzEsMTcgQEAKICMgQ29weXJpZ2h0 IChjKSAyMDIyLTIwMjMsIFBvc3RncmVTUUwgR2xvYmFsIERldmVsb3BtZW50IEdyb3VwCiAK K3dhaXRfZXZlbnRfbmFtZXMgPSBjdXN0b21fdGFyZ2V0KCd3YWl0X2V2ZW50X25hbWVzJywK KyAgaW5wdXQ6IGZpbGVzKCcuL3dhaXRfZXZlbnRfbmFtZXMudHh0JyksCisgIG91dHB1dDog WydwZ3N0YXRfd2FpdF9ldmVudC5jJ10sCisgIGNvbW1hbmQ6IFsKKyAgICBwZXJsLCBmaWxl cygnLi9nZW5lcmF0ZS13YWl0X2V2ZW50X3R5cGVzLnBsJyksCisgICAgJy1vJywgJ0BPVVRE SVJAJywgJy0tY29kZScsCisgICAgJ0BJTlBVVEAnCisgIF0sCisgIGluc3RhbGw6IHRydWUs CisgIGluc3RhbGxfZGlyOiBbZmFsc2VdLAorKQorCiBiYWNrZW5kX3NvdXJjZXMgKz0gZmls ZXMoCiAgICdiYWNrZW5kX3Byb2dyZXNzLmMnLAogICAnYmFja2VuZF9zdGF0dXMuYycsCkBA IC0xNyw1ICsyOSwxNyBAQCBiYWNrZW5kX3NvdXJjZXMgKz0gZmlsZXMoCiAgICdwZ3N0YXRf c3Vic2NyaXB0aW9uLmMnLAogICAncGdzdGF0X3dhbC5jJywKICAgJ3Bnc3RhdF94YWN0LmMn LAorKQorCisjIHRoZXNlIGluY2x1ZGUgLmMgZmlsZXMgZ2VuZXJhdGVkIGluIC4uLy4uLy4u L2luY2x1ZGUvYWN0aXZpdHksIHNlZW1zIG5pY2VyIHRvIG5vdAorIyBhZGQgdGhhdCBhcyBh biBpbmNsdWRlIHBhdGggZm9yIHRoZSB3aG9sZSBiYWNrZW5kCit3YWl0ZXZlbnRfc291cmNl cyA9IGZpbGVzKAogICAnd2FpdF9ldmVudC5jJywKICkKKworYmFja2VuZF9saW5rX3dpdGgg Kz0gc3RhdGljX2xpYnJhcnkoJ3dhaXRfZXZlbnRfbmFtZXMnLAorICB3YWl0ZXZlbnRfc291 cmNlcywKKyAgZGVwZW5kZW5jaWVzOiBbYmFja2VuZF9jb2RlXSwKKyAgaW5jbHVkZV9kaXJl Y3RvcmllczogaW5jbHVkZV9kaXJlY3RvcmllcygnLi4vLi4vLi4vaW5jbHVkZS91dGlscycp LAorICBrd2FyZ3M6IGludGVybmFsX2xpYl9hcmdzLAorKQpkaWZmIC0tZ2l0IGEvc3JjL2Jh Y2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudC5jIGIvc3JjL2JhY2tlbmQvdXRpbHMv YWN0aXZpdHkvd2FpdF9ldmVudC5jCmluZGV4IDg1NzJjZjE2OWUuLjRhYWQxMWMxMTEgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnQuYworKysg Yi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS93YWl0X2V2ZW50LmMKQEAgLTIwNiw2MTMg KzIwNiw0IEBAIHBnc3RhdF9nZXRfd2FpdF9ldmVudCh1aW50MzIgd2FpdF9ldmVudF9pbmZv KQogCXJldHVybiBldmVudF9uYW1lOwogfQogCi0vKiAtLS0tLS0tLS0tCi0gKiBwZ3N0YXRf Z2V0X3dhaXRfYWN0aXZpdHkoKSAtCi0gKgotICogQ29udmVydCBXYWl0RXZlbnRBY3Rpdml0 eSB0byBzdHJpbmcuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXN0YXRpYyBjb25zdCBjaGFyICoK LXBnc3RhdF9nZXRfd2FpdF9hY3Rpdml0eShXYWl0RXZlbnRBY3Rpdml0eSB3KQotewotCWNv bnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidW5rbm93biB3YWl0IGV2ZW50IjsKLQotCXN3aXRj aCAodykKLQl7Ci0JCWNhc2UgV0FJVF9FVkVOVF9BUkNISVZFUl9NQUlOOgotCQkJZXZlbnRf bmFtZSA9ICJBcmNoaXZlck1haW4iOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9B VVRPVkFDVVVNX01BSU46Ci0JCQlldmVudF9uYW1lID0gIkF1dG9WYWN1dW1NYWluIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQkdXUklURVJfSElCRVJOQVRFOgotCQkJZXZl bnRfbmFtZSA9ICJCZ1dyaXRlckhpYmVybmF0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlU X0VWRU5UX0JHV1JJVEVSX01BSU46Ci0JCQlldmVudF9uYW1lID0gIkJnV3JpdGVyTWFpbiI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NIRUNLUE9JTlRFUl9NQUlOOgotCQkJ ZXZlbnRfbmFtZSA9ICJDaGVja3BvaW50ZXJNYWluIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfTE9HSUNBTF9BUFBMWV9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2Fs QXBwbHlNYWluIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9MQVVO Q0hFUl9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsTGF1bmNoZXJNYWluIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9QQVJBTExFTF9BUFBMWV9NQUlO OgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsUGFyYWxsZWxBcHBseU1haW4iOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRUNPVkVSWV9XQUxfU1RSRUFNOgotCQkJZXZlbnRf bmFtZSA9ICJSZWNvdmVyeVdhbFN0cmVhbSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VW RU5UX1NZU0xPR0dFUl9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJTeXNMb2dnZXJNYWluIjsK LQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfV0FMX1JFQ0VJVkVSX01BSU46Ci0JCQll dmVudF9uYW1lID0gIldhbFJlY2VpdmVyTWFpbiI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlU X0VWRU5UX1dBTF9TRU5ERVJfTUFJTjoKLQkJCWV2ZW50X25hbWUgPSAiV2FsU2VuZGVyTWFp biI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9XUklURVJfTUFJTjoKLQkJ CWV2ZW50X25hbWUgPSAiV2FsV3JpdGVyTWFpbiI7Ci0JCQlicmVhazsKLQkJCS8qIG5vIGRl ZmF1bHQgY2FzZSwgc28gdGhhdCBjb21waWxlciB3aWxsIHdhcm4gKi8KLQl9Ci0KLQlyZXR1 cm4gZXZlbnRfbmFtZTsKLX0KLQotLyogLS0tLS0tLS0tLQotICogcGdzdGF0X2dldF93YWl0 X2J1ZmZlcnBpbigpIC0KLSAqCi0gKiBDb252ZXJ0IFdhaXRFdmVudEJ1ZmZlclBpbiB0byBz dHJpbmcuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXN0YXRpYyBjb25zdCBjaGFyICoKLXBnc3Rh dF9nZXRfd2FpdF9idWZmZXJwaW4oV2FpdEV2ZW50QnVmZmVyUGluIHcpCi17Ci0JY29uc3Qg Y2hhciAqZXZlbnRfbmFtZSA9ICJ1bmtub3duIHdhaXQgZXZlbnQiOwotCi0Jc3dpdGNoICh3 KQotCXsKLQkJY2FzZSBXQUlUX0VWRU5UX0JVRkZFUl9QSU46Ci0JCQlldmVudF9uYW1lID0g IkJ1ZmZlclBpbiI7Ci0JCQlicmVhazsKLQkJCS8qIG5vIGRlZmF1bHQgY2FzZSwgc28gdGhh dCBjb21waWxlciB3aWxsIHdhcm4gKi8KLQl9Ci0KLQlyZXR1cm4gZXZlbnRfbmFtZTsKLX0K LQotLyogLS0tLS0tLS0tLQotICogcGdzdGF0X2dldF93YWl0X2NsaWVudCgpIC0KLSAqCi0g KiBDb252ZXJ0IFdhaXRFdmVudENsaWVudCB0byBzdHJpbmcuCi0gKiAtLS0tLS0tLS0tCi0g Ki8KLXN0YXRpYyBjb25zdCBjaGFyICoKLXBnc3RhdF9nZXRfd2FpdF9jbGllbnQoV2FpdEV2 ZW50Q2xpZW50IHcpCi17Ci0JY29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJ1bmtub3duIHdh aXQgZXZlbnQiOwotCi0Jc3dpdGNoICh3KQotCXsKLQkJY2FzZSBXQUlUX0VWRU5UX0NMSUVO VF9SRUFEOgotCQkJZXZlbnRfbmFtZSA9ICJDbGllbnRSZWFkIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfQ0xJRU5UX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJDbGllbnRX cml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0dTU19PUEVOX1NFUlZFUjoK LQkJCWV2ZW50X25hbWUgPSAiR1NTT3BlblNlcnZlciI7Ci0JCQlicmVhazsKLQkJY2FzZSBX QUlUX0VWRU5UX0xJQlBRV0FMUkVDRUlWRVJfQ09OTkVDVDoKLQkJCWV2ZW50X25hbWUgPSAi TGliUFFXYWxSZWNlaXZlckNvbm5lY3QiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVO VF9MSUJQUVdBTFJFQ0VJVkVSX1JFQ0VJVkU6Ci0JCQlldmVudF9uYW1lID0gIkxpYlBRV2Fs UmVjZWl2ZXJSZWNlaXZlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfU1NMX09Q RU5fU0VSVkVSOgotCQkJZXZlbnRfbmFtZSA9ICJTU0xPcGVuU2VydmVyIjsKLQkJCWJyZWFr OwotCQljYXNlIFdBSVRfRVZFTlRfV0FMX1NFTkRFUl9XQUlUX1dBTDoKLQkJCWV2ZW50X25h bWUgPSAiV2FsU2VuZGVyV2FpdEZvcldBTCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VW RU5UX1dBTF9TRU5ERVJfV1JJVEVfREFUQToKLQkJCWV2ZW50X25hbWUgPSAiV2FsU2VuZGVy V3JpdGVEYXRhIjsKLQkJCWJyZWFrOwotCQkJLyogbm8gZGVmYXVsdCBjYXNlLCBzbyB0aGF0 IGNvbXBpbGVyIHdpbGwgd2FybiAqLwotCX0KLQotCXJldHVybiBldmVudF9uYW1lOwotfQot Ci0vKiAtLS0tLS0tLS0tCi0gKiBwZ3N0YXRfZ2V0X3dhaXRfZXh0ZW5zaW9uKCkgLQotICoK LSAqIENvbnZlcnQgV2FpdEV2ZW50RXh0ZW5zaW9uIHRvIHN0cmluZy4KLSAqIC0tLS0tLS0t LS0KLSAqLwotc3RhdGljIGNvbnN0IGNoYXIgKgotcGdzdGF0X2dldF93YWl0X2V4dGVuc2lv bihXYWl0RXZlbnRFeHRlbnNpb24gdykKLXsKLQljb25zdCBjaGFyICpldmVudF9uYW1lID0g InVua25vd24gd2FpdCBldmVudCI7Ci0KLQlzd2l0Y2ggKHcpCi0JewotCQljYXNlIFdBSVRf RVZFTlRfRVhURU5TSU9OOgotCQkJZXZlbnRfbmFtZSA9ICJFeHRlbnNpb24iOwotCQkJYnJl YWs7Ci0JCQkvKiBubyBkZWZhdWx0IGNhc2UsIHNvIHRoYXQgY29tcGlsZXIgd2lsbCB3YXJu ICovCi0JfQotCi0JcmV0dXJuIGV2ZW50X25hbWU7Ci19Ci0KLS8qIC0tLS0tLS0tLS0KLSAq IHBnc3RhdF9nZXRfd2FpdF9pcGMoKSAtCi0gKgotICogQ29udmVydCBXYWl0RXZlbnRJUEMg dG8gc3RyaW5nLgotICogLS0tLS0tLS0tLQotICovCi1zdGF0aWMgY29uc3QgY2hhciAqCi1w Z3N0YXRfZ2V0X3dhaXRfaXBjKFdhaXRFdmVudElQQyB3KQotewotCWNvbnN0IGNoYXIgKmV2 ZW50X25hbWUgPSAidW5rbm93biB3YWl0IGV2ZW50IjsKLQotCXN3aXRjaCAodykKLQl7Ci0J CWNhc2UgV0FJVF9FVkVOVF9BUFBFTkRfUkVBRFk6Ci0JCQlldmVudF9uYW1lID0gIkFwcGVu ZFJlYWR5IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQVJDSElWRV9DTEVBTlVQ X0NPTU1BTkQ6Ci0JCQlldmVudF9uYW1lID0gIkFyY2hpdmVDbGVhbnVwQ29tbWFuZCI7Ci0J CQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0FSQ0hJVkVfQ09NTUFORDoKLQkJCWV2ZW50 X25hbWUgPSAiQXJjaGl2ZUNvbW1hbmQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVO VF9CQUNLRU5EX1RFUk1JTkFUSU9OOgotCQkJZXZlbnRfbmFtZSA9ICJCYWNrZW5kVGVybWlu YXRpb24iOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9CQUNLVVBfV0FJVF9XQUxf QVJDSElWRToKLQkJCWV2ZW50X25hbWUgPSAiQmFja3VwV2FpdFdhbEFyY2hpdmUiOwotCQkJ YnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9CR1dPUktFUl9TSFVURE9XTjoKLQkJCWV2ZW50 X25hbWUgPSAiQmdXb3JrZXJTaHV0ZG93biI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VW RU5UX0JHV09SS0VSX1NUQVJUVVA6Ci0JCQlldmVudF9uYW1lID0gIkJnV29ya2VyU3RhcnR1 cCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0JUUkVFX1BBR0U6Ci0JCQlldmVu dF9uYW1lID0gIkJ0cmVlUGFnZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0JV RkZFUl9JTzoKLQkJCWV2ZW50X25hbWUgPSAiQnVmZmVySU8iOwotCQkJYnJlYWs7Ci0JCWNh c2UgV0FJVF9FVkVOVF9DSEVDS1BPSU5UX0RPTkU6Ci0JCQlldmVudF9uYW1lID0gIkNoZWNr cG9pbnREb25lIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQ0hFQ0tQT0lOVF9T VEFSVDoKLQkJCWV2ZW50X25hbWUgPSAiQ2hlY2twb2ludFN0YXJ0IjsKLQkJCWJyZWFrOwot CQljYXNlIFdBSVRfRVZFTlRfRVhFQ1VURV9HQVRIRVI6Ci0JCQlldmVudF9uYW1lID0gIkV4 ZWN1dGVHYXRoZXIiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0JBVENI X0FMTE9DQVRFOgotCQkJZXZlbnRfbmFtZSA9ICJIYXNoQmF0Y2hBbGxvY2F0ZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfQkFUQ0hfRUxFQ1Q6Ci0JCQlldmVudF9u YW1lID0gIkhhc2hCYXRjaEVsZWN0IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf SEFTSF9CQVRDSF9MT0FEOgotCQkJZXZlbnRfbmFtZSA9ICJIYXNoQmF0Y2hMb2FkIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfSEFTSF9CVUlMRF9BTExPQ0FURToKLQkJCWV2 ZW50X25hbWUgPSAiSGFzaEJ1aWxkQWxsb2NhdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJ VF9FVkVOVF9IQVNIX0JVSUxEX0VMRUNUOgotCQkJZXZlbnRfbmFtZSA9ICJIYXNoQnVpbGRF bGVjdCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfQlVJTERfSEFTSF9J Tk5FUjoKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEJ1aWxkSGFzaElubmVyIjsKLQkJCWJyZWFr OwotCQljYXNlIFdBSVRfRVZFTlRfSEFTSF9CVUlMRF9IQVNIX09VVEVSOgotCQkJZXZlbnRf bmFtZSA9ICJIYXNoQnVpbGRIYXNoT3V0ZXIiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9F VkVOVF9IQVNIX0dST1dfQkFUQ0hFU19ERUNJREU6Ci0JCQlldmVudF9uYW1lID0gIkhhc2hH cm93QmF0Y2hlc0RlY2lkZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hf R1JPV19CQVRDSEVTX0VMRUNUOgotCQkJZXZlbnRfbmFtZSA9ICJIYXNoR3Jvd0JhdGNoZXNF bGVjdCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfR1JPV19CQVRDSEVT X0ZJTklTSDoKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEdyb3dCYXRjaGVzRmluaXNoIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfSEFTSF9HUk9XX0JBVENIRVNfUkVBTExPQ0FU RToKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEdyb3dCYXRjaGVzUmVhbGxvY2F0ZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfR1JPV19CQVRDSEVTX1JFUEFSVElUSU9O OgotCQkJZXZlbnRfbmFtZSA9ICJIYXNoR3Jvd0JhdGNoZXNSZXBhcnRpdGlvbiI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfR1JPV19CVUNLRVRTX0VMRUNUOgotCQkJ ZXZlbnRfbmFtZSA9ICJIYXNoR3Jvd0J1Y2tldHNFbGVjdCI7Ci0JCQlicmVhazsKLQkJY2Fz ZSBXQUlUX0VWRU5UX0hBU0hfR1JPV19CVUNLRVRTX1JFQUxMT0NBVEU6Ci0JCQlldmVudF9u YW1lID0gIkhhc2hHcm93QnVja2V0c1JlYWxsb2NhdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2Ug V0FJVF9FVkVOVF9IQVNIX0dST1dfQlVDS0VUU19SRUlOU0VSVDoKLQkJCWV2ZW50X25hbWUg PSAiSGFzaEdyb3dCdWNrZXRzUmVpbnNlcnQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9F VkVOVF9MT0dJQ0FMX0FQUExZX1NFTkRfREFUQToKLQkJCWV2ZW50X25hbWUgPSAiTG9naWNh bEFwcGx5U2VuZERhdGEiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MT0dJQ0FM X1BBUkFMTEVMX0FQUExZX1NUQVRFX0NIQU5HRToKLQkJCWV2ZW50X25hbWUgPSAiTG9naWNh bFBhcmFsbGVsQXBwbHlTdGF0ZUNoYW5nZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VW RU5UX0xPR0lDQUxfU1lOQ19EQVRBOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsU3luY0Rh dGEiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MT0dJQ0FMX1NZTkNfU1RBVEVf Q0hBTkdFOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsU3luY1N0YXRlQ2hhbmdlIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTVFfSU5URVJOQUw6Ci0JCQlldmVudF9uYW1l ID0gIk1lc3NhZ2VRdWV1ZUludGVybmFsIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZF TlRfTVFfUFVUX01FU1NBR0U6Ci0JCQlldmVudF9uYW1lID0gIk1lc3NhZ2VRdWV1ZVB1dE1l c3NhZ2UiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9NUV9SRUNFSVZFOgotCQkJ ZXZlbnRfbmFtZSA9ICJNZXNzYWdlUXVldWVSZWNlaXZlIjsKLQkJCWJyZWFrOwotCQljYXNl IFdBSVRfRVZFTlRfTVFfU0VORDoKLQkJCWV2ZW50X25hbWUgPSAiTWVzc2FnZVF1ZXVlU2Vu ZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1BBUkFMTEVMX0JJVE1BUF9TQ0FO OgotCQkJZXZlbnRfbmFtZSA9ICJQYXJhbGxlbEJpdG1hcFNjYW4iOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9QQVJBTExFTF9DUkVBVEVfSU5ERVhfU0NBTjoKLQkJCWV2ZW50 X25hbWUgPSAiUGFyYWxsZWxDcmVhdGVJbmRleFNjYW4iOwotCQkJYnJlYWs7Ci0JCWNhc2Ug V0FJVF9FVkVOVF9QQVJBTExFTF9GSU5JU0g6Ci0JCQlldmVudF9uYW1lID0gIlBhcmFsbGVs RmluaXNoIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUFJPQ0FSUkFZX0dST1VQ X1VQREFURToKLQkJCWV2ZW50X25hbWUgPSAiUHJvY0FycmF5R3JvdXBVcGRhdGUiOwotCQkJ YnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9QUk9DX1NJR05BTF9CQVJSSUVSOgotCQkJZXZl bnRfbmFtZSA9ICJQcm9jU2lnbmFsQmFycmllciI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlU X0VWRU5UX1BST01PVEU6Ci0JCQlldmVudF9uYW1lID0gIlByb21vdGUiOwotCQkJYnJlYWs7 Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRUNPVkVSWV9DT05GTElDVF9TTkFQU0hPVDoKLQkJCWV2 ZW50X25hbWUgPSAiUmVjb3ZlcnlDb25mbGljdFNuYXBzaG90IjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfUkVDT1ZFUllfQ09ORkxJQ1RfVEFCTEVTUEFDRToKLQkJCWV2ZW50 X25hbWUgPSAiUmVjb3ZlcnlDb25mbGljdFRhYmxlc3BhY2UiOwotCQkJYnJlYWs7Ci0JCWNh c2UgV0FJVF9FVkVOVF9SRUNPVkVSWV9FTkRfQ09NTUFORDoKLQkJCWV2ZW50X25hbWUgPSAi UmVjb3ZlcnlFbmRDb21tYW5kIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVD T1ZFUllfUEFVU0U6Ci0JCQlldmVudF9uYW1lID0gIlJlY292ZXJ5UGF1c2UiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9PUklHSU5fRFJPUDoKLQkJCWV2 ZW50X25hbWUgPSAiUmVwbGljYXRpb25PcmlnaW5Ecm9wIjsKLQkJCWJyZWFrOwotCQljYXNl IFdBSVRfRVZFTlRfUkVQTElDQVRJT05fU0xPVF9EUk9QOgotCQkJZXZlbnRfbmFtZSA9ICJS ZXBsaWNhdGlvblNsb3REcm9wIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVT VE9SRV9DT01NQU5EOgotCQkJZXZlbnRfbmFtZSA9ICJSZXN0b3JlQ29tbWFuZCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1NBRkVfU05BUFNIT1Q6Ci0JCQlldmVudF9uYW1l ID0gIlNhZmVTbmFwc2hvdCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1NZTkNf UkVQOgotCQkJZXZlbnRfbmFtZSA9ICJTeW5jUmVwIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfV0FMX1JFQ0VJVkVSX0VYSVQ6Ci0JCQlldmVudF9uYW1lID0gIldhbFJlY2Vp dmVyRXhpdCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9SRUNFSVZFUl9X QUlUX1NUQVJUOgotCQkJZXZlbnRfbmFtZSA9ICJXYWxSZWNlaXZlcldhaXRTdGFydCI7Ci0J CQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1hBQ1RfR1JPVVBfVVBEQVRFOgotCQkJZXZl bnRfbmFtZSA9ICJYYWN0R3JvdXBVcGRhdGUiOwotCQkJYnJlYWs7Ci0JCQkvKiBubyBkZWZh dWx0IGNhc2UsIHNvIHRoYXQgY29tcGlsZXIgd2lsbCB3YXJuICovCi0JfQotCi0JcmV0dXJu IGV2ZW50X25hbWU7Ci19Ci0KLS8qIC0tLS0tLS0tLS0KLSAqIHBnc3RhdF9nZXRfd2FpdF90 aW1lb3V0KCkgLQotICoKLSAqIENvbnZlcnQgV2FpdEV2ZW50VGltZW91dCB0byBzdHJpbmcu Ci0gKiAtLS0tLS0tLS0tCi0gKi8KLXN0YXRpYyBjb25zdCBjaGFyICoKLXBnc3RhdF9nZXRf d2FpdF90aW1lb3V0KFdhaXRFdmVudFRpbWVvdXQgdykKLXsKLQljb25zdCBjaGFyICpldmVu dF9uYW1lID0gInVua25vd24gd2FpdCBldmVudCI7Ci0KLQlzd2l0Y2ggKHcpCi0JewotCQlj YXNlIFdBSVRfRVZFTlRfQkFTRV9CQUNLVVBfVEhST1RUTEU6Ci0JCQlldmVudF9uYW1lID0g IkJhc2VCYWNrdXBUaHJvdHRsZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NI RUNLUE9JTlRfV1JJVEVfREVMQVk6Ci0JCQlldmVudF9uYW1lID0gIkNoZWNrcG9pbnRXcml0 ZURlbGF5IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUEdfU0xFRVA6Ci0JCQll dmVudF9uYW1lID0gIlBnU2xlZXAiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9S RUNPVkVSWV9BUFBMWV9ERUxBWToKLQkJCWV2ZW50X25hbWUgPSAiUmVjb3ZlcnlBcHBseURl bGF5IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVDT1ZFUllfUkVUUklFVkVf UkVUUllfSU5URVJWQUw6Ci0JCQlldmVudF9uYW1lID0gIlJlY292ZXJ5UmV0cmlldmVSZXRy eUludGVydmFsIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVHSVNURVJfU1lO Q19SRVFVRVNUOgotCQkJZXZlbnRfbmFtZSA9ICJSZWdpc3RlclN5bmNSZXF1ZXN0IjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfU1BJTl9ERUxBWToKLQkJCWV2ZW50X25hbWUg PSAiU3BpbkRlbGF5IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfVkFDVVVNX0RF TEFZOgotCQkJZXZlbnRfbmFtZSA9ICJWYWN1dW1EZWxheSI7Ci0JCQlicmVhazsKLQkJY2Fz ZSBXQUlUX0VWRU5UX1ZBQ1VVTV9UUlVOQ0FURToKLQkJCWV2ZW50X25hbWUgPSAiVmFjdXVt VHJ1bmNhdGUiOwotCQkJYnJlYWs7Ci0JCQkvKiBubyBkZWZhdWx0IGNhc2UsIHNvIHRoYXQg Y29tcGlsZXIgd2lsbCB3YXJuICovCi0JfQotCi0JcmV0dXJuIGV2ZW50X25hbWU7Ci19Ci0K LS8qIC0tLS0tLS0tLS0KLSAqIHBnc3RhdF9nZXRfd2FpdF9pbygpIC0KLSAqCi0gKiBDb252 ZXJ0IFdhaXRFdmVudElPIHRvIHN0cmluZy4KLSAqIC0tLS0tLS0tLS0KLSAqLwotc3RhdGlj IGNvbnN0IGNoYXIgKgotcGdzdGF0X2dldF93YWl0X2lvKFdhaXRFdmVudElPIHcpCi17Ci0J Y29uc3QgY2hhciAqZXZlbnRfbmFtZSA9ICJ1bmtub3duIHdhaXQgZXZlbnQiOwotCi0Jc3dp dGNoICh3KQotCXsKLQkJY2FzZSBXQUlUX0VWRU5UX0JBU0VCQUNLVVBfUkVBRDoKLQkJCWV2 ZW50X25hbWUgPSAiQmFzZUJhY2t1cFJlYWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9F VkVOVF9CQVNFQkFDS1VQX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIkJhc2VCYWNrdXBTeW5j IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQkFTRUJBQ0tVUF9XUklURToKLQkJ CWV2ZW50X25hbWUgPSAiQmFzZUJhY2t1cFdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfQlVGRklMRV9SRUFEOgotCQkJZXZlbnRfbmFtZSA9ICJCdWZGaWxlUmVhZCI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0JVRkZJTEVfV1JJVEU6Ci0JCQlldmVu dF9uYW1lID0gIkJ1ZkZpbGVXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X0JVRkZJTEVfVFJVTkNBVEU6Ci0JCQlldmVudF9uYW1lID0gIkJ1ZkZpbGVUcnVuY2F0ZSI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9SRUFEOgotCQkJ ZXZlbnRfbmFtZSA9ICJDb250cm9sRmlsZVJlYWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJ VF9FVkVOVF9DT05UUk9MX0ZJTEVfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiQ29udHJvbEZp bGVTeW5jIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1NZ TkNfVVBEQVRFOgotCQkJZXZlbnRfbmFtZSA9ICJDb250cm9sRmlsZVN5bmNVcGRhdGUiOwot CQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9DT05UUk9MX0ZJTEVfV1JJVEU6Ci0JCQll dmVudF9uYW1lID0gIkNvbnRyb2xGaWxlV3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJ VF9FVkVOVF9DT05UUk9MX0ZJTEVfV1JJVEVfVVBEQVRFOgotCQkJZXZlbnRfbmFtZSA9ICJD b250cm9sRmlsZVdyaXRlVXBkYXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf Q09QWV9GSUxFX1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIkNvcHlGaWxlUmVhZCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NPUFlfRklMRV9XUklURToKLQkJCWV2ZW50X25h bWUgPSAiQ29weUZpbGVXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0RB VEFfRklMRV9FWFRFTkQ6Ci0JCQlldmVudF9uYW1lID0gIkRhdGFGaWxlRXh0ZW5kIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfREFUQV9GSUxFX0ZMVVNIOgotCQkJZXZlbnRf bmFtZSA9ICJEYXRhRmlsZUZsdXNoIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf REFUQV9GSUxFX0lNTUVESUFURV9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJEYXRhRmlsZUlt bWVkaWF0ZVN5bmMiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9EQVRBX0ZJTEVf UFJFRkVUQ0g6Ci0JCQlldmVudF9uYW1lID0gIkRhdGFGaWxlUHJlZmV0Y2giOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9EQVRBX0ZJTEVfUkVBRDoKLQkJCWV2ZW50X25hbWUg PSAiRGF0YUZpbGVSZWFkIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfREFUQV9G SUxFX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIkRhdGFGaWxlU3luYyI7Ci0JCQlicmVhazsK LQkJY2FzZSBXQUlUX0VWRU5UX0RBVEFfRklMRV9UUlVOQ0FURToKLQkJCWV2ZW50X25hbWUg PSAiRGF0YUZpbGVUcnVuY2F0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0RB VEFfRklMRV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiRGF0YUZpbGVXcml0ZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0RTTV9BTExPQ0FURToKLQkJCWV2ZW50X25hbWUg PSAiRFNNQWxsb2NhdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9EU01fRklM TF9aRVJPX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJEU01GaWxsWmVyb1dyaXRlIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9DS19GSUxFX0FERFRPREFUQURJUl9SRUFE OgotCQkJZXZlbnRfbmFtZSA9ICJMb2NrRmlsZUFkZFRvRGF0YURpclJlYWQiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQUREVE9EQVRBRElSX1NZTkM6Ci0J CQlldmVudF9uYW1lID0gIkxvY2tGaWxlQWRkVG9EYXRhRGlyU3luYyI7Ci0JCQlicmVhazsK LQkJY2FzZSBXQUlUX0VWRU5UX0xPQ0tfRklMRV9BRERUT0RBVEFESVJfV1JJVEU6Ci0JCQll dmVudF9uYW1lID0gIkxvY2tGaWxlQWRkVG9EYXRhRGlyV3JpdGUiOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQ1JFQVRFX1JFQUQ6Ci0JCQlldmVudF9uYW1l ID0gIkxvY2tGaWxlQ3JlYXRlUmVhZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X0xPQ0tfRklMRV9DUkVBVEVfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiTG9ja0ZpbGVDcmVh dGVTeW5jIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFU RV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiTG9ja0ZpbGVDcmVhdGVXcml0ZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xPQ0tfRklMRV9SRUNIRUNLREFUQURJUl9SRUFE OgotCQkJZXZlbnRfbmFtZSA9ICJMb2NrRmlsZVJlQ2hlY2tEYXRhRGlyUmVhZCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9DSEVDS1BPSU5UX1NZ TkM6Ci0JCQlldmVudF9uYW1lID0gIkxvZ2ljYWxSZXdyaXRlQ2hlY2twb2ludFN5bmMiOwot CQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MT0dJQ0FMX1JFV1JJVEVfTUFQUElOR19T WU5DOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsUmV3cml0ZU1hcHBpbmdTeW5jIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX01BUFBJTkdfV1JJ VEU6Ci0JCQlldmVudF9uYW1lID0gIkxvZ2ljYWxSZXdyaXRlTWFwcGluZ1dyaXRlIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX1NZTkM6Ci0JCQll dmVudF9uYW1lID0gIkxvZ2ljYWxSZXdyaXRlU3luYyI7Ci0JCQlicmVhazsKLQkJY2FzZSBX QUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9UUlVOQ0FURToKLQkJCWV2ZW50X25hbWUgPSAi TG9naWNhbFJld3JpdGVUcnVuY2F0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X0xPR0lDQUxfUkVXUklURV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiTG9naWNhbFJld3Jp dGVXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFTEFUSU9OX01BUF9S RUFEOgotCQkJZXZlbnRfbmFtZSA9ICJSZWxhdGlvbk1hcFJlYWQiOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9SRUxBVElPTl9NQVBfUkVQTEFDRToKLQkJCWV2ZW50X25hbWUg PSAiUmVsYXRpb25NYXBSZXBsYWNlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf UkVMQVRJT05fTUFQX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJSZWxhdGlvbk1hcFdyaXRl IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVPUkRFUl9CVUZGRVJfUkVBRDoK LQkJCWV2ZW50X25hbWUgPSAiUmVvcmRlckJ1ZmZlclJlYWQiOwotCQkJYnJlYWs7Ci0JCWNh c2UgV0FJVF9FVkVOVF9SRU9SREVSX0JVRkZFUl9XUklURToKLQkJCWV2ZW50X25hbWUgPSAi UmVvcmRlckJ1ZmZlcldyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVP UkRFUl9MT0dJQ0FMX01BUFBJTkdfUkVBRDoKLQkJCWV2ZW50X25hbWUgPSAiUmVvcmRlckxv Z2ljYWxNYXBwaW5nUmVhZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFUExJ Q0FUSU9OX1NMT1RfUkVBRDoKLQkJCWV2ZW50X25hbWUgPSAiUmVwbGljYXRpb25TbG90UmVh ZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfUkVT VE9SRV9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJSZXBsaWNhdGlvblNsb3RSZXN0b3JlU3lu YyI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfU1lO QzoKLQkJCWV2ZW50X25hbWUgPSAiUmVwbGljYXRpb25TbG90U3luYyI7Ci0JCQlicmVhazsK LQkJY2FzZSBXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfV1JJVEU6Ci0JCQlldmVudF9u YW1lID0gIlJlcGxpY2F0aW9uU2xvdFdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRf RVZFTlRfU0xSVV9GTFVTSF9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJTTFJVRmx1c2hTeW5j IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfU0xSVV9SRUFEOgotCQkJZXZlbnRf bmFtZSA9ICJTTFJVUmVhZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1NMUlVf U1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiU0xSVVN5bmMiOwotCQkJYnJlYWs7Ci0JCWNhc2Ug V0FJVF9FVkVOVF9TTFJVX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJTTFJVV3JpdGUiOwot CQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9TTkFQQlVJTERfUkVBRDoKLQkJCWV2ZW50 X25hbWUgPSAiU25hcGJ1aWxkUmVhZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X1NOQVBCVUlMRF9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJTbmFwYnVpbGRTeW5jIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfU05BUEJVSUxEX1dSSVRFOgotCQkJZXZlbnRf bmFtZSA9ICJTbmFwYnVpbGRXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X1RJTUVMSU5FX0hJU1RPUllfRklMRV9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJUaW1lbGlu ZUhpc3RvcnlGaWxlU3luYyI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1RJTUVM SU5FX0hJU1RPUllfRklMRV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiVGltZWxpbmVIaXN0 b3J5RmlsZVdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfVElNRUxJTkVf SElTVE9SWV9SRUFEOgotCQkJZXZlbnRfbmFtZSA9ICJUaW1lbGluZUhpc3RvcnlSZWFkIjsK LQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9SWV9TWU5DOgot CQkJZXZlbnRfbmFtZSA9ICJUaW1lbGluZUhpc3RvcnlTeW5jIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9SWV9XUklURToKLQkJCWV2ZW50X25hbWUg PSAiVGltZWxpbmVIaXN0b3J5V3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVO VF9UV09QSEFTRV9GSUxFX1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIlR3b3BoYXNlRmlsZVJl YWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9UV09QSEFTRV9GSUxFX1NZTkM6 Ci0JCQlldmVudF9uYW1lID0gIlR3b3BoYXNlRmlsZVN5bmMiOwotCQkJYnJlYWs7Ci0JCWNh c2UgV0FJVF9FVkVOVF9UV09QSEFTRV9GSUxFX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJU d29waGFzZUZpbGVXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1ZFUlNJ T05fRklMRV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiVmVyc2lvbkZpbGVXcml0ZSI7Ci0J CQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTFNFTkRFUl9USU1FTElORV9ISVNUT1JZ X1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIldBTFNlbmRlclRpbWVsaW5lSGlzdG9yeVJlYWQi OwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxfQk9PVFNUUkFQX1NZTkM6Ci0J CQlldmVudF9uYW1lID0gIldBTEJvb3RzdHJhcFN5bmMiOwotCQkJYnJlYWs7Ci0JCWNhc2Ug V0FJVF9FVkVOVF9XQUxfQk9PVFNUUkFQX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJXQUxC b290c3RyYXBXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9DT1BZ X1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIldBTENvcHlSZWFkIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfV0FMX0NPUFlfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiV0FMQ29w eVN5bmMiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxfQ09QWV9XUklURToK LQkJCWV2ZW50X25hbWUgPSAiV0FMQ29weVdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfV0FMX0lOSVRfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiV0FMSW5pdFN5bmMi OwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxfSU5JVF9XUklURToKLQkJCWV2 ZW50X25hbWUgPSAiV0FMSW5pdFdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZF TlRfV0FMX1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIldBTFJlYWQiOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9XQUxfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiV0FMU3luYyI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9TWU5DX01FVEhPRF9BU1NJR046 Ci0JCQlldmVudF9uYW1lID0gIldBTFN5bmNNZXRob2RBc3NpZ24iOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9XQUxfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIldBTFdyaXRl IjsKLQkJCWJyZWFrOwotCi0JCQkvKiBubyBkZWZhdWx0IGNhc2UsIHNvIHRoYXQgY29tcGls ZXIgd2lsbCB3YXJuICovCi0JfQotCi0JcmV0dXJuIGV2ZW50X25hbWU7Ci19CisjaW5jbHVk ZSAicGdzdGF0X3dhaXRfZXZlbnQuYyIKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxz L2FjdGl2aXR5L3dhaXRfZXZlbnRfbmFtZXMudHh0IGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0 aXZpdHkvd2FpdF9ldmVudF9uYW1lcy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMC4uMmU3NDRlYThjNwotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfbmFtZXMudHh0CkBAIC0wLDAgKzEsMzcxIEBA CisjCisjIHdhaXRfZXZlbnRfbmFtZXMudHh0CisjICAgICAgUG9zdGdyZVNRTCB3YWl0IGV2 ZW50cworIworIyBDb3B5cmlnaHQgKGMpIDIwMjMsIFBvc3RncmVTUUwgR2xvYmFsIERldmVs b3BtZW50IEdyb3VwCisjCisjIFRoaXMgbGlzdCBzZXJ2ZXMgYXMgdGhlIGJhc2lzIGZvciBn ZW5lcmF0aW5nIHNvdXJjZSBhbmQgZG9jdW1lbnRhdGlvbiBmaWxlcworIyByZWxhdGVkIHRv IHdhaXQgZXZlbnRzLgorIworIyBUaGUgZmlsZXMgZ2VuZXJhdGVkIGZyb20gdGhpcyBvbmUg YXJlOgorIworIyAgIHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfdHlw ZXMuaAorIyAgICAgIHR5cGVkZWYgZW51bSBkZWZpbml0aW9ucyBmb3Igd2FpdCBldmVudHMu CisjCisjICAgc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3dhaXRfZXZlbnQu YworIyAgICAgIEMgZnVuY3Rpb25zIHRvIGdldCB0aGUgd2FpdCBldmVudCBuYW1lIGJhc2Vk IG9uIHRoZSBlbnVtLgorIworIyAgIHNyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3dhaXRf ZXZlbnRfdHlwZXMuc2dtbAorIyAgICAgIFNHTUwgdGFibGVzIG9mIHdhaXQgZXZlbnRzIGZv ciBpbmNsdXNpb24gaW4gdGhlIGRvY3VtZW50YXRpb24uCisjCisjIFRoaXMgZmlsZSBkZWZp bmVzIG9uZSB3YWl0IGV2ZW50IHBlciBsaW5lLCB3aXRoIHRoZSB0aHJlZSBmb2xsb3dpbmcK KyMgdGFiLXNlcGFyYXRlZCBmaWVsZHM6CisjCisjICAgICAgIkMgc3ltYm9sIGluIGVudW1z IiAiZm9ybWF0IGluIHRoZSBzeXN0ZW0gdmlld3MiICJkZXNjcmlwdGlvbiBpbiB0aGUgZG9j cyIKKyMKKyMgV2hlbiBhZGRpbmcgYSBuZXcgd2FpdCBldmVudCwgbWFrZSBzdXJlIGl0IGlz IHBsYWNlZCBpbiB0aGUgYXBwcm9wcmlhdGUKKyMgQ2xhc3NOYW1lIHNlY3Rpb24uCisjCisj IFdhaXRFdmVudExXTG9jayBhbmQgV2FpdEV2ZW50TG9jayBoYXZlIHRoZWlyIG93biBDIGNv ZGUgZm9yIHRoZWlyIHdhaXQgZXZlbnQKKyMgZW51bXMgYW5kIGZ1bmN0aW9uIG5hbWVzLiAg SGVuY2UsIGZvciB0aGVzZSwgb25seSB0aGUgU0dNTCBkb2N1bWVudGF0aW9uIGlzCisjIGdl bmVyYXRlZC4KKyMKKyMgVGhpcyBmaWxlIGlzIGZlZCB0byBzcmMvYmFja2VuZC91dGlscy9h Y3Rpdml0eS9nZW5lcmF0ZS13YWl0X2V2ZW50X3R5cGVzLnBsLgorIworCisKKyMKKyMgV2Fp dCBFdmVudHMgLSBBY3Rpdml0eQorIworIyBVc2UgdGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJv Y2VzcyBpcyB3YWl0aW5nIGJlY2F1c2UgaXQgaGFzIG5vIHdvcmsgdG8gZG8sCisjIHVubGVz cyB0aGUgIkNsaWVudCIgb3IgIlRpbWVvdXQiIGNhdGVnb3J5IGRlc2NyaWJlcyB0aGUgc2l0 dWF0aW9uIGJldHRlci4KKyMgVHlwaWNhbGx5LCB0aGlzIHNob3VsZCBvbmx5IGJlIHVzZWQg Zm9yIGJhY2tncm91bmQgcHJvY2Vzc2VzLgorIworCitTZWN0aW9uOiBDbGFzc05hbWUgLSBX YWl0RXZlbnRBY3Rpdml0eQorCitXQUlUX0VWRU5UX0FSQ0hJVkVSX01BSU4JIkFyY2hpdmVy TWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIGFyY2hpdmVyIHByb2Nlc3MuIgorV0FJ VF9FVkVOVF9BVVRPVkFDVVVNX01BSU4JIkF1dG9WYWN1dW1NYWluIgkiV2FpdGluZyBpbiBt YWluIGxvb3Agb2YgYXV0b3ZhY3V1bSBsYXVuY2hlciBwcm9jZXNzLiIKK1dBSVRfRVZFTlRf QkdXUklURVJfSElCRVJOQVRFCSJCZ1dyaXRlckhpYmVybmF0ZSIJIldhaXRpbmcgaW4gYmFj a2dyb3VuZCB3cml0ZXIgcHJvY2VzcywgaGliZXJuYXRpbmcuIgorV0FJVF9FVkVOVF9CR1dS SVRFUl9NQUlOCSJCZ1dyaXRlck1haW4iCSJXYWl0aW5nIGluIG1haW4gbG9vcCBvZiBiYWNr Z3JvdW5kIHdyaXRlciBwcm9jZXNzLiIKK1dBSVRfRVZFTlRfQ0hFQ0tQT0lOVEVSX01BSU4J IkNoZWNrcG9pbnRlck1haW4iCSJXYWl0aW5nIGluIG1haW4gbG9vcCBvZiBjaGVja3BvaW50 ZXIgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX0xPR0lDQUxfQVBQTFlfTUFJTgkiTG9naWNhbEFw cGx5TWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIGxvZ2ljYWwgcmVwbGljYXRpb24g YXBwbHkgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX0xPR0lDQUxfTEFVTkNIRVJfTUFJTgkiTG9n aWNhbExhdW5jaGVyTWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIGxvZ2ljYWwgcmVw bGljYXRpb24gbGF1bmNoZXIgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX0xPR0lDQUxfUEFSQUxM RUxfQVBQTFlfTUFJTgkiTG9naWNhbFBhcmFsbGVsQXBwbHlNYWluIgkiV2FpdGluZyBpbiBt YWluIGxvb3Agb2YgbG9naWNhbCByZXBsaWNhdGlvbiBwYXJhbGxlbCBhcHBseSBwcm9jZXNz LiIKK1dBSVRfRVZFTlRfUkVDT1ZFUllfV0FMX1NUUkVBTQkiUmVjb3ZlcnlXYWxTdHJlYW0i CSJXYWl0aW5nIGluIG1haW4gbG9vcCBvZiBzdGFydHVwIHByb2Nlc3MgZm9yIFdBTCB0byBh cnJpdmUsIGR1cmluZyBzdHJlYW1pbmcgcmVjb3ZlcnkuIgorV0FJVF9FVkVOVF9TWVNMT0dH RVJfTUFJTgkiU3lzTG9nZ2VyTWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIHN5c2xv Z2dlciBwcm9jZXNzLiIKK1dBSVRfRVZFTlRfV0FMX1JFQ0VJVkVSX01BSU4JIldhbFJlY2Vp dmVyTWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIFdBTCByZWNlaXZlciBwcm9jZXNz LiIKK1dBSVRfRVZFTlRfV0FMX1NFTkRFUl9NQUlOCSJXYWxTZW5kZXJNYWluIgkiV2FpdGlu ZyBpbiBtYWluIGxvb3Agb2YgV0FMIHNlbmRlciBwcm9jZXNzLiIKK1dBSVRfRVZFTlRfV0FM X1dSSVRFUl9NQUlOCSJXYWxXcml0ZXJNYWluIgkiV2FpdGluZyBpbiBtYWluIGxvb3Agb2Yg V0FMIHdyaXRlciBwcm9jZXNzLiIKKworCisjCisjIFdhaXQgRXZlbnRzIC0gQ2xpZW50Cisj CisjIFVzZSB0aGlzIGNhdGVnb3J5IHdoZW4gYSBwcm9jZXNzIGlzIHdhaXRpbmcgdG8gc2Vu ZCBkYXRhIHRvIG9yIHJlY2VpdmUgZGF0YQorIyBmcm9tIHRoZSBmcm9udGVuZCBwcm9jZXNz IHRvIHdoaWNoIGl0IGlzIGNvbm5lY3RlZC4gIFRoaXMgaXMgbmV2ZXIgdXNlZCBmb3IKKyMg YSBiYWNrZ3JvdW5kIHByb2Nlc3MsIHdoaWNoIGhhcyBubyBjbGllbnQgY29ubmVjdGlvbi4K KyMKKworU2VjdGlvbjogQ2xhc3NOYW1lIC0gV2FpdEV2ZW50Q2xpZW50CisKK1dBSVRfRVZF TlRfQ0xJRU5UX1JFQUQJIkNsaWVudFJlYWQiCSJXYWl0aW5nIHRvIHJlYWQgZGF0YSBmcm9t IHRoZSBjbGllbnQuIgorV0FJVF9FVkVOVF9DTElFTlRfV1JJVEUJIkNsaWVudFdyaXRlIgki V2FpdGluZyB0byB3cml0ZSBkYXRhIHRvIHRoZSBjbGllbnQuIgorV0FJVF9FVkVOVF9HU1Nf T1BFTl9TRVJWRVIJIkdTU09wZW5TZXJ2ZXIiCSJXYWl0aW5nIHRvIHJlYWQgZGF0YSBmcm9t IHRoZSBjbGllbnQgd2hpbGUgZXN0YWJsaXNoaW5nIGEgR1NTQVBJIHNlc3Npb24uIgorV0FJ VF9FVkVOVF9MSUJQUVdBTFJFQ0VJVkVSX0NPTk5FQ1QJIkxpYlBRV2FsUmVjZWl2ZXJDb25u ZWN0IgkiV2FpdGluZyBpbiBXQUwgcmVjZWl2ZXIgdG8gZXN0YWJsaXNoIGNvbm5lY3Rpb24g dG8gcmVtb3RlIHNlcnZlci4iCitXQUlUX0VWRU5UX0xJQlBRV0FMUkVDRUlWRVJfUkVDRUlW RQkiTGliUFFXYWxSZWNlaXZlclJlY2VpdmUiCSJXYWl0aW5nIGluIFdBTCByZWNlaXZlciB0 byByZWNlaXZlIGRhdGEgZnJvbSByZW1vdGUgc2VydmVyLiIKK1dBSVRfRVZFTlRfU1NMX09Q RU5fU0VSVkVSCSJTU0xPcGVuU2VydmVyIgkiV2FpdGluZyBmb3IgU1NMIHdoaWxlIGF0dGVt cHRpbmcgY29ubmVjdGlvbi4iCitXQUlUX0VWRU5UX1dBTF9TRU5ERVJfV0FJVF9XQUwJIldh bFNlbmRlcldhaXRGb3JXQUwiCSJXYWl0aW5nIGZvciBXQUwgdG8gYmUgZmx1c2hlZCBpbiBX QUwgc2VuZGVyIHByb2Nlc3MuIgorV0FJVF9FVkVOVF9XQUxfU0VOREVSX1dSSVRFX0RBVEEJ IldhbFNlbmRlcldyaXRlRGF0YSIJIldhaXRpbmcgZm9yIGFueSBhY3Rpdml0eSB3aGVuIHBy b2Nlc3NpbmcgcmVwbGllcyBmcm9tIFdBTCByZWNlaXZlciBpbiBXQUwgc2VuZGVyIHByb2Nl c3MuIgorCisKKyMKKyMgV2FpdCBFdmVudHMgLSBJUEMKKyMKKyMgVXNlIHRoaXMgY2F0ZWdv cnkgd2hlbiBhIHByb2Nlc3MgY2Fubm90IGNvbXBsZXRlIHRoZSB3b3JrIGl0IGlzIGRvaW5n IGJlY2F1c2UKKyMgaXQgaXMgd2FpdGluZyBmb3IgYSBub3RpZmljYXRpb24gZnJvbSBhbm90 aGVyIHByb2Nlc3MuCisjCisKK1NlY3Rpb246IENsYXNzTmFtZSAtIFdhaXRFdmVudElQQwor CitXQUlUX0VWRU5UX0FQUEVORF9SRUFEWQkiQXBwZW5kUmVhZHkiCSJXYWl0aW5nIGZvciBz dWJwbGFuIG5vZGVzIG9mIGFuIDxsaXRlcmFsPkFwcGVuZDwvbGl0ZXJhbD4gcGxhbiBub2Rl IHRvIGJlIHJlYWR5LiIKK1dBSVRfRVZFTlRfQVJDSElWRV9DTEVBTlVQX0NPTU1BTkQJIkFy Y2hpdmVDbGVhbnVwQ29tbWFuZCIJIldhaXRpbmcgZm9yIDx4cmVmIGxpbmtlbmQ9Imd1Yy1h cmNoaXZlLWNsZWFudXAtY29tbWFuZCIvPiB0byBjb21wbGV0ZS4iCitXQUlUX0VWRU5UX0FS Q0hJVkVfQ09NTUFORAkiQXJjaGl2ZUNvbW1hbmQiCSJXYWl0aW5nIGZvciA8eHJlZiBsaW5r ZW5kPSJndWMtYXJjaGl2ZS1jb21tYW5kIi8+IHRvIGNvbXBsZXRlLiIKK1dBSVRfRVZFTlRf QkFDS0VORF9URVJNSU5BVElPTgkiQmFja2VuZFRlcm1pbmF0aW9uIgkiV2FpdGluZyBmb3Ig dGhlIHRlcm1pbmF0aW9uIG9mIGFub3RoZXIgYmFja2VuZC4iCitXQUlUX0VWRU5UX0JBQ0tV UF9XQUlUX1dBTF9BUkNISVZFCSJCYWNrdXBXYWl0V2FsQXJjaGl2ZSIJIldhaXRpbmcgZm9y IFdBTCBmaWxlcyByZXF1aXJlZCBmb3IgYSBiYWNrdXAgdG8gYmUgc3VjY2Vzc2Z1bGx5IGFy Y2hpdmVkLiIKK1dBSVRfRVZFTlRfQkdXT1JLRVJfU0hVVERPV04JIkJnV29ya2VyU2h1dGRv d24iCSJXYWl0aW5nIGZvciBiYWNrZ3JvdW5kIHdvcmtlciB0byBzaHV0IGRvd24uIgorV0FJ VF9FVkVOVF9CR1dPUktFUl9TVEFSVFVQCSJCZ1dvcmtlclN0YXJ0dXAiCSJXYWl0aW5nIGZv ciBiYWNrZ3JvdW5kIHdvcmtlciB0byBzdGFydCB1cC4iCitXQUlUX0VWRU5UX0JUUkVFX1BB R0UJIkJ0cmVlUGFnZSIJIldhaXRpbmcgZm9yIHRoZSBwYWdlIG51bWJlciBuZWVkZWQgdG8g Y29udGludWUgYSBwYXJhbGxlbCBCLXRyZWUgc2NhbiB0byBiZWNvbWUgYXZhaWxhYmxlLiIK K1dBSVRfRVZFTlRfQlVGRkVSX0lPCSJCdWZmZXJJTyIJIldhaXRpbmcgZm9yIGJ1ZmZlciBJ L08gdG8gY29tcGxldGUuIgorV0FJVF9FVkVOVF9DSEVDS1BPSU5UX0RPTkUJIkNoZWNrcG9p bnREb25lIgkiV2FpdGluZyBmb3IgYSBjaGVja3BvaW50IHRvIGNvbXBsZXRlLiIKK1dBSVRf RVZFTlRfQ0hFQ0tQT0lOVF9TVEFSVAkiQ2hlY2twb2ludFN0YXJ0IgkiV2FpdGluZyBmb3Ig YSBjaGVja3BvaW50IHRvIHN0YXJ0LiIKK1dBSVRfRVZFTlRfRVhFQ1VURV9HQVRIRVIJIkV4 ZWN1dGVHYXRoZXIiCSJXYWl0aW5nIGZvciBhY3Rpdml0eSBmcm9tIGEgY2hpbGQgcHJvY2Vz cyB3aGlsZSBleGVjdXRpbmcgYSA8bGl0ZXJhbD5HYXRoZXI8L2xpdGVyYWw+IHBsYW4gbm9k ZS4iCitXQUlUX0VWRU5UX0hBU0hfQkFUQ0hfQUxMT0NBVEUJIkhhc2hCYXRjaEFsbG9jYXRl IgkiV2FpdGluZyBmb3IgYW4gZWxlY3RlZCBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRv IGFsbG9jYXRlIGEgaGFzaCB0YWJsZS4iCitXQUlUX0VWRU5UX0hBU0hfQkFUQ0hfRUxFQ1QJ Ikhhc2hCYXRjaEVsZWN0IgkiV2FpdGluZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhhc2ggcGFy dGljaXBhbnQgdG8gYWxsb2NhdGUgYSBoYXNoIHRhYmxlLiIKK1dBSVRfRVZFTlRfSEFTSF9C QVRDSF9MT0FECSJIYXNoQmF0Y2hMb2FkIgkiV2FpdGluZyBmb3Igb3RoZXIgUGFyYWxsZWwg SGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoIGxvYWRpbmcgYSBoYXNoIHRhYmxlLiIKK1dB SVRfRVZFTlRfSEFTSF9CVUlMRF9BTExPQ0FURQkiSGFzaEJ1aWxkQWxsb2NhdGUiCSJXYWl0 aW5nIGZvciBhbiBlbGVjdGVkIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnQgdG8gYWxsb2Nh dGUgdGhlIGluaXRpYWwgaGFzaCB0YWJsZS4iCitXQUlUX0VWRU5UX0hBU0hfQlVJTERfRUxF Q1QJIkhhc2hCdWlsZEVsZWN0IgkiV2FpdGluZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhhc2gg cGFydGljaXBhbnQgdG8gYWxsb2NhdGUgdGhlIGluaXRpYWwgaGFzaCB0YWJsZS4iCitXQUlU X0VWRU5UX0hBU0hfQlVJTERfSEFTSF9JTk5FUgkiSGFzaEJ1aWxkSGFzaElubmVyIgkiV2Fp dGluZyBmb3Igb3RoZXIgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoIGhh c2hpbmcgdGhlIGlubmVyIHJlbGF0aW9uLiIKK1dBSVRfRVZFTlRfSEFTSF9CVUlMRF9IQVNI X09VVEVSCSJIYXNoQnVpbGRIYXNoT3V0ZXIiCSJXYWl0aW5nIGZvciBvdGhlciBQYXJhbGxl bCBIYXNoIHBhcnRpY2lwYW50cyB0byBmaW5pc2ggcGFydGl0aW9uaW5nIHRoZSBvdXRlciBy ZWxhdGlvbi4iCitXQUlUX0VWRU5UX0hBU0hfR1JPV19CQVRDSEVTX0RFQ0lERQkiSGFzaEdy b3dCYXRjaGVzRGVjaWRlIgkiV2FpdGluZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhhc2ggcGFy dGljaXBhbnQgdG8gZGVjaWRlIG9uIGZ1dHVyZSBiYXRjaCBncm93dGguIgorV0FJVF9FVkVO VF9IQVNIX0dST1dfQkFUQ0hFU19FTEVDVAkiSGFzaEdyb3dCYXRjaGVzRWxlY3QiCSJXYWl0 aW5nIHRvIGVsZWN0IGEgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0byBhbGxvY2F0ZSBt b3JlIGJhdGNoZXMuIgorV0FJVF9FVkVOVF9IQVNIX0dST1dfQkFUQ0hFU19GSU5JU0gJIkhh c2hHcm93QmF0Y2hlc0ZpbmlzaCIJIldhaXRpbmcgZm9yIGFuIGVsZWN0ZWQgUGFyYWxsZWwg SGFzaCBwYXJ0aWNpcGFudCB0byBkZWNpZGUgb24gZnV0dXJlIGJhdGNoIGdyb3d0aC4iCitX QUlUX0VWRU5UX0hBU0hfR1JPV19CQVRDSEVTX1JFQUxMT0NBVEUJIkhhc2hHcm93QmF0Y2hl c1JlYWxsb2NhdGUiCSJXYWl0aW5nIGZvciBhbiBlbGVjdGVkIFBhcmFsbGVsIEhhc2ggcGFy dGljaXBhbnQgdG8gYWxsb2NhdGUgbW9yZSBiYXRjaGVzLiIKK1dBSVRfRVZFTlRfSEFTSF9H Uk9XX0JBVENIRVNfUkVQQVJUSVRJT04JIkhhc2hHcm93QmF0Y2hlc1JlcGFydGl0aW9uIgki V2FpdGluZyBmb3Igb3RoZXIgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNo IHJlcGFydGl0aW9uaW5nLiIKK1dBSVRfRVZFTlRfSEFTSF9HUk9XX0JVQ0tFVFNfRUxFQ1QJ Ikhhc2hHcm93QnVja2V0c0VsZWN0IgkiV2FpdGluZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhh c2ggcGFydGljaXBhbnQgdG8gYWxsb2NhdGUgbW9yZSBidWNrZXRzLiIKK1dBSVRfRVZFTlRf SEFTSF9HUk9XX0JVQ0tFVFNfUkVBTExPQ0FURQkiSGFzaEdyb3dCdWNrZXRzUmVhbGxvY2F0 ZSIJIldhaXRpbmcgZm9yIGFuIGVsZWN0ZWQgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0 byBmaW5pc2ggYWxsb2NhdGluZyBtb3JlIGJ1Y2tldHMuIgorV0FJVF9FVkVOVF9IQVNIX0dS T1dfQlVDS0VUU19SRUlOU0VSVAkiSGFzaEdyb3dCdWNrZXRzUmVpbnNlcnQiCSJXYWl0aW5n IGZvciBvdGhlciBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50cyB0byBmaW5pc2ggaW5zZXJ0 aW5nIHR1cGxlcyBpbnRvIG5ldyBidWNrZXRzLiIKK1dBSVRfRVZFTlRfTE9HSUNBTF9BUFBM WV9TRU5EX0RBVEEJIkxvZ2ljYWxBcHBseVNlbmREYXRhIgkiV2FpdGluZyBmb3IgYSBsb2dp Y2FsIHJlcGxpY2F0aW9uIGxlYWRlciBhcHBseSBwcm9jZXNzIHRvIHNlbmQgZGF0YSB0byBh IHBhcmFsbGVsIGFwcGx5IHByb2Nlc3MuIgorV0FJVF9FVkVOVF9MT0dJQ0FMX1BBUkFMTEVM X0FQUExZX1NUQVRFX0NIQU5HRQkiTG9naWNhbFBhcmFsbGVsQXBwbHlTdGF0ZUNoYW5nZSIJ IldhaXRpbmcgZm9yIGEgbG9naWNhbCByZXBsaWNhdGlvbiBwYXJhbGxlbCBhcHBseSBwcm9j ZXNzIHRvIGNoYW5nZSBzdGF0ZS4iCitXQUlUX0VWRU5UX0xPR0lDQUxfU1lOQ19EQVRBCSJM b2dpY2FsU3luY0RhdGEiCSJXYWl0aW5nIGZvciBhIGxvZ2ljYWwgcmVwbGljYXRpb24gcmVt b3RlIHNlcnZlciB0byBzZW5kIGRhdGEgZm9yIGluaXRpYWwgdGFibGUgc3luY2hyb25pemF0 aW9uLiIKK1dBSVRfRVZFTlRfTE9HSUNBTF9TWU5DX1NUQVRFX0NIQU5HRQkiTG9naWNhbFN5 bmNTdGF0ZUNoYW5nZSIJIldhaXRpbmcgZm9yIGEgbG9naWNhbCByZXBsaWNhdGlvbiByZW1v dGUgc2VydmVyIHRvIGNoYW5nZSBzdGF0ZS4iCitXQUlUX0VWRU5UX01RX0lOVEVSTkFMCSJN ZXNzYWdlUXVldWVJbnRlcm5hbCIJIldhaXRpbmcgZm9yIGFub3RoZXIgcHJvY2VzcyB0byBi ZSBhdHRhY2hlZCB0byBhIHNoYXJlZCBtZXNzYWdlIHF1ZXVlLiIKK1dBSVRfRVZFTlRfTVFf UFVUX01FU1NBR0UJIk1lc3NhZ2VRdWV1ZVB1dE1lc3NhZ2UiCSJXYWl0aW5nIHRvIHdyaXRl IGEgcHJvdG9jb2wgbWVzc2FnZSB0byBhIHNoYXJlZCBtZXNzYWdlIHF1ZXVlLiIKK1dBSVRf RVZFTlRfTVFfUkVDRUlWRQkiTWVzc2FnZVF1ZXVlUmVjZWl2ZSIJIldhaXRpbmcgdG8gcmVj ZWl2ZSBieXRlcyBmcm9tIGEgc2hhcmVkIG1lc3NhZ2UgcXVldWUuIgorV0FJVF9FVkVOVF9N UV9TRU5ECSJNZXNzYWdlUXVldWVTZW5kIgkiV2FpdGluZyB0byBzZW5kIGJ5dGVzIHRvIGEg c2hhcmVkIG1lc3NhZ2UgcXVldWUuIgorV0FJVF9FVkVOVF9QQVJBTExFTF9CSVRNQVBfU0NB TgkiUGFyYWxsZWxCaXRtYXBTY2FuIgkiV2FpdGluZyBmb3IgcGFyYWxsZWwgYml0bWFwIHNj YW4gdG8gYmVjb21lIGluaXRpYWxpemVkLiIKK1dBSVRfRVZFTlRfUEFSQUxMRUxfQ1JFQVRF X0lOREVYX1NDQU4JIlBhcmFsbGVsQ3JlYXRlSW5kZXhTY2FuIgkiV2FpdGluZyBmb3IgcGFy YWxsZWwgPGNvbW1hbmQ+Q1JFQVRFIElOREVYPC9jb21tYW5kPiB3b3JrZXJzIHRvIGZpbmlz aCBoZWFwIHNjYW4uIgorV0FJVF9FVkVOVF9QQVJBTExFTF9GSU5JU0gJIlBhcmFsbGVsRmlu aXNoIgkiV2FpdGluZyBmb3IgcGFyYWxsZWwgd29ya2VycyB0byBmaW5pc2ggY29tcHV0aW5n LiIKK1dBSVRfRVZFTlRfUFJPQ0FSUkFZX0dST1VQX1VQREFURQkiUHJvY0FycmF5R3JvdXBV cGRhdGUiCSJXYWl0aW5nIGZvciB0aGUgZ3JvdXAgbGVhZGVyIHRvIGNsZWFyIHRoZSB0cmFu c2FjdGlvbiBJRCBhdCBlbmQgb2YgYSBwYXJhbGxlbCBvcGVyYXRpb24uIgorV0FJVF9FVkVO VF9QUk9DX1NJR05BTF9CQVJSSUVSCSJQcm9jU2lnbmFsQmFycmllciIJIldhaXRpbmcgZm9y IGEgYmFycmllciBldmVudCB0byBiZSBwcm9jZXNzZWQgYnkgYWxsIGJhY2tlbmRzLiIKK1dB SVRfRVZFTlRfUFJPTU9URQkiUHJvbW90ZSIJIldhaXRpbmcgZm9yIHN0YW5kYnkgcHJvbW90 aW9uLiIKK1dBSVRfRVZFTlRfUkVDT1ZFUllfQ09ORkxJQ1RfU05BUFNIT1QJIlJlY292ZXJ5 Q29uZmxpY3RTbmFwc2hvdCIJIldhaXRpbmcgZm9yIHJlY292ZXJ5IGNvbmZsaWN0IHJlc29s dXRpb24gZm9yIGEgdmFjdXVtIGNsZWFudXAuIgorV0FJVF9FVkVOVF9SRUNPVkVSWV9DT05G TElDVF9UQUJMRVNQQUNFCSJSZWNvdmVyeUNvbmZsaWN0VGFibGVzcGFjZSIJIldhaXRpbmcg Zm9yIHJlY292ZXJ5IGNvbmZsaWN0IHJlc29sdXRpb24gZm9yIGRyb3BwaW5nIGEgdGFibGVz cGFjZS4iCitXQUlUX0VWRU5UX1JFQ09WRVJZX0VORF9DT01NQU5ECSJSZWNvdmVyeUVuZENv bW1hbmQiCSJXYWl0aW5nIGZvciA8eHJlZiBsaW5rZW5kPSJndWMtcmVjb3ZlcnktZW5kLWNv bW1hbmQiLz4gdG8gY29tcGxldGUuIgorV0FJVF9FVkVOVF9SRUNPVkVSWV9QQVVTRQkiUmVj b3ZlcnlQYXVzZSIJIldhaXRpbmcgZm9yIHJlY292ZXJ5IHRvIGJlIHJlc3VtZWQuIgorV0FJ VF9FVkVOVF9SRVBMSUNBVElPTl9PUklHSU5fRFJPUAkiUmVwbGljYXRpb25PcmlnaW5Ecm9w IgkiV2FpdGluZyBmb3IgYSByZXBsaWNhdGlvbiBvcmlnaW4gdG8gYmVjb21lIGluYWN0aXZl IHNvIGl0IGNhbiBiZSBkcm9wcGVkLiIKK1dBSVRfRVZFTlRfUkVQTElDQVRJT05fU0xPVF9E Uk9QCSJSZXBsaWNhdGlvblNsb3REcm9wIgkiV2FpdGluZyBmb3IgYSByZXBsaWNhdGlvbiBz bG90IHRvIGJlY29tZSBpbmFjdGl2ZSBzbyBpdCBjYW4gYmUgZHJvcHBlZC4iCitXQUlUX0VW RU5UX1JFU1RPUkVfQ09NTUFORAkiUmVzdG9yZUNvbW1hbmQiCSJXYWl0aW5nIGZvciA8eHJl ZiBsaW5rZW5kPSJndWMtcmVzdG9yZS1jb21tYW5kIi8+IHRvIGNvbXBsZXRlLiIKK1dBSVRf RVZFTlRfU0FGRV9TTkFQU0hPVAkiU2FmZVNuYXBzaG90IgkiV2FpdGluZyB0byBvYnRhaW4g YSB2YWxpZCBzbmFwc2hvdCBmb3IgYSA8bGl0ZXJhbD5SRUFEIE9OTFkgREVGRVJSQUJMRTwv bGl0ZXJhbD4gdHJhbnNhY3Rpb24uIgorV0FJVF9FVkVOVF9TWU5DX1JFUAkiU3luY1JlcCIJ IldhaXRpbmcgZm9yIGNvbmZpcm1hdGlvbiBmcm9tIGEgcmVtb3RlIHNlcnZlciBkdXJpbmcg c3luY2hyb25vdXMgcmVwbGljYXRpb24uIFdhaXRpbmcgdG8gcmVhZCBvciB1cGRhdGUgaW5m b3JtYXRpb24gYWJvdXQgdGhlIHN0YXRlIG9mIHN5bmNocm9ub3VzIHJlcGxpY2F0aW9uLiIK K1dBSVRfRVZFTlRfV0FMX1JFQ0VJVkVSX0VYSVQJIldhbFJlY2VpdmVyRXhpdCIJIldhaXRp bmcgZm9yIHRoZSBXQUwgcmVjZWl2ZXIgdG8gZXhpdC4iCitXQUlUX0VWRU5UX1dBTF9SRUNF SVZFUl9XQUlUX1NUQVJUCSJXYWxSZWNlaXZlcldhaXRTdGFydCIJIldhaXRpbmcgZm9yIHN0 YXJ0dXAgcHJvY2VzcyB0byBzZW5kIGluaXRpYWwgZGF0YSBmb3Igc3RyZWFtaW5nIHJlcGxp Y2F0aW9uLiIKK1dBSVRfRVZFTlRfWEFDVF9HUk9VUF9VUERBVEUJIlhhY3RHcm91cFVwZGF0 ZSIJIldhaXRpbmcgZm9yIHRoZSBncm91cCBsZWFkZXIgdG8gdXBkYXRlIHRyYW5zYWN0aW9u IHN0YXR1cyBhdCBlbmQgb2YgYSBwYXJhbGxlbCBvcGVyYXRpb24uIgorCisKKyMKKyMgV2Fp dCBFdmVudHMgLSBUaW1lb3V0CisjCisjIFVzZSB0aGlzIGNhdGVnb3J5IHdoZW4gYSBwcm9j ZXNzIGlzIHdhaXRpbmcgZm9yIGEgdGltZW91dCB0byBleHBpcmUuCisjCisKK1NlY3Rpb246 IENsYXNzTmFtZSAtIFdhaXRFdmVudFRpbWVvdXQKKworV0FJVF9FVkVOVF9CQVNFX0JBQ0tV UF9USFJPVFRMRQkiQmFzZUJhY2t1cFRocm90dGxlIgkiV2FpdGluZyBkdXJpbmcgYmFzZSBi YWNrdXAgd2hlbiB0aHJvdHRsaW5nIGFjdGl2aXR5LiIKK1dBSVRfRVZFTlRfQ0hFQ0tQT0lO VF9XUklURV9ERUxBWQkiQ2hlY2twb2ludFdyaXRlRGVsYXkiCSJXYWl0aW5nIGJldHdlZW4g d3JpdGVzIHdoaWxlIHBlcmZvcm1pbmcgYSBjaGVja3BvaW50LiIKK1dBSVRfRVZFTlRfUEdf U0xFRVAJIlBnU2xlZXAiCSJXYWl0aW5nIGR1ZSB0byBhIGNhbGwgdG8gPGZ1bmN0aW9uPnBn X3NsZWVwPC9mdW5jdGlvbj4gb3IgYSBzaWJsaW5nIGZ1bmN0aW9uLiIKK1dBSVRfRVZFTlRf UkVDT1ZFUllfQVBQTFlfREVMQVkJIlJlY292ZXJ5QXBwbHlEZWxheSIJIldhaXRpbmcgdG8g YXBwbHkgV0FMIGR1cmluZyByZWNvdmVyeSBiZWNhdXNlIG9mIGEgZGVsYXkgc2V0dGluZy4i CitXQUlUX0VWRU5UX1JFQ09WRVJZX1JFVFJJRVZFX1JFVFJZX0lOVEVSVkFMCSJSZWNvdmVy eVJldHJpZXZlUmV0cnlJbnRlcnZhbCIJIldhaXRpbmcgZHVyaW5nIHJlY292ZXJ5IHdoZW4g V0FMIGRhdGEgaXMgbm90IGF2YWlsYWJsZSBmcm9tIGFueSBzb3VyY2UgKDxmaWxlbmFtZT5w Z193YWw8L2ZpbGVuYW1lPiwgYXJjaGl2ZSBvciBzdHJlYW0pLiIKK1dBSVRfRVZFTlRfUkVH SVNURVJfU1lOQ19SRVFVRVNUCSJSZWdpc3RlclN5bmNSZXF1ZXN0IgkiV2FpdGluZyB3aGls ZSBzZW5kaW5nIHN5bmNocm9uaXphdGlvbiByZXF1ZXN0cyB0byB0aGUgY2hlY2twb2ludGVy LCBiZWNhdXNlIHRoZSByZXF1ZXN0IHF1ZXVlIGlzIGZ1bGwuIgorV0FJVF9FVkVOVF9TUElO X0RFTEFZCSJTcGluRGVsYXkiCSJXYWl0aW5nIHdoaWxlIGFjcXVpcmluZyBhIGNvbnRlbmRl ZCBzcGlubG9jay4iCitXQUlUX0VWRU5UX1ZBQ1VVTV9ERUxBWQkiVmFjdXVtRGVsYXkiCSJX YWl0aW5nIGluIGEgY29zdC1iYXNlZCB2YWN1dW0gZGVsYXkgcG9pbnQuIgorV0FJVF9FVkVO VF9WQUNVVU1fVFJVTkNBVEUJIlZhY3V1bVRydW5jYXRlIgkiV2FpdGluZyB0byBhY3F1aXJl IGFuIGV4Y2x1c2l2ZSBsb2NrIHRvIHRydW5jYXRlIG9mZiBhbnkgZW1wdHkgcGFnZXMgYXQg dGhlIGVuZCBvZiBhIHRhYmxlIHZhY3V1bWVkLiIKKworCisjCisjIFdhaXQgRXZlbnRzIC0g SU8KKyMKKyMgVXNlIHRoaXMgY2F0ZWdvcnkgd2hlbiBhIHByb2Nlc3MgaXMgd2FpdGluZyBm b3IgYSBJTy4KKyMKKworU2VjdGlvbjogQ2xhc3NOYW1lIC0gV2FpdEV2ZW50SU8KKworV0FJ VF9FVkVOVF9CQVNFQkFDS1VQX1JFQUQJIkJhc2VCYWNrdXBSZWFkIgkiV2FpdGluZyBmb3Ig YmFzZSBiYWNrdXAgdG8gcmVhZCBmcm9tIGEgZmlsZS4iCitXQUlUX0VWRU5UX0JBU0VCQUNL VVBfU1lOQwkiQmFzZUJhY2t1cFN5bmMiCSJXYWl0aW5nIGZvciBkYXRhIHdyaXR0ZW4gYnkg YSBiYXNlIGJhY2t1cCB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVOVF9C QVNFQkFDS1VQX1dSSVRFCSJCYXNlQmFja3VwV3JpdGUiCSJXYWl0aW5nIGZvciBiYXNlIGJh Y2t1cCB0byB3cml0ZSB0byBhIGZpbGUuIgorV0FJVF9FVkVOVF9CVUZGSUxFX1JFQUQJIkJ1 ZkZpbGVSZWFkIgkiV2FpdGluZyBmb3IgYSByZWFkIGZyb20gYSBidWZmZXJlZCBmaWxlLiIK K1dBSVRfRVZFTlRfQlVGRklMRV9XUklURQkiQnVmRmlsZVdyaXRlIgkiV2FpdGluZyBmb3Ig YSB3cml0ZSB0byBhIGJ1ZmZlcmVkIGZpbGUuIgorV0FJVF9FVkVOVF9CVUZGSUxFX1RSVU5D QVRFCSJCdWZGaWxlVHJ1bmNhdGUiCSJXYWl0aW5nIGZvciBhIGJ1ZmZlcmVkIGZpbGUgdG8g YmUgdHJ1bmNhdGVkLiIKK1dBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1JFQUQJIkNvbnRyb2xG aWxlUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBmcm9tIHRoZSA8ZmlsZW5hbWU+cGdfY29u dHJvbDwvZmlsZW5hbWU+IGZpbGUuIgorV0FJVF9FVkVOVF9DT05UUk9MX0ZJTEVfU1lOQwki Q29udHJvbEZpbGVTeW5jIgkiV2FpdGluZyBmb3IgdGhlIDxmaWxlbmFtZT5wZ19jb250cm9s PC9maWxlbmFtZT4gZmlsZSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuIFdhaXRpbmcgZm9y IGFuIHVwZGF0ZSB0byB0aGUgPGZpbGVuYW1lPnBnX2NvbnRyb2w8L2ZpbGVuYW1lPiBmaWxl IHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9T WU5DX1VQREFURQkiQ29udHJvbEZpbGVTeW5jVXBkYXRlIgkiV2FpdGluZyBmb3IgYW4gdXBk YXRlIHRvIHRoZSA8ZmlsZW5hbWU+cGdfY29udHJvbDwvZmlsZW5hbWU+IGZpbGUgdG8gcmVh Y2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1dSSVRFCSJD b250cm9sRmlsZVdyaXRlIgkiV2FpdGluZyBmb3IgYSB3cml0ZSB0byB0aGUgPGZpbGVuYW1l PnBnX2NvbnRyb2w8L2ZpbGVuYW1lPiBmaWxlLiBXYWl0aW5nIGZvciBhIHdyaXRlIHRvIHVw ZGF0ZSB0aGUgPGZpbGVuYW1lPnBnX2NvbnRyb2w8L2ZpbGVuYW1lPiBmaWxlLiIKK1dBSVRf RVZFTlRfQ09OVFJPTF9GSUxFX1dSSVRFX1VQREFURQkiQ29udHJvbEZpbGVXcml0ZVVwZGF0 ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gdXBkYXRlIHRoZSA8ZmlsZW5hbWU+cGdfY29u dHJvbDwvZmlsZW5hbWU+IGZpbGUuIgorV0FJVF9FVkVOVF9DT1BZX0ZJTEVfUkVBRAkiQ29w eUZpbGVSZWFkIgkiV2FpdGluZyBmb3IgYSByZWFkIGR1cmluZyBhIGZpbGUgY29weSBvcGVy YXRpb24uIgorV0FJVF9FVkVOVF9DT1BZX0ZJTEVfV1JJVEUJIkNvcHlGaWxlV3JpdGUiCSJX YWl0aW5nIGZvciBhIHdyaXRlIGR1cmluZyBhIGZpbGUgY29weSBvcGVyYXRpb24uIgorV0FJ VF9FVkVOVF9EQVRBX0ZJTEVfRVhURU5ECSJEYXRhRmlsZUV4dGVuZCIJIldhaXRpbmcgZm9y IGEgcmVsYXRpb24gZGF0YSBmaWxlIHRvIGJlIGV4dGVuZGVkLiIKK1dBSVRfRVZFTlRfREFU QV9GSUxFX0ZMVVNICSJEYXRhRmlsZUZsdXNoIgkiV2FpdGluZyBmb3IgYSByZWxhdGlvbiBk YXRhIGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfREFUQV9G SUxFX0lNTUVESUFURV9TWU5DCSJEYXRhRmlsZUltbWVkaWF0ZVN5bmMiCSJXYWl0aW5nIGZv ciBhbiBpbW1lZGlhdGUgc3luY2hyb25pemF0aW9uIG9mIGEgcmVsYXRpb24gZGF0YSBmaWxl IHRvIGR1cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX0RBVEFfRklMRV9QUkVGRVRDSAki RGF0YUZpbGVQcmVmZXRjaCIJIldhaXRpbmcgZm9yIGFuIGFzeW5jaHJvbm91cyBwcmVmZXRj aCBmcm9tIGEgcmVsYXRpb24gZGF0YSBmaWxlLiIKK1dBSVRfRVZFTlRfREFUQV9GSUxFX1JF QUQJIkRhdGFGaWxlUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBmcm9tIGEgcmVsYXRpb24g ZGF0YSBmaWxlLiIKK1dBSVRfRVZFTlRfREFUQV9GSUxFX1NZTkMJIkRhdGFGaWxlU3luYyIJ IldhaXRpbmcgZm9yIGNoYW5nZXMgdG8gYSByZWxhdGlvbiBkYXRhIGZpbGUgdG8gcmVhY2gg ZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfREFUQV9GSUxFX1RSVU5DQVRFCSJEYXRh RmlsZVRydW5jYXRlIgkiV2FpdGluZyBmb3IgYSByZWxhdGlvbiBkYXRhIGZpbGUgdG8gYmUg dHJ1bmNhdGVkLiIKK1dBSVRfRVZFTlRfREFUQV9GSUxFX1dSSVRFCSJEYXRhRmlsZVdyaXRl IgkiV2FpdGluZyBmb3IgYSB3cml0ZSB0byBhIHJlbGF0aW9uIGRhdGEgZmlsZS4iCitXQUlU X0VWRU5UX0RTTV9BTExPQ0FURQkiRFNNQWxsb2NhdGUiCSJXYWl0aW5nIGZvciBhIGR5bmFt aWMgc2hhcmVkIG1lbW9yeSBzZWdtZW50IHRvIGJlIGFsbG9jYXRlZC4iCitXQUlUX0VWRU5U X0RTTV9GSUxMX1pFUk9fV1JJVEUJIkRTTUZpbGxaZXJvV3JpdGUiCSJXYWl0aW5nIHRvIGZp bGwgYSBkeW5hbWljIHNoYXJlZCBtZW1vcnkgYmFja2luZyBmaWxlIHdpdGggemVyb2VzLiIK K1dBSVRfRVZFTlRfTE9DS19GSUxFX0FERFRPREFUQURJUl9SRUFECSJMb2NrRmlsZUFkZFRv RGF0YURpclJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgd2hpbGUgYWRkaW5nIGEgbGluZSB0 byB0aGUgZGF0YSBkaXJlY3RvcnkgbG9jayBmaWxlLiIKK1dBSVRfRVZFTlRfTE9DS19GSUxF X0FERFRPREFUQURJUl9TWU5DCSJMb2NrRmlsZUFkZFRvRGF0YURpclN5bmMiCSJXYWl0aW5n IGZvciBkYXRhIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZSB3aGlsZSBhZGRpbmcgYSBsaW5l IHRvIHRoZSBkYXRhIGRpcmVjdG9yeSBsb2NrIGZpbGUuIgorV0FJVF9FVkVOVF9MT0NLX0ZJ TEVfQUREVE9EQVRBRElSX1dSSVRFCSJMb2NrRmlsZUFkZFRvRGF0YURpcldyaXRlIgkiV2Fp dGluZyBmb3IgYSB3cml0ZSB3aGlsZSBhZGRpbmcgYSBsaW5lIHRvIHRoZSBkYXRhIGRpcmVj dG9yeSBsb2NrIGZpbGUuIgorV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQ1JFQVRFX1JFQUQJIkxv Y2tGaWxlQ3JlYXRlUmVhZCIJIldhaXRpbmcgdG8gcmVhZCB3aGlsZSBjcmVhdGluZyB0aGUg ZGF0YSBkaXJlY3RvcnkgbG9jayBmaWxlLiIKK1dBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFU RV9TWU5DCSJMb2NrRmlsZUNyZWF0ZVN5bmMiCSJXYWl0aW5nIGZvciBkYXRhIHRvIHJlYWNo IGR1cmFibGUgc3RvcmFnZSB3aGlsZSBjcmVhdGluZyB0aGUgZGF0YSBkaXJlY3RvcnkgbG9j ayBmaWxlLiIKK1dBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFURV9XUklURQkiTG9ja0ZpbGVD cmVhdGVXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgd2hpbGUgY3JlYXRpbmcgdGhlIGRh dGEgZGlyZWN0b3J5IGxvY2sgZmlsZS4iCitXQUlUX0VWRU5UX0xPQ0tfRklMRV9SRUNIRUNL REFUQURJUl9SRUFECSJMb2NrRmlsZVJlQ2hlY2tEYXRhRGlyUmVhZCIJIldhaXRpbmcgZm9y IGEgcmVhZCBkdXJpbmcgcmVjaGVjayBvZiB0aGUgZGF0YSBkaXJlY3RvcnkgbG9jayBmaWxl LiIKK1dBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX0NIRUNLUE9JTlRfU1lOQwkiTG9naWNh bFJld3JpdGVDaGVja3BvaW50U3luYyIJIldhaXRpbmcgZm9yIGxvZ2ljYWwgcmV3cml0ZSBt YXBwaW5ncyB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UgZHVyaW5nIGEgY2hlY2twb2ludC4i CitXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9NQVBQSU5HX1NZTkMJIkxvZ2ljYWxSZXdy aXRlTWFwcGluZ1N5bmMiCSJXYWl0aW5nIGZvciBtYXBwaW5nIGRhdGEgdG8gcmVhY2ggZHVy YWJsZSBzdG9yYWdlIGR1cmluZyBhIGxvZ2ljYWwgcmV3cml0ZS4iCitXQUlUX0VWRU5UX0xP R0lDQUxfUkVXUklURV9NQVBQSU5HX1dSSVRFCSJMb2dpY2FsUmV3cml0ZU1hcHBpbmdXcml0 ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgb2YgbWFwcGluZyBkYXRhIGR1cmluZyBhIGxvZ2lj YWwgcmV3cml0ZS4iCitXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9TWU5DCSJMb2dpY2Fs UmV3cml0ZVN5bmMiCSJXYWl0aW5nIGZvciBsb2dpY2FsIHJld3JpdGUgbWFwcGluZ3MgdG8g cmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX1RS VU5DQVRFCSJMb2dpY2FsUmV3cml0ZVRydW5jYXRlIgkiV2FpdGluZyBmb3IgdHJ1bmNhdGUg b2YgbWFwcGluZyBkYXRhIGR1cmluZyBhIGxvZ2ljYWwgcmV3cml0ZS4iCitXQUlUX0VWRU5U X0xPR0lDQUxfUkVXUklURV9XUklURQkiTG9naWNhbFJld3JpdGVXcml0ZSIJIldhaXRpbmcg Zm9yIGEgd3JpdGUgb2YgbG9naWNhbCByZXdyaXRlIG1hcHBpbmdzLiIKK1dBSVRfRVZFTlRf UkVMQVRJT05fTUFQX1JFQUQJIlJlbGF0aW9uTWFwUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVh ZCBvZiB0aGUgcmVsYXRpb24gbWFwIGZpbGUuIgorV0FJVF9FVkVOVF9SRUxBVElPTl9NQVBf UkVQTEFDRQkiUmVsYXRpb25NYXBSZXBsYWNlIgkiV2FpdGluZyBmb3IgZHVyYWJsZSByZXBs YWNlbWVudCBvZiBhIHJlbGF0aW9uIG1hcCBmaWxlLiIKK1dBSVRfRVZFTlRfUkVMQVRJT05f TUFQX1dSSVRFCSJSZWxhdGlvbk1hcFdyaXRlIgkiV2FpdGluZyBmb3IgYSB3cml0ZSB0byB0 aGUgcmVsYXRpb24gbWFwIGZpbGUuIgorV0FJVF9FVkVOVF9SRU9SREVSX0JVRkZFUl9SRUFE CSJSZW9yZGVyQnVmZmVyUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBkdXJpbmcgcmVvcmRl ciBidWZmZXIgbWFuYWdlbWVudC4iCitXQUlUX0VWRU5UX1JFT1JERVJfQlVGRkVSX1dSSVRF CSJSZW9yZGVyQnVmZmVyV3JpdGUiCSJXYWl0aW5nIGZvciBhIHdyaXRlIGR1cmluZyByZW9y ZGVyIGJ1ZmZlciBtYW5hZ2VtZW50LiIKK1dBSVRfRVZFTlRfUkVPUkRFUl9MT0dJQ0FMX01B UFBJTkdfUkVBRAkiUmVvcmRlckxvZ2ljYWxNYXBwaW5nUmVhZCIJIldhaXRpbmcgZm9yIGEg cmVhZCBvZiBhIGxvZ2ljYWwgbWFwcGluZyBkdXJpbmcgcmVvcmRlciBidWZmZXIgbWFuYWdl bWVudC4iCitXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfUkVBRAkiUmVwbGljYXRpb25T bG90UmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBmcm9tIGEgcmVwbGljYXRpb24gc2xvdCBj b250cm9sIGZpbGUuIgorV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1JFU1RPUkVfU1lO QwkiUmVwbGljYXRpb25TbG90UmVzdG9yZVN5bmMiCSJXYWl0aW5nIGZvciBhIHJlcGxpY2F0 aW9uIHNsb3QgY29udHJvbCBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZSB3aGlsZSBy ZXN0b3JpbmcgaXQgdG8gbWVtb3J5LiIKK1dBSVRfRVZFTlRfUkVQTElDQVRJT05fU0xPVF9T WU5DCSJSZXBsaWNhdGlvblNsb3RTeW5jIgkiV2FpdGluZyBmb3IgYSByZXBsaWNhdGlvbiBz bG90IGNvbnRyb2wgZmlsZSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVO VF9SRVBMSUNBVElPTl9TTE9UX1dSSVRFCSJSZXBsaWNhdGlvblNsb3RXcml0ZSIJIldhaXRp bmcgZm9yIGEgd3JpdGUgdG8gYSByZXBsaWNhdGlvbiBzbG90IGNvbnRyb2wgZmlsZS4iCitX QUlUX0VWRU5UX1NMUlVfRkxVU0hfU1lOQwkiU0xSVUZsdXNoU3luYyIJIldhaXRpbmcgZm9y IFNMUlUgZGF0YSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UgZHVyaW5nIGEgY2hlY2twb2lu dCBvciBkYXRhYmFzZSBzaHV0ZG93bi4iCitXQUlUX0VWRU5UX1NMUlVfUkVBRAkiU0xSVVJl YWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgb2YgYW4gU0xSVSBwYWdlLiIKK1dBSVRfRVZFTlRf U0xSVV9TWU5DCSJTTFJVU3luYyIJIldhaXRpbmcgZm9yIFNMUlUgZGF0YSB0byByZWFjaCBk dXJhYmxlIHN0b3JhZ2UgZm9sbG93aW5nIGEgcGFnZSB3cml0ZS4iCitXQUlUX0VWRU5UX1NM UlVfV1JJVEUJIlNMUlVXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgb2YgYW4gU0xSVSBw YWdlLiIKK1dBSVRfRVZFTlRfU05BUEJVSUxEX1JFQUQJIlNuYXBidWlsZFJlYWQiCSJXYWl0 aW5nIGZvciBhIHJlYWQgb2YgYSBzZXJpYWxpemVkIGhpc3RvcmljYWwgY2F0YWxvZyBzbmFw c2hvdC4iCitXQUlUX0VWRU5UX1NOQVBCVUlMRF9TWU5DCSJTbmFwYnVpbGRTeW5jIgkiV2Fp dGluZyBmb3IgYSBzZXJpYWxpemVkIGhpc3RvcmljYWwgY2F0YWxvZyBzbmFwc2hvdCB0byBy ZWFjaCBkdXJhYmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVOVF9TTkFQQlVJTERfV1JJVEUJIlNu YXBidWlsZFdyaXRlIgkiV2FpdGluZyBmb3IgYSB3cml0ZSBvZiBhIHNlcmlhbGl6ZWQgaGlz dG9yaWNhbCBjYXRhbG9nIHNuYXBzaG90LiIKK1dBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9S WV9GSUxFX1NZTkMJIlRpbWVsaW5lSGlzdG9yeUZpbGVTeW5jIgkiV2FpdGluZyBmb3IgYSB0 aW1lbGluZSBoaXN0b3J5IGZpbGUgcmVjZWl2ZWQgdmlhIHN0cmVhbWluZyByZXBsaWNhdGlv biB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVOVF9USU1FTElORV9ISVNU T1JZX0ZJTEVfV1JJVEUJIlRpbWVsaW5lSGlzdG9yeUZpbGVXcml0ZSIJIldhaXRpbmcgZm9y IGEgd3JpdGUgb2YgYSB0aW1lbGluZSBoaXN0b3J5IGZpbGUgcmVjZWl2ZWQgdmlhIHN0cmVh bWluZyByZXBsaWNhdGlvbi4iCitXQUlUX0VWRU5UX1RJTUVMSU5FX0hJU1RPUllfUkVBRAki VGltZWxpbmVIaXN0b3J5UmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBvZiBhIHRpbWVsaW5l IGhpc3RvcnkgZmlsZS4iCitXQUlUX0VWRU5UX1RJTUVMSU5FX0hJU1RPUllfU1lOQwkiVGlt ZWxpbmVIaXN0b3J5U3luYyIJIldhaXRpbmcgZm9yIGEgbmV3bHkgY3JlYXRlZCB0aW1lbGlu ZSBoaXN0b3J5IGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRf VElNRUxJTkVfSElTVE9SWV9XUklURQkiVGltZWxpbmVIaXN0b3J5V3JpdGUiCSJXYWl0aW5n IGZvciBhIHdyaXRlIG9mIGEgbmV3bHkgY3JlYXRlZCB0aW1lbGluZSBoaXN0b3J5IGZpbGUu IgorV0FJVF9FVkVOVF9UV09QSEFTRV9GSUxFX1JFQUQJIlR3b3BoYXNlRmlsZVJlYWQiCSJX YWl0aW5nIGZvciBhIHJlYWQgb2YgYSB0d28gcGhhc2Ugc3RhdGUgZmlsZS4iCitXQUlUX0VW RU5UX1RXT1BIQVNFX0ZJTEVfU1lOQwkiVHdvcGhhc2VGaWxlU3luYyIJIldhaXRpbmcgZm9y IGEgdHdvIHBoYXNlIHN0YXRlIGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dB SVRfRVZFTlRfVFdPUEhBU0VfRklMRV9XUklURQkiVHdvcGhhc2VGaWxlV3JpdGUiCSJXYWl0 aW5nIGZvciBhIHdyaXRlIG9mIGEgdHdvIHBoYXNlIHN0YXRlIGZpbGUuIgorV0FJVF9FVkVO VF9WRVJTSU9OX0ZJTEVfV1JJVEUJIlZlcnNpb25GaWxlV3JpdGUiCSJXYWl0aW5nIGZvciB0 aGUgdmVyc2lvbiBmaWxlIHRvIGJlIHdyaXR0ZW4gd2hpbGUgY3JlYXRpbmcgYSBkYXRhYmFz ZS4iCitXQUlUX0VWRU5UX1dBTFNFTkRFUl9USU1FTElORV9ISVNUT1JZX1JFQUQJIldBTFNl bmRlclRpbWVsaW5lSGlzdG9yeVJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgZnJvbSBhIHRp bWVsaW5lIGhpc3RvcnkgZmlsZSBkdXJpbmcgYSB3YWxzZW5kZXIgdGltZWxpbmUgY29tbWFu ZC4iCitXQUlUX0VWRU5UX1dBTF9CT09UU1RSQVBfU1lOQwkiV0FMQm9vdHN0cmFwU3luYyIJ IldhaXRpbmcgZm9yIFdBTCB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UgZHVyaW5nIGJvb3Rz dHJhcHBpbmcuIgorV0FJVF9FVkVOVF9XQUxfQk9PVFNUUkFQX1dSSVRFCSJXQUxCb290c3Ry YXBXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgb2YgYSBXQUwgcGFnZSBkdXJpbmcgYm9v dHN0cmFwcGluZy4iCitXQUlUX0VWRU5UX1dBTF9DT1BZX1JFQUQJIldBTENvcHlSZWFkIgki V2FpdGluZyBmb3IgYSByZWFkIHdoZW4gY3JlYXRpbmcgYSBuZXcgV0FMIHNlZ21lbnQgYnkg Y29weWluZyBhbiBleGlzdGluZyBvbmUuIgorV0FJVF9FVkVOVF9XQUxfQ09QWV9TWU5DCSJX QUxDb3B5U3luYyIJIldhaXRpbmcgZm9yIGEgbmV3IFdBTCBzZWdtZW50IGNyZWF0ZWQgYnkg Y29weWluZyBhbiBleGlzdGluZyBvbmUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dB SVRfRVZFTlRfV0FMX0NPUFlfV1JJVEUJIldBTENvcHlXcml0ZSIJIldhaXRpbmcgZm9yIGEg d3JpdGUgd2hlbiBjcmVhdGluZyBhIG5ldyBXQUwgc2VnbWVudCBieSBjb3B5aW5nIGFuIGV4 aXN0aW5nIG9uZS4iCitXQUlUX0VWRU5UX1dBTF9JTklUX1NZTkMJIldBTEluaXRTeW5jIgki V2FpdGluZyBmb3IgYSBuZXdseSBpbml0aWFsaXplZCBXQUwgZmlsZSB0byByZWFjaCBkdXJh YmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVOVF9XQUxfSU5JVF9XUklURQkiV0FMSW5pdFdyaXRl IgkiV2FpdGluZyBmb3IgYSB3cml0ZSB3aGlsZSBpbml0aWFsaXppbmcgYSBuZXcgV0FMIGZp bGUuIgorV0FJVF9FVkVOVF9XQUxfUkVBRAkiV0FMUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVh ZCBmcm9tIGEgV0FMIGZpbGUuIgorV0FJVF9FVkVOVF9XQUxfU1lOQwkiV0FMU3luYyIJIldh aXRpbmcgZm9yIGEgV0FMIGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiBXYWl0aW5n IGZvciBkYXRhIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZSB3aGlsZSBhc3NpZ25pbmcgYSBu ZXcgV0FMIHN5bmMgbWV0aG9kLiIKK1dBSVRfRVZFTlRfV0FMX1NZTkNfTUVUSE9EX0FTU0lH TgkiV0FMU3luY01ldGhvZEFzc2lnbiIJIldhaXRpbmcgZm9yIGRhdGEgdG8gcmVhY2ggZHVy YWJsZSBzdG9yYWdlIHdoaWxlIGFzc2lnbmluZyBhIG5ldyBXQUwgc3luYyBtZXRob2QuIgor V0FJVF9FVkVOVF9XQUxfV1JJVEUJIldBTFdyaXRlIgkiV2FpdGluZyBmb3IgYSB3cml0ZSB0 byBhIFdBTCBmaWxlLiBXYWl0aW5nIGZvciBXQUwgYnVmZmVycyB0byBiZSB3cml0dGVuIHRv IGRpc2suIgorCisKKyMKKyMgV2FpdCBldmVudHMgLSBCdWZmZXIgUGluCisjCisKK1NlY3Rp b246IENsYXNzTmFtZSAtIFdhaXRFdmVudEJ1ZmZlclBpbgorCitXQUlUX0VWRU5UX0JVRkZF Ul9QSU4JIkJ1ZmZlclBpbiIJIldhaXRpbmcgdG8gYWNxdWlyZSBhbiBleGNsdXNpdmUgcGlu IG9uIGEgYnVmZmVyLiIKKworCisjCisjIFdhaXQgZXZlbnRzIC0gRXh0ZW5zaW9uCisjCisK K1NlY3Rpb246IENsYXNzTmFtZSAtIFdhaXRFdmVudEV4dGVuc2lvbgorCitXQUlUX0VWRU5U X0VYVEVOU0lPTgkiRXh0ZW5zaW9uIgkiV2FpdGluZyBpbiBhbiBleHRlbnNpb24uIgorCisj CisjIFdhaXQgZXZlbnRzIC0gTFdMb2NrCisjCisjIFRoaXMgY2xhc3Mgb2Ygd2FpdCBldmVu dHMgaGFzIGl0cyBvd24gc2V0IG9mIEMgc3RydWN0dXJlLCBzbyB0aGVzZSBhcmUKKyMgb25s eSB1c2VkIGZvciB0aGUgZG9jdW1lbnRhdGlvbi4KKyMKKworU2VjdGlvbjogQ2xhc3NOYW1l IC0gV2FpdEV2ZW50TFdMb2NrCisKK1dBSVRfRVZFTlRfRE9DT05MWQkiU2htZW1JbmRleCIJ IldhaXRpbmcgdG8gZmluZCBvciBhbGxvY2F0ZSBzcGFjZSBpbiBzaGFyZWQgbWVtb3J5LiIK K1dBSVRfRVZFTlRfRE9DT05MWQkiT2lkR2VuIgkiV2FpdGluZyB0byBhbGxvY2F0ZSBhIG5l dyBPSUQuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJYaWRHZW4iCSJXYWl0aW5nIHRvIGFsbG9j YXRlIGEgbmV3IHRyYW5zYWN0aW9uIElELiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiUHJvY0Fy cmF5IgkiV2FpdGluZyB0byBhY2Nlc3MgdGhlIHNoYXJlZCBwZXItcHJvY2VzcyBkYXRhIHN0 cnVjdHVyZXMgKHR5cGljYWxseSwgdG8gZ2V0IGEgc25hcHNob3Qgb3IgcmVwb3J0IGEgc2Vz c2lvbidzIHRyYW5zYWN0aW9uIElEKS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlNJbnZhbFJl YWQiCSJXYWl0aW5nIHRvIHJldHJpZXZlIG1lc3NhZ2VzIGZyb20gdGhlIHNoYXJlZCBjYXRh bG9nIGludmFsaWRhdGlvbiBxdWV1ZS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlNJbnZhbFdy aXRlIgkiV2FpdGluZyB0byBhZGQgYSBtZXNzYWdlIHRvIHRoZSBzaGFyZWQgY2F0YWxvZyBp bnZhbGlkYXRpb24gcXVldWUuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJXQUxCdWZNYXBwaW5n IgkiV2FpdGluZyB0byByZXBsYWNlIGEgcGFnZSBpbiBXQUwgYnVmZmVycy4iCitXQUlUX0VW RU5UX0RPQ09OTFkJIldBTFdyaXRlIgkiV2FpdGluZyBmb3IgV0FMIGJ1ZmZlcnMgdG8gYmUg d3JpdHRlbiB0byBkaXNrLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiQ29udHJvbEZpbGUiCSJX YWl0aW5nIHRvIHJlYWQgb3IgdXBkYXRlIHRoZSA8ZmlsZW5hbWU+cGdfY29udHJvbDwvZmls ZW5hbWU+IGZpbGUgb3IgY3JlYXRlIGEgbmV3IFdBTCBmaWxlLiIKK1dBSVRfRVZFTlRfRE9D T05MWQkiWGFjdFNMUlUiCSJXYWl0aW5nIHRvIGFjY2VzcyB0aGUgdHJhbnNhY3Rpb24gc3Rh dHVzIFNMUlUgY2FjaGUuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJTdWJ0cmFuc1NMUlUiCSJX YWl0aW5nIHRvIGFjY2VzcyB0aGUgc3ViLXRyYW5zYWN0aW9uIFNMUlUgY2FjaGUuIgorV0FJ VF9FVkVOVF9ET0NPTkxZCSJNdWx0aVhhY3RHZW4iCSJXYWl0aW5nIHRvIHJlYWQgb3IgdXBk YXRlIHNoYXJlZCBtdWx0aXhhY3Qgc3RhdGUuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJNdWx0 aVhhY3RPZmZzZXRTTFJVIgkiV2FpdGluZyB0byBhY2Nlc3MgdGhlIG11bHRpeGFjdCBvZmZz ZXQgU0xSVSBjYWNoZS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIk11bHRpWGFjdE1lbWJlclNM UlUiCSJXYWl0aW5nIHRvIGFjY2VzcyB0aGUgbXVsdGl4YWN0IG1lbWJlciBTTFJVIGNhY2hl LiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiUmVsQ2FjaGVJbml0IgkiV2FpdGluZyB0byByZWFk IG9yIHVwZGF0ZSBhIDxmaWxlbmFtZT5wZ19pbnRlcm5hbC5pbml0PC9maWxlbmFtZT4gcmVs YXRpb24gY2FjaGUgaW5pdGlhbGl6YXRpb24gZmlsZS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJ IkNoZWNrcG9pbnRlckNvbW0iCSJXYWl0aW5nIHRvIG1hbmFnZSBmc3luYyByZXF1ZXN0cy4i CitXQUlUX0VWRU5UX0RPQ09OTFkJIlR3b1BoYXNlU3RhdGUiCSJXYWl0aW5nIHRvIHJlYWQg b3IgdXBkYXRlIHRoZSBzdGF0ZSBvZiBwcmVwYXJlZCB0cmFuc2FjdGlvbnMuIgorV0FJVF9F VkVOVF9ET0NPTkxZCSJUYWJsZXNwYWNlQ3JlYXRlIgkiV2FpdGluZyB0byBjcmVhdGUgb3Ig ZHJvcCBhIHRhYmxlc3BhY2UuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJCdHJlZVZhY3V1bSIJ IldhaXRpbmcgdG8gcmVhZCBvciB1cGRhdGUgdmFjdXVtLXJlbGF0ZWQgaW5mb3JtYXRpb24g Zm9yIGEgQi10cmVlIGluZGV4LiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiQWRkaW5TaG1lbUlu aXQiCSJXYWl0aW5nIHRvIG1hbmFnZSBhbiBleHRlbnNpb24ncyBzcGFjZSBhbGxvY2F0aW9u IGluIHNoYXJlZCBtZW1vcnkuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJBdXRvdmFjdXVtIgki V2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSB0aGUgY3VycmVudCBzdGF0ZSBvZiBhdXRvdmFj dXVtIHdvcmtlcnMuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJBdXRvdmFjdXVtU2NoZWR1bGUi CSJXYWl0aW5nIHRvIGVuc3VyZSB0aGF0IGEgdGFibGUgc2VsZWN0ZWQgZm9yIGF1dG92YWN1 dW0gc3RpbGwgbmVlZHMgdmFjdXVtaW5nLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiU3luY1Nj YW4iCSJXYWl0aW5nIHRvIHNlbGVjdCB0aGUgc3RhcnRpbmcgbG9jYXRpb24gb2YgYSBzeW5j aHJvbml6ZWQgdGFibGUgc2Nhbi4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlJlbGF0aW9uTWFw cGluZyIJIldhaXRpbmcgdG8gcmVhZCBvciB1cGRhdGUgYSA8ZmlsZW5hbWU+cGdfZmlsZW5v ZGUubWFwPC9maWxlbmFtZT4gZmlsZSAodXNlZCB0byB0cmFjayB0aGUgZmlsZW5vZGUgYXNz aWdubWVudHMgb2YgY2VydGFpbiBzeXN0ZW0gY2F0YWxvZ3MpLiIKK1dBSVRfRVZFTlRfRE9D T05MWQkiTm90aWZ5U0xSVSIJIldhaXRpbmcgdG8gYWNjZXNzIHRoZSA8Y29tbWFuZD5OT1RJ Rlk8L2NvbW1hbmQ+IG1lc3NhZ2UgU0xSVSBjYWNoZS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJ Ik5vdGlmeVF1ZXVlIgkiV2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSA8Y29tbWFuZD5OT1RJ Rlk8L2NvbW1hbmQ+IG1lc3NhZ2VzLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiU2VyaWFsaXph YmxlWGFjdEhhc2giCSJXYWl0aW5nIHRvIHJlYWQgb3IgdXBkYXRlIGluZm9ybWF0aW9uIGFi b3V0IHNlcmlhbGl6YWJsZSB0cmFuc2FjdGlvbnMuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJT ZXJpYWxpemFibGVGaW5pc2hlZExpc3QiCSJXYWl0aW5nIHRvIGFjY2VzcyB0aGUgbGlzdCBv ZiBmaW5pc2hlZCBzZXJpYWxpemFibGUgdHJhbnNhY3Rpb25zLiIKK1dBSVRfRVZFTlRfRE9D T05MWQkiU2VyaWFsaXphYmxlUHJlZGljYXRlTGlzdCIJIldhaXRpbmcgdG8gYWNjZXNzIHRo ZSBsaXN0IG9mIHByZWRpY2F0ZSBsb2NrcyBoZWxkIGJ5IHNlcmlhbGl6YWJsZSB0cmFuc2Fj dGlvbnMuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJTZXJpYWxTTFJVIgkiV2FpdGluZyB0byBh Y2Nlc3MgdGhlIHNlcmlhbGl6YWJsZSB0cmFuc2FjdGlvbiBjb25mbGljdCBTTFJVIGNhY2hl LiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiU3luY1JlcCIJIldhaXRpbmcgdG8gcmVhZCBvciB1 cGRhdGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHN0YXRlIG9mIHN5bmNocm9ub3VzIHJlcGxp Y2F0aW9uLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiQmFja2dyb3VuZFdvcmtlciIJIldhaXRp bmcgdG8gcmVhZCBvciB1cGRhdGUgYmFja2dyb3VuZCB3b3JrZXIgc3RhdGUuIgorV0FJVF9F VkVOVF9ET0NPTkxZCSJEeW5hbWljU2hhcmVkTWVtb3J5Q29udHJvbCIJIldhaXRpbmcgdG8g cmVhZCBvciB1cGRhdGUgZHluYW1pYyBzaGFyZWQgbWVtb3J5IGFsbG9jYXRpb24gaW5mb3Jt YXRpb24uIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJBdXRvRmlsZSIJIldhaXRpbmcgdG8gdXBk YXRlIHRoZSA8ZmlsZW5hbWU+cG9zdGdyZXNxbC5hdXRvLmNvbmY8L2ZpbGVuYW1lPiBmaWxl LiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiUmVwbGljYXRpb25TbG90QWxsb2NhdGlvbiIJIldh aXRpbmcgdG8gYWxsb2NhdGUgb3IgZnJlZSBhIHJlcGxpY2F0aW9uIHNsb3QuIgorV0FJVF9F VkVOVF9ET0NPTkxZCSJSZXBsaWNhdGlvblNsb3RDb250cm9sIgkiV2FpdGluZyB0byByZWFk IG9yIHVwZGF0ZSByZXBsaWNhdGlvbiBzbG90IHN0YXRlLiIKK1dBSVRfRVZFTlRfRE9DT05M WQkiQ29tbWl0VHNTTFJVIgkiV2FpdGluZyB0byBhY2Nlc3MgdGhlIGNvbW1pdCB0aW1lc3Rh bXAgU0xSVSBjYWNoZS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIkNvbW1pdFRzIgkiV2FpdGlu ZyB0byByZWFkIG9yIHVwZGF0ZSB0aGUgbGFzdCB2YWx1ZSBzZXQgZm9yIGEgdHJhbnNhY3Rp b24gY29tbWl0IHRpbWVzdGFtcC4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlJlcGxpY2F0aW9u T3JpZ2luIgkiV2FpdGluZyB0byBjcmVhdGUsIGRyb3Agb3IgdXNlIGEgcmVwbGljYXRpb24g b3JpZ2luLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiTXVsdGlYYWN0VHJ1bmNhdGlvbiIJIldh aXRpbmcgdG8gcmVhZCBvciB0cnVuY2F0ZSBtdWx0aXhhY3QgaW5mb3JtYXRpb24uIgorV0FJ VF9FVkVOVF9ET0NPTkxZCSJPbGRTbmFwc2hvdFRpbWVNYXAiCSJXYWl0aW5nIHRvIHJlYWQg b3IgdXBkYXRlIG9sZCBzbmFwc2hvdCBjb250cm9sIGluZm9ybWF0aW9uLiIKK1dBSVRfRVZF TlRfRE9DT05MWQkiTG9naWNhbFJlcFdvcmtlciIJIldhaXRpbmcgdG8gcmVhZCBvciB1cGRh dGUgdGhlIHN0YXRlIG9mIGxvZ2ljYWwgcmVwbGljYXRpb24gd29ya2Vycy4iCitXQUlUX0VW RU5UX0RPQ09OTFkJIlhhY3RUcnVuY2F0aW9uIgkiV2FpdGluZyB0byBleGVjdXRlIDxmdW5j dGlvbj5wZ194YWN0X3N0YXR1czwvZnVuY3Rpb24+IG9yIHVwZGF0ZSB0aGUgb2xkZXN0IHRy YW5zYWN0aW9uIElEIGF2YWlsYWJsZSB0byBpdC4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIldy YXBMaW1pdHNWYWN1dW0iCSJXYWl0aW5nIHRvIHVwZGF0ZSBsaW1pdHMgb24gdHJhbnNhY3Rp b24gaWQgYW5kIG11bHRpeGFjdCBjb25zdW1wdGlvbi4iCitXQUlUX0VWRU5UX0RPQ09OTFkJ Ik5vdGlmeVF1ZXVlVGFpbCIJIldhaXRpbmcgdG8gdXBkYXRlIGxpbWl0IG9uIDxjb21tYW5k Pk5PVElGWTwvY29tbWFuZD4gbWVzc2FnZSBzdG9yYWdlLiIKKworV0FJVF9FVkVOVF9ET0NP TkxZCSJYYWN0QnVmZmVyIgkiV2FpdGluZyBmb3IgSS9PIG9uIGEgdHJhbnNhY3Rpb24gc3Rh dHVzIFNMUlUgYnVmZmVyLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiQ29tbWl0VHNCdWZmZXIi CSJXYWl0aW5nIGZvciBJL08gb24gYSBjb21taXQgdGltZXN0YW1wIFNMUlUgYnVmZmVyLiIK K1dBSVRfRVZFTlRfRE9DT05MWQkiU3VidHJhbnNCdWZmZXIiCSJXYWl0aW5nIGZvciBJL08g b24gYSBzdWItdHJhbnNhY3Rpb24gU0xSVSBidWZmZXIuIgorV0FJVF9FVkVOVF9ET0NPTkxZ CSJNdWx0aVhhY3RPZmZzZXRCdWZmZXIiCSJXYWl0aW5nIGZvciBJL08gb24gYSBtdWx0aXhh Y3Qgb2Zmc2V0IFNMUlUgYnVmZmVyLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiTXVsdGlYYWN0 TWVtYmVyQnVmZmVyIgkiV2FpdGluZyBmb3IgSS9PIG9uIGEgbXVsdGl4YWN0IG1lbWJlciBT TFJVIGJ1ZmZlci4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIk5vdGlmeUJ1ZmZlciIJIldhaXRp bmcgZm9yIEkvTyBvbiBhIDxjb21tYW5kPk5PVElGWTwvY29tbWFuZD4gbWVzc2FnZSBTTFJV IGJ1ZmZlci4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlNlcmlhbEJ1ZmZlciIJIldhaXRpbmcg Zm9yIEkvTyBvbiBhIHNlcmlhbGl6YWJsZSB0cmFuc2FjdGlvbiBjb25mbGljdCBTTFJVIGJ1 ZmZlci4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIldBTEluc2VydCIJIldhaXRpbmcgdG8gaW5z ZXJ0IFdBTCBkYXRhIGludG8gYSBtZW1vcnkgYnVmZmVyLiIKK1dBSVRfRVZFTlRfRE9DT05M WQkiQnVmZmVyQ29udGVudCIJIldhaXRpbmcgdG8gYWNjZXNzIGEgZGF0YSBwYWdlIGluIG1l bW9yeS4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlJlcGxpY2F0aW9uT3JpZ2luU3RhdGUiCSJX YWl0aW5nIHRvIHJlYWQgb3IgdXBkYXRlIHRoZSBwcm9ncmVzcyBvZiBvbmUgcmVwbGljYXRp b24gb3JpZ2luLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiUmVwbGljYXRpb25TbG90SU8iCSJX YWl0aW5nIGZvciBJL08gb24gYSByZXBsaWNhdGlvbiBzbG90LiIKK1dBSVRfRVZFTlRfRE9D T05MWQkiTG9ja0Zhc3RQYXRoIgkiV2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSBhIHByb2Nl c3MnIGZhc3QtcGF0aCBsb2NrIGluZm9ybWF0aW9uLiIKK1dBSVRfRVZFTlRfRE9DT05MWQki QnVmZmVyTWFwcGluZyIJIldhaXRpbmcgdG8gYXNzb2NpYXRlIGEgZGF0YSBibG9jayB3aXRo IGEgYnVmZmVyIGluIHRoZSBidWZmZXIgcG9vbC4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIkxv Y2tNYW5hZ2VyIgkiV2FpdGluZyB0byByZWFkIG9yIHVwZGF0ZSBpbmZvcm1hdGlvbiAgYWJv dXQgPHF1b3RlPmhlYXZ5d2VpZ2h0PC9xdW90ZT4gbG9ja3MuIgorV0FJVF9FVkVOVF9ET0NP TkxZCSJQcmVkaWNhdGVMb2NrTWFuYWdlciIJIldhaXRpbmcgdG8gYWNjZXNzIHByZWRpY2F0 ZSBsb2NrIGluZm9ybWF0aW9uIHVzZWQgYnkgc2VyaWFsaXphYmxlIHRyYW5zYWN0aW9ucy4i CitXQUlUX0VWRU5UX0RPQ09OTFkJIlBhcmFsbGVsSGFzaEpvaW4iCSJXYWl0aW5nIHRvIHN5 bmNocm9uaXplIHdvcmtlcnMgZHVyaW5nIFBhcmFsbGVsIEhhc2ggSm9pbiBwbGFuIGV4ZWN1 dGlvbi4iCitXQUlUX0VWRU5UX0RPQ09OTFkJIlBhcmFsbGVsUXVlcnlEU0EiCSJXYWl0aW5n IGZvciBwYXJhbGxlbCBxdWVyeSBkeW5hbWljIHNoYXJlZCBtZW1vcnkgYWxsb2NhdGlvbi4i CitXQUlUX0VWRU5UX0RPQ09OTFkJIlBlclNlc3Npb25EU0EiCSJXYWl0aW5nIGZvciBwYXJh bGxlbCBxdWVyeSBkeW5hbWljIHNoYXJlZCBtZW1vcnkgYWxsb2NhdGlvbi4iCitXQUlUX0VW RU5UX0RPQ09OTFkJIlBlclNlc3Npb25SZWNvcmRUeXBlIgkiV2FpdGluZyB0byBhY2Nlc3Mg YSBwYXJhbGxlbCBxdWVyeSdzIGluZm9ybWF0aW9uIGFib3V0IGNvbXBvc2l0ZSB0eXBlcy4i CitXQUlUX0VWRU5UX0RPQ09OTFkJIlBlclNlc3Npb25SZWNvcmRUeXBtb2QiCSJXYWl0aW5n IHRvIGFjY2VzcyBhIHBhcmFsbGVsIHF1ZXJ5J3MgaW5mb3JtYXRpb24gYWJvdXQgdHlwZSBt b2RpZmllcnMgdGhhdCBpZGVudGlmeSBhbm9ueW1vdXMgcmVjb3JkIHR5cGVzLiIKK1dBSVRf RVZFTlRfRE9DT05MWQkiU2hhcmVkVHVwbGVTdG9yZSIJIldhaXRpbmcgdG8gYWNjZXNzIGEg c2hhcmVkIHR1cGxlIHN0b3JlIGR1cmluZyBwYXJhbGxlbCBxdWVyeS4iCitXQUlUX0VWRU5U X0RPQ09OTFkJIlNoYXJlZFRpZEJpdG1hcCIJIldhaXRpbmcgdG8gYWNjZXNzIGEgc2hhcmVk IFRJRCBiaXRtYXAgZHVyaW5nIGEgcGFyYWxsZWwgYml0bWFwIGluZGV4IHNjYW4uIgorV0FJ VF9FVkVOVF9ET0NPTkxZCSJQYXJhbGxlbEFwcGVuZCIJIldhaXRpbmcgdG8gY2hvb3NlIHRo ZSBuZXh0IHN1YnBsYW4gZHVyaW5nIFBhcmFsbGVsIEFwcGVuZCBwbGFuIGV4ZWN1dGlvbi4i CitXQUlUX0VWRU5UX0RPQ09OTFkJIlBlclhhY3RQcmVkaWNhdGVMaXN0IgkiV2FpdGluZyB0 byBhY2Nlc3MgdGhlIGxpc3Qgb2YgcHJlZGljYXRlIGxvY2tzIGhlbGQgYnkgdGhlIGN1cnJl bnQgc2VyaWFsaXphYmxlIHRyYW5zYWN0aW9uIGR1cmluZyBhIHBhcmFsbGVsIHF1ZXJ5LiIK K1dBSVRfRVZFTlRfRE9DT05MWQkiUGdTdGF0c0RTQSIJIldhaXRpbmcgZm9yIHN0YXRzIGR5 bmFtaWMgc2hhcmVkIG1lbW9yeSBhbGxvY2F0b3IgYWNjZXNzLiIKK1dBSVRfRVZFTlRfRE9D T05MWQkiUGdTdGF0c0hhc2giCSJXYWl0aW5nIGZvciBzdGF0cyBzaGFyZWQgbWVtb3J5IGhh c2ggdGFibGUgYWNjZXNzLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiUGdTdGF0c0RhdGEiCSJX YWl0aW5nIGZvciBzaGFyZWQgbWVtb3J5IHN0YXRzIGRhdGEgYWNjZXNzLiIKK1dBSVRfRVZF TlRfRE9DT05MWQkiTG9naWNhbFJlcExhdW5jaGVyRFNBIgkiV2FpdGluZyB0byBhY2Nlc3Mg bG9naWNhbCByZXBsaWNhdGlvbiBsYXVuY2hlcidzIGR5bmFtaWMgc2hhcmVkIG1lbW9yeSBh bGxvY2F0b3IuIgorV0FJVF9FVkVOVF9ET0NPTkxZCSJMb2dpY2FsUmVwTGF1bmNoZXJIYXNo IgkiV2FpdGluZyB0byBhY2Nlc3MgbG9naWNhbCByZXBsaWNhdGlvbiBsYXVuY2hlcidzIHNo YXJlZCBoYXNoIHRhYmxlLiIKKworIworIyBXYWl0IGV2ZW4gLSBMb2NrCisjCisjIFRoaXMg Y2xhc3Mgb2Ygd2FpdCBldmVudHMgaGFzIGl0cyBvd24gc2V0IG9mIEMgc3RydWN0dXJlLCBz byB0aGVzZSBhcmUKKyMgb25seSB1c2VkIGZvciB0aGUgZG9jdW1lbnRhdGlvbi4KKyMKKwor U2VjdGlvbjogQ2xhc3NOYW1lIC0gV2FpdEV2ZW50TG9jaworCitXQUlUX0VWRU5UX0RPQ09O TFkJInJlbGF0aW9uIgkiV2FpdGluZyB0byBhY3F1aXJlIGEgbG9jayBvbiBhIHJlbGF0aW9u LiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiZXh0ZW5kIgkiV2FpdGluZyB0byBleHRlbmQgYSBy ZWxhdGlvbi4iCitXQUlUX0VWRU5UX0RPQ09OTFkJImZyb3plbmlkIgkiV2FpdGluZyB0byB1 cGRhdGUgPHN0cnVjdG5hbWU+cGdfZGF0YWJhc2U8L3N0cnVjdG5hbWU+LjxzdHJ1Y3RmaWVs ZD5kYXRmcm96ZW54aWQ8L3N0cnVjdGZpZWxkPiBhbmQgPHN0cnVjdG5hbWU+cGdfZGF0YWJh c2U8L3N0cnVjdG5hbWU+LjxzdHJ1Y3RmaWVsZD5kYXRtaW5teGlkPC9zdHJ1Y3RmaWVsZD4u IgorV0FJVF9FVkVOVF9ET0NPTkxZCSJwYWdlIgkiV2FpdGluZyB0byBhY3F1aXJlIGEgbG9j ayBvbiBhIHBhZ2Ugb2YgYSByZWxhdGlvbi4iCitXQUlUX0VWRU5UX0RPQ09OTFkJInR1cGxl IgkiV2FpdGluZyB0byBhY3F1aXJlIGEgbG9jayBvbiBhIHR1cGxlLiIKK1dBSVRfRVZFTlRf RE9DT05MWQkidHJhbnNhY3Rpb25pZCIJIldhaXRpbmcgZm9yIGEgdHJhbnNhY3Rpb24gdG8g ZmluaXNoLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkidmlydHVhbHhpZCIJIldhaXRpbmcgdG8g YWNxdWlyZSBhIHZpcnR1YWwgdHJhbnNhY3Rpb24gSUQgbG9jazsgc2VlIDx4cmVmIGxpbmtl bmQ9InRyYW5zYWN0aW9uLWlkIi8+LiIKK1dBSVRfRVZFTlRfRE9DT05MWQkic3BlY3Rva2Vu IgkiV2FpdGluZyB0byBhY3F1aXJlIGEgc3BlY3VsYXRpdmUgaW5zZXJ0aW9uIGxvY2suIgor V0FJVF9FVkVOVF9ET0NPTkxZCSJvYmplY3QiCSJXYWl0aW5nIHRvIGFjcXVpcmUgYSBsb2Nr IG9uIGEgbm9uLXJlbGF0aW9uIGRhdGFiYXNlIG9iamVjdC4iCitXQUlUX0VWRU5UX0RPQ09O TFkJInVzZXJsb2NrIgkiV2FpdGluZyB0byBhY3F1aXJlIGEgdXNlciBsb2NrLiIKK1dBSVRf RVZFTlRfRE9DT05MWQkiYWR2aXNvcnkiCSJXYWl0aW5nIHRvIGFjcXVpcmUgYW4gYWR2aXNv cnkgdXNlciBsb2NrLiIKK1dBSVRfRVZFTlRfRE9DT05MWQkiYXBwbHl0cmFuc2FjdGlvbiIJ IldhaXRpbmcgdG8gYWNxdWlyZSBhIGxvY2sgb24gYSByZW1vdGUgdHJhbnNhY3Rpb24gYmVp bmcgYXBwbGllZCBieSBhIGxvZ2ljYWwgcmVwbGljYXRpb24gc3Vic2NyaWJlci4iCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvbG9ja2Z1bmNzLmMgYi9zcmMvYmFja2Vu ZC91dGlscy9hZHQvbG9ja2Z1bmNzLmMKaW5kZXggZjliOTU5MDk5Ny4uZDA1ZTIwYjJjOCAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L2xvY2tmdW5jcy5jCisrKyBiL3Ny Yy9iYWNrZW5kL3V0aWxzL2FkdC9sb2NrZnVuY3MuYwpAQCAtMjQsNyArMjQsOCBAQAogCiAv KgogICogVGhpcyBtdXN0IG1hdGNoIGVudW0gTG9ja1RhZ1R5cGUhICBBbHNvLCBiZSBzdXJl IHRvIGRvY3VtZW50IGFueSBjaGFuZ2VzCi0gKiBpbiB0aGUgZG9jcyBmb3IgdGhlIHBnX2xv Y2tzIHZpZXcgYW5kIGZvciB3YWl0IGV2ZW50IHR5cGVzLgorICogaW4gdGhlIGRvY3MgZm9y IHRoZSBwZ19sb2NrcyB2aWV3IGFuZCB1cGRhdGUgdGhlIFdhaXRFdmVudExPQ0sgc2VjdGlv biBpbgorICogc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudF9uYW1lcy50 eHQuCiAgKi8KIGNvbnN0IGNoYXIgKmNvbnN0IExvY2tUYWdUeXBlTmFtZXNbXSA9IHsKIAki cmVsYXRpb24iLApkaWZmIC0tZ2l0IGEvc3JjL2NvbW1vbi9tZXNvbi5idWlsZCBiL3NyYy9j b21tb24vbWVzb24uYnVpbGQKaW5kZXggOWVmYzgwYWMwMi4uNTM5NDJhOWE2MSAxMDA2NDQK LS0tIGEvc3JjL2NvbW1vbi9tZXNvbi5idWlsZAorKysgYi9zcmMvY29tbW9uL21lc29uLmJ1 aWxkCkBAIC0xMTcsMTMgKzExNywxNCBAQCBjb21tb25fc291cmNlc19mcm9udGVuZF9zdGF0 aWMgKz0gZmlsZXMoCiAjIFhYWDogaW4gbW9zdCBlbnZpcm9ubWVudHMgd2UgY291bGQgcHJv YmFibHkgbGlua193aG9sZSBwZ2NvbW1vbl9zaGxpYgogIyBhZ2FpbnN0IHBnY29tbW9uX3N0 YXRpYywgaW5zdGVhZCBvZiBjb21waWxpbmcgdHdpY2UuCiAjCi0jIEZvciB0aGUgc2VydmVy IGJ1aWxkIG9mIHBnY29tbW9uLCBkZXBlbmQgb24gbHdsb2NrbmFtZXNfaCwgYmVjYXVzZSBh dCBsZWFzdAotIyBjcnlwdG9oYXNoX29wZW5zc2wuYywgaG1hY19vcGVuc3NsLmMgZGVwZW5k IG9uIGl0LiBUaGF0J3MgYXJndWFibHkgYQorIyBGb3IgdGhlIHNlcnZlciBidWlsZCBvZiBw Z2NvbW1vbiwgZGVwZW5kIG9uIGx3bG9ja25hbWVzX2ggYW5kIGJlY2F1c2UgYXQKKyMgbGVh c3QgY3J5cHRvaGFzaF9vcGVuc3NsLmMsIGhtYWNfb3BlbnNzbC5jIGRlcGVuZCBvbiBpdC4K KyMgY29udHJvbGRhdGFfdXRpbHMuYyBkZXBlbmRzIG9uIHdhaXRfZXZlbnRfdHlwZXNfaC4g VGhhdCdzIGFyZ3VhYmx5IGEKICMgbGF5ZXJpbmcgdmlvbGF0aW9uLCBidXQgLi4uCiBwZ2Nv bW1vbiA9IHt9CiBwZ2NvbW1vbl92YXJpYW50cyA9IHsKICAgJ19zcnYnOiBpbnRlcm5hbF9s aWJfYXJncyArIHsKLSAgICAnc291cmNlcyc6IGNvbW1vbl9zb3VyY2VzICsgW2x3bG9ja25h bWVzX2hdLAorICAgICdzb3VyY2VzJzogY29tbW9uX3NvdXJjZXMgKyBbbHdsb2NrbmFtZXNf aF0gKyBbd2FpdF9ldmVudF90eXBlc19oXSwKICAgICAnZGVwZW5kZW5jaWVzJzogW2JhY2tl bmRfY29tbW9uX2NvZGVdLAogICB9LAogICAnJzogZGVmYXVsdF9saWJfYXJncyArIHsKZGlm ZiAtLWdpdCBhL3NyYy9pbmNsdWRlL01ha2VmaWxlIGIvc3JjL2luY2x1ZGUvTWFrZWZpbGUK aW5kZXggNTY1NzZkY2Y1Yy4uNWQyMTMxODdlMiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv TWFrZWZpbGUKKysrIGIvc3JjL2luY2x1ZGUvTWFrZWZpbGUKQEAgLTcyLDcgKzcyLDcgQEAg dW5pbnN0YWxsOgogCiBjbGVhbjoKIAlybSAtZiB1dGlscy9mbWdyb2lkcy5oIHV0aWxzL2Zt Z3Jwcm90b3MuaCB1dGlscy9lcnJjb2Rlcy5oIHV0aWxzL2hlYWRlci1zdGFtcAotCXJtIC1m IHN0b3JhZ2UvbHdsb2NrbmFtZXMuaCB1dGlscy9wcm9iZXMuaAorCXJtIC1mIHN0b3JhZ2Uv bHdsb2NrbmFtZXMuaCB1dGlscy9wcm9iZXMuaCB1dGlscy93YWl0X2V2ZW50X3R5cGVzLmgK IAlybSAtZiBjYXRhbG9nL3NjaGVtYXBnLmggY2F0YWxvZy9zeXN0ZW1fZmtfaW5mby5oCiAJ cm0gLWYgY2F0YWxvZy9wZ18qX2QuaCBjYXRhbG9nL2hlYWRlci1zdGFtcAogCXJtIC1mIG5v ZGVzL25vZGV0YWdzLmggbm9kZXMvaGVhZGVyLXN0YW1wCmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS91dGlscy8uZ2l0aWdub3JlIGIvc3JjL2luY2x1ZGUvdXRpbHMvLmdpdGlnbm9yZQpp bmRleCAwNWNmYTdhOGQ2Li5jMWI0YzY2MjEzIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS91 dGlscy8uZ2l0aWdub3JlCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxzLy5naXRpZ25vcmUKQEAg LTMsMyArMyw0IEBACiAvcHJvYmVzLmgKIC9lcnJjb2Rlcy5oCiAvaGVhZGVyLXN0YW1wCisv d2FpdF9ldmVudF90eXBlcy5oCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS91dGlscy9tZXNv bi5idWlsZCBiL3NyYy9pbmNsdWRlL3V0aWxzL21lc29uLmJ1aWxkCmluZGV4IGMyMTJjNDA5 MWYuLjBiYWViMmY2OWYgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3V0aWxzL21lc29uLmJ1 aWxkCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxzL21lc29uLmJ1aWxkCkBAIC0xLDUgKzEsMjEg QEAKICMgQ29weXJpZ2h0IChjKSAyMDIyLTIwMjMsIFBvc3RncmVTUUwgR2xvYmFsIERldmVs b3BtZW50IEdyb3VwCiAKK3dhaXRfZXZlbnRfbmFtZXMgPSBjdXN0b21fdGFyZ2V0KCd3YWl0 X2V2ZW50X25hbWVzJywKKyAgaW5wdXQ6IGZpbGVzKCcuLi8uLi9iYWNrZW5kL3V0aWxzL2Fj dGl2aXR5L3dhaXRfZXZlbnRfbmFtZXMudHh0JyksCisgIG91dHB1dDogWyd3YWl0X2V2ZW50 X3R5cGVzLmgnXSwKKyAgY29tbWFuZDogWworICAgIHBlcmwsIGZpbGVzKCcuLi8uLi9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L2dlbmVyYXRlLXdhaXRfZXZlbnRfdHlwZXMucGwnKSwKKyAg ICAnLW8nLCAnQE9VVERJUkAnLCAnLS1jb2RlJywKKyAgICAnQElOUFVUQCcKKyAgXSwKKyAg YnVpbGRfYnlfZGVmYXVsdDogdHJ1ZSwKKyAgaW5zdGFsbDogdHJ1ZSwKKyAgaW5zdGFsbF9k aXI6IFtkaXJfaW5jbHVkZV9zZXJ2ZXIgLyAndXRpbHMnXSwKKykKKword2FpdF9ldmVudF90 eXBlc19oID0gd2FpdF9ldmVudF9uYW1lc1swXQorZ2VuZXJhdGVkX2JhY2tlbmRfaGVhZGVy cyArPSB3YWl0X2V2ZW50X3R5cGVzX2gKKwogZXJyY29kZXMgPSBjdXN0b21fdGFyZ2V0KCdl cnJjb2RlcycsCiAgIGlucHV0OiBmaWxlcygnLi4vLi4vYmFja2VuZC91dGlscy9lcnJjb2Rl cy50eHQnKSwKICAgb3V0cHV0OiBbJ2VycmNvZGVzLmgnXSwKQEAgLTU4LDMgKzc0LDUgQEAg Z2VuZXJhdGVkX3NvdXJjZXNfYWMgKz0gewogICAnc3JjL2JhY2tlbmQvdXRpbHMnOiBmbWdy dGFiX291dHB1dCArIFsnZXJyY29kZXMuaCcsICdwcm9iZXMuaCcsICdmbWdyLXN0YW1wJ10s CiAgICdzcmMvaW5jbHVkZS91dGlscyc6IFsnaGVhZGVyLXN0YW1wJ10sCiB9CisKK2dlbmVy YXRlZF9zb3VyY2VzX2FjICs9IHsnc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHknOiBbJ3dh aXRfZXZlbnRfdHlwZXMuaCddfQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvdXRpbHMvd2Fp dF9ldmVudC5oIGIvc3JjL2luY2x1ZGUvdXRpbHMvd2FpdF9ldmVudC5oCmluZGV4IGRjMDFk NGU4NGQuLjQ1MTc0MjVmODQgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3V0aWxzL3dhaXRf ZXZlbnQuaAorKysgYi9zcmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50LmgKQEAgLTI1LDIz NiArMjUsOCBAQAogI2RlZmluZSBQR19XQUlUX1RJTUVPVVQJCQkJMHgwOTAwMDAwMFUKICNk ZWZpbmUgUEdfV0FJVF9JTwkJCQkJMHgwQTAwMDAwMFUKIAotLyogLS0tLS0tLS0tLQotICog V2FpdCBFdmVudHMgLSBBY3Rpdml0eQotICoKLSAqIFVzZSB0aGlzIGNhdGVnb3J5IHdoZW4g YSBwcm9jZXNzIGlzIHdhaXRpbmcgYmVjYXVzZSBpdCBoYXMgbm8gd29yayB0byBkbywKLSAq IHVubGVzcyB0aGUgIkNsaWVudCIgb3IgIlRpbWVvdXQiIGNhdGVnb3J5IGRlc2NyaWJlcyB0 aGUgc2l0dWF0aW9uIGJldHRlci4KLSAqIFR5cGljYWxseSwgdGhpcyBzaG91bGQgb25seSBi ZSB1c2VkIGZvciBiYWNrZ3JvdW5kIHByb2Nlc3Nlcy4KLSAqIC0tLS0tLS0tLS0KLSAqLwot dHlwZWRlZiBlbnVtCi17Ci0JV0FJVF9FVkVOVF9BUkNISVZFUl9NQUlOID0gUEdfV0FJVF9B Q1RJVklUWSwKLQlXQUlUX0VWRU5UX0FVVE9WQUNVVU1fTUFJTiwKLQlXQUlUX0VWRU5UX0JH V1JJVEVSX0hJQkVSTkFURSwKLQlXQUlUX0VWRU5UX0JHV1JJVEVSX01BSU4sCi0JV0FJVF9F VkVOVF9DSEVDS1BPSU5URVJfTUFJTiwKLQlXQUlUX0VWRU5UX0xPR0lDQUxfQVBQTFlfTUFJ TiwKLQlXQUlUX0VWRU5UX0xPR0lDQUxfTEFVTkNIRVJfTUFJTiwKLQlXQUlUX0VWRU5UX0xP R0lDQUxfUEFSQUxMRUxfQVBQTFlfTUFJTiwKLQlXQUlUX0VWRU5UX1JFQ09WRVJZX1dBTF9T VFJFQU0sCi0JV0FJVF9FVkVOVF9TWVNMT0dHRVJfTUFJTiwKLQlXQUlUX0VWRU5UX1dBTF9S RUNFSVZFUl9NQUlOLAotCVdBSVRfRVZFTlRfV0FMX1NFTkRFUl9NQUlOLAotCVdBSVRfRVZF TlRfV0FMX1dSSVRFUl9NQUlOCi19IFdhaXRFdmVudEFjdGl2aXR5OwotCi0vKiAtLS0tLS0t LS0tCi0gKiBXYWl0IEV2ZW50cyAtIEJVRkZFUlBJTgotICogLS0tLS0tLS0tLQotICovCi10 eXBlZGVmIGVudW0KLXsKLQlXQUlUX0VWRU5UX0JVRkZFUl9QSU4gPSBQR19XQUlUX0JVRkZF UlBJTgotfSBXYWl0RXZlbnRCdWZmZXJQaW47Ci0KLS8qIC0tLS0tLS0tLS0KLSAqIFdhaXQg RXZlbnRzIC0gQ2xpZW50Ci0gKgotICogVXNlIHRoaXMgY2F0ZWdvcnkgd2hlbiBhIHByb2Nl c3MgaXMgd2FpdGluZyB0byBzZW5kIGRhdGEgdG8gb3IgcmVjZWl2ZSBkYXRhCi0gKiBmcm9t IHRoZSBmcm9udGVuZCBwcm9jZXNzIHRvIHdoaWNoIGl0IGlzIGNvbm5lY3RlZC4gIFRoaXMg aXMgbmV2ZXIgdXNlZCBmb3IKLSAqIGEgYmFja2dyb3VuZCBwcm9jZXNzLCB3aGljaCBoYXMg bm8gY2xpZW50IGNvbm5lY3Rpb24uCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXR5cGVkZWYgZW51 bQotewotCVdBSVRfRVZFTlRfQ0xJRU5UX1JFQUQgPSBQR19XQUlUX0NMSUVOVCwKLQlXQUlU X0VWRU5UX0NMSUVOVF9XUklURSwKLQlXQUlUX0VWRU5UX0dTU19PUEVOX1NFUlZFUiwKLQlX QUlUX0VWRU5UX0xJQlBRV0FMUkVDRUlWRVJfQ09OTkVDVCwKLQlXQUlUX0VWRU5UX0xJQlBR V0FMUkVDRUlWRVJfUkVDRUlWRSwKLQlXQUlUX0VWRU5UX1NTTF9PUEVOX1NFUlZFUiwKLQlX QUlUX0VWRU5UX1dBTF9TRU5ERVJfV0FJVF9XQUwsCi0JV0FJVF9FVkVOVF9XQUxfU0VOREVS X1dSSVRFX0RBVEEsCi19IFdhaXRFdmVudENsaWVudDsKLQotLyogLS0tLS0tLS0tLQotICog V2FpdCBFdmVudHMgLSBFWFRFTlNJT04KLSAqIC0tLS0tLS0tLS0KLSAqLwotdHlwZWRlZiBl bnVtCi17Ci0JV0FJVF9FVkVOVF9FWFRFTlNJT04gPSBQR19XQUlUX0VYVEVOU0lPTgotfSBX YWl0RXZlbnRFeHRlbnNpb247Ci0KLS8qIC0tLS0tLS0tLS0KLSAqIFdhaXQgRXZlbnRzIC0g SVBDCi0gKgotICogVXNlIHRoaXMgY2F0ZWdvcnkgd2hlbiBhIHByb2Nlc3MgY2Fubm90IGNv bXBsZXRlIHRoZSB3b3JrIGl0IGlzIGRvaW5nIGJlY2F1c2UKLSAqIGl0IGlzIHdhaXRpbmcg Zm9yIGEgbm90aWZpY2F0aW9uIGZyb20gYW5vdGhlciBwcm9jZXNzLgotICogLS0tLS0tLS0t LQotICovCi10eXBlZGVmIGVudW0KLXsKLQlXQUlUX0VWRU5UX0FQUEVORF9SRUFEWSA9IFBH X1dBSVRfSVBDLAotCVdBSVRfRVZFTlRfQVJDSElWRV9DTEVBTlVQX0NPTU1BTkQsCi0JV0FJ VF9FVkVOVF9BUkNISVZFX0NPTU1BTkQsCi0JV0FJVF9FVkVOVF9CQUNLRU5EX1RFUk1JTkFU SU9OLAotCVdBSVRfRVZFTlRfQkFDS1VQX1dBSVRfV0FMX0FSQ0hJVkUsCi0JV0FJVF9FVkVO VF9CR1dPUktFUl9TSFVURE9XTiwKLQlXQUlUX0VWRU5UX0JHV09SS0VSX1NUQVJUVVAsCi0J V0FJVF9FVkVOVF9CVFJFRV9QQUdFLAotCVdBSVRfRVZFTlRfQlVGRkVSX0lPLAotCVdBSVRf RVZFTlRfQ0hFQ0tQT0lOVF9ET05FLAotCVdBSVRfRVZFTlRfQ0hFQ0tQT0lOVF9TVEFSVCwK LQlXQUlUX0VWRU5UX0VYRUNVVEVfR0FUSEVSLAotCVdBSVRfRVZFTlRfSEFTSF9CQVRDSF9B TExPQ0FURSwKLQlXQUlUX0VWRU5UX0hBU0hfQkFUQ0hfRUxFQ1QsCi0JV0FJVF9FVkVOVF9I QVNIX0JBVENIX0xPQUQsCi0JV0FJVF9FVkVOVF9IQVNIX0JVSUxEX0FMTE9DQVRFLAotCVdB SVRfRVZFTlRfSEFTSF9CVUlMRF9FTEVDVCwKLQlXQUlUX0VWRU5UX0hBU0hfQlVJTERfSEFT SF9JTk5FUiwKLQlXQUlUX0VWRU5UX0hBU0hfQlVJTERfSEFTSF9PVVRFUiwKLQlXQUlUX0VW RU5UX0hBU0hfR1JPV19CQVRDSEVTX0RFQ0lERSwKLQlXQUlUX0VWRU5UX0hBU0hfR1JPV19C QVRDSEVTX0VMRUNULAotCVdBSVRfRVZFTlRfSEFTSF9HUk9XX0JBVENIRVNfRklOSVNILAot CVdBSVRfRVZFTlRfSEFTSF9HUk9XX0JBVENIRVNfUkVBTExPQ0FURSwKLQlXQUlUX0VWRU5U X0hBU0hfR1JPV19CQVRDSEVTX1JFUEFSVElUSU9OLAotCVdBSVRfRVZFTlRfSEFTSF9HUk9X X0JVQ0tFVFNfRUxFQ1QsCi0JV0FJVF9FVkVOVF9IQVNIX0dST1dfQlVDS0VUU19SRUFMTE9D QVRFLAotCVdBSVRfRVZFTlRfSEFTSF9HUk9XX0JVQ0tFVFNfUkVJTlNFUlQsCi0JV0FJVF9F VkVOVF9MT0dJQ0FMX0FQUExZX1NFTkRfREFUQSwKLQlXQUlUX0VWRU5UX0xPR0lDQUxfUEFS QUxMRUxfQVBQTFlfU1RBVEVfQ0hBTkdFLAotCVdBSVRfRVZFTlRfTE9HSUNBTF9TWU5DX0RB VEEsCi0JV0FJVF9FVkVOVF9MT0dJQ0FMX1NZTkNfU1RBVEVfQ0hBTkdFLAotCVdBSVRfRVZF TlRfTVFfSU5URVJOQUwsCi0JV0FJVF9FVkVOVF9NUV9QVVRfTUVTU0FHRSwKLQlXQUlUX0VW RU5UX01RX1JFQ0VJVkUsCi0JV0FJVF9FVkVOVF9NUV9TRU5ELAotCVdBSVRfRVZFTlRfUEFS QUxMRUxfQklUTUFQX1NDQU4sCi0JV0FJVF9FVkVOVF9QQVJBTExFTF9DUkVBVEVfSU5ERVhf U0NBTiwKLQlXQUlUX0VWRU5UX1BBUkFMTEVMX0ZJTklTSCwKLQlXQUlUX0VWRU5UX1BST0NB UlJBWV9HUk9VUF9VUERBVEUsCi0JV0FJVF9FVkVOVF9QUk9DX1NJR05BTF9CQVJSSUVSLAot CVdBSVRfRVZFTlRfUFJPTU9URSwKLQlXQUlUX0VWRU5UX1JFQ09WRVJZX0NPTkZMSUNUX1NO QVBTSE9ULAotCVdBSVRfRVZFTlRfUkVDT1ZFUllfQ09ORkxJQ1RfVEFCTEVTUEFDRSwKLQlX QUlUX0VWRU5UX1JFQ09WRVJZX0VORF9DT01NQU5ELAotCVdBSVRfRVZFTlRfUkVDT1ZFUllf UEFVU0UsCi0JV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9PUklHSU5fRFJPUCwKLQlXQUlUX0VW RU5UX1JFUExJQ0FUSU9OX1NMT1RfRFJPUCwKLQlXQUlUX0VWRU5UX1JFU1RPUkVfQ09NTUFO RCwKLQlXQUlUX0VWRU5UX1NBRkVfU05BUFNIT1QsCi0JV0FJVF9FVkVOVF9TWU5DX1JFUCwK LQlXQUlUX0VWRU5UX1dBTF9SRUNFSVZFUl9FWElULAotCVdBSVRfRVZFTlRfV0FMX1JFQ0VJ VkVSX1dBSVRfU1RBUlQsCi0JV0FJVF9FVkVOVF9YQUNUX0dST1VQX1VQREFURQotfSBXYWl0 RXZlbnRJUEM7Ci0KLS8qIC0tLS0tLS0tLS0KLSAqIFdhaXQgRXZlbnRzIC0gVGltZW91dAot ICoKLSAqIFVzZSB0aGlzIGNhdGVnb3J5IHdoZW4gYSBwcm9jZXNzIGlzIHdhaXRpbmcgZm9y IGEgdGltZW91dCB0byBleHBpcmUuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXR5cGVkZWYgZW51 bQotewotCVdBSVRfRVZFTlRfQkFTRV9CQUNLVVBfVEhST1RUTEUgPSBQR19XQUlUX1RJTUVP VVQsCi0JV0FJVF9FVkVOVF9DSEVDS1BPSU5UX1dSSVRFX0RFTEFZLAotCVdBSVRfRVZFTlRf UEdfU0xFRVAsCi0JV0FJVF9FVkVOVF9SRUNPVkVSWV9BUFBMWV9ERUxBWSwKLQlXQUlUX0VW RU5UX1JFQ09WRVJZX1JFVFJJRVZFX1JFVFJZX0lOVEVSVkFMLAotCVdBSVRfRVZFTlRfUkVH SVNURVJfU1lOQ19SRVFVRVNULAotCVdBSVRfRVZFTlRfU1BJTl9ERUxBWSwKLQlXQUlUX0VW RU5UX1ZBQ1VVTV9ERUxBWSwKLQlXQUlUX0VWRU5UX1ZBQ1VVTV9UUlVOQ0FURQotfSBXYWl0 RXZlbnRUaW1lb3V0OwotCi0vKiAtLS0tLS0tLS0tCi0gKiBXYWl0IEV2ZW50cyAtIElPCi0g KgotICogVXNlIHRoaXMgY2F0ZWdvcnkgd2hlbiBhIHByb2Nlc3MgaXMgd2FpdGluZyBmb3Ig YSBJTy4KLSAqIC0tLS0tLS0tLS0KLSAqLwotdHlwZWRlZiBlbnVtCi17Ci0JV0FJVF9FVkVO VF9CQVNFQkFDS1VQX1JFQUQgPSBQR19XQUlUX0lPLAotCVdBSVRfRVZFTlRfQkFTRUJBQ0tV UF9TWU5DLAotCVdBSVRfRVZFTlRfQkFTRUJBQ0tVUF9XUklURSwKLQlXQUlUX0VWRU5UX0JV RkZJTEVfUkVBRCwKLQlXQUlUX0VWRU5UX0JVRkZJTEVfV1JJVEUsCi0JV0FJVF9FVkVOVF9C VUZGSUxFX1RSVU5DQVRFLAotCVdBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1JFQUQsCi0JV0FJ VF9FVkVOVF9DT05UUk9MX0ZJTEVfU1lOQywKLQlXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9T WU5DX1VQREFURSwKLQlXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9XUklURSwKLQlXQUlUX0VW RU5UX0NPTlRST0xfRklMRV9XUklURV9VUERBVEUsCi0JV0FJVF9FVkVOVF9DT1BZX0ZJTEVf UkVBRCwKLQlXQUlUX0VWRU5UX0NPUFlfRklMRV9XUklURSwKLQlXQUlUX0VWRU5UX0RBVEFf RklMRV9FWFRFTkQsCi0JV0FJVF9FVkVOVF9EQVRBX0ZJTEVfRkxVU0gsCi0JV0FJVF9FVkVO VF9EQVRBX0ZJTEVfSU1NRURJQVRFX1NZTkMsCi0JV0FJVF9FVkVOVF9EQVRBX0ZJTEVfUFJF RkVUQ0gsCi0JV0FJVF9FVkVOVF9EQVRBX0ZJTEVfUkVBRCwKLQlXQUlUX0VWRU5UX0RBVEFf RklMRV9TWU5DLAotCVdBSVRfRVZFTlRfREFUQV9GSUxFX1RSVU5DQVRFLAotCVdBSVRfRVZF TlRfREFUQV9GSUxFX1dSSVRFLAotCVdBSVRfRVZFTlRfRFNNX0FMTE9DQVRFLAotCVdBSVRf RVZFTlRfRFNNX0ZJTExfWkVST19XUklURSwKLQlXQUlUX0VWRU5UX0xPQ0tfRklMRV9BRERU T0RBVEFESVJfUkVBRCwKLQlXQUlUX0VWRU5UX0xPQ0tfRklMRV9BRERUT0RBVEFESVJfU1lO QywKLQlXQUlUX0VWRU5UX0xPQ0tfRklMRV9BRERUT0RBVEFESVJfV1JJVEUsCi0JV0FJVF9F VkVOVF9MT0NLX0ZJTEVfQ1JFQVRFX1JFQUQsCi0JV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQ1JF QVRFX1NZTkMsCi0JV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQ1JFQVRFX1dSSVRFLAotCVdBSVRf RVZFTlRfTE9DS19GSUxFX1JFQ0hFQ0tEQVRBRElSX1JFQUQsCi0JV0FJVF9FVkVOVF9MT0dJ Q0FMX1JFV1JJVEVfQ0hFQ0tQT0lOVF9TWU5DLAotCVdBSVRfRVZFTlRfTE9HSUNBTF9SRVdS SVRFX01BUFBJTkdfU1lOQywKLQlXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9NQVBQSU5H X1dSSVRFLAotCVdBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX1NZTkMsCi0JV0FJVF9FVkVO VF9MT0dJQ0FMX1JFV1JJVEVfVFJVTkNBVEUsCi0JV0FJVF9FVkVOVF9MT0dJQ0FMX1JFV1JJ VEVfV1JJVEUsCi0JV0FJVF9FVkVOVF9SRUxBVElPTl9NQVBfUkVBRCwKLQlXQUlUX0VWRU5U X1JFTEFUSU9OX01BUF9SRVBMQUNFLAotCVdBSVRfRVZFTlRfUkVMQVRJT05fTUFQX1dSSVRF LAotCVdBSVRfRVZFTlRfUkVPUkRFUl9CVUZGRVJfUkVBRCwKLQlXQUlUX0VWRU5UX1JFT1JE RVJfQlVGRkVSX1dSSVRFLAotCVdBSVRfRVZFTlRfUkVPUkRFUl9MT0dJQ0FMX01BUFBJTkdf UkVBRCwKLQlXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfUkVBRCwKLQlXQUlUX0VWRU5U X1JFUExJQ0FUSU9OX1NMT1RfUkVTVE9SRV9TWU5DLAotCVdBSVRfRVZFTlRfUkVQTElDQVRJ T05fU0xPVF9TWU5DLAotCVdBSVRfRVZFTlRfUkVQTElDQVRJT05fU0xPVF9XUklURSwKLQlX QUlUX0VWRU5UX1NMUlVfRkxVU0hfU1lOQywKLQlXQUlUX0VWRU5UX1NMUlVfUkVBRCwKLQlX QUlUX0VWRU5UX1NMUlVfU1lOQywKLQlXQUlUX0VWRU5UX1NMUlVfV1JJVEUsCi0JV0FJVF9F VkVOVF9TTkFQQlVJTERfUkVBRCwKLQlXQUlUX0VWRU5UX1NOQVBCVUlMRF9TWU5DLAotCVdB SVRfRVZFTlRfU05BUEJVSUxEX1dSSVRFLAotCVdBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9S WV9GSUxFX1NZTkMsCi0JV0FJVF9FVkVOVF9USU1FTElORV9ISVNUT1JZX0ZJTEVfV1JJVEUs Ci0JV0FJVF9FVkVOVF9USU1FTElORV9ISVNUT1JZX1JFQUQsCi0JV0FJVF9FVkVOVF9USU1F TElORV9ISVNUT1JZX1NZTkMsCi0JV0FJVF9FVkVOVF9USU1FTElORV9ISVNUT1JZX1dSSVRF LAotCVdBSVRfRVZFTlRfVFdPUEhBU0VfRklMRV9SRUFELAotCVdBSVRfRVZFTlRfVFdPUEhB U0VfRklMRV9TWU5DLAotCVdBSVRfRVZFTlRfVFdPUEhBU0VfRklMRV9XUklURSwKLQlXQUlU X0VWRU5UX1ZFUlNJT05fRklMRV9XUklURSwKLQlXQUlUX0VWRU5UX1dBTFNFTkRFUl9USU1F TElORV9ISVNUT1JZX1JFQUQsCi0JV0FJVF9FVkVOVF9XQUxfQk9PVFNUUkFQX1NZTkMsCi0J V0FJVF9FVkVOVF9XQUxfQk9PVFNUUkFQX1dSSVRFLAotCVdBSVRfRVZFTlRfV0FMX0NPUFlf UkVBRCwKLQlXQUlUX0VWRU5UX1dBTF9DT1BZX1NZTkMsCi0JV0FJVF9FVkVOVF9XQUxfQ09Q WV9XUklURSwKLQlXQUlUX0VWRU5UX1dBTF9JTklUX1NZTkMsCi0JV0FJVF9FVkVOVF9XQUxf SU5JVF9XUklURSwKLQlXQUlUX0VWRU5UX1dBTF9SRUFELAotCVdBSVRfRVZFTlRfV0FMX1NZ TkMsCi0JV0FJVF9FVkVOVF9XQUxfU1lOQ19NRVRIT0RfQVNTSUdOLAotCVdBSVRfRVZFTlRf V0FMX1dSSVRFCi19IFdhaXRFdmVudElPOwotCisvKiBlbnVtcyBmb3Igd2FpdCBldmVudHMg Ki8KKyNpbmNsdWRlICJ1dGlscy93YWl0X2V2ZW50X3R5cGVzLmgiCiAKIGV4dGVybiBjb25z dCBjaGFyICpwZ3N0YXRfZ2V0X3dhaXRfZXZlbnQodWludDMyIHdhaXRfZXZlbnRfaW5mbyk7 CiBleHRlcm4gY29uc3QgY2hhciAqcGdzdGF0X2dldF93YWl0X2V2ZW50X3R5cGUodWludDMy IHdhaXRfZXZlbnRfaW5mbyk7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9zc2wvdC8wMDJfc2Ny YW0ucGwgYi9zcmMvdGVzdC9zc2wvdC8wMDJfc2NyYW0ucGwKaW5kZXggM2E3OThlMWE1Ni4u MjdhYmQwMmFiZiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qvc3NsL3QvMDAyX3NjcmFtLnBsCisr KyBiL3NyYy90ZXN0L3NzbC90LzAwMl9zY3JhbS5wbApAQCAtODcsOCArODcsNyBAQCAkbm9k ZS0+Y29ubmVjdF9mYWlscygKIAlleHBlY3RlZF9zdGRlcnIgPT4gcXIvaW52YWxpZCBjaGFu bmVsX2JpbmRpbmcgdmFsdWU6ICJpbnZhbGlkX3ZhbHVlIi8pOwogJG5vZGUtPmNvbm5lY3Rf b2soIiRjb21tb25fY29ubnN0ciB1c2VyPXNzbHRlc3R1c2VyIGNoYW5uZWxfYmluZGluZz1k aXNhYmxlIiwKIAkiU0NSQU0gd2l0aCBTU0wgYW5kIGNoYW5uZWxfYmluZGluZz1kaXNhYmxl Iik7Ci0kbm9kZS0+Y29ubmVjdF9vaygKLQkiJGNvbW1vbl9jb25uc3RyIHVzZXI9c3NsdGVz dHVzZXIgY2hhbm5lbF9iaW5kaW5nPXJlcXVpcmUiLAorJG5vZGUtPmNvbm5lY3Rfb2soIiRj b21tb25fY29ubnN0ciB1c2VyPXNzbHRlc3R1c2VyIGNoYW5uZWxfYmluZGluZz1yZXF1aXJl IiwKIAkiU0NSQU0gd2l0aCBTU0wgYW5kIGNoYW5uZWxfYmluZGluZz1yZXF1aXJlIik7CiAK ICMgTm93IHRlc3Qgd2hlbiB0aGUgdXNlciBoYXMgYW4gTUQ1LWVuY3J5cHRlZCBwYXNzd29y ZDsgc2hvdWxkIGZhaWwKZGlmZiAtLWdpdCBhL3NyYy90b29scy9tc3ZjL1NvbHV0aW9uLnBt IGIvc3JjL3Rvb2xzL21zdmMvU29sdXRpb24ucG0KaW5kZXggZTZkOGY5ZmVkYy4uMTMzYWNj MDlmMiAxMDA2NDQKLS0tIGEvc3JjL3Rvb2xzL21zdmMvU29sdXRpb24ucG0KKysrIGIvc3Jj L3Rvb2xzL21zdmMvU29sdXRpb24ucG0KQEAgLTU4NSw2ICs1ODUsMjUgQEAgc3ViIEdlbmVy YXRlRmlsZXMKIAkJCSdzcmMvaW5jbHVkZS9zdG9yYWdlL2x3bG9ja25hbWVzLmgnKTsKIAl9 CiAKKwlpZiAoSXNOZXdlcigKKwkJCSdzcmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50X3R5 cGVzLmgnLAorCQkJJ3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfbmFt ZXMudHh0JykpCisJeworCQlwcmludCAiR2VuZXJhdGluZyBwZ3N0YXRfd2FpdF9ldmVudC5j IGFuZCB3YWl0X2V2ZW50X3R5cGVzLmguLi5cbiI7CisJCW15ICRhY3RpdiA9ICdzcmMvYmFj a2VuZC91dGlscy9hY3Rpdml0eSc7CisJCXN5c3RlbSgKKwkJCSJwZXJsICRhY3Rpdi9nZW5l cmF0ZS13YWl0X2V2ZW50X3R5cGVzLnBsIC0tb3V0ZGlyICRhY3RpdiAtLWNvZGUgJGFjdGl2 L3dhaXRfZXZlbnRfbmFtZXMudHh0IgorCQkpOworCX0KKwlpZiAoSXNOZXdlcigKKwkJCSdz cmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50X3R5cGVzLmgnLAorCQkJJ3NyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfdHlwZXMuaCcpKQorCXsKKwkJY29weUZpbGUo CisJCQknc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudF90eXBlcy5oJywK KwkJCSdzcmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50X3R5cGVzLmgnKTsKKwl9CisKIAlp ZiAoSXNOZXdlcignc3JjL2luY2x1ZGUvdXRpbHMvcHJvYmVzLmgnLCAnc3JjL2JhY2tlbmQv dXRpbHMvcHJvYmVzLmQnKSkKIAl7CiAJCXByaW50ICJHZW5lcmF0aW5nIHByb2Jlcy5oLi4u XG4iOwpkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xzL21zdmMvY2xlYW4uYmF0IGIvc3JjL3Rvb2xz L21zdmMvY2xlYW4uYmF0CmluZGV4IGNmMzU3NjQ2MDQuLjdjYjIzZWE4OTQgMTAwNzU1Ci0t LSBhL3NyYy90b29scy9tc3ZjL2NsZWFuLmJhdAorKysgYi9zcmMvdG9vbHMvbXN2Yy9jbGVh bi5iYXQKQEAgLTQ2LDYgKzQ2LDcgQEAgaWYgZXhpc3Qgc3JjXGluY2x1ZGVcdXRpbHNcZXJy Y29kZXMuaCBkZWwgL3Egc3JjXGluY2x1ZGVcdXRpbHNcZXJyY29kZXMuaAogaWYgZXhpc3Qg c3JjXGluY2x1ZGVcdXRpbHNcZm1ncm9pZHMuaCBkZWwgL3Egc3JjXGluY2x1ZGVcdXRpbHNc Zm1ncm9pZHMuaAogaWYgZXhpc3Qgc3JjXGluY2x1ZGVcdXRpbHNcZm1ncnByb3Rvcy5oIGRl bCAvcSBzcmNcaW5jbHVkZVx1dGlsc1xmbWdycHJvdG9zLmgKIGlmIGV4aXN0IHNyY1xpbmNs dWRlXHN0b3JhZ2VcbHdsb2NrbmFtZXMuaCBkZWwgL3Egc3JjXGluY2x1ZGVcc3RvcmFnZVxs d2xvY2tuYW1lcy5oCitpZiBleGlzdCBzcmNcaW5jbHVkZVx1dGlsc1x3YWl0X2V2ZW50X3R5 cGVzLmggZGVsIC9xIHNyY1xpbmNsdWRlXHV0aWxzXHdhaXRfZXZlbnRfdHlwZXMuaAogaWYg ZXhpc3Qgc3JjXGluY2x1ZGVcdXRpbHNccHJvYmVzLmggZGVsIC9xIHNyY1xpbmNsdWRlXHV0 aWxzXHByb2Jlcy5oCiBpZiBleGlzdCBzcmNcaW5jbHVkZVxjYXRhbG9nXHNjaGVtYXBnLmgg ZGVsIC9xIHNyY1xpbmNsdWRlXGNhdGFsb2dcc2NoZW1hcGcuaAogaWYgZXhpc3Qgc3JjXGlu Y2x1ZGVcY2F0YWxvZ1xzeXN0ZW1fZmtfaW5mby5oIGRlbCAvcSBzcmNcaW5jbHVkZVxjYXRh bG9nXHN5c3RlbV9ma19pbmZvLmgKQEAgLTUzLDYgKzU0LDggQEAgaWYgZXhpc3Qgc3JjXGlu Y2x1ZGVcY2F0YWxvZ1xwZ18qX2QuaCBkZWwgL3Egc3JjXGluY2x1ZGVcY2F0YWxvZ1xwZ18q X2QuaAogaWYgZXhpc3Qgc3JjXGluY2x1ZGVcY2F0YWxvZ1xoZWFkZXItc3RhbXAgZGVsIC9x IHNyY1xpbmNsdWRlXGNhdGFsb2dcaGVhZGVyLXN0YW1wCiBpZiBleGlzdCBkb2Ncc3JjXHNn bWxcdmVyc2lvbi5zZ21sIGRlbCAvcSBkb2Ncc3JjXHNnbWxcdmVyc2lvbi5zZ21sCiAKK2lm ICVESVNUJT09MSBpZiBleGlzdCBzcmNcYmFja2VuZFx1dGlsc1xhY3Rpdml0eVxwZ3N0YXRf d2FpdF9ldmVudC5jIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xhY3Rpdml0eVxwZ3N0YXRf d2FpdF9ldmVudC5jCitpZiAlRElTVCU9PTEgaWYgZXhpc3Qgc3JjXGJhY2tlbmRcdXRpbHNc YWN0aXZpdHlcd2FpdF9ldmVudF90eXBlcy5oIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xh Y3Rpdml0eVx3YWl0X2V2ZW50X3R5cGVzLmgKIGlmICVESVNUJT09MSBpZiBleGlzdCBzcmNc YmFja2VuZFx1dGlsc1xmbWdyb2lkcy5oIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xmbWdy b2lkcy5oCiBpZiAlRElTVCU9PTEgaWYgZXhpc3Qgc3JjXGJhY2tlbmRcdXRpbHNcZm1ncnBy b3Rvcy5oIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xmbWdycHJvdG9zLmgKIGlmICVESVNU JT09MSBpZiBleGlzdCBzcmNcYmFja2VuZFx1dGlsc1xmbWdydGFiLmMgZGVsIC9xIHNyY1xi YWNrZW5kXHV0aWxzXGZtZ3J0YWIuYwotLSAKMi4zNC4xCgo= --------------c9TE5p6TbYjLUbFOblLdyNyY--