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 1prk1q-0007Fd-Mr for pgsql-hackers@arkaria.postgresql.org; Wed, 26 Apr 2023 18:38:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1prk1p-00044y-01 for pgsql-hackers@arkaria.postgresql.org; Wed, 26 Apr 2023 18:38:09 +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 1prk1o-00044g-G5 for pgsql-hackers@lists.postgresql.org; Wed, 26 Apr 2023 18:38:08 +0000 Received: from mail-wm1-x332.google.com ([2a00:1450:4864:20::332]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1prk1j-005DwK-Ps for pgsql-hackers@lists.postgresql.org; Wed, 26 Apr 2023 18:38:07 +0000 Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-3f20215fa70so31592545e9.0 for ; Wed, 26 Apr 2023 11:38:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1682534282; x=1685126282; 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=DRfN8/DtXNLKpxz8aQxCLcTdBPhT0n7TaMJpY07gS+E=; b=C5j908Az+nrdDIdazOkJ4PYLhxfXYbExJs+NdyiupKijKsyBsUJpgN0khUD0bDsHDE /0aDeqa40gZLx8IonPHg0eJ48H4c6qjGfvzTcHu2Fp5g3JO6HRiC4ijLrGFz8snv4Rj7 NkvR+l6vTz4r7TL2ER7GK6YF7Mj9Jg0M/qRypn/qFZmzHjA/wwTw8Qe6qYMTVP7ohD0i nwldF9Xypt5OuPaiPZU4yCmAdjMQnxn6tPhUU3mWJNI8CgjIhVTJO8s73M2SSG6TgpZI o8bcajaG+eCXrwac2IjudJQCd/oTsl8yggFpEjcOmcsEoBB4+rrYF5BaP9O5UjKgLSOB 98xA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682534282; x=1685126282; 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=DRfN8/DtXNLKpxz8aQxCLcTdBPhT0n7TaMJpY07gS+E=; b=ceeWt3S2JwiqFAvTNwrleYOVD1R6VS50n+rsxH0YfVOmBH5jBrZZWh8MK88FscXT/8 8fbRpu7t0jDCuebCKbJ9ZVyc9JOAld0ju25JtB7D5q9SbS7RM+GRovBWN7t4Nmen2Vyd aKJTkWZlE7gmI3sIsN7XgfEh6LRqVg27dTYj1GQBRB4lwRia+AX8nhdILQ9sXnbx5mmt JW1MvmTcuSJd4ds7tSmZs4bnJWvTbRs+jqtToZjW4Q0ZuBNupkQ4PhhICt3iw9a/CcTc yUcwns0QyL1lwsAF3n1+TayZ3tPTsjZcYPDwvbIHfiv3yalh5proQvhY0QzmQVeVPUEJ rQRQ== X-Gm-Message-State: AAQBX9elSDo+X62cDr5DeJY16Ak83LRBTekZMRZTQ/+k5NlYeCZh6OMC tgpJAS+342XP7Mvw5sgkPjU= X-Google-Smtp-Source: AKy350ZO15POzNmjOw5OrQvcZz6003KziQPmwBKnzvImTKPKtfWkNKmly5e8V5ZXVyBZ8/vh0wYCYg== X-Received: by 2002:a05:600c:2257:b0:3f1:76d4:d43f with SMTP id a23-20020a05600c225700b003f176d4d43fmr14771443wmm.8.1682534281876; Wed, 26 Apr 2023 11:38:01 -0700 (PDT) Received: from [192.168.27.131] ([54.239.6.186]) by smtp.gmail.com with ESMTPSA id p10-20020a1c544a000000b003f03d483966sm22198332wmi.44.2023.04.26.11.38.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 26 Apr 2023 11:38:01 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------rEJ0bicDLfIZljPKHSoOWFMP" Message-ID: <64fc361e-f4ed-45eb-0cfb-c8110872530d@gmail.com> Date: Wed, 26 Apr 2023 20:36:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.10.1 Subject: Re: Autogenerate some wait events code and documentation Content-Language: en-US From: "Drouvot, Bertrand" To: Michael Paquier Cc: PostgreSQL Hackers References: <77a86b3a-c4a8-5f5d-69b9-d70bbf2e9b98@gmail.com> <6b6cdc76-e10e-95f8-62cf-3a3137c86df5@gmail.com> <2e649ed7-6c66-5d6a-16d4-5d5367d40e69@gmail.com> In-Reply-To: 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. --------------rEJ0bicDLfIZljPKHSoOWFMP Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 4/26/23 6:51 PM, Drouvot, Bertrand wrote: > Hi, > > On 4/25/23 7:15 AM, Michael Paquier wrote: > > Will do, no problem at all. > Please find attached V5 addressing the previous comments except the "ordering" one (need to look deeper at this). Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com --------------rEJ0bicDLfIZljPKHSoOWFMP Content-Type: text/plain; charset=UTF-8; name="v5-0001-Generating-wait_event_types.h-pgstat_wait_event.c.patch" Content-Disposition: attachment; filename*0="v5-0001-Generating-wait_event_types.h-pgstat_wait_event.c.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBiOWEyNzBjNzJlZGU4MDBmMjgxOWIzMjZhZWY3YTcxNDQwMjdkODYxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBCZXJ0cmFuZCBEcm91dm90IDxiZXJ0cmFuZGRyb3V2 b3QucGdAZ21haWwuY29tPgpEYXRlOiBTYXQsIDIyIEFwciAyMDIzIDEwOjM3OjU2ICswMDAw ClN1YmplY3Q6IFtQQVRDSCB2NV0gR2VuZXJhdGluZyB3YWl0X2V2ZW50X3R5cGVzLmgsIHBn c3RhdF93YWl0X2V2ZW50LmMgYW5kCiB3YWl0ZXZlbnRuYW1lcy5zZ21sCgpQdXJwb3NlIGlz IHRvIGF1dG8tZ2VuZXJhdGUgdGhvc2UgZmlsZXMgYmFzZWQgb24gdGhlIG5ld2x5IGNyZWF0 ZWQgd2FpdGV2ZW50bmFtZXMudHh0IGZpbGUuCgpIYXZpbmcgYXV0byBnZW5lcmF0ZWQgZmls ZXMgd291bGQgaGVscCB0byBhdm9pZDoKCi0gd2FpdCBldmVudCB3aXRob3V0IGRlc2NyaXB0 aW9uIGxpa2Ugb2JzZXJ2ZWQgaW4gaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvbWVzc2Fn ZS1pZC9DQSUyQmhVS0dKaXhBSGM4NjBFajlRemRfejk2WjZhb2FqQWdKMThiWWZWM0xmbjZ0 OSUzRCUyQlElNDBtYWlsLmdtYWlsLmNvbQotIG9ycGhhbmVkIHdhaXQgZXZlbnQgbGlrZSBv YnNlcnZlZCBpbiBodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL0NBJTJC aFVLR0s2dHFtNTlLdUYxeiUyQmg1WThmc1djdTV2OCUyQjg0a2R1U0h3Unp3akIyYWFfQSU0 MG1haWwuZ21haWwuY29tCi0tLQogZG9jL3NyYy9zZ21sLy5naXRpZ25vcmUgICAgICAgICAg ICAgICAgICAgICAgIHwgICAxICsKIGRvYy9zcmMvc2dtbC9NYWtlZmlsZSAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgNSArLQogZG9jL3NyYy9zZ21sL2ZpbGVsaXN0LnNnbWwgICAg ICAgICAgICAgICAgICAgIHwgICAxICsKIGRvYy9zcmMvc2dtbC9tZXNvbi5idWlsZCAgICAg ICAgICAgICAgICAgICAgICB8ICAxMCArCiBkb2Mvc3JjL3NnbWwvbW9uaXRvcmluZy5zZ21s ICAgICAgICAgICAgICAgICAgfCA3OTIgKy0tLS0tLS0tLS0tLS0tLS0tCiBzcmMvYmFja2Vu ZC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTMgKy0KIHNyYy9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L01ha2VmaWxlICAgICAgICAgICB8ICAxMCArCiAuLi4vdXRp bHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwgfCAyMDQgKysrKysKIHNy Yy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L21lc29uLmJ1aWxkICAgICAgICB8ICAyNCArCiBz cmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS93YWl0X2V2ZW50LmMgICAgICAgfCA1NjcgKy0t LS0tLS0tLS0tLQogc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdGV2ZW50bmFtZXMu dHh0IHwgMjQ1ICsrKysrKwogc3JjL2luY2x1ZGUvTWFrZWZpbGUgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAyICstCiBzcmMvaW5jbHVkZS91dGlscy8uZ2l0aWdub3JlICAgICAg ICAgICAgICAgICAgfCAgIDEgKwogc3JjL2luY2x1ZGUvdXRpbHMvbWVzb24uYnVpbGQgICAg ICAgICAgICAgICAgIHwgIDE4ICsKIHNyYy9pbmNsdWRlL3V0aWxzL3dhaXRfZXZlbnQuaCAg ICAgICAgICAgICAgICB8IDIxNCArLS0tLQogc3JjL3Rvb2xzL21zdmMvU29sdXRpb24ucG0g ICAgICAgICAgICAgICAgICAgIHwgIDE4ICsKIHNyYy90b29scy9tc3ZjL2NsZWFuLmJhdCAg ICAgICAgICAgICAgICAgICAgICB8ICAgMyArCiAxNyBmaWxlcyBjaGFuZ2VkLCA1NTYgaW5z ZXJ0aW9ucygrKSwgMTU3MiBkZWxldGlvbnMoLSkKICAzNi4yJSBkb2Mvc3JjL3NnbWwvCiAg NTIuOSUgc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvCiAgIDguNiUgc3JjL2luY2x1ZGUv dXRpbHMvCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sLy5naXRpZ25vcmUgYi9kb2Mvc3Jj L3NnbWwvLmdpdGlnbm9yZQppbmRleCBkOGUzZGFiMzM4Li5lOGNiZDY4N2Q1IDEwMDY0NAot LS0gYS9kb2Mvc3JjL3NnbWwvLmdpdGlnbm9yZQorKysgYi9kb2Mvc3JjL3NnbWwvLmdpdGln bm9yZQpAQCAtMTcsNiArMTcsNyBAQAogL2VycmNvZGVzLXRhYmxlLnNnbWwKIC9rZXl3b3Jk cy10YWJsZS5zZ21sCiAvdmVyc2lvbi5zZ21sCisvd2FpdGV2ZW50bmFtZXMuc2dtbAogIyBB c3NvcnRlZCBieXByb2R1Y3RzIGZyb20gYnVpbGRpbmcgdGhlIGFib3ZlCiAvcG9zdGdyZXMt ZnVsbC54bWwKIC9JTlNUQUxMLmh0bWwKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9NYWtl ZmlsZSBiL2RvYy9zcmMvc2dtbC9NYWtlZmlsZQppbmRleCA3MWNiZWYyMzBmLi4wMWE2YWE4 MTg3IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvTWFrZWZpbGUKKysrIGIvZG9jL3NyYy9z Z21sL01ha2VmaWxlCkBAIC01OCw3ICs1OCw3IEBAIG92ZXJyaWRlIFhTTFRQUk9DRkxBR1Mg Kz0gLS1zdHJpbmdwYXJhbSBwZy52ZXJzaW9uICckKFZFUlNJT04pJwogCiBHRU5FUkFURURf U0dNTCA9IHZlcnNpb24uc2dtbCBcCiAJZmVhdHVyZXMtc3VwcG9ydGVkLnNnbWwgZmVhdHVy ZXMtdW5zdXBwb3J0ZWQuc2dtbCBlcnJjb2Rlcy10YWJsZS5zZ21sIFwKLQlrZXl3b3Jkcy10 YWJsZS5zZ21sCisJa2V5d29yZHMtdGFibGUuc2dtbCB3YWl0ZXZlbnRuYW1lcy5zZ21sCiAK IEFMTFNHTUwgOj0gJCh3aWxkY2FyZCAkKHNyY2RpcikvKi5zZ21sICQoc3JjZGlyKS9yZWYv Ki5zZ21sKSAkKEdFTkVSQVRFRF9TR01MKQogCkBAIC0xMTEsNiArMTExLDkgQEAgZXJyY29k ZXMtdGFibGUuc2dtbDogJCh0b3Bfc3JjZGlyKS9zcmMvYmFja2VuZC91dGlscy9lcnJjb2Rl cy50eHQgZ2VuZXJhdGUtZXJyY28KIGtleXdvcmRzLXRhYmxlLnNnbWw6ICQodG9wX3NyY2Rp cikvc3JjL2luY2x1ZGUvcGFyc2VyL2t3bGlzdC5oICQod2lsZGNhcmQgJChzcmNkaXIpL2tl eXdvcmRzL3NxbCoudHh0KSBnZW5lcmF0ZS1rZXl3b3Jkcy10YWJsZS5wbAogCSQoUEVSTCkg JChzcmNkaXIpL2dlbmVyYXRlLWtleXdvcmRzLXRhYmxlLnBsICQoc3JjZGlyKSA+ICRACiAK K3dhaXRldmVudG5hbWVzLnNnbWw6ICQodG9wX3NyY2Rpcikvc3JjL2JhY2tlbmQvdXRpbHMv YWN0aXZpdHkvd2FpdGV2ZW50bmFtZXMudHh0ICQodG9wX3NyY2Rpcikvc3JjL2JhY2tlbmQv dXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwKKwkkKFBFUkwpICQo dG9wX3NyY2Rpcikvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdGV2 ZW50bmFtZXMucGwgJDwgPiAkQAorCXJtIHBnc3RhdF93YWl0X2V2ZW50LmM7IHJtIHdhaXRf ZXZlbnRfdHlwZXMuaAogCiAjIwogIyMgR2VuZXJhdGlvbiBvZiBzb21lIHRleHQgZmlsZXMu CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvZmlsZWxpc3Quc2dtbCBiL2RvYy9zcmMvc2dt bC9maWxlbGlzdC5zZ21sCmluZGV4IDBkNmJlOWEyZmEuLjlhYjIzNWQzNmEgMTAwNjQ0Ci0t LSBhL2RvYy9zcmMvc2dtbC9maWxlbGlzdC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9maWxl bGlzdC5zZ21sCkBAIC00Miw2ICs0Miw3IEBACiA8IUVOVElUWSBtYWludGVuYW5jZSAgIFNZ U1RFTSAibWFpbnRlbmFuY2Uuc2dtbCI+CiA8IUVOVElUWSBtYW5hZ2UtYWcgICAgIFNZU1RF TSAibWFuYWdlLWFnLnNnbWwiPgogPCFFTlRJVFkgbW9uaXRvcmluZyAgICBTWVNURU0gIm1v bml0b3Jpbmcuc2dtbCI+Cis8IUVOVElUWSB3YWl0ZXZlbnRuYW1lcyAgICBTWVNURU0gIndh aXRldmVudG5hbWVzLnNnbWwiPgogPCFFTlRJVFkgcmVncmVzcyAgICAgICBTWVNURU0gInJl Z3Jlc3Muc2dtbCI+CiA8IUVOVElUWSBydW50aW1lICAgICAgIFNZU1RFTSAicnVudGltZS5z Z21sIj4KIDwhRU5USVRZIGNvbmZpZyAgICAgICAgU1lTVEVNICJjb25maWcuc2dtbCI+CmRp ZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvbWVzb24uYnVpbGQgYi9kb2Mvc3JjL3NnbWwvbWVz b24uYnVpbGQKaW5kZXggYzZkNzdiNWExNS4uNTNlNDUwNWI5NyAxMDA2NDQKLS0tIGEvZG9j L3NyYy9zZ21sL21lc29uLmJ1aWxkCisrKyBiL2RvYy9zcmMvc2dtbC9tZXNvbi5idWlsZApA QCAtNDYsNiArNDYsMTYgQEAgZG9jX2dlbmVyYXRlZCArPSBjdXN0b21fdGFyZ2V0KCdlcnJj b2Rlcy10YWJsZS5zZ21sJywKICAgY2FwdHVyZTogdHJ1ZSwKICkKIAorZG9jX2dlbmVyYXRl ZCArPSBjdXN0b21fdGFyZ2V0KCd3YWl0ZXZlbnRuYW1lcy5zZ21sJywKKyAgaW5wdXQ6IGZp bGVzKAorICAgICcuLi8uLi8uLi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS93YWl0ZXZl bnRuYW1lcy50eHQnKSwKKyAgb3V0cHV0OiAnd2FpdGV2ZW50bmFtZXMuc2dtbCcsCisgIGNv bW1hbmQ6IFtwZXJsLCBmaWxlcygnLi4vLi4vLi4vc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZp dHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwnKSwgJ0BJTlBVVEAnXSwKKyAgYnVpbGRf YnlfZGVmYXVsdDogZmFsc2UsCisgIGluc3RhbGw6IGZhbHNlLAorICBjYXB0dXJlOiB0cnVl LAorKQorCiAjIEZJWE1FOiB0aGlzIGFjdHVhbGx5IGhhcyBmdXJ0aGVyIGlucHV0cywgYWRk aW5nIGRlcGZpbGUgc3VwcG9ydCB0bwogIyBnZW5lcmF0ZS1rZXl3b3Jkcy10YWJsZS5wbCBp cyBwcm9iYWJseSB0aGUgYmVzdCB3YXkgdG8gYWRkcmVzcyB0aGF0CiAjIHJvYnVzdGx5Lgpk aWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbCBiL2RvYy9zcmMvc2dt bC9tb25pdG9yaW5nLnNnbWwKaW5kZXggOTlmN2Y5NWMzOS4uYzg2NDhmY2ExOCAxMDA2NDQK LS0tIGEvZG9jL3NyYy9zZ21sL21vbml0b3Jpbmcuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwv bW9uaXRvcmluZy5zZ21sCkBAIC0xMTAwLDc0ICsxMTAwLDcgQEAgcG9zdGdyZXMgICAyNzA5 MyAgMC4wICAwLjAgIDMwMDk2ICAyNzUyID8gICAgICAgIFNzICAgMTE6MzQgICAwOjAwIHBv c3RncmVzOiBzZXIKICAgIDwvdGdyb3VwPgogICA8L3RhYmxlPgogCi0gIDx0YWJsZSBpZD0i d2FpdC1ldmVudC1hY3Rpdml0eS10YWJsZSI+Ci0gICA8dGl0bGU+V2FpdCBFdmVudHMgb2Yg VHlwZSA8bGl0ZXJhbD5BY3Rpdml0eTwvbGl0ZXJhbD48L3RpdGxlPgotICAgPHRncm91cCBj b2xzPSIyIj4KLSAgICA8dGhlYWQ+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+QWN0aXZpdHk8L2xpdGVyYWw+IFdhaXQgRXZlbnQ8L2VudHJ5PgotICAgICAgPGVudHJ5 PkRlc2NyaXB0aW9uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90aGVhZD4KLQotICAg IDx0Ym9keT4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5BcmNoaXZlck1h aW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGluIG1haW4gbG9v cCBvZiBhcmNoaXZlciBwcm9jZXNzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkF1dG9WYWN1dW1NYWluPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2YgYXV0b3ZhY3V1bSBs YXVuY2hlciBwcm9jZXNzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAg ICAgPGVudHJ5PjxsaXRlcmFsPkJnV3JpdGVySGliZXJuYXRlPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBiYWNrZ3JvdW5kIHdyaXRlciBwcm9jZXNzLCBo aWJlcm5hdGluZy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5CZ1dyaXRlck1haW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGluIG1haW4gbG9vcCBvZiBiYWNrZ3JvdW5kIHdyaXRlciBwcm9jZXNz LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPkNoZWNrcG9pbnRlck1haW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIGluIG1haW4gbG9vcCBvZiBjaGVja3BvaW50ZXIgcHJvY2Vzcy48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Mb2dpY2Fs QXBwbHlNYWluPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBt YWluIGxvb3Agb2YgbG9naWNhbCByZXBsaWNhdGlvbiBhcHBseSBwcm9jZXNzLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2lj YWxMYXVuY2hlck1haW48L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IGluIG1haW4gbG9vcCBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uIGxhdW5jaGVyIHByb2Nlc3Mu PC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+TG9naWNhbFBhcmFsbGVsQXBwbHlNYWluPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2YgbG9naWNhbCByZXBsaWNhdGlvbiBwYXJh bGxlbCBhcHBseQotICAgICAgIHByb2Nlc3MuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAg IDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UmVjb3ZlcnlXYWxTdHJlYW08L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGluIG1haW4gbG9vcCBvZiBzdGFy dHVwIHByb2Nlc3MgZm9yIFdBTCB0byBhcnJpdmUsIGR1cmluZwotICAgICAgIHN0cmVhbWlu ZyByZWNvdmVyeS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5TeXNMb2dnZXJNYWluPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2Ygc3lzbG9nZ2VyIHByb2Nlc3MuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V2Fs UmVjZWl2ZXJNYWluPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBp biBtYWluIGxvb3Agb2YgV0FMIHJlY2VpdmVyIHByb2Nlc3MuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V2FsU2VuZGVyTWFpbjwv bGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgaW4gbWFpbiBsb29wIG9m IFdBTCBzZW5kZXIgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XYWxXcml0ZXJNYWluPC9saXRlcmFsPjwvZW50cnk+ Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBtYWluIGxvb3Agb2YgV0FMIHdyaXRlciBwcm9j ZXNzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgIDwvdGJvZHk+Ci0gICA8L3Rncm91cD4K LSAgPC90YWJsZT4KKyAgJndhaXRldmVudG5hbWVzOwogCiAgIDx0YWJsZSBpZD0id2FpdC1l dmVudC1idWZmZXJwaW4tdGFibGUiPgogICAgPHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUg PGxpdGVyYWw+QnVmZmVyUGluPC9saXRlcmFsPjwvdGl0bGU+CkBAIC0xMTg4LDU2ICsxMTIx LDYgQEAgcG9zdGdyZXMgICAyNzA5MyAgMC4wICAwLjAgIDMwMDk2ICAyNzUyID8gICAgICAg IFNzICAgMTE6MzQgICAwOjAwIHBvc3RncmVzOiBzZXIKICAgIDwvdGdyb3VwPgogICA8L3Rh YmxlPgogCi0gIDx0YWJsZSBpZD0id2FpdC1ldmVudC1jbGllbnQtdGFibGUiPgotICAgPHRp dGxlPldhaXQgRXZlbnRzIG9mIFR5cGUgPGxpdGVyYWw+Q2xpZW50PC9saXRlcmFsPjwvdGl0 bGU+Ci0gICA8dGdyb3VwIGNvbHM9IjIiPgotICAgIDx0aGVhZD4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5DbGllbnQ8L2xpdGVyYWw+IFdhaXQgRXZlbnQ8L2VudHJ5 PgotICAgICAgPGVudHJ5PkRlc2NyaXB0aW9uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAg PC90aGVhZD4KLQotICAgIDx0Ym9keT4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5DbGllbnRSZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyB0byByZWFkIGRhdGEgZnJvbSB0aGUgY2xpZW50LjwvZW50cnk+Ci0gICAgIDwvcm93Pgot ICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNsaWVudFdyaXRlPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byB3cml0ZSBkYXRhIHRvIHRoZSBj bGllbnQuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+ PGxpdGVyYWw+R1NTT3BlblNlcnZlcjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgdG8gcmVhZCBkYXRhIGZyb20gdGhlIGNsaWVudCB3aGlsZSBlc3RhYmxpc2hp bmcgYSBHU1NBUEkKLSAgICAgICBzZXNzaW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxpYlBRV2FsUmVjZWl2ZXJDb25uZWN0 PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBXQUwgcmVjZWl2 ZXIgdG8gZXN0YWJsaXNoIGNvbm5lY3Rpb24gdG8gcmVtb3RlCi0gICAgICAgc2VydmVyLjwv ZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFs PkxpYlBRV2FsUmVjZWl2ZXJSZWNlaXZlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50 cnk+V2FpdGluZyBpbiBXQUwgcmVjZWl2ZXIgdG8gcmVjZWl2ZSBkYXRhIGZyb20gcmVtb3Rl IHNlcnZlci48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRy eT48bGl0ZXJhbD5TU0xPcGVuU2VydmVyPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50 cnk+V2FpdGluZyBmb3IgU1NMIHdoaWxlIGF0dGVtcHRpbmcgY29ubmVjdGlvbi48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XYWxT ZW5kZXJXYWl0Rm9yV0FMPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyBmb3IgV0FMIHRvIGJlIGZsdXNoZWQgaW4gV0FMIHNlbmRlciBwcm9jZXNzLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldhbFNl bmRlcldyaXRlRGF0YTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIGFueSBhY3Rpdml0eSB3aGVuIHByb2Nlc3NpbmcgcmVwbGllcyBmcm9tIFdBTAotICAg ICAgIHJlY2VpdmVyIGluIFdBTCBzZW5kZXIgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICA8L3Rib2R5PgotICAgPC90Z3JvdXA+Ci0gIDwvdGFibGU+Ci0KICAgPHRhYmxl IGlkPSJ3YWl0LWV2ZW50LWV4dGVuc2lvbi10YWJsZSI+CiAgICA8dGl0bGU+V2FpdCBFdmVu dHMgb2YgVHlwZSA8bGl0ZXJhbD5FeHRlbnNpb248L2xpdGVyYWw+PC90aXRsZT4KICAgIDx0 Z3JvdXAgY29scz0iMiI+CkBAIC0xMjU3LDYyMyArMTE0MCw2IEBAIHBvc3RncmVzICAgMjcw OTMgIDAuMCAgMC4wICAzMDA5NiAgMjc1MiA/ICAgICAgICBTcyAgIDExOjM0ICAgMDowMCBw b3N0Z3Jlczogc2VyCiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4KIAotICA8dGFibGUgaWQ9 IndhaXQtZXZlbnQtaW8tdGFibGUiPgotICAgPHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUg PGxpdGVyYWw+SU88L2xpdGVyYWw+PC90aXRsZT4KLSAgIDx0Z3JvdXAgY29scz0iMiI+Ci0g ICAgPHRoZWFkPgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPklPPC9saXRl cmFsPiBXYWl0IEV2ZW50PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5EZXNjcmlwdGlvbjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgIDwvdGhlYWQ+Ci0KLSAgICA8dGJvZHk+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QmFzZUJhY2t1cFJlYWQ8L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBiYXNlIGJhY2t1cCB0byByZWFkIGZy b20gYSBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPkJhc2VCYWNrdXBTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgZGF0YSB3cml0dGVuIGJ5IGEgYmFzZSBiYWNrdXAgdG8gcmVh Y2ggZHVyYWJsZSBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPkJhc2VCYWNrdXBXcml0ZTwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGJhc2UgYmFja3VwIHRvIHdyaXRlIHRvIGEg ZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5CdWZGaWxlUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5Pldh aXRpbmcgZm9yIGEgcmVhZCBmcm9tIGEgYnVmZmVyZWQgZmlsZS48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CdWZGaWxlV3JpdGU8 L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIHRv IGEgYnVmZmVyZWQgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5CdWZGaWxlVHJ1bmNhdGU8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIGJ1ZmZlcmVkIGZpbGUgdG8gYmUgdHJ1bmNh dGVkLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPkNvbnRyb2xGaWxlUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgZm9yIGEgcmVhZCBmcm9tIHRoZSA8ZmlsZW5hbWU+cGdfY29udHJvbDwvZmls ZW5hbWU+Ci0gICAgICAgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4K LSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Db250cm9sRmlsZVN5bmM8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciB0aGUgPGZpbGVuYW1lPnBnX2NvbnRyb2w8 L2ZpbGVuYW1lPiBmaWxlIHRvIHJlYWNoCi0gICAgICAgZHVyYWJsZSBzdG9yYWdlLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNv bnRyb2xGaWxlU3luY1VwZGF0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5Pldh aXRpbmcgZm9yIGFuIHVwZGF0ZSB0byB0aGUgPGZpbGVuYW1lPnBnX2NvbnRyb2w8L2ZpbGVu YW1lPiBmaWxlCi0gICAgICAgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLjwvZW50cnk+Ci0g ICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNvbnRyb2xG aWxlV3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBh IHdyaXRlIHRvIHRoZSA8ZmlsZW5hbWU+cGdfY29udHJvbDwvZmlsZW5hbWU+Ci0gICAgICAg ZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5Db250cm9sRmlsZVdyaXRlVXBkYXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAg ICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0ZSB0byB1cGRhdGUgdGhlIDxmaWxlbmFtZT5w Z19jb250cm9sPC9maWxlbmFtZT4KLSAgICAgICBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93 PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNvcHlGaWxlUmVhZDwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBkdXJpbmcg YSBmaWxlIGNvcHkgb3BlcmF0aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkNvcHlGaWxlV3JpdGU8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIGR1cmluZyBhIGZpbGUgY29w eSBvcGVyYXRpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+RFNNQWxsb2NhdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciBhIGR5bmFtaWMgc2hhcmVkIG1lbW9yeSBzZWdtZW50IHRvIGJl Ci0gICAgICAgYWxsb2NhdGVkLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPkRTTUZpbGxaZXJvV3JpdGU8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGZpbGwgYSBkeW5hbWljIHNoYXJlZCBtZW1v cnkgYmFja2luZyBmaWxlIHdpdGgKLSAgICAgICB6ZXJvZXMuPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVFeHRlbmQ8 L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJlbGF0aW9u IGRhdGEgZmlsZSB0byBiZSBleHRlbmRlZC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5EYXRhRmlsZUZsdXNoPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWxhdGlvbiBkYXRhIGZpbGUg dG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkRhdGFGaWxlSW1tZWRpYXRlU3luYzwvbGl0 ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGFuIGltbWVkaWF0ZSBz eW5jaHJvbml6YXRpb24gb2YgYSByZWxhdGlvbiBkYXRhIGZpbGUgdG8KLSAgICAgICBkdXJh YmxlIHN0b3JhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVQcmVmZXRjaDwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgZm9yIGFuIGFzeW5jaHJvbm91cyBwcmVmZXRjaCBmcm9tIGEg cmVsYXRpb24gZGF0YQotICAgICAgIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAg IDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVSZWFkPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIGZyb20gYSByZWxhdGlv biBkYXRhIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgY2hhbmdlcyB0byBhIHJlbGF0aW9uIGRhdGEgZmlsZSB0byBy ZWFjaCBkdXJhYmxlIHN0b3JhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+ Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+RGF0YUZpbGVUcnVuY2F0ZTwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVsYXRpb24gZGF0YSBmaWxlIHRv IGJlIHRydW5jYXRlZC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5EYXRhRmlsZVdyaXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAg ICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0ZSB0byBhIHJlbGF0aW9uIGRhdGEgZmlsZS48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5Mb2NrRmlsZUFkZFRvRGF0YURpclJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciBhIHJlYWQgd2hpbGUgYWRkaW5nIGEgbGluZSB0byB0aGUgZGF0 YSBkaXJlY3RvcnkgbG9jawotICAgICAgIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9ja0ZpbGVBZGRUb0RhdGFEaXJT eW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgZGF0YSB0 byByZWFjaCBkdXJhYmxlIHN0b3JhZ2Ugd2hpbGUgYWRkaW5nIGEgbGluZSB0byB0aGUKLSAg ICAgICBkYXRhIGRpcmVjdG9yeSBsb2NrIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9ja0ZpbGVBZGRUb0RhdGFEaXJX cml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3Jp dGUgd2hpbGUgYWRkaW5nIGEgbGluZSB0byB0aGUgZGF0YSBkaXJlY3RvcnkKLSAgICAgICBs b2NrIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+TG9ja0ZpbGVDcmVhdGVSZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAg ICA8ZW50cnk+V2FpdGluZyB0byByZWFkIHdoaWxlIGNyZWF0aW5nIHRoZSBkYXRhIGRpcmVj dG9yeSBsb2NrCi0gICAgICAgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Mb2NrRmlsZUNyZWF0ZVN5bmM8L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBkYXRhIHRvIHJlYWNoIGR1cmFi bGUgc3RvcmFnZSB3aGlsZSBjcmVhdGluZyB0aGUgZGF0YQotICAgICAgIGRpcmVjdG9yeSBs b2NrIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+TG9ja0ZpbGVDcmVhdGVXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgd2hpbGUgY3JlYXRpbmcgdGhlIGRhdGEg ZGlyZWN0b3J5IGxvY2sKLSAgICAgICBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvY2tGaWxlUmVDaGVja0RhdGFEaXJS ZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFk IGR1cmluZyByZWNoZWNrIG9mIHRoZSBkYXRhIGRpcmVjdG9yeSBsb2NrCi0gICAgICAgZmls ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5Mb2dpY2FsUmV3cml0ZUNoZWNrcG9pbnRTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0g ICAgICA8ZW50cnk+V2FpdGluZyBmb3IgbG9naWNhbCByZXdyaXRlIG1hcHBpbmdzIHRvIHJl YWNoIGR1cmFibGUgc3RvcmFnZQotICAgICAgIGR1cmluZyBhIGNoZWNrcG9pbnQuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9n aWNhbFJld3JpdGVNYXBwaW5nU3luYzwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgZm9yIG1hcHBpbmcgZGF0YSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UgZHVy aW5nIGEgbG9naWNhbAotICAgICAgIHJld3JpdGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TG9naWNhbFJld3JpdGVNYXBwaW5n V3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdy aXRlIG9mIG1hcHBpbmcgZGF0YSBkdXJpbmcgYSBsb2dpY2FsCi0gICAgICAgcmV3cml0ZS48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5Mb2dpY2FsUmV3cml0ZVN5bmM8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5X YWl0aW5nIGZvciBsb2dpY2FsIHJld3JpdGUgbWFwcGluZ3MgdG8gcmVhY2ggZHVyYWJsZQot ICAgICAgIHN0b3JhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+TG9naWNhbFJld3JpdGVUcnVuY2F0ZTwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHRydW5jYXRlIG9mIG1hcHBpbmcgZGF0 YSBkdXJpbmcgYSBsb2dpY2FsCi0gICAgICAgcmV3cml0ZS48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Mb2dpY2FsUmV3cml0ZVdy aXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0 ZSBvZiBsb2dpY2FsIHJld3JpdGUgbWFwcGluZ3MuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UmVsYXRpb25NYXBSZWFkPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIG9mIHRoZSBy ZWxhdGlvbiBtYXAgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAg ICAgIDxlbnRyeT48bGl0ZXJhbD5SZWxhdGlvbk1hcFJlcGxhY2U8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBkdXJhYmxlIHJlcGxhY2VtZW50IG9mIGEg cmVsYXRpb24gbWFwIGZpbGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0g ICAgICA8ZW50cnk+PGxpdGVyYWw+UmVsYXRpb25NYXBXcml0ZTwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gdGhlIHJlbGF0aW9uIG1h cCBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPlJlb3JkZXJCdWZmZXJSZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIGR1cmluZyByZW9yZGVyIGJ1ZmZlciBtYW5hZ2Vt ZW50LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPlJlb3JkZXJCdWZmZXJXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVu dHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgZHVyaW5nIHJlb3JkZXIgYnVmZmVyIG1hbmFnZW1l bnQuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxp dGVyYWw+UmVvcmRlckxvZ2ljYWxNYXBwaW5nUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgcmVhZCBvZiBhIGxvZ2ljYWwgbWFwcGluZyBkdXJp bmcgcmVvcmRlciBidWZmZXIKLSAgICAgICBtYW5hZ2VtZW50LjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlcGxpY2F0aW9uU2xv dFJlYWQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJl YWQgZnJvbSBhIHJlcGxpY2F0aW9uIHNsb3QgY29udHJvbCBmaWxlLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlcGxpY2F0aW9u U2xvdFJlc3RvcmVTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyBmb3IgYSByZXBsaWNhdGlvbiBzbG90IGNvbnRyb2wgZmlsZSB0byByZWFjaCBkdXJhYmxl IHN0b3JhZ2UKLSAgICAgICB3aGlsZSByZXN0b3JpbmcgaXQgdG8gbWVtb3J5LjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlcGxp Y2F0aW9uU2xvdFN5bmM8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IGZvciBhIHJlcGxpY2F0aW9uIHNsb3QgY29udHJvbCBmaWxlIHRvIHJlYWNoIGR1cmFibGUK LSAgICAgICBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAg ICAgPGVudHJ5PjxsaXRlcmFsPlJlcGxpY2F0aW9uU2xvdFdyaXRlPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0ZSB0byBhIHJlcGxpY2F0aW9u IHNsb3QgY29udHJvbCBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPlNMUlVGbHVzaFN5bmM8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBTTFJVIGRhdGEgdG8gcmVhY2ggZHVyYWJsZSBz dG9yYWdlIGR1cmluZyBhIGNoZWNrcG9pbnQKLSAgICAgICBvciBkYXRhYmFzZSBzaHV0ZG93 bi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5TTFJVUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIGEgcmVhZCBvZiBhbiBTTFJVIHBhZ2UuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAg IDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+U0xSVVN5bmM8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBTTFJVIGRhdGEgdG8gcmVhY2ggZHVyYWJs ZSBzdG9yYWdlIGZvbGxvd2luZyBhIHBhZ2UKLSAgICAgICB3cml0ZS48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TTFJVV3JpdGU8 L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIG9m IGFuIFNMUlUgcGFnZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5TbmFwYnVpbGRSZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAg ICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIG9mIGEgc2VyaWFsaXplZCBoaXN0b3JpY2Fs IGNhdGFsb2cKLSAgICAgICBzbmFwc2hvdC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TbmFwYnVpbGRTeW5jPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBzZXJpYWxpemVkIGhpc3Rvcmlj YWwgY2F0YWxvZyBzbmFwc2hvdCB0byByZWFjaAotICAgICAgIGR1cmFibGUgc3RvcmFnZS48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5TbmFwYnVpbGRXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgZm9yIGEgd3JpdGUgb2YgYSBzZXJpYWxpemVkIGhpc3RvcmljYWwgY2F0YWxvZwotICAg ICAgIHNuYXBzaG90LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAg PGVudHJ5PjxsaXRlcmFsPlRpbWVsaW5lSGlzdG9yeUZpbGVTeW5jPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB0aW1lbGluZSBoaXN0b3J5IGZpbGUg cmVjZWl2ZWQgdmlhIHN0cmVhbWluZwotICAgICAgIHJlcGxpY2F0aW9uIHRvIHJlYWNoIGR1 cmFibGUgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5UaW1lbGluZUhpc3RvcnlGaWxlV3JpdGU8L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHdyaXRlIG9mIGEgdGltZWxpbmUg aGlzdG9yeSBmaWxlIHJlY2VpdmVkIHZpYQotICAgICAgIHN0cmVhbWluZyByZXBsaWNhdGlv bi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5UaW1lbGluZUhpc3RvcnlSZWFkPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50 cnk+V2FpdGluZyBmb3IgYSByZWFkIG9mIGEgdGltZWxpbmUgaGlzdG9yeSBmaWxlLjwvZW50 cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlRp bWVsaW5lSGlzdG9yeVN5bmM8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBhIG5ld2x5IGNyZWF0ZWQgdGltZWxpbmUgaGlzdG9yeSBmaWxlIHRvIHJlYWNo IGR1cmFibGUKLSAgICAgICBzdG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8 cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlRpbWVsaW5lSGlzdG9yeVdyaXRlPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSB3cml0ZSBvZiBhIG5l d2x5IGNyZWF0ZWQgdGltZWxpbmUgaGlzdG9yeQotICAgICAgIGZpbGUuPC9lbnRyeT4KLSAg ICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+VHdvcGhhc2VG aWxlUmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEg cmVhZCBvZiBhIHR3byBwaGFzZSBzdGF0ZSBmaWxlLjwvZW50cnk+Ci0gICAgIDwvcm93Pgot ICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlR3b3BoYXNlRmlsZVN5bmM8L2xp dGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHR3byBwaGFzZSBz dGF0ZSBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS48L2VudHJ5PgotICAgICA8L3Jv dz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5Ud29waGFzZUZpbGVXcml0 ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUg b2YgYSB0d28gcGhhc2Ugc3RhdGUgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAg PHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5WZXJzaW9uRmlsZVdyaXRlPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgdGhlIHZlcnNpb24gZmlsZSB0 byBiZSB3cml0dGVuIHdoaWxlIGNyZWF0aW5nIGEgZGF0YWJhc2UuPC9lbnRyeT4KLSAgICAg PC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V0FMQm9vdHN0cmFw U3luYzwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIFdBTCB0 byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UgZHVyaW5nCi0gICAgICAgYm9vdHN0cmFwcGluZy48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5XQUxCb290c3RyYXBXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5Pldh aXRpbmcgZm9yIGEgd3JpdGUgb2YgYSBXQUwgcGFnZSBkdXJpbmcgYm9vdHN0cmFwcGluZy48 L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJh bD5XQUxDb3B5UmVhZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcg Zm9yIGEgcmVhZCB3aGVuIGNyZWF0aW5nIGEgbmV3IFdBTCBzZWdtZW50IGJ5IGNvcHlpbmcg YW4KLSAgICAgICBleGlzdGluZyBvbmUuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V0FMQ29weVN5bmM8L2xpdGVyYWw+PC9lbnRy eT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIG5ldyBXQUwgc2VnbWVudCBjcmVhdGVk IGJ5IGNvcHlpbmcgYW4gZXhpc3Rpbmcgb25lIHRvCi0gICAgICAgcmVhY2ggZHVyYWJsZSBz dG9yYWdlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPldBTENvcHlXcml0ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgZm9yIGEgd3JpdGUgd2hlbiBjcmVhdGluZyBhIG5ldyBXQUwgc2VnbWVudCBi eSBjb3B5aW5nIGFuCi0gICAgICAgZXhpc3Rpbmcgb25lLjwvZW50cnk+Ci0gICAgIDwvcm93 PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPldBTEluaXRTeW5jPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBuZXdseSBpbml0aWFs aXplZCBXQUwgZmlsZSB0byByZWFjaCBkdXJhYmxlCi0gICAgICAgc3RvcmFnZS48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XQUxJ bml0V3JpdGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBh IHdyaXRlIHdoaWxlIGluaXRpYWxpemluZyBhIG5ldyBXQUwgZmlsZS48L2VudHJ5PgotICAg ICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XQUxSZWFkPC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIGZyb20g YSBXQUwgZmlsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5XQUxTZW5kZXJUaW1lbGluZUhpc3RvcnlSZWFkPC9saXRlcmFsPjwv ZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSByZWFkIGZyb20gYSB0aW1lbGlu ZSBoaXN0b3J5IGZpbGUgZHVyaW5nIGEgd2Fsc2VuZGVyCi0gICAgICAgdGltZWxpbmUgY29t bWFuZC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48 bGl0ZXJhbD5XQUxTeW5jPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGlu ZyBmb3IgYSBXQUwgZmlsZSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuPC9lbnRyeT4KLSAg ICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+V0FMU3luY01l dGhvZEFzc2lnbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9y IGRhdGEgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlIHdoaWxlIGFzc2lnbmluZyBhIG5ldwot ICAgICAgIFdBTCBzeW5jIG1ldGhvZC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJv dz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XQUxXcml0ZTwvbGl0ZXJhbD48L2VudHJ5Pgot ICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gYSBXQUwgZmlsZS48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICA8L3Rib2R5PgotICAgPC90Z3JvdXA+Ci0gIDwvdGFibGU+ Ci0KLSAgPHRhYmxlIGlkPSJ3YWl0LWV2ZW50LWlwYy10YWJsZSI+Ci0gICA8dGl0bGU+V2Fp dCBFdmVudHMgb2YgVHlwZSA8bGl0ZXJhbD5JUEM8L2xpdGVyYWw+PC90aXRsZT4KLSAgIDx0 Z3JvdXAgY29scz0iMiI+Ci0gICAgPHRoZWFkPgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPklQQzwvbGl0ZXJhbD4gV2FpdCBFdmVudDwvZW50cnk+Ci0gICAgICA8ZW50 cnk+RGVzY3JpcHRpb248L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICA8L3RoZWFkPgotCi0g ICAgPHRib2R5PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkFwcGVuZFJl YWR5PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Igc3VicGxh biBub2RlcyBvZiBhbiA8bGl0ZXJhbD5BcHBlbmQ8L2xpdGVyYWw+IHBsYW4KLSAgICAgICBu b2RlIHRvIGJlIHJlYWR5LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAg ICAgPGVudHJ5PjxsaXRlcmFsPkFyY2hpdmVDbGVhbnVwQ29tbWFuZDwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIDx4cmVmIGxpbmtlbmQ9Imd1Yy1hcmNo aXZlLWNsZWFudXAtY29tbWFuZCIvPiB0bwotICAgICAgIGNvbXBsZXRlLjwvZW50cnk+Ci0g ICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkFyY2hpdmVD b21tYW5kPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgPHhy ZWYgbGlua2VuZD0iZ3VjLWFyY2hpdmUtY29tbWFuZCIvPiB0bwotICAgICAgIGNvbXBsZXRl LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPkJhY2tlbmRUZXJtaW5hdGlvbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgZm9yIHRoZSB0ZXJtaW5hdGlvbiBvZiBhbm90aGVyIGJhY2tlbmQuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QmFj a3VwV2FpdFdhbEFyY2hpdmU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBXQUwgZmlsZXMgcmVxdWlyZWQgZm9yIGEgYmFja3VwIHRvIGJlIHN1Y2Nlc3Nm dWxseQotICAgICAgIGFyY2hpdmVkLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkJnV29ya2VyU2h1dGRvd248L2xpdGVyYWw+PC9l bnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBiYWNrZ3JvdW5kIHdvcmtlciB0byBz aHV0IGRvd24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50 cnk+PGxpdGVyYWw+QmdXb3JrZXJTdGFydHVwPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8 ZW50cnk+V2FpdGluZyBmb3IgYmFja2dyb3VuZCB3b3JrZXIgdG8gc3RhcnQgdXAuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+QnRy ZWVQYWdlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgdGhl IHBhZ2UgbnVtYmVyIG5lZWRlZCB0byBjb250aW51ZSBhIHBhcmFsbGVsIEItdHJlZQotICAg ICAgIHNjYW4gdG8gYmVjb21lIGF2YWlsYWJsZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAg ICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CdWZmZXJJTzwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGJ1ZmZlciBJL08gdG8gY29tcGxldGUu PC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+Q2hlY2twb2ludERvbmU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBhIGNoZWNrcG9pbnQgdG8gY29tcGxldGUuPC9lbnRyeT4KLSAgICAgPC9yb3c+ Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+Q2hlY2twb2ludFN0YXJ0PC9s aXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBjaGVja3BvaW50 IHRvIHN0YXJ0LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPkV4ZWN1dGVHYXRoZXI8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxl bnRyeT5XYWl0aW5nIGZvciBhY3Rpdml0eSBmcm9tIGEgY2hpbGQgcHJvY2VzcyB3aGlsZQot ICAgICAgIGV4ZWN1dGluZyBhIDxsaXRlcmFsPkdhdGhlcjwvbGl0ZXJhbD4gcGxhbiBub2Rl LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPkhhc2hCYXRjaEFsbG9jYXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+ V2FpdGluZyBmb3IgYW4gZWxlY3RlZCBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGFs bG9jYXRlIGEgaGFzaAotICAgICAgIHRhYmxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkhhc2hCYXRjaEVsZWN0PC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBlbGVjdCBhIFBhcmFsbGVsIEhh c2ggcGFydGljaXBhbnQgdG8gYWxsb2NhdGUgYSBoYXNoCi0gICAgICAgdGFibGUuPC9lbnRy eT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+SGFz aEJhdGNoTG9hZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9y IG90aGVyIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnRzIHRvIGZpbmlzaCBsb2FkaW5nIGEK LSAgICAgICBoYXNoIHRhYmxlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93Pgot ICAgICAgPGVudHJ5PjxsaXRlcmFsPkhhc2hCdWlsZEFsbG9jYXRlPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYW4gZWxlY3RlZCBQYXJhbGxlbCBIYXNo IHBhcnRpY2lwYW50IHRvIGFsbG9jYXRlIHRoZQotICAgICAgIGluaXRpYWwgaGFzaCB0YWJs ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0 ZXJhbD5IYXNoQnVpbGRFbGVjdDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5Pldh aXRpbmcgdG8gZWxlY3QgYSBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGFsbG9jYXRl IHRoZQotICAgICAgIGluaXRpYWwgaGFzaCB0YWJsZS48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNoQnVpbGRIYXNoSW5uZXI8 L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBvdGhlciBQYXJh bGxlbCBIYXNoIHBhcnRpY2lwYW50cyB0byBmaW5pc2ggaGFzaGluZyB0aGUKLSAgICAgICBp bm5lciByZWxhdGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5IYXNoQnVpbGRIYXNoT3V0ZXI8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBvdGhlciBQYXJhbGxlbCBIYXNoIHBhcnRpY2lw YW50cyB0byBmaW5pc2ggcGFydGl0aW9uaW5nCi0gICAgICAgdGhlIG91dGVyIHJlbGF0aW9u LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRl cmFsPkhhc2hHcm93QmF0Y2hlc0RlY2lkZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVu dHJ5PldhaXRpbmcgdG8gZWxlY3QgYSBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGRl Y2lkZSBvbiBmdXR1cmUKLSAgICAgICBiYXRjaCBncm93dGguPC9lbnRyeT4KLSAgICAgPC9y b3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+SGFzaEdyb3dCYXRjaGVz RWxlY3Q8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIHRvIGVsZWN0 IGEgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0byBhbGxvY2F0ZSBtb3JlCi0gICAgICAg YmF0Y2hlcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRy eT48bGl0ZXJhbD5IYXNoR3Jvd0JhdGNoZXNGaW5pc2g8L2xpdGVyYWw+PC9lbnRyeT4KLSAg ICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhbiBlbGVjdGVkIFBhcmFsbGVsIEhhc2ggcGFydGlj aXBhbnQgdG8gZGVjaWRlIG9uCi0gICAgICAgZnV0dXJlIGJhdGNoIGdyb3d0aC48L2VudHJ5 PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNo R3Jvd0JhdGNoZXNSZWFsbG9jYXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+ V2FpdGluZyBmb3IgYW4gZWxlY3RlZCBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGFs bG9jYXRlIG1vcmUKLSAgICAgICBiYXRjaGVzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkhhc2hHcm93QmF0Y2hlc1JlcGFydGl0 aW9uPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Igb3RoZXIg UGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoCi0gICAgICAgcmVwYXJ0aXRp b25pbmcuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+ PGxpdGVyYWw+SGFzaEdyb3dCdWNrZXRzRWxlY3Q8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIHRvIGVsZWN0IGEgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0 byBhbGxvY2F0ZSBtb3JlCi0gICAgICAgYnVja2V0cy48L2VudHJ5PgotICAgICA8L3Jvdz4K LSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5IYXNoR3Jvd0J1Y2tldHNSZWFs bG9jYXRlPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYW4g ZWxlY3RlZCBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGZpbmlzaAotICAgICAgIGFs bG9jYXRpbmcgbW9yZSBidWNrZXRzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93 PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkhhc2hHcm93QnVja2V0c1JlaW5zZXJ0PC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3Igb3RoZXIgUGFyYWxsZWwg SGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoIGluc2VydGluZwotICAgICAgIHR1cGxlcyBp bnRvIG5ldyBidWNrZXRzLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAg ICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2ljYWxBcHBseVNlbmREYXRhPC9saXRlcmFsPjwvZW50 cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBsb2dpY2FsIHJlcGxpY2F0aW9uIGxl YWRlciBhcHBseSBwcm9jZXNzIHRvIHNlbmQKLSAgICAgICBkYXRhIHRvIGEgcGFyYWxsZWwg YXBwbHkgcHJvY2Vzcy48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5Mb2dpY2FsUGFyYWxsZWxBcHBseVN0YXRlQ2hhbmdlPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgYSBsb2dpY2FsIHJlcGxp Y2F0aW9uIHBhcmFsbGVsIGFwcGx5IHByb2Nlc3MgdG8gY2hhbmdlCi0gICAgICAgc3RhdGUu PC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVy YWw+TG9naWNhbFN5bmNEYXRhPC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2Fp dGluZyBmb3IgYSBsb2dpY2FsIHJlcGxpY2F0aW9uIHJlbW90ZSBzZXJ2ZXIgdG8gc2VuZCBk YXRhIGZvcgotICAgICAgIGluaXRpYWwgdGFibGUgc3luY2hyb25pemF0aW9uLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPkxvZ2lj YWxTeW5jU3RhdGVDaGFuZ2U8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0 aW5nIGZvciBhIGxvZ2ljYWwgcmVwbGljYXRpb24gcmVtb3RlIHNlcnZlciB0byBjaGFuZ2UK LSAgICAgICBzdGF0ZS48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAg IDxlbnRyeT48bGl0ZXJhbD5NZXNzYWdlUXVldWVJbnRlcm5hbDwvbGl0ZXJhbD48L2VudHJ5 PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGFub3RoZXIgcHJvY2VzcyB0byBiZSBhdHRh Y2hlZCB0byBhIHNoYXJlZCBtZXNzYWdlCi0gICAgICAgcXVldWUuPC9lbnRyeT4KLSAgICAg PC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+TWVzc2FnZVF1ZXVl UHV0TWVzc2FnZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgdG8g d3JpdGUgYSBwcm90b2NvbCBtZXNzYWdlIHRvIGEgc2hhcmVkIG1lc3NhZ2UgcXVldWUuPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+ TWVzc2FnZVF1ZXVlUmVjZWl2ZTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5Pldh aXRpbmcgdG8gcmVjZWl2ZSBieXRlcyBmcm9tIGEgc2hhcmVkIG1lc3NhZ2UgcXVldWUuPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+ TWVzc2FnZVF1ZXVlU2VuZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgdG8gc2VuZCBieXRlcyB0byBhIHNoYXJlZCBtZXNzYWdlIHF1ZXVlLjwvZW50cnk+Ci0g ICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlBhcmFsbGVs Qml0bWFwU2NhbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9y IHBhcmFsbGVsIGJpdG1hcCBzY2FuIHRvIGJlY29tZSBpbml0aWFsaXplZC48L2VudHJ5Pgot ICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5QYXJhbGxl bENyZWF0ZUluZGV4U2NhbjwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgZm9yIHBhcmFsbGVsIDxjb21tYW5kPkNSRUFURSBJTkRFWDwvY29tbWFuZD4gd29ya2Vy cyB0bwotICAgICAgIGZpbmlzaCBoZWFwIHNjYW4uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UGFyYWxsZWxGaW5pc2g8L2xpdGVy YWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBwYXJhbGxlbCB3b3JrZXJz IHRvIGZpbmlzaCBjb21wdXRpbmcuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+ Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UHJvY0FycmF5R3JvdXBVcGRhdGU8L2xpdGVyYWw+ PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciB0aGUgZ3JvdXAgbGVhZGVyIHRv IGNsZWFyIHRoZSB0cmFuc2FjdGlvbiBJRCBhdAotICAgICAgIGVuZCBvZiBhIHBhcmFsbGVs IG9wZXJhdGlvbi48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5Qcm9jU2lnbmFsQmFycmllcjwvbGl0ZXJhbD48L2VudHJ5PgotICAg ICAgPGVudHJ5PldhaXRpbmcgZm9yIGEgYmFycmllciBldmVudCB0byBiZSBwcm9jZXNzZWQg YnkgYWxsCi0gICAgICAgYmFja2VuZHMuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxy b3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UHJvbW90ZTwvbGl0ZXJhbD48L2VudHJ5Pgot ICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHN0YW5kYnkgcHJvbW90aW9uLjwvZW50cnk+Ci0g ICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlY292ZXJ5 Q29uZmxpY3RTbmFwc2hvdDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRp bmcgZm9yIHJlY292ZXJ5IGNvbmZsaWN0IHJlc29sdXRpb24gZm9yIGEgdmFjdXVtCi0gICAg ICAgY2xlYW51cC48L2VudHJ5PgotICAgICA8L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxl bnRyeT48bGl0ZXJhbD5SZWNvdmVyeUNvbmZsaWN0VGFibGVzcGFjZTwvbGl0ZXJhbD48L2Vu dHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHJlY292ZXJ5IGNvbmZsaWN0IHJlc29s dXRpb24gZm9yIGRyb3BwaW5nIGEKLSAgICAgICB0YWJsZXNwYWNlLjwvZW50cnk+Ci0gICAg IDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlY292ZXJ5RW5k Q29tbWFuZDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIDx4 cmVmIGxpbmtlbmQ9Imd1Yy1yZWNvdmVyeS1lbmQtY29tbWFuZCIvPiB0bwotICAgICAgIGNv bXBsZXRlLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPlJlY292ZXJ5UGF1c2U8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRy eT5XYWl0aW5nIGZvciByZWNvdmVyeSB0byBiZSByZXN1bWVkLjwvZW50cnk+Ci0gICAgIDwv cm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlJlcGxpY2F0aW9uT3Jp Z2luRHJvcDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIGEg cmVwbGljYXRpb24gb3JpZ2luIHRvIGJlY29tZSBpbmFjdGl2ZSBzbyBpdCBjYW4gYmUKLSAg ICAgICBkcm9wcGVkLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAg PGVudHJ5PjxsaXRlcmFsPlJlcGxpY2F0aW9uU2xvdERyb3A8L2xpdGVyYWw+PC9lbnRyeT4K LSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBhIHJlcGxpY2F0aW9uIHNsb3QgdG8gYmVjb21l IGluYWN0aXZlIHNvIGl0IGNhbiBiZQotICAgICAgIGRyb3BwZWQuPC9lbnRyeT4KLSAgICAg PC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UmVzdG9yZUNvbW1h bmQ8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciA8eHJlZiBs aW5rZW5kPSJndWMtcmVzdG9yZS1jb21tYW5kIi8+IHRvCi0gICAgICAgY29tcGxldGUuPC9l bnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+ U2FmZVNuYXBzaG90PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0 byBvYnRhaW4gYSB2YWxpZCBzbmFwc2hvdCBmb3IgYSA8bGl0ZXJhbD5SRUFEIE9OTFkKLSAg ICAgICBERUZFUlJBQkxFPC9saXRlcmFsPiB0cmFuc2FjdGlvbi48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5TeW5jUmVwPC9saXRl cmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBmb3IgY29uZmlybWF0aW9uIGZy b20gYSByZW1vdGUgc2VydmVyIGR1cmluZyBzeW5jaHJvbm91cwotICAgICAgIHJlcGxpY2F0 aW9uLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5Pjxs aXRlcmFsPldhbFJlY2VpdmVyRXhpdDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgZm9yIHRoZSBXQUwgcmVjZWl2ZXIgdG8gZXhpdC48L2VudHJ5PgotICAgICA8 L3Jvdz4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5XYWxSZWNlaXZlcldh aXRTdGFydDwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5PldhaXRpbmcgZm9yIHN0 YXJ0dXAgcHJvY2VzcyB0byBzZW5kIGluaXRpYWwgZGF0YSBmb3Igc3RyZWFtaW5nCi0gICAg ICAgcmVwbGljYXRpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAg ICA8ZW50cnk+PGxpdGVyYWw+WGFjdEdyb3VwVXBkYXRlPC9saXRlcmFsPjwvZW50cnk+Ci0g ICAgICA8ZW50cnk+V2FpdGluZyBmb3IgdGhlIGdyb3VwIGxlYWRlciB0byB1cGRhdGUgdHJh bnNhY3Rpb24gc3RhdHVzIGF0Ci0gICAgICAgZW5kIG9mIGEgcGFyYWxsZWwgb3BlcmF0aW9u LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgIDwvdGJvZHk+Ci0gICA8L3Rncm91cD4KLSAg PC90YWJsZT4KLQogICA8dGFibGUgaWQ9IndhaXQtZXZlbnQtbG9jay10YWJsZSI+CiAgICA8 dGl0bGU+V2FpdCBFdmVudHMgb2YgVHlwZSA8bGl0ZXJhbD5Mb2NrPC9saXRlcmFsPjwvdGl0 bGU+CiAgICA8dGdyb3VwIGNvbHM9IjIiPgpAQCAtMjMwNSw2MiArMTU3MSw2IEBAIHBvc3Rn cmVzICAgMjcwOTMgIDAuMCAgMC4wICAzMDA5NiAgMjc1MiA/ICAgICAgICBTcyAgIDExOjM0 ICAgMDowMCBwb3N0Z3Jlczogc2VyCiAgICAgPC9wYXJhPgogICAgPC9ub3RlPgogCi0gIDx0 YWJsZSBpZD0id2FpdC1ldmVudC10aW1lb3V0LXRhYmxlIj4KLSAgIDx0aXRsZT5XYWl0IEV2 ZW50cyBvZiBUeXBlIDxsaXRlcmFsPlRpbWVvdXQ8L2xpdGVyYWw+PC90aXRsZT4KLSAgIDx0 Z3JvdXAgY29scz0iMiI+Ci0gICAgPHRoZWFkPgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPlRpbWVvdXQ8L2xpdGVyYWw+IFdhaXQgRXZlbnQ8L2VudHJ5PgotICAgICAg PGVudHJ5PkRlc2NyaXB0aW9uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90aGVhZD4K LQotICAgIDx0Ym9keT4KLSAgICAgPHJvdz4KLSAgICAgIDxlbnRyeT48bGl0ZXJhbD5CYXNl QmFja3VwVGhyb3R0bGU8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IGR1cmluZyBiYXNlIGJhY2t1cCB3aGVuIHRocm90dGxpbmcgYWN0aXZpdHkuPC9lbnRyeT4K LSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+Q2hlY2tw b2ludFdyaXRlRGVsYXk8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5n IGJldHdlZW4gd3JpdGVzIHdoaWxlIHBlcmZvcm1pbmcgYSBjaGVja3BvaW50LjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlBnU2xl ZXA8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGR1ZSB0byBhIGNh bGwgdG8gPGZ1bmN0aW9uPnBnX3NsZWVwPC9mdW5jdGlvbj4gb3IKLSAgICAgICBhIHNpYmxp bmcgZnVuY3Rpb24uPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgIDxyb3c+Ci0gICAgICA8 ZW50cnk+PGxpdGVyYWw+UmVjb3ZlcnlBcHBseURlbGF5PC9saXRlcmFsPjwvZW50cnk+Ci0g ICAgICA8ZW50cnk+V2FpdGluZyB0byBhcHBseSBXQUwgZHVyaW5nIHJlY292ZXJ5IGJlY2F1 c2Ugb2YgYSBkZWxheQotICAgICAgIHNldHRpbmcuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0g ICAgIDxyb3c+Ci0gICAgICA8ZW50cnk+PGxpdGVyYWw+UmVjb3ZlcnlSZXRyaWV2ZVJldHJ5 SW50ZXJ2YWw8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAgIDxlbnRyeT5XYWl0aW5nIGR1cmlu ZyByZWNvdmVyeSB3aGVuIFdBTCBkYXRhIGlzIG5vdCBhdmFpbGFibGUgZnJvbSBhbnkKLSAg ICAgICBzb3VyY2UgKDxmaWxlbmFtZT5wZ193YWw8L2ZpbGVuYW1lPiwgYXJjaGl2ZSBvciBz dHJlYW0pLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5 PjxsaXRlcmFsPlJlZ2lzdGVyU3luY1JlcXVlc3Q8L2xpdGVyYWw+PC9lbnRyeT4KLSAgICAg IDxlbnRyeT5XYWl0aW5nIHdoaWxlIHNlbmRpbmcgc3luY2hyb25pemF0aW9uIHJlcXVlc3Rz IHRvIHRoZQotICAgICAgIGNoZWNrcG9pbnRlciwgYmVjYXVzZSB0aGUgcmVxdWVzdCBxdWV1 ZSBpcyBmdWxsLjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVu dHJ5PjxsaXRlcmFsPlNwaW5EZWxheTwvbGl0ZXJhbD48L2VudHJ5PgotICAgICAgPGVudHJ5 PldhaXRpbmcgd2hpbGUgYWNxdWlyaW5nIGEgY29udGVuZGVkIHNwaW5sb2NrLjwvZW50cnk+ Ci0gICAgIDwvcm93PgotICAgICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlZhY3V1 bURlbGF5PC9saXRlcmFsPjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyBpbiBhIGNv c3QtYmFzZWQgdmFjdXVtIGRlbGF5IHBvaW50LjwvZW50cnk+Ci0gICAgIDwvcm93PgotICAg ICA8cm93PgotICAgICAgPGVudHJ5PjxsaXRlcmFsPlZhY3V1bVRydW5jYXRlPC9saXRlcmFs PjwvZW50cnk+Ci0gICAgICA8ZW50cnk+V2FpdGluZyB0byBhY3F1aXJlIGFuIGV4Y2x1c2l2 ZSBsb2NrIHRvIHRydW5jYXRlIG9mZiBhbnkKLSAgICAgICBlbXB0eSBwYWdlcyBhdCB0aGUg ZW5kIG9mIGEgdGFibGUgdmFjdXVtZWQuPC9lbnRyeT4KLSAgICAgPC9yb3c+Ci0gICAgPC90 Ym9keT4KLSAgIDwvdGdyb3VwPgotICA8L3RhYmxlPgotCiAgICA8cGFyYT4KICAgICAgSGVy ZSBpcyBhbiBleGFtcGxlIG9mIGhvdyB3YWl0IGV2ZW50cyBjYW4gYmUgdmlld2VkOgogCmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9NYWtlZmlsZSBiL3NyYy9iYWNrZW5kL01ha2VmaWxl CmluZGV4IGU0YmYwZmU5YzAuLmE4MmM5MDgzMTUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L01ha2VmaWxlCisrKyBiL3NyYy9iYWNrZW5kL01ha2VmaWxlCkBAIC0xMzQsNiArMTM0LDkg QEAgcGFyc2VyL2dyYW0uaDogcGFyc2VyL2dyYW0ueQogc3RvcmFnZS9sbWdyL2x3bG9ja25h bWVzLmg6IHN0b3JhZ2UvbG1nci9nZW5lcmF0ZS1sd2xvY2tuYW1lcy5wbCBzdG9yYWdlL2xt Z3IvbHdsb2NrbmFtZXMudHh0CiAJJChNQUtFKSAtQyBzdG9yYWdlL2xtZ3IgbHdsb2NrbmFt ZXMuaCBsd2xvY2tuYW1lcy5jCiAKK3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfdHlwZXMu aDogdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwgdXRpbHMvYWN0 aXZpdHkvd2FpdGV2ZW50bmFtZXMudHh0CisJJChNQUtFKSAtQyB1dGlscy9hY3Rpdml0eSB3 YWl0X2V2ZW50X3R5cGVzLmggcGdzdGF0X3dhaXRfZXZlbnQuYworCiAjIHJ1biB0aGlzIHVu Y29uZGl0aW9uYWxseSB0byBhdm9pZCBuZWVkaW5nIHRvIGtub3cgaXRzIGRlcGVuZGVuY2ll cyBoZXJlOgogc3VibWFrZS1jYXRhbG9nLWhlYWRlcnM6CiAJJChNQUtFKSAtQyBjYXRhbG9n IGRpc3RwcmVwIGdlbmVyYXRlZC1oZWFkZXItc3ltbGlua3MKQEAgLTE2MSwxMyArMTY0LDE4 IEBAIHN1Ym1ha2UtdXRpbHMtaGVhZGVyczoKIAogLlBIT05ZOiBnZW5lcmF0ZWQtaGVhZGVy cwogCi1nZW5lcmF0ZWQtaGVhZGVyczogJCh0b3BfYnVpbGRkaXIpL3NyYy9pbmNsdWRlL3N0 b3JhZ2UvbHdsb2NrbmFtZXMuaCBzdWJtYWtlLWNhdGFsb2ctaGVhZGVycyBzdWJtYWtlLW5v ZGVzLWhlYWRlcnMgc3VibWFrZS11dGlscy1oZWFkZXJzCitnZW5lcmF0ZWQtaGVhZGVyczog JCh0b3BfYnVpbGRkaXIpL3NyYy9pbmNsdWRlL3N0b3JhZ2UvbHdsb2NrbmFtZXMuaCAkKHRv cF9idWlsZGRpcikvc3JjL2luY2x1ZGUvdXRpbHMvd2FpdF9ldmVudF90eXBlcy5oIHN1Ym1h a2UtY2F0YWxvZy1oZWFkZXJzIHN1Ym1ha2Utbm9kZXMtaGVhZGVycyBzdWJtYWtlLXV0aWxz LWhlYWRlcnMKIAogJCh0b3BfYnVpbGRkaXIpL3NyYy9pbmNsdWRlL3N0b3JhZ2UvbHdsb2Nr bmFtZXMuaDogc3RvcmFnZS9sbWdyL2x3bG9ja25hbWVzLmgKIAlwcmVyZXFkaXI9YGNkICck KGRpciAkPCknID4vZGV2L251bGwgJiYgcHdkYCAmJiBcCiAJICBjZCAnJChkaXIgJEApJyAm JiBybSAtZiAkKG5vdGRpciAkQCkgJiYgXAogCSAgJChMTl9TKSAiJCRwcmVyZXFkaXIvJChu b3RkaXIgJDwpIiAuCiAKKyQodG9wX2J1aWxkZGlyKS9zcmMvaW5jbHVkZS91dGlscy93YWl0 X2V2ZW50X3R5cGVzLmg6IHV0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfdHlwZXMuaAorCXBy ZXJlcWRpcj1gY2QgJyQoZGlyICQ8KScgPi9kZXYvbnVsbCAmJiBwd2RgICYmIFwKKwkgIGNk ICckKGRpciAkQCknICYmIHJtIC1mICQobm90ZGlyICRAKSAmJiBcCisJICAkKExOX1MpICIk JHByZXJlcWRpci8kKG5vdGRpciAkPCkiIC4KKwogdXRpbHMvcHJvYmVzLm86IHV0aWxzL3By b2Jlcy5kICQoU1VCRElST0JKUykKIAkkKERUUkFDRSkgJChEVFJBQ0VGTEFHUykgLUMgLUcg LXMgJChjYWxsIGV4cGFuZF9zdWJzeXMsJF4pIC1vICRACiAKQEAgLTE4NSw2ICsxOTMsNyBA QCBkaXN0cHJlcDoKIAkkKE1BS0UpIC1DIHV0aWxzCWRpc3RwcmVwCiAJJChNQUtFKSAtQyB1 dGlscy9hZHQJanNvbnBhdGhfZ3JhbS5jIGpzb25wYXRoX2dyYW0uaCBqc29ucGF0aF9zY2Fu LmMKIAkkKE1BS0UpIC1DIHV0aWxzL21pc2MJZ3VjLWZpbGUuYworCSQoTUFLRSkgLUMgdXRp bHMvYWN0dml0eQl3YWl0X2V2ZW50X3R5cGVzLmggcGdzdGF0X3dhaXRfZXZlbnQuYwogCiAK ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjCkBAIC0zMDIsNiArMzExLDggQEAgbWFpbnRhaW5lci1j bGVhbjogZGlzdGNsZWFuCiAJICAgICAgcmVwbGljYXRpb24vc3luY3JlcF9zY2FubmVyLmMg XAogCSAgICAgIHN0b3JhZ2UvbG1nci9sd2xvY2tuYW1lcy5jIFwKIAkgICAgICBzdG9yYWdl L2xtZ3IvbHdsb2NrbmFtZXMuaCBcCisJICAgICAgdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3dh aXRfZXZlbnQuYyBcCisJICAgICAgdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudF90eXBlcy5o IFwKIAkgICAgICB1dGlscy9hZHQvanNvbnBhdGhfZ3JhbS5jIFwKIAkgICAgICB1dGlscy9h ZHQvanNvbnBhdGhfZ3JhbS5oIFwKIAkgICAgICB1dGlscy9hZHQvanNvbnBhdGhfc2Nhbi5j IFwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L01ha2VmaWxlIGIv c3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvTWFrZWZpbGUKaW5kZXggN2Q3NDgyZGRlMC4u NjU0ODdkYTdhYSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvTWFr ZWZpbGUKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvTWFrZWZpbGUKQEAgLTMz LDMgKzMzLDEzIEBAIE9CSlMgPSBcCiAJd2FpdF9ldmVudC5vCiAKIGluY2x1ZGUgJCh0b3Bf c3JjZGlyKS9zcmMvYmFja2VuZC9jb21tb24ubWsKKword2FpdF9ldmVudC5vOiBwZ3N0YXRf d2FpdF9ldmVudC5jCitwZ3N0YXRfd2FpdF9ldmVudC5jOiB3YWl0X2V2ZW50X3R5cGVzLmgK Kwl0b3VjaCAkQAorCit3YWl0X2V2ZW50X3R5cGVzLmg6ICQodG9wX3NyY2Rpcikvc3JjL2Jh Y2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdGV2ZW50bmFtZXMudHh0IGdlbmVyYXRlLXdhaXRl dmVudG5hbWVzLnBsCisJJChQRVJMKSAkKHNyY2RpcikvZ2VuZXJhdGUtd2FpdGV2ZW50bmFt ZXMucGwgJDwKKworbWFpbnRhaW5lci1jbGVhbjogY2xlYW4KKwlybSAtZiB3YWl0X2V2ZW50 X3R5cGVzLmggcGdzdGF0X3dhaXRfZXZlbnQuYwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv dXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwgYi9zcmMvYmFja2Vu ZC91dGlscy9hY3Rpdml0eS9nZW5lcmF0ZS13YWl0ZXZlbnRuYW1lcy5wbApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi5hM2M3ODE3OGJkCi0tLSAvZGV2L251bGwK KysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFt ZXMucGwKQEAgLTAsMCArMSwyMDQgQEAKKyMhL3Vzci9iaW4vcGVybAorIy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KKyMKKyMgR2VuZXJhdGUgd2FpdCBldmVudHMgc3VwcG9ydCBmaWxlcyBmcm9tIHdh aXRldmVudG5hbWVzLnR4dDoKKyMgLSB3YWl0X2V2ZW50X3R5cGVzLmgKKyMgLSBwZ3N0YXRf d2FpdF9ldmVudC5jCisjIC0gd2FpdGV2ZW50bmFtZXMuc2dtbAorIworIyBQb3J0aW9ucyBD b3B5cmlnaHQgKGMpIDE5OTYtMjAyMywgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQg R3JvdXAKKyMgUG9ydGlvbnMgQ29weXJpZ2h0IChjKSAxOTk0LCBSZWdlbnRzIG9mIHRoZSBV bml2ZXJzaXR5IG9mIENhbGlmb3JuaWEKKyMKKyMgc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZp dHkvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwKKyMKKyMtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisK K3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7Cit1c2UgR2V0b3B0OjpMb25nOworCitteSAk b3V0cHV0X3BhdGggPSAnLic7CisKK215ICRjb250aW51ZSA9ICJcbiI7CitteSAlaGFzaHdl OworbXkgJWhhc2h3cmNfY29tbWVudDsKK215ICR3YWl0Y2xhc3M7CisKK0dldE9wdGlvbnMo J291dGRpcjpzJyA9PiBcJG91dHB1dF9wYXRoKTsKKworb3BlbiBteSAkd2FpdGV2ZW50bmFt ZXMsICc8JywgJEFSR1ZbMF0gb3IgZGllOworCisjIEluY2x1ZGUgUElEIGluIHN1ZmZpeCBp biBjYXNlIHBhcmFsbGVsIG1ha2UgcnVucyB0aGlzIG11bHRpcGxlIHRpbWVzLgorbXkgJGh0 bXAgPSAiJG91dHB1dF9wYXRoL3dhaXRfZXZlbnRfdHlwZXMuaC50bXAkJCI7CitteSAkY3Rt cCA9ICIkb3V0cHV0X3BhdGgvcGdzdGF0X3dhaXRfZXZlbnQuYy50bXAkJCI7CitteSAkc3Rt cCA9ICIkb3V0cHV0X3BhdGgvd2FpdGV2ZW50bmFtZXMucy50bXAkJCI7CitvcGVuIG15ICRo LCAnPicsICRodG1wIG9yIGRpZSAiQ291bGQgbm90IG9wZW4gJGh0bXA6ICQhIjsKK29wZW4g bXkgJGMsICc+JywgJGN0bXAgb3IgZGllICJDb3VsZCBub3Qgb3BlbiAkY3RtcDogJCEiOwor b3BlbiBteSAkcywgJz4nLCAkc3RtcCBvciBkaWUgIkNvdWxkIG5vdCBvcGVuICRzdG1wOiAk ISI7CisKK215ICRoZWFkZXJfY29tbWVudCA9CisgICcvKi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyAqCisgKiAlcworICogICAgR2VuZXJhdGVkIHdhaXQgZXZlbnRzIGluZnJhc3RydWN0dXJl IGNvZGUKKyAqCisgKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMywgUG9zdGdy ZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQgR3JvdXAKKyAqIFBvcnRpb25zIENvcHlyaWdodCAo YykgMTk5NCwgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisgKgor ICogTk9URVMKKyAqICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqICAqKiog RE8gTk9UIEVESVQgVEhJUyBGSUxFISAqKioKKyAqICAqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioKKyAqCisgKiAgSXQgaGFzIGJlZW4gR0VORVJBVEVEIGJ5IHNyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L2dlbmVyYXRlLXdhaXRldmVudG5hbWVzLnBsCisgKgorICotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCisgKi8KKyc7CisKK3ByaW50ZiAkaCAkaGVhZGVyX2NvbW1lbnQs ICd3YWl0X2V2ZW50X3R5cGVzLmgnOworcHJpbnRmICRoICIjaWZuZGVmIFdBSVRFVkVOVE5B TUVTX0hcbiI7CitwcmludGYgJGggIiNkZWZpbmUgV0FJVEVWRU5UTkFNRVNfSFxuXG4iOwor cHJpbnRmICRoICIjaW5jbHVkZSBcInV0aWxzL3dhaXRfZXZlbnQuaFwiXG5cbiI7CisKK3By aW50ZiAkYyAkaGVhZGVyX2NvbW1lbnQsICdwZ3N0YXRfd2FpdF9ldmVudC5jJzsKKworbXkg QGxpbmVzOworbXkgJGxpbmU7CitteSAkc2VjdGlvbl9uYW1lOworCisjIFJlbW92ZSBjb21t ZW50cyBhbmQgZW1wdHkgbGluZXMgYW5kIGFkZCB3YWl0Y2xhc3NuYW1lIGJhc2VkIG9uIHRo ZSBzZWN0aW9uCit3aGlsZSAoPCR3YWl0ZXZlbnRuYW1lcz4pCit7CisJY2hvbXA7CisKKwkj IFNraXAgY29tbWVudHMKKwluZXh0IGlmIC9eIy87CisKKwkjIFNraXAgZW1wdHkgbGluZXMK KwluZXh0IGlmIC9eXHMqJC87CisKKwkjIEdldCB3YWl0Y2xhc3NuYW1lIGJhc2VkIG9uIHRo ZSBzZWN0aW9uCisJaWYgKC9eU2VjdGlvbjooLiopLykKKwl7CisJCSRzZWN0aW9uX25hbWUg PSAkXzsKKwkJJHNlY3Rpb25fbmFtZSA9fiBzL14uKi0gLy87CisJCW5leHQ7CisJfQorCisJ aWYgKC9eLlwqLykKKwl7CisJCSMgVGhvc2UgYXJlIGNvbW1lbnRzIHdlIHdhbnQgdG8gc2Vl IGluIHRoZSBoZWFkZXIgZmlsZQorCQlwdXNoKEB7ICRoYXNod3JjX2NvbW1lbnR7JHNlY3Rp b25fbmFtZX0gfSwgJF8pOworCX0KKwllbHNlCisJeworCQlwdXNoKEBsaW5lcywgJHNlY3Rp b25fbmFtZSAuICJcdCIgLiAkXyk7CisJfQorfQorCisjIFNvcnQgdGhlIGxpbmVzIGJhc2Vk IG9uIHRoZSBzZWNvbmQgY29sdW1uCitteSBAbGluZXNfc29ydGVkID0KKyAgc29ydCB7IChz cGxpdCgvXHQvLCAkYSkpWzFdIGNtcChzcGxpdCgvXHQvLCAkYikpWzFdIH0gQGxpbmVzOwor CisjIFJlYWQgdGhlIHNvcnRlZCBsaW5lcyBhbmQgcG9wdWxhdGUgdGhlIGhhc2ggdGFibGUK K2ZvcmVhY2ggJGxpbmUgKEBsaW5lc19zb3J0ZWQpCit7CisJZGllICJ1bmFibGUgdG8gcGFy c2Ugd2FpdGV2ZW50bmFtZXMudHh0IgorCSAgdW5sZXNzICRsaW5lID1+IC9eKFx3KylcdCso XHcrKVx0KygiXHcrIilcdCsoIlx3LipcLiIpJC87CisKKwkoICAgbXkgJHdhaXRjbGFzc25h bWUsCisJCW15ICR3YWl0ZXZlbnRlbnVtbmFtZSwKKwkJbXkgJHdhaXRldmVudGRlc2NyaXB0 aW9uLAorCQlteSAkd2FpdGV2ZW5kb2NzZW50ZW5jZSkgPSBzcGxpdCgvXHQvLCAkbGluZSk7 CisKKwlteSBAd2FpdGV2ZW50bGlzdCA9CisJICBbICR3YWl0ZXZlbnRlbnVtbmFtZSwgJHdh aXRldmVudGRlc2NyaXB0aW9uLCAkd2FpdGV2ZW5kb2NzZW50ZW5jZSBdOworCW15ICR0cmlt bWVkd2FpdGV2ZW50bmFtZSA9ICR3YWl0ZXZlbnRlbnVtbmFtZTsKKwkkdHJpbW1lZHdhaXRl dmVudG5hbWUgPX4gcy9eV0FJVF9FVkVOVF8vLzsKKwlkaWUgIndhaXQgZXZlbnQgbmFtZXMg bXVzdCBzdGFydCB3aXRoICdXQUlUX0VWRU5UXyciCisJICBpZiAkdHJpbW1lZHdhaXRldmVu dG5hbWUgZXEgJHdhaXRldmVudGVudW1uYW1lOworCSRjb250aW51ZSA9ICIsXG4iOworCXB1 c2goQHsgJGhhc2h3ZXskd2FpdGNsYXNzbmFtZX0gfSwgQHdhaXRldmVudGxpc3QpOworfQor CisjIEdlbmVyYXRlIHRoZSBvdXRwdXQgZmlsZXMKK2ZvcmVhY2ggJHdhaXRjbGFzcyAoa2V5 cyAlaGFzaHdlKQoreworCW15ICRsYXN0ID0gJHdhaXRjbGFzczsKKwkkbGFzdCA9fiBzL15X YWl0RXZlbnQvLzsKKwlteSAkbGFzdHVjICAgID0gdWMgJGxhc3Q7CisJbXkgJGxhc3RsYyAg ICA9IGxjICRsYXN0OworCW15ICRmaXJzdHBhc3MgPSAxOworCW15ICRwZ193YWl0X2NsYXNz OworCisJcHJpbnRmICRjCisJICAic3RhdGljIGNvbnN0IGNoYXIgKlxucGdzdGF0X2dldF93 YWl0XyRsYXN0bGMoJHdhaXRjbGFzcyB3KVxue1xuIjsKKwlwcmludGYgJGMgIlx0Y29uc3Qg Y2hhciAqZXZlbnRfbmFtZSA9IFwidW5rbm93biB3YWl0IGV2ZW50XCI7XG5cbiI7CisJcHJp bnRmICRjICJcdHN3aXRjaCAodylcblx0e1xuIjsKKworCXByaW50ZiAkcyAiICA8dGFibGUg aWQ9XCJ3YWl0LWV2ZW50LSVzLXRhYmxlXCI+XG4iLCAkbGFzdGxjOworCXByaW50ZiAkcyAi ICAgPHRpdGxlPldhaXQgRXZlbnRzIG9mIFR5cGUgPGxpdGVyYWw+JXM8L2xpdGVyYWw+PC90 aXRsZT5cbiIsCisJICB1Y2ZpcnN0KCRsYXN0bGMpOworCXByaW50ZiAkcyAiICAgPHRncm91 cCBjb2xzPVwiMlwiPlxuIjsKKwlwcmludGYgJHMgIiAgICA8dGhlYWQ+XG4iOworCXByaW50 ZiAkcyAiICAgICA8cm93PlxuIjsKKwlwcmludGYgJHMgIiAgICAgIDxlbnRyeT48bGl0ZXJh bD5BY3Rpdml0eTwvbGl0ZXJhbD4gV2FpdCBFdmVudDwvZW50cnk+XG4iOworCXByaW50ZiAk cyAiICAgICAgPGVudHJ5PkRlc2NyaXB0aW9uPC9lbnRyeT5cbiI7CisJcHJpbnRmICRzICIg ICAgIDwvcm93PlxuIjsKKwlwcmludGYgJHMgIiAgICA8L3RoZWFkPlxuXG4iOworCXByaW50 ZiAkcyAiICAgIDx0Ym9keT5cbiI7CisKKwlmb3JlYWNoIG15ICR3ZXYgKEB7ICRoYXNod2V7 JHdhaXRjbGFzc30gfSkKKwl7CisJCWlmICgkZmlyc3RwYXNzKQorCQl7CisJCQlmb3JlYWNo IG15ICR3Y2MgKEB7ICRoYXNod3JjX2NvbW1lbnR7JHdhaXRjbGFzc30gfSkKKwkJCXsKKwkJ CQlwcmludGYgJGggIiVzXG4iLCAkd2NjOworCQkJfQorCQkJcHJpbnRmICRoICJ0eXBlZGVm IGVudW1cbntcbiI7CisJCQkkcGdfd2FpdF9jbGFzcyA9ICJQR19XQUlUXyIgLiAkbGFzdHVj OworCQkJcHJpbnRmICRoICJcdCVzID0gJXMiLCAkd2V2LT5bMF0sICRwZ193YWl0X2NsYXNz OworCQkJJGNvbnRpbnVlID0gIixcbiI7CisJCX0KKwkJZWxzZQorCQl7CisJCQlwcmludGYg JGggIiVzXHQlcyIsICRjb250aW51ZSwgJHdldi0+WzBdOworCQkJJGNvbnRpbnVlID0gIixc biI7CisJCX0KKwkJJGZpcnN0cGFzcyA9IDA7CisKKwkJcHJpbnRmICRjICJcdFx0IGNhc2Ug JXM6XG4iLCAgICAgICAgICAgICAgICAgICAgICAgICAgJHdldi0+WzBdOworCQlwcmludGYg JGMgIlx0XHRcdCBldmVudF9uYW1lID0gJXM7XG5cdFx0XHQgYnJlYWs7XG4iLCAkd2V2LT5b MV07CisKKwkJcHJpbnRmICRzICIgICAgIDxyb3c+XG4iOworCQlwcmludGYgJHMgIiAgICAg IDxlbnRyeT48bGl0ZXJhbD4lczwvbGl0ZXJhbD48L2VudHJ5PlxuIiwKKwkJICBzdWJzdHIg JHdldi0+WzFdLCAxLCAtMTsKKwkJcHJpbnRmICRzICIgICAgICA8ZW50cnk+JXM8L2VudHJ5 PlxuIiwgc3Vic3RyICR3ZXYtPlsyXSwgMSwgLTE7CisJCXByaW50ZiAkcyAiICAgICA8L3Jv dz5cbiI7CisJfQorCisJcHJpbnRmICRoICJcbn0gJHdhaXRjbGFzcztcblxuIjsKKworCXBy aW50ZiAkYyAiXHRcdFx0IC8qIG5vIGRlZmF1bHQgY2FzZSwgc28gdGhhdCBjb21waWxlciB3 aWxsIHdhcm4gKi9cbiI7CisJcHJpbnRmICRjICJcdH1cblxuIjsKKwlwcmludGYgJGMgIlx0 cmV0dXJuIGV2ZW50X25hbWU7XG4iOworCXByaW50ZiAkYyAiXG59XG4iOworCisJcHJpbnRm ICRzICIgICAgPC90Ym9keT5cbiI7CisJcHJpbnRmICRzICIgICA8L3Rncm91cD5cbiI7CisJ cHJpbnRmICRzICIgIDwvdGFibGU+XG4iOworfQorCitwcmludGYgJGggIiNlbmRpZiAgICAg ICAgICAgICAgICAgICAgICAgICAgLyogV0FJVEVWRU5UTkFNRVNfSCAqLyI7CitjbG9zZSAk aDsKK2Nsb3NlICRjOworY2xvc2UgJHM7CisKK3JlbmFtZSgkaHRtcCwgIiRvdXRwdXRfcGF0 aC93YWl0X2V2ZW50X3R5cGVzLmgiKQorICB8fCBkaWUgInJlbmFtZTogJGh0bXAgdG8gJG91 dHB1dF9wYXRoL3dhaXRfZXZlbnRfdHlwZXMuaDogJCEiOworcmVuYW1lKCRjdG1wLCAiJG91 dHB1dF9wYXRoL3Bnc3RhdF93YWl0X2V2ZW50LmMiKSB8fCBkaWUgInJlbmFtZTogJGN0bXA6 ICQhIjsKK3JlbmFtZSgkc3RtcCwgIiRvdXRwdXRfcGF0aC93YWl0ZXZlbnRuYW1lcy5zZ21s IikgfHwgZGllICJyZW5hbWU6ICRjdG1wOiAkISI7CisKK2Nsb3NlICR3YWl0ZXZlbnRuYW1l czsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L21lc29uLmJ1aWxk IGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvbWVzb24uYnVpbGQKaW5kZXggNTE4ZWUz Zjc5OC4uODMwMDRjOTg2YSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZp dHkvbWVzb24uYnVpbGQKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvbWVzb24u YnVpbGQKQEAgLTEsNSArMSwxNyBAQAogIyBDb3B5cmlnaHQgKGMpIDIwMjItMjAyMywgUG9z dGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQgR3JvdXAKIAord2FpdGV2ZW50bmFtZXMgPSBj dXN0b21fdGFyZ2V0KCd3YWl0ZXZlbnRuYW1lcycsCisgIGlucHV0OiBmaWxlcygnLi93YWl0 ZXZlbnRuYW1lcy50eHQnKSwKKyAgb3V0cHV0OiBbJ3Bnc3RhdF93YWl0X2V2ZW50LmMnXSwK KyAgY29tbWFuZDogWworICAgIHBlcmwsIGZpbGVzKCcuL2dlbmVyYXRlLXdhaXRldmVudG5h bWVzLnBsJyksCisgICAgJy1vJywgJ0BPVVRESVJAJywKKyAgICAnQElOUFVUQCcKKyAgXSwK KyAgaW5zdGFsbDogdHJ1ZSwKKyAgaW5zdGFsbF9kaXI6IFtmYWxzZV0sCispCisKIGJhY2tl bmRfc291cmNlcyArPSBmaWxlcygKICAgJ2JhY2tlbmRfcHJvZ3Jlc3MuYycsCiAgICdiYWNr ZW5kX3N0YXR1cy5jJywKQEAgLTE3LDUgKzI5LDE3IEBAIGJhY2tlbmRfc291cmNlcyArPSBm aWxlcygKICAgJ3Bnc3RhdF9zdWJzY3JpcHRpb24uYycsCiAgICdwZ3N0YXRfd2FsLmMnLAog ICAncGdzdGF0X3hhY3QuYycsCispCisKKyMgdGhlc2UgaW5jbHVkZSAuYyBmaWxlcyBnZW5l cmF0ZWQgaW4gLi4vLi4vLi4vaW5jbHVkZS9hY3Rpdml0eSwgc2VlbXMgbmljZXIgdG8gbm90 CisjIGFkZCB0aGF0IGFzIGFuIGluY2x1ZGUgcGF0aCBmb3IgdGhlIHdob2xlIGJhY2tlbmQK K3dhaXRldmVudF9zb3VyY2VzID0gZmlsZXMoCiAgICd3YWl0X2V2ZW50LmMnLAogKQorCiti YWNrZW5kX2xpbmtfd2l0aCArPSBzdGF0aWNfbGlicmFyeSgnd2FpdGV2ZW50bmFtZXMnLAor ICB3YWl0ZXZlbnRfc291cmNlcywKKyAgZGVwZW5kZW5jaWVzOiBbYmFja2VuZF9jb2RlXSwK KyAgaW5jbHVkZV9kaXJlY3RvcmllczogaW5jbHVkZV9kaXJlY3RvcmllcygnLi4vLi4vLi4v aW5jbHVkZS91dGlscycpLAorICBrd2FyZ3M6IGludGVybmFsX2xpYl9hcmdzLAorKQpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudC5jIGIvc3Jj L2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudC5jCmluZGV4IDc5NDBkNjQ2Mzku LjQ4MzFmOGEyNWUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3dh aXRfZXZlbnQuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eS93YWl0X2V2ZW50 LmMKQEAgLTE5Niw1NjkgKzE5Niw0IEBAIHBnc3RhdF9nZXRfd2FpdF9ldmVudCh1aW50MzIg d2FpdF9ldmVudF9pbmZvKQogCXJldHVybiBldmVudF9uYW1lOwogfQogCi0vKiAtLS0tLS0t LS0tCi0gKiBwZ3N0YXRfZ2V0X3dhaXRfYWN0aXZpdHkoKSAtCi0gKgotICogQ29udmVydCBX YWl0RXZlbnRBY3Rpdml0eSB0byBzdHJpbmcuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXN0YXRp YyBjb25zdCBjaGFyICoKLXBnc3RhdF9nZXRfd2FpdF9hY3Rpdml0eShXYWl0RXZlbnRBY3Rp dml0eSB3KQotewotCWNvbnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidW5rbm93biB3YWl0IGV2 ZW50IjsKLQotCXN3aXRjaCAodykKLQl7Ci0JCWNhc2UgV0FJVF9FVkVOVF9BUkNISVZFUl9N QUlOOgotCQkJZXZlbnRfbmFtZSA9ICJBcmNoaXZlck1haW4iOwotCQkJYnJlYWs7Ci0JCWNh c2UgV0FJVF9FVkVOVF9BVVRPVkFDVVVNX01BSU46Ci0JCQlldmVudF9uYW1lID0gIkF1dG9W YWN1dW1NYWluIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQkdXUklURVJfSElC RVJOQVRFOgotCQkJZXZlbnRfbmFtZSA9ICJCZ1dyaXRlckhpYmVybmF0ZSI7Ci0JCQlicmVh azsKLQkJY2FzZSBXQUlUX0VWRU5UX0JHV1JJVEVSX01BSU46Ci0JCQlldmVudF9uYW1lID0g IkJnV3JpdGVyTWFpbiI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NIRUNLUE9J TlRFUl9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJDaGVja3BvaW50ZXJNYWluIjsKLQkJCWJy ZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9BUFBMWV9NQUlOOgotCQkJZXZlbnRf bmFtZSA9ICJMb2dpY2FsQXBwbHlNYWluIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZF TlRfTE9HSUNBTF9MQVVOQ0hFUl9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsTGF1 bmNoZXJNYWluIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9QQVJB TExFTF9BUFBMWV9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsUGFyYWxsZWxBcHBs eU1haW4iOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRUNPVkVSWV9XQUxfU1RS RUFNOgotCQkJZXZlbnRfbmFtZSA9ICJSZWNvdmVyeVdhbFN0cmVhbSI7Ci0JCQlicmVhazsK LQkJY2FzZSBXQUlUX0VWRU5UX1NZU0xPR0dFUl9NQUlOOgotCQkJZXZlbnRfbmFtZSA9ICJT eXNMb2dnZXJNYWluIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfV0FMX1JFQ0VJ VkVSX01BSU46Ci0JCQlldmVudF9uYW1lID0gIldhbFJlY2VpdmVyTWFpbiI7Ci0JCQlicmVh azsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9TRU5ERVJfTUFJTjoKLQkJCWV2ZW50X25hbWUg PSAiV2FsU2VuZGVyTWFpbiI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9X UklURVJfTUFJTjoKLQkJCWV2ZW50X25hbWUgPSAiV2FsV3JpdGVyTWFpbiI7Ci0JCQlicmVh azsKLQkJCS8qIG5vIGRlZmF1bHQgY2FzZSwgc28gdGhhdCBjb21waWxlciB3aWxsIHdhcm4g Ki8KLQl9Ci0KLQlyZXR1cm4gZXZlbnRfbmFtZTsKLX0KLQotLyogLS0tLS0tLS0tLQotICog cGdzdGF0X2dldF93YWl0X2NsaWVudCgpIC0KLSAqCi0gKiBDb252ZXJ0IFdhaXRFdmVudENs aWVudCB0byBzdHJpbmcuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXN0YXRpYyBjb25zdCBjaGFy ICoKLXBnc3RhdF9nZXRfd2FpdF9jbGllbnQoV2FpdEV2ZW50Q2xpZW50IHcpCi17Ci0JY29u c3QgY2hhciAqZXZlbnRfbmFtZSA9ICJ1bmtub3duIHdhaXQgZXZlbnQiOwotCi0Jc3dpdGNo ICh3KQotCXsKLQkJY2FzZSBXQUlUX0VWRU5UX0NMSUVOVF9SRUFEOgotCQkJZXZlbnRfbmFt ZSA9ICJDbGllbnRSZWFkIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQ0xJRU5U X1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJDbGllbnRXcml0ZSI7Ci0JCQlicmVhazsKLQkJ Y2FzZSBXQUlUX0VWRU5UX0dTU19PUEVOX1NFUlZFUjoKLQkJCWV2ZW50X25hbWUgPSAiR1NT T3BlblNlcnZlciI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xJQlBRV0FMUkVD RUlWRVJfQ09OTkVDVDoKLQkJCWV2ZW50X25hbWUgPSAiTGliUFFXYWxSZWNlaXZlckNvbm5l Y3QiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MSUJQUVdBTFJFQ0VJVkVSX1JF Q0VJVkU6Ci0JCQlldmVudF9uYW1lID0gIkxpYlBRV2FsUmVjZWl2ZXJSZWNlaXZlIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfU1NMX09QRU5fU0VSVkVSOgotCQkJZXZlbnRf bmFtZSA9ICJTU0xPcGVuU2VydmVyIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf V0FMX1NFTkRFUl9XQUlUX1dBTDoKLQkJCWV2ZW50X25hbWUgPSAiV2FsU2VuZGVyV2FpdEZv cldBTCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1dBTF9TRU5ERVJfV1JJVEVf REFUQToKLQkJCWV2ZW50X25hbWUgPSAiV2FsU2VuZGVyV3JpdGVEYXRhIjsKLQkJCWJyZWFr OwotCQkJLyogbm8gZGVmYXVsdCBjYXNlLCBzbyB0aGF0IGNvbXBpbGVyIHdpbGwgd2FybiAq LwotCX0KLQotCXJldHVybiBldmVudF9uYW1lOwotfQotCi0vKiAtLS0tLS0tLS0tCi0gKiBw Z3N0YXRfZ2V0X3dhaXRfaXBjKCkgLQotICoKLSAqIENvbnZlcnQgV2FpdEV2ZW50SVBDIHRv IHN0cmluZy4KLSAqIC0tLS0tLS0tLS0KLSAqLwotc3RhdGljIGNvbnN0IGNoYXIgKgotcGdz dGF0X2dldF93YWl0X2lwYyhXYWl0RXZlbnRJUEMgdykKLXsKLQljb25zdCBjaGFyICpldmVu dF9uYW1lID0gInVua25vd24gd2FpdCBldmVudCI7Ci0KLQlzd2l0Y2ggKHcpCi0JewotCQlj YXNlIFdBSVRfRVZFTlRfQVBQRU5EX1JFQURZOgotCQkJZXZlbnRfbmFtZSA9ICJBcHBlbmRS ZWFkeSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0FSQ0hJVkVfQ0xFQU5VUF9D T01NQU5EOgotCQkJZXZlbnRfbmFtZSA9ICJBcmNoaXZlQ2xlYW51cENvbW1hbmQiOwotCQkJ YnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9BUkNISVZFX0NPTU1BTkQ6Ci0JCQlldmVudF9u YW1lID0gIkFyY2hpdmVDb21tYW5kIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf QkFDS0VORF9URVJNSU5BVElPTjoKLQkJCWV2ZW50X25hbWUgPSAiQmFja2VuZFRlcm1pbmF0 aW9uIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQkFDS1VQX1dBSVRfV0FMX0FS Q0hJVkU6Ci0JCQlldmVudF9uYW1lID0gIkJhY2t1cFdhaXRXYWxBcmNoaXZlIjsKLQkJCWJy ZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQkdXT1JLRVJfU0hVVERPV046Ci0JCQlldmVudF9u YW1lID0gIkJnV29ya2VyU2h1dGRvd24iOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVO VF9CR1dPUktFUl9TVEFSVFVQOgotCQkJZXZlbnRfbmFtZSA9ICJCZ1dvcmtlclN0YXJ0dXAi OwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9CVFJFRV9QQUdFOgotCQkJZXZlbnRf bmFtZSA9ICJCdHJlZVBhZ2UiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9CVUZG RVJfSU86Ci0JCQlldmVudF9uYW1lID0gIkJ1ZmZlcklPIjsKLQkJCWJyZWFrOwotCQljYXNl IFdBSVRfRVZFTlRfQ0hFQ0tQT0lOVF9ET05FOgotCQkJZXZlbnRfbmFtZSA9ICJDaGVja3Bv aW50RG9uZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NIRUNLUE9JTlRfU1RB UlQ6Ci0JCQlldmVudF9uYW1lID0gIkNoZWNrcG9pbnRTdGFydCI7Ci0JCQlicmVhazsKLQkJ Y2FzZSBXQUlUX0VWRU5UX0VYRUNVVEVfR0FUSEVSOgotCQkJZXZlbnRfbmFtZSA9ICJFeGVj dXRlR2F0aGVyIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfSEFTSF9CQVRDSF9B TExPQ0FURToKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEJhdGNoQWxsb2NhdGUiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0JBVENIX0VMRUNUOgotCQkJZXZlbnRfbmFt ZSA9ICJIYXNoQmF0Y2hFbGVjdCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hB U0hfQkFUQ0hfTE9BRDoKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEJhdGNoTG9hZCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfQlVJTERfQUxMT0NBVEU6Ci0JCQlldmVu dF9uYW1lID0gIkhhc2hCdWlsZEFsbG9jYXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRf RVZFTlRfSEFTSF9CVUlMRF9FTEVDVDoKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEJ1aWxkRWxl Y3QiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0JVSUxEX0hBU0hfSU5O RVI6Ci0JCQlldmVudF9uYW1lID0gIkhhc2hCdWlsZEhhc2hJbm5lciI7Ci0JCQlicmVhazsK LQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfQlVJTERfSEFTSF9PVVRFUjoKLQkJCWV2ZW50X25h bWUgPSAiSGFzaEJ1aWxkSGFzaE91dGVyIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZF TlRfSEFTSF9HUk9XX0JBVENIRVNfREVDSURFOgotCQkJZXZlbnRfbmFtZSA9ICJIYXNoR3Jv d0JhdGNoZXNEZWNpZGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0dS T1dfQkFUQ0hFU19FTEVDVDoKLQkJCWV2ZW50X25hbWUgPSAiSGFzaEdyb3dCYXRjaGVzRWxl Y3QiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0dST1dfQkFUQ0hFU19G SU5JU0g6Ci0JCQlldmVudF9uYW1lID0gIkhhc2hHcm93QmF0Y2hlc0ZpbmlzaCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0hBU0hfR1JPV19CQVRDSEVTX1JFQUxMT0NBVEU6 Ci0JCQlldmVudF9uYW1lID0gIkhhc2hHcm93QmF0Y2hlc1JlYWxsb2NhdGUiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0dST1dfQkFUQ0hFU19SRVBBUlRJVElPTjoK LQkJCWV2ZW50X25hbWUgPSAiSGFzaEdyb3dCYXRjaGVzUmVwYXJ0aXRpb24iOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9IQVNIX0dST1dfQlVDS0VUU19FTEVDVDoKLQkJCWV2 ZW50X25hbWUgPSAiSGFzaEdyb3dCdWNrZXRzRWxlY3QiOwotCQkJYnJlYWs7Ci0JCWNhc2Ug V0FJVF9FVkVOVF9IQVNIX0dST1dfQlVDS0VUU19SRUFMTE9DQVRFOgotCQkJZXZlbnRfbmFt ZSA9ICJIYXNoR3Jvd0J1Y2tldHNSZWFsbG9jYXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfSEFTSF9HUk9XX0JVQ0tFVFNfUkVJTlNFUlQ6Ci0JCQlldmVudF9uYW1lID0g Ikhhc2hHcm93QnVja2V0c1JlaW5zZXJ0IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZF TlRfTE9HSUNBTF9BUFBMWV9TRU5EX0RBVEE6Ci0JCQlldmVudF9uYW1lID0gIkxvZ2ljYWxB cHBseVNlbmREYXRhIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9Q QVJBTExFTF9BUFBMWV9TVEFURV9DSEFOR0U6Ci0JCQlldmVudF9uYW1lID0gIkxvZ2ljYWxQ YXJhbGxlbEFwcGx5U3RhdGVDaGFuZ2UiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVO VF9MT0dJQ0FMX1NZTkNfREFUQToKLQkJCWV2ZW50X25hbWUgPSAiTG9naWNhbFN5bmNEYXRh IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9TWU5DX1NUQVRFX0NI QU5HRToKLQkJCWV2ZW50X25hbWUgPSAiTG9naWNhbFN5bmNTdGF0ZUNoYW5nZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX01RX0lOVEVSTkFMOgotCQkJZXZlbnRfbmFtZSA9 ICJNZXNzYWdlUXVldWVJbnRlcm5hbCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X01RX1BVVF9NRVNTQUdFOgotCQkJZXZlbnRfbmFtZSA9ICJNZXNzYWdlUXVldWVQdXRNZXNz YWdlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTVFfUkVDRUlWRToKLQkJCWV2 ZW50X25hbWUgPSAiTWVzc2FnZVF1ZXVlUmVjZWl2ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBX QUlUX0VWRU5UX01RX1NFTkQ6Ci0JCQlldmVudF9uYW1lID0gIk1lc3NhZ2VRdWV1ZVNlbmQi OwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9QQVJBTExFTF9CSVRNQVBfU0NBTjoK LQkJCWV2ZW50X25hbWUgPSAiUGFyYWxsZWxCaXRtYXBTY2FuIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfUEFSQUxMRUxfQ1JFQVRFX0lOREVYX1NDQU46Ci0JCQlldmVudF9u YW1lID0gIlBhcmFsbGVsQ3JlYXRlSW5kZXhTY2FuIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfUEFSQUxMRUxfRklOSVNIOgotCQkJZXZlbnRfbmFtZSA9ICJQYXJhbGxlbEZp bmlzaCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1BST0NBUlJBWV9HUk9VUF9V UERBVEU6Ci0JCQlldmVudF9uYW1lID0gIlByb2NBcnJheUdyb3VwVXBkYXRlIjsKLQkJCWJy ZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUFJPQ19TSUdOQUxfQkFSUklFUjoKLQkJCWV2ZW50 X25hbWUgPSAiUHJvY1NpZ25hbEJhcnJpZXIiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9F VkVOVF9QUk9NT1RFOgotCQkJZXZlbnRfbmFtZSA9ICJQcm9tb3RlIjsKLQkJCWJyZWFrOwot CQljYXNlIFdBSVRfRVZFTlRfUkVDT1ZFUllfQ09ORkxJQ1RfU05BUFNIT1Q6Ci0JCQlldmVu dF9uYW1lID0gIlJlY292ZXJ5Q29uZmxpY3RTbmFwc2hvdCI7Ci0JCQlicmVhazsKLQkJY2Fz ZSBXQUlUX0VWRU5UX1JFQ09WRVJZX0NPTkZMSUNUX1RBQkxFU1BBQ0U6Ci0JCQlldmVudF9u YW1lID0gIlJlY292ZXJ5Q29uZmxpY3RUYWJsZXNwYWNlIjsKLQkJCWJyZWFrOwotCQljYXNl IFdBSVRfRVZFTlRfUkVDT1ZFUllfRU5EX0NPTU1BTkQ6Ci0JCQlldmVudF9uYW1lID0gIlJl Y292ZXJ5RW5kQ29tbWFuZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFQ09W RVJZX1BBVVNFOgotCQkJZXZlbnRfbmFtZSA9ICJSZWNvdmVyeVBhdXNlIjsKLQkJCWJyZWFr OwotCQljYXNlIFdBSVRfRVZFTlRfUkVQTElDQVRJT05fT1JJR0lOX0RST1A6Ci0JCQlldmVu dF9uYW1lID0gIlJlcGxpY2F0aW9uT3JpZ2luRHJvcCI7Ci0JCQlicmVhazsKLQkJY2FzZSBX QUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfRFJPUDoKLQkJCWV2ZW50X25hbWUgPSAiUmVw bGljYXRpb25TbG90RHJvcCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFU1RP UkVfQ09NTUFORDoKLQkJCWV2ZW50X25hbWUgPSAiUmVzdG9yZUNvbW1hbmQiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9TQUZFX1NOQVBTSE9UOgotCQkJZXZlbnRfbmFtZSA9 ICJTYWZlU25hcHNob3QiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9TWU5DX1JF UDoKLQkJCWV2ZW50X25hbWUgPSAiU3luY1JlcCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlU X0VWRU5UX1dBTF9SRUNFSVZFUl9FWElUOgotCQkJZXZlbnRfbmFtZSA9ICJXYWxSZWNlaXZl ckV4aXQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxfUkVDRUlWRVJfV0FJ VF9TVEFSVDoKLQkJCWV2ZW50X25hbWUgPSAiV2FsUmVjZWl2ZXJXYWl0U3RhcnQiOwotCQkJ YnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9YQUNUX0dST1VQX1VQREFURToKLQkJCWV2ZW50 X25hbWUgPSAiWGFjdEdyb3VwVXBkYXRlIjsKLQkJCWJyZWFrOwotCQkJLyogbm8gZGVmYXVs dCBjYXNlLCBzbyB0aGF0IGNvbXBpbGVyIHdpbGwgd2FybiAqLwotCX0KLQotCXJldHVybiBl dmVudF9uYW1lOwotfQotCi0vKiAtLS0tLS0tLS0tCi0gKiBwZ3N0YXRfZ2V0X3dhaXRfdGlt ZW91dCgpIC0KLSAqCi0gKiBDb252ZXJ0IFdhaXRFdmVudFRpbWVvdXQgdG8gc3RyaW5nLgot ICogLS0tLS0tLS0tLQotICovCi1zdGF0aWMgY29uc3QgY2hhciAqCi1wZ3N0YXRfZ2V0X3dh aXRfdGltZW91dChXYWl0RXZlbnRUaW1lb3V0IHcpCi17Ci0JY29uc3QgY2hhciAqZXZlbnRf bmFtZSA9ICJ1bmtub3duIHdhaXQgZXZlbnQiOwotCi0Jc3dpdGNoICh3KQotCXsKLQkJY2Fz ZSBXQUlUX0VWRU5UX0JBU0VfQkFDS1VQX1RIUk9UVExFOgotCQkJZXZlbnRfbmFtZSA9ICJC YXNlQmFja3VwVGhyb3R0bGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9DSEVD S1BPSU5UX1dSSVRFX0RFTEFZOgotCQkJZXZlbnRfbmFtZSA9ICJDaGVja3BvaW50V3JpdGVE ZWxheSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1BHX1NMRUVQOgotCQkJZXZl bnRfbmFtZSA9ICJQZ1NsZWVwIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfUkVD T1ZFUllfQVBQTFlfREVMQVk6Ci0JCQlldmVudF9uYW1lID0gIlJlY292ZXJ5QXBwbHlEZWxh eSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFQ09WRVJZX1JFVFJJRVZFX1JF VFJZX0lOVEVSVkFMOgotCQkJZXZlbnRfbmFtZSA9ICJSZWNvdmVyeVJldHJpZXZlUmV0cnlJ bnRlcnZhbCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFR0lTVEVSX1NZTkNf UkVRVUVTVDoKLQkJCWV2ZW50X25hbWUgPSAiUmVnaXN0ZXJTeW5jUmVxdWVzdCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1NQSU5fREVMQVk6Ci0JCQlldmVudF9uYW1lID0g IlNwaW5EZWxheSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1ZBQ1VVTV9ERUxB WToKLQkJCWV2ZW50X25hbWUgPSAiVmFjdXVtRGVsYXkiOwotCQkJYnJlYWs7Ci0JCWNhc2Ug V0FJVF9FVkVOVF9WQUNVVU1fVFJVTkNBVEU6Ci0JCQlldmVudF9uYW1lID0gIlZhY3V1bVRy dW5jYXRlIjsKLQkJCWJyZWFrOwotCQkJLyogbm8gZGVmYXVsdCBjYXNlLCBzbyB0aGF0IGNv bXBpbGVyIHdpbGwgd2FybiAqLwotCX0KLQotCXJldHVybiBldmVudF9uYW1lOwotfQotCi0v KiAtLS0tLS0tLS0tCi0gKiBwZ3N0YXRfZ2V0X3dhaXRfaW8oKSAtCi0gKgotICogQ29udmVy dCBXYWl0RXZlbnRJTyB0byBzdHJpbmcuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXN0YXRpYyBj b25zdCBjaGFyICoKLXBnc3RhdF9nZXRfd2FpdF9pbyhXYWl0RXZlbnRJTyB3KQotewotCWNv bnN0IGNoYXIgKmV2ZW50X25hbWUgPSAidW5rbm93biB3YWl0IGV2ZW50IjsKLQotCXN3aXRj aCAodykKLQl7Ci0JCWNhc2UgV0FJVF9FVkVOVF9CQVNFQkFDS1VQX1JFQUQ6Ci0JCQlldmVu dF9uYW1lID0gIkJhc2VCYWNrdXBSZWFkIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZF TlRfQkFTRUJBQ0tVUF9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJCYXNlQmFja3VwU3luYyI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0JBU0VCQUNLVVBfV1JJVEU6Ci0JCQll dmVudF9uYW1lID0gIkJhc2VCYWNrdXBXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlU X0VWRU5UX0JVRkZJTEVfUkVBRDoKLQkJCWV2ZW50X25hbWUgPSAiQnVmRmlsZVJlYWQiOwot CQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9CVUZGSUxFX1dSSVRFOgotCQkJZXZlbnRf bmFtZSA9ICJCdWZGaWxlV3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9C VUZGSUxFX1RSVU5DQVRFOgotCQkJZXZlbnRfbmFtZSA9ICJCdWZGaWxlVHJ1bmNhdGUiOwot CQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9DT05UUk9MX0ZJTEVfUkVBRDoKLQkJCWV2 ZW50X25hbWUgPSAiQ29udHJvbEZpbGVSZWFkIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRf RVZFTlRfQ09OVFJPTF9GSUxFX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIkNvbnRyb2xGaWxl U3luYyI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9TWU5D X1VQREFURToKLQkJCWV2ZW50X25hbWUgPSAiQ29udHJvbEZpbGVTeW5jVXBkYXRlIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1dSSVRFOgotCQkJZXZl bnRfbmFtZSA9ICJDb250cm9sRmlsZVdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRf RVZFTlRfQ09OVFJPTF9GSUxFX1dSSVRFX1VQREFURToKLQkJCWV2ZW50X25hbWUgPSAiQ29u dHJvbEZpbGVXcml0ZVVwZGF0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0NP UFlfRklMRV9SRUFEOgotCQkJZXZlbnRfbmFtZSA9ICJDb3B5RmlsZVJlYWQiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9DT1BZX0ZJTEVfV1JJVEU6Ci0JCQlldmVudF9uYW1l ID0gIkNvcHlGaWxlV3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9EQVRB X0ZJTEVfRVhURU5EOgotCQkJZXZlbnRfbmFtZSA9ICJEYXRhRmlsZUV4dGVuZCI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0RBVEFfRklMRV9GTFVTSDoKLQkJCWV2ZW50X25h bWUgPSAiRGF0YUZpbGVGbHVzaCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0RB VEFfRklMRV9JTU1FRElBVEVfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiRGF0YUZpbGVJbW1l ZGlhdGVTeW5jIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfREFUQV9GSUxFX1BS RUZFVENIOgotCQkJZXZlbnRfbmFtZSA9ICJEYXRhRmlsZVByZWZldGNoIjsKLQkJCWJyZWFr OwotCQljYXNlIFdBSVRfRVZFTlRfREFUQV9GSUxFX1JFQUQ6Ci0JCQlldmVudF9uYW1lID0g IkRhdGFGaWxlUmVhZCI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0RBVEFfRklM RV9TWU5DOgotCQkJZXZlbnRfbmFtZSA9ICJEYXRhRmlsZVN5bmMiOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9EQVRBX0ZJTEVfVFJVTkNBVEU6Ci0JCQlldmVudF9uYW1lID0g IkRhdGFGaWxlVHJ1bmNhdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9EQVRB X0ZJTEVfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIkRhdGFGaWxlV3JpdGUiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9EU01fQUxMT0NBVEU6Ci0JCQlldmVudF9uYW1lID0g IkRTTUFsbG9jYXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfRFNNX0ZJTExf WkVST19XUklURToKLQkJCWV2ZW50X25hbWUgPSAiRFNNRmlsbFplcm9Xcml0ZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xPQ0tfRklMRV9BRERUT0RBVEFESVJfUkVBRDoK LQkJCWV2ZW50X25hbWUgPSAiTG9ja0ZpbGVBZGRUb0RhdGFEaXJSZWFkIjsKLQkJCWJyZWFr OwotCQljYXNlIFdBSVRfRVZFTlRfTE9DS19GSUxFX0FERFRPREFUQURJUl9TWU5DOgotCQkJ ZXZlbnRfbmFtZSA9ICJMb2NrRmlsZUFkZFRvRGF0YURpclN5bmMiOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQUREVE9EQVRBRElSX1dSSVRFOgotCQkJZXZl bnRfbmFtZSA9ICJMb2NrRmlsZUFkZFRvRGF0YURpcldyaXRlIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFURV9SRUFEOgotCQkJZXZlbnRfbmFtZSA9 ICJMb2NrRmlsZUNyZWF0ZVJlYWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9M T0NLX0ZJTEVfQ1JFQVRFX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIkxvY2tGaWxlQ3JlYXRl U3luYyI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xPQ0tfRklMRV9DUkVBVEVf V1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIkxvY2tGaWxlQ3JlYXRlV3JpdGUiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MT0NLX0ZJTEVfUkVDSEVDS0RBVEFESVJfUkVBRDoK LQkJCWV2ZW50X25hbWUgPSAiTG9ja0ZpbGVSZUNoZWNrRGF0YURpclJlYWQiOwotCQkJYnJl YWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9MT0dJQ0FMX1JFV1JJVEVfQ0hFQ0tQT0lOVF9TWU5D OgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsUmV3cml0ZUNoZWNrcG9pbnRTeW5jIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX01BUFBJTkdfU1lO QzoKLQkJCWV2ZW50X25hbWUgPSAiTG9naWNhbFJld3JpdGVNYXBwaW5nU3luYyI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9NQVBQSU5HX1dSSVRF OgotCQkJZXZlbnRfbmFtZSA9ICJMb2dpY2FsUmV3cml0ZU1hcHBpbmdXcml0ZSI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9TWU5DOgotCQkJZXZl bnRfbmFtZSA9ICJMb2dpY2FsUmV3cml0ZVN5bmMiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJ VF9FVkVOVF9MT0dJQ0FMX1JFV1JJVEVfVFJVTkNBVEU6Ci0JCQlldmVudF9uYW1lID0gIkxv Z2ljYWxSZXdyaXRlVHJ1bmNhdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9M T0dJQ0FMX1JFV1JJVEVfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIkxvZ2ljYWxSZXdyaXRl V3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRUxBVElPTl9NQVBfUkVB RDoKLQkJCWV2ZW50X25hbWUgPSAiUmVsYXRpb25NYXBSZWFkIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfUkVMQVRJT05fTUFQX1JFUExBQ0U6Ci0JCQlldmVudF9uYW1lID0g IlJlbGF0aW9uTWFwUmVwbGFjZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JF TEFUSU9OX01BUF9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiUmVsYXRpb25NYXBXcml0ZSI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFT1JERVJfQlVGRkVSX1JFQUQ6Ci0J CQlldmVudF9uYW1lID0gIlJlb3JkZXJCdWZmZXJSZWFkIjsKLQkJCWJyZWFrOwotCQljYXNl IFdBSVRfRVZFTlRfUkVPUkRFUl9CVUZGRVJfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIlJl b3JkZXJCdWZmZXJXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1JFT1JE RVJfTE9HSUNBTF9NQVBQSU5HX1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIlJlb3JkZXJMb2dp Y2FsTWFwcGluZ1JlYWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRVBMSUNB VElPTl9TTE9UX1JFQUQ6Ci0JCQlldmVudF9uYW1lID0gIlJlcGxpY2F0aW9uU2xvdFJlYWQi OwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1JFU1RP UkVfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiUmVwbGljYXRpb25TbG90UmVzdG9yZVN5bmMi OwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1NZTkM6 Ci0JCQlldmVudF9uYW1lID0gIlJlcGxpY2F0aW9uU2xvdFN5bmMiOwotCQkJYnJlYWs7Ci0J CWNhc2UgV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1dSSVRFOgotCQkJZXZlbnRfbmFt ZSA9ICJSZXBsaWNhdGlvblNsb3RXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VW RU5UX1NMUlVfRkxVU0hfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiU0xSVUZsdXNoU3luYyI7 Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1NMUlVfUkVBRDoKLQkJCWV2ZW50X25h bWUgPSAiU0xSVVJlYWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9TTFJVX1NZ TkM6Ci0JCQlldmVudF9uYW1lID0gIlNMUlVTeW5jIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfU0xSVV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiU0xSVVdyaXRlIjsKLQkJ CWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfU05BUEJVSUxEX1JFQUQ6Ci0JCQlldmVudF9u YW1lID0gIlNuYXBidWlsZFJlYWQiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9T TkFQQlVJTERfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiU25hcGJ1aWxkU3luYyI7Ci0JCQli cmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1NOQVBCVUlMRF9XUklURToKLQkJCWV2ZW50X25h bWUgPSAiU25hcGJ1aWxkV3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9U SU1FTElORV9ISVNUT1JZX0ZJTEVfU1lOQzoKLQkJCWV2ZW50X25hbWUgPSAiVGltZWxpbmVI aXN0b3J5RmlsZVN5bmMiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9USU1FTElO RV9ISVNUT1JZX0ZJTEVfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIlRpbWVsaW5lSGlzdG9y eUZpbGVXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1RJTUVMSU5FX0hJ U1RPUllfUkVBRDoKLQkJCWV2ZW50X25hbWUgPSAiVGltZWxpbmVIaXN0b3J5UmVhZCI7Ci0J CQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5UX1RJTUVMSU5FX0hJU1RPUllfU1lOQzoKLQkJ CWV2ZW50X25hbWUgPSAiVGltZWxpbmVIaXN0b3J5U3luYyI7Ci0JCQlicmVhazsKLQkJY2Fz ZSBXQUlUX0VWRU5UX1RJTUVMSU5FX0hJU1RPUllfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0g IlRpbWVsaW5lSGlzdG9yeVdyaXRlIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRf VFdPUEhBU0VfRklMRV9SRUFEOgotCQkJZXZlbnRfbmFtZSA9ICJUd29waGFzZUZpbGVSZWFk IjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfVFdPUEhBU0VfRklMRV9TWU5DOgot CQkJZXZlbnRfbmFtZSA9ICJUd29waGFzZUZpbGVTeW5jIjsKLQkJCWJyZWFrOwotCQljYXNl IFdBSVRfRVZFTlRfVFdPUEhBU0VfRklMRV9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiVHdv cGhhc2VGaWxlV3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9WRVJTSU9O X0ZJTEVfV1JJVEU6Ci0JCQlldmVudF9uYW1lID0gIlZlcnNpb25GaWxlV3JpdGUiOwotCQkJ YnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxTRU5ERVJfVElNRUxJTkVfSElTVE9SWV9S RUFEOgotCQkJZXZlbnRfbmFtZSA9ICJXQUxTZW5kZXJUaW1lbGluZUhpc3RvcnlSZWFkIjsK LQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfV0FMX0JPT1RTVFJBUF9TWU5DOgotCQkJ ZXZlbnRfbmFtZSA9ICJXQUxCb290c3RyYXBTeW5jIjsKLQkJCWJyZWFrOwotCQljYXNlIFdB SVRfRVZFTlRfV0FMX0JPT1RTVFJBUF9XUklURToKLQkJCWV2ZW50X25hbWUgPSAiV0FMQm9v dHN0cmFwV3JpdGUiOwotCQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxfQ09QWV9S RUFEOgotCQkJZXZlbnRfbmFtZSA9ICJXQUxDb3B5UmVhZCI7Ci0JCQlicmVhazsKLQkJY2Fz ZSBXQUlUX0VWRU5UX1dBTF9DT1BZX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIldBTENvcHlT eW5jIjsKLQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfV0FMX0NPUFlfV1JJVEU6Ci0J CQlldmVudF9uYW1lID0gIldBTENvcHlXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlU X0VWRU5UX1dBTF9JTklUX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIldBTEluaXRTeW5jIjsK LQkJCWJyZWFrOwotCQljYXNlIFdBSVRfRVZFTlRfV0FMX0lOSVRfV1JJVEU6Ci0JCQlldmVu dF9uYW1lID0gIldBTEluaXRXcml0ZSI7Ci0JCQlicmVhazsKLQkJY2FzZSBXQUlUX0VWRU5U X1dBTF9SRUFEOgotCQkJZXZlbnRfbmFtZSA9ICJXQUxSZWFkIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfV0FMX1NZTkM6Ci0JCQlldmVudF9uYW1lID0gIldBTFN5bmMiOwot CQkJYnJlYWs7Ci0JCWNhc2UgV0FJVF9FVkVOVF9XQUxfU1lOQ19NRVRIT0RfQVNTSUdOOgot CQkJZXZlbnRfbmFtZSA9ICJXQUxTeW5jTWV0aG9kQXNzaWduIjsKLQkJCWJyZWFrOwotCQlj YXNlIFdBSVRfRVZFTlRfV0FMX1dSSVRFOgotCQkJZXZlbnRfbmFtZSA9ICJXQUxXcml0ZSI7 Ci0JCQlicmVhazsKLQotCQkJLyogbm8gZGVmYXVsdCBjYXNlLCBzbyB0aGF0IGNvbXBpbGVy IHdpbGwgd2FybiAqLwotCX0KLQotCXJldHVybiBldmVudF9uYW1lOwotfQorI2luY2x1ZGUg InBnc3RhdF93YWl0X2V2ZW50LmMiCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9h Y3Rpdml0eS93YWl0ZXZlbnRuYW1lcy50eHQgYi9zcmMvYmFja2VuZC91dGlscy9hY3Rpdml0 eS93YWl0ZXZlbnRuYW1lcy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMC4uN2NhYjllNTA2ZQotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxz L2FjdGl2aXR5L3dhaXRldmVudG5hbWVzLnR4dApAQCAtMCwwICsxLDI0NSBAQAorIworIyB3 YWl0ZXZlbnRuYW1lcy50eHQKKyMgICAgICBQb3N0Z3JlU1FMIHdhaXQgZXZlbnRzCisjCisj IENvcHlyaWdodCAoYykgMjAyMywgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQgR3Jv dXAKKyMKKyMgVGhpcyBsaXN0IHNlcnZlcyBhcyB0aGUgYmFzaXMgZm9yIGdlbmVyYXRpbmcg c291cmNlIGZpbGVzIHJlbGF0ZWQgdG8gd2FpdAorIyBldmVudHMuCisjCisjIFRoZSBmaWxl cyBnZW5lcmF0ZWQgZnJvbSB0aGlzIG9uZSBhcmU6CisjCisjICAgc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvd2FpdF9ldmVudF90eXBlcy5oCisjICAgICAgdHlwZWRlZiBlbnVtIGRl ZmluaXRpb25zIGZvciB3YWl0IGV2ZW50cworIworIyAgIHNyYy9iYWNrZW5kL3V0aWxzL2Fj dGl2aXR5L3Bnc3RhdF93YWl0X2V2ZW50LmMKKyMgICAgICBDIGZ1bmN0aW9ucyB0byBnZXQg dGhlIHdhaXQgZXZlbnQgbmFtZSBiYXNlZCBvbiB0aGUgZW51bQorIworIyAgIHNyYy9iYWNr ZW5kL3V0aWxzL2FjdGl2aXR5L3dhaXRldmVudG5hbWVzLnNnbWwKKyMgICAgICBTR01MIHRh YmxlcyBvZiB3YWl0IGV2ZW50cyBmb3IgaW5jbHVzaW9uIGluIHRoZSBkb2N1bWVudGF0aW9u CisjCisjIFRoZSBmb3JtYXQgb2YgdGhpcyBmaWxlIGlzIG9uZSB3YWl0IGV2ZW50IHBlciBs aW5lLCB3aXRoIHRoZSB0aHJlZSBmb2xsb3dpbmcKKyMgdGFiLXNlcGFyYXRlZCBmaWVsZHM6 CisjCisjICAgICAgIkMgc3ltYm9sIGluIGVudW1zIiAiZm9ybWF0IGluIHRoZSBzeXN0ZW0g dmlld3MiICJkZXNjcmlwdGlvbiBpbiB0aGUgZG9jcyIKKyMKKyMgV2hlbiBhZGRpbmcgYSBu ZXcgd2FpdCBldmVudCwgbWFrZSBzdXJlIGl0IGlzIHBsYWNlZCBpbiB0aGUgYXBwcm9wcmlh dGUKKyMgc2VjdGlvbi4KKyMKKyMgVGhlIGxpbmVzIHRoYXQgc3RhcnQgd2l0aCAvKiBvciAi ICoiIGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzIHRoYXQgd2lsbCBiZQorIyBwdXQgaW4gdGhl IHdhaXRfZXZlbnRfdHlwZXMuaCBmaWxlIGJhc2VkIG9uIHRoZWlyIGFzc29jaWF0ZWQgc2Vj dGlvbnMuCisjCisjIFRoaXMgZmlsZSBpcyB1c2VkIGFzIGlucHV0IGJ5IHNyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L2dlbmVyYXRlLXdhaXRldmVudG5hbWVzLnBsCisjCisKK1NlY3Rp b246IENsYXNzTmFtZSAtIFdhaXRFdmVudEFjdGl2aXR5CisKKy8qIC0tLS0tLS0tLS0KKyAq IFdhaXQgRXZlbnRzIC0gQWN0aXZpdHkKKyAqCisgKiBVc2UgdGhpcyBjYXRlZ29yeSB3aGVu IGEgcHJvY2VzcyBpcyB3YWl0aW5nIGJlY2F1c2UgaXQgaGFzIG5vIHdvcmsgdG8gZG8sCisg KiB1bmxlc3MgdGhlICJDbGllbnQiIG9yICJUaW1lb3V0IiBjYXRlZ29yeSBkZXNjcmliZXMg dGhlIHNpdHVhdGlvbiBiZXR0ZXIuCisgKiBUeXBpY2FsbHksIHRoaXMgc2hvdWxkIG9ubHkg YmUgdXNlZCBmb3IgYmFja2dyb3VuZCBwcm9jZXNzZXMuCisgKiAtLS0tLS0tLS0tCisgKi8K KworV0FJVF9FVkVOVF9BUkNISVZFUl9NQUlOCSJBcmNoaXZlck1haW4iCSJXYWl0aW5nIGlu IG1haW4gbG9vcCBvZiBhcmNoaXZlciBwcm9jZXNzLiIKK1dBSVRfRVZFTlRfQVVUT1ZBQ1VV TV9NQUlOCSJBdXRvVmFjdXVtTWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIGF1dG92 YWN1dW0gbGF1bmNoZXIgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX0JHV1JJVEVSX0hJQkVSTkFU RQkiQmdXcml0ZXJIaWJlcm5hdGUiCSJXYWl0aW5nIGluIGJhY2tncm91bmQgd3JpdGVyIHBy b2Nlc3MsIGhpYmVybmF0aW5nLiIKK1dBSVRfRVZFTlRfQkdXUklURVJfTUFJTgkiQmdXcml0 ZXJNYWluIgkiV2FpdGluZyBpbiBtYWluIGxvb3Agb2YgYmFja2dyb3VuZCB3cml0ZXIgcHJv Y2Vzcy4iCitXQUlUX0VWRU5UX0NIRUNLUE9JTlRFUl9NQUlOCSJDaGVja3BvaW50ZXJNYWlu IgkiV2FpdGluZyBpbiBtYWluIGxvb3Agb2YgY2hlY2twb2ludGVyIHByb2Nlc3MuIgorV0FJ VF9FVkVOVF9MT0dJQ0FMX0FQUExZX01BSU4JIkxvZ2ljYWxBcHBseU1haW4iCSJXYWl0aW5n IGluIG1haW4gbG9vcCBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uIGFwcGx5IHByb2Nlc3MuIgor V0FJVF9FVkVOVF9MT0dJQ0FMX0xBVU5DSEVSX01BSU4JIkxvZ2ljYWxMYXVuY2hlck1haW4i CSJXYWl0aW5nIGluIG1haW4gbG9vcCBvZiBsb2dpY2FsIHJlcGxpY2F0aW9uIGxhdW5jaGVy IHByb2Nlc3MuIgorV0FJVF9FVkVOVF9MT0dJQ0FMX1BBUkFMTEVMX0FQUExZX01BSU4JIkxv Z2ljYWxQYXJhbGxlbEFwcGx5TWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIGxvZ2lj YWwgcmVwbGljYXRpb24gcGFyYWxsZWwgYXBwbHkgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX1JF Q09WRVJZX1dBTF9TVFJFQU0JIlJlY292ZXJ5V2FsU3RyZWFtIgkiV2FpdGluZyBpbiBtYWlu IGxvb3Agb2Ygc3RhcnR1cCBwcm9jZXNzIGZvciBXQUwgdG8gYXJyaXZlLCBkdXJpbmcgc3Ry ZWFtaW5nIHJlY292ZXJ5LiIKK1dBSVRfRVZFTlRfU1lTTE9HR0VSX01BSU4JIlN5c0xvZ2dl ck1haW4iCSJXYWl0aW5nIGluIG1haW4gbG9vcCBvZiBzeXNsb2dnZXIgcHJvY2Vzcy4iCitX QUlUX0VWRU5UX1dBTF9SRUNFSVZFUl9NQUlOCSJXYWxSZWNlaXZlck1haW4iCSJXYWl0aW5n IGluIG1haW4gbG9vcCBvZiBXQUwgcmVjZWl2ZXIgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX1dB TF9TRU5ERVJfTUFJTgkiV2FsU2VuZGVyTWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9m IFdBTCBzZW5kZXIgcHJvY2Vzcy4iCitXQUlUX0VWRU5UX1dBTF9XUklURVJfTUFJTgkiV2Fs V3JpdGVyTWFpbiIJIldhaXRpbmcgaW4gbWFpbiBsb29wIG9mIFdBTCB3cml0ZXIgcHJvY2Vz cy4iCisKK1NlY3Rpb246IENsYXNzTmFtZSAtIFdhaXRFdmVudENsaWVudAorCisvKiAtLS0t LS0tLS0tCisgKiBXYWl0IEV2ZW50cyAtIENsaWVudAorICoKKyAqIFVzZSB0aGlzIGNhdGVn b3J5IHdoZW4gYSBwcm9jZXNzIGlzIHdhaXRpbmcgdG8gc2VuZCBkYXRhIHRvIG9yIHJlY2Vp dmUgZGF0YQorICogZnJvbSB0aGUgZnJvbnRlbmQgcHJvY2VzcyB0byB3aGljaCBpdCBpcyBj b25uZWN0ZWQuICBUaGlzIGlzIG5ldmVyIHVzZWQgZm9yCisgKiBhIGJhY2tncm91bmQgcHJv Y2Vzcywgd2hpY2ggaGFzIG5vIGNsaWVudCBjb25uZWN0aW9uLgorICogLS0tLS0tLS0tLQor ICovCisKK1dBSVRfRVZFTlRfQ0xJRU5UX1JFQUQJIkNsaWVudFJlYWQiCSJXYWl0aW5nIHRv IHJlYWQgZGF0YSBmcm9tIHRoZSBjbGllbnQuIgorV0FJVF9FVkVOVF9DTElFTlRfV1JJVEUJ IkNsaWVudFdyaXRlIgkiV2FpdGluZyB0byB3cml0ZSBkYXRhIHRvIHRoZSBjbGllbnQuIgor V0FJVF9FVkVOVF9HU1NfT1BFTl9TRVJWRVIJIkdTU09wZW5TZXJ2ZXIiCSJXYWl0aW5nIHRv IHJlYWQgZGF0YSBmcm9tIHRoZSBjbGllbnQgd2hpbGUgZXN0YWJsaXNoaW5nIGEgR1NTQVBJ IHNlc3Npb24uIgorV0FJVF9FVkVOVF9MSUJQUVdBTFJFQ0VJVkVSX0NPTk5FQ1QJIkxpYlBR V2FsUmVjZWl2ZXJDb25uZWN0IgkiV2FpdGluZyBpbiBXQUwgcmVjZWl2ZXIgdG8gZXN0YWJs aXNoIGNvbm5lY3Rpb24gdG8gcmVtb3RlIHNlcnZlci4iCitXQUlUX0VWRU5UX0xJQlBRV0FM UkVDRUlWRVJfUkVDRUlWRQkiTGliUFFXYWxSZWNlaXZlclJlY2VpdmUiCSJXYWl0aW5nIGlu IFdBTCByZWNlaXZlciB0byByZWNlaXZlIGRhdGEgZnJvbSByZW1vdGUgc2VydmVyLiIKK1dB SVRfRVZFTlRfU1NMX09QRU5fU0VSVkVSCSJTU0xPcGVuU2VydmVyIgkiV2FpdGluZyBmb3Ig U1NMIHdoaWxlIGF0dGVtcHRpbmcgY29ubmVjdGlvbi4iCitXQUlUX0VWRU5UX1dBTF9TRU5E RVJfV0FJVF9XQUwJIldhbFNlbmRlcldhaXRGb3JXQUwiCSJXYWl0aW5nIGZvciBXQUwgdG8g YmUgZmx1c2hlZCBpbiBXQUwgc2VuZGVyIHByb2Nlc3MuIgorV0FJVF9FVkVOVF9XQUxfU0VO REVSX1dSSVRFX0RBVEEJIldhbFNlbmRlcldyaXRlRGF0YSIJIldhaXRpbmcgZm9yIGFueSBh Y3Rpdml0eSB3aGVuIHByb2Nlc3NpbmcgcmVwbGllcyBmcm9tIFdBTCByZWNlaXZlciBpbiBX QUwgc2VuZGVyIHByb2Nlc3MuIgorCitTZWN0aW9uOiBDbGFzc05hbWUgLSBXYWl0RXZlbnRJ UEMKKworLyogLS0tLS0tLS0tLQorICogV2FpdCBFdmVudHMgLSBJUEMKKyAqCisgKiBVc2Ug dGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJvY2VzcyBjYW5ub3QgY29tcGxldGUgdGhlIHdvcmsg aXQgaXMgZG9pbmcgYmVjYXVzZQorICogaXQgaXMgd2FpdGluZyBmb3IgYSBub3RpZmljYXRp b24gZnJvbSBhbm90aGVyIHByb2Nlc3MuCisgKiAtLS0tLS0tLS0tCisgKi8KKworV0FJVF9F VkVOVF9BUFBFTkRfUkVBRFkJIkFwcGVuZFJlYWR5IgkiV2FpdGluZyBmb3Igc3VicGxhbiBu b2RlcyBvZiBhbiA8bGl0ZXJhbD5BcHBlbmQ8L2xpdGVyYWw+IHBsYW4gbm9kZSB0byBiZSBy ZWFkeS4iCitXQUlUX0VWRU5UX0FSQ0hJVkVfQ0xFQU5VUF9DT01NQU5ECSJBcmNoaXZlQ2xl YW51cENvbW1hbmQiCSJXYWl0aW5nIGZvciA8eHJlZiBsaW5rZW5kPSJndWMtYXJjaGl2ZS1j bGVhbnVwLWNvbW1hbmQiLz4gdG8gY29tcGxldGUuIgorV0FJVF9FVkVOVF9BUkNISVZFX0NP TU1BTkQJIkFyY2hpdmVDb21tYW5kIgkiV2FpdGluZyBmb3IgPHhyZWYgbGlua2VuZD0iZ3Vj LWFyY2hpdmUtY29tbWFuZCIvPiB0byBjb21wbGV0ZS4iCitXQUlUX0VWRU5UX0JBQ0tFTkRf VEVSTUlOQVRJT04JIkJhY2tlbmRUZXJtaW5hdGlvbiIJIldhaXRpbmcgZm9yIHRoZSB0ZXJt aW5hdGlvbiBvZiBhbm90aGVyIGJhY2tlbmQuIgorV0FJVF9FVkVOVF9CQUNLVVBfV0FJVF9X QUxfQVJDSElWRQkiQmFja3VwV2FpdFdhbEFyY2hpdmUiCSJXYWl0aW5nIGZvciBXQUwgZmls ZXMgcmVxdWlyZWQgZm9yIGEgYmFja3VwIHRvIGJlIHN1Y2Nlc3NmdWxseSBhcmNoaXZlZC4i CitXQUlUX0VWRU5UX0JHV09SS0VSX1NIVVRET1dOCSJCZ1dvcmtlclNodXRkb3duIgkiV2Fp dGluZyBmb3IgYmFja2dyb3VuZCB3b3JrZXIgdG8gc2h1dCBkb3duLiIKK1dBSVRfRVZFTlRf QkdXT1JLRVJfU1RBUlRVUAkiQmdXb3JrZXJTdGFydHVwIgkiV2FpdGluZyBmb3IgYmFja2dy b3VuZCB3b3JrZXIgdG8gc3RhcnQgdXAuIgorV0FJVF9FVkVOVF9CVFJFRV9QQUdFCSJCdHJl ZVBhZ2UiCSJXYWl0aW5nIGZvciB0aGUgcGFnZSBudW1iZXIgbmVlZGVkIHRvIGNvbnRpbnVl IGEgcGFyYWxsZWwgQi10cmVlIHNjYW4gdG8gYmVjb21lIGF2YWlsYWJsZS4iCitXQUlUX0VW RU5UX0JVRkZFUl9JTwkiQnVmZmVySU8iCSJXYWl0aW5nIGZvciBidWZmZXIgSS9PIHRvIGNv bXBsZXRlLiIKK1dBSVRfRVZFTlRfQ0hFQ0tQT0lOVF9ET05FCSJDaGVja3BvaW50RG9uZSIJ IldhaXRpbmcgZm9yIGEgY2hlY2twb2ludCB0byBjb21wbGV0ZS4iCitXQUlUX0VWRU5UX0NI RUNLUE9JTlRfU1RBUlQJIkNoZWNrcG9pbnRTdGFydCIJIldhaXRpbmcgZm9yIGEgY2hlY2tw b2ludCB0byBzdGFydC4iCitXQUlUX0VWRU5UX0VYRUNVVEVfR0FUSEVSCSJFeGVjdXRlR2F0 aGVyIgkiV2FpdGluZyBmb3IgYWN0aXZpdHkgZnJvbSBhIGNoaWxkIHByb2Nlc3Mgd2hpbGUg ZXhlY3V0aW5nIGEgPGxpdGVyYWw+R2F0aGVyPC9saXRlcmFsPiBwbGFuIG5vZGUuIgorV0FJ VF9FVkVOVF9IQVNIX0JBVENIX0FMTE9DQVRFCSJIYXNoQmF0Y2hBbGxvY2F0ZSIJIldhaXRp bmcgZm9yIGFuIGVsZWN0ZWQgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudCB0byBhbGxvY2F0 ZSBhIGhhc2ggdGFibGUuIgorV0FJVF9FVkVOVF9IQVNIX0JBVENIX0VMRUNUCSJIYXNoQmF0 Y2hFbGVjdCIJIldhaXRpbmcgdG8gZWxlY3QgYSBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50 IHRvIGFsbG9jYXRlIGEgaGFzaCB0YWJsZS4iCitXQUlUX0VWRU5UX0hBU0hfQkFUQ0hfTE9B RAkiSGFzaEJhdGNoTG9hZCIJIldhaXRpbmcgZm9yIG90aGVyIFBhcmFsbGVsIEhhc2ggcGFy dGljaXBhbnRzIHRvIGZpbmlzaCBsb2FkaW5nIGEgaGFzaCB0YWJsZS4iCitXQUlUX0VWRU5U X0hBU0hfQlVJTERfQUxMT0NBVEUJIkhhc2hCdWlsZEFsbG9jYXRlIgkiV2FpdGluZyBmb3Ig YW4gZWxlY3RlZCBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50IHRvIGFsbG9jYXRlIHRoZSBp bml0aWFsIGhhc2ggdGFibGUuIgorV0FJVF9FVkVOVF9IQVNIX0JVSUxEX0VMRUNUCSJIYXNo QnVpbGRFbGVjdCIJIldhaXRpbmcgdG8gZWxlY3QgYSBQYXJhbGxlbCBIYXNoIHBhcnRpY2lw YW50IHRvIGFsbG9jYXRlIHRoZSBpbml0aWFsIGhhc2ggdGFibGUuIgorV0FJVF9FVkVOVF9I QVNIX0JVSUxEX0hBU0hfSU5ORVIJIkhhc2hCdWlsZEhhc2hJbm5lciIJIldhaXRpbmcgZm9y IG90aGVyIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnRzIHRvIGZpbmlzaCBoYXNoaW5nIHRo ZSBpbm5lciByZWxhdGlvbi4iCitXQUlUX0VWRU5UX0hBU0hfQlVJTERfSEFTSF9PVVRFUgki SGFzaEJ1aWxkSGFzaE91dGVyIgkiV2FpdGluZyBmb3Igb3RoZXIgUGFyYWxsZWwgSGFzaCBw YXJ0aWNpcGFudHMgdG8gZmluaXNoIHBhcnRpdGlvbmluZyB0aGUgb3V0ZXIgcmVsYXRpb24u IgorV0FJVF9FVkVOVF9IQVNIX0dST1dfQkFUQ0hFU19ERUNJREUJIkhhc2hHcm93QmF0Y2hl c0RlY2lkZSIJIldhaXRpbmcgdG8gZWxlY3QgYSBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50 IHRvIGRlY2lkZSBvbiBmdXR1cmUgYmF0Y2ggZ3Jvd3RoLiIKK1dBSVRfRVZFTlRfSEFTSF9H Uk9XX0JBVENIRVNfRUxFQ1QJIkhhc2hHcm93QmF0Y2hlc0VsZWN0IgkiV2FpdGluZyB0byBl bGVjdCBhIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnQgdG8gYWxsb2NhdGUgbW9yZSBiYXRj aGVzLiIKK1dBSVRfRVZFTlRfSEFTSF9HUk9XX0JBVENIRVNfRklOSVNICSJIYXNoR3Jvd0Jh dGNoZXNGaW5pc2giCSJXYWl0aW5nIGZvciBhbiBlbGVjdGVkIFBhcmFsbGVsIEhhc2ggcGFy dGljaXBhbnQgdG8gZGVjaWRlIG9uIGZ1dHVyZSBiYXRjaCBncm93dGguIgorV0FJVF9FVkVO VF9IQVNIX0dST1dfQkFUQ0hFU19SRUFMTE9DQVRFCSJIYXNoR3Jvd0JhdGNoZXNSZWFsbG9j YXRlIgkiV2FpdGluZyBmb3IgYW4gZWxlY3RlZCBQYXJhbGxlbCBIYXNoIHBhcnRpY2lwYW50 IHRvIGFsbG9jYXRlIG1vcmUgYmF0Y2hlcy4iCitXQUlUX0VWRU5UX0hBU0hfR1JPV19CQVRD SEVTX1JFUEFSVElUSU9OCSJIYXNoR3Jvd0JhdGNoZXNSZXBhcnRpdGlvbiIJIldhaXRpbmcg Zm9yIG90aGVyIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnRzIHRvIGZpbmlzaCByZXBhcnRp dGlvbmluZy4iCitXQUlUX0VWRU5UX0hBU0hfR1JPV19CVUNLRVRTX0VMRUNUCSJIYXNoR3Jv d0J1Y2tldHNFbGVjdCIJIldhaXRpbmcgdG8gZWxlY3QgYSBQYXJhbGxlbCBIYXNoIHBhcnRp Y2lwYW50IHRvIGFsbG9jYXRlIG1vcmUgYnVja2V0cy4iCitXQUlUX0VWRU5UX0hBU0hfR1JP V19CVUNLRVRTX1JFQUxMT0NBVEUJIkhhc2hHcm93QnVja2V0c1JlYWxsb2NhdGUiCSJXYWl0 aW5nIGZvciBhbiBlbGVjdGVkIFBhcmFsbGVsIEhhc2ggcGFydGljaXBhbnQgdG8gZmluaXNo IGFsbG9jYXRpbmcgbW9yZSBidWNrZXRzLiIKK1dBSVRfRVZFTlRfSEFTSF9HUk9XX0JVQ0tF VFNfUkVJTlNFUlQJIkhhc2hHcm93QnVja2V0c1JlaW5zZXJ0IgkiV2FpdGluZyBmb3Igb3Ro ZXIgUGFyYWxsZWwgSGFzaCBwYXJ0aWNpcGFudHMgdG8gZmluaXNoIGluc2VydGluZyB0dXBs ZXMgaW50byBuZXcgYnVja2V0cy4iCitXQUlUX0VWRU5UX0xPR0lDQUxfQVBQTFlfU0VORF9E QVRBCSJMb2dpY2FsQXBwbHlTZW5kRGF0YSIJIldhaXRpbmcgZm9yIGEgbG9naWNhbCByZXBs aWNhdGlvbiBsZWFkZXIgYXBwbHkgcHJvY2VzcyB0byBzZW5kIGRhdGEgdG8gYSBwYXJhbGxl bCBhcHBseSBwcm9jZXNzLiIKK1dBSVRfRVZFTlRfTE9HSUNBTF9QQVJBTExFTF9BUFBMWV9T VEFURV9DSEFOR0UJIkxvZ2ljYWxQYXJhbGxlbEFwcGx5U3RhdGVDaGFuZ2UiCSJXYWl0aW5n IGZvciBhIGxvZ2ljYWwgcmVwbGljYXRpb24gcGFyYWxsZWwgYXBwbHkgcHJvY2VzcyB0byBj aGFuZ2Ugc3RhdGUuIgorV0FJVF9FVkVOVF9MT0dJQ0FMX1NZTkNfREFUQQkiTG9naWNhbFN5 bmNEYXRhIgkiV2FpdGluZyBmb3IgYSBsb2dpY2FsIHJlcGxpY2F0aW9uIHJlbW90ZSBzZXJ2 ZXIgdG8gc2VuZCBkYXRhIGZvciBpbml0aWFsIHRhYmxlIHN5bmNocm9uaXphdGlvbi4iCitX QUlUX0VWRU5UX0xPR0lDQUxfU1lOQ19TVEFURV9DSEFOR0UJIkxvZ2ljYWxTeW5jU3RhdGVD aGFuZ2UiCSJXYWl0aW5nIGZvciBhIGxvZ2ljYWwgcmVwbGljYXRpb24gcmVtb3RlIHNlcnZl ciB0byBjaGFuZ2Ugc3RhdGUuIgorV0FJVF9FVkVOVF9NUV9JTlRFUk5BTAkiTWVzc2FnZVF1 ZXVlSW50ZXJuYWwiCSJXYWl0aW5nIGZvciBhbm90aGVyIHByb2Nlc3MgdG8gYmUgYXR0YWNo ZWQgdG8gYSBzaGFyZWQgbWVzc2FnZSBxdWV1ZS4iCitXQUlUX0VWRU5UX01RX1BVVF9NRVNT QUdFCSJNZXNzYWdlUXVldWVQdXRNZXNzYWdlIgkiV2FpdGluZyB0byB3cml0ZSBhIHByb3Rv Y29sIG1lc3NhZ2UgdG8gYSBzaGFyZWQgbWVzc2FnZSBxdWV1ZS4iCitXQUlUX0VWRU5UX01R X1JFQ0VJVkUJIk1lc3NhZ2VRdWV1ZVJlY2VpdmUiCSJXYWl0aW5nIHRvIHJlY2VpdmUgYnl0 ZXMgZnJvbSBhIHNoYXJlZCBtZXNzYWdlIHF1ZXVlLiIKK1dBSVRfRVZFTlRfTVFfU0VORAki TWVzc2FnZVF1ZXVlU2VuZCIJIldhaXRpbmcgdG8gc2VuZCBieXRlcyB0byBhIHNoYXJlZCBt ZXNzYWdlIHF1ZXVlLiIKK1dBSVRfRVZFTlRfUEFSQUxMRUxfQklUTUFQX1NDQU4JIlBhcmFs bGVsQml0bWFwU2NhbiIJIldhaXRpbmcgZm9yIHBhcmFsbGVsIGJpdG1hcCBzY2FuIHRvIGJl Y29tZSBpbml0aWFsaXplZC4iCitXQUlUX0VWRU5UX1BBUkFMTEVMX0NSRUFURV9JTkRFWF9T Q0FOCSJQYXJhbGxlbENyZWF0ZUluZGV4U2NhbiIJIldhaXRpbmcgZm9yIHBhcmFsbGVsIDxj b21tYW5kPkNSRUFURSBJTkRFWDwvY29tbWFuZD4gd29ya2VycyB0byBmaW5pc2ggaGVhcCBz Y2FuLiIKK1dBSVRfRVZFTlRfUEFSQUxMRUxfRklOSVNICSJQYXJhbGxlbEZpbmlzaCIJIldh aXRpbmcgZm9yIHBhcmFsbGVsIHdvcmtlcnMgdG8gZmluaXNoIGNvbXB1dGluZy4iCitXQUlU X0VWRU5UX1BST0NBUlJBWV9HUk9VUF9VUERBVEUJIlByb2NBcnJheUdyb3VwVXBkYXRlIgki V2FpdGluZyBmb3IgdGhlIGdyb3VwIGxlYWRlciB0byBjbGVhciB0aGUgdHJhbnNhY3Rpb24g SUQgYXQgZW5kIG9mIGEgcGFyYWxsZWwgb3BlcmF0aW9uLiIKK1dBSVRfRVZFTlRfUFJPQ19T SUdOQUxfQkFSUklFUgkiUHJvY1NpZ25hbEJhcnJpZXIiCSJXYWl0aW5nIGZvciBhIGJhcnJp ZXIgZXZlbnQgdG8gYmUgcHJvY2Vzc2VkIGJ5IGFsbCBiYWNrZW5kcy4iCitXQUlUX0VWRU5U X1BST01PVEUJIlByb21vdGUiCSJXYWl0aW5nIGZvciBzdGFuZGJ5IHByb21vdGlvbi4iCitX QUlUX0VWRU5UX1JFQ09WRVJZX0NPTkZMSUNUX1NOQVBTSE9UCSJSZWNvdmVyeUNvbmZsaWN0 U25hcHNob3QiCSJXYWl0aW5nIGZvciByZWNvdmVyeSBjb25mbGljdCByZXNvbHV0aW9uIGZv ciBhIHZhY3V1bSBjbGVhbnVwLiIKK1dBSVRfRVZFTlRfUkVDT1ZFUllfQ09ORkxJQ1RfVEFC TEVTUEFDRQkiUmVjb3ZlcnlDb25mbGljdFRhYmxlc3BhY2UiCSJXYWl0aW5nIGZvciByZWNv dmVyeSBjb25mbGljdCByZXNvbHV0aW9uIGZvciBkcm9wcGluZyBhIHRhYmxlc3BhY2UuIgor V0FJVF9FVkVOVF9SRUNPVkVSWV9FTkRfQ09NTUFORAkiUmVjb3ZlcnlFbmRDb21tYW5kIgki V2FpdGluZyBmb3IgPHhyZWYgbGlua2VuZD0iZ3VjLXJlY292ZXJ5LWVuZC1jb21tYW5kIi8+ IHRvIGNvbXBsZXRlLiIKK1dBSVRfRVZFTlRfUkVDT1ZFUllfUEFVU0UJIlJlY292ZXJ5UGF1 c2UiCSJXYWl0aW5nIGZvciByZWNvdmVyeSB0byBiZSByZXN1bWVkLiIKK1dBSVRfRVZFTlRf UkVQTElDQVRJT05fT1JJR0lOX0RST1AJIlJlcGxpY2F0aW9uT3JpZ2luRHJvcCIJIldhaXRp bmcgZm9yIGEgcmVwbGljYXRpb24gb3JpZ2luIHRvIGJlY29tZSBpbmFjdGl2ZSBzbyBpdCBj YW4gYmUgZHJvcHBlZC4iCitXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfRFJPUAkiUmVw bGljYXRpb25TbG90RHJvcCIJIldhaXRpbmcgZm9yIGEgcmVwbGljYXRpb24gc2xvdCB0byBi ZWNvbWUgaW5hY3RpdmUgc28gaXQgY2FuIGJlIGRyb3BwZWQuIgorV0FJVF9FVkVOVF9SRVNU T1JFX0NPTU1BTkQJIlJlc3RvcmVDb21tYW5kIgkiV2FpdGluZyBmb3IgPHhyZWYgbGlua2Vu ZD0iZ3VjLXJlc3RvcmUtY29tbWFuZCIvPiB0byBjb21wbGV0ZS4iCitXQUlUX0VWRU5UX1NB RkVfU05BUFNIT1QJIlNhZmVTbmFwc2hvdCIJIldhaXRpbmcgdG8gb2J0YWluIGEgdmFsaWQg c25hcHNob3QgZm9yIGEgPGxpdGVyYWw+UkVBRCBPTkxZIERFRkVSUkFCTEU8L2xpdGVyYWw+ IHRyYW5zYWN0aW9uLiIKK1dBSVRfRVZFTlRfU1lOQ19SRVAJIlN5bmNSZXAiCSJXYWl0aW5n IGZvciBjb25maXJtYXRpb24gZnJvbSBhIHJlbW90ZSBzZXJ2ZXIgZHVyaW5nIHN5bmNocm9u b3VzIHJlcGxpY2F0aW9uLiBXYWl0aW5nIHRvIHJlYWQgb3IgdXBkYXRlIGluZm9ybWF0aW9u IGFib3V0IHRoZSBzdGF0ZSBvZiBzeW5jaHJvbm91cyByZXBsaWNhdGlvbi4iCitXQUlUX0VW RU5UX1dBTF9SRUNFSVZFUl9FWElUCSJXYWxSZWNlaXZlckV4aXQiCSJXYWl0aW5nIGZvciB0 aGUgV0FMIHJlY2VpdmVyIHRvIGV4aXQuIgorV0FJVF9FVkVOVF9XQUxfUkVDRUlWRVJfV0FJ VF9TVEFSVAkiV2FsUmVjZWl2ZXJXYWl0U3RhcnQiCSJXYWl0aW5nIGZvciBzdGFydHVwIHBy b2Nlc3MgdG8gc2VuZCBpbml0aWFsIGRhdGEgZm9yIHN0cmVhbWluZyByZXBsaWNhdGlvbi4i CitXQUlUX0VWRU5UX1hBQ1RfR1JPVVBfVVBEQVRFCSJYYWN0R3JvdXBVcGRhdGUiCSJXYWl0 aW5nIGZvciB0aGUgZ3JvdXAgbGVhZGVyIHRvIHVwZGF0ZSB0cmFuc2FjdGlvbiBzdGF0dXMg YXQgZW5kIG9mIGEgcGFyYWxsZWwgb3BlcmF0aW9uLiIKKworU2VjdGlvbjogQ2xhc3NOYW1l IC0gV2FpdEV2ZW50VGltZW91dAorCisvKiAtLS0tLS0tLS0tCisgKiBXYWl0IEV2ZW50cyAt IFRpbWVvdXQKKyAqCisgKiBVc2UgdGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJvY2VzcyBpcyB3 YWl0aW5nIGZvciBhIHRpbWVvdXQgdG8gZXhwaXJlLgorICogLS0tLS0tLS0tLQorICovCisK K1dBSVRfRVZFTlRfQkFTRV9CQUNLVVBfVEhST1RUTEUJIkJhc2VCYWNrdXBUaHJvdHRsZSIJ IldhaXRpbmcgZHVyaW5nIGJhc2UgYmFja3VwIHdoZW4gdGhyb3R0bGluZyBhY3Rpdml0eS4i CitXQUlUX0VWRU5UX0NIRUNLUE9JTlRfV1JJVEVfREVMQVkJIkNoZWNrcG9pbnRXcml0ZURl bGF5IgkiV2FpdGluZyBiZXR3ZWVuIHdyaXRlcyB3aGlsZSBwZXJmb3JtaW5nIGEgY2hlY2tw b2ludC4iCitXQUlUX0VWRU5UX1BHX1NMRUVQCSJQZ1NsZWVwIgkiV2FpdGluZyBkdWUgdG8g YSBjYWxsIHRvIDxmdW5jdGlvbj5wZ19zbGVlcDwvZnVuY3Rpb24+IG9yIGEgc2libGluZyBm dW5jdGlvbi4iCitXQUlUX0VWRU5UX1JFQ09WRVJZX0FQUExZX0RFTEFZCSJSZWNvdmVyeUFw cGx5RGVsYXkiCSJXYWl0aW5nIHRvIGFwcGx5IFdBTCBkdXJpbmcgcmVjb3ZlcnkgYmVjYXVz ZSBvZiBhIGRlbGF5IHNldHRpbmcuIgorV0FJVF9FVkVOVF9SRUNPVkVSWV9SRVRSSUVWRV9S RVRSWV9JTlRFUlZBTAkiUmVjb3ZlcnlSZXRyaWV2ZVJldHJ5SW50ZXJ2YWwiCSJXYWl0aW5n IGR1cmluZyByZWNvdmVyeSB3aGVuIFdBTCBkYXRhIGlzIG5vdCBhdmFpbGFibGUgZnJvbSBh bnkgc291cmNlICg8ZmlsZW5hbWU+cGdfd2FsPC9maWxlbmFtZT4sIGFyY2hpdmUgb3Igc3Ry ZWFtKS4iCitXQUlUX0VWRU5UX1JFR0lTVEVSX1NZTkNfUkVRVUVTVAkiUmVnaXN0ZXJTeW5j UmVxdWVzdCIJIldhaXRpbmcgd2hpbGUgc2VuZGluZyBzeW5jaHJvbml6YXRpb24gcmVxdWVz dHMgdG8gdGhlIGNoZWNrcG9pbnRlciwgYmVjYXVzZSB0aGUgcmVxdWVzdCBxdWV1ZSBpcyBm dWxsLiIKK1dBSVRfRVZFTlRfU1BJTl9ERUxBWQkiU3BpbkRlbGF5IgkiV2FpdGluZyB3aGls ZSBhY3F1aXJpbmcgYSBjb250ZW5kZWQgc3BpbmxvY2suIgorV0FJVF9FVkVOVF9WQUNVVU1f REVMQVkJIlZhY3V1bURlbGF5IgkiV2FpdGluZyBpbiBhIGNvc3QtYmFzZWQgdmFjdXVtIGRl bGF5IHBvaW50LiIKK1dBSVRfRVZFTlRfVkFDVVVNX1RSVU5DQVRFCSJWYWN1dW1UcnVuY2F0 ZSIJIldhaXRpbmcgdG8gYWNxdWlyZSBhbiBleGNsdXNpdmUgbG9jayB0byB0cnVuY2F0ZSBv ZmYgYW55IGVtcHR5IHBhZ2VzIGF0IHRoZSBlbmQgb2YgYSB0YWJsZSB2YWN1dW1lZC4iCisK K1NlY3Rpb246IENsYXNzTmFtZSAtIFdhaXRFdmVudElPCisKKy8qIC0tLS0tLS0tLS0KKyAq IFdhaXQgRXZlbnRzIC0gSU8KKyAqCisgKiBVc2UgdGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJv Y2VzcyBpcyB3YWl0aW5nIGZvciBhIElPLgorICogLS0tLS0tLS0tLQorICovCisKK1dBSVRf RVZFTlRfQkFTRUJBQ0tVUF9SRUFECSJCYXNlQmFja3VwUmVhZCIJIldhaXRpbmcgZm9yIGJh c2UgYmFja3VwIHRvIHJlYWQgZnJvbSBhIGZpbGUuIgorV0FJVF9FVkVOVF9CQVNFQkFDS1VQ X1NZTkMJIkJhc2VCYWNrdXBTeW5jIgkiV2FpdGluZyBmb3IgZGF0YSB3cml0dGVuIGJ5IGEg YmFzZSBiYWNrdXAgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfQkFT RUJBQ0tVUF9XUklURQkiQmFzZUJhY2t1cFdyaXRlIgkiV2FpdGluZyBmb3IgYmFzZSBiYWNr dXAgdG8gd3JpdGUgdG8gYSBmaWxlLiIKK1dBSVRfRVZFTlRfQlVGRklMRV9SRUFECSJCdWZG aWxlUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBmcm9tIGEgYnVmZmVyZWQgZmlsZS4iCitX QUlUX0VWRU5UX0JVRkZJTEVfV1JJVEUJIkJ1ZkZpbGVXcml0ZSIJIldhaXRpbmcgZm9yIGEg d3JpdGUgdG8gYSBidWZmZXJlZCBmaWxlLiIKK1dBSVRfRVZFTlRfQlVGRklMRV9UUlVOQ0FU RQkiQnVmRmlsZVRydW5jYXRlIgkiV2FpdGluZyBmb3IgYSBidWZmZXJlZCBmaWxlIHRvIGJl IHRydW5jYXRlZC4iCitXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9SRUFECSJDb250cm9sRmls ZVJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgZnJvbSB0aGUgPGZpbGVuYW1lPnBnX2NvbnRy b2w8L2ZpbGVuYW1lPiBmaWxlLiIKK1dBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1NZTkMJIkNv bnRyb2xGaWxlU3luYyIJIldhaXRpbmcgZm9yIHRoZSA8ZmlsZW5hbWU+cGdfY29udHJvbDwv ZmlsZW5hbWU+IGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiBXYWl0aW5nIGZvciBh biB1cGRhdGUgdG8gdGhlIDxmaWxlbmFtZT5wZ19jb250cm9sPC9maWxlbmFtZT4gZmlsZSB0 byByZWFjaCBkdXJhYmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVOVF9DT05UUk9MX0ZJTEVfU1lO Q19VUERBVEUJIkNvbnRyb2xGaWxlU3luY1VwZGF0ZSIJIldhaXRpbmcgZm9yIGFuIHVwZGF0 ZSB0byB0aGUgPGZpbGVuYW1lPnBnX2NvbnRyb2w8L2ZpbGVuYW1lPiBmaWxlIHRvIHJlYWNo IGR1cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX0NPTlRST0xfRklMRV9XUklURQkiQ29u dHJvbEZpbGVXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gdGhlIDxmaWxlbmFtZT5w Z19jb250cm9sPC9maWxlbmFtZT4gZmlsZS4gV2FpdGluZyBmb3IgYSB3cml0ZSB0byB1cGRh dGUgdGhlIDxmaWxlbmFtZT5wZ19jb250cm9sPC9maWxlbmFtZT4gZmlsZS4iCitXQUlUX0VW RU5UX0NPTlRST0xfRklMRV9XUklURV9VUERBVEUJIkNvbnRyb2xGaWxlV3JpdGVVcGRhdGUi CSJXYWl0aW5nIGZvciBhIHdyaXRlIHRvIHVwZGF0ZSB0aGUgPGZpbGVuYW1lPnBnX2NvbnRy b2w8L2ZpbGVuYW1lPiBmaWxlLiIKK1dBSVRfRVZFTlRfQ09QWV9GSUxFX1JFQUQJIkNvcHlG aWxlUmVhZCIJIldhaXRpbmcgZm9yIGEgcmVhZCBkdXJpbmcgYSBmaWxlIGNvcHkgb3BlcmF0 aW9uLiIKK1dBSVRfRVZFTlRfQ09QWV9GSUxFX1dSSVRFCSJDb3B5RmlsZVdyaXRlIgkiV2Fp dGluZyBmb3IgYSB3cml0ZSBkdXJpbmcgYSBmaWxlIGNvcHkgb3BlcmF0aW9uLiIKK1dBSVRf RVZFTlRfREFUQV9GSUxFX0VYVEVORAkiRGF0YUZpbGVFeHRlbmQiCSJXYWl0aW5nIGZvciBh IHJlbGF0aW9uIGRhdGEgZmlsZSB0byBiZSBleHRlbmRlZC4iCitXQUlUX0VWRU5UX0RBVEFf RklMRV9GTFVTSAkiRGF0YUZpbGVGbHVzaCIJIldhaXRpbmcgZm9yIGEgcmVsYXRpb24gZGF0 YSBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX0RBVEFfRklM RV9JTU1FRElBVEVfU1lOQwkiRGF0YUZpbGVJbW1lZGlhdGVTeW5jIgkiV2FpdGluZyBmb3Ig YW4gaW1tZWRpYXRlIHN5bmNocm9uaXphdGlvbiBvZiBhIHJlbGF0aW9uIGRhdGEgZmlsZSB0 byBkdXJhYmxlIHN0b3JhZ2UuIgorV0FJVF9FVkVOVF9EQVRBX0ZJTEVfUFJFRkVUQ0gJIkRh dGFGaWxlUHJlZmV0Y2giCSJXYWl0aW5nIGZvciBhbiBhc3luY2hyb25vdXMgcHJlZmV0Y2gg ZnJvbSBhIHJlbGF0aW9uIGRhdGEgZmlsZS4iCitXQUlUX0VWRU5UX0RBVEFfRklMRV9SRUFE CSJEYXRhRmlsZVJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgZnJvbSBhIHJlbGF0aW9uIGRh dGEgZmlsZS4iCitXQUlUX0VWRU5UX0RBVEFfRklMRV9TWU5DCSJEYXRhRmlsZVN5bmMiCSJX YWl0aW5nIGZvciBjaGFuZ2VzIHRvIGEgcmVsYXRpb24gZGF0YSBmaWxlIHRvIHJlYWNoIGR1 cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX0RBVEFfRklMRV9UUlVOQ0FURQkiRGF0YUZp bGVUcnVuY2F0ZSIJIldhaXRpbmcgZm9yIGEgcmVsYXRpb24gZGF0YSBmaWxlIHRvIGJlIHRy dW5jYXRlZC4iCitXQUlUX0VWRU5UX0RBVEFfRklMRV9XUklURQkiRGF0YUZpbGVXcml0ZSIJ IldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gYSByZWxhdGlvbiBkYXRhIGZpbGUuIgorV0FJVF9F VkVOVF9EU01fQUxMT0NBVEUJIkRTTUFsbG9jYXRlIgkiV2FpdGluZyBmb3IgYSBkeW5hbWlj IHNoYXJlZCBtZW1vcnkgc2VnbWVudCB0byBiZSBhbGxvY2F0ZWQuIgorV0FJVF9FVkVOVF9E U01fRklMTF9aRVJPX1dSSVRFCSJEU01GaWxsWmVyb1dyaXRlIgkiV2FpdGluZyB0byBmaWxs IGEgZHluYW1pYyBzaGFyZWQgbWVtb3J5IGJhY2tpbmcgZmlsZSB3aXRoIHplcm9lcy4iCitX QUlUX0VWRU5UX0xPQ0tfRklMRV9BRERUT0RBVEFESVJfUkVBRAkiTG9ja0ZpbGVBZGRUb0Rh dGFEaXJSZWFkIgkiV2FpdGluZyBmb3IgYSByZWFkIHdoaWxlIGFkZGluZyBhIGxpbmUgdG8g dGhlIGRhdGEgZGlyZWN0b3J5IGxvY2sgZmlsZS4iCitXQUlUX0VWRU5UX0xPQ0tfRklMRV9B RERUT0RBVEFESVJfU1lOQwkiTG9ja0ZpbGVBZGRUb0RhdGFEaXJTeW5jIgkiV2FpdGluZyBm b3IgZGF0YSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2Ugd2hpbGUgYWRkaW5nIGEgbGluZSB0 byB0aGUgZGF0YSBkaXJlY3RvcnkgbG9jayBmaWxlLiIKK1dBSVRfRVZFTlRfTE9DS19GSUxF X0FERFRPREFUQURJUl9XUklURQkiTG9ja0ZpbGVBZGRUb0RhdGFEaXJXcml0ZSIJIldhaXRp bmcgZm9yIGEgd3JpdGUgd2hpbGUgYWRkaW5nIGEgbGluZSB0byB0aGUgZGF0YSBkaXJlY3Rv cnkgbG9jayBmaWxlLiIKK1dBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFURV9SRUFECSJMb2Nr RmlsZUNyZWF0ZVJlYWQiCSJXYWl0aW5nIHRvIHJlYWQgd2hpbGUgY3JlYXRpbmcgdGhlIGRh dGEgZGlyZWN0b3J5IGxvY2sgZmlsZS4iCitXQUlUX0VWRU5UX0xPQ0tfRklMRV9DUkVBVEVf U1lOQwkiTG9ja0ZpbGVDcmVhdGVTeW5jIgkiV2FpdGluZyBmb3IgZGF0YSB0byByZWFjaCBk dXJhYmxlIHN0b3JhZ2Ugd2hpbGUgY3JlYXRpbmcgdGhlIGRhdGEgZGlyZWN0b3J5IGxvY2sg ZmlsZS4iCitXQUlUX0VWRU5UX0xPQ0tfRklMRV9DUkVBVEVfV1JJVEUJIkxvY2tGaWxlQ3Jl YXRlV3JpdGUiCSJXYWl0aW5nIGZvciBhIHdyaXRlIHdoaWxlIGNyZWF0aW5nIHRoZSBkYXRh IGRpcmVjdG9yeSBsb2NrIGZpbGUuIgorV0FJVF9FVkVOVF9MT0NLX0ZJTEVfUkVDSEVDS0RB VEFESVJfUkVBRAkiTG9ja0ZpbGVSZUNoZWNrRGF0YURpclJlYWQiCSJXYWl0aW5nIGZvciBh IHJlYWQgZHVyaW5nIHJlY2hlY2sgb2YgdGhlIGRhdGEgZGlyZWN0b3J5IGxvY2sgZmlsZS4i CitXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9DSEVDS1BPSU5UX1NZTkMJIkxvZ2ljYWxS ZXdyaXRlQ2hlY2twb2ludFN5bmMiCSJXYWl0aW5nIGZvciBsb2dpY2FsIHJld3JpdGUgbWFw cGluZ3MgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlIGR1cmluZyBhIGNoZWNrcG9pbnQuIgor V0FJVF9FVkVOVF9MT0dJQ0FMX1JFV1JJVEVfTUFQUElOR19TWU5DCSJMb2dpY2FsUmV3cml0 ZU1hcHBpbmdTeW5jIgkiV2FpdGluZyBmb3IgbWFwcGluZyBkYXRhIHRvIHJlYWNoIGR1cmFi bGUgc3RvcmFnZSBkdXJpbmcgYSBsb2dpY2FsIHJld3JpdGUuIgorV0FJVF9FVkVOVF9MT0dJ Q0FMX1JFV1JJVEVfTUFQUElOR19XUklURQkiTG9naWNhbFJld3JpdGVNYXBwaW5nV3JpdGUi CSJXYWl0aW5nIGZvciBhIHdyaXRlIG9mIG1hcHBpbmcgZGF0YSBkdXJpbmcgYSBsb2dpY2Fs IHJld3JpdGUuIgorV0FJVF9FVkVOVF9MT0dJQ0FMX1JFV1JJVEVfU1lOQwkiTG9naWNhbFJl d3JpdGVTeW5jIgkiV2FpdGluZyBmb3IgbG9naWNhbCByZXdyaXRlIG1hcHBpbmdzIHRvIHJl YWNoIGR1cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9UUlVO Q0FURQkiTG9naWNhbFJld3JpdGVUcnVuY2F0ZSIJIldhaXRpbmcgZm9yIHRydW5jYXRlIG9m IG1hcHBpbmcgZGF0YSBkdXJpbmcgYSBsb2dpY2FsIHJld3JpdGUuIgorV0FJVF9FVkVOVF9M T0dJQ0FMX1JFV1JJVEVfV1JJVEUJIkxvZ2ljYWxSZXdyaXRlV3JpdGUiCSJXYWl0aW5nIGZv ciBhIHdyaXRlIG9mIGxvZ2ljYWwgcmV3cml0ZSBtYXBwaW5ncy4iCitXQUlUX0VWRU5UX1JF TEFUSU9OX01BUF9SRUFECSJSZWxhdGlvbk1hcFJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQg b2YgdGhlIHJlbGF0aW9uIG1hcCBmaWxlLiIKK1dBSVRfRVZFTlRfUkVMQVRJT05fTUFQX1JF UExBQ0UJIlJlbGF0aW9uTWFwUmVwbGFjZSIJIldhaXRpbmcgZm9yIGR1cmFibGUgcmVwbGFj ZW1lbnQgb2YgYSByZWxhdGlvbiBtYXAgZmlsZS4iCitXQUlUX0VWRU5UX1JFTEFUSU9OX01B UF9XUklURQkiUmVsYXRpb25NYXBXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgdG8gdGhl IHJlbGF0aW9uIG1hcCBmaWxlLiIKK1dBSVRfRVZFTlRfUkVPUkRFUl9CVUZGRVJfUkVBRAki UmVvcmRlckJ1ZmZlclJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgZHVyaW5nIHJlb3JkZXIg YnVmZmVyIG1hbmFnZW1lbnQuIgorV0FJVF9FVkVOVF9SRU9SREVSX0JVRkZFUl9XUklURQki UmVvcmRlckJ1ZmZlcldyaXRlIgkiV2FpdGluZyBmb3IgYSB3cml0ZSBkdXJpbmcgcmVvcmRl ciBidWZmZXIgbWFuYWdlbWVudC4iCitXQUlUX0VWRU5UX1JFT1JERVJfTE9HSUNBTF9NQVBQ SU5HX1JFQUQJIlJlb3JkZXJMb2dpY2FsTWFwcGluZ1JlYWQiCSJXYWl0aW5nIGZvciBhIHJl YWQgb2YgYSBsb2dpY2FsIG1hcHBpbmcgZHVyaW5nIHJlb3JkZXIgYnVmZmVyIG1hbmFnZW1l bnQuIgorV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1JFQUQJIlJlcGxpY2F0aW9uU2xv dFJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgZnJvbSBhIHJlcGxpY2F0aW9uIHNsb3QgY29u dHJvbCBmaWxlLiIKK1dBSVRfRVZFTlRfUkVQTElDQVRJT05fU0xPVF9SRVNUT1JFX1NZTkMJ IlJlcGxpY2F0aW9uU2xvdFJlc3RvcmVTeW5jIgkiV2FpdGluZyBmb3IgYSByZXBsaWNhdGlv biBzbG90IGNvbnRyb2wgZmlsZSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2Ugd2hpbGUgcmVz dG9yaW5nIGl0IHRvIG1lbW9yeS4iCitXQUlUX0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfU1lO QwkiUmVwbGljYXRpb25TbG90U3luYyIJIldhaXRpbmcgZm9yIGEgcmVwbGljYXRpb24gc2xv dCBjb250cm9sIGZpbGUgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRf UkVQTElDQVRJT05fU0xPVF9XUklURQkiUmVwbGljYXRpb25TbG90V3JpdGUiCSJXYWl0aW5n IGZvciBhIHdyaXRlIHRvIGEgcmVwbGljYXRpb24gc2xvdCBjb250cm9sIGZpbGUuIgorV0FJ VF9FVkVOVF9TTFJVX0ZMVVNIX1NZTkMJIlNMUlVGbHVzaFN5bmMiCSJXYWl0aW5nIGZvciBT TFJVIGRhdGEgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlIGR1cmluZyBhIGNoZWNrcG9pbnQg b3IgZGF0YWJhc2Ugc2h1dGRvd24uIgorV0FJVF9FVkVOVF9TTFJVX1JFQUQJIlNMUlVSZWFk IgkiV2FpdGluZyBmb3IgYSByZWFkIG9mIGFuIFNMUlUgcGFnZS4iCitXQUlUX0VWRU5UX1NM UlVfU1lOQwkiU0xSVVN5bmMiCSJXYWl0aW5nIGZvciBTTFJVIGRhdGEgdG8gcmVhY2ggZHVy YWJsZSBzdG9yYWdlIGZvbGxvd2luZyBhIHBhZ2Ugd3JpdGUuIgorV0FJVF9FVkVOVF9TTFJV X1dSSVRFCSJTTFJVV3JpdGUiCSJXYWl0aW5nIGZvciBhIHdyaXRlIG9mIGFuIFNMUlUgcGFn ZS4iCitXQUlUX0VWRU5UX1NOQVBCVUlMRF9SRUFECSJTbmFwYnVpbGRSZWFkIgkiV2FpdGlu ZyBmb3IgYSByZWFkIG9mIGEgc2VyaWFsaXplZCBoaXN0b3JpY2FsIGNhdGFsb2cgc25hcHNo b3QuIgorV0FJVF9FVkVOVF9TTkFQQlVJTERfU1lOQwkiU25hcGJ1aWxkU3luYyIJIldhaXRp bmcgZm9yIGEgc2VyaWFsaXplZCBoaXN0b3JpY2FsIGNhdGFsb2cgc25hcHNob3QgdG8gcmVh Y2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfU05BUEJVSUxEX1dSSVRFCSJTbmFw YnVpbGRXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgb2YgYSBzZXJpYWxpemVkIGhpc3Rv cmljYWwgY2F0YWxvZyBzbmFwc2hvdC4iCitXQUlUX0VWRU5UX1RJTUVMSU5FX0hJU1RPUllf RklMRV9TWU5DCSJUaW1lbGluZUhpc3RvcnlGaWxlU3luYyIJIldhaXRpbmcgZm9yIGEgdGlt ZWxpbmUgaGlzdG9yeSBmaWxlIHJlY2VpdmVkIHZpYSBzdHJlYW1pbmcgcmVwbGljYXRpb24g dG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9S WV9GSUxFX1dSSVRFCSJUaW1lbGluZUhpc3RvcnlGaWxlV3JpdGUiCSJXYWl0aW5nIGZvciBh IHdyaXRlIG9mIGEgdGltZWxpbmUgaGlzdG9yeSBmaWxlIHJlY2VpdmVkIHZpYSBzdHJlYW1p bmcgcmVwbGljYXRpb24uIgorV0FJVF9FVkVOVF9USU1FTElORV9ISVNUT1JZX1JFQUQJIlRp bWVsaW5lSGlzdG9yeVJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQgb2YgYSB0aW1lbGluZSBo aXN0b3J5IGZpbGUuIgorV0FJVF9FVkVOVF9USU1FTElORV9ISVNUT1JZX1NZTkMJIlRpbWVs aW5lSGlzdG9yeVN5bmMiCSJXYWl0aW5nIGZvciBhIG5ld2x5IGNyZWF0ZWQgdGltZWxpbmUg aGlzdG9yeSBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS4iCitXQUlUX0VWRU5UX1RJ TUVMSU5FX0hJU1RPUllfV1JJVEUJIlRpbWVsaW5lSGlzdG9yeVdyaXRlIgkiV2FpdGluZyBm b3IgYSB3cml0ZSBvZiBhIG5ld2x5IGNyZWF0ZWQgdGltZWxpbmUgaGlzdG9yeSBmaWxlLiIK K1dBSVRfRVZFTlRfVFdPUEhBU0VfRklMRV9SRUFECSJUd29waGFzZUZpbGVSZWFkIgkiV2Fp dGluZyBmb3IgYSByZWFkIG9mIGEgdHdvIHBoYXNlIHN0YXRlIGZpbGUuIgorV0FJVF9FVkVO VF9UV09QSEFTRV9GSUxFX1NZTkMJIlR3b3BoYXNlRmlsZVN5bmMiCSJXYWl0aW5nIGZvciBh IHR3byBwaGFzZSBzdGF0ZSBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS4iCitXQUlU X0VWRU5UX1RXT1BIQVNFX0ZJTEVfV1JJVEUJIlR3b3BoYXNlRmlsZVdyaXRlIgkiV2FpdGlu ZyBmb3IgYSB3cml0ZSBvZiBhIHR3byBwaGFzZSBzdGF0ZSBmaWxlLiIKK1dBSVRfRVZFTlRf VkVSU0lPTl9GSUxFX1dSSVRFCSJWZXJzaW9uRmlsZVdyaXRlIgkiV2FpdGluZyBmb3IgdGhl IHZlcnNpb24gZmlsZSB0byBiZSB3cml0dGVuIHdoaWxlIGNyZWF0aW5nIGEgZGF0YWJhc2Uu IgorV0FJVF9FVkVOVF9XQUxTRU5ERVJfVElNRUxJTkVfSElTVE9SWV9SRUFECSJXQUxTZW5k ZXJUaW1lbGluZUhpc3RvcnlSZWFkIgkiV2FpdGluZyBmb3IgYSByZWFkIGZyb20gYSB0aW1l bGluZSBoaXN0b3J5IGZpbGUgZHVyaW5nIGEgd2Fsc2VuZGVyIHRpbWVsaW5lIGNvbW1hbmQu IgorV0FJVF9FVkVOVF9XQUxfQk9PVFNUUkFQX1NZTkMJIldBTEJvb3RzdHJhcFN5bmMiCSJX YWl0aW5nIGZvciBXQUwgdG8gcmVhY2ggZHVyYWJsZSBzdG9yYWdlIGR1cmluZyBib290c3Ry YXBwaW5nLiIKK1dBSVRfRVZFTlRfV0FMX0JPT1RTVFJBUF9XUklURQkiV0FMQm9vdHN0cmFw V3JpdGUiCSJXYWl0aW5nIGZvciBhIHdyaXRlIG9mIGEgV0FMIHBhZ2UgZHVyaW5nIGJvb3Rz dHJhcHBpbmcuIgorV0FJVF9FVkVOVF9XQUxfQ09QWV9SRUFECSJXQUxDb3B5UmVhZCIJIldh aXRpbmcgZm9yIGEgcmVhZCB3aGVuIGNyZWF0aW5nIGEgbmV3IFdBTCBzZWdtZW50IGJ5IGNv cHlpbmcgYW4gZXhpc3Rpbmcgb25lLiIKK1dBSVRfRVZFTlRfV0FMX0NPUFlfU1lOQwkiV0FM Q29weVN5bmMiCSJXYWl0aW5nIGZvciBhIG5ldyBXQUwgc2VnbWVudCBjcmVhdGVkIGJ5IGNv cHlpbmcgYW4gZXhpc3Rpbmcgb25lIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS4iCitXQUlU X0VWRU5UX1dBTF9DT1BZX1dSSVRFCSJXQUxDb3B5V3JpdGUiCSJXYWl0aW5nIGZvciBhIHdy aXRlIHdoZW4gY3JlYXRpbmcgYSBuZXcgV0FMIHNlZ21lbnQgYnkgY29weWluZyBhbiBleGlz dGluZyBvbmUuIgorV0FJVF9FVkVOVF9XQUxfSU5JVF9TWU5DCSJXQUxJbml0U3luYyIJIldh aXRpbmcgZm9yIGEgbmV3bHkgaW5pdGlhbGl6ZWQgV0FMIGZpbGUgdG8gcmVhY2ggZHVyYWJs ZSBzdG9yYWdlLiIKK1dBSVRfRVZFTlRfV0FMX0lOSVRfV1JJVEUJIldBTEluaXRXcml0ZSIJ IldhaXRpbmcgZm9yIGEgd3JpdGUgd2hpbGUgaW5pdGlhbGl6aW5nIGEgbmV3IFdBTCBmaWxl LiIKK1dBSVRfRVZFTlRfV0FMX1JFQUQJIldBTFJlYWQiCSJXYWl0aW5nIGZvciBhIHJlYWQg ZnJvbSBhIFdBTCBmaWxlLiIKK1dBSVRfRVZFTlRfV0FMX1NZTkMJIldBTFN5bmMiCSJXYWl0 aW5nIGZvciBhIFdBTCBmaWxlIHRvIHJlYWNoIGR1cmFibGUgc3RvcmFnZS4gV2FpdGluZyBm b3IgZGF0YSB0byByZWFjaCBkdXJhYmxlIHN0b3JhZ2Ugd2hpbGUgYXNzaWduaW5nIGEgbmV3 IFdBTCBzeW5jIG1ldGhvZC4iCitXQUlUX0VWRU5UX1dBTF9TWU5DX01FVEhPRF9BU1NJR04J IldBTFN5bmNNZXRob2RBc3NpZ24iCSJXYWl0aW5nIGZvciBkYXRhIHRvIHJlYWNoIGR1cmFi bGUgc3RvcmFnZSB3aGlsZSBhc3NpZ25pbmcgYSBuZXcgV0FMIHN5bmMgbWV0aG9kLiIKK1dB SVRfRVZFTlRfV0FMX1dSSVRFCSJXQUxXcml0ZSIJIldhaXRpbmcgZm9yIGEgd3JpdGUgdG8g YSBXQUwgZmlsZS4gV2FpdGluZyBmb3IgV0FMIGJ1ZmZlcnMgdG8gYmUgd3JpdHRlbiB0byBk aXNrLiIKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL01ha2VmaWxlIGIvc3JjL2luY2x1ZGUv TWFrZWZpbGUKaW5kZXggNTY1NzZkY2Y1Yy4uNWQyMTMxODdlMiAxMDA2NDQKLS0tIGEvc3Jj L2luY2x1ZGUvTWFrZWZpbGUKKysrIGIvc3JjL2luY2x1ZGUvTWFrZWZpbGUKQEAgLTcyLDcg KzcyLDcgQEAgdW5pbnN0YWxsOgogCiBjbGVhbjoKIAlybSAtZiB1dGlscy9mbWdyb2lkcy5o IHV0aWxzL2ZtZ3Jwcm90b3MuaCB1dGlscy9lcnJjb2Rlcy5oIHV0aWxzL2hlYWRlci1zdGFt cAotCXJtIC1mIHN0b3JhZ2UvbHdsb2NrbmFtZXMuaCB1dGlscy9wcm9iZXMuaAorCXJtIC1m IHN0b3JhZ2UvbHdsb2NrbmFtZXMuaCB1dGlscy9wcm9iZXMuaCB1dGlscy93YWl0X2V2ZW50 X3R5cGVzLmgKIAlybSAtZiBjYXRhbG9nL3NjaGVtYXBnLmggY2F0YWxvZy9zeXN0ZW1fZmtf aW5mby5oCiAJcm0gLWYgY2F0YWxvZy9wZ18qX2QuaCBjYXRhbG9nL2hlYWRlci1zdGFtcAog CXJtIC1mIG5vZGVzL25vZGV0YWdzLmggbm9kZXMvaGVhZGVyLXN0YW1wCmRpZmYgLS1naXQg YS9zcmMvaW5jbHVkZS91dGlscy8uZ2l0aWdub3JlIGIvc3JjL2luY2x1ZGUvdXRpbHMvLmdp dGlnbm9yZQppbmRleCAwNWNmYTdhOGQ2Li5jMWI0YzY2MjEzIDEwMDY0NAotLS0gYS9zcmMv aW5jbHVkZS91dGlscy8uZ2l0aWdub3JlCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxzLy5naXRp Z25vcmUKQEAgLTMsMyArMyw0IEBACiAvcHJvYmVzLmgKIC9lcnJjb2Rlcy5oCiAvaGVhZGVy LXN0YW1wCisvd2FpdF9ldmVudF90eXBlcy5oCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS91 dGlscy9tZXNvbi5idWlsZCBiL3NyYy9pbmNsdWRlL3V0aWxzL21lc29uLmJ1aWxkCmluZGV4 IDJmZWQxZTNmOGUuLmExZDJkODE0MDQgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3V0aWxz L21lc29uLmJ1aWxkCisrKyBiL3NyYy9pbmNsdWRlL3V0aWxzL21lc29uLmJ1aWxkCkBAIC0x LDUgKzEsMjEgQEAKICMgQ29weXJpZ2h0IChjKSAyMDIyLTIwMjMsIFBvc3RncmVTUUwgR2xv YmFsIERldmVsb3BtZW50IEdyb3VwCiAKK3dhaXRldmVudG5hbWVzID0gY3VzdG9tX3Rhcmdl dCgnd2FpdGV2ZW50bmFtZXMnLAorICBpbnB1dDogZmlsZXMoJy4uLy4uL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvd2FpdGV2ZW50bmFtZXMudHh0JyksCisgIG91dHB1dDogWyd3YWl0X2V2 ZW50X3R5cGVzLmgnXSwKKyAgY29tbWFuZDogWworICAgIHBlcmwsIGZpbGVzKCcuLi8uLi9i YWNrZW5kL3V0aWxzL2FjdGl2aXR5L2dlbmVyYXRlLXdhaXRldmVudG5hbWVzLnBsJyksCisg ICAgJy1vJywgJ0BPVVRESVJAJywKKyAgICAnQElOUFVUQCcKKyAgXSwKKyAgYnVpbGRfYnlf ZGVmYXVsdDogdHJ1ZSwKKyAgaW5zdGFsbDogdHJ1ZSwKKyAgaW5zdGFsbF9kaXI6IFtkaXJf aW5jbHVkZV9zZXJ2ZXIgLyAndXRpbHMnXSwKKykKKword2FpdF9ldmVudF90eXBlc19oID0g d2FpdGV2ZW50bmFtZXNbMF0KK2dlbmVyYXRlZF9iYWNrZW5kX2hlYWRlcnMgKz0gd2FpdF9l dmVudF90eXBlc19oCisKIGVycmNvZGVzID0gY3VzdG9tX3RhcmdldCgnZXJyY29kZXMnLAog ICBpbnB1dDogZmlsZXMoJy4uLy4uL2JhY2tlbmQvdXRpbHMvZXJyY29kZXMudHh0JyksCiAg IG91dHB1dDogWydlcnJjb2Rlcy5oJ10sCkBAIC01NywzICs3Myw1IEBAIGdlbmVyYXRlZF9z b3VyY2VzX2FjICs9IHsKICAgJ3NyYy9iYWNrZW5kL3V0aWxzJzogZm1ncnRhYl9vdXRwdXQg KyBbJ2VycmNvZGVzLmgnLCAncHJvYmVzLmgnLCAnZm1nci1zdGFtcCddLAogICAnc3JjL2lu Y2x1ZGUvdXRpbHMnOiBbJ2hlYWRlci1zdGFtcCddLAogfQorCitnZW5lcmF0ZWRfc291cmNl c19hYyArPSB7J3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5JzogWyd3YWl0X2V2ZW50X3R5 cGVzLmgnXX0KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxzL3dhaXRfZXZlbnQuaCBi L3NyYy9pbmNsdWRlL3V0aWxzL3dhaXRfZXZlbnQuaAppbmRleCA1MThkM2IwYTFmLi4xNjAy Mjc5NzJlIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50LmgKKysr IGIvc3JjL2luY2x1ZGUvdXRpbHMvd2FpdF9ldmVudC5oCkBAIC0yNSwyMTggKzI1LDggQEAK ICNkZWZpbmUgUEdfV0FJVF9USU1FT1VUCQkJCTB4MDkwMDAwMDBVCiAjZGVmaW5lIFBHX1dB SVRfSU8JCQkJCTB4MEEwMDAwMDBVCiAKLS8qIC0tLS0tLS0tLS0KLSAqIFdhaXQgRXZlbnRz IC0gQWN0aXZpdHkKLSAqCi0gKiBVc2UgdGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJvY2VzcyBp cyB3YWl0aW5nIGJlY2F1c2UgaXQgaGFzIG5vIHdvcmsgdG8gZG8sCi0gKiB1bmxlc3MgdGhl ICJDbGllbnQiIG9yICJUaW1lb3V0IiBjYXRlZ29yeSBkZXNjcmliZXMgdGhlIHNpdHVhdGlv biBiZXR0ZXIuCi0gKiBUeXBpY2FsbHksIHRoaXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBmb3Ig YmFja2dyb3VuZCBwcm9jZXNzZXMuCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXR5cGVkZWYgZW51 bQotewotCVdBSVRfRVZFTlRfQVJDSElWRVJfTUFJTiA9IFBHX1dBSVRfQUNUSVZJVFksCi0J V0FJVF9FVkVOVF9BVVRPVkFDVVVNX01BSU4sCi0JV0FJVF9FVkVOVF9CR1dSSVRFUl9ISUJF Uk5BVEUsCi0JV0FJVF9FVkVOVF9CR1dSSVRFUl9NQUlOLAotCVdBSVRfRVZFTlRfQ0hFQ0tQ T0lOVEVSX01BSU4sCi0JV0FJVF9FVkVOVF9MT0dJQ0FMX0FQUExZX01BSU4sCi0JV0FJVF9F VkVOVF9MT0dJQ0FMX0xBVU5DSEVSX01BSU4sCi0JV0FJVF9FVkVOVF9MT0dJQ0FMX1BBUkFM TEVMX0FQUExZX01BSU4sCi0JV0FJVF9FVkVOVF9SRUNPVkVSWV9XQUxfU1RSRUFNLAotCVdB SVRfRVZFTlRfU1lTTE9HR0VSX01BSU4sCi0JV0FJVF9FVkVOVF9XQUxfUkVDRUlWRVJfTUFJ TiwKLQlXQUlUX0VWRU5UX1dBTF9TRU5ERVJfTUFJTiwKLQlXQUlUX0VWRU5UX1dBTF9XUklU RVJfTUFJTgotfSBXYWl0RXZlbnRBY3Rpdml0eTsKLQotLyogLS0tLS0tLS0tLQotICogV2Fp dCBFdmVudHMgLSBDbGllbnQKLSAqCi0gKiBVc2UgdGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJv Y2VzcyBpcyB3YWl0aW5nIHRvIHNlbmQgZGF0YSB0byBvciByZWNlaXZlIGRhdGEKLSAqIGZy b20gdGhlIGZyb250ZW5kIHByb2Nlc3MgdG8gd2hpY2ggaXQgaXMgY29ubmVjdGVkLiAgVGhp cyBpcyBuZXZlciB1c2VkIGZvcgotICogYSBiYWNrZ3JvdW5kIHByb2Nlc3MsIHdoaWNoIGhh cyBubyBjbGllbnQgY29ubmVjdGlvbi4KLSAqIC0tLS0tLS0tLS0KLSAqLwotdHlwZWRlZiBl bnVtCi17Ci0JV0FJVF9FVkVOVF9DTElFTlRfUkVBRCA9IFBHX1dBSVRfQ0xJRU5ULAotCVdB SVRfRVZFTlRfQ0xJRU5UX1dSSVRFLAotCVdBSVRfRVZFTlRfR1NTX09QRU5fU0VSVkVSLAot CVdBSVRfRVZFTlRfTElCUFFXQUxSRUNFSVZFUl9DT05ORUNULAotCVdBSVRfRVZFTlRfTElC UFFXQUxSRUNFSVZFUl9SRUNFSVZFLAotCVdBSVRfRVZFTlRfU1NMX09QRU5fU0VSVkVSLAot CVdBSVRfRVZFTlRfV0FMX1NFTkRFUl9XQUlUX1dBTCwKLQlXQUlUX0VWRU5UX1dBTF9TRU5E RVJfV1JJVEVfREFUQSwKLX0gV2FpdEV2ZW50Q2xpZW50OwotCi0vKiAtLS0tLS0tLS0tCi0g KiBXYWl0IEV2ZW50cyAtIElQQwotICoKLSAqIFVzZSB0aGlzIGNhdGVnb3J5IHdoZW4gYSBw cm9jZXNzIGNhbm5vdCBjb21wbGV0ZSB0aGUgd29yayBpdCBpcyBkb2luZyBiZWNhdXNlCi0g KiBpdCBpcyB3YWl0aW5nIGZvciBhIG5vdGlmaWNhdGlvbiBmcm9tIGFub3RoZXIgcHJvY2Vz cy4KLSAqIC0tLS0tLS0tLS0KLSAqLwotdHlwZWRlZiBlbnVtCi17Ci0JV0FJVF9FVkVOVF9B UFBFTkRfUkVBRFkgPSBQR19XQUlUX0lQQywKLQlXQUlUX0VWRU5UX0FSQ0hJVkVfQ0xFQU5V UF9DT01NQU5ELAotCVdBSVRfRVZFTlRfQVJDSElWRV9DT01NQU5ELAotCVdBSVRfRVZFTlRf QkFDS0VORF9URVJNSU5BVElPTiwKLQlXQUlUX0VWRU5UX0JBQ0tVUF9XQUlUX1dBTF9BUkNI SVZFLAotCVdBSVRfRVZFTlRfQkdXT1JLRVJfU0hVVERPV04sCi0JV0FJVF9FVkVOVF9CR1dP UktFUl9TVEFSVFVQLAotCVdBSVRfRVZFTlRfQlRSRUVfUEFHRSwKLQlXQUlUX0VWRU5UX0JV RkZFUl9JTywKLQlXQUlUX0VWRU5UX0NIRUNLUE9JTlRfRE9ORSwKLQlXQUlUX0VWRU5UX0NI RUNLUE9JTlRfU1RBUlQsCi0JV0FJVF9FVkVOVF9FWEVDVVRFX0dBVEhFUiwKLQlXQUlUX0VW RU5UX0hBU0hfQkFUQ0hfQUxMT0NBVEUsCi0JV0FJVF9FVkVOVF9IQVNIX0JBVENIX0VMRUNU LAotCVdBSVRfRVZFTlRfSEFTSF9CQVRDSF9MT0FELAotCVdBSVRfRVZFTlRfSEFTSF9CVUlM RF9BTExPQ0FURSwKLQlXQUlUX0VWRU5UX0hBU0hfQlVJTERfRUxFQ1QsCi0JV0FJVF9FVkVO VF9IQVNIX0JVSUxEX0hBU0hfSU5ORVIsCi0JV0FJVF9FVkVOVF9IQVNIX0JVSUxEX0hBU0hf T1VURVIsCi0JV0FJVF9FVkVOVF9IQVNIX0dST1dfQkFUQ0hFU19ERUNJREUsCi0JV0FJVF9F VkVOVF9IQVNIX0dST1dfQkFUQ0hFU19FTEVDVCwKLQlXQUlUX0VWRU5UX0hBU0hfR1JPV19C QVRDSEVTX0ZJTklTSCwKLQlXQUlUX0VWRU5UX0hBU0hfR1JPV19CQVRDSEVTX1JFQUxMT0NB VEUsCi0JV0FJVF9FVkVOVF9IQVNIX0dST1dfQkFUQ0hFU19SRVBBUlRJVElPTiwKLQlXQUlU X0VWRU5UX0hBU0hfR1JPV19CVUNLRVRTX0VMRUNULAotCVdBSVRfRVZFTlRfSEFTSF9HUk9X X0JVQ0tFVFNfUkVBTExPQ0FURSwKLQlXQUlUX0VWRU5UX0hBU0hfR1JPV19CVUNLRVRTX1JF SU5TRVJULAotCVdBSVRfRVZFTlRfTE9HSUNBTF9BUFBMWV9TRU5EX0RBVEEsCi0JV0FJVF9F VkVOVF9MT0dJQ0FMX1BBUkFMTEVMX0FQUExZX1NUQVRFX0NIQU5HRSwKLQlXQUlUX0VWRU5U X0xPR0lDQUxfU1lOQ19EQVRBLAotCVdBSVRfRVZFTlRfTE9HSUNBTF9TWU5DX1NUQVRFX0NI QU5HRSwKLQlXQUlUX0VWRU5UX01RX0lOVEVSTkFMLAotCVdBSVRfRVZFTlRfTVFfUFVUX01F U1NBR0UsCi0JV0FJVF9FVkVOVF9NUV9SRUNFSVZFLAotCVdBSVRfRVZFTlRfTVFfU0VORCwK LQlXQUlUX0VWRU5UX1BBUkFMTEVMX0JJVE1BUF9TQ0FOLAotCVdBSVRfRVZFTlRfUEFSQUxM RUxfQ1JFQVRFX0lOREVYX1NDQU4sCi0JV0FJVF9FVkVOVF9QQVJBTExFTF9GSU5JU0gsCi0J V0FJVF9FVkVOVF9QUk9DQVJSQVlfR1JPVVBfVVBEQVRFLAotCVdBSVRfRVZFTlRfUFJPQ19T SUdOQUxfQkFSUklFUiwKLQlXQUlUX0VWRU5UX1BST01PVEUsCi0JV0FJVF9FVkVOVF9SRUNP VkVSWV9DT05GTElDVF9TTkFQU0hPVCwKLQlXQUlUX0VWRU5UX1JFQ09WRVJZX0NPTkZMSUNU X1RBQkxFU1BBQ0UsCi0JV0FJVF9FVkVOVF9SRUNPVkVSWV9FTkRfQ09NTUFORCwKLQlXQUlU X0VWRU5UX1JFQ09WRVJZX1BBVVNFLAotCVdBSVRfRVZFTlRfUkVQTElDQVRJT05fT1JJR0lO X0RST1AsCi0JV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX0RST1AsCi0JV0FJVF9FVkVO VF9SRVNUT1JFX0NPTU1BTkQsCi0JV0FJVF9FVkVOVF9TQUZFX1NOQVBTSE9ULAotCVdBSVRf RVZFTlRfU1lOQ19SRVAsCi0JV0FJVF9FVkVOVF9XQUxfUkVDRUlWRVJfRVhJVCwKLQlXQUlU X0VWRU5UX1dBTF9SRUNFSVZFUl9XQUlUX1NUQVJULAotCVdBSVRfRVZFTlRfWEFDVF9HUk9V UF9VUERBVEUKLX0gV2FpdEV2ZW50SVBDOwotCi0vKiAtLS0tLS0tLS0tCi0gKiBXYWl0IEV2 ZW50cyAtIFRpbWVvdXQKLSAqCi0gKiBVc2UgdGhpcyBjYXRlZ29yeSB3aGVuIGEgcHJvY2Vz cyBpcyB3YWl0aW5nIGZvciBhIHRpbWVvdXQgdG8gZXhwaXJlLgotICogLS0tLS0tLS0tLQot ICovCi10eXBlZGVmIGVudW0KLXsKLQlXQUlUX0VWRU5UX0JBU0VfQkFDS1VQX1RIUk9UVExF ID0gUEdfV0FJVF9USU1FT1VULAotCVdBSVRfRVZFTlRfQ0hFQ0tQT0lOVF9XUklURV9ERUxB WSwKLQlXQUlUX0VWRU5UX1BHX1NMRUVQLAotCVdBSVRfRVZFTlRfUkVDT1ZFUllfQVBQTFlf REVMQVksCi0JV0FJVF9FVkVOVF9SRUNPVkVSWV9SRVRSSUVWRV9SRVRSWV9JTlRFUlZBTCwK LQlXQUlUX0VWRU5UX1JFR0lTVEVSX1NZTkNfUkVRVUVTVCwKLQlXQUlUX0VWRU5UX1NQSU5f REVMQVksCi0JV0FJVF9FVkVOVF9WQUNVVU1fREVMQVksCi0JV0FJVF9FVkVOVF9WQUNVVU1f VFJVTkNBVEUKLX0gV2FpdEV2ZW50VGltZW91dDsKLQotLyogLS0tLS0tLS0tLQotICogV2Fp dCBFdmVudHMgLSBJTwotICoKLSAqIFVzZSB0aGlzIGNhdGVnb3J5IHdoZW4gYSBwcm9jZXNz IGlzIHdhaXRpbmcgZm9yIGEgSU8uCi0gKiAtLS0tLS0tLS0tCi0gKi8KLXR5cGVkZWYgZW51 bQotewotCVdBSVRfRVZFTlRfQkFTRUJBQ0tVUF9SRUFEID0gUEdfV0FJVF9JTywKLQlXQUlU X0VWRU5UX0JBU0VCQUNLVVBfU1lOQywKLQlXQUlUX0VWRU5UX0JBU0VCQUNLVVBfV1JJVEUs Ci0JV0FJVF9FVkVOVF9CVUZGSUxFX1JFQUQsCi0JV0FJVF9FVkVOVF9CVUZGSUxFX1dSSVRF LAotCVdBSVRfRVZFTlRfQlVGRklMRV9UUlVOQ0FURSwKLQlXQUlUX0VWRU5UX0NPTlRST0xf RklMRV9SRUFELAotCVdBSVRfRVZFTlRfQ09OVFJPTF9GSUxFX1NZTkMsCi0JV0FJVF9FVkVO VF9DT05UUk9MX0ZJTEVfU1lOQ19VUERBVEUsCi0JV0FJVF9FVkVOVF9DT05UUk9MX0ZJTEVf V1JJVEUsCi0JV0FJVF9FVkVOVF9DT05UUk9MX0ZJTEVfV1JJVEVfVVBEQVRFLAotCVdBSVRf RVZFTlRfQ09QWV9GSUxFX1JFQUQsCi0JV0FJVF9FVkVOVF9DT1BZX0ZJTEVfV1JJVEUsCi0J V0FJVF9FVkVOVF9EQVRBX0ZJTEVfRVhURU5ELAotCVdBSVRfRVZFTlRfREFUQV9GSUxFX0ZM VVNILAotCVdBSVRfRVZFTlRfREFUQV9GSUxFX0lNTUVESUFURV9TWU5DLAotCVdBSVRfRVZF TlRfREFUQV9GSUxFX1BSRUZFVENILAotCVdBSVRfRVZFTlRfREFUQV9GSUxFX1JFQUQsCi0J V0FJVF9FVkVOVF9EQVRBX0ZJTEVfU1lOQywKLQlXQUlUX0VWRU5UX0RBVEFfRklMRV9UUlVO Q0FURSwKLQlXQUlUX0VWRU5UX0RBVEFfRklMRV9XUklURSwKLQlXQUlUX0VWRU5UX0RTTV9B TExPQ0FURSwKLQlXQUlUX0VWRU5UX0RTTV9GSUxMX1pFUk9fV1JJVEUsCi0JV0FJVF9FVkVO VF9MT0NLX0ZJTEVfQUREVE9EQVRBRElSX1JFQUQsCi0JV0FJVF9FVkVOVF9MT0NLX0ZJTEVf QUREVE9EQVRBRElSX1NZTkMsCi0JV0FJVF9FVkVOVF9MT0NLX0ZJTEVfQUREVE9EQVRBRElS X1dSSVRFLAotCVdBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFURV9SRUFELAotCVdBSVRfRVZF TlRfTE9DS19GSUxFX0NSRUFURV9TWU5DLAotCVdBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFU RV9XUklURSwKLQlXQUlUX0VWRU5UX0xPQ0tfRklMRV9SRUNIRUNLREFUQURJUl9SRUFELAot CVdBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX0NIRUNLUE9JTlRfU1lOQywKLQlXQUlUX0VW RU5UX0xPR0lDQUxfUkVXUklURV9NQVBQSU5HX1NZTkMsCi0JV0FJVF9FVkVOVF9MT0dJQ0FM X1JFV1JJVEVfTUFQUElOR19XUklURSwKLQlXQUlUX0VWRU5UX0xPR0lDQUxfUkVXUklURV9T WU5DLAotCVdBSVRfRVZFTlRfTE9HSUNBTF9SRVdSSVRFX1RSVU5DQVRFLAotCVdBSVRfRVZF TlRfTE9HSUNBTF9SRVdSSVRFX1dSSVRFLAotCVdBSVRfRVZFTlRfUkVMQVRJT05fTUFQX1JF QUQsCi0JV0FJVF9FVkVOVF9SRUxBVElPTl9NQVBfUkVQTEFDRSwKLQlXQUlUX0VWRU5UX1JF TEFUSU9OX01BUF9XUklURSwKLQlXQUlUX0VWRU5UX1JFT1JERVJfQlVGRkVSX1JFQUQsCi0J V0FJVF9FVkVOVF9SRU9SREVSX0JVRkZFUl9XUklURSwKLQlXQUlUX0VWRU5UX1JFT1JERVJf TE9HSUNBTF9NQVBQSU5HX1JFQUQsCi0JV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1JF QUQsCi0JV0FJVF9FVkVOVF9SRVBMSUNBVElPTl9TTE9UX1JFU1RPUkVfU1lOQywKLQlXQUlU X0VWRU5UX1JFUExJQ0FUSU9OX1NMT1RfU1lOQywKLQlXQUlUX0VWRU5UX1JFUExJQ0FUSU9O X1NMT1RfV1JJVEUsCi0JV0FJVF9FVkVOVF9TTFJVX0ZMVVNIX1NZTkMsCi0JV0FJVF9FVkVO VF9TTFJVX1JFQUQsCi0JV0FJVF9FVkVOVF9TTFJVX1NZTkMsCi0JV0FJVF9FVkVOVF9TTFJV X1dSSVRFLAotCVdBSVRfRVZFTlRfU05BUEJVSUxEX1JFQUQsCi0JV0FJVF9FVkVOVF9TTkFQ QlVJTERfU1lOQywKLQlXQUlUX0VWRU5UX1NOQVBCVUlMRF9XUklURSwKLQlXQUlUX0VWRU5U X1RJTUVMSU5FX0hJU1RPUllfRklMRV9TWU5DLAotCVdBSVRfRVZFTlRfVElNRUxJTkVfSElT VE9SWV9GSUxFX1dSSVRFLAotCVdBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9SWV9SRUFELAot CVdBSVRfRVZFTlRfVElNRUxJTkVfSElTVE9SWV9TWU5DLAotCVdBSVRfRVZFTlRfVElNRUxJ TkVfSElTVE9SWV9XUklURSwKLQlXQUlUX0VWRU5UX1RXT1BIQVNFX0ZJTEVfUkVBRCwKLQlX QUlUX0VWRU5UX1RXT1BIQVNFX0ZJTEVfU1lOQywKLQlXQUlUX0VWRU5UX1RXT1BIQVNFX0ZJ TEVfV1JJVEUsCi0JV0FJVF9FVkVOVF9WRVJTSU9OX0ZJTEVfV1JJVEUsCi0JV0FJVF9FVkVO VF9XQUxTRU5ERVJfVElNRUxJTkVfSElTVE9SWV9SRUFELAotCVdBSVRfRVZFTlRfV0FMX0JP T1RTVFJBUF9TWU5DLAotCVdBSVRfRVZFTlRfV0FMX0JPT1RTVFJBUF9XUklURSwKLQlXQUlU X0VWRU5UX1dBTF9DT1BZX1JFQUQsCi0JV0FJVF9FVkVOVF9XQUxfQ09QWV9TWU5DLAotCVdB SVRfRVZFTlRfV0FMX0NPUFlfV1JJVEUsCi0JV0FJVF9FVkVOVF9XQUxfSU5JVF9TWU5DLAot CVdBSVRfRVZFTlRfV0FMX0lOSVRfV1JJVEUsCi0JV0FJVF9FVkVOVF9XQUxfUkVBRCwKLQlX QUlUX0VWRU5UX1dBTF9TWU5DLAotCVdBSVRfRVZFTlRfV0FMX1NZTkNfTUVUSE9EX0FTU0lH TiwKLQlXQUlUX0VWRU5UX1dBTF9XUklURQotfSBXYWl0RXZlbnRJTzsKLQorLyogZW51bXMg Zm9yIHdhaXQgZXZlbnRzICovCisjaW5jbHVkZSAidXRpbHMvd2FpdF9ldmVudF90eXBlcy5o IgogCiBleHRlcm4gY29uc3QgY2hhciAqcGdzdGF0X2dldF93YWl0X2V2ZW50KHVpbnQzMiB3 YWl0X2V2ZW50X2luZm8pOwogZXh0ZXJuIGNvbnN0IGNoYXIgKnBnc3RhdF9nZXRfd2FpdF9l dmVudF90eXBlKHVpbnQzMiB3YWl0X2V2ZW50X2luZm8pOwpkaWZmIC0tZ2l0IGEvc3JjL3Rv b2xzL21zdmMvU29sdXRpb24ucG0gYi9zcmMvdG9vbHMvbXN2Yy9Tb2x1dGlvbi5wbQppbmRl eCBlZjEwY2RhNTc2Li41OTYxMzFhYjZiIDEwMDY0NAotLS0gYS9zcmMvdG9vbHMvbXN2Yy9T b2x1dGlvbi5wbQorKysgYi9zcmMvdG9vbHMvbXN2Yy9Tb2x1dGlvbi5wbQpAQCAtNTkxLDYg KzU5MSwyNCBAQCBzdWIgR2VuZXJhdGVGaWxlcwogCQkJJ3NyYy9pbmNsdWRlL3N0b3JhZ2Uv bHdsb2NrbmFtZXMuaCcpOwogCX0KIAorCWlmIChJc05ld2VyKAorCQkJJ3NyYy9pbmNsdWRl L3V0aWxzL3dhaXRfZXZlbnRfdHlwZXMuaCcsCisJCQknc3JjL2JhY2tlbmQvdXRpbHMvYWN0 aXZpdHkvd2FpdGV2ZW50bmFtZXMudHh0JykpCisJeworCQlwcmludCAiR2VuZXJhdGluZyBw Z3N0YXRfd2FpdF9ldmVudC5jIGFuZCB3YWl0X2V2ZW50X3R5cGVzLmguLi5cbiI7CisJCW15 ICRhY3RpdiA9ICdzcmMvYmFja2VuZC91dGlscy9hY3Rpdml0eSc7CisJCXN5c3RlbSgicGVy bCAkYWN0aXYvZ2VuZXJhdGUtd2FpdGV2ZW50bmFtZXMucGwgLS1vdXRkaXIgJGFjdGl2ICRh Y3Rpdi93YWl0ZXZlbnRuYW1lcy50eHQiKTsKKwl9CisKKwlpZiAoSXNOZXdlcigKKwkJCSdz cmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50X3R5cGVzLmgnLAorCQkJJ3NyYy9iYWNrZW5k L3V0aWxzL2FjdGl2aXR5L3dhaXRfZXZlbnRfdHlwZXMuaCcpKQorCXsKKwkJY29weUZpbGUo CisJCQknc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvd2FpdF9ldmVudF90eXBlcy5oJywK KwkJCSdzcmMvaW5jbHVkZS91dGlscy93YWl0X2V2ZW50X3R5cGVzLmgnKTsKKwl9CisKIAlp ZiAoSXNOZXdlcignc3JjL2luY2x1ZGUvdXRpbHMvcHJvYmVzLmgnLCAnc3JjL2JhY2tlbmQv dXRpbHMvcHJvYmVzLmQnKSkKIAl7CiAJCXByaW50ICJHZW5lcmF0aW5nIHByb2Jlcy5oLi4u XG4iOwpkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xzL21zdmMvY2xlYW4uYmF0IGIvc3JjL3Rvb2xz L21zdmMvY2xlYW4uYmF0CmluZGV4IGQwZThiZmJmODYuLjRmMDZlZGM3ZGIgMTAwNzU1Ci0t LSBhL3NyYy90b29scy9tc3ZjL2NsZWFuLmJhdAorKysgYi9zcmMvdG9vbHMvbXN2Yy9jbGVh bi5iYXQKQEAgLTQ3LDYgKzQ3LDcgQEAgaWYgZXhpc3Qgc3JjXGluY2x1ZGVcdXRpbHNcZXJy Y29kZXMuaCBkZWwgL3Egc3JjXGluY2x1ZGVcdXRpbHNcZXJyY29kZXMuaAogaWYgZXhpc3Qg c3JjXGluY2x1ZGVcdXRpbHNcZm1ncm9pZHMuaCBkZWwgL3Egc3JjXGluY2x1ZGVcdXRpbHNc Zm1ncm9pZHMuaAogaWYgZXhpc3Qgc3JjXGluY2x1ZGVcdXRpbHNcZm1ncnByb3Rvcy5oIGRl bCAvcSBzcmNcaW5jbHVkZVx1dGlsc1xmbWdycHJvdG9zLmgKIGlmIGV4aXN0IHNyY1xpbmNs dWRlXHN0b3JhZ2VcbHdsb2NrbmFtZXMuaCBkZWwgL3Egc3JjXGluY2x1ZGVcc3RvcmFnZVxs d2xvY2tuYW1lcy5oCitpZiBleGlzdCBzcmNcaW5jbHVkZVx1dGlsc1x3YWl0X2V2ZW50X3R5 cGVzLmggZGVsIC9xIHNyY1xpbmNsdWRlXHV0aWxzXHdhaXRfZXZlbnRfdHlwZXMuaAogaWYg ZXhpc3Qgc3JjXGluY2x1ZGVcdXRpbHNccHJvYmVzLmggZGVsIC9xIHNyY1xpbmNsdWRlXHV0 aWxzXHByb2Jlcy5oCiBpZiBleGlzdCBzcmNcaW5jbHVkZVxjYXRhbG9nXHNjaGVtYXBnLmgg ZGVsIC9xIHNyY1xpbmNsdWRlXGNhdGFsb2dcc2NoZW1hcGcuaAogaWYgZXhpc3Qgc3JjXGlu Y2x1ZGVcY2F0YWxvZ1xzeXN0ZW1fZmtfaW5mby5oIGRlbCAvcSBzcmNcaW5jbHVkZVxjYXRh bG9nXHN5c3RlbV9ma19pbmZvLmgKQEAgLTU0LDYgKzU1LDggQEAgaWYgZXhpc3Qgc3JjXGlu Y2x1ZGVcY2F0YWxvZ1xwZ18qX2QuaCBkZWwgL3Egc3JjXGluY2x1ZGVcY2F0YWxvZ1xwZ18q X2QuaAogaWYgZXhpc3Qgc3JjXGluY2x1ZGVcY2F0YWxvZ1xoZWFkZXItc3RhbXAgZGVsIC9x IHNyY1xpbmNsdWRlXGNhdGFsb2dcaGVhZGVyLXN0YW1wCiBpZiBleGlzdCBkb2Ncc3JjXHNn bWxcdmVyc2lvbi5zZ21sIGRlbCAvcSBkb2Ncc3JjXHNnbWxcdmVyc2lvbi5zZ21sCiAKK2lm ICVESVNUJT09MSBpZiBleGlzdCBzcmNcYmFja2VuZFx1dGlsc1xhY3Rpdml0eVxwZ3N0YXRf d2FpdF9ldmVudC5jIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xhY3Rpdml0eVxwZ3N0YXRf d2FpdF9ldmVudC5jCitpZiAlRElTVCU9PTEgaWYgZXhpc3Qgc3JjXGJhY2tlbmRcdXRpbHNc YWN0aXZpdHlcd2FpdF9ldmVudF90eXBlcy5oIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xh Y3Rpdml0eVx3YWl0X2V2ZW50X3R5cGVzLmgKIGlmICVESVNUJT09MSBpZiBleGlzdCBzcmNc YmFja2VuZFx1dGlsc1xmbWdyb2lkcy5oIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xmbWdy b2lkcy5oCiBpZiAlRElTVCU9PTEgaWYgZXhpc3Qgc3JjXGJhY2tlbmRcdXRpbHNcZm1ncnBy b3Rvcy5oIGRlbCAvcSBzcmNcYmFja2VuZFx1dGlsc1xmbWdycHJvdG9zLmgKIGlmICVESVNU JT09MSBpZiBleGlzdCBzcmNcYmFja2VuZFx1dGlsc1xmbWdydGFiLmMgZGVsIC9xIHNyY1xi YWNrZW5kXHV0aWxzXGZtZ3J0YWIuYwotLSAKMi4zNC4xCgo= --------------rEJ0bicDLfIZljPKHSoOWFMP--