Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1vGYub-000gxE-OY for pgsql-hackers@arkaria.postgresql.org; Wed, 05 Nov 2025 08:30:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1vGYua-001Dnb-MM for pgsql-hackers@arkaria.postgresql.org; Wed, 05 Nov 2025 08:30:35 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1vGMSm-00GFC4-Pe for pgsql-hackers@lists.postgresql.org; Tue, 04 Nov 2025 19:13:19 +0000 Received: from mail-il1-x12f.google.com ([2607:f8b0:4864:20::12f]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vGMSi-005S9L-0U for pgsql-hackers@lists.postgresql.org; Tue, 04 Nov 2025 19:13:02 +0000 Received: by mail-il1-x12f.google.com with SMTP id e9e14a558f8ab-4330d2ea04eso20605285ab.3 for ; Tue, 04 Nov 2025 11:12:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illuminatedcomputing-com.20230601.gappssmtp.com; s=20230601; t=1762283579; x=1762888379; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=hrBIvc85HEPiSFmD9llRZPq1Y7DnOZZk1na9R01APP4=; b=PHliIg7SQJs1xeIdbzDvJO7+n1xjS9QL7f5tuVqoyr70DgbqdEB/w7UluKngmnZdDB 4LUOoFxIO1pW3Tfv+T4dTqm4jT/olFaRONVyRxjfDG1WScgIcz87wECZJXBxcYoNAiEa 00KjjJrqK5KydqTeCkgjRM9J82HMxVClxw0Spwyg/+fkkX1jhbMp2d6AsPqGw2huMuCW GUMAxYtSisGUdWBSOO6ElFQH5RXTlcaZfk5cCe2Zcg2ydAAyJid7o38I50ytdeTthBOP FZRQIQr0mvy5D1g6uimb3I092D0Nvu7fp0eDD2TksYoX7OWBytMx1t6Z0ERyamt4/rMx +m6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762283579; x=1762888379; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=hrBIvc85HEPiSFmD9llRZPq1Y7DnOZZk1na9R01APP4=; b=jzHyUD9ofKC06MnVLXbzxqhwDDuHRarntKYjKSvvky8yLawjcrVLtLxwgBL6hDWTU6 ktx13J80lgGxMR19dw9+WCo3wXFb7oSJakKS8xUhDFdEG0yeYi/gS1wH6WxcRjHvL4Ku Q1AkDMn1cD+Q6vX5skSNkc5rV9UPI6L1PCO84EBd8+z6rh1HJ6X50lYMz3PQBAhVGmh7 1baaNtR4cte6z7Eoa7NsD4fvQDAngoRW1WwhiBfIakgbR3GUF8AIZEe6dnMdFSCMaoXq StN5wBjYeduqloV/qeEJYOCMc0G4h4/L3rjsTFt12rJnAiOE/TdNikuRa8ZojudM6R+f T3Cw== X-Gm-Message-State: AOJu0Yzgxh04Z3HRRE6TtvnlMa8t+ZpNnAyxkxU0p2O0fX2GwlSRuo2x U7njw/nv5K5PJDU4JqmlwkMcAa8mNxRLZgGHSyErVgF+dgCxnakTN+0pH/O//GZ0wRwWnyGVn58 X3yQTIypfXZpOEKwYAQT2dMhVjyxqnkQr+mKHBJPOV/yzo0xCAVAFZEfgFw== X-Gm-Gg: ASbGncukHU+6NsRutWQiXO1eqH65UaV628+YorJsHDEuyFyk5cu1kevnRNv5/JmnJbA cc2Z/erTRZwjXLwGwIAvFuZC7Q5Zg8kWBPRQHLAQNbdvVmwBX1JM1NhjT9sm2s+my4cBLbiFQGk hydYfYS0mMnCIuJ0/EonmgG8XKgisVWT8x9W6krI96WozhPnM30FYafLWiiYyTHT2Appn1kU3wk 67v3R/Y1bCo+kFZXy8VBznr7qIj4IfSAa5Mh3o5BhGIXZMuPLWogdG35eWb8MwETjDf X-Google-Smtp-Source: AGHT+IF4vm3nxhGc0hT5MopZ4360Yl6OdzDr2QRHScnrh/rkWeG4n0/c7da+JYnqLg2uHC94ifBULNIT7nGpqLOasnw= X-Received: by 2002:a05:6e02:144a:b0:433:2091:8a86 with SMTP id e9e14a558f8ab-4334076012amr7481285ab.6.1762283578678; Tue, 04 Nov 2025 11:12:58 -0800 (PST) MIME-Version: 1.0 References: <2f5364f3-a1d3-4410-98f3-d788b11e6525@eisentraut.org> In-Reply-To: From: Paul A Jungwirth Date: Tue, 4 Nov 2025 11:12:46 -0800 X-Gm-Features: AWmQ_bm-Y33LfQzmm0NhEbTXG47duP2zl1oJ3a3mJLtX2ROp7XzKCf-_KVmHysk Message-ID: Subject: Re: SQL:2011 Application Time Update & Delete To: Peter Eisentraut Cc: PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000b399200642c99eb2" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000b399200642c99eb2 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Oct 29, 2025 at 11:02=E2=80=AFPM Paul A Jungwirth wrote: > > On Tue, Oct 28, 2025 at 3:49=E2=80=AFAM Peter Eisentraut wrote: > > On 24.10.25 19:08, Paul A Jungwirth wrote: > > > The first 3 doc patches all apply to features that we released in v18= , > > > so it would be nice to get those reviewed/merged soon if possible. > > > > I have looked through the documentation patches 0001 through 0003. > > Thanks for taking a look! New patches attached; details below. Hi Hackers, Here is another set of patches. I added isolation tests for FOR PORTION OF. In REPEATABLE READ and SERIALIZABLE you get easy-to-predict results. In READ COMMITTED you get a lot of lost updates/deletes, because the second operation doesn't see the leftovers created by the first (and sometimes the first operation changes the start/end times in a way that EvalPlanQual no longer sees the being-changed row either). I think those results make sense, if you think step-by-step what Postgres is doing, but they are not really what a user wants. I tested the same sequences in MariaDB, and they also gave nonsense results, although not always the same nonsense as Postgres. At UNCOMMITTED READ it actually gave the results you'd want, but at that level I assume you will have other problems. I also tested DB2. It doesn't have READ COMMITTED, but I think READ STABILITY is the closest. At that level (as well as CURSOR STABILITY and REPEATABLE READ), you get correct results. Back to Postgres, you can get "desired" results IN READ COMMITTED by explicitly locking rows (with SELECT FOR UPDATE) just before updating/deleting them. Since you acquire the lock before the update/delete starts, there can be no new leftovers created within that span of history, and the update/delete sees everything that is there. The same approach also gives correct results in MariaDB. I think it is just the way you have to do things with temporal tables in READ COMMITTED whenever you expect concurrent updates to the same history. I considered whether we should make EvalPlanQual (or something else) automatically rescan for leftovers when it's a temporal operation. Then you wouldn't have to explicitly lock anything. But it seems like that is more than the isolation level "contract", and maybe even plain violates it (but arguably not, if you say the update shouldn't *start* until the other session commits). But since there is a workaround, and since other RDBMSes also scramble temporal data in READ COMMITTED, and since it is a lot of work and seems tricky, I didn't attempt it. Another idea (or maybe nearly the same thing) would be to automatically do the same thing that SELECT FOR UPDATE is doing, whenever we see a FOR PORTION OF DML command---i.e. scan for rows and lock them first, then do the update. But that has similar issues. If it adds locks the user doesn't expect, is it really the right thing? And it means users pay the cost even when no concurrency is expected. It offers strictly fewer options than requiring users to do SELECT FOR UPDATE explicitly. The isolation tests are a separate patch for now, because they felt like a significant chunk, and I wanted to emphasize them, but really they should be part of the main FOR PORTION OF commit. Probably I'll squash them in future submissions. That patch also makes some small updates to a comment in ExecForPortionOf and the docs for UPDATE/DELETE FOR PORTION OF, to raise awareness of the READ COMMITTED issues. Rebased to 65f4976189. Yours, --=20 Paul ~{:-) pj@illuminatedcomputing.com --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0003-Document-temporal-update-delete.patch" Content-Disposition: attachment; filename="v59-0003-Document-temporal-update-delete.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk492 RnJvbSAyNDhmOTY5ODg1ZTU5ZDQ3YzE3ZmRjYzBhZTQxMTExODgwMmMyZDFjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMTcgSnVuIDIwMjUgMjE6Mzg6NDAgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwMy8xMV0gRG9jdW1lbnQgdGVtcG9yYWwgdXBkYXRlL2RlbGV0ZQoKVGhl IEZPUiBQT1JUSU9OIE9GIHN5bnRheCB3aWxsIGFsc28gYmUgZG9jdW1lbnRlZCBpbiB0aGUgcmVm ZXJlbmNlIHBhZ2VzCmZvciBVUERBVEUgYW5kIERFTEVURSwgYnV0IHRoaXMgY29tbWl0IGFkZHMg YSBuZXcgc2VjdGlvbiB0byB0aGUgRE1MIGNoYXB0ZXIsCmNhbGxlZCAiVXBkYXRpbmcgYW5kIERl bGV0aW5nIFRlbXBvcmFsIERhdGEsIiBnaXZpbmcgYSBjb25jZXB0dWFsIGRlc2NyaXB0aW9uLAph cyB3ZWxsIGFzIGEgZ2xvc3NhcnkgdGVybSBmb3IgInRlbXBvcmFsIGxlZnRvdmVycyIuIFRoZSBT UUwgc3RhbmRhcmQgZG9lc24ndApnaXZlIGFueSB0ZXJtIGZvciB0aGUgc3VwcGxlbWVudGFyeSBJ TlNFUlRzIGFmdGVyIGFuIFVQREFURS9ERUxFVEUgRk9SIFBPUlRJT04KT0YsIGJ1dCBpdCBpcyBy ZWFsbHkgaGFuZHkgdG8gaGF2ZSBhIG5hbWUgZm9yIHRoZW0uCgpBdXRob3I6IFBhdWwgQS4gSnVu Z3dpcnRoIDxwakBpbGx1bWluYXRlZGNvbXB1dGluZy5jb20+Ci0tLQogZG9jL3NyYy9zZ21sL2Rt bC5zZ21sICAgICAgICAgICAgICAgICAgIHwgMTQwICsrKysrKysrKysrKysrKysrKysrKysrKwog ZG9jL3NyYy9zZ21sL2dsb3NzYXJ5LnNnbWwgICAgICAgICAgICAgIHwgIDE1ICsrKwogZG9jL3Ny Yy9zZ21sL2ltYWdlcy9NYWtlZmlsZSAgICAgICAgICAgIHwgICA0ICstCiBkb2Mvc3JjL3NnbWwv aW1hZ2VzL3RlbXBvcmFsLWRlbGV0ZS5zdmcgfCAgNDEgKysrKysrKwogZG9jL3NyYy9zZ21sL2lt YWdlcy90ZW1wb3JhbC1kZWxldGUudHh0IHwgIDEyICsrCiBkb2Mvc3JjL3NnbWwvaW1hZ2VzL3Rl bXBvcmFsLXVwZGF0ZS5zdmcgfCAgNDUgKysrKysrKysKIGRvYy9zcmMvc2dtbC9pbWFnZXMvdGVt cG9yYWwtdXBkYXRlLnR4dCB8ICAxMiArKwogNyBmaWxlcyBjaGFuZ2VkLCAyNjggaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9zcmMvc2dtbC9pbWFn ZXMvdGVtcG9yYWwtZGVsZXRlLnN2ZwogY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9zcmMvc2dtbC9p bWFnZXMvdGVtcG9yYWwtZGVsZXRlLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9zcmMvc2dt bC9pbWFnZXMvdGVtcG9yYWwtdXBkYXRlLnN2ZwogY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9zcmMv c2dtbC9pbWFnZXMvdGVtcG9yYWwtdXBkYXRlLnR4dAoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dt bC9kbWwuc2dtbCBiL2RvYy9zcmMvc2dtbC9kbWwuc2dtbAppbmRleCA0NThhZWU3ODhiNy4uYTg5 OWM5YWI0NDcgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9kbWwuc2dtbAorKysgYi9kb2Mvc3Jj L3NnbWwvZG1sLnNnbWwKQEAgLTI2MSw2ICsyNjEsMTQ2IEBAIERFTEVURSBGUk9NIHByb2R1Y3Rz OwogICA8L3BhcmE+CiAgPC9zZWN0MT4KIAorIDxzZWN0MSBpZD0iZG1sLWFwcGxpY2F0aW9uLXRp bWUtdXBkYXRlLWRlbGV0ZSI+CisgIDx0aXRsZT5VcGRhdGluZyBhbmQgRGVsZXRpbmcgVGVtcG9y YWwgRGF0YTwvdGl0bGU+CisKKyAgPHBhcmE+CisgICBTcGVjaWFsIHN5bnRheCBpcyBhdmFpbGFi bGUgdG8gdXBkYXRlIGFuZCBkZWxldGUgZnJvbSA8bGluaworICAgbGlua2VuZD0iZGRsLWFwcGxp Y2F0aW9uLXRpbWUiPmFwcGxpY2F0aW9uLXRpbWUgdGVtcG9yYWwgdGFibGVzPC9saW5rPi4gKE5v CisgICBleHRyYSBzeW50YXggaXMgcmVxdWlyZWQgdG8gaW5zZXJ0IGludG8gdGhlbTogdGhlIHVz ZXIganVzdAorICAgcHJvdmlkZXMgdGhlIGFwcGxpY2F0aW9uIHRpbWUgbGlrZSBhbnkgb3RoZXIg YXR0cmlidXRlLikgV2hlbiB1cGRhdGluZworICAgb3IgZGVsZXRpbmcsIHRoZSB1c2VyIGNhbiB0 YXJnZXQgYSBzcGVjaWZpYyBwb3J0aW9uIG9mIGhpc3RvcnkuIE9ubHkKKyAgIHJvd3Mgb3Zlcmxh cHBpbmcgdGhhdCBoaXN0b3J5IGFyZSBhZmZlY3RlZCwgYW5kIHdpdGhpbiB0aG9zZSByb3dzIG9u bHkKKyAgIHRoZSB0YXJnZXRlZCBoaXN0b3J5IGlzIGNoYW5nZWQuIElmIGEgcm93IGNvbnRhaW5z IG1vcmUgaGlzdG9yeSBiZXlvbmQKKyAgIHdoYXQgaXMgdGFyZ2V0ZWQsIGl0cyBhcHBsaWNhdGlv biB0aW1lIGlzIHJlZHVjZWQgdG8gZml0IHdpdGhpbiB0aGUKKyAgIHRhcmdldGVkIGludGVydmFs LCBhbmQgbmV3IHJvd3MgYXJlIGluc2VydGVkIHRvIHByZXNlcnZlIHRoZSBoaXN0b3J5CisgICB0 aGF0IHdhcyBub3QgdGFyZ2V0ZWQuCisgIDwvcGFyYT4KKworICA8cGFyYT4KKyAgIFJlY2FsbCB0 aGUgZXhhbXBsZSB0YWJsZSBmcm9tIDx4cmVmIGxpbmtlbmQ9InRlbXBvcmFsLWVudGl0aWVzLWZp Z3VyZSIgLz4sCisgICBjb250YWluaW5nIHRoaXMgZGF0YToKKworPHByb2dyYW1saXN0aW5nPgor IGlkIHwgcHJpY2UgfCAgICAgICAgdmFsaWRfYXQKKy0tLS0rLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCisgIDUgfCAgICAgNSB8IFsyMDIwLTAxLTAxLDIwMjItMDEtMDEpCisgIDUg fCAgICAgOCB8IFsyMDIyLTAxLTAxLCkKKyAgNiB8ICAgICA5IHwgWzIwMjEtMDEtMDEsMjAyNC0w MS0wMSkKKzwvcHJvZ3JhbWxpc3Rpbmc+CisKKyAgIEEgdGVtcG9yYWwgdXBkYXRlIG1pZ2h0IGxv b2sgbGlrZSB0aGlzOgorCis8cHJvZ3JhbWxpc3Rpbmc+CitVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyMy0wOS0wMScgVE8gJzIwMjUtMDMtMDEnCisg IEFTIHAKKyAgU0VUIHByaWNlID0gMTIKKyAgV0hFUkUgaWQgPSA1OworPC9wcm9ncmFtbGlzdGlu Zz4KKworICAgVGhhdCBjb21tYW5kIHdpbGwgdXBkYXRlIHRoZSBzZWNvbmQgcmVjb3JkIGZvciBw cm9kdWN0IDUuIEl0IHdpbGwgc2V0IHRoZQorICAgcHJpY2UgdG8gMTIgYW5kCisgICB0aGUgYXBw bGljYXRpb24gdGltZSB0byA8bGl0ZXJhbD5bMjAyMy0wOS0wMSwyMDI1LTAzLTAxKTwvbGl0ZXJh bD4uCisgICBUaGVuLCBzaW5jZSB0aGUgcm93J3MgYXBwbGljYXRpb24gdGltZSB3YXMgb3JpZ2lu YWxseQorICAgPGxpdGVyYWw+WzIwMjItMDEtMDEsKTwvbGl0ZXJhbD4sIHRoZSBjb21tYW5kIG11 c3QgaW5zZXJ0IHR3bworICAgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10ZW1wb3JhbC1s ZWZ0b3ZlcnMiPnRlbXBvcmFsCisgICBsZWZ0b3ZlcnM8L2dsb3NzdGVybT46IG9uZSBmb3IgaGlz dG9yeSBiZWZvcmUgU2VwdGVtYmVyIDEsIDIwMjMsIGFuZAorICAgYW5vdGhlciBmb3IgaGlzdG9y eSBzaW5jZSBNYXJjaCAxLCAyMDI1LiBBZnRlciB0aGUgdXBkYXRlLCB0aGUgdGFibGUKKyAgIGhh cyBmb3VyIHJvd3MgZm9yIHByb2R1Y3QgNToKKworPHByb2dyYW1saXN0aW5nPgorIGlkIHwgcHJp Y2UgfCAgICAgICAgdmFsaWRfYXQKKy0tLS0rLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgIDUgfCAgICAgNSB8IFsyMDIwLTAxLTAxLDIwMjItMDEtMDEpCisgIDUgfCAgICAgOCB8 IFsyMDIyLTAxLTAxLDIwMjMtMDktMDEpCisgIDUgfCAgICAxMiB8IFsyMDIzLTA5LTAxLDIwMjUt MDMtMDEpCisgIDUgfCAgICAgOCB8IFsyMDI1LTAzLTAxLCkKKzwvcHJvZ3JhbWxpc3Rpbmc+CisK KyAgIFRoZSBuZXcgaGlzdG9yeSBjb3VsZCBiZSBwbG90dGVkIGFzIGluIDx4cmVmIGxpbmtlbmQ9 InRlbXBvcmFsLXVwZGF0ZS1maWd1cmUiLz4uCisgIDwvcGFyYT4KKworICA8ZmlndXJlIGlkPSJ0 ZW1wb3JhbC11cGRhdGUtZmlndXJlIj4KKyAgIDx0aXRsZT5UZW1wb3JhbCBVcGRhdGUgRXhhbXBs ZTwvdGl0bGU+CisgICA8bWVkaWFvYmplY3Q+CisgICAgPGltYWdlb2JqZWN0PgorICAgICA8aW1h Z2VkYXRhIGZpbGVyZWY9ImltYWdlcy90ZW1wb3JhbC11cGRhdGUuc3ZnIiBmb3JtYXQ9IlNWRyIg d2lkdGg9IjEwMCUiLz4KKyAgICA8L2ltYWdlb2JqZWN0PgorICAgPC9tZWRpYW9iamVjdD4KKyAg PC9maWd1cmU+CisKKyAgPHBhcmE+CisgICBTaW1pbGFybHksIGEgc3BlY2lmaWMgcG9ydGlvbiBv ZiBoaXN0b3J5IG1heSBiZSB0YXJnZXRlZCB3aGVuCisgICBkZWxldGluZyByb3dzIGZyb20gYSB0 YWJsZS4gSW4gdGhhdCBjYXNlLCB0aGUgb3JpZ2luYWwgcm93cyBhcmUKKyAgIHJlbW92ZWQsIGJ1 dCBuZXcKKyAgIDxnbG9zc3Rlcm0gbGlua2VuZD0iZ2xvc3NhcnktdGVtcG9yYWwtbGVmdG92ZXJz Ij50ZW1wb3JhbCBsZWZ0b3ZlcnM8L2dsb3NzdGVybT4KKyAgIGFyZSBpbnNlcnRlZCB0byBwcmVz ZXJ2ZSB0aGUgdW50b3VjaGVkIGhpc3RvcnkuIFRoZSBzeW50YXggZm9yIGEKKyAgIHRlbXBvcmFs IGRlbGV0ZSBpczoKKworPHByb2dyYW1saXN0aW5nPgorREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyMS0wOC0wMScgVE8gJzIwMjMtMDktMDEn CisgIEFTIHAKK1dIRVJFIGlkID0gNTsKKzwvcHJvZ3JhbWxpc3Rpbmc+CisKKyAgIENvbnRpbnVp bmcgdGhlIGV4YW1wbGUsIHRoaXMgY29tbWFuZCB3b3VsZCBkZWxldGUgdHdvIHJlY29yZHMuIFRo ZQorICAgZmlyc3QgcmVjb3JkIHdvdWxkIHlpZWxkIGEgc2luZ2xlIHRlbXBvcmFsIGxlZnRvdmVy LCBhbmQgdGhlIHNlY29uZAorICAgd291bGQgYmUgZGVsZXRlZCBlbnRpcmVseS4gVGhlIHJvd3Mg Zm9yIHByb2R1Y3QgNSB3b3VsZCBub3cgYmU6CisKKzxwcm9ncmFtbGlzdGluZz4KKyBpZCB8IHBy aWNlIHwgICAgICAgIHZhbGlkX2F0CistLS0tKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQorICA1IHwgICAgIDUgfCBbMjAyMC0wMS0wMSwyMDIxLTA4LTAxKQorICA1IHwgICAgMTIg fCBbMjAyMy0wOS0wMSwyMDI1LTAzLTAxKQorICA1IHwgICAgIDggfCBbMjAyNS0wMy0wMSwpCis8 L3Byb2dyYW1saXN0aW5nPgorCisgICBUaGUgbmV3IGhpc3RvcnkgY291bGQgYmUgcGxvdHRlZCBh cyBpbiA8eHJlZiBsaW5rZW5kPSJ0ZW1wb3JhbC1kZWxldGUtZmlndXJlIi8+LgorICA8L3BhcmE+ CisKKyAgPGZpZ3VyZSBpZD0idGVtcG9yYWwtZGVsZXRlLWZpZ3VyZSI+CisgICA8dGl0bGU+VGVt cG9yYWwgRGVsZXRlIEV4YW1wbGU8L3RpdGxlPgorICAgPG1lZGlhb2JqZWN0PgorICAgIDxpbWFn ZW9iamVjdD4KKyAgICAgPGltYWdlZGF0YSBmaWxlcmVmPSJpbWFnZXMvdGVtcG9yYWwtZGVsZXRl LnN2ZyIgZm9ybWF0PSJTVkciIHdpZHRoPSIxMDAlIi8+CisgICAgPC9pbWFnZW9iamVjdD4KKyAg IDwvbWVkaWFvYmplY3Q+CisgIDwvZmlndXJlPgorCisgIDxwYXJhPgorICAgSW5zdGVhZCBvZiB1 c2luZyB0aGUgPGxpdGVyYWw+RlJPTSAuLi4gVE8gLi4uPC9saXRlcmFsPiBzeW50YXgsCisgICB0 ZW1wb3JhbCB1cGRhdGUvZGVsZXRlIGNvbW1hbmRzIGNhbiBhbHNvIGdpdmUgdGhlIHRhcmdldGVk CisgICByYW5nZS9tdWx0aXJhbmdlIGRpcmVjdGx5LCBpbnNpZGUgcGFyZW50aGVzZXMuIEZvciBl eGFtcGxlOgorICAgPGxpdGVyYWw+REVMRVRFIEZST00gcHJvZHVjdHMgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgKCdbMjAyOC0wMS0wMSwpJykgLi4uPC9saXRlcmFsPi4KKyAgIFRoaXMgc3ludGF4 IGlzIHJlcXVpcmVkIHdoZW4gYXBwbGljYXRpb24gdGltZSBpcyBzdG9yZWQKKyAgIGluIGEgbXVs dGlyYW5nZSBjb2x1bW4uCisgIDwvcGFyYT4KKworICA8cGFyYT4KKyAgIFdoZW4gYXBwbGljYXRp b24gdGltZSBpcyBzdG9yZWQgaW4gYSByYW5nZXR5cGUgY29sdW1uLCB6ZXJvLCBvbmUgb3IKKyAg IHR3byB0ZW1wb3JhbCBsZWZ0b3ZlcnMgYXJlIHByb2R1Y2VkIGJ5IGVhY2ggcm93IHRoYXQgaXMK KyAgIHVwZGF0ZWQvZGVsZXRlZC4gV2l0aCBhIG11bHRpcmFuZ2UgY29sdW1uLCBvbmx5IHplcm8g b3Igb25lIHRlbXBvcmFsCisgICBsZWZ0b3ZlciBpcyBwcm9kdWNlZC4gVGhlIGxlZnRvdmVyIGJv dW5kcyBhcmUgY29tcHV0ZWQgdXNpbmcKKyAgIDxsaXRlcmFsPnJhbmdlX21pbnVzX211bHRpPC9s aXRlcmFsPiBhbmQKKyAgIDxsaXRlcmFsPm11bHRpcmFuZ2VfbWludXNfbXVsdGk8L2xpdGVyYWw+ CisgICAoc2VlIDx4cmVmIGxpbmtlbmQ9ImZ1bmN0aW9ucy1yYW5nZSIvPikuCisgIDwvcGFyYT4K KworICA8cGFyYT4KKyAgIFRoZSBib3VuZHMgZ2l2ZW4gdG8gPGxpdGVyYWw+Rk9SIFBPUlRJT04g T0Y8L2xpdGVyYWw+IG11c3QgYmUKKyAgIGNvbnN0YW50LiBGdW5jdGlvbnMgbGlrZSA8bGl0ZXJh bD5OT1coKTwvbGl0ZXJhbD4gYXJlIGFsbG93ZWQsIGJ1dAorICAgY29sdW1uIHJlZmVyZW5jZXMg YXJlIG5vdC4KKyAgPC9wYXJhPgorCisgIDxwYXJhPgorICAgV2hlbiB0ZW1wb3JhbCBsZWZ0b3Zl cnMgYXJlIGluc2VydGVkLCBhbGwgPGxpdGVyYWw+SU5TRVJUPC9saXRlcmFsPgorICAgdHJpZ2dl cnMgYXJlIGZpcmVkLCBidXQgcGVybWlzc2lvbiBjaGVja3MgZm9yIGluc2VydGluZyByb3dzIGFy ZQorICAgc2tpcHBlZC4KKyAgPC9wYXJhPgorIDwvc2VjdDE+CisKICA8c2VjdDEgaWQ9ImRtbC1y ZXR1cm5pbmciPgogICA8dGl0bGU+UmV0dXJuaW5nIERhdGEgZnJvbSBNb2RpZmllZCBSb3dzPC90 aXRsZT4KIApkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2dsb3NzYXJ5LnNnbWwgYi9kb2Mvc3Jj L3NnbWwvZ2xvc3Nhcnkuc2dtbAppbmRleCBhNzZjZjVjMzgzZi4uMWY3NGRjYTU4OTcgMTAwNjQ0 Ci0tLSBhL2RvYy9zcmMvc2dtbC9nbG9zc2FyeS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9nbG9z c2FyeS5zZ21sCkBAIC0xOTE2LDYgKzE5MTYsMjEgQEAKICAgIDwvZ2xvc3NkZWY+CiAgIDwvZ2xv c3NlbnRyeT4KIAorICA8Z2xvc3NlbnRyeSBpZD0iZ2xvc3NhcnktdGVtcG9yYWwtbGVmdG92ZXJz Ij4KKyAgIDxnbG9zc3Rlcm0+VGVtcG9yYWwgbGVmdG92ZXJzPC9nbG9zc3Rlcm0+CisgICA8Z2xv c3NkZWY+CisgICAgPHBhcmE+CisgICAgIEFmdGVyIGEgdGVtcG9yYWwgdXBkYXRlIG9yIGRlbGV0 ZSwgdGhlIHBvcnRpb24gb2YgaGlzdG9yeSB0aGF0IHdhcyBub3QKKyAgICAgdXBkYXRlZC9kZWxl dGVkLiBXaGVuIHVzaW5nIHJhbmdlcyB0byB0cmFjayBhcHBsaWNhdGlvbiB0aW1lLCB0aGVyZSBt YXkgYmUKKyAgICAgemVybywgb25lLCBvciB0d28gc3RyZXRjaGVzIG9mIGhpc3RvcnkgdGhhdCB3 aGVyZSBub3QgdXBkYXRlZC9kZWxldGVkCisgICAgIChiZWZvcmUgYW5kL29yIGFmdGVyIHRoZSBw b3J0aW9uIHRoYXQgd2FzIHVwZGF0ZWQvZGVsZXRlZCkuIE5ldyByb3dzIGFyZQorICAgICBhdXRv bWF0aWNhbGx5IGluc2VydGVkIGludG8gdGhlIHRhYmxlIHRvIHByZXNlcnZlIHRoYXQgaGlzdG9y eS4gQSBzaW5nbGUKKyAgICAgbXVsdGlyYW5nZSBjYW4gYWNjb21tb2RhdGUgdGhlIHVudG91Y2hl ZCBoaXN0b3J5IGJlZm9yZSBhbmQgYWZ0ZXIgdGhlCisgICAgIHVwZGF0ZS9kZWxldGUsIHNvIHRo ZXJlIHdpbGwgYmUgb25seSB6ZXJvIG9yIG9uZSBsZWZ0b3Zlci4KKyAgICA8L3BhcmE+CisgICA8 L2dsb3NzZGVmPgorICA8L2dsb3NzZW50cnk+CisKICAgPGdsb3NzZW50cnkgaWQ9Imdsb3NzYXJ5 LXRlbXBvcmFsLXRhYmxlIj4KICAgIDxnbG9zc3Rlcm0+VGVtcG9yYWwgdGFibGU8L2dsb3NzdGVy bT4KICAgIDxnbG9zc2RlZj4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9pbWFnZXMvTWFrZWZp bGUgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL01ha2VmaWxlCmluZGV4IGZkNTViOWFkMjNmLi4zOGY4 ODY5ZDc4ZCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2ltYWdlcy9NYWtlZmlsZQorKysgYi9k b2Mvc3JjL3NnbWwvaW1hZ2VzL01ha2VmaWxlCkBAIC03LDcgKzcsOSBAQCBBTExfSU1BR0VTID0g XAogCWdpbi5zdmcgXAogCXBhZ2VsYXlvdXQuc3ZnIFwKIAl0ZW1wb3JhbC1lbnRpdGllcy5zdmcg XAotCXRlbXBvcmFsLXJlZmVyZW5jZXMuc3ZnCisJdGVtcG9yYWwtcmVmZXJlbmNlcy5zdmcgXAor CXRlbXBvcmFsLXVwZGF0ZS5zdmcgXAorCXRlbXBvcmFsLWRlbGV0ZS5zdmcKIAogRElUQUEgPSBk aXRhYQogRE9UID0gZG90CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFs LWRlbGV0ZS5zdmcgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLWRlbGV0ZS5zdmcKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjJkOGIxZDZlYzdiCi0tLSAvZGV2 L251bGwKKysrIGIvZG9jL3NyYy9zZ21sL2ltYWdlcy90ZW1wb3JhbC1kZWxldGUuc3ZnCkBAIC0w LDAgKzEsNDEgQEAKKzw/eG1sIHZlcnNpb249IjEuMCI/PgorPHN2ZyB4bWxucz0iaHR0cDovL3d3 dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMzMwIDIyNCIgd2lkdGg9IjEzMzAiIGhl aWdodD0iMjI0IiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiIgdmVyc2lvbj0i MS4wIj4KKyAgPGRlZnM+CisgICAgPGZpbHRlciBpZD0iZjIiIHg9IjAiIHk9IjAiIHdpZHRoPSIy MDAlIiBoZWlnaHQ9IjIwMCUiPgorICAgICAgPGZlT2Zmc2V0IHJlc3VsdD0ib2ZmT3V0IiBpbj0i U291cmNlR3JhcGhpYyIgZHg9IjUiIGR5PSI1Ii8+CisgICAgICA8ZmVHYXVzc2lhbkJsdXIgcmVz dWx0PSJibHVyT3V0IiBpbj0ib2ZmT3V0IiBzdGREZXZpYXRpb249IjMiLz4KKyAgICAgIDxmZUJs ZW5kIGluPSJTb3VyY2VHcmFwaGljIiBpbjI9ImJsdXJPdXQiIG1vZGU9Im5vcm1hbCIvPgorICAg IDwvZmlsdGVyPgorICA8L2RlZnM+CisgIDxnIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVj YXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CisgICAgPHJlY3QgeD0iMCIgeT0i MCIgd2lkdGg9IjEzMzAiIGhlaWdodD0iMjI0IiBzdHlsZT0iZmlsbDogI2ZmZmZmZiIvPgorICAg IDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxp bmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIjOTlkZDk5IiBkPSJN Njg1LjAgNjMuMCBMNjg1LjAgMTQ3LjAgTDEwMDUuMCAxNDcuMCBMMTAwNS4wIDYzLjAgeiIvPgor ICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tl LWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIjOTlkZDk5IiBk PSJNMzE1LjAgNjMuMCBMMzE1LjAgMTQ3LjAgTDI1LjAgMTQ3LjAgTDI1LjAgNjMuMCB6Ii8+Cisg ICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2Ut bGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9IiM5OWRkOTkiIGQ9 Ik0xMDA1LjAgNjMuMCBMMTAwNS4wIDE0Ny4wIEwxMjc1LjAgMTQ3LjAgTDEyNzUuMCA2My4wIHoi Lz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0 cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIg ZD0iTTIwNS4wIDE2OC4wIEwyMDUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAw MDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tl LWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTI1LjAgMTY4LjAgTDI1LjAgMTgxLjAg Ii8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBz dHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUi IGQ9Ik0zODUuMCAxNjguMCBMMzg1LjAgMTgxLjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAw MDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9r ZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIGQ9Ik01NjUuMCAxNjguMCBMNTY1LjAgMTgx LjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAw IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5v bmUiIGQ9Ik03NDUuMCAxNjguMCBMNzQ1LjAgMTgxLjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIj MDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0 cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIGQ9Ik05MjUuMCAxNjguMCBMOTI1LjAg MTgxLjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAw MDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9 Im5vbmUiIGQ9Ik0xMTA1LjAgMTY4LjAgTDExMDUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJv a2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3Vu ZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTEyODUuMCAxNjguMCBM MTI4NS4wIDE4MS4wICIvPgorICAgIDx0ZXh0IHg9IjQ2IiB5PSI5NiIgZm9udC1mYW1pbHk9IkNv dXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+cHJvZHVj dHM8L3RleHQ+CisgICAgPHRleHQgeD0iNDAiIHk9IjExMCIgZm9udC1mYW1pbHk9IkNvdXJpZXIi IGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+KDUsIDUuMDAsPC90 ZXh0PgorICAgIDx0ZXh0IHg9IjgzIiB5PSIxMjQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250 LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPlsxIEphbiAyMDIwLDEgQXVn IDIwMjEpKTwvdGV4dD4KKyAgICA8dGV4dCB4PSIyMCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291 cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIwPC90 ZXh0PgorICAgIDx0ZXh0IHg9IjIwMCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9u dC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIxPC90ZXh0PgorICAg IDx0ZXh0IHg9IjM4MCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIx NSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIyPC90ZXh0PgorICAgIDx0ZXh0IHg9 IjU2MCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tl PSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIzPC90ZXh0PgorICAgIDx0ZXh0IHg9IjcwNiIgeT0i OTYiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZp bGw9IiMwMDAwMDAiPnByb2R1Y3RzPC90ZXh0PgorICAgIDx0ZXh0IHg9IjcwMCIgeT0iMTEwIiBm b250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIj MDAwMDAwIj4oNSwgMTIuMDAsPC90ZXh0PgorICAgIDx0ZXh0IHg9Ijc0MyIgeT0iMTI0IiBmb250 LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAw MDAwIj5bMSBTZXAgMjAyMywxIE1hciAyMDI1KSk8L3RleHQ+CisgICAgPHRleHQgeD0iNzQwIiB5 PSIxOTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUi IGZpbGw9IiMwMDAwMDAiPjIwMjQ8L3RleHQ+CisgICAgPHRleHQgeD0iOTIwIiB5PSIxOTQiIGZv bnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMw MDAwMDAiPjIwMjU8L3RleHQ+CisgICAgPHRleHQgeD0iMTAyNiIgeT0iOTYiIGZvbnQtZmFtaWx5 PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPnBy b2R1Y3RzPC90ZXh0PgorICAgIDx0ZXh0IHg9IjEwMjAiIHk9IjExMCIgZm9udC1mYW1pbHk9IkNv dXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+KDUsIDgu MDAsPC90ZXh0PgorICAgIDx0ZXh0IHg9IjEwNTYiIHk9IjEyNCIgZm9udC1mYW1pbHk9IkNvdXJp ZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+WzEgTWFyIDIw MjUsKSk8L3RleHQ+CisgICAgPHRleHQgeD0iMTEwMCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291 cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDI2PC90 ZXh0PgorICAgIDx0ZXh0IHg9IjEyODkiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZv bnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+Li4uPC90ZXh0PgorICA8 L2c+Cis8L3N2Zz4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtZGVs ZXRlLnR4dCBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtZGVsZXRlLnR4dApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNjExZGY1MjE1NjkKLS0tIC9kZXYvbnVs bAorKysgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLWRlbGV0ZS50eHQKQEAgLTAsMCAr MSwxMiBAQAorCisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBjR1JFICAgICAgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBjR1JFICAgICAgICAgICAgICAg ICAgICAgICAgICB8IGNHUkUgICAgICAgICAgICAgICAgICAgICB8Cit8IHByb2R1Y3RzICAgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHByb2R1 Y3RzICAgICAgICAgICAgICAgICAgICAgIHwgcHJvZHVjdHMgICAgICAgICAgICAgICAgIHwKK3wg KDUsIDUuMDAsICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgKDUsIDEyLjAwLCAgICAgICAgICAgICAgICAgICAgfCAoNSwgOC4wMCwgICAgICAg ICAgICAgICAgfAorfCAgIFsxIEphbiAyMDIwLDEgQXVnIDIwMjEpKSB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgIFsxIFNlcCAyMDIzLDEgTWFyIDIwMjUpKSAgICB8ICAg WzEgTWFyIDIwMjUsKSkgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCit8 ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICB8ICAg ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgICB8CisyMDIwICAgICAgICAgICAgICAyMDIxICAgICAgICAgICAgICAyMDIyICAg ICAgICAgICAgICAyMDIzICAgICAgICAgICAgICAyMDI0ICAgICAgICAgICAgICAyMDI1ICAgICAg ICAgICAgICAyMDI2ICAgICAgICAgICAgICAuLi4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9p bWFnZXMvdGVtcG9yYWwtdXBkYXRlLnN2ZyBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwt dXBkYXRlLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNmM3YzQz YzhkMjIKLS0tIC9kZXYvbnVsbAorKysgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLXVw ZGF0ZS5zdmcKQEAgLTAsMCArMSw0NSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8c3ZnIHht bG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEzMzAgMjI0IiB3 aWR0aD0iMTMzMCIgaGVpZ2h0PSIyMjQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lz aW9uIiB2ZXJzaW9uPSIxLjAiPgorICA8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmMiIgeD0iMCIg eT0iMCIgd2lkdGg9IjIwMCUiIGhlaWdodD0iMjAwJSI+CisgICAgICA8ZmVPZmZzZXQgcmVzdWx0 PSJvZmZPdXQiIGluPSJTb3VyY2VHcmFwaGljIiBkeD0iNSIgZHk9IjUiLz4KKyAgICAgIDxmZUdh dXNzaWFuQmx1ciByZXN1bHQ9ImJsdXJPdXQiIGluPSJvZmZPdXQiIHN0ZERldmlhdGlvbj0iMyIv PgorICAgICAgPGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iYmx1ck91dCIgbW9kZT0i bm9ybWFsIi8+CisgICAgPC9maWx0ZXI+CisgIDwvZGVmcz4KKyAgPGcgc3Ryb2tlLXdpZHRoPSIx IiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KKyAgICA8 cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTMzMCIgaGVpZ2h0PSIyMjQiIHN0eWxlPSJmaWxsOiAj ZmZmZmZmIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAw MDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9 IiM5OWRkOTkiIGQ9Ik0zODUuMCA2My4wIEwzODUuMCAxNDcuMCBMMjUuMCAxNDcuMCBMMjUuMCA2 My4wIHoiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAw MDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0i Izk5ZGQ5OSIgZD0iTTEyODUuMCA2My4wIEwxMjg1LjAgMTQ3LjAgTDk3NS4wIDE0Ny4wIEw5NzUu MCA2My4wIHoiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4w MDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmls bD0iIzk5ZGQ5OSIgZD0iTTM4NS4wIDE0Ny4wIEw2ODUuMCAxNDcuMCBMNjg1LjAgNjMuMCBMMzg1 LjAgNjMuMCB6Ii8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEu MDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZp bGw9IiM5OWRkOTkiIGQ9Ik02ODUuMCA2My4wIEw2ODUuMCAxNDcuMCBMOTc1LjAgMTQ3LjAgTDk3 NS4wIDYzLjAgeiIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIx LjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBm aWxsPSJub25lIiBkPSJNMjA1LjAgMTY4LjAgTDIwNS4wIDE4MS4wICIvPgorICAgIDxwYXRoIHN0 cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJv dW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNMjUuMCAxNjguMCBM MjUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0i MS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIg ZmlsbD0ibm9uZSIgZD0iTTM4NS4wIDE2OC4wIEwzODUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBz dHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJy b3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTU2NS4wIDE2OC4w IEw1NjUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0 aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3Vu ZCIgZmlsbD0ibm9uZSIgZD0iTTc0NS4wIDE2OC4wIEw3NDUuMCAxODEuMCAiLz4KKyAgICA8cGF0 aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2Fw PSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTkyNS4wIDE2 OC4wIEw5MjUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13 aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJy b3VuZCIgZmlsbD0ibm9uZSIgZD0iTTExMDUuMCAxNjguMCBMMTEwNS4wIDE4MS4wICIvPgorICAg IDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxp bmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNMTI4 NS4wIDE2OC4wIEwxMjg1LjAgMTgxLjAgIi8+CisgICAgPHRleHQgeD0iNDYiIHk9Ijk2IiBmb250 LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAw MDAwIj5wcm9kdWN0czwvdGV4dD4KKyAgICA8dGV4dCB4PSI0MCIgeT0iMTEwIiBmb250LWZhbWls eT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4o NSwgNS4wMCw8L3RleHQ+CisgICAgPHRleHQgeD0iODYiIHk9IjEyNCIgZm9udC1mYW1pbHk9IkNv dXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+WzEgSmFu IDIwMjAsMSBKYW4gMjAyMikpPC90ZXh0PgorICAgIDx0ZXh0IHg9IjIwIiB5PSIxOTQiIGZvbnQt ZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAw MDAiPjIwMjA8L3RleHQ+CisgICAgPHRleHQgeD0iMjAwIiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJD b3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPjIwMjE8 L3RleHQ+CisgICAgPHRleHQgeD0iNDA2IiB5PSI5NiIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZv bnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+cHJvZHVjdHM8L3RleHQ+ CisgICAgPHRleHQgeD0iNDAwIiB5PSIxMTAiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNp emU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPig1LCA4LjAwLDwvdGV4dD4KKyAg ICA8dGV4dCB4PSI0NDUiIHk9IjEyNCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0i MTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+WzEgSmFuIDIwMjIsMSBTZXAgMjAyMykp PC90ZXh0PgorICAgIDx0ZXh0IHg9IjM4MCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291cmllciIg Zm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIyPC90ZXh0Pgor ICAgIDx0ZXh0IHg9IjU2MCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXpl PSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIzPC90ZXh0PgorICAgIDx0ZXh0 IHg9IjcwNiIgeT0iOTYiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJv a2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPnByb2R1Y3RzPC90ZXh0PgorICAgIDx0ZXh0IHg9Ijcw MCIgeT0iMTEwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJu b25lIiBmaWxsPSIjMDAwMDAwIj4oNSwgMTIuMDAsPC90ZXh0PgorICAgIDx0ZXh0IHg9Ijc0MyIg eT0iMTI0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25l IiBmaWxsPSIjMDAwMDAwIj5bMSBTZXAgMjAyMywxIE1hciAyMDI1KSk8L3RleHQ+CisgICAgPHRl eHQgeD0iNzQwIiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBz dHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPjIwMjQ8L3RleHQ+CisgICAgPHRleHQgeD0iOTIw IiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5v bmUiIGZpbGw9IiMwMDAwMDAiPjIwMjU8L3RleHQ+CisgICAgPHRleHQgeD0iOTk2IiB5PSI5NiIg Zm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0i IzAwMDAwMCI+cHJvZHVjdHM8L3RleHQ+CisgICAgPHRleHQgeD0iOTkwIiB5PSIxMTAiIGZvbnQt ZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAw MDAiPig1LCA4LjAwLDwvdGV4dD4KKyAgICA8dGV4dCB4PSIxMDI2IiB5PSIxMjQiIGZvbnQtZmFt aWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAi PlsxIE1hciAyMDI1LCkpPC90ZXh0PgorICAgIDx0ZXh0IHg9IjExMDAiIHk9IjE5NCIgZm9udC1m YW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAw MCI+MjAyNjwvdGV4dD4KKyAgICA8dGV4dCB4PSIxMjg5IiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJD b3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPi4uLjwv dGV4dD4KKyAgPC9nPgorPC9zdmc+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3Rl bXBvcmFsLXVwZGF0ZS50eHQgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLXVwZGF0ZS50 eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjdlODYyZDg5NDM3Ci0t LSAvZGV2L251bGwKKysrIGIvZG9jL3NyYy9zZ21sL2ltYWdlcy90ZW1wb3JhbC11cGRhdGUudHh0 CkBAIC0wLDAgKzEsMTIgQEAKKworCisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IGNHUkUgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IGNHUkUgICAgICAgICAgICAgICAgICAgICAgICB8IGNHUkUgICAg ICAgICAgICAgICAgICAgICAgIHwgY0dSRSAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8IHBy b2R1Y3RzICAgICAgICAgICAgICAgICAgICAgICAgICB8IHByb2R1Y3RzICAgICAgICAgICAgICAg ICAgICB8IHByb2R1Y3RzICAgICAgICAgICAgICAgICAgIHwgcHJvZHVjdHMgICAgICAgICAgICAg ICAgICAgICB8Cit8ICg1LCA1LjAwLCAgICAgICAgICAgICAgICAgICAgICAgICB8ICg1LCA4LjAw LCAgICAgICAgICAgICAgICAgICB8ICg1LCAxMi4wMCwgICAgICAgICAgICAgICAgIHwgKDUsIDgu MDAsICAgICAgICAgICAgICAgICAgICB8Cit8ICAgWzEgSmFuIDIwMjAsMSBKYW4gMjAyMikpICAg ICAgICB8ICAgWzEgSmFuIDIwMjIsMSBTZXAgMjAyMykpICB8ICAgWzEgU2VwIDIwMjMsMSBNYXIg MjAyNSkpIHwgICBbMSBNYXIgMjAyNSwpKSAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rCisKK3wgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwKKzIwMjAgICAgICAgICAgICAgIDIwMjEgICAg ICAgICAgICAgIDIwMjIgICAgICAgICAgICAgIDIwMjMgICAgICAgICAgICAgIDIwMjQgICAgICAg ICAgICAgIDIwMjUgICAgICAgICAgICAgIDIwMjYgICAgICAgICAgICAgIC4uLgotLSAKMi4zOS41 Cgo= --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0005-Add-UPDATE-DELETE-FOR-PORTION-OF.patch" Content-Disposition: attachment; filename="v59-0005-Add-UPDATE-DELETE-FOR-PORTION-OF.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4d4 RnJvbSAyMmU4ODQ5NTM2ZDkyMzEyNDMwZDcyZWNmZGMyZWYxYzVkNDA4YTlhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMjUgSnVuIDIwMjEgMTg6NTQ6MzUgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwNS8xMV0gQWRkIFVQREFURS9ERUxFVEUgRk9SIFBPUlRJT04gT0YKCi0g QWRkZWQgYmlzb24gc3VwcG9ydCBmb3IgRk9SIFBPUlRJT04gT0Ygc3ludGF4LiBUaGUgYm91bmRz IG11c3QgYmUKICBjb25zdGFudCwgc28gd2UgZm9yYmlkIGNvbHVtbiByZWZlcmVuY2VzLCBzdWJx dWVyaWVzLCBldGMuIFdlIGRvCiAgYWNjZXB0IGZ1bmN0aW9ucyBsaWtlIE5PVygpLgotIEFkZGVk IGxvZ2ljIHRvIGV4ZWN1dG9yIHRvIGluc2VydCBuZXcgcm93cyBmb3IgdGhlICJ0ZW1wb3JhbCBs ZWZ0b3ZlciIKICBwYXJ0IG9mIGEgcmVjb3JkIHRvdWNoZWQgYnkgYSBGT1IgUE9SVElPTiBPRiBx dWVyeS4KLSBEb2N1bWVudGVkIEZPUiBQT1JUSU9OIE9GLgotIEFkZGVkIHRlc3RzLgoKQXV0aG9y OiBQYXVsIEEuIEp1bmd3aXJ0aCA8cGpAaWxsdW1pbmF0ZWRjb21wdXRpbmcuY29tPgotLS0KIC4u Li9wb3N0Z3Jlc19mZHcvZXhwZWN0ZWQvcG9zdGdyZXNfZmR3Lm91dCAgICB8ICAgNDUgKy0KIGNv bnRyaWIvcG9zdGdyZXNfZmR3L3NxbC9wb3N0Z3Jlc19mZHcuc3FsICAgICB8ICAgMzQgKwogZG9j L3NyYy9zZ21sL3JlZi9jcmVhdGVfcHVibGljYXRpb24uc2dtbCAgICAgIHwgICAgNiArCiBkb2Mv c3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sICAgICAgICAgICAgICAgICAgfCAgIDk2ICstCiBkb2Mv c3JjL3NnbWwvcmVmL3VwZGF0ZS5zZ21sICAgICAgICAgICAgICAgICAgfCAgIDk4ICstCiBkb2Mv c3JjL3NnbWwvdHJpZ2dlci5zZ21sICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsKIHNyYy9i YWNrZW5kL2V4ZWN1dG9yL2V4ZWNNYWluLmMgICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2Jh Y2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMgICAgICAgIHwgIDMzMCArKysrLQogc3Jj L2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMgICAgICAgICAgICAgICAgIHwgICAyNCArCiBzcmMv YmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9jcmVhdGVwbGFuLmMgICAgICAgfCAgICA2ICstCiBzcmMv YmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9wbGFubmVyLmMgICAgICAgICAgfCAgICAxICsKIHNyYy9i YWNrZW5kL29wdGltaXplci91dGlsL3BhdGhub2RlLmMgICAgICAgICB8ICAgIDMgKy0KIHNyYy9i YWNrZW5kL3BhcnNlci9hbmFseXplLmMgICAgICAgICAgICAgICAgICB8ICAyNDggKysrLQogc3Jj L2JhY2tlbmQvcGFyc2VyL2dyYW0ueSAgICAgICAgICAgICAgICAgICAgIHwgIDEwMCArLQogc3Jj L2JhY2tlbmQvcGFyc2VyL3BhcnNlX2FnZy5jICAgICAgICAgICAgICAgIHwgICAxMCArCiBzcmMv YmFja2VuZC9wYXJzZXIvcGFyc2VfY29sbGF0ZS5jICAgICAgICAgICAgfCAgICAxICsKIHNyYy9i YWNrZW5kL3BhcnNlci9wYXJzZV9leHByLmMgICAgICAgICAgICAgICB8ICAgIDggKwogc3JjL2Jh Y2tlbmQvcGFyc2VyL3BhcnNlX2Z1bmMuYyAgICAgICAgICAgICAgIHwgICAgMyArCiBzcmMvYmFj a2VuZC9wYXJzZXIvcGFyc2VfbWVyZ2UuYyAgICAgICAgICAgICAgfCAgICAyICstCiBzcmMvYmFj a2VuZC9yZXdyaXRlL3Jld3JpdGVIYW5kbGVyLmMgICAgICAgICAgfCAgIDQzICsKIHNyYy9iYWNr ZW5kL3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5jICAgICAgICAgICB8ICAgIDIgKy0KIHNyYy9iYWNr ZW5kL3V0aWxzL2NhY2hlL2xzeXNjYWNoZS5jICAgICAgICAgICB8ICAgMjcgKwogc3JjL2luY2x1 ZGUvbm9kZXMvZXhlY25vZGVzLmggICAgICAgICAgICAgICAgIHwgICAyMiArCiBzcmMvaW5jbHVk ZS9ub2Rlcy9wYXJzZW5vZGVzLmggICAgICAgICAgICAgICAgfCAgIDIwICsKIHNyYy9pbmNsdWRl L25vZGVzL3BhdGhub2Rlcy5oICAgICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2luY2x1ZGUv bm9kZXMvcGxhbm5vZGVzLmggICAgICAgICAgICAgICAgIHwgICAgMiArCiBzcmMvaW5jbHVkZS9u b2Rlcy9wcmltbm9kZXMuaCAgICAgICAgICAgICAgICAgfCAgIDI3ICsKIHNyYy9pbmNsdWRlL29w dGltaXplci9wYXRobm9kZS5oICAgICAgICAgICAgICB8ICAgIDIgKy0KIHNyYy9pbmNsdWRlL3Bh cnNlci9hbmFseXplLmggICAgICAgICAgICAgICAgICB8ICAgIDMgKy0KIHNyYy9pbmNsdWRlL3Bh cnNlci9rd2xpc3QuaCAgICAgICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2luY2x1ZGUvcGFy c2VyL3BhcnNlX25vZGUuaCAgICAgICAgICAgICAgIHwgICAgMSArCiBzcmMvaW5jbHVkZS91dGls cy9sc3lzY2FjaGUuaCAgICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvZm9yX3BvcnRpb25fb2Yub3V0ICB8IDEyNDggKysrKysrKysrKysrKysrKysKIHNy Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdlcy5vdXQgICAgICB8ICAgMTggKwogc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC91cGRhdGFibGVfdmlld3Mub3V0IHwgICAzMiArCiAuLi4v cmVncmVzcy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91dCAgICAgfCAgMjQ1ICsrKy0KIHNy Yy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUgICAgICAgICAgICB8ICAgIDIgKy0KIHNy Yy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29mLnNxbCAgICAgICB8ICA5MDUgKysrKysr KysrKysrCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9wcml2aWxlZ2VzLnNxbCAgICAgICAgICAgfCAg IDE4ICsKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3VwZGF0YWJsZV92aWV3cy5zcWwgICAgICB8ICAg MTQgKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvd2l0aG91dF9vdmVybGFwcy5zcWwgICAgIHwgIDEy MCArLQogc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDM0X3RlbXBvcmFsLnBsICAgICAgIHwgIDEx MCArLQogc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QgICAgICAgICAgICAgIHwgICAg NCArCiA0MyBmaWxlcyBjaGFuZ2VkLCAzODA0IGluc2VydGlvbnMoKyksIDg5IGRlbGV0aW9ucygt KQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRp b25fb2Yub3V0CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yX3Bv cnRpb25fb2Yuc3FsCgpkaWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19mZHcvZXhwZWN0ZWQv cG9zdGdyZXNfZmR3Lm91dCBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3RncmVz X2Zkdy5vdXQKaW5kZXggY2QyODEyNjA0OWQuLjhjMGYxZThiNzcxIDEwMDY0NAotLS0gYS9jb250 cmliL3Bvc3RncmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0CisrKyBiL2NvbnRyaWIv cG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3RncmVzX2Zkdy5vdXQKQEAgLTUwLDExICs1MCwxOSBA QCBDUkVBVEUgVEFCTEUgIlMgMSIuIlQgNCIgKAogCWMzIHRleHQsCiAJQ09OU1RSQUlOVCB0NF9w a2V5IFBSSU1BUlkgS0VZIChjMSkKICk7CitDUkVBVEUgVEFCTEUgIlMgMSIuIlQgNSIgKAorCWMx IGludDRyYW5nZSBOT1QgTlVMTCwKKwljMiBpbnQgTk9UIE5VTEwsCisJYzMgdGV4dCwKKwljNCBk YXRlcmFuZ2UgTk9UIE5VTEwsCisJQ09OU1RSQUlOVCB0NV9wa2V5IFBSSU1BUlkgS0VZIChjMSwg YzQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CiAtLSBEaXNhYmxlIGF1dG92YWN1dW0gZm9yIHRoZXNl IHRhYmxlcyB0byBhdm9pZCB1bmV4cGVjdGVkIGVmZmVjdHMgb2YgdGhhdAogQUxURVIgVEFCTEUg IlMgMSIuIlQgMSIgU0VUIChhdXRvdmFjdXVtX2VuYWJsZWQgPSAnZmFsc2UnKTsKIEFMVEVSIFRB QkxFICJTIDEiLiJUIDIiIFNFVCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gJ2ZhbHNlJyk7CiBBTFRF UiBUQUJMRSAiUyAxIi4iVCAzIiBTRVQgKGF1dG92YWN1dW1fZW5hYmxlZCA9ICdmYWxzZScpOwog QUxURVIgVEFCTEUgIlMgMSIuIlQgNCIgU0VUIChhdXRvdmFjdXVtX2VuYWJsZWQgPSAnZmFsc2Un KTsKK0FMVEVSIFRBQkxFICJTIDEiLiJUIDUiIFNFVCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gJ2Zh bHNlJyk7CiBJTlNFUlQgSU5UTyAiUyAxIi4iVCAxIgogCVNFTEVDVCBpZCwKIAkgICAgICAgaWQg JSAxMCwKQEAgLTgxLDEwICs4OSwxNyBAQCBJTlNFUlQgSU5UTyAiUyAxIi4iVCA0IgogCSAgICAg ICAnQUFBJyB8fCB0b19jaGFyKGlkLCAnRk0wMDAnKQogCUZST00gZ2VuZXJhdGVfc2VyaWVzKDEs IDEwMCkgaWQ7CiBERUxFVEUgRlJPTSAiUyAxIi4iVCA0IiBXSEVSRSBjMSAlIDMgIT0gMDsJLS0g ZGVsZXRlIGZvciBvdXRlciBqb2luIHRlc3RzCitJTlNFUlQgSU5UTyAiUyAxIi4iVCA1IgorCVNF TEVDVCBpbnQ0cmFuZ2UoaWQsIGlkICsgMSksCisJICAgICAgIGlkICsgMSwKKwkgICAgICAgJ0FB QScgfHwgdG9fY2hhcihpZCwgJ0ZNMDAwJyksCisgICAgICAgICdbMjAwMC0wMS0wMSwyMDIwLTAx LTAxKScKKwlGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIGlkOwogQU5BTFlaRSAiUyAxIi4i VCAxIjsKIEFOQUxZWkUgIlMgMSIuIlQgMiI7CiBBTkFMWVpFICJTIDEiLiJUIDMiOwogQU5BTFla RSAiUyAxIi4iVCA0IjsKK0FOQUxZWkUgIlMgMSIuIlQgNSI7CiAtLSA9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAtLSBj cmVhdGUgZm9yZWlnbiB0YWJsZXMKIC0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQEAgLTEzMiw2ICsxNDcsMTIgQEAg Q1JFQVRFIEZPUkVJR04gVEFCTEUgZnQ3ICgKIAljMiBpbnQgTk9UIE5VTEwsCiAJYzMgdGV4dAog KSBTRVJWRVIgbG9vcGJhY2szIE9QVElPTlMgKHNjaGVtYV9uYW1lICdTIDEnLCB0YWJsZV9uYW1l ICdUIDQnKTsKK0NSRUFURSBGT1JFSUdOIFRBQkxFIGZ0OCAoCisJYzEgaW50NHJhbmdlIE5PVCBO VUxMLAorCWMyIGludCBOT1QgTlVMTCwKKwljMyB0ZXh0LAorCWM0IGRhdGVyYW5nZSBOT1QgTlVM TAorKSBTRVJWRVIgbG9vcGJhY2sgT1BUSU9OUyAoc2NoZW1hX25hbWUgJ1MgMScsIHRhYmxlX25h bWUgJ1QgNScpOwogLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQogLS0gdGVzdHMgZm9yIHZhbGlkYXRvcgogLS0gPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQpAQCAtMjE0LDcgKzIzNSw4IEBAIEFMVEVSIEZPUkVJR04gVEFCTEUgZnQyIEFMVEVS IENPTFVNTiBjMSBPUFRJT05TIChjb2x1bW5fbmFtZSAnQyAxJyk7CiAgcHVibGljIHwgZnQ1ICAg fCBsb29wYmFjayAgfCAoc2NoZW1hX25hbWUgJ1MgMScsIHRhYmxlX25hbWUgJ1QgNCcpIHwgCiAg cHVibGljIHwgZnQ2ICAgfCBsb29wYmFjazIgfCAoc2NoZW1hX25hbWUgJ1MgMScsIHRhYmxlX25h bWUgJ1QgNCcpIHwgCiAgcHVibGljIHwgZnQ3ICAgfCBsb29wYmFjazMgfCAoc2NoZW1hX25hbWUg J1MgMScsIHRhYmxlX25hbWUgJ1QgNCcpIHwgCi0oNiByb3dzKQorIHB1YmxpYyB8IGZ0OCAgIHwg bG9vcGJhY2sgIHwgKHNjaGVtYV9uYW1lICdTIDEnLCB0YWJsZV9uYW1lICdUIDUnKSB8IAorKDcg cm93cykKIAogLS0gVGVzdCB0aGF0IGFsdGVyYXRpb24gb2Ygc2VydmVyIG9wdGlvbnMgY2F1c2Vz IHJlY29ubmVjdGlvbgogLS0gUmVtb3RlJ3MgZXJyb3JzIG1pZ2h0IGJlIG5vbi1FbmdsaXNoLCBz byBoaWRlIHRoZW0gdG8gZW5zdXJlIHN0YWJsZSByZXN1bHRzCkBAIC02MzAzLDYgKzYzMjUsMjcg QEAgREVMRVRFIEZST00gZnQyIFdIRVJFIGMxID0gMTIwMCBSRVRVUk5JTkcgdGFibGVvaWQ6OnJl Z2NsYXNzOwogIGZ0MgogKDEgcm93KQogCistLSBUZXN0IFVQREFURSBGT1IgUE9SVElPTiBPRgor VVBEQVRFIGZ0OCBGT1IgUE9SVElPTiBPRiBjNCBGUk9NICcyMDA1LTAxLTAxJyBUTyAnMjAwNi0w MS0wMScKK1NFVCBjMiA9IGMyICsgMQorV0hFUkUgYzEgPSAnWzEsMiknOworRVJST1I6ICBmb3Jl aWduIHRhYmxlcyBkb24ndCBzdXBwb3J0IEZPUiBQT1JUSU9OIE9GCitTRUxFQ1QgKiBGUk9NIGZ0 OCBXSEVSRSBjMSA9ICdbMSwyKScgT1JERVIgQlkgYzEsIGM0OworICBjMSAgIHwgYzIgfCAgIGMz ICAgfCAgICAgICAgICAgYzQgICAgICAgICAgICAKKy0tLS0tLS0rLS0tLSstLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgWzEsMikgfCAgMiB8IEFBQTAwMSB8IFswMS0wMS0yMDAw LDAxLTAxLTIwMjApCisoMSByb3cpCisKKy0tIFRlc3QgREVMRVRFIEZPUiBQT1JUSU9OIE9GCitE RUxFVEUgRlJPTSBmdDggRk9SIFBPUlRJT04gT0YgYzQgRlJPTSAnMjAwNS0wMS0wMScgVE8gJzIw MDYtMDEtMDEnCitXSEVSRSBjMSA9ICdbMiwzKSc7CitFUlJPUjogIGZvcmVpZ24gdGFibGVzIGRv bid0IHN1cHBvcnQgRk9SIFBPUlRJT04gT0YKK1NFTEVDVCAqIEZST00gZnQ4IFdIRVJFIGMxID0g J1syLDMpJyBPUkRFUiBCWSBjMSwgYzQ7CisgIGMxICAgfCBjMiB8ICAgYzMgICB8ICAgICAgICAg ICBjNCAgICAgICAgICAgIAorLS0tLS0tLSstLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KKyBbMiwzKSB8ICAzIHwgQUFBMDAyIHwgWzAxLTAxLTIwMDAsMDEtMDEtMjAyMCkK KygxIHJvdykKKwogLS0gVGVzdCBVUERBVEUvREVMRVRFIHdpdGggUkVUVVJOSU5HIG9uIGEgdGhy ZWUtdGFibGUgam9pbgogSU5TRVJUIElOVE8gZnQyIChjMSxjMixjMykKICAgU0VMRUNUIGlkLCBp ZCAtIDEyMDAsIHRvX2NoYXIoaWQsICdGTTAwMDAwJykgRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMTIw MSwgMTMwMCkgaWQ7CmRpZmYgLS1naXQgYS9jb250cmliL3Bvc3RncmVzX2Zkdy9zcWwvcG9zdGdy ZXNfZmR3LnNxbCBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3L3NxbC9wb3N0Z3Jlc19mZHcuc3FsCmlu ZGV4IDlhOGY5ZTI4MTM1Li43MzhmYzI0ZmIwNyAxMDA2NDQKLS0tIGEvY29udHJpYi9wb3N0Z3Jl c19mZHcvc3FsL3Bvc3RncmVzX2Zkdy5zcWwKKysrIGIvY29udHJpYi9wb3N0Z3Jlc19mZHcvc3Fs L3Bvc3RncmVzX2Zkdy5zcWwKQEAgLTU0LDEyICs1NCwyMCBAQCBDUkVBVEUgVEFCTEUgIlMgMSIu IlQgNCIgKAogCWMzIHRleHQsCiAJQ09OU1RSQUlOVCB0NF9wa2V5IFBSSU1BUlkgS0VZIChjMSkK ICk7CitDUkVBVEUgVEFCTEUgIlMgMSIuIlQgNSIgKAorCWMxIGludDRyYW5nZSBOT1QgTlVMTCwK KwljMiBpbnQgTk9UIE5VTEwsCisJYzMgdGV4dCwKKwljNCBkYXRlcmFuZ2UgTk9UIE5VTEwsCisJ Q09OU1RSQUlOVCB0NV9wa2V5IFBSSU1BUlkgS0VZIChjMSwgYzQgV0lUSE9VVCBPVkVSTEFQUykK Kyk7CiAKIC0tIERpc2FibGUgYXV0b3ZhY3V1bSBmb3IgdGhlc2UgdGFibGVzIHRvIGF2b2lkIHVu ZXhwZWN0ZWQgZWZmZWN0cyBvZiB0aGF0CiBBTFRFUiBUQUJMRSAiUyAxIi4iVCAxIiBTRVQgKGF1 dG92YWN1dW1fZW5hYmxlZCA9ICdmYWxzZScpOwogQUxURVIgVEFCTEUgIlMgMSIuIlQgMiIgU0VU IChhdXRvdmFjdXVtX2VuYWJsZWQgPSAnZmFsc2UnKTsKIEFMVEVSIFRBQkxFICJTIDEiLiJUIDMi IFNFVCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gJ2ZhbHNlJyk7CiBBTFRFUiBUQUJMRSAiUyAxIi4i VCA0IiBTRVQgKGF1dG92YWN1dW1fZW5hYmxlZCA9ICdmYWxzZScpOworQUxURVIgVEFCTEUgIlMg MSIuIlQgNSIgU0VUIChhdXRvdmFjdXVtX2VuYWJsZWQgPSAnZmFsc2UnKTsKIAogSU5TRVJUIElO VE8gIlMgMSIuIlQgMSIKIAlTRUxFQ1QgaWQsCkBAIC04NywxMSArOTUsMTggQEAgSU5TRVJUIElO VE8gIlMgMSIuIlQgNCIKIAkgICAgICAgJ0FBQScgfHwgdG9fY2hhcihpZCwgJ0ZNMDAwJykKIAlG Uk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIGlkOwogREVMRVRFIEZST00gIlMgMSIuIlQgNCIg V0hFUkUgYzEgJSAzICE9IDA7CS0tIGRlbGV0ZSBmb3Igb3V0ZXIgam9pbiB0ZXN0cworSU5TRVJU IElOVE8gIlMgMSIuIlQgNSIKKwlTRUxFQ1QgaW50NHJhbmdlKGlkLCBpZCArIDEpLAorCSAgICAg ICBpZCArIDEsCisJICAgICAgICdBQUEnIHx8IHRvX2NoYXIoaWQsICdGTTAwMCcpLAorICAgICAg ICAnWzIwMDAtMDEtMDEsMjAyMC0wMS0wMSknCisJRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAw KSBpZDsKIAogQU5BTFlaRSAiUyAxIi4iVCAxIjsKIEFOQUxZWkUgIlMgMSIuIlQgMiI7CiBBTkFM WVpFICJTIDEiLiJUIDMiOwogQU5BTFlaRSAiUyAxIi4iVCA0IjsKK0FOQUxZWkUgIlMgMSIuIlQg NSI7CiAKIC0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KIC0tIGNyZWF0ZSBmb3JlaWduIHRhYmxlcwpAQCAtMTQ2LDYg KzE2MSwxNCBAQCBDUkVBVEUgRk9SRUlHTiBUQUJMRSBmdDcgKAogCWMzIHRleHQKICkgU0VSVkVS IGxvb3BiYWNrMyBPUFRJT05TIChzY2hlbWFfbmFtZSAnUyAxJywgdGFibGVfbmFtZSAnVCA0Jyk7 CiAKK0NSRUFURSBGT1JFSUdOIFRBQkxFIGZ0OCAoCisJYzEgaW50NHJhbmdlIE5PVCBOVUxMLAor CWMyIGludCBOT1QgTlVMTCwKKwljMyB0ZXh0LAorCWM0IGRhdGVyYW5nZSBOT1QgTlVMTAorKSBT RVJWRVIgbG9vcGJhY2sgT1BUSU9OUyAoc2NoZW1hX25hbWUgJ1MgMScsIHRhYmxlX25hbWUgJ1Qg NScpOworCisKIC0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KIC0tIHRlc3RzIGZvciB2YWxpZGF0b3IKIC0tID09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KQEAgLTE1MzgsNiArMTU2MSwxNyBAQCBFWFBMQUlOICh2ZXJib3NlLCBjb3N0cyBvZmYp CiBERUxFVEUgRlJPTSBmdDIgV0hFUkUgYzEgPSAxMjAwIFJFVFVSTklORyB0YWJsZW9pZDo6cmVn Y2xhc3M7ICAgICAgICAgICAgICAgICAgICAgICAtLSBjYW4gYmUgcHVzaGVkIGRvd24KIERFTEVU RSBGUk9NIGZ0MiBXSEVSRSBjMSA9IDEyMDAgUkVUVVJOSU5HIHRhYmxlb2lkOjpyZWdjbGFzczsK IAorLS0gVGVzdCBVUERBVEUgRk9SIFBPUlRJT04gT0YKK1VQREFURSBmdDggRk9SIFBPUlRJT04g T0YgYzQgRlJPTSAnMjAwNS0wMS0wMScgVE8gJzIwMDYtMDEtMDEnCitTRVQgYzIgPSBjMiArIDEK K1dIRVJFIGMxID0gJ1sxLDIpJzsKK1NFTEVDVCAqIEZST00gZnQ4IFdIRVJFIGMxID0gJ1sxLDIp JyBPUkRFUiBCWSBjMSwgYzQ7CisKKy0tIFRlc3QgREVMRVRFIEZPUiBQT1JUSU9OIE9GCitERUxF VEUgRlJPTSBmdDggRk9SIFBPUlRJT04gT0YgYzQgRlJPTSAnMjAwNS0wMS0wMScgVE8gJzIwMDYt MDEtMDEnCitXSEVSRSBjMSA9ICdbMiwzKSc7CitTRUxFQ1QgKiBGUk9NIGZ0OCBXSEVSRSBjMSA9 ICdbMiwzKScgT1JERVIgQlkgYzEsIGM0OworCiAtLSBUZXN0IFVQREFURS9ERUxFVEUgd2l0aCBS RVRVUk5JTkcgb24gYSB0aHJlZS10YWJsZSBqb2luCiBJTlNFUlQgSU5UTyBmdDIgKGMxLGMyLGMz KQogICBTRUxFQ1QgaWQsIGlkIC0gMTIwMCwgdG9fY2hhcihpZCwgJ0ZNMDAwMDAnKSBGUk9NIGdl bmVyYXRlX3NlcmllcygxMjAxLCAxMzAwKSBpZDsKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9y ZWYvY3JlYXRlX3B1YmxpY2F0aW9uLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV9wdWJs aWNhdGlvbi5zZ21sCmluZGV4IDY2YTcwZTVjNWI1Li42YWM4ZjkzNWE3OCAxMDA2NDQKLS0tIGEv ZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfcHVibGljYXRpb24uc2dtbAorKysgYi9kb2Mvc3JjL3Nn bWwvcmVmL2NyZWF0ZV9wdWJsaWNhdGlvbi5zZ21sCkBAIC0zOTAsNiArMzkwLDEyIEBAIENSRUFU RSBQVUJMSUNBVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bmFtZTwvcmVwbGFj ZWFibGU+CiAgICBmb3IgZWFjaCByb3cgaW5zZXJ0ZWQsIHVwZGF0ZWQsIG9yIGRlbGV0ZWQuCiAg IDwvcGFyYT4KIAorICA8cGFyYT4KKyAgIEZvciBhIDxjb21tYW5kPkZPUiBQT1JUSU9OIE9GPC9j b21tYW5kPiBjb21tYW5kLCB0aGUgcHVibGljYXRpb24gd2lsbCBwdWJsaXNoIGFuCisgICA8Y29t bWFuZD5VUERBVEU8L2NvbW1hbmQ+IG9yIDxjb21tYW5kPkRFTEVURTwvY29tbWFuZD4sIGZvbGxv d2VkIGJ5IG9uZQorICAgPGNvbW1hbmQ+SU5TRVJUPC9jb21tYW5kPiBmb3IgZWFjaCB0ZW1wb3Jh bCBsZWZ0b3ZlciByb3cgaW5zZXJ0ZWQuCisgIDwvcGFyYT4KKwogICA8cGFyYT4KICAgIDxjb21t YW5kPkFUVEFDSDwvY29tbWFuZD5pbmcgYSB0YWJsZSBpbnRvIGEgcGFydGl0aW9uIHRyZWUgd2hv c2Ugcm9vdCBpcwogICAgcHVibGlzaGVkIHVzaW5nIGEgcHVibGljYXRpb24gd2l0aCA8bGl0ZXJh bD5wdWJsaXNoX3ZpYV9wYXJ0aXRpb25fcm9vdDwvbGl0ZXJhbD4KZGlmZiAtLWdpdCBhL2RvYy9z cmMvc2dtbC9yZWYvZGVsZXRlLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sCmlu ZGV4IDI5NjQ5ZjZhZmQ2Li5mNDI1MzA5ZmQ1ZCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3Jl Zi9kZWxldGUuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sCkBAIC0yMiw3 ICsyMiw5IEBAIFBvc3RncmVTUUwgZG9jdW1lbnRhdGlvbgogIDxyZWZzeW5vcHNpc2Rpdj4KIDxz eW5vcHNpcz4KIFsgV0lUSCBbIFJFQ1VSU0lWRSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj53aXRoX3F1ZXJ5PC9yZXBsYWNlYWJsZT4gWywgLi4uXSBdCi1ERUxFVEUgRlJPTSBbIE9O TFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFi bGU+IFsgKiBdIFsgWyBBUyBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5hbGlhczwv cmVwbGFjZWFibGU+IF0KK0RFTEVURSBGUk9NIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqIF0KKyAgICBbIEZPUiBQT1JU SU9OIE9GIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNl YWJsZT4gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmZvcl9wb3J0aW9uX29mX3Rhcmdl dDwvcmVwbGFjZWFibGU+IF0KKyAgICBbIFsgQVMgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+YWxpYXM8L3JlcGxhY2VhYmxlPiBdCiAgICAgWyBVU0lORyA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+ZnJvbV9pdGVtPC9yZXBsYWNlYWJsZT4gWywgLi4uXSBdCiAgICAgWyBX SEVSRSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29uZGl0aW9uPC9yZXBsYWNlYWJs ZT4gfCBXSEVSRSBDVVJSRU5UIE9GIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jdXJz b3JfbmFtZTwvcmVwbGFjZWFibGU+IF0KICAgICBbIFJFVFVSTklORyBbIFdJVEggKCB7IE9MRCB8 IE5FVyB9IEFTIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5vdXRwdXRfYWxpYXM8L3Jl cGxhY2VhYmxlPiBbLCAuLi5dICkgXQpAQCAtNTUsNiArNTcsNDMgQEAgREVMRVRFIEZST00gWyBP TkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2Vh YmxlPiBbICoKICAgIGNpcmN1bXN0YW5jZXMuCiAgIDwvcGFyYT4KIAorICA8cGFyYT4KKyAgIElm IHRoZSB0YWJsZSBoYXMgYSByYW5nZSBvciBtdWx0aXJhbmdlIGNvbHVtbiwKKyAgIHlvdSBtYXkg c3VwcGx5IGEgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGNsYXVzZSwgYW5kIHlv dXIgZGVsZXRlIHdpbGwKKyAgIG9ubHkgYWZmZWN0IHJvd3MgdGhhdCBvdmVybGFwIHRoZSBnaXZl biBpbnRlcnZhbC4gRnVydGhlcm1vcmUsIGlmIGEgcm93J3MgaGlzdG9yeQorICAgZXh0ZW5kcyBv dXRzaWRlIHRoZSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gYm91bmRzLCB0aGVu IHlvdXIgZGVsZXRlCisgICB3aWxsIG9ubHkgY2hhbmdlIHRoZSBoaXN0b3J5IHdpdGhpbiB0aG9z ZSBib3VuZHMuIEluIGVmZmVjdCB5b3UgYXJlIGRlbGV0aW5nIGFueQorICAgbW9tZW50IHRhcmdl dGVkIGJ5IDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBhbmQgbm8gbW9tZW50cyBv dXRzaWRlLgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBTcGVjaWZpY2FsbHksIGFmdGVyIDxw cm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gZGVsZXRlcyB0aGUgZXhpc3Rpbmcg cm93LAorICAgaXQgd2lsbCA8bGl0ZXJhbD5JTlNFUlQ8L2xpdGVyYWw+CisgICBuZXcgPGdsb3Nz dGVybSBsaW5rZW5kPSJnbG9zc2FyeS10ZW1wb3JhbC1sZWZ0b3ZlcnMiPnRlbXBvcmFsIGxlZnRv dmVyczwvZ2xvc3N0ZXJtPjoKKyAgIHJvd3Mgd2hvc2UgcmFuZ2Ugb3IgbXVsdGlyYW5nZSByZWNl aXZlIHRoZSByZW1haW5pbmcgaGlzdG9yeSBvdXRzaWRlCisgICB0aGUgdGFyZ2V0ZWQgYm91bmRz LCB3aXRoIHVuLXVwZGF0ZWQgdmFsdWVzIGluIHRoZWlyIG90aGVyIGNvbHVtbnMuCisgICBUaGVy ZSB3aWxsIGJlIHplcm8gdG8gdHdvIGluc2VydGVkIHJlY29yZHMsCisgICBkZXBlbmRpbmcgb24g d2hldGhlciB0aGUgb3JpZ2luYWwgaGlzdG9yeSBleHRlbmRlZCBiZWZvcmUgdGhlIHRhcmdldGVk CisgICA8bGl0ZXJhbD5GUk9NPC9saXRlcmFsPiwgYWZ0ZXIgdGhlIHRhcmdldGVkIDxsaXRlcmFs PlRPPC9saXRlcmFsPiwgYm90aCwgb3IgbmVpdGhlci4KKyAgIE11bHRpcmFuZ2VzIG5ldmVyIHJl cXVpcmUgdHdvIHRlbXBvcmFsIGxlZnRvdmVycywgYmVjYXVzZSBvbmUgdmFsdWUgY2FuIGFsd2F5 cyBjb250YWluCisgICB3aGF0ZXZlciBoaXN0b3J5IHJlbWFpbnMuCisgIDwvcGFyYT4KKworICA8 cGFyYT4KKyAgIFRoZXNlIHNlY29uZGFyeSBpbnNlcnRzIGZpcmUgPGxpdGVyYWw+SU5TRVJUPC9s aXRlcmFsPiB0cmlnZ2Vycy4KKyAgIEJvdGggPGxpdGVyYWw+U1RBVEVNRU5UPC9saXRlcmFsPiBh bmQgPGxpdGVyYWw+Uk9XPC9saXRlcmFsPiB0cmlnZ2VycyBhcmUgZmlyZWQuCisgICBUaGUgPGxp dGVyYWw+QkVGT1JFIERFTEVURTwvbGl0ZXJhbD4gdHJpZ2dlcnMgYXJlIGZpcmVkIGZpcnN0LCB0 aGVuCisgICA8bGl0ZXJhbD5CRUZPUkUgSU5TRVJUPC9saXRlcmFsPiwgdGhlbiA8bGl0ZXJhbD5B RlRFUiBJTlNFUlQ8L2xpdGVyYWw+LAorICAgdGhlbiA8bGl0ZXJhbD5BRlRFUiBERUxFVEU8L2xp dGVyYWw+LgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBUaGVzZSBzZWNvbmRhcnkgaW5zZXJ0 cyBkbyBub3QgcmVxdWlyZSA8bGl0ZXJhbD5JTlNFUlQ8L2xpdGVyYWw+IHByaXZpbGVnZSBvbiB0 aGUgdGFibGUuCisgICBUaGlzIGlzIGJlY2F1c2UgY29uY2VwdHVhbGx5IG5vIG5ldyBpbmZvcm1h dGlvbiBoYXMgYmVlbiBhZGRlZC4gVGhlIGluc2VydGVkIHJvd3Mgb25seSBwcmVzZXJ2ZQorICAg ZXhpc3RpbmcgZGF0YSBhYm91dCB0aGUgdW50YXJnZXRlZCB0aW1lIHBlcmlvZC4gTm90ZSB0aGlz IG1heSByZXN1bHQgaW4gdXNlcnMgZmlyaW5nIDxsaXRlcmFsPklOU0VSVDwvbGl0ZXJhbD4KKyAg IHRyaWdnZXJzIHdobyBkb24ndCBoYXZlIGluc2VydCBwcml2aWxlZ2VzLCBzbyBiZSBjYXJlZnVs IGFib3V0IDxsaXRlcmFsPlNFQ1VSSVRZIERFRklORVI8L2xpdGVyYWw+IHRyaWdnZXIgZnVuY3Rp b25zIQorICA8L3BhcmE+CisKICAgPHBhcmE+CiAgICBUaGUgb3B0aW9uYWwgPGxpdGVyYWw+UkVU VVJOSU5HPC9saXRlcmFsPiBjbGF1c2UgY2F1c2VzIDxjb21tYW5kPkRFTEVURTwvY29tbWFuZD4K ICAgIHRvIGNvbXB1dGUgYW5kIHJldHVybiB2YWx1ZShzKSBiYXNlZCBvbiBlYWNoIHJvdyBhY3R1 YWxseSBkZWxldGVkLgpAQCAtMTE3LDYgKzE1Niw1NyBAQCBERUxFVEUgRlJPTSBbIE9OTFkgXSA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsg KgogICAgIDwvbGlzdGl0ZW0+CiAgICA8L3Zhcmxpc3RlbnRyeT4KIAorICAgPHZhcmxpc3RlbnRy eT4KKyAgICA8dGVybT48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2VfbmFtZTwv cmVwbGFjZWFibGU+PC90ZXJtPgorICAgIDxsaXN0aXRlbT4KKyAgICAgPHBhcmE+CisgICAgICBU aGUgcmFuZ2Ugb3IgbXVsdGlyYW5nZSBjb2x1bW4gdG8gdXNlIHdoZW4gcGVyZm9ybWluZyBhIHRl bXBvcmFsIGRlbGV0ZS4KKyAgICAgPC9wYXJhPgorICAgIDwvbGlzdGl0ZW0+CisgICA8L3Zhcmxp c3RlbnRyeT4KKworICAgPHZhcmxpc3RlbnRyeT4KKyAgICA8dGVybT48cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+Zm9yX3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNlYWJsZT48L3Rlcm0+ CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFyYT4KKyAgICAgIFRoZSBpbnRlcnZhbCB0byBkZWxl dGUuIElmIHlvdSBhcmUgdGFyZ2V0aW5nIGEgcmFuZ2UgY29sdW1uLAorICAgICAgeW91IG1heSBn aXZlIHRoaXMgaW4gdGhlIGZvcm0gPGxpdGVyYWw+RlJPTTwvbGl0ZXJhbD4KKyAgICAgIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5zdGFydF90aW1lPC9yZXBsYWNlYWJsZT4gPGxpdGVy YWw+VE88L2xpdGVyYWw+CisgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5k X3RpbWU8L3JlcGxhY2VhYmxlPi4KKyAgICAgIE90aGVyd2lzZSB5b3UgbXVzdCB1c2UKKyAgICAg IDxsaXRlcmFsPig8L2xpdGVyYWw+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJl c3Npb248L3JlcGxhY2VhYmxlPjxsaXRlcmFsPik8L2xpdGVyYWw+CisgICAgICB3aGVyZSB0aGUg ZXhwcmVzc2lvbiB5aWVsZHMgYSB2YWx1ZSBvZiB0aGUgc2FtZSB0eXBlIGFzCisgICAgICA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+LgorICAg ICA8L3BhcmE+CisgICAgPC9saXN0aXRlbT4KKyAgIDwvdmFybGlzdGVudHJ5PgorCisgICA8dmFy bGlzdGVudHJ5PgorICAgIDx0ZXJtPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5zdGFy dF90aW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFyYT4K KyAgICAgIFRoZSBlYXJsaWVzdCB0aW1lIChpbmNsdXNpdmUpIHRvIGNoYW5nZSBpbiBhIHRlbXBv cmFsIGRlbGV0ZS4KKyAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNl IHR5cGUgb2YgdGhlIHJhbmdlIGZyb20KKyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4uIEEKKyAgICAgIDxsaXRlcmFsPk5VTEw8L2xp dGVyYWw+IGhlcmUgaW5kaWNhdGVzIGEgZGVsZXRlIHdob3NlIGJlZ2lubmluZyBpcworICAgICAg dW5ib3VuZGVkIChhcyB3aXRoIHJhbmdlIHR5cGVzKS4KKyAgICAgPC9wYXJhPgorICAgIDwvbGlz dGl0ZW0+CisgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgPHZhcmxpc3RlbnRyeT4KKyAgICA8dGVy bT48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5kX3RpbWU8L3JlcGxhY2VhYmxlPjwv dGVybT4KKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgVGhlIGxhdGVzdCB0aW1l IChleGNsdXNpdmUpIHRvIGNoYW5nZSBpbiBhIHRlbXBvcmFsIGRlbGV0ZS4KKyAgICAgIFRoaXMg bXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIGZyb20K KyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNl YWJsZT4uIEEKKyAgICAgIDxsaXRlcmFsPk5VTEw8L2xpdGVyYWw+IGhlcmUgaW5kaWNhdGVzIGEg ZGVsZXRlIHdob3NlIGVuZCBpcyB1bmJvdW5kZWQKKyAgICAgIChhcyB3aXRoIHJhbmdlIHR5cGVz KS4KKyAgICAgPC9wYXJhPgorICAgIDwvbGlzdGl0ZW0+CisgICA8L3Zhcmxpc3RlbnRyeT4KKwog ICAgPHZhcmxpc3RlbnRyeT4KICAgICA8dGVybT48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+ZnJvbV9pdGVtPC9yZXBsYWNlYWJsZT48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgpAQCAtMjM4 LDYgKzMyOCwxMCBAQCBERUxFVEUgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvdW50 PC9yZXBsYWNlYWJsZT4KICAgIHN1cHByZXNzZWQgYnkgYSA8bGl0ZXJhbD5CRUZPUkUgREVMRVRF PC9saXRlcmFsPiB0cmlnZ2VyLiAgSWYgPHJlcGxhY2VhYmxlCiAgICBjbGFzcz0icGFyYW1ldGVy Ij5jb3VudDwvcmVwbGFjZWFibGU+IGlzIDAsIG5vIHJvd3Mgd2VyZSBkZWxldGVkIGJ5CiAgICB0 aGUgcXVlcnkgKHRoaXMgaXMgbm90IGNvbnNpZGVyZWQgYW4gZXJyb3IpLgorICAgSWYgPGxpdGVy YWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IHdhcyB1c2VkLCB0aGUKKyAgIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5jb3VudDwvcmVwbGFjZWFibGU+IGFsc28gaW5jbHVkZXMKKyAg IDxnbG9zc3Rlcm0gbGlua2VuZD0iZ2xvc3NhcnktdGVtcG9yYWwtbGVmdG92ZXJzIj50ZW1wb3Jh bCBsZWZ0b3ZlcnM8L2dsb3NzdGVybT4KKyAgIHRoYXQgd2VyZSBpbnNlcnRlZC4KICAgPC9wYXJh PgogCiAgIDxwYXJhPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi91cGRhdGUuc2dtbCBi L2RvYy9zcmMvc2dtbC9yZWYvdXBkYXRlLnNnbWwKaW5kZXggNDBjY2EwNjM5NDYuLmFkMzIyNGMy ZGYyIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvcmVmL3VwZGF0ZS5zZ21sCisrKyBiL2RvYy9z cmMvc2dtbC9yZWYvdXBkYXRlLnNnbWwKQEAgLTIyLDcgKzIyLDkgQEAgUG9zdGdyZVNRTCBkb2N1 bWVudGF0aW9uCiAgPHJlZnN5bm9wc2lzZGl2PgogPHN5bm9wc2lzPgogWyBXSVRIIFsgUkVDVVJT SVZFIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPndpdGhfcXVlcnk8L3JlcGxhY2Vh YmxlPiBbLCAuLi5dIF0KLVVQREFURSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKiBdIFsgWyBBUyBdIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5hbGlhczwvcmVwbGFjZWFibGU+IF0KK1VQREFURSBbIE9OTFkg XSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+ IFsgKiBdCisgICAgWyBGT1IgUE9SVElPTiBPRiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxhY2VhYmxlPiBdCisgICAgWyBbIEFTIF0gPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmFsaWFzPC9yZXBsYWNlYWJsZT4gXQogICAgIFNF VCB7IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFi bGU+ID0geyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZXhwcmVzc2lvbjwvcmVwbGFj ZWFibGU+IHwgREVGQVVMVCB9IHwKICAgICAgICAgICAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLl0gKSA9IFsgUk9XIF0gKCB7 IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leHByZXNzaW9uPC9yZXBsYWNlYWJsZT4g fCBERUZBVUxUIH0gWywgLi4uXSApIHwKICAgICAgICAgICAoIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLl0gKSA9ICggPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnN1Yi1TRUxFQ1Q8L3JlcGxhY2VhYmxlPiApCkBAIC01 Miw2ICs1NCw0NSBAQCBVUERBVEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICogXSBbCiAgICBjaXJjdW1zdGFuY2VzLgog ICA8L3BhcmE+CiAKKyAgPHBhcmE+CisgICBJZiB0aGUgdGFibGUgaGFzIGEgcmFuZ2Ugb3IgbXVs dGlyYW5nZSBjb2x1bW4sCisgICB5b3UgbWF5IHN1cHBseSBhIDxsaXRlcmFsPkZPUiBQT1JUSU9O IE9GPC9saXRlcmFsPiBjbGF1c2UsIGFuZCB5b3VyIHVwZGF0ZSB3aWxsCisgICBvbmx5IGFmZmVj dCByb3dzIHRoYXQgb3ZlcmxhcCB0aGUgZ2l2ZW4gaW50ZXJ2YWwuIEZ1cnRoZXJtb3JlLCBpZiBh IHJvdydzIGhpc3RvcnkKKyAgIGV4dGVuZHMgb3V0c2lkZSB0aGUgPGxpdGVyYWw+Rk9SIFBPUlRJ T04gT0Y8L2xpdGVyYWw+IGJvdW5kcywgdGhlbiB5b3VyIHVwZGF0ZQorICAgd2lsbCBvbmx5IGNo YW5nZSB0aGUgaGlzdG9yeSB3aXRoaW4gdGhvc2UgYm91bmRzLiBJbiBlZmZlY3QgeW91IGFyZSB1 cGRhdGluZyBhbnkKKyAgIG1vbWVudCB0YXJnZXRlZCBieSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBP RjwvbGl0ZXJhbD4gYW5kIG5vIG1vbWVudHMgb3V0c2lkZS4KKyAgPC9wYXJhPgorCisgIDxwYXJh PgorICAgU3BlY2lmaWNhbGx5LCB3aGVuIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0 bmFtZT4gdXBkYXRlcyB0aGUgZXhpc3Rpbmcgcm93LAorICAgaXQgd2lsbCBhbHNvIGNoYW5nZSB0 aGUgcmFuZ2Ugb3IgbXVsdGlyYW5nZSBzbyB0aGF0IHRoZWlyIGludGVydmFsCisgICBubyBsb25n ZXIgZXh0ZW5kcyBiZXlvbmQgdGhlIHRhcmdldGVkIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9s aXRlcmFsPiBib3VuZHMuCisgICBUaGVuIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0 bmFtZT4gd2lsbCA8bGl0ZXJhbD5JTlNFUlQ8L2xpdGVyYWw+CisgICBuZXcgPGdsb3NzdGVybSBs aW5rZW5kPSJnbG9zc2FyeS10ZW1wb3JhbC1sZWZ0b3ZlcnMiPnRlbXBvcmFsIGxlZnRvdmVyczwv Z2xvc3N0ZXJtPjoKKyAgIHJvd3Mgd2hvc2UgcmFuZ2Ugb3IgbXVsdGlyYW5nZSByZWNlaXZlIHRo ZSByZW1haW5pbmcgaGlzdG9yeSBvdXRzaWRlCisgICB0aGUgdGFyZ2V0ZWQgYm91bmRzLCB3aXRo IHVuLXVwZGF0ZWQgdmFsdWVzIGluIHRoZWlyIG90aGVyIGNvbHVtbnMuCisgICBUaGVyZSB3aWxs IGJlIHplcm8gdG8gdHdvIGluc2VydGVkIHJlY29yZHMsCisgICBkZXBlbmRpbmcgb24gd2hldGhl ciB0aGUgb3JpZ2luYWwgaGlzdG9yeSBleHRlbmRlZCBiZWZvcmUgdGhlIHRhcmdldGVkCisgICA8 bGl0ZXJhbD5GUk9NPC9saXRlcmFsPiwgYWZ0ZXIgdGhlIHRhcmdldGVkIDxsaXRlcmFsPlRPPC9s aXRlcmFsPiwgYm90aCwgb3IgbmVpdGhlci4KKyAgIE11bHRpcmFuZ2VzIG5ldmVyIHJlcXVpcmUg dHdvIHRlbXBvcmFsIGxlZnRvdmVycywgYmVjYXVzZSBvbmUgdmFsdWUgY2FuIGFsd2F5cyBjb250 YWluCisgICB3aGF0ZXZlciBoaXN0b3J5IHJlbWFpbnMuCisgIDwvcGFyYT4KKworICA8cGFyYT4K KyAgIFRoZXNlIHNlY29uZGFyeSBpbnNlcnRzIGZpcmUgPGxpdGVyYWw+SU5TRVJUPC9saXRlcmFs PiB0cmlnZ2Vycy4KKyAgIEJvdGggPGxpdGVyYWw+U1RBVEVNRU5UPC9saXRlcmFsPiBhbmQgPGxp dGVyYWw+Uk9XPC9saXRlcmFsPiB0cmlnZ2VycyBhcmUgZmlyZWQuCisgICBUaGUgPGxpdGVyYWw+ QkVGT1JFIFVQREFURTwvbGl0ZXJhbD4gdHJpZ2dlcnMgYXJlIGZpcmVkIGZpcnN0LCB0aGVuCisg ICA8bGl0ZXJhbD5CRUZPUkUgSU5TRVJUPC9saXRlcmFsPiwgdGhlbiA8bGl0ZXJhbD5BRlRFUiBJ TlNFUlQ8L2xpdGVyYWw+LAorICAgdGhlbiA8bGl0ZXJhbD5BRlRFUiBVUERBVEU8L2xpdGVyYWw+ LgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBUaGVzZSBzZWNvbmRhcnkgaW5zZXJ0cyBkbyBu b3QgcmVxdWlyZSA8bGl0ZXJhbD5JTlNFUlQ8L2xpdGVyYWw+IHByaXZpbGVnZSBvbiB0aGUgdGFi bGUuCisgICBUaGlzIGlzIGJlY2F1c2UgY29uY2VwdHVhbGx5IG5vIG5ldyBpbmZvcm1hdGlvbiBo YXMgYmVlbiBhZGRlZC4gVGhlIGluc2VydGVkIHJvd3Mgb25seSBwcmVzZXJ2ZQorICAgZXhpc3Rp bmcgZGF0YSBhYm91dCB0aGUgdW50YXJnZXRlZCB0aW1lIHBlcmlvZC4gTm90ZSB0aGlzIG1heSBy ZXN1bHQgaW4gdXNlcnMgZmlyaW5nIDxsaXRlcmFsPklOU0VSVDwvbGl0ZXJhbD4KKyAgIHRyaWdn ZXJzIHdobyBkb24ndCBoYXZlIGluc2VydCBwcml2aWxlZ2VzLCBzbyBiZSBjYXJlZnVsIGFib3V0 IDxsaXRlcmFsPlNFQ1VSSVRZIERFRklORVI8L2xpdGVyYWw+IHRyaWdnZXIgZnVuY3Rpb25zIQor ICA8L3BhcmE+CisKICAgPHBhcmE+CiAgICBUaGUgb3B0aW9uYWwgPGxpdGVyYWw+UkVUVVJOSU5H PC9saXRlcmFsPiBjbGF1c2UgY2F1c2VzIDxjb21tYW5kPlVQREFURTwvY29tbWFuZD4KICAgIHRv IGNvbXB1dGUgYW5kIHJldHVybiB2YWx1ZShzKSBiYXNlZCBvbiBlYWNoIHJvdyBhY3R1YWxseSB1 cGRhdGVkLgpAQCAtMTE2LDYgKzE1Nyw1NyBAQCBVUERBVEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICogXSBbCiAgICAg PC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgogCisgICA8dmFybGlzdGVudHJ5PgorICAg IDx0ZXJtPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNl YWJsZT48L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFyYT4KKyAgICAgIFRoZSByYW5n ZSBvciBtdWx0aXJhbmdlIGNvbHVtbiB0byB1c2Ugd2hlbiBwZXJmb3JtaW5nIGEgdGVtcG9yYWwg dXBkYXRlLgorICAgICA8L3BhcmE+CisgICAgPC9saXN0aXRlbT4KKyAgIDwvdmFybGlzdGVudHJ5 PgorCisgICA8dmFybGlzdGVudHJ5PgorICAgIDx0ZXJtPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxhY2VhYmxlPjwvdGVybT4KKyAgICA8 bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgVGhlIGludGVydmFsIHRvIHVwZGF0ZS4gSWYg eW91IGFyZSB0YXJnZXRpbmcgYSByYW5nZSBjb2x1bW4sCisgICAgICB5b3UgbWF5IGdpdmUgdGhp cyBpbiB0aGUgZm9ybSA8bGl0ZXJhbD5GUk9NPC9saXRlcmFsPgorICAgICAgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnN0YXJ0X3RpbWU8L3JlcGxhY2VhYmxlPiA8bGl0ZXJhbD5UTzwv bGl0ZXJhbD4KKyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5lbmRfdGltZTwv cmVwbGFjZWFibGU+LgorICAgICAgT3RoZXJ3aXNlIHlvdSBtdXN0IHVzZQorICAgICAgPGxpdGVy YWw+KDwvbGl0ZXJhbD48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZXhwcmVzc2lvbjwv cmVwbGFjZWFibGU+PGxpdGVyYWw+KTwvbGl0ZXJhbD4KKyAgICAgIHdoZXJlIHRoZSBleHByZXNz aW9uIHlpZWxkcyBhIHZhbHVlIG9mIHRoZSBzYW1lIHR5cGUgYXMKKyAgICAgIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4uCisgICAgIDwvcGFy YT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKKyAgIDx2YXJsaXN0ZW50 cnk+CisgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnN0YXJ0X3RpbWU8 L3JlcGxhY2VhYmxlPjwvdGVybT4KKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAg VGhlIGVhcmxpZXN0IHRpbWUgKGluY2x1c2l2ZSkgdG8gY2hhbmdlIGluIGEgdGVtcG9yYWwgdXBk YXRlLgorICAgICAgVGhpcyBtdXN0IGJlIGEgdmFsdWUgbWF0Y2hpbmcgdGhlIGJhc2UgdHlwZSBv ZiB0aGUgcmFuZ2UgZnJvbQorICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJh bmdlX25hbWU8L3JlcGxhY2VhYmxlPi4gQQorICAgICAgPGxpdGVyYWw+TlVMTDwvbGl0ZXJhbD4g aGVyZSBpbmRpY2F0ZXMgYW4gdXBkYXRlIHdob3NlIGJlZ2lubmluZyBpcworICAgICAgdW5ib3Vu ZGVkIChhcyB3aXRoIHJhbmdlIHR5cGVzKS4KKyAgICAgPC9wYXJhPgorICAgIDwvbGlzdGl0ZW0+ CisgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgPHZhcmxpc3RlbnRyeT4KKyAgICA8dGVybT48cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5kX3RpbWU8L3JlcGxhY2VhYmxlPjwvdGVybT4K KyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgVGhlIGxhdGVzdCB0aW1lIChleGNs dXNpdmUpIHRvIGNoYW5nZSBpbiBhIHRlbXBvcmFsIHVwZGF0ZS4KKyAgICAgIFRoaXMgbXVzdCBi ZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIGZyb20KKyAgICAg IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4u IEEKKyAgICAgIDxsaXRlcmFsPk5VTEw8L2xpdGVyYWw+IGhlcmUgaW5kaWNhdGVzIGFuIHVwZGF0 ZSB3aG9zZSBlbmQgaXMgdW5ib3VuZGVkCisgICAgICAoYXMgd2l0aCByYW5nZSB0eXBlcykuCisg ICAgIDwvcGFyYT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKICAgIDx2 YXJsaXN0ZW50cnk+CiAgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNv bHVtbl9uYW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgpAQCAtMjgzLDYg KzM3NSwxMCBAQCBVUERBVEUgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvdW50PC9y ZXBsYWNlYWJsZT4KICAgIHVwZGF0ZXMgd2VyZSBzdXBwcmVzc2VkIGJ5IGEgPGxpdGVyYWw+QkVG T1JFIFVQREFURTwvbGl0ZXJhbD4gdHJpZ2dlci4gIElmCiAgICA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+Y291bnQ8L3JlcGxhY2VhYmxlPiBpcyAwLCBubyByb3dzIHdlcmUKICAgIHVw ZGF0ZWQgYnkgdGhlIHF1ZXJ5ICh0aGlzIGlzIG5vdCBjb25zaWRlcmVkIGFuIGVycm9yKS4KKyAg IElmIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiB3YXMgdXNlZCwgdGhlCisgICA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y291bnQ8L3JlcGxhY2VhYmxlPiBhbHNvIGlu Y2x1ZGVzCisgICA8Z2xvc3N0ZXJtIGxpbmtlbmQ9Imdsb3NzYXJ5LXRlbXBvcmFsLWxlZnRvdmVy cyI+dGVtcG9yYWwgbGVmdG92ZXJzPC9nbG9zc3Rlcm0+CisgICB0aGF0IHdlcmUgaW5zZXJ0ZWQu CiAgIDwvcGFyYT4KIAogICA8cGFyYT4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC90cmlnZ2Vy LnNnbWwgYi9kb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sCmluZGV4IGJiMWI1ZmFmMzRlLi5lM2Fk OTgwNjUyOCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbAorKysgYi9kb2Mv c3JjL3NnbWwvdHJpZ2dlci5zZ21sCkBAIC0zNzMsNiArMzczLDE1IEBACiAgICAgcmVzcG9uc2li aWxpdHkgdG8gYXZvaWQgdGhhdC4KICAgIDwvcGFyYT4KIAorICAgPHBhcmE+CisgICAgSWYgYW4g PGNvbW1hbmQ+VVBEQVRFPC9jb21tYW5kPiBvciA8Y29tbWFuZD5ERUxFVEU8L2NvbW1hbmQ+IHVz ZXMKKyAgICA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4sIGNhdXNpbmcgbmV3IHJv d3MgdG8gYmUgaW5zZXJ0ZWQKKyAgICB0byBwcmVzZXJ2ZSB0aGUgbGVmdG92ZXIgdW50YXJnZXRl ZCBwYXJ0IG9mIG1vZGlmaWVkIHJlY29yZHMsIHRoZW4KKyAgICA8Y29tbWFuZD5JTlNFUlQ8L2Nv bW1hbmQ+IHRyaWdnZXJzIGFyZSBmaXJlZCBmb3IgZWFjaCBpbnNlcnRlZAorICAgIHJvdy4gRWFj aCByb3cgaXMgaW5zZXJ0ZWQgc2VwYXJhdGVseSwgc28gdGhleSBmaXJlIHRoZWlyIG93bgorICAg IHN0YXRlbWVudCB0cmlnZ2VycywgYW5kIHRoZXkgaGF2ZSB0aGVpciBvd24gdHJhbnNpdGlvbiB0 YWJsZXMuCisgICA8L3BhcmE+CisKICAgIDxwYXJhPgogICAgIDxpbmRleHRlcm0+CiAgICAgIDxw cmltYXJ5PnRyaWdnZXI8L3ByaW1hcnk+CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9leGVjdXRv ci9leGVjTWFpbi5jIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY01haW4uYwppbmRleCAyN2M5 ZWVjNjk3Yi4uMjY5Yzg3N2RiY2YgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4 ZWNNYWluLmMKKysrIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY01haW4uYwpAQCAtMTI5NSw2 ICsxMjk1LDcgQEAgSW5pdFJlc3VsdFJlbEluZm8oUmVzdWx0UmVsSW5mbyAqcmVzdWx0UmVsSW5m bywKIAlyZXN1bHRSZWxJbmZvLT5yaV9wcm9qZWN0UmV0dXJuaW5nID0gTlVMTDsKIAlyZXN1bHRS ZWxJbmZvLT5yaV9vbkNvbmZsaWN0QXJiaXRlckluZGV4ZXMgPSBOSUw7CiAJcmVzdWx0UmVsSW5m by0+cmlfb25Db25mbGljdCA9IE5VTEw7CisJcmVzdWx0UmVsSW5mby0+cmlfZm9yUG9ydGlvbk9m ID0gTlVMTDsKIAlyZXN1bHRSZWxJbmZvLT5yaV9SZXR1cm5pbmdTbG90ID0gTlVMTDsKIAlyZXN1 bHRSZWxJbmZvLT5yaV9UcmlnT2xkU2xvdCA9IE5VTEw7CiAJcmVzdWx0UmVsSW5mby0+cmlfVHJp Z05ld1Nsb3QgPSBOVUxMOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZU1v ZGlmeVRhYmxlLmMgYi9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlTW9kaWZ5VGFibGUuYwppbmRl eCA0YzU2NDdhYzM4YS4uNjY1ZGJjMTgyMzkgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2V4ZWN1 dG9yL25vZGVNb2RpZnlUYWJsZS5jCisrKyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVNb2Rp ZnlUYWJsZS5jCkBAIC02OCw2ICs2OCw3IEBACiAjaW5jbHVkZSAic3RvcmFnZS9sbWdyLmgiCiAj aW5jbHVkZSAidXRpbHMvYnVpbHRpbnMuaCIKICNpbmNsdWRlICJ1dGlscy9kYXR1bS5oIgorI2lu Y2x1ZGUgInV0aWxzL3JhbmdldHlwZXMuaCIKICNpbmNsdWRlICJ1dGlscy9yZWwuaCIKICNpbmNs dWRlICJ1dGlscy9zbmFwbWdyLmgiCiAKQEAgLTEzMSw3ICsxMzIsNiBAQCB0eXBlZGVmIHN0cnVj dCBVcGRhdGVDb250ZXh0CiAJTG9ja1R1cGxlTW9kZSBsb2NrbW9kZTsKIH0gVXBkYXRlQ29udGV4 dDsKIAotCiBzdGF0aWMgdm9pZCBFeGVjQmF0Y2hJbnNlcnQoTW9kaWZ5VGFibGVTdGF0ZSAqbXRz dGF0ZSwKIAkJCQkJCQlSZXN1bHRSZWxJbmZvICpyZXN1bHRSZWxJbmZvLAogCQkJCQkJCVR1cGxl VGFibGVTbG90ICoqc2xvdHMsCkBAIC0xNTIsNiArMTUyLDEwIEBAIHN0YXRpYyBib29sIEV4ZWNP bkNvbmZsaWN0VXBkYXRlKE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwKIAkJCQkJCQkJIFR1 cGxlVGFibGVTbG90ICpleGNsdWRlZFNsb3QsCiAJCQkJCQkJCSBib29sIGNhblNldFRhZywKIAkJ CQkJCQkJIFR1cGxlVGFibGVTbG90ICoqcmV0dXJuaW5nKTsKK3N0YXRpYyB2b2lkIEV4ZWNGb3JQ b3J0aW9uT2ZMZWZ0b3ZlcnMoTW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LAorCQkJCQkJCQkJ ICBFU3RhdGUgKmVzdGF0ZSwKKwkJCQkJCQkJCSAgUmVzdWx0UmVsSW5mbyAqcmVzdWx0UmVsSW5m bywKKwkJCQkJCQkJCSAgSXRlbVBvaW50ZXIgdHVwbGVpZCk7CiBzdGF0aWMgVHVwbGVUYWJsZVNs b3QgKkV4ZWNQcmVwYXJlVHVwbGVSb3V0aW5nKE1vZGlmeVRhYmxlU3RhdGUgKm10c3RhdGUsCiAJ CQkJCQkJCQkJCSAgIEVTdGF0ZSAqZXN0YXRlLAogCQkJCQkJCQkJCQkgICBQYXJ0aXRpb25UdXBs ZVJvdXRpbmcgKnByb3V0ZSwKQEAgLTE3NCw2ICsxNzgsOSBAQCBzdGF0aWMgVHVwbGVUYWJsZVNs b3QgKkV4ZWNNZXJnZU1hdGNoZWQoTW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LAogc3RhdGlj IFR1cGxlVGFibGVTbG90ICpFeGVjTWVyZ2VOb3RNYXRjaGVkKE1vZGlmeVRhYmxlQ29udGV4dCAq Y29udGV4dCwKIAkJCQkJCQkJCQkgICBSZXN1bHRSZWxJbmZvICpyZXN1bHRSZWxJbmZvLAogCQkJ CQkJCQkJCSAgIGJvb2wgY2FuU2V0VGFnKTsKK3N0YXRpYyB2b2lkIEV4ZWNTZXR1cFRyYW5zaXRp b25DYXB0dXJlU3RhdGUoTW9kaWZ5VGFibGVTdGF0ZSAqbXRzdGF0ZSwgRVN0YXRlICplc3RhdGUp Oworc3RhdGljIHZvaWQgZmlyZUJTVHJpZ2dlcnMoTW9kaWZ5VGFibGVTdGF0ZSAqbm9kZSk7Citz dGF0aWMgdm9pZCBmaXJlQVNUcmlnZ2VycyhNb2RpZnlUYWJsZVN0YXRlICpub2RlKTsKIAogCiAv KgpAQCAtMTM1NSw2ICsxMzYyLDE5MiBAQCBFeGVjSW5zZXJ0KE1vZGlmeVRhYmxlQ29udGV4dCAq Y29udGV4dCwKIAlyZXR1cm4gcmVzdWx0OwogfQogCisvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgkJRXhlY0ZvclBv cnRpb25PZkxlZnRvdmVycworICoKKyAqCQlJbnNlcnQgdHVwbGVzIGZvciB0aGUgdW50b3VjaGVk IHBvcnRpb24gb2YgYSByb3cgaW4gYSBGT1IKKyAqCQlQT1JUSU9OIE9GIFVQREFURS9ERUxFVEUK KyAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KKyAqLworc3RhdGljIHZvaWQKK0V4ZWNGb3JQb3J0aW9uT2ZMZWZ0b3ZlcnMo TW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LAorCQkJCQkJICBFU3RhdGUgKmVzdGF0ZSwKKwkJ CQkJCSAgUmVzdWx0UmVsSW5mbyAqcmVzdWx0UmVsSW5mbywKKwkJCQkJCSAgSXRlbVBvaW50ZXIg dHVwbGVpZCkKK3sKKwlNb2RpZnlUYWJsZVN0YXRlICptdHN0YXRlID0gY29udGV4dC0+bXRzdGF0 ZTsKKwlNb2RpZnlUYWJsZSAqbm9kZSA9IChNb2RpZnlUYWJsZSAqKSBtdHN0YXRlLT5wcy5wbGFu OworCUZvclBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZiA9IChGb3JQb3J0aW9uT2ZFeHByICop IG5vZGUtPmZvclBvcnRpb25PZjsKKwlBdHRyTnVtYmVyCXJhbmdlQXR0bm87CisJRGF0dW0JCW9s ZFJhbmdlOworCVR5cGVDYWNoZUVudHJ5ICp0eXBjYWNoZTsKKwlGb3JQb3J0aW9uT2ZTdGF0ZSAq ZnBvU3RhdGUgPSByZXN1bHRSZWxJbmZvLT5yaV9mb3JQb3J0aW9uT2Y7CisJVHVwbGVUYWJsZVNs b3QgKm9sZHR1cGxlU2xvdCA9IGZwb1N0YXRlLT5mcF9FeGlzdGluZzsKKwlUdXBsZVRhYmxlU2xv dCAqbGVmdG92ZXJTbG90ID0gZnBvU3RhdGUtPmZwX0xlZnRvdmVyOworCVR1cGxlQ29udmVyc2lv bk1hcCAqbWFwID0gTlVMTDsKKwlIZWFwVHVwbGUJb2xkdHVwbGUgPSBOVUxMOworCUNtZFR5cGUJ CW9sZE9wZXJhdGlvbjsKKwlUcmFuc2l0aW9uQ2FwdHVyZVN0YXRlICpvbGRUY3M7CisJRm1ncklu Zm8JZmxpbmZvOworCVJldHVyblNldEluZm8gcnNpOworCWJvb2wJCWRpZEluaXQgPSBmYWxzZTsK Kwlib29sCQlzaG91bGRGcmVlID0gZmFsc2U7CisKKwlMT0NBTF9GQ0lORk8oZmNpbmZvLCAyKTsK KworCS8qCisJICogR2V0IHRoZSBvbGQgcHJlLVVQREFURS9ERUxFVEUgdHVwbGUuIFdlIHdpbGwg dXNlIGl0cyByYW5nZSB0byBjb21wdXRlCisJICogdW50b3VjaGVkIHBhcnRzIG9mIGhpc3Rvcnks IGFuZCBpZiBuZWNlc3Nhcnkgd2Ugd2lsbCBpbnNlcnQgY29waWVzCisJICogd2l0aCB0cnVuY2F0 ZWQgc3RhcnQvZW5kIHRpbWVzLgorCSAqCisJICogV2UgaGF2ZSBhbHJlYWR5IGxvY2tlZCB0aGUg dHVwbGUgaW4gRXhlY1VwZGF0ZS9FeGVjRGVsZXRlLCBhbmQgaXQgaGFzCisJICogcGFzc2VkIEV2 YWxQbGFuUXVhbC4gVGhpcyBlbnN1cmVzIHRoYXQgY29uY3VycmVudCB1cGRhdGVzIGluIFJFQUQK KwkgKiBDT01NSVRURUQgY2FuJ3QgaW5zZXJ0IGNvbmZsaWN0aW5nIHRlbXBvcmFsIGxlZnRvdmVy cy4KKwkgKi8KKwlpZiAoIXRhYmxlX3R1cGxlX2ZldGNoX3Jvd192ZXJzaW9uKHJlc3VsdFJlbElu Zm8tPnJpX1JlbGF0aW9uRGVzYywgdHVwbGVpZCwgU25hcHNob3RBbnksIG9sZHR1cGxlU2xvdCkp CisJCWVsb2coRVJST1IsICJmYWlsZWQgdG8gZmV0Y2ggdHVwbGUgZm9yIEZPUiBQT1JUSU9OIE9G Iik7CisKKwkvKgorCSAqIEdldCB0aGUgb2xkIHJhbmdlIG9mIHRoZSByZWNvcmQgYmVpbmcgdXBk YXRlZC9kZWxldGVkLiBNdXN0IHJlYWQgd2l0aAorCSAqIHRoZSBhdHRubyBvZiB0aGUgbGVhZiBw YXJ0aXRpb24gYmVpbmcgdXBkYXRlZC4KKwkgKi8KKworCXJhbmdlQXR0bm8gPSBmb3JQb3J0aW9u T2YtPnJhbmdlVmFyLT52YXJhdHRubzsKKwlpZiAocmVzdWx0UmVsSW5mby0+cmlfUm9vdFJlc3Vs dFJlbEluZm8pCisJCW1hcCA9IEV4ZWNHZXRDaGlsZFRvUm9vdE1hcChyZXN1bHRSZWxJbmZvKTsK KwlpZiAobWFwICE9IE5VTEwpCisJCXJhbmdlQXR0bm8gPSBtYXAtPmF0dHJNYXAtPmF0dG51bXNb cmFuZ2VBdHRubyAtIDFdOworCXNsb3RfZ2V0YWxsYXR0cnMob2xkdHVwbGVTbG90KTsKKworCWlm IChvbGR0dXBsZVNsb3QtPnR0c19pc251bGxbcmFuZ2VBdHRubyAtIDFdKQorCQllbG9nKEVSUk9S LCAiZm91bmQgYSBOVUxMIHJhbmdlIGluIGEgdGVtcG9yYWwgdGFibGUiKTsKKwlvbGRSYW5nZSA9 IG9sZHR1cGxlU2xvdC0+dHRzX3ZhbHVlc1tyYW5nZUF0dG5vIC0gMV07CisKKwkvKgorCSAqIEdl dCB0aGUgcmFuZ2UncyB0eXBlIGNhY2hlIGVudHJ5LiBUaGlzIGlzIHdvcnRoIGNhY2hpbmcgZm9y IHRoZSB3aG9sZQorCSAqIFVQREFURS9ERUxFVEUgYXMgcmFuZ2UgZnVuY3Rpb25zIGRvLgorCSAq LworCisJdHlwY2FjaGUgPSBmcG9TdGF0ZS0+ZnBfbGVmdG92ZXJzdHlwY2FjaGU7CisJaWYgKHR5 cGNhY2hlID09IE5VTEwpCisJeworCQl0eXBjYWNoZSA9IGxvb2t1cF90eXBlX2NhY2hlKGZvclBv cnRpb25PZi0+cmFuZ2VUeXBlLCAwKTsKKwkJZnBvU3RhdGUtPmZwX2xlZnRvdmVyc3R5cGNhY2hl ID0gdHlwY2FjaGU7CisJfQorCisJLyoKKwkgKiBHZXQgdGhlIHJhbmdlcyB0byB0aGUgbGVmdC9y aWdodCBvZiB0aGUgdGFyZ2V0ZWQgcmFuZ2UuIFdlIGNhbGwgYSBTRVRPRgorCSAqIHN1cHBvcnQg ZnVuY3Rpb24gYW5kIGluc2VydCBhcyBtYW55IHRlbXBvcmFsIGxlZnRvdmVycyBhcyBpdCBnaXZl cyB1cy4KKwkgKiBBbHRob3VnaCByYW5nZXR5cGVzIGhhdmUgMC8xLzIgbGVmdG92ZXJzLCBtdWx0 aXJhbmdlcyBoYXZlIDAvMSwgYW5kCisJICogb3RoZXIgdHlwZXMgbWF5IGhhdmUgbW9yZS4KKwkg Ki8KKworCWZtZ3JfaW5mbyhmb3JQb3J0aW9uT2YtPndpdGhvdXRQb3J0aW9uUHJvYywgJmZsaW5m byk7CisJcnNpLnR5cGUgPSBUX1JldHVyblNldEluZm87CisJcnNpLmVjb250ZXh0ID0gbXRzdGF0 ZS0+cHMucHNfRXhwckNvbnRleHQ7CisJcnNpLmV4cGVjdGVkRGVzYyA9IE5VTEw7CisJcnNpLmFs bG93ZWRNb2RlcyA9IChpbnQpIChTRlJNX1ZhbHVlUGVyQ2FsbCk7CisJcnNpLnJldHVybk1vZGUg PSBTRlJNX1ZhbHVlUGVyQ2FsbDsKKwlyc2kuc2V0UmVzdWx0ID0gTlVMTDsKKwlyc2kuc2V0RGVz YyA9IE5VTEw7CisKKwlJbml0RnVuY3Rpb25DYWxsSW5mb0RhdGEoKmZjaW5mbywgJmZsaW5mbywg MiwgSW52YWxpZE9pZCwgTlVMTCwgKE5vZGUgKikgJnJzaSk7CisJZmNpbmZvLT5hcmdzWzBdLnZh bHVlID0gb2xkUmFuZ2U7CisJZmNpbmZvLT5hcmdzWzBdLmlzbnVsbCA9IGZhbHNlOworCWZjaW5m by0+YXJnc1sxXS52YWx1ZSA9IGZwb1N0YXRlLT5mcF90YXJnZXRSYW5nZTsKKwlmY2luZm8tPmFy Z3NbMV0uaXNudWxsID0gZmFsc2U7CisKKwkvKgorCSAqIElmIHRoZXJlIGFyZSBwYXJ0aXRpb25z LCB3ZSBtdXN0IGluc2VydCBpbnRvIHRoZSByb290IHRhYmxlLCBzbyB3ZSBnZXQKKwkgKiB0dXBs ZSByb3V0aW5nLiBXZSBhbHJlYWR5IHNldCB1cCBsZWZ0b3ZlclNsb3Qgd2l0aCB0aGUgcm9vdCB0 dXBsZQorCSAqIGRlc2NyaXB0b3IuCisJICovCisJaWYgKHJlc3VsdFJlbEluZm8tPnJpX1Jvb3RS ZXN1bHRSZWxJbmZvKQorCQlyZXN1bHRSZWxJbmZvID0gcmVzdWx0UmVsSW5mby0+cmlfUm9vdFJl c3VsdFJlbEluZm87CisKKwkvKgorCSAqIEluc2VydCBhIGxlZnRvdmVyIGZvciBlYWNoIHZhbHVl IHJldHVybmVkIGJ5IHRoZSB3aXRob3V0X3BvcnRpb24gaGVscGVyCisJICogZnVuY3Rpb24KKwkg Ki8KKwl3aGlsZSAodHJ1ZSkKKwl7CisJCURhdHVtCQlsZWZ0b3ZlciA9IEZ1bmN0aW9uQ2FsbElu dm9rZShmY2luZm8pOworCisJCS8qIEFyZSB3ZSBkb25lPyAqLworCQlpZiAocnNpLmlzRG9uZSA9 PSBFeHByRW5kUmVzdWx0KQorCQkJYnJlYWs7CisKKwkJaWYgKGZjaW5mby0+aXNudWxsKQorCQkJ ZWxvZyhFUlJPUiwgIkdvdCBhIG51bGwgZnJvbSB3aXRob3V0X3BvcnRpb24gZnVuY3Rpb24iKTsK KworCQlpZiAoIWRpZEluaXQpCisJCXsKKwkJCS8qCisJCQkgKiBNYWtlIGEgY29weSBvZiB0aGUg cHJlLVVQREFURSByb3cuIFRoZW4gd2UnbGwgb3ZlcndyaXRlIHRoZQorCQkJICogcmFuZ2UgY29s dW1uIGJlbG93LiBDb252ZXJ0IG9sZHR1cGxlIHRvIHRoZSBiYXNlIHRhYmxlJ3MgZm9ybWF0CisJ CQkgKiBpZiBuZWNlc3NhcnkuIFdlIG5lZWQgdG8gaW5zZXJ0IHRlbXBvcmFsIGxlZnRvdmVycyB0 aHJvdWdoIHRoZQorCQkJICogcm9vdCBwYXJ0aXRpb24gc28gdGhleSBnZXQgcm91dGVkIGNvcnJl Y3RseS4KKwkJCSAqLworCQkJaWYgKG1hcCAhPSBOVUxMKQorCQkJeworCQkJCWxlZnRvdmVyU2xv dCA9IGV4ZWN1dGVfYXR0cl9tYXBfc2xvdChtYXAtPmF0dHJNYXAsCisJCQkJCQkJCQkJCQkJIG9s ZHR1cGxlU2xvdCwKKwkJCQkJCQkJCQkJCQkgbGVmdG92ZXJTbG90KTsKKwkJCX0KKwkJCWVsc2UK KwkJCXsKKwkJCQlvbGR0dXBsZSA9IEV4ZWNGZXRjaFNsb3RIZWFwVHVwbGUob2xkdHVwbGVTbG90 LCBmYWxzZSwgJnNob3VsZEZyZWUpOworCQkJCUV4ZWNGb3JjZVN0b3JlSGVhcFR1cGxlKG9sZHR1 cGxlLCBsZWZ0b3ZlclNsb3QsIGZhbHNlKTsKKwkJCX0KKworCQkJLyoKKwkJCSAqIFNhdmUgc29t ZSBtdHN0YXRlIHRoaW5ncyBzbyB3ZSBjYW4gcmVzdG9yZSB0aGVtIGJlbG93LiBYWFg6CisJCQkg KiBTaG91bGQgd2UgY3JlYXRlIG91ciBvd24gTW9kaWZ5VGFibGVTdGF0ZSBpbnN0ZWFkPworCQkJ ICovCisJCQlvbGRPcGVyYXRpb24gPSBtdHN0YXRlLT5vcGVyYXRpb247CisJCQltdHN0YXRlLT5v cGVyYXRpb24gPSBDTURfSU5TRVJUOworCQkJb2xkVGNzID0gbXRzdGF0ZS0+bXRfdHJhbnNpdGlv bl9jYXB0dXJlOworCisJCQlkaWRJbml0ID0gdHJ1ZTsKKwkJfQorCisJCWxlZnRvdmVyU2xvdC0+ dHRzX3ZhbHVlc1tmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52YXJhdHRubyAtIDFdID0gbGVmdG92 ZXI7CisJCWxlZnRvdmVyU2xvdC0+dHRzX2lzbnVsbFtmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52 YXJhdHRubyAtIDFdID0gZmFsc2U7CisJCUV4ZWNNYXRlcmlhbGl6ZVNsb3QobGVmdG92ZXJTbG90 KTsKKworCQkvKgorCQkgKiBJZiB0aGVyZSBhcmUgcGFydGl0aW9ucywgd2UgbXVzdCBpbnNlcnQg aW50byB0aGUgcm9vdCB0YWJsZSwgc28gd2UKKwkJICogZ2V0IHR1cGxlIHJvdXRpbmcuIFdlIGFs cmVhZHkgc2V0IHVwIGxlZnRvdmVyU2xvdCB3aXRoIHRoZSByb290CisJCSAqIHR1cGxlIGRlc2Ny aXB0b3IuCisJCSAqLworCQlpZiAocmVzdWx0UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm8p CisJCQlyZXN1bHRSZWxJbmZvID0gcmVzdWx0UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm87 CisKKwkJLyoKKwkJICogVGhlIHN0YW5kYXJkIHNheXMgdGhhdCBlYWNoIHRlbXBvcmFsIGxlZnRv dmVyIHNob3VsZCBleGVjdXRlIGl0cworCQkgKiBvd24gSU5TRVJUIHN0YXRlbWVudCwgZmlyaW5n IGFsbCBzdGF0ZW1lbnQgYW5kIHJvdyB0cmlnZ2VycywgYnV0CisJCSAqIHNraXBwaW5nIGluc2Vy dCBwZXJtaXNzaW9uIGNoZWNrcy4gVGhlcmVmb3JlIHdlIGdpdmUgZWFjaCBpbnNlcnQKKwkJICog aXRzIG93biB0cmFuc2l0aW9uIHRhYmxlLiBJZiB3ZSBqdXN0IHB1c2ggJiBwb3AgYSBuZXcgdHJp Z2dlciBsZXZlbAorCQkgKiBmb3IgZWFjaCBpbnNlcnQsIHdlIGdldCBleGFjdGx5IHdoYXQgd2Ug bmVlZC4KKwkJICovCisJCUFmdGVyVHJpZ2dlckJlZ2luUXVlcnkoKTsKKwkJRXhlY1NldHVwVHJh bnNpdGlvbkNhcHR1cmVTdGF0ZShtdHN0YXRlLCBlc3RhdGUpOworCQlmaXJlQlNUcmlnZ2Vycyht dHN0YXRlKTsKKwkJRXhlY0luc2VydChjb250ZXh0LCByZXN1bHRSZWxJbmZvLCBsZWZ0b3ZlclNs b3QsIG5vZGUtPmNhblNldFRhZywgTlVMTCwgTlVMTCk7CisJCWZpcmVBU1RyaWdnZXJzKG10c3Rh dGUpOworCQlBZnRlclRyaWdnZXJFbmRRdWVyeShlc3RhdGUpOworCX0KKworCWlmIChkaWRJbml0 KQorCXsKKwkJbXRzdGF0ZS0+b3BlcmF0aW9uID0gb2xkT3BlcmF0aW9uOworCQltdHN0YXRlLT5t dF90cmFuc2l0aW9uX2NhcHR1cmUgPSBvbGRUY3M7CisKKwkJaWYgKHNob3VsZEZyZWUpCisJCQlo ZWFwX2ZyZWV0dXBsZShvbGR0dXBsZSk7CisJfQorfQorCiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgKgkJRXhlY0Jh dGNoSW5zZXJ0CiAgKgpAQCAtMTUwOCw3ICsxNzAxLDggQEAgRXhlY0RlbGV0ZUFjdChNb2RpZnlU YWJsZUNvbnRleHQgKmNvbnRleHQsIFJlc3VsdFJlbEluZm8gKnJlc3VsdFJlbEluZm8sCiAgKgog ICogQ2xvc2luZyBzdGVwcyBvZiB0dXBsZSBkZWxldGlvbjsgdGhpcyBpbnZva2VzIEFGVEVSIEZP UiBFQUNIIFJPVyB0cmlnZ2VycywKICAqIGluY2x1ZGluZyB0aGUgVVBEQVRFIHRyaWdnZXJzIGlm IHRoZSBkZWxldGlvbiBpcyBiZWluZyBkb25lIGFzIHBhcnQgb2YgYQotICogY3Jvc3MtcGFydGl0 aW9uIHR1cGxlIG1vdmUuCisgKiBjcm9zcy1wYXJ0aXRpb24gdHVwbGUgbW92ZS4gSXQgYWxzbyBp bnNlcnRzIHRlbXBvcmFsIGxlZnRvdmVycyBmcm9tIGEKKyAqIERFTEVURSBGT1IgUE9SVElPTiBP Ri4KICAqLwogc3RhdGljIHZvaWQKIEV4ZWNEZWxldGVFcGlsb2d1ZShNb2RpZnlUYWJsZUNvbnRl eHQgKmNvbnRleHQsIFJlc3VsdFJlbEluZm8gKnJlc3VsdFJlbEluZm8sCkBAIC0xNTQxLDYgKzE3 MzUsMTAgQEAgRXhlY0RlbGV0ZUVwaWxvZ3VlKE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwg UmVzdWx0UmVsSW5mbyAqcmVzdWx0UmVsSW5mbywKIAkJYXJfZGVsZXRlX3RyaWdfdGNzID0gTlVM TDsKIAl9CiAKKwkvKiBDb21wdXRlIHRlbXBvcmFsIGxlZnRvdmVycyBpbiBGT1IgUE9SVElPTiBP RiAqLworCWlmICgoKE1vZGlmeVRhYmxlICopIGNvbnRleHQtPm10c3RhdGUtPnBzLnBsYW4pLT5m b3JQb3J0aW9uT2YpCisJCUV4ZWNGb3JQb3J0aW9uT2ZMZWZ0b3ZlcnMoY29udGV4dCwgZXN0YXRl LCByZXN1bHRSZWxJbmZvLCB0dXBsZWlkKTsKKwogCS8qIEFGVEVSIFJPVyBERUxFVEUgVHJpZ2dl cnMgKi8KIAlFeGVjQVJEZWxldGVUcmlnZ2Vycyhlc3RhdGUsIHJlc3VsdFJlbEluZm8sIHR1cGxl aWQsIG9sZHR1cGxlLAogCQkJCQkJIGFyX2RlbGV0ZV90cmlnX3RjcywgY2hhbmdpbmdQYXJ0KTsK QEAgLTE5NjYsNyArMjE2NCwxMCBAQCBFeGVjQ3Jvc3NQYXJ0aXRpb25VcGRhdGUoTW9kaWZ5VGFi bGVDb250ZXh0ICpjb250ZXh0LAogCWlmIChyZXN1bHRSZWxJbmZvID09IG10c3RhdGUtPnJvb3RS ZXN1bHRSZWxJbmZvKQogCQlFeGVjUGFydGl0aW9uQ2hlY2tFbWl0RXJyb3IocmVzdWx0UmVsSW5m bywgc2xvdCwgZXN0YXRlKTsKIAotCS8qIEluaXRpYWxpemUgdHVwbGUgcm91dGluZyBpbmZvIGlm IG5vdCBhbHJlYWR5IGRvbmUuICovCisJLyoKKwkgKiBJbml0aWFsaXplIHR1cGxlIHJvdXRpbmcg aW5mbyBpZiBub3QgYWxyZWFkeSBkb25lLiBOb3RlIHdoYXRldmVyIHdlIGRvCisJICogaGVyZSBt dXN0IGJlIGRvbmUgaW4gRXhlY0luaXRNb2RpZnlUYWJsZSBmb3IgRk9SIFBPUlRJT04gT0YgYXMg d2VsbC4KKwkgKi8KIAlpZiAobXRzdGF0ZS0+bXRfcGFydGl0aW9uX3R1cGxlX3JvdXRpbmcgPT0g TlVMTCkKIAl7CiAJCVJlbGF0aW9uCXJvb3RSZWwgPSBtdHN0YXRlLT5yb290UmVzdWx0UmVsSW5m by0+cmlfUmVsYXRpb25EZXNjOwpAQCAtMjMxNSw3ICsyNTE2LDggQEAgbHJlcGxhY2U6CiAgKiBF eGVjVXBkYXRlRXBpbG9ndWUgLS0gc3Vicm91dGluZSBmb3IgRXhlY1VwZGF0ZQogICoKICAqIENs b3Npbmcgc3RlcHMgb2YgdXBkYXRpbmcgYSB0dXBsZS4gIE11c3QgYmUgY2FsbGVkIGlmIEV4ZWNV cGRhdGVBY3QKLSAqIHJldHVybnMgaW5kaWNhdGluZyB0aGF0IHRoZSB0dXBsZSB3YXMgdXBkYXRl ZC4KKyAqIHJldHVybnMgaW5kaWNhdGluZyB0aGF0IHRoZSB0dXBsZSB3YXMgdXBkYXRlZC4gSXQg YWxzbyBpbnNlcnRzIHRlbXBvcmFsCisgKiBsZWZ0b3ZlcnMgZnJvbSBhbiBVUERBVEUgRk9SIFBP UlRJT04gT0YuCiAgKi8KIHN0YXRpYyB2b2lkCiBFeGVjVXBkYXRlRXBpbG9ndWUoTW9kaWZ5VGFi bGVDb250ZXh0ICpjb250ZXh0LCBVcGRhdGVDb250ZXh0ICp1cGRhdGVDeHQsCkBAIC0yMzMzLDYg KzI1MzUsMTAgQEAgRXhlY1VwZGF0ZUVwaWxvZ3VlKE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4 dCwgVXBkYXRlQ29udGV4dCAqdXBkYXRlQ3h0LAogCQkJCQkJCQkJCQkgICBOVUxMLCBOSUwsCiAJ CQkJCQkJCQkJCSAgICh1cGRhdGVDeHQtPnVwZGF0ZUluZGV4ZXMgPT0gVFVfU3VtbWFyaXppbmcp KTsKIAorCS8qIENvbXB1dGUgdGVtcG9yYWwgbGVmdG92ZXJzIGluIEZPUiBQT1JUSU9OIE9GICov CisJaWYgKCgoTW9kaWZ5VGFibGUgKikgY29udGV4dC0+bXRzdGF0ZS0+cHMucGxhbiktPmZvclBv cnRpb25PZikKKwkJRXhlY0ZvclBvcnRpb25PZkxlZnRvdmVycyhjb250ZXh0LCBjb250ZXh0LT5l c3RhdGUsIHJlc3VsdFJlbEluZm8sIHR1cGxlaWQpOworCiAJLyogQUZURVIgUk9XIFVQREFURSBU cmlnZ2VycyAqLwogCUV4ZWNBUlVwZGF0ZVRyaWdnZXJzKGNvbnRleHQtPmVzdGF0ZSwgcmVzdWx0 UmVsSW5mbywKIAkJCQkJCSBOVUxMLCBOVUxMLApAQCAtNTA2Miw2ICs1MjY4LDEyMiBAQCBFeGVj SW5pdE1vZGlmeVRhYmxlKE1vZGlmeVRhYmxlICpub2RlLCBFU3RhdGUgKmVzdGF0ZSwgaW50IGVm bGFncykKIAkJfQogCX0KIAorCS8qCisJICogSWYgbmVlZGVkLCBpbml0aWFsaXplIHRoZSB0YXJn ZXQgcmFuZ2UgZm9yIEZPUiBQT1JUSU9OIE9GLgorCSAqLworCWlmIChub2RlLT5mb3JQb3J0aW9u T2YpCisJeworCQlSZXN1bHRSZWxJbmZvICpyb290UmVzdWx0UmVsSW5mbzsKKwkJVHVwbGVEZXNj CXR1cERlc2M7CisJCUZvclBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZjsKKwkJRGF0dW0JCXRh cmdldFJhbmdlOworCQlib29sCQlpc051bGw7CisJCUV4cHJDb250ZXh0ICplY29udGV4dDsKKwkJ RXhwclN0YXRlICAqZXhwclN0YXRlOworCQlGb3JQb3J0aW9uT2ZTdGF0ZSAqZnBvU3RhdGU7CisK KwkJcm9vdFJlc3VsdFJlbEluZm8gPSBtdHN0YXRlLT5yZXN1bHRSZWxJbmZvOworCQlpZiAocm9v dFJlc3VsdFJlbEluZm8tPnJpX1Jvb3RSZXN1bHRSZWxJbmZvKQorCQkJcm9vdFJlc3VsdFJlbElu Zm8gPSByb290UmVzdWx0UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm87CisKKwkJdHVwRGVz YyA9IHJvb3RSZXN1bHRSZWxJbmZvLT5yaV9SZWxhdGlvbkRlc2MtPnJkX2F0dDsKKwkJZm9yUG9y dGlvbk9mID0gKEZvclBvcnRpb25PZkV4cHIgKikgbm9kZS0+Zm9yUG9ydGlvbk9mOworCisJCS8q IEV2YWwgdGhlIEZPUiBQT1JUSU9OIE9GIHRhcmdldCAqLworCQlpZiAobXRzdGF0ZS0+cHMucHNf RXhwckNvbnRleHQgPT0gTlVMTCkKKwkJCUV4ZWNBc3NpZ25FeHByQ29udGV4dChlc3RhdGUsICZt dHN0YXRlLT5wcyk7CisJCWVjb250ZXh0ID0gbXRzdGF0ZS0+cHMucHNfRXhwckNvbnRleHQ7CisK KwkJZXhwclN0YXRlID0gRXhlY1ByZXBhcmVFeHByKChFeHByICopIGZvclBvcnRpb25PZi0+dGFy Z2V0UmFuZ2UsIGVzdGF0ZSk7CisJCXRhcmdldFJhbmdlID0gRXhlY0V2YWxFeHByKGV4cHJTdGF0 ZSwgZWNvbnRleHQsICZpc051bGwpOworCQlpZiAoaXNOdWxsKQorCQkJZWxvZyhFUlJPUiwgIkdv dCBhIE5VTEwgRk9SIFBPUlRJT04gT0YgdGFyZ2V0IHJhbmdlIik7CisKKwkJLyogQ3JlYXRlIHN0 YXRlIGZvciBGT1IgUE9SVElPTiBPRiBvcGVyYXRpb24gKi8KKworCQlmcG9TdGF0ZSA9IG1ha2VO b2RlKEZvclBvcnRpb25PZlN0YXRlKTsKKwkJZnBvU3RhdGUtPmZwX3JhbmdlTmFtZSA9IGZvclBv cnRpb25PZi0+cmFuZ2VfbmFtZTsKKwkJZnBvU3RhdGUtPmZwX3JhbmdlVHlwZSA9IGZvclBvcnRp b25PZi0+cmFuZ2VUeXBlOworCQlmcG9TdGF0ZS0+ZnBfcmFuZ2VBdHRubyA9IGZvclBvcnRpb25P Zi0+cmFuZ2VWYXItPnZhcmF0dG5vOworCQlmcG9TdGF0ZS0+ZnBfdGFyZ2V0UmFuZ2UgPSB0YXJn ZXRSYW5nZTsKKworCQkvKiBJbml0aWFsaXplIHNsb3QgZm9yIHRoZSBleGlzdGluZyB0dXBsZSAq LworCisJCWZwb1N0YXRlLT5mcF9FeGlzdGluZyA9CisJCQl0YWJsZV9zbG90X2NyZWF0ZShyb290 UmVzdWx0UmVsSW5mby0+cmlfUmVsYXRpb25EZXNjLAorCQkJCQkJCSAgJm10c3RhdGUtPnBzLnN0 YXRlLT5lc190dXBsZVRhYmxlKTsKKworCQkvKiBDcmVhdGUgdGhlIHR1cGxlIHNsb3QgZm9yIElO U0VSVGluZyB0aGUgdGVtcG9yYWwgbGVmdG92ZXJzICovCisKKwkJZnBvU3RhdGUtPmZwX0xlZnRv dmVyID0KKwkJCUV4ZWNJbml0RXh0cmFUdXBsZVNsb3QobXRzdGF0ZS0+cHMuc3RhdGUsIHR1cERl c2MsICZUVFNPcHNWaXJ0dWFsKTsKKworCQkvKgorCQkgKiBXZSBtdXN0IGF0dGFjaCB0aGUgRm9y UG9ydGlvbk9mU3RhdGUgdG8gYWxsIHJlc3VsdCByZWxzLCBpbiBjYXNlIG9mCisJCSAqIGEgY3Jv c3MtcGFydGl0aW9uIHVwZGF0ZSBvciB0cmlnZ2VycyBmaXJpbmcgb24gcGFydGl0aW9ucy4gWFhY OiBDYW4KKwkJICogd2UgZGVmZXIgdGhpcyB0byBvbmx5IHRoZSBsZWFmcyB3ZSB0b3VjaD8KKwkJ ICovCisJCWZvciAoaSA9IDA7IGkgPCBucmVsczsgaSsrKQorCQl7CisJCQlGb3JQb3J0aW9uT2ZT dGF0ZSAqbGVhZlN0YXRlOworCisJCQlyZXN1bHRSZWxJbmZvID0gJm10c3RhdGUtPnJlc3VsdFJl bEluZm9baV07CisKKwkJCWxlYWZTdGF0ZSA9IG1ha2VOb2RlKEZvclBvcnRpb25PZlN0YXRlKTsK KwkJCWxlYWZTdGF0ZS0+ZnBfcmFuZ2VOYW1lID0gZnBvU3RhdGUtPmZwX3JhbmdlTmFtZTsKKwkJ CWxlYWZTdGF0ZS0+ZnBfcmFuZ2VUeXBlID0gZnBvU3RhdGUtPmZwX3JhbmdlVHlwZTsKKwkJCWxl YWZTdGF0ZS0+ZnBfcmFuZ2VBdHRubyA9IGZwb1N0YXRlLT5mcF9yYW5nZUF0dG5vOworCQkJbGVh ZlN0YXRlLT5mcF90YXJnZXRSYW5nZSA9IGZwb1N0YXRlLT5mcF90YXJnZXRSYW5nZTsKKwkJCWxl YWZTdGF0ZS0+ZnBfTGVmdG92ZXIgPSBmcG9TdGF0ZS0+ZnBfTGVmdG92ZXI7CisJCQkvKiBFYWNo IHBhcnRpdGlvbiBuZWVkcyBhIHNsb3QgbWF0Y2hpbmcgaXRzIHR1cGxlIGRlc2NyaXB0b3IgKi8K KwkJCWxlYWZTdGF0ZS0+ZnBfRXhpc3RpbmcgPQorCQkJCXRhYmxlX3Nsb3RfY3JlYXRlKHJlc3Vs dFJlbEluZm8tPnJpX1JlbGF0aW9uRGVzYywKKwkJCQkJCQkJICAmbXRzdGF0ZS0+cHMuc3RhdGUt PmVzX3R1cGxlVGFibGUpOworCisJCQlyZXN1bHRSZWxJbmZvLT5yaV9mb3JQb3J0aW9uT2YgPSBs ZWFmU3RhdGU7CisJCX0KKworCQkvKiBNYWtlIHN1cmUgdGhlIHJvb3QgcmVsYXRpb24gaGFzIHRo ZSBGT1IgUE9SVElPTiBPRiBjbGF1c2UgdG9vLiAqLworCQlpZiAobm9kZS0+cm9vdFJlbGF0aW9u ID4gMCkKKwkJCW10c3RhdGUtPnJvb3RSZXN1bHRSZWxJbmZvLT5yaV9mb3JQb3J0aW9uT2YgPSBm cG9TdGF0ZTsKKworCQlpZiAocmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9QQVJUSVRJ T05FRF9UQUJMRSAmJgorCQkJbXRzdGF0ZS0+bXRfcGFydGl0aW9uX3R1cGxlX3JvdXRpbmcgPT0g TlVMTCkKKwkJeworCQkJLyoKKwkJCSAqIFdlIHdpbGwgbmVlZCB0dXBsZSByb3V0aW5nIHRvIGlu c2VydCB0ZW1wb3JhbCBsZWZ0b3ZlcnMuIFNpbmNlCisJCQkgKiB3ZSBhcmUgaW5pdGlhbGl6aW5n IHRoaW5ncyBiZWZvcmUgRXhlY0Nyb3NzUGFydGl0aW9uVXBkYXRlCisJCQkgKiBydW5zLCB3ZSBt dXN0IGRvIGV2ZXJ5dGhpbmcgaXQgbmVlZHMgYXMgd2VsbC4KKwkJCSAqLworCQkJaWYgKG10c3Rh dGUtPm10X3BhcnRpdGlvbl90dXBsZV9yb3V0aW5nID09IE5VTEwpCisJCQl7CisJCQkJUmVsYXRp b24Jcm9vdFJlbCA9IG10c3RhdGUtPnJvb3RSZXN1bHRSZWxJbmZvLT5yaV9SZWxhdGlvbkRlc2M7 CisJCQkJTWVtb3J5Q29udGV4dCBvbGRjeHQ7CisKKwkJCQkvKiBUaGluZ3MgYnVpbHQgaGVyZSBo YXZlIHRvIGxhc3QgZm9yIHRoZSBxdWVyeSBkdXJhdGlvbi4gKi8KKwkJCQlvbGRjeHQgPSBNZW1v cnlDb250ZXh0U3dpdGNoVG8oZXN0YXRlLT5lc19xdWVyeV9jeHQpOworCisJCQkJbXRzdGF0ZS0+ bXRfcGFydGl0aW9uX3R1cGxlX3JvdXRpbmcgPQorCQkJCQlFeGVjU2V0dXBQYXJ0aXRpb25UdXBs ZVJvdXRpbmcoZXN0YXRlLCByb290UmVsKTsKKworCQkJCS8qCisJCQkJICogQmVmb3JlIGEgcGFy dGl0aW9uJ3MgdHVwbGUgY2FuIGJlIHJlLXJvdXRlZCwgaXQgbXVzdCBmaXJzdAorCQkJCSAqIGJl IGNvbnZlcnRlZCB0byB0aGUgcm9vdCdzIGZvcm1hdCwgc28gd2UnbGwgbmVlZCBhIHNsb3QgZm9y CisJCQkJICogc3RvcmluZyBzdWNoIHR1cGxlcy4KKwkJCQkgKi8KKwkJCQlBc3NlcnQobXRzdGF0 ZS0+bXRfcm9vdF90dXBsZV9zbG90ID09IE5VTEwpOworCQkJCW10c3RhdGUtPm10X3Jvb3RfdHVw bGVfc2xvdCA9IHRhYmxlX3Nsb3RfY3JlYXRlKHJvb3RSZWwsIE5VTEwpOworCisJCQkJTWVtb3J5 Q29udGV4dFN3aXRjaFRvKG9sZGN4dCk7CisJCQl9CisJCX0KKworCQkvKgorCQkgKiBEb24ndCBm cmVlIHRoZSBFeHByQ29udGV4dCBoZXJlIGJlY2F1c2UgdGhlIHJlc3VsdCBtdXN0IGxhc3QgZm9y CisJCSAqIHRoZSB3aG9sZSBxdWVyeQorCQkgKi8KKwl9CisKIAkvKgogCSAqIElmIHdlIGhhdmUg YW55IHNlY29uZGFyeSByZWxhdGlvbnMgaW4gYW4gVVBEQVRFIG9yIERFTEVURSwgdGhleSBuZWVk IHRvCiAJICogYmUgdHJlYXRlZCBsaWtlIG5vbi1sb2NrZWQgcmVsYXRpb25zIGluIFNFTEVDVCBG T1IgVVBEQVRFLCBpLmUuLCB0aGUKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL25vZGVzL25vZGVG dW5jcy5jIGIvc3JjL2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMKaW5kZXggZWRlODM4Y2Q0MGMu LmU0MGU4ZWVjZjczIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVuY3MuYwor KysgYi9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVuY3MuYwpAQCAtMjU2Nyw2ICsyNTY3LDE0IEBA IGV4cHJlc3Npb25fdHJlZV93YWxrZXJfaW1wbChOb2RlICpub2RlLAogCQkJCQlyZXR1cm4gdHJ1 ZTsKIAkJCX0KIAkJCWJyZWFrOworCQljYXNlIFRfRm9yUG9ydGlvbk9mRXhwcjoKKwkJCXsKKwkJ CQlGb3JQb3J0aW9uT2ZFeHByICpmb3JQb3J0aW9uT2YgPSAoRm9yUG9ydGlvbk9mRXhwciAqKSBu b2RlOworCisJCQkJaWYgKFdBTEsoZm9yUG9ydGlvbk9mLT50YXJnZXRSYW5nZSkpCisJCQkJCXJl dHVybiB0cnVlOworCQkJfQorCQkJYnJlYWs7CiAJCWNhc2UgVF9QYXJ0aXRpb25QcnVuZVN0ZXBP cDoKIAkJCXsKIAkJCQlQYXJ0aXRpb25QcnVuZVN0ZXBPcCAqb3BzdGVwID0gKFBhcnRpdGlvblBy dW5lU3RlcE9wICopIG5vZGU7CkBAIC0yNzE1LDYgKzI3MjMsOCBAQCBxdWVyeV90cmVlX3dhbGtl cl9pbXBsKFF1ZXJ5ICpxdWVyeSwKIAkJcmV0dXJuIHRydWU7CiAJaWYgKFdBTEsocXVlcnktPm1l cmdlSm9pbkNvbmRpdGlvbikpCiAJCXJldHVybiB0cnVlOworCWlmIChXQUxLKHF1ZXJ5LT5mb3JQ b3J0aW9uT2YpKQorCQlyZXR1cm4gdHJ1ZTsKIAlpZiAoV0FMSyhxdWVyeS0+cmV0dXJuaW5nTGlz dCkpCiAJCXJldHVybiB0cnVlOwogCWlmIChXQUxLKHF1ZXJ5LT5qb2ludHJlZSkpCkBAIC0zNjA5 LDYgKzM2MTksMTkgQEAgZXhwcmVzc2lvbl90cmVlX211dGF0b3JfaW1wbChOb2RlICpub2RlLAog CQkJCXJldHVybiAoTm9kZSAqKSBuZXdub2RlOwogCQkJfQogCQkJYnJlYWs7CisJCWNhc2UgVF9G b3JQb3J0aW9uT2ZFeHByOgorCQkJeworCQkJCUZvclBvcnRpb25PZkV4cHIgKmZwbyA9IChGb3JQ b3J0aW9uT2ZFeHByICopIG5vZGU7CisJCQkJRm9yUG9ydGlvbk9mRXhwciAqbmV3bm9kZTsKKwor CQkJCUZMQVRDT1BZKG5ld25vZGUsIGZwbywgRm9yUG9ydGlvbk9mRXhwcik7CisJCQkJTVVUQVRF KG5ld25vZGUtPnJhbmdlVmFyLCBmcG8tPnJhbmdlVmFyLCBWYXIgKik7CisJCQkJTVVUQVRFKG5l d25vZGUtPnRhcmdldFJhbmdlLCBmcG8tPnRhcmdldFJhbmdlLCBOb2RlICopOworCQkJCU1VVEFU RShuZXdub2RlLT5yYW5nZVRhcmdldExpc3QsIGZwby0+cmFuZ2VUYXJnZXRMaXN0LCBMaXN0ICop OworCisJCQkJcmV0dXJuIChOb2RlICopIG5ld25vZGU7CisJCQl9CisJCQlicmVhazsKIAkJY2Fz ZSBUX1BhcnRpdGlvblBydW5lU3RlcE9wOgogCQkJewogCQkJCVBhcnRpdGlvblBydW5lU3RlcE9w ICpvcHN0ZXAgPSAoUGFydGl0aW9uUHJ1bmVTdGVwT3AgKikgbm9kZTsKQEAgLTM3OTAsNiArMzgx Myw3IEBAIHF1ZXJ5X3RyZWVfbXV0YXRvcl9pbXBsKFF1ZXJ5ICpxdWVyeSwKIAlNVVRBVEUocXVl cnktPm9uQ29uZmxpY3QsIHF1ZXJ5LT5vbkNvbmZsaWN0LCBPbkNvbmZsaWN0RXhwciAqKTsKIAlN VVRBVEUocXVlcnktPm1lcmdlQWN0aW9uTGlzdCwgcXVlcnktPm1lcmdlQWN0aW9uTGlzdCwgTGlz dCAqKTsKIAlNVVRBVEUocXVlcnktPm1lcmdlSm9pbkNvbmRpdGlvbiwgcXVlcnktPm1lcmdlSm9p bkNvbmRpdGlvbiwgTm9kZSAqKTsKKwlNVVRBVEUocXVlcnktPmZvclBvcnRpb25PZiwgcXVlcnkt PmZvclBvcnRpb25PZiwgRm9yUG9ydGlvbk9mRXhwciAqKTsKIAlNVVRBVEUocXVlcnktPnJldHVy bmluZ0xpc3QsIHF1ZXJ5LT5yZXR1cm5pbmdMaXN0LCBMaXN0ICopOwogCU1VVEFURShxdWVyeS0+ am9pbnRyZWUsIHF1ZXJ5LT5qb2ludHJlZSwgRnJvbUV4cHIgKik7CiAJTVVUQVRFKHF1ZXJ5LT5z ZXRPcGVyYXRpb25zLCBxdWVyeS0+c2V0T3BlcmF0aW9ucywgTm9kZSAqKTsKZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL2NyZWF0ZXBsYW4uYyBiL3NyYy9iYWNrZW5kL29w dGltaXplci9wbGFuL2NyZWF0ZXBsYW4uYwppbmRleCA4YWYwOTFiYTY0Ny4uNGE0M2Y1NzlmODQg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL2NyZWF0ZXBsYW4uYworKysg Yi9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9jcmVhdGVwbGFuLmMKQEAgLTMxNiw3ICszMTYs NyBAQCBzdGF0aWMgTW9kaWZ5VGFibGUgKm1ha2VfbW9kaWZ5dGFibGUoUGxhbm5lckluZm8gKnJv b3QsIFBsYW4gKnN1YnBsYW4sCiAJCQkJCQkJCQkgTGlzdCAqd2l0aENoZWNrT3B0aW9uTGlzdHMs IExpc3QgKnJldHVybmluZ0xpc3RzLAogCQkJCQkJCQkJIExpc3QgKnJvd01hcmtzLCBPbkNvbmZs aWN0RXhwciAqb25jb25mbGljdCwKIAkJCQkJCQkJCSBMaXN0ICptZXJnZUFjdGlvbkxpc3RzLCBM aXN0ICptZXJnZUpvaW5Db25kaXRpb25zLAotCQkJCQkJCQkJIGludCBlcHFQYXJhbSk7CisJCQkJ CQkJCQkgRm9yUG9ydGlvbk9mRXhwciAqZm9yUG9ydGlvbk9mLCBpbnQgZXBxUGFyYW0pOwogc3Rh dGljIEdhdGhlck1lcmdlICpjcmVhdGVfZ2F0aGVyX21lcmdlX3BsYW4oUGxhbm5lckluZm8gKnJv b3QsCiAJCQkJCQkJCQkJCSBHYXRoZXJNZXJnZVBhdGggKmJlc3RfcGF0aCk7CiAKQEAgLTI2NzUs NiArMjY3NSw3IEBAIGNyZWF0ZV9tb2RpZnl0YWJsZV9wbGFuKFBsYW5uZXJJbmZvICpyb290LCBN b2RpZnlUYWJsZVBhdGggKmJlc3RfcGF0aCkKIAkJCQkJCQliZXN0X3BhdGgtPm9uY29uZmxpY3Qs CiAJCQkJCQkJYmVzdF9wYXRoLT5tZXJnZUFjdGlvbkxpc3RzLAogCQkJCQkJCWJlc3RfcGF0aC0+ bWVyZ2VKb2luQ29uZGl0aW9ucywKKwkJCQkJCQliZXN0X3BhdGgtPmZvclBvcnRpb25PZiwKIAkJ CQkJCQliZXN0X3BhdGgtPmVwcVBhcmFtKTsKIAogCWNvcHlfZ2VuZXJpY19wYXRoX2luZm8oJnBs YW4tPnBsYW4sICZiZXN0X3BhdGgtPnBhdGgpOwpAQCAtNzAwMSw3ICs3MDAyLDcgQEAgbWFrZV9t b2RpZnl0YWJsZShQbGFubmVySW5mbyAqcm9vdCwgUGxhbiAqc3VicGxhbiwKIAkJCQkgTGlzdCAq d2l0aENoZWNrT3B0aW9uTGlzdHMsIExpc3QgKnJldHVybmluZ0xpc3RzLAogCQkJCSBMaXN0ICpy b3dNYXJrcywgT25Db25mbGljdEV4cHIgKm9uY29uZmxpY3QsCiAJCQkJIExpc3QgKm1lcmdlQWN0 aW9uTGlzdHMsIExpc3QgKm1lcmdlSm9pbkNvbmRpdGlvbnMsCi0JCQkJIGludCBlcHFQYXJhbSkK KwkJCQkgRm9yUG9ydGlvbk9mRXhwciAqZm9yUG9ydGlvbk9mLCBpbnQgZXBxUGFyYW0pCiB7CiAJ TW9kaWZ5VGFibGUgKm5vZGUgPSBtYWtlTm9kZShNb2RpZnlUYWJsZSk7CiAJYm9vbAkJcmV0dXJu aW5nX29sZF9vcl9uZXcgPSBmYWxzZTsKQEAgLTcwNzAsNiArNzA3MSw3IEBAIG1ha2VfbW9kaWZ5 dGFibGUoUGxhbm5lckluZm8gKnJvb3QsIFBsYW4gKnN1YnBsYW4sCiAJCW5vZGUtPmV4Y2xSZWxU bGlzdCA9IG9uY29uZmxpY3QtPmV4Y2xSZWxUbGlzdDsKIAl9CiAJbm9kZS0+dXBkYXRlQ29sbm9z TGlzdHMgPSB1cGRhdGVDb2xub3NMaXN0czsKKwlub2RlLT5mb3JQb3J0aW9uT2YgPSAoTm9kZSAq KSBmb3JQb3J0aW9uT2Y7CiAJbm9kZS0+d2l0aENoZWNrT3B0aW9uTGlzdHMgPSB3aXRoQ2hlY2tP cHRpb25MaXN0czsKIAlub2RlLT5yZXR1cm5pbmdPbGRBbGlhcyA9IHJvb3QtPnBhcnNlLT5yZXR1 cm5pbmdPbGRBbGlhczsKIAlub2RlLT5yZXR1cm5pbmdOZXdBbGlhcyA9IHJvb3QtPnBhcnNlLT5y ZXR1cm5pbmdOZXdBbGlhczsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFu L3BsYW5uZXIuYyBiL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL3BsYW5uZXIuYwppbmRleCBj NGZkNjQ2Yjk5OS4uN2UyZjE5ZmI1ZTIgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL29wdGltaXpl ci9wbGFuL3BsYW5uZXIuYworKysgYi9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9wbGFubmVy LmMKQEAgLTIxNTEsNiArMjE1MSw3IEBAIGdyb3VwaW5nX3BsYW5uZXIoUGxhbm5lckluZm8gKnJv b3QsIGRvdWJsZSB0dXBsZV9mcmFjdGlvbiwKIAkJCQkJCQkJCQlwYXJzZS0+b25Db25mbGljdCwK IAkJCQkJCQkJCQltZXJnZUFjdGlvbkxpc3RzLAogCQkJCQkJCQkJCW1lcmdlSm9pbkNvbmRpdGlv bnMsCisJCQkJCQkJCQkJcGFyc2UtPmZvclBvcnRpb25PZiwKIAkJCQkJCQkJCQlhc3NpZ25fc3Bl Y2lhbF9leGVjX3BhcmFtKHJvb3QpKTsKIAkJfQogCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9v cHRpbWl6ZXIvdXRpbC9wYXRobm9kZS5jIGIvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3V0aWwvcGF0 aG5vZGUuYwppbmRleCBlNGZkNjk1MGZhZC4uMzJiMTkzMGI5NDUgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL29wdGltaXplci91dGlsL3BhdGhub2RlLmMKKysrIGIvc3JjL2JhY2tlbmQvb3B0aW1p emVyL3V0aWwvcGF0aG5vZGUuYwpAQCAtMzYzNSw3ICszNjM1LDcgQEAgY3JlYXRlX21vZGlmeXRh YmxlX3BhdGgoUGxhbm5lckluZm8gKnJvb3QsIFJlbE9wdEluZm8gKnJlbCwKIAkJCQkJCUxpc3Qg KndpdGhDaGVja09wdGlvbkxpc3RzLCBMaXN0ICpyZXR1cm5pbmdMaXN0cywKIAkJCQkJCUxpc3Qg KnJvd01hcmtzLCBPbkNvbmZsaWN0RXhwciAqb25jb25mbGljdCwKIAkJCQkJCUxpc3QgKm1lcmdl QWN0aW9uTGlzdHMsIExpc3QgKm1lcmdlSm9pbkNvbmRpdGlvbnMsCi0JCQkJCQlpbnQgZXBxUGFy YW0pCisJCQkJCQlGb3JQb3J0aW9uT2ZFeHByICpmb3JQb3J0aW9uT2YsIGludCBlcHFQYXJhbSkK IHsKIAlNb2RpZnlUYWJsZVBhdGggKnBhdGhub2RlID0gbWFrZU5vZGUoTW9kaWZ5VGFibGVQYXRo KTsKIApAQCAtMzcwMSw2ICszNzAxLDcgQEAgY3JlYXRlX21vZGlmeXRhYmxlX3BhdGgoUGxhbm5l ckluZm8gKnJvb3QsIFJlbE9wdEluZm8gKnJlbCwKIAlwYXRobm9kZS0+cmV0dXJuaW5nTGlzdHMg PSByZXR1cm5pbmdMaXN0czsKIAlwYXRobm9kZS0+cm93TWFya3MgPSByb3dNYXJrczsKIAlwYXRo bm9kZS0+b25jb25mbGljdCA9IG9uY29uZmxpY3Q7CisJcGF0aG5vZGUtPmZvclBvcnRpb25PZiA9 IGZvclBvcnRpb25PZjsKIAlwYXRobm9kZS0+ZXBxUGFyYW0gPSBlcHFQYXJhbTsKIAlwYXRobm9k ZS0+bWVyZ2VBY3Rpb25MaXN0cyA9IG1lcmdlQWN0aW9uTGlzdHM7CiAJcGF0aG5vZGUtPm1lcmdl Sm9pbkNvbmRpdGlvbnMgPSBtZXJnZUpvaW5Db25kaXRpb25zOwpkaWZmIC0tZ2l0IGEvc3JjL2Jh Y2tlbmQvcGFyc2VyL2FuYWx5emUuYyBiL3NyYy9iYWNrZW5kL3BhcnNlci9hbmFseXplLmMKaW5k ZXggM2IzOTJiMDg0YWQuLjVjZjczMjc4ZTE2IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9wYXJz ZXIvYW5hbHl6ZS5jCisrKyBiL3NyYy9iYWNrZW5kL3BhcnNlci9hbmFseXplLmMKQEAgLTI0LDcg KzI0LDEwIEBACiAKICNpbmNsdWRlICJwb3N0Z3Jlcy5oIgogCisjaW5jbHVkZSAiYWNjZXNzL3N0 cmF0bnVtLmgiCiAjaW5jbHVkZSAiYWNjZXNzL3N5c2F0dHIuaCIKKyNpbmNsdWRlICJjYXRhbG9n L3BnX2FtLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19vcGVyYXRvci5oIgogI2luY2x1ZGUgImNh dGFsb2cvcGdfcHJvYy5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfdHlwZS5oIgogI2luY2x1ZGUg ImNvbW1hbmRzL2RlZnJlbS5oIgpAQCAtNTAsNyArNTMsOSBAQAogI2luY2x1ZGUgInBhcnNlci9w YXJzZXRyZWUuaCIKICNpbmNsdWRlICJ1dGlscy9iYWNrZW5kX3N0YXR1cy5oIgogI2luY2x1ZGUg InV0aWxzL2J1aWx0aW5zLmgiCisjaW5jbHVkZSAidXRpbHMvZm1ncm9pZHMuaCIKICNpbmNsdWRl ICJ1dGlscy9ndWMuaCIKKyNpbmNsdWRlICJ1dGlscy9sc3lzY2FjaGUuaCIKICNpbmNsdWRlICJ1 dGlscy9yZWwuaCIKICNpbmNsdWRlICJ1dGlscy9zeXNjYWNoZS5oIgogCkBAIC02NywxMCArNzIs MTYgQEAgdHlwZWRlZiBzdHJ1Y3QgU2VsZWN0U3RtdFBhc3N0aHJvdWdoCiBwb3N0X3BhcnNlX2Fu YWx5emVfaG9va190eXBlIHBvc3RfcGFyc2VfYW5hbHl6ZV9ob29rID0gTlVMTDsKIAogc3RhdGlj IFF1ZXJ5ICp0cmFuc2Zvcm1PcHRpb25hbFNlbGVjdEludG8oUGFyc2VTdGF0ZSAqcHN0YXRlLCBO b2RlICpwYXJzZVRyZWUpOworc3RhdGljIE5vZGUgKmFkZEZvclBvcnRpb25PZldoZXJlQ29uZGl0 aW9ucyhRdWVyeSAqcXJ5LCBGb3JQb3J0aW9uT2ZDbGF1c2UgKmZvclBvcnRpb25PZiwKKwkJCQkJ CQkJCQkJTm9kZSAqd2hlcmVDbGF1c2UpOwogc3RhdGljIFF1ZXJ5ICp0cmFuc2Zvcm1EZWxldGVT dG10KFBhcnNlU3RhdGUgKnBzdGF0ZSwgRGVsZXRlU3RtdCAqc3RtdCk7CiBzdGF0aWMgUXVlcnkg KnRyYW5zZm9ybUluc2VydFN0bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBJbnNlcnRTdG10ICpzdG10 KTsKIHN0YXRpYyBPbkNvbmZsaWN0RXhwciAqdHJhbnNmb3JtT25Db25mbGljdENsYXVzZShQYXJz ZVN0YXRlICpwc3RhdGUsCiAJCQkJCQkJCQkJCQkgT25Db25mbGljdENsYXVzZSAqb25Db25mbGlj dENsYXVzZSk7CitzdGF0aWMgRm9yUG9ydGlvbk9mRXhwciAqdHJhbnNmb3JtRm9yUG9ydGlvbk9m Q2xhdXNlKFBhcnNlU3RhdGUgKnBzdGF0ZSwKKwkJCQkJCQkJCQkJCQkgaW50IHJ0aW5kZXgsCisJ CQkJCQkJCQkJCQkJIEZvclBvcnRpb25PZkNsYXVzZSAqZm9yUG9ydGlvbk9mQ2xhdXNlLAorCQkJ CQkJCQkJCQkJCSBib29sIGlzVXBkYXRlKTsKIHN0YXRpYyBpbnQJY291bnRfcm93ZXhwcl9jb2x1 bW5zKFBhcnNlU3RhdGUgKnBzdGF0ZSwgTm9kZSAqZXhwcik7CiBzdGF0aWMgUXVlcnkgKnRyYW5z Zm9ybVNlbGVjdFN0bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBTZWxlY3RTdG10ICpzdG10LAogCQkJ CQkJCQkgIFNlbGVjdFN0bXRQYXNzdGhyb3VnaCAqcGFzc3RocnUpOwpAQCAtNDkzLDYgKzUwNCwy MCBAQCBzdG10X3JlcXVpcmVzX3BhcnNlX2FuYWx5c2lzKFJhd1N0bXQgKnBhcnNlVHJlZSkKIAly ZXR1cm4gcmVzdWx0OwogfQogCitzdGF0aWMgTm9kZSAqCithZGRGb3JQb3J0aW9uT2ZXaGVyZUNv bmRpdGlvbnMoUXVlcnkgKnFyeSwgRm9yUG9ydGlvbk9mQ2xhdXNlICpmb3JQb3J0aW9uT2YsIE5v ZGUgKndoZXJlQ2xhdXNlKQoreworCWlmIChmb3JQb3J0aW9uT2YpCisJeworCQlpZiAod2hlcmVD bGF1c2UpCisJCQlyZXR1cm4gKE5vZGUgKikgbWFrZUJvb2xFeHByKEFORF9FWFBSLCBsaXN0X21h a2UyKHFyeS0+Zm9yUG9ydGlvbk9mLT5vdmVybGFwc0V4cHIsIHdoZXJlQ2xhdXNlKSwgLTEpOwor CQllbHNlCisJCQlyZXR1cm4gcXJ5LT5mb3JQb3J0aW9uT2YtPm92ZXJsYXBzRXhwcjsKKwl9CisJ ZWxzZQorCQlyZXR1cm4gd2hlcmVDbGF1c2U7Cit9CisKIC8qCiAgKiBhbmFseXplX3JlcXVpcmVz X3NuYXBzaG90CiAgKgkJUmV0dXJucyB0cnVlIGlmIGEgc25hcHNob3QgbXVzdCBiZSBzZXQgYmVm b3JlIGRvaW5nIHBhcnNlIGFuYWx5c2lzCkBAIC01NjUsNiArNTkwLDcgQEAgdHJhbnNmb3JtRGVs ZXRlU3RtdChQYXJzZVN0YXRlICpwc3RhdGUsIERlbGV0ZVN0bXQgKnN0bXQpCiB7CiAJUXVlcnkJ ICAgKnFyeSA9IG1ha2VOb2RlKFF1ZXJ5KTsKIAlQYXJzZU5hbWVzcGFjZUl0ZW0gKm5zaXRlbTsK KwlOb2RlCSAgICp3aGVyZUNsYXVzZTsKIAlOb2RlCSAgICpxdWFsOwogCiAJcXJ5LT5jb21tYW5k VHlwZSA9IENNRF9ERUxFVEU7CkBAIC02MDMsNyArNjI5LDExIEBAIHRyYW5zZm9ybURlbGV0ZVN0 bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBEZWxldGVTdG10ICpzdG10KQogCW5zaXRlbS0+cF9sYXRl cmFsX29ubHkgPSBmYWxzZTsKIAluc2l0ZW0tPnBfbGF0ZXJhbF9vayA9IHRydWU7CiAKLQlxdWFs ID0gdHJhbnNmb3JtV2hlcmVDbGF1c2UocHN0YXRlLCBzdG10LT53aGVyZUNsYXVzZSwKKwlpZiAo c3RtdC0+Zm9yUG9ydGlvbk9mKQorCQlxcnktPmZvclBvcnRpb25PZiA9IHRyYW5zZm9ybUZvclBv cnRpb25PZkNsYXVzZShwc3RhdGUsIHFyeS0+cmVzdWx0UmVsYXRpb24sIHN0bXQtPmZvclBvcnRp b25PZiwgZmFsc2UpOworCisJd2hlcmVDbGF1c2UgPSBhZGRGb3JQb3J0aW9uT2ZXaGVyZUNvbmRp dGlvbnMocXJ5LCBzdG10LT5mb3JQb3J0aW9uT2YsIHN0bXQtPndoZXJlQ2xhdXNlKTsKKwlxdWFs ID0gdHJhbnNmb3JtV2hlcmVDbGF1c2UocHN0YXRlLCB3aGVyZUNsYXVzZSwKIAkJCQkJCQkJRVhQ Ul9LSU5EX1dIRVJFLCAiV0hFUkUiKTsKIAogCXRyYW5zZm9ybVJldHVybmluZ0NsYXVzZShwc3Rh dGUsIHFyeSwgc3RtdC0+cmV0dXJuaW5nQ2xhdXNlLApAQCAtMTIzOCw3ICsxMjY4LDcgQEAgdHJh bnNmb3JtT25Db25mbGljdENsYXVzZShQYXJzZVN0YXRlICpwc3RhdGUsCiAJCSAqIE5vdyB0cmFu c2Zvcm0gdGhlIFVQREFURSBzdWJleHByZXNzaW9ucy4KIAkJICovCiAJCW9uQ29uZmxpY3RTZXQg PQotCQkJdHJhbnNmb3JtVXBkYXRlVGFyZ2V0TGlzdChwc3RhdGUsIG9uQ29uZmxpY3RDbGF1c2Ut PnRhcmdldExpc3QpOworCQkJdHJhbnNmb3JtVXBkYXRlVGFyZ2V0TGlzdChwc3RhdGUsIG9uQ29u ZmxpY3RDbGF1c2UtPnRhcmdldExpc3QsIE5VTEwpOwogCiAJCW9uQ29uZmxpY3RXaGVyZSA9IHRy YW5zZm9ybVdoZXJlQ2xhdXNlKHBzdGF0ZSwKIAkJCQkJCQkJCQkJICAgb25Db25mbGljdENsYXVz ZS0+d2hlcmVDbGF1c2UsCkBAIC0xMjY4LDYgKzEyOTgsMTk0IEBAIHRyYW5zZm9ybU9uQ29uZmxp Y3RDbGF1c2UoUGFyc2VTdGF0ZSAqcHN0YXRlLAogCXJldHVybiByZXN1bHQ7CiB9CiAKKy8qCisg KiB0cmFuc2Zvcm1Gb3JQb3J0aW9uT2ZDbGF1c2UKKyAqCisgKgkgIFRyYW5zZm9ybXMgYSBGb3JQ b3J0aW9uT2ZDbGF1c2UgaW4gYW4gVVBEQVRFL0RFTEVURSBzdGF0ZW1lbnQuCisgKgorICoJICAt IExvb2sgdXAgdGhlIHJhbmdlL3BlcmlvZCByZXF1ZXN0ZWQuCisgKgkgIC0gQnVpbGQgYSBjb21w YXRpYmxlIHJhbmdlIHZhbHVlIGZyb20gdGhlIEZST00gYW5kIFRPIGV4cHJlc3Npb25zLgorICoJ ICAtIEJ1aWxkIGFuICJvdmVybGFwcyIgZXhwcmVzc2lvbiBmb3IgZmlsdGVyaW5nLgorICoJICAt IEZvciBVUERBVEVzLCBidWlsZCBhbiAiaW50ZXJzZWN0cyIgZXhwcmVzc2lvbiB0aGUgcmV3cml0 ZXIgY2FuIGFkZAorICoJCXRvIHRoZSB0YXJnZXRMaXN0IHRvIGNoYW5nZSB0aGUgdGVtcG9yYWwg Ym91bmRzLgorICovCitzdGF0aWMgRm9yUG9ydGlvbk9mRXhwciAqCit0cmFuc2Zvcm1Gb3JQb3J0 aW9uT2ZDbGF1c2UoUGFyc2VTdGF0ZSAqcHN0YXRlLAorCQkJCQkJCWludCBydGluZGV4LAorCQkJ CQkJCUZvclBvcnRpb25PZkNsYXVzZSAqZm9yUG9ydGlvbk9mLAorCQkJCQkJCWJvb2wgaXNVcGRh dGUpCit7CisJUmVsYXRpb24JdGFyZ2V0cmVsID0gcHN0YXRlLT5wX3RhcmdldF9yZWxhdGlvbjsK KwlSVEVQZXJtaXNzaW9uSW5mbyAqdGFyZ2V0X3Blcm1pbmZvID0gcHN0YXRlLT5wX3RhcmdldF9u c2l0ZW0tPnBfcGVybWluZm87CisJY2hhcgkgICAqcmFuZ2VfbmFtZSA9IGZvclBvcnRpb25PZi0+ cmFuZ2VfbmFtZTsKKwljaGFyCSAgICpyYW5nZV90eXBlX25hbWVzcGFjZSA9IE5VTEw7CisJY2hh cgkgICAqcmFuZ2VfdHlwZV9uYW1lID0gTlVMTDsKKwlpbnQJCQlyYW5nZV9hdHRubyA9IEludmFs aWRBdHRyTnVtYmVyOworCUZvcm1fcGdfYXR0cmlidXRlIGF0dHI7CisJT2lkCQkJb3BjbGFzczsK KwlPaWQJCQlvcGZhbWlseTsKKwlPaWQJCQlvcGNpbnR5cGU7CisJT2lkCQkJZnVuY2lkID0gSW52 YWxpZE9pZDsKKwlTdHJhdGVneU51bWJlciBzdHJhdDsKKwlPaWQJCQlvcGlkOworCUZvclBvcnRp b25PZkV4cHIgKnJlc3VsdDsKKwlWYXIJCSAgICpyYW5nZVZhcjsKKwlOb2RlCSAgICp0YXJnZXRF eHByOworCisJLyogV2UgZG9uJ3Qgc3VwcG9ydCBGT1IgUE9SVElPTiBPRiBGRFcgcXVlcmllcy4g Ki8KKwlpZiAodGFyZ2V0cmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9GT1JFSUdOX1RB QkxFKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfRkVBVFVSRV9OT1Rf U1VQUE9SVEVEKSwKKwkJCQkgZXJybXNnKCJmb3JlaWduIHRhYmxlcyBkb24ndCBzdXBwb3J0IEZP UiBQT1JUSU9OIE9GIikpKTsKKworCXJlc3VsdCA9IG1ha2VOb2RlKEZvclBvcnRpb25PZkV4cHIp OworCisJLyogTG9vayB1cCB0aGUgRk9SIFBPUlRJT04gT0YgbmFtZSByZXF1ZXN0ZWQuICovCisJ cmFuZ2VfYXR0bm8gPSBhdHRuYW1lQXR0TnVtKHRhcmdldHJlbCwgcmFuZ2VfbmFtZSwgZmFsc2Up OworCWlmIChyYW5nZV9hdHRubyA9PSBJbnZhbGlkQXR0ck51bWJlcikKKwkJZXJlcG9ydChFUlJP UiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX1VOREVGSU5FRF9DT0xVTU4pLAorCQkJCSBlcnJtc2co ImNvbHVtbiBvciBwZXJpb2QgXCIlc1wiIG9mIHJlbGF0aW9uIFwiJXNcIiBkb2VzIG5vdCBleGlz dCIsCisJCQkJCQlyYW5nZV9uYW1lLAorCQkJCQkJUmVsYXRpb25HZXRSZWxhdGlvbk5hbWUodGFy Z2V0cmVsKSksCisJCQkJIHBhcnNlcl9lcnJwb3NpdGlvbihwc3RhdGUsIGZvclBvcnRpb25PZi0+ bG9jYXRpb24pKSk7CisJYXR0ciA9IFR1cGxlRGVzY0F0dHIodGFyZ2V0cmVsLT5yZF9hdHQsIHJh bmdlX2F0dG5vIC0gMSk7CisKKwlyYW5nZVZhciA9IG1ha2VWYXIoCisJCQkJCSAgIHJ0aW5kZXgs CisJCQkJCSAgIHJhbmdlX2F0dG5vLAorCQkJCQkgICBhdHRyLT5hdHR0eXBpZCwKKwkJCQkJICAg YXR0ci0+YXR0dHlwbW9kLAorCQkJCQkgICBhdHRyLT5hdHRjb2xsYXRpb24sCisJCQkJCSAgIDAp OworCXJhbmdlVmFyLT5sb2NhdGlvbiA9IGZvclBvcnRpb25PZi0+bG9jYXRpb247CisJcmVzdWx0 LT5yYW5nZVZhciA9IHJhbmdlVmFyOworCXJlc3VsdC0+cmFuZ2VUeXBlID0gYXR0ci0+YXR0dHlw aWQ7CisJaWYgKCFnZXRfdHlwbmFtZV9hbmRfbmFtZXNwYWNlKGF0dHItPmF0dHR5cGlkLCAmcmFu Z2VfdHlwZV9uYW1lLCAmcmFuZ2VfdHlwZV9uYW1lc3BhY2UpKQorCQllbG9nKEVSUk9SLCAiY2Fj aGUgbG9va3VwIGZhaWxlZCBmb3IgdHlwZSAldSIsIGF0dHItPmF0dHR5cGlkKTsKKworCisJaWYg KGZvclBvcnRpb25PZi0+dGFyZ2V0KQorCisJCS8qCisJCSAqIFdlIHdlcmUgYWxyZWFkeSBnaXZl biBhbiBleHByZXNzaW9uIGZvciB0aGUgdGFyZ2V0LCBzbyB3ZSBkb24ndAorCQkgKiBoYXZlIHRv IGJ1aWxkIGFueXRoaW5nLgorCQkgKi8KKwkJdGFyZ2V0RXhwciA9IGZvclBvcnRpb25PZi0+dGFy Z2V0OworCWVsc2UKKwl7CisJCS8qIE1ha2Ugc3VyZSBpdCdzIGEgcmFuZ2UgY29sdW1uICovCisJ CWlmICghdHlwZV9pc19yYW5nZShhdHRyLT5hdHR0eXBpZCkpCisJCQllcmVwb3J0KEVSUk9SLAor CQkJCQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURfQ09MVU1OX1JFRkVSRU5DRSksCisJCQkJCSBl cnJtc2coImNvbHVtbiBcIiVzXCIgb2YgcmVsYXRpb24gXCIlc1wiIGlzIG5vdCBhIHJhbmdlIHR5 cGUiLAorCQkJCQkJCXJhbmdlX25hbWUsCisJCQkJCQkJUmVsYXRpb25HZXRSZWxhdGlvbk5hbWUo dGFyZ2V0cmVsKSksCisJCQkJCSBwYXJzZXJfZXJycG9zaXRpb24ocHN0YXRlLCBmb3JQb3J0aW9u T2YtPmxvY2F0aW9uKSkpOworCisJCS8qCisJCSAqIEJ1aWxkIGEgcmFuZ2UgZnJvbSB0aGUgRlJP TSAuLi4gVE8gLi4uLiBib3VuZHMuIFRoaXMgc2hvdWxkIGdpdmUgYQorCQkgKiBjb25zdGFudCBy ZXN1bHQsIHNvIHdlIGFjY2VwdCBmdW5jdGlvbnMgbGlrZSBOT1coKSBidXQgbm90IGNvbHVtbgor CQkgKiByZWZlcmVuY2VzLCBzdWJxdWVyaWVzLCBldGMuCisJCSAqLworCQl0YXJnZXRFeHByID0g KE5vZGUgKikgbWFrZUZ1bmNDYWxsKAorCQkJCQkJCQkJCSAgIGxpc3RfbWFrZTIobWFrZVN0cmlu ZyhyYW5nZV90eXBlX25hbWVzcGFjZSksIG1ha2VTdHJpbmcocmFuZ2VfdHlwZV9uYW1lKSksCisJ CQkJCQkJCQkJICAgbGlzdF9tYWtlMihmb3JQb3J0aW9uT2YtPnRhcmdldF9zdGFydCwgZm9yUG9y dGlvbk9mLT50YXJnZXRfZW5kKSwKKwkJCQkJCQkJCQkgICBDT0VSQ0VfRVhQTElDSVRfQ0FMTCwK KwkJCQkJCQkJCQkgICBmb3JQb3J0aW9uT2YtPmxvY2F0aW9uKTsKKwl9CisJcmVzdWx0LT50YXJn ZXRSYW5nZSA9IHRyYW5zZm9ybUV4cHIocHN0YXRlLCB0YXJnZXRFeHByLCBFWFBSX0tJTkRfVVBE QVRFX1BPUlRJT04pOworCisJLyoKKwkgKiBCdWlsZCBvdmVybGFwc0V4cHIgdG8gdXNlIGluIHRo ZSB3aGVyZUNsYXVzZS4gVGhpcyBtZWFucyB3ZSBvbmx5IGhpdAorCSAqIHJvd3MgbWF0Y2hpbmcg dGhlIEZST00gJiBUTyBib3VuZHMuIFdlIG11c3QgbG9vayB1cCB0aGUgb3ZlcmxhcHMKKwkgKiBv cGVyYXRvciAodXN1YWxseSAiJiYiKS4KKwkgKi8KKwlvcGNsYXNzID0gR2V0RGVmYXVsdE9wQ2xh c3MoYXR0ci0+YXR0dHlwaWQsIEdJU1RfQU1fT0lEKTsKKwlzdHJhdCA9IFJUT3ZlcmxhcFN0cmF0 ZWd5TnVtYmVyOworCUdldE9wZXJhdG9yRnJvbUNvbXBhcmVUeXBlKG9wY2xhc3MsIEludmFsaWRP aWQsIENPTVBBUkVfT1ZFUkxBUCwgJm9waWQsICZzdHJhdCk7CisJcmVzdWx0LT5vdmVybGFwc0V4 cHIgPSAoTm9kZSAqKSBtYWtlU2ltcGxlQV9FeHByKEFFWFBSX09QLCBnZXRfb3BuYW1lKG9waWQp LAorCQkJCQkJCQkJCQkJCSAoTm9kZSAqKSBjb3B5T2JqZWN0KHJhbmdlVmFyKSwgdGFyZ2V0RXhw ciwKKwkJCQkJCQkJCQkJCQkgZm9yUG9ydGlvbk9mLT5sb2NhdGlvbik7CisKKwkvKgorCSAqIExv b2sgdXAgdGhlIHdpdGhvdXRfcG9ydGlvbiBmdW5jLiBUaGlzIGNvbXB1dGVzIHRoZSBib3VuZHMg b2YgdGVtcG9yYWwKKwkgKiBsZWZ0b3ZlcnMuCisJICoKKwkgKiBYWFg6IEZpbmQgYSBtb3JlIGV4 dGVuc2libGUgd2F5IHRvIGxvb2sgdXAgdGhlIGZ1bmN0aW9uLCBwZXJtaXR0aW5nCisJICogdXNl ci1kZWZpbmVkIHR5cGVzLiBBbiBvcGNsYXNzIHN1cHBvcnQgZnVuY3Rpb24gZG9lc24ndCBtYWtl IHNlbnNlLAorCSAqIHNpbmNlIHRoZXJlIGlzIG5vIGluZGV4IGludm9sdmVkLiBQZXJoYXBzIGEg dHlwZSBzdXBwb3J0IGZ1bmN0aW9uLgorCSAqLworCWlmIChnZXRfb3BjbGFzc19vcGZhbWlseV9h bmRfaW5wdXRfdHlwZShvcGNsYXNzLCAmb3BmYW1pbHksICZvcGNpbnR5cGUpKQorCQlzd2l0Y2gg KG9wY2ludHlwZSkKKwkJeworCQkJY2FzZSBBTllSQU5HRU9JRDoKKwkJCQlyZXN1bHQtPndpdGhv dXRQb3J0aW9uUHJvYyA9IEZfUkFOR0VfTUlOVVNfTVVMVEk7CisJCQkJYnJlYWs7CisJCQljYXNl IEFOWU1VTFRJUkFOR0VPSUQ6CisJCQkJcmVzdWx0LT53aXRob3V0UG9ydGlvblByb2MgPSBGX01V TFRJUkFOR0VfTUlOVVNfTVVMVEk7CisJCQkJYnJlYWs7CisJCQlkZWZhdWx0OgorCQkJCWVsb2co RVJST1IsICJ1bmV4cGVjdGVkIG9wY2ludHlwZTogJXUiLCBvcGNpbnR5cGUpOworCQl9CisJZWxz ZQorCQllbG9nKEVSUk9SLCAidW5leHBlY3RlZCBvcGNsYXNzOiAldSIsIG9wY2xhc3MpOworCisJ aWYgKGlzVXBkYXRlKQorCXsKKwkJLyoKKwkJICogTm93IG1ha2Ugc3VyZSB3ZSB1cGRhdGUgdGhl IHN0YXJ0L2VuZCB0aW1lIG9mIHRoZSByZWNvcmQuIEZvciBhCisJCSAqIHJhbmdlIGNvbCAocikg dGhpcyBpcyBgciA9IHIgKiB0YXJnZXRSYW5nZWAuCisJCSAqLworCQlPaWQJCQlpbnRlcnNlY3Rv cGVyb2lkOworCQlMaXN0CSAgICpmdW5jQXJncyA9IE5JTDsKKwkJRnVuY0V4cHIgICAqcmFuZ2VU TEVFeHByOworCQlUYXJnZXRFbnRyeSAqdGxlOworCisJCS8qCisJCSAqIFdoYXRldmVyIG9wZXJh dG9yIGlzIHVzZWQgZm9yIGludGVyc2VjdCBieSB0ZW1wb3JhbCBmb3JlaWduIGtleXMsCisJCSAq IHdlIGNhbiB1c2UgaXRzIGJhY2tpbmcgcHJvY2VkdXJlIGZvciBpbnRlcnNlY3RzIGluIEZPUiBQ T1JUSU9OIE9GLgorCQkgKiBYWFg6IFNoYXJlIGNvZGUgd2l0aCBGaW5kRktQZXJpb2RPcGVycz8K KwkJICovCisJCXN3aXRjaCAob3BjaW50eXBlKQorCQl7CisJCQljYXNlIEFOWVJBTkdFT0lEOgor CQkJCWludGVyc2VjdG9wZXJvaWQgPSBPSURfUkFOR0VfSU5URVJTRUNUX1JBTkdFX09QOworCQkJ CWJyZWFrOworCQkJY2FzZSBBTllNVUxUSVJBTkdFT0lEOgorCQkJCWludGVyc2VjdG9wZXJvaWQg PSBPSURfTVVMVElSQU5HRV9JTlRFUlNFQ1RfTVVMVElSQU5HRV9PUDsKKwkJCQlicmVhazsKKwkJ CWRlZmF1bHQ6CisJCQkJZWxvZyhFUlJPUiwgIlVuZXhwZWN0ZWQgb3BjaW50eXBlOiAldSIsIG9w Y2ludHlwZSk7CisJCX0KKwkJZnVuY2lkID0gZ2V0X29wY29kZShpbnRlcnNlY3RvcGVyb2lkKTsK KwkJaWYgKCFPaWRJc1ZhbGlkKGZ1bmNpZCkpCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQllcnJj b2RlKEVSUkNPREVfVU5ERUZJTkVEX09CSkVDVCksCisJCQkJCWVycm1zZygiY291bGQgbm90IGlk ZW50aWZ5IGFuIGludGVyc2VjdCBmdW5jdGlvbiBmb3IgdHlwZSAlcyIsIGZvcm1hdF90eXBlX2Jl KG9wY2ludHlwZSkpKTsKKworCQl0YXJnZXRFeHByID0gdHJhbnNmb3JtRXhwcihwc3RhdGUsIHRh cmdldEV4cHIsIEVYUFJfS0lORF9VUERBVEVfUE9SVElPTik7CisJCWZ1bmNBcmdzID0gbGFwcGVu ZChmdW5jQXJncywgY29weU9iamVjdChyYW5nZVZhcikpOworCQlmdW5jQXJncyA9IGxhcHBlbmQo ZnVuY0FyZ3MsIHRhcmdldEV4cHIpOworCQlyYW5nZVRMRUV4cHIgPSBtYWtlRnVuY0V4cHIoZnVu Y2lkLCBhdHRyLT5hdHR0eXBpZCwgZnVuY0FyZ3MsCisJCQkJCQkJCQlJbnZhbGlkT2lkLCBJbnZh bGlkT2lkLCBDT0VSQ0VfRVhQTElDSVRfQ0FMTCk7CisKKwkJLyogTWFrZSBhIFRMRSB0byBzZXQg dGhlIHJhbmdlIGNvbHVtbiAqLworCQlyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCA9IE5JTDsKKwkJ dGxlID0gbWFrZVRhcmdldEVudHJ5KChFeHByICopIHJhbmdlVExFRXhwciwgcmFuZ2VfYXR0bm8s IHJhbmdlX25hbWUsIGZhbHNlKTsKKwkJcmVzdWx0LT5yYW5nZVRhcmdldExpc3QgPSBsYXBwZW5k KHJlc3VsdC0+cmFuZ2VUYXJnZXRMaXN0LCB0bGUpOworCisJCS8qIE1hcmsgdGhlIHJhbmdlIGNv bHVtbiBhcyByZXF1aXJpbmcgdXBkYXRlIHBlcm1pc3Npb25zICovCisJCXRhcmdldF9wZXJtaW5m by0+dXBkYXRlZENvbHMgPSBibXNfYWRkX21lbWJlcih0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRD b2xzLAorCQkJCQkJCQkJCQkJCSAgcmFuZ2VfYXR0bm8gLSBGaXJzdExvd0ludmFsaWRIZWFwQXR0 cmlidXRlTnVtYmVyKTsKKwl9CisJZWxzZQorCQlyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCA9IE5J TDsKKworCXJlc3VsdC0+cmFuZ2VfbmFtZSA9IHJhbmdlX25hbWU7CisKKwlyZXR1cm4gcmVzdWx0 OworfQogCiAvKgogICogQnVpbGRPbkNvbmZsaWN0RXhjbHVkZWRUYXJnZXRsaXN0CkBAIC0yNDkx LDYgKzI3MDksNyBAQCB0cmFuc2Zvcm1VcGRhdGVTdG10KFBhcnNlU3RhdGUgKnBzdGF0ZSwgVXBk YXRlU3RtdCAqc3RtdCkKIHsKIAlRdWVyeQkgICAqcXJ5ID0gbWFrZU5vZGUoUXVlcnkpOwogCVBh cnNlTmFtZXNwYWNlSXRlbSAqbnNpdGVtOworCU5vZGUJICAgKndoZXJlQ2xhdXNlOwogCU5vZGUJ ICAgKnF1YWw7CiAKIAlxcnktPmNvbW1hbmRUeXBlID0gQ01EX1VQREFURTsKQEAgLTI1MDgsNiAr MjcyNywxMCBAQCB0cmFuc2Zvcm1VcGRhdGVTdG10KFBhcnNlU3RhdGUgKnBzdGF0ZSwgVXBkYXRl U3RtdCAqc3RtdCkKIAkJCQkJCQkJCQkgc3RtdC0+cmVsYXRpb24tPmluaCwKIAkJCQkJCQkJCQkg dHJ1ZSwKIAkJCQkJCQkJCQkgQUNMX1VQREFURSk7CisKKwlpZiAoc3RtdC0+Zm9yUG9ydGlvbk9m KQorCQlxcnktPmZvclBvcnRpb25PZiA9IHRyYW5zZm9ybUZvclBvcnRpb25PZkNsYXVzZShwc3Rh dGUsIHFyeS0+cmVzdWx0UmVsYXRpb24sIHN0bXQtPmZvclBvcnRpb25PZiwgdHJ1ZSk7CisKIAlu c2l0ZW0gPSBwc3RhdGUtPnBfdGFyZ2V0X25zaXRlbTsKIAogCS8qIHN1YnF1ZXJpZXMgaW4gRlJP TSBjYW5ub3QgYWNjZXNzIHRoZSByZXN1bHQgcmVsYXRpb24gKi8KQEAgLTI1MjQsNyArMjc0Nyw4 IEBAIHRyYW5zZm9ybVVwZGF0ZVN0bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBVcGRhdGVTdG10ICpz dG10KQogCW5zaXRlbS0+cF9sYXRlcmFsX29ubHkgPSBmYWxzZTsKIAluc2l0ZW0tPnBfbGF0ZXJh bF9vayA9IHRydWU7CiAKLQlxdWFsID0gdHJhbnNmb3JtV2hlcmVDbGF1c2UocHN0YXRlLCBzdG10 LT53aGVyZUNsYXVzZSwKKwl3aGVyZUNsYXVzZSA9IGFkZEZvclBvcnRpb25PZldoZXJlQ29uZGl0 aW9ucyhxcnksIHN0bXQtPmZvclBvcnRpb25PZiwgc3RtdC0+d2hlcmVDbGF1c2UpOworCXF1YWwg PSB0cmFuc2Zvcm1XaGVyZUNsYXVzZShwc3RhdGUsIHdoZXJlQ2xhdXNlLAogCQkJCQkJCQlFWFBS X0tJTkRfV0hFUkUsICJXSEVSRSIpOwogCiAJdHJhbnNmb3JtUmV0dXJuaW5nQ2xhdXNlKHBzdGF0 ZSwgcXJ5LCBzdG10LT5yZXR1cm5pbmdDbGF1c2UsCkBAIC0yNTM0LDcgKzI3NTgsNyBAQCB0cmFu c2Zvcm1VcGRhdGVTdG10KFBhcnNlU3RhdGUgKnBzdGF0ZSwgVXBkYXRlU3RtdCAqc3RtdCkKIAkg KiBOb3cgd2UgYXJlIGRvbmUgd2l0aCBTRUxFQ1QtbGlrZSBwcm9jZXNzaW5nLCBhbmQgY2FuIGdl dCBvbiB3aXRoCiAJICogdHJhbnNmb3JtaW5nIHRoZSB0YXJnZXQgbGlzdCB0byBtYXRjaCB0aGUg VVBEQVRFIHRhcmdldCBjb2x1bW5zLgogCSAqLwotCXFyeS0+dGFyZ2V0TGlzdCA9IHRyYW5zZm9y bVVwZGF0ZVRhcmdldExpc3QocHN0YXRlLCBzdG10LT50YXJnZXRMaXN0KTsKKwlxcnktPnRhcmdl dExpc3QgPSB0cmFuc2Zvcm1VcGRhdGVUYXJnZXRMaXN0KHBzdGF0ZSwgc3RtdC0+dGFyZ2V0TGlz dCwgcXJ5LT5mb3JQb3J0aW9uT2YpOwogCiAJcXJ5LT5ydGFibGUgPSBwc3RhdGUtPnBfcnRhYmxl OwogCXFyeS0+cnRlcGVybWluZm9zID0gcHN0YXRlLT5wX3J0ZXBlcm1pbmZvczsKQEAgLTI1NTMs NyArMjc3Nyw3IEBAIHRyYW5zZm9ybVVwZGF0ZVN0bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBVcGRh dGVTdG10ICpzdG10KQogICoJaGFuZGxlIFNFVCBjbGF1c2UgaW4gVVBEQVRFL01FUkdFL0lOU0VS VCAuLi4gT04gQ09ORkxJQ1QgVVBEQVRFCiAgKi8KIExpc3QgKgotdHJhbnNmb3JtVXBkYXRlVGFy Z2V0TGlzdChQYXJzZVN0YXRlICpwc3RhdGUsIExpc3QgKm9yaWdUbGlzdCkKK3RyYW5zZm9ybVVw ZGF0ZVRhcmdldExpc3QoUGFyc2VTdGF0ZSAqcHN0YXRlLCBMaXN0ICpvcmlnVGxpc3QsIEZvclBv cnRpb25PZkV4cHIgKmZvclBvcnRpb25PZikKIHsKIAlMaXN0CSAgICp0bGlzdCA9IE5JTDsKIAlS VEVQZXJtaXNzaW9uSW5mbyAqdGFyZ2V0X3Blcm1pbmZvOwpAQCAtMjYwNiw2ICsyODMwLDIwIEBA IHRyYW5zZm9ybVVwZGF0ZVRhcmdldExpc3QoUGFyc2VTdGF0ZSAqcHN0YXRlLCBMaXN0ICpvcmln VGxpc3QpCiAJCQkJCSBlcnJoaW50KCJTRVQgdGFyZ2V0IGNvbHVtbnMgY2Fubm90IGJlIHF1YWxp ZmllZCB3aXRoIHRoZSByZWxhdGlvbiBuYW1lLiIpIDogMCwKIAkJCQkJIHBhcnNlcl9lcnJwb3Np dGlvbihwc3RhdGUsIG9yaWdUYXJnZXQtPmxvY2F0aW9uKSkpOwogCisJCS8qCisJCSAqIElmIHRo aXMgaXMgYSBGT1IgUE9SVElPTiBPRiB1cGRhdGUsIGZvcmJpZCBkaXJlY3RseSBzZXR0aW5nIHRo ZQorCQkgKiByYW5nZSBjb2x1bW4sIHNpbmNlIHRoYXQgd291bGQgY29uZmxpY3Qgd2l0aCB0aGUg aW1wbGljaXQgdXBkYXRlcy4KKwkJICovCisJCWlmIChmb3JQb3J0aW9uT2YgIT0gTlVMTCkKKwkJ eworCQkJaWYgKGF0dHJubyA9PSBmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52YXJhdHRubykKKwkJ CQllcmVwb3J0KEVSUk9SLAorCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9TWU5UQVhfRVJST1IpLAor CQkJCQkJIGVycm1zZygiY2FuJ3QgZGlyZWN0bHkgYXNzaWduIHRvIFwiJXNcIiBpbiBhIEZPUiBQ T1JUSU9OIE9GIHVwZGF0ZSIsCisJCQkJCQkJCW9yaWdUYXJnZXQtPm5hbWUpLAorCQkJCQkJIHBh cnNlcl9lcnJwb3NpdGlvbihwc3RhdGUsIG9yaWdUYXJnZXQtPmxvY2F0aW9uKSkpOworCQl9CisK IAkJdXBkYXRlVGFyZ2V0TGlzdEVudHJ5KHBzdGF0ZSwgdGxlLCBvcmlnVGFyZ2V0LT5uYW1lLAog CQkJCQkJCSAgYXR0cm5vLAogCQkJCQkJCSAgb3JpZ1RhcmdldC0+aW5kaXJlY3Rpb24sCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55IGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dy YW0ueQppbmRleCBhNjUwOTdmMTljZi4uZmU5ODc4NDJiMDYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3BhcnNlci9ncmFtLnkKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpAQCAtMjUw LDYgKzI1MCw3IEBAIHN0YXRpYyBOb2RlICptYWtlUmVjdXJzaXZlVmlld1NlbGVjdChjaGFyICpy ZWxuYW1lLCBMaXN0ICphbGlhc2VzLCBOb2RlICpxdWVyeSk7CiAJUmFuZ2VWYXIgICAqcmFuZ2U7 CiAJSW50b0NsYXVzZSAqaW50bzsKIAlXaXRoQ2xhdXNlICp3aXRoOworCUZvclBvcnRpb25PZkNs YXVzZSAqZm9ycG9ydGlvbm9mOwogCUluZmVyQ2xhdXNlCSppbmZlcjsKIAlPbkNvbmZsaWN0Q2xh dXNlICpvbmNvbmZsaWN0OwogCUFfSW5kaWNlcyAgKmFpbmQ7CkBAIC01NTQsNiArNTU1LDggQEAg c3RhdGljIE5vZGUgKm1ha2VSZWN1cnNpdmVWaWV3U2VsZWN0KGNoYXIgKnJlbG5hbWUsIExpc3Qg KmFsaWFzZXMsIE5vZGUgKnF1ZXJ5KTsKICV0eXBlIDxyYW5nZT4JcmVsYXRpb25fZXhwcgogJXR5 cGUgPHJhbmdlPglleHRlbmRlZF9yZWxhdGlvbl9leHByCiAldHlwZSA8cmFuZ2U+CXJlbGF0aW9u X2V4cHJfb3B0X2FsaWFzCisldHlwZSA8YWxpYXM+CW9wdF9hbGlhcworJXR5cGUgPGZvcnBvcnRp b25vZj4gZm9yX3BvcnRpb25fb2ZfY2xhdXNlCiAldHlwZSA8bm9kZT4JdGFibGVzYW1wbGVfY2xh dXNlIG9wdF9yZXBlYXRhYmxlX2NsYXVzZQogJXR5cGUgPHRhcmdldD4JdGFyZ2V0X2VsIHNldF90 YXJnZXQgaW5zZXJ0X2NvbHVtbl9pdGVtCiAKQEAgLTc2Myw3ICs3NjYsNyBAQCBzdGF0aWMgTm9k ZSAqbWFrZVJlY3Vyc2l2ZVZpZXdTZWxlY3QoY2hhciAqcmVsbmFtZSwgTGlzdCAqYWxpYXNlcywg Tm9kZSAqcXVlcnkpOwogCU9WRVIgT1ZFUkxBUFMgT1ZFUkxBWSBPVkVSUklESU5HIE9XTkVEIE9X TkVSCiAKIAlQQVJBTExFTCBQQVJBTUVURVIgUEFSU0VSIFBBUlRJQUwgUEFSVElUSU9OIFBBU1NJ TkcgUEFTU1dPUkQgUEFUSAotCVBFUklPRCBQTEFDSU5HIFBMQU4gUExBTlMgUE9MSUNZCisJUEVS SU9EIFBMQUNJTkcgUExBTiBQTEFOUyBQT0xJQ1kgUE9SVElPTgogCVBPU0lUSU9OIFBSRUNFRElO RyBQUkVDSVNJT04gUFJFU0VSVkUgUFJFUEFSRSBQUkVQQVJFRCBQUklNQVJZCiAJUFJJT1IgUFJJ VklMRUdFUyBQUk9DRURVUkFMIFBST0NFRFVSRSBQUk9DRURVUkVTIFBST0dSQU0gUFVCTElDQVRJ T04KIApAQCAtODgyLDEyICs4ODUsMTUgQEAgc3RhdGljIE5vZGUgKm1ha2VSZWN1cnNpdmVWaWV3 U2VsZWN0KGNoYXIgKnJlbG5hbWUsIExpc3QgKmFsaWFzZXMsIE5vZGUgKnF1ZXJ5KTsKICAqIGpz b25fcHJlZGljYXRlX3R5cGVfY29uc3RyYWludCBhbmQganNvbl9rZXlfdW5pcXVlbmVzc19jb25z dHJhaW50X29wdAogICogcHJvZHVjdGlvbnMgKHNlZSBjb21tZW50cyB0aGVyZSkuCiAgKgorICog VE8gaXMgYXNzaWduZWQgdGhlIHNhbWUgcHJlY2VkZW5jZSBhcyBJREVOVCwgdG8gc3VwcG9ydCB0 aGUgb3B0X2ludGVydmFsCisgKiBwcm9kdWN0aW9uIChzZWUgY29tbWVudCB0aGVyZSkuCisgKgog ICogTGlrZSB0aGUgVU5CT1VOREVEIFBSRUNFRElORy9GT0xMT1dJTkcgY2FzZSwgTkVTVEVEIGlz IGFzc2lnbmVkIGEgbG93ZXIKICAqIHByZWNlZGVuY2UgdGhhbiBQQVRIIHRvIGZpeCBhbWJpZ3Vp dHkgaW4gdGhlIGpzb25fdGFibGUgcHJvZHVjdGlvbi4KICAqLwogJW5vbmFzc29jCVVOQk9VTkRF RCBORVNURUQgLyogaWRlYWxseSB3b3VsZCBoYXZlIHNhbWUgcHJlY2VkZW5jZSBhcyBJREVOVCAq LwogJW5vbmFzc29jCUlERU5UIFBBUlRJVElPTiBSQU5HRSBST1dTIEdST1VQUyBQUkVDRURJTkcg Rk9MTE9XSU5HIENVQkUgUk9MTFVQCi0JCQlTRVQgS0VZUyBPQkpFQ1RfUCBTQ0FMQVIgVkFMVUVf UCBXSVRIIFdJVEhPVVQgUEFUSAorCQkJU0VUIEtFWVMgT0JKRUNUX1AgU0NBTEFSIFRPIFVTSU5H IFZBTFVFX1AgV0lUSCBXSVRIT1VUIFBBVEgKICVsZWZ0CQlPcCBPUEVSQVRPUgkJLyogbXVsdGkt Y2hhcmFjdGVyIG9wcyBhbmQgdXNlci1kZWZpbmVkIG9wZXJhdG9ycyAqLwogJWxlZnQJCScrJyAn LScKICVsZWZ0CQknKicgJy8nICclJwpAQCAtMTI1MzAsNiArMTI1MzYsMjAgQEAgRGVsZXRlU3Rt dDogb3B0X3dpdGhfY2xhdXNlIERFTEVURV9QIEZST00gcmVsYXRpb25fZXhwcl9vcHRfYWxpYXMK IAkJCQkJbi0+d2l0aENsYXVzZSA9ICQxOwogCQkJCQkkJCA9IChOb2RlICopIG47CiAJCQkJfQor CQkJfCBvcHRfd2l0aF9jbGF1c2UgREVMRVRFX1AgRlJPTSByZWxhdGlvbl9leHByIGZvcl9wb3J0 aW9uX29mX2NsYXVzZSBvcHRfYWxpYXMKKwkJCXVzaW5nX2NsYXVzZSB3aGVyZV9vcl9jdXJyZW50 X2NsYXVzZSByZXR1cm5pbmdfY2xhdXNlCisJCQkJeworCQkJCQlEZWxldGVTdG10ICpuID0gbWFr ZU5vZGUoRGVsZXRlU3RtdCk7CisKKwkJCQkJbi0+cmVsYXRpb24gPSAkNDsKKwkJCQkJbi0+Zm9y UG9ydGlvbk9mID0gJDU7CisJCQkJCW4tPnJlbGF0aW9uLT5hbGlhcyA9ICQ2OworCQkJCQluLT51 c2luZ0NsYXVzZSA9ICQ3OworCQkJCQluLT53aGVyZUNsYXVzZSA9ICQ4OworCQkJCQluLT5yZXR1 cm5pbmdDbGF1c2UgPSAkOTsKKwkJCQkJbi0+d2l0aENsYXVzZSA9ICQxOworCQkJCQkkJCA9IChO b2RlICopIG47CisJCQkJfQogCQk7CiAKIHVzaW5nX2NsYXVzZToKQEAgLTEyNjA0LDYgKzEyNjI0 LDI1IEBAIFVwZGF0ZVN0bXQ6IG9wdF93aXRoX2NsYXVzZSBVUERBVEUgcmVsYXRpb25fZXhwcl9v cHRfYWxpYXMKIAkJCQkJbi0+d2l0aENsYXVzZSA9ICQxOwogCQkJCQkkJCA9IChOb2RlICopIG47 CiAJCQkJfQorCQkJfCBvcHRfd2l0aF9jbGF1c2UgVVBEQVRFIHJlbGF0aW9uX2V4cHIKKwkJCWZv cl9wb3J0aW9uX29mX2NsYXVzZSBvcHRfYWxpYXMKKwkJCVNFVCBzZXRfY2xhdXNlX2xpc3QKKwkJ CWZyb21fY2xhdXNlCisJCQl3aGVyZV9vcl9jdXJyZW50X2NsYXVzZQorCQkJcmV0dXJuaW5nX2Ns YXVzZQorCQkJCXsKKwkJCQkJVXBkYXRlU3RtdCAqbiA9IG1ha2VOb2RlKFVwZGF0ZVN0bXQpOwor CisJCQkJCW4tPnJlbGF0aW9uID0gJDM7CisJCQkJCW4tPmZvclBvcnRpb25PZiA9ICQ0OworCQkJ CQluLT5yZWxhdGlvbi0+YWxpYXMgPSAkNTsKKwkJCQkJbi0+dGFyZ2V0TGlzdCA9ICQ3OworCQkJ CQluLT5mcm9tQ2xhdXNlID0gJDg7CisJCQkJCW4tPndoZXJlQ2xhdXNlID0gJDk7CisJCQkJCW4t PnJldHVybmluZ0NsYXVzZSA9ICQxMDsKKwkJCQkJbi0+d2l0aENsYXVzZSA9ICQxOworCQkJCQkk JCA9IChOb2RlICopIG47CisJCQkJfQogCQk7CiAKIHNldF9jbGF1c2VfbGlzdDoKQEAgLTE0MTAx LDYgKzE0MTQwLDQ0IEBAIHJlbGF0aW9uX2V4cHJfb3B0X2FsaWFzOiByZWxhdGlvbl9leHByCQkJ CQklcHJlYyBVTUlOVVMKIAkJCQl9CiAJCTsKIAorb3B0X2FsaWFzOgorCQkJQVMgQ29sSWQKKwkJ CQl7CisJCQkJCUFsaWFzCSAgICphbGlhcyA9IG1ha2VOb2RlKEFsaWFzKTsKKworCQkJCQlhbGlh cy0+YWxpYXNuYW1lID0gJDI7CisJCQkJCSQkID0gYWxpYXM7CisJCQkJfQorCQkJfCBCYXJlQ29s TGFiZWwKKwkJCQl7CisJCQkJCUFsaWFzCSAgICphbGlhcyA9IG1ha2VOb2RlKEFsaWFzKTsKKwor CQkJCQlhbGlhcy0+YWxpYXNuYW1lID0gJDE7CisJCQkJCSQkID0gYWxpYXM7CisJCQkJfQorCQkJ fCAvKiBlbXB0eSAqLyAlcHJlYyBVTUlOVVMgeyAkJCA9IE5VTEw7IH0KKwkJOworCitmb3JfcG9y dGlvbl9vZl9jbGF1c2U6CisJCQlGT1IgUE9SVElPTiBPRiBDb2xJZCAnKCcgYV9leHByICcpJwor CQkJCXsKKwkJCQkJRm9yUG9ydGlvbk9mQ2xhdXNlICpuID0gbWFrZU5vZGUoRm9yUG9ydGlvbk9m Q2xhdXNlKTsKKwkJCQkJbi0+cmFuZ2VfbmFtZSA9ICQ0OworCQkJCQluLT5sb2NhdGlvbiA9IEA0 OworCQkJCQluLT50YXJnZXQgPSAkNjsKKwkJCQkJJCQgPSBuOworCQkJCX0KKwkJCXwgRk9SIFBP UlRJT04gT0YgQ29sSWQgRlJPTSBhX2V4cHIgVE8gYV9leHByCisJCQkJeworCQkJCQlGb3JQb3J0 aW9uT2ZDbGF1c2UgKm4gPSBtYWtlTm9kZShGb3JQb3J0aW9uT2ZDbGF1c2UpOworCQkJCQluLT5y YW5nZV9uYW1lID0gJDQ7CisJCQkJCW4tPmxvY2F0aW9uID0gQDQ7CisJCQkJCW4tPnRhcmdldF9z dGFydCA9ICQ2OworCQkJCQluLT50YXJnZXRfZW5kID0gJDg7CisJCQkJCSQkID0gbjsKKwkJCQl9 CisJCTsKKwogLyoKICAqIFRBQkxFU0FNUExFIGRlY29yYXRpb24gaW4gYSBGUk9NIGl0ZW0KICAq LwpAQCAtMTQ5NDEsMTYgKzE1MDE4LDI1IEBAIG9wdF90aW1lem9uZToKIAkJCXwgLypFTVBUWSov CQkJCQkJCQl7ICQkID0gZmFsc2U7IH0KIAkJOwogCisvKgorICogV2UgbmVlZCB0byBoYW5kbGUg dGhpcyBzaGlmdC9yZWR1Y2UgY29uZmxpY3Q6CisgKiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NIHQgKyBJTlRFUlZBTCAnMScgWUVBUiBUTyBNT05USC4KKyAqIFdlIGRvbid0IHNlZSBmYXIg ZW5vdWdoIGFoZWFkIHRvIGtub3cgaWYgdGhlcmUgaXMgYW5vdGhlciBUTyBjb21pbmcuCisgKiBX ZSBwcmVmZXIgdG8gaW50ZXJwcmV0IHRoaXMgYXMgRlJPTSAodCArIElOVEVSVkFMICcxJyBZRUFS IFRPIE1PTlRIKSwKKyAqIGkuZS4gdG8gc2hpZnQuCisgKiBUaGF0IGdpdmVzIHRoZSB1c2VyIHRo ZSBvcHRpb24gb2YgYWRkaW5nIHBhcmVudGhlc2VzIHRvIGdldCB0aGUgb3RoZXIgbWVhbmluZy4K KyAqIElmIHdlIHJlZHVjZWQsIGludGVydmFscyBjb3VsZCBuZXZlciBoYXZlIGEgVE8uCisgKi8K IG9wdF9pbnRlcnZhbDoKLQkJCVlFQVJfUAorCQkJWUVBUl9QCQkJCQkJCQkJCQkJCQkJCSVwcmVj IElTCiAJCQkJeyAkJCA9IGxpc3RfbWFrZTEobWFrZUludENvbnN0KElOVEVSVkFMX01BU0soWUVB UiksIEAxKSk7IH0KIAkJCXwgTU9OVEhfUAogCQkJCXsgJCQgPSBsaXN0X21ha2UxKG1ha2VJbnRD b25zdChJTlRFUlZBTF9NQVNLKE1PTlRIKSwgQDEpKTsgfQotCQkJfCBEQVlfUAorCQkJfCBEQVlf UAkJCQkJCQkJCQkJCQkJCQklcHJlYyBJUwogCQkJCXsgJCQgPSBsaXN0X21ha2UxKG1ha2VJbnRD b25zdChJTlRFUlZBTF9NQVNLKERBWSksIEAxKSk7IH0KLQkJCXwgSE9VUl9QCisJCQl8IEhPVVJf UAkJCQkJCQkJCQkJCQkJCSVwcmVjIElTCiAJCQkJeyAkJCA9IGxpc3RfbWFrZTEobWFrZUludENv bnN0KElOVEVSVkFMX01BU0soSE9VUiksIEAxKSk7IH0KLQkJCXwgTUlOVVRFX1AKKwkJCXwgTUlO VVRFX1AJCQkJCQkJCQkJCQkJCSVwcmVjIElTCiAJCQkJeyAkJCA9IGxpc3RfbWFrZTEobWFrZUlu dENvbnN0KElOVEVSVkFMX01BU0soTUlOVVRFKSwgQDEpKTsgfQogCQkJfCBpbnRlcnZhbF9zZWNv bmQKIAkJCQl7ICQkID0gJDE7IH0KQEAgLTE4MDA0LDYgKzE4MDkwLDcgQEAgdW5yZXNlcnZlZF9r ZXl3b3JkOgogCQkJfCBQTEFOCiAJCQl8IFBMQU5TCiAJCQl8IFBPTElDWQorCQkJfCBQT1JUSU9O CiAJCQl8IFBSRUNFRElORwogCQkJfCBQUkVQQVJFCiAJCQl8IFBSRVBBUkVECkBAIC0xODYzMyw2 ICsxODcyMCw3IEBAIGJhcmVfbGFiZWxfa2V5d29yZDoKIAkJCXwgUExBTgogCQkJfCBQTEFOUwog CQkJfCBQT0xJQ1kKKwkJCXwgUE9SVElPTgogCQkJfCBQT1NJVElPTgogCQkJfCBQUkVDRURJTkcK IAkJCXwgUFJFUEFSRQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2FnZy5j IGIvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2FnZy5jCmluZGV4IDMyNTRjODNjYzZjLi44Yjhj MmI5Mjk5YyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2FnZy5jCisrKyBi L3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9hZ2cuYwpAQCAtNTc5LDYgKzU3OSwxMyBAQCBjaGVj a19hZ2dsZXZlbHNfYW5kX2NvbnN0cmFpbnRzKFBhcnNlU3RhdGUgKnBzdGF0ZSwgTm9kZSAqZXhw cikKIAkJY2FzZSBFWFBSX0tJTkRfQ1lDTEVfTUFSSzoKIAkJCWVycmtpbmQgPSB0cnVlOwogCQkJ YnJlYWs7CisJCWNhc2UgRVhQUl9LSU5EX1VQREFURV9QT1JUSU9OOgorCQkJaWYgKGlzQWdnKQor CQkJCWVyciA9IF8oImFnZ3JlZ2F0ZSBmdW5jdGlvbnMgYXJlIG5vdCBhbGxvd2VkIGluIEZPUiBQ T1JUSU9OIE9GIGV4cHJlc3Npb25zIik7CisJCQllbHNlCisJCQkJZXJyID0gXygiZ3JvdXBpbmcg b3BlcmF0aW9ucyBhcmUgbm90IGFsbG93ZWQgaW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbnMi KTsKKworCQkJYnJlYWs7CiAKIAkJCS8qCiAJCQkgKiBUaGVyZSBpcyBpbnRlbnRpb25hbGx5IG5v IGRlZmF1bHQ6IGNhc2UgaGVyZSwgc28gdGhhdCB0aGUKQEAgLTk5Niw2ICsxMDAzLDkgQEAgdHJh bnNmb3JtV2luZG93RnVuY0NhbGwoUGFyc2VTdGF0ZSAqcHN0YXRlLCBXaW5kb3dGdW5jICp3ZnVu YywKIAkJY2FzZSBFWFBSX0tJTkRfQ1lDTEVfTUFSSzoKIAkJCWVycmtpbmQgPSB0cnVlOwogCQkJ YnJlYWs7CisJCWNhc2UgRVhQUl9LSU5EX1VQREFURV9QT1JUSU9OOgorCQkJZXJyID0gXygid2lu ZG93IGZ1bmN0aW9ucyBhcmUgbm90IGFsbG93ZWQgaW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lv bnMiKTsKKwkJCWJyZWFrOwogCiAJCQkvKgogCQkJICogVGhlcmUgaXMgaW50ZW50aW9uYWxseSBu byBkZWZhdWx0OiBjYXNlIGhlcmUsIHNvIHRoYXQgdGhlCmRpZmYgLS1naXQgYS9zcmMvYmFja2Vu ZC9wYXJzZXIvcGFyc2VfY29sbGF0ZS5jIGIvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2NvbGxh dGUuYwppbmRleCBkMmUyMTgzNTNmMy4uNTIyMzQ1YjE2NjggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3BhcnNlci9wYXJzZV9jb2xsYXRlLmMKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNl X2NvbGxhdGUuYwpAQCAtNDg0LDYgKzQ4NCw3IEBAIGFzc2lnbl9jb2xsYXRpb25zX3dhbGtlcihO b2RlICpub2RlLCBhc3NpZ25fY29sbGF0aW9uc19jb250ZXh0ICpjb250ZXh0KQogCQljYXNlIFRf Sm9pbkV4cHI6CiAJCWNhc2UgVF9Gcm9tRXhwcjoKIAkJY2FzZSBUX09uQ29uZmxpY3RFeHByOgor CQljYXNlIFRfRm9yUG9ydGlvbk9mRXhwcjoKIAkJY2FzZSBUX1NvcnRHcm91cENsYXVzZToKIAkJ Y2FzZSBUX01lcmdlQWN0aW9uOgogCQkJKHZvaWQpIGV4cHJlc3Npb25fdHJlZV93YWxrZXIobm9k ZSwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9leHByLmMgYi9zcmMvYmFj a2VuZC9wYXJzZXIvcGFyc2VfZXhwci5jCmluZGV4IDEyMTE5ZjE0N2ZjLi5kOGE5NmZiZjUzNCAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2V4cHIuYworKysgYi9zcmMvYmFj a2VuZC9wYXJzZXIvcGFyc2VfZXhwci5jCkBAIC01ODUsNiArNTg1LDkgQEAgdHJhbnNmb3JtQ29s dW1uUmVmKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ29sdW1uUmVmICpjcmVmKQogCQljYXNlIEVYUFJf S0lORF9QQVJUSVRJT05fQk9VTkQ6CiAJCQllcnIgPSBfKCJjYW5ub3QgdXNlIGNvbHVtbiByZWZl cmVuY2UgaW4gcGFydGl0aW9uIGJvdW5kIGV4cHJlc3Npb24iKTsKIAkJCWJyZWFrOworCQljYXNl IEVYUFJfS0lORF9VUERBVEVfUE9SVElPTjoKKwkJCWVyciA9IF8oImNhbm5vdCB1c2UgY29sdW1u IHJlZmVyZW5jZSBpbiBGT1IgUE9SVElPTiBPRiBleHByZXNzaW9uIik7CisJCQlicmVhazsKIAog CQkJLyoKIAkJCSAqIFRoZXJlIGlzIGludGVudGlvbmFsbHkgbm8gZGVmYXVsdDogY2FzZSBoZXJl LCBzbyB0aGF0IHRoZQpAQCAtMTg2MSw2ICsxODY0LDkgQEAgdHJhbnNmb3JtU3ViTGluayhQYXJz ZVN0YXRlICpwc3RhdGUsIFN1YkxpbmsgKnN1YmxpbmspCiAJCWNhc2UgRVhQUl9LSU5EX0dFTkVS QVRFRF9DT0xVTU46CiAJCQllcnIgPSBfKCJjYW5ub3QgdXNlIHN1YnF1ZXJ5IGluIGNvbHVtbiBn ZW5lcmF0aW9uIGV4cHJlc3Npb24iKTsKIAkJCWJyZWFrOworCQljYXNlIEVYUFJfS0lORF9VUERB VEVfUE9SVElPTjoKKwkJCWVyciA9IF8oImNhbm5vdCB1c2Ugc3VicXVlcnkgaW4gRk9SIFBPUlRJ T04gT0YgZXhwcmVzc2lvbiIpOworCQkJYnJlYWs7CiAKIAkJCS8qCiAJCQkgKiBUaGVyZSBpcyBp bnRlbnRpb25hbGx5IG5vIGRlZmF1bHQ6IGNhc2UgaGVyZSwgc28gdGhhdCB0aGUKQEAgLTMxNzQs NiArMzE4MCw4IEBAIFBhcnNlRXhwcktpbmROYW1lKFBhcnNlRXhwcktpbmQgZXhwcktpbmQpCiAJ CQlyZXR1cm4gIlVQREFURSI7CiAJCWNhc2UgRVhQUl9LSU5EX01FUkdFX1dIRU46CiAJCQlyZXR1 cm4gIk1FUkdFIFdIRU4iOworCQljYXNlIEVYUFJfS0lORF9VUERBVEVfUE9SVElPTjoKKwkJCXJl dHVybiAiRk9SIFBPUlRJT04gT0YiOwogCQljYXNlIEVYUFJfS0lORF9HUk9VUF9CWToKIAkJCXJl dHVybiAiR1JPVVAgQlkiOwogCQljYXNlIEVYUFJfS0lORF9PUkRFUl9CWToKZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9mdW5jLmMgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFy c2VfZnVuYy5jCmluZGV4IDc3OGQ2OWM2ZjNjLi40NzY0ZGQyMWM5MCAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvcGFyc2VyL3BhcnNlX2Z1bmMuYworKysgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFy c2VfZnVuYy5jCkBAIC0yNzgzLDYgKzI3ODMsOSBAQCBjaGVja19zcmZfY2FsbF9wbGFjZW1lbnQo UGFyc2VTdGF0ZSAqcHN0YXRlLCBOb2RlICpsYXN0X3NyZiwgaW50IGxvY2F0aW9uKQogCQljYXNl IEVYUFJfS0lORF9DWUNMRV9NQVJLOgogCQkJZXJya2luZCA9IHRydWU7CiAJCQlicmVhazsKKwkJ Y2FzZSBFWFBSX0tJTkRfVVBEQVRFX1BPUlRJT046CisJCQllcnIgPSBfKCJzZXQtcmV0dXJuaW5n IGZ1bmN0aW9ucyBhcmUgbm90IGFsbG93ZWQgaW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbnMi KTsKKwkJCWJyZWFrOwogCiAJCQkvKgogCQkJICogVGhlcmUgaXMgaW50ZW50aW9uYWxseSBubyBk ZWZhdWx0OiBjYXNlIGhlcmUsIHNvIHRoYXQgdGhlCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9w YXJzZXIvcGFyc2VfbWVyZ2UuYyBiL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9tZXJnZS5jCmlu ZGV4IDUxZDc3MDNlZmY3Li5lZDI3NmM0MTQ2MCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFy c2VyL3BhcnNlX21lcmdlLmMKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX21lcmdlLmMK QEAgLTM4NSw3ICszODUsNyBAQCB0cmFuc2Zvcm1NZXJnZVN0bXQoUGFyc2VTdGF0ZSAqcHN0YXRl LCBNZXJnZVN0bXQgKnN0bXQpCiAJCQkJCXBzdGF0ZS0+cF9pc19pbnNlcnQgPSBmYWxzZTsKIAkJ CQkJYWN0aW9uLT50YXJnZXRMaXN0ID0KIAkJCQkJCXRyYW5zZm9ybVVwZGF0ZVRhcmdldExpc3Qo cHN0YXRlLAotCQkJCQkJCQkJCQkJICBtZXJnZVdoZW5DbGF1c2UtPnRhcmdldExpc3QpOworCQkJ CQkJCQkJCQkJICBtZXJnZVdoZW5DbGF1c2UtPnRhcmdldExpc3QsIE5VTEwpOwogCQkJCX0KIAkJ CQlicmVhazsKIAkJCWNhc2UgQ01EX0RFTEVURToKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Jl d3JpdGUvcmV3cml0ZUhhbmRsZXIuYyBiL3NyYy9iYWNrZW5kL3Jld3JpdGUvcmV3cml0ZUhhbmRs ZXIuYwppbmRleCBhZGM5ZTc2MDBlMS4uZTg4M2I3ZjJhNjAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3Jld3JpdGUvcmV3cml0ZUhhbmRsZXIuYworKysgYi9zcmMvYmFja2VuZC9yZXdyaXRlL3Jl d3JpdGVIYW5kbGVyLmMKQEAgLTM3MjksNiArMzcyOSwzMCBAQCByZXdyaXRlVGFyZ2V0VmlldyhR dWVyeSAqcGFyc2V0cmVlLCBSZWxhdGlvbiB2aWV3KQogCQkJCQkJCQkJICAmcGFyc2V0cmVlLT5o YXNTdWJMaW5rcyk7CiAJfQogCisJaWYgKHBhcnNldHJlZS0+Zm9yUG9ydGlvbk9mICYmIHBhcnNl dHJlZS0+Y29tbWFuZFR5cGUgPT0gQ01EX1VQREFURSkKKwl7CisJCS8qCisJCSAqIExpa2UgdGhl IElOU0VSVC9VUERBVEUgY29kZSBhYm92ZSwgdXBkYXRlIHRoZSByZXNub3MgaW4gdGhlCisJCSAq IGF1eGlsaWFyeSBVUERBVEUgdGFyZ2V0bGlzdCB0byByZWZlciB0byBjb2x1bW5zIG9mIHRoZSBi YXNlCisJCSAqIHJlbGF0aW9uLgorCQkgKi8KKwkJZm9yZWFjaChsYywgcGFyc2V0cmVlLT5mb3JQ b3J0aW9uT2YtPnJhbmdlVGFyZ2V0TGlzdCkKKwkJeworCQkJVGFyZ2V0RW50cnkgKnRsZSA9IChU YXJnZXRFbnRyeSAqKSBsZmlyc3QobGMpOworCQkJVGFyZ2V0RW50cnkgKnZpZXdfdGxlOworCisJ CQlpZiAodGxlLT5yZXNqdW5rKQorCQkJCWNvbnRpbnVlOworCisJCQl2aWV3X3RsZSA9IGdldF90 bGVfYnlfcmVzbm8odmlld190YXJnZXRsaXN0LCB0bGUtPnJlc25vKTsKKwkJCWlmICh2aWV3X3Rs ZSAhPSBOVUxMICYmICF2aWV3X3RsZS0+cmVzanVuayAmJiBJc0Eodmlld190bGUtPmV4cHIsIFZh cikpCisJCQkJdGxlLT5yZXNubyA9ICgoVmFyICopIHZpZXdfdGxlLT5leHByKS0+dmFyYXR0bm87 CisJCQllbHNlCisJCQkJZWxvZyhFUlJPUiwgImF0dHJpYnV0ZSBudW1iZXIgJWQgbm90IGZvdW5k IGluIHZpZXcgdGFyZ2V0bGlzdCIsCisJCQkJCSB0bGUtPnJlc25vKTsKKwkJfQorCX0KKwogCS8q CiAJICogRm9yIFVQREFURS9ERUxFVEUvTUVSR0UsIHB1bGwgdXAgYW55IFdIRVJFIHF1YWxzIGZy b20gdGhlIHZpZXcuICBXZQogCSAqIGtub3cgdGhhdCBhbnkgVmFycyBpbiB0aGUgcXVhbHMgbXVz dCByZWZlcmVuY2UgdGhlIG9uZSBiYXNlIHJlbGF0aW9uLApAQCAtNDA2OCw2ICs0MDkyLDI1IEBA IFJld3JpdGVRdWVyeShRdWVyeSAqcGFyc2V0cmVlLCBMaXN0ICpyZXdyaXRlX2V2ZW50cywgaW50 IG9yaWdfcnRfbGVuZ3RoKQogCQllbHNlIGlmIChldmVudCA9PSBDTURfVVBEQVRFKQogCQl7CiAJ CQlBc3NlcnQocGFyc2V0cmVlLT5vdmVycmlkZSA9PSBPVkVSUklESU5HX05PVF9TRVQpOworCisJ CQkvKgorCQkJICogVXBkYXRlIEZPUiBQT1JUSU9OIE9GIGNvbHVtbihzKSBhdXRvbWF0aWNhbGx5 LiBEb24ndCBkbyB0aGlzCisJCQkgKiB1bnRpbCB3ZSdyZSBkb25lIHJld3JpdGluZyBhIHZpZXcg dXBkYXRlLCBzbyB0aGF0IHdlIGRvbid0IGFkZAorCQkJICogdGhlIHNhbWUgdXBkYXRlIG9uIHRo ZSByZWN1cnNpb24uCisJCQkgKi8KKwkJCWlmIChwYXJzZXRyZWUtPmZvclBvcnRpb25PZiAmJgor CQkJCXJ0X2VudHJ5X3JlbGF0aW9uLT5yZF9yZWwtPnJlbGtpbmQgIT0gUkVMS0lORF9WSUVXKQor CQkJeworCQkJCUxpc3RDZWxsICAgKnRsOworCisJCQkJZm9yZWFjaCh0bCwgcGFyc2V0cmVlLT5m b3JQb3J0aW9uT2YtPnJhbmdlVGFyZ2V0TGlzdCkKKwkJCQl7CisJCQkJCVRhcmdldEVudHJ5ICp0 bGUgPSAoVGFyZ2V0RW50cnkgKikgbGZpcnN0KHRsKTsKKworCQkJCQlwYXJzZXRyZWUtPnRhcmdl dExpc3QgPSBsYXBwZW5kKHBhcnNldHJlZS0+dGFyZ2V0TGlzdCwgdGxlKTsKKwkJCQl9CisJCQl9 CisKIAkJCXBhcnNldHJlZS0+dGFyZ2V0TGlzdCA9CiAJCQkJcmV3cml0ZVRhcmdldExpc3RJVShw YXJzZXRyZWUtPnRhcmdldExpc3QsCiAJCQkJCQkJCQlwYXJzZXRyZWUtPmNvbW1hbmRUeXBlLApk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMgYi9zcmMvYmFj a2VuZC91dGlscy9hZHQvcmlfdHJpZ2dlcnMuYwppbmRleCAwNTlmYzVlYmY2MC4uZDZiMWViNTdh NDggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5jCisrKyBi L3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5jCkBAIC0xMjgsNyArMTI4LDcgQEAg dHlwZWRlZiBzdHJ1Y3QgUklfQ29uc3RyYWludEluZm8KIAlPaWQJCQlmZl9lcV9vcHJzW1JJX01B WF9OVU1LRVlTXTsgLyogZXF1YWxpdHkgb3BlcmF0b3JzIChGSyA9IEZLKSAqLwogCU9pZAkJCXBl cmlvZF9jb250YWluZWRfYnlfb3BlcjsJLyogYW55cmFuZ2UgPEAgYW55cmFuZ2UgKi8KIAlPaWQJ CQlhZ2dlZF9wZXJpb2RfY29udGFpbmVkX2J5X29wZXI7IC8qIGZrYXR0ciA8QCByYW5nZV9hZ2co cGthdHRyKSAqLwotCU9pZAkJCXBlcmlvZF9pbnRlcnNlY3Rfb3BlcjsJLyogYW55cmFuZ2UgKiBh bnlyYW5nZSAqLworCU9pZAkJCXBlcmlvZF9pbnRlcnNlY3Rfb3BlcjsJLyogYW55cmFuZ2UgKiBh bnlyYW5nZSAob3IgbXVsdGlyYW5nZSkgKi8KIAlkbGlzdF9ub2RlCXZhbGlkX2xpbms7CQkvKiBM aW5rIGluIGxpc3Qgb2YgdmFsaWQgZW50cmllcyAqLwogfSBSSV9Db25zdHJhaW50SW5mbzsKIApk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvY2FjaGUvbHN5c2NhY2hlLmMgYi9zcmMvYmFj a2VuZC91dGlscy9jYWNoZS9sc3lzY2FjaGUuYwppbmRleCBmYTdjZDdlMDZhNy4uNDMxNThhZmFj MTUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hlL2xzeXNjYWNoZS5jCisrKyBi L3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hlL2xzeXNjYWNoZS5jCkBAIC0yMzU1LDYgKzIzNTUsMzMg QEAgZ2V0X3R5cGlzZGVmaW5lZChPaWQgdHlwaWQpCiAJCXJldHVybiBmYWxzZTsKIH0KIAorLyoK KyAqIGdldF90eXBuYW1lX2FuZF9uYW1lc3BhY2UKKyAqCisgKgkgIFJldHVybnMgdGhlIG5hbWUg YW5kIG5hbWVzcGFjZSBvZiBhIGdpdmVuIHR5cGUKKyAqCisgKiBSZXR1cm5zIHRydWUgaWYgb25l IGZvdW5kLCBvciBmYWxzZSBpZiBub3QuCisgKi8KK2Jvb2wKK2dldF90eXBuYW1lX2FuZF9uYW1l c3BhY2UoT2lkIHR5cGlkLCBjaGFyICoqdHlwbmFtZSwgY2hhciAqKnR5cG5hbWVzcGFjZSkKK3sK KwlIZWFwVHVwbGUJdHA7CisKKwl0cCA9IFNlYXJjaFN5c0NhY2hlMShUWVBFT0lELCBPYmplY3RJ ZEdldERhdHVtKHR5cGlkKSk7CisJaWYgKEhlYXBUdXBsZUlzVmFsaWQodHApKQorCXsKKwkJRm9y bV9wZ190eXBlIHR5cHR1cCA9IChGb3JtX3BnX3R5cGUpIEdFVFNUUlVDVCh0cCk7CisKKwkJKnR5 cG5hbWUgPSBwc3RyZHVwKE5hbWVTdHIodHlwdHVwLT50eXBuYW1lKSk7CisJCSp0eXBuYW1lc3Bh Y2UgPSBnZXRfbmFtZXNwYWNlX25hbWUodHlwdHVwLT50eXBuYW1lc3BhY2UpOworCQlSZWxlYXNl U3lzQ2FjaGUodHApOworCQkvKiAqdHlwbmFtZXNwYWNlIGlzIE5VTEwgaWYgaXQgd2Fzbid0IGZv dW5kOiAqLworCQlyZXR1cm4gKnR5cG5hbWVzcGFjZTsKKwl9CisJZWxzZQorCQlyZXR1cm4gZmFs c2U7Cit9CisKIC8qCiAgKiBnZXRfdHlwbGVuCiAgKgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUv bm9kZXMvZXhlY25vZGVzLmggYi9zcmMvaW5jbHVkZS9ub2Rlcy9leGVjbm9kZXMuaAppbmRleCAx OGFlOGYwZDRiYi4uYWNiM2Q1NDU4YTIgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL2V4 ZWNub2Rlcy5oCisrKyBiL3NyYy9pbmNsdWRlL25vZGVzL2V4ZWNub2Rlcy5oCkBAIC00OCw2ICs0 OCw3IEBACiAjaW5jbHVkZSAidXRpbHMvc29ydHN1cHBvcnQuaCIKICNpbmNsdWRlICJ1dGlscy90 dXBsZXNvcnQuaCIKICNpbmNsdWRlICJ1dGlscy90dXBsZXN0b3JlLmgiCisjaW5jbHVkZSAidXRp bHMvdHlwY2FjaGUuaCIKIAogLyoKICAqIGZvcndhcmQgcmVmZXJlbmNlcyBpbiB0aGlzIGZpbGUK QEAgLTQ1Miw2ICs0NTMsMjQgQEAgdHlwZWRlZiBzdHJ1Y3QgTWVyZ2VBY3Rpb25TdGF0ZQogCUV4 cHJTdGF0ZSAgKm1hc193aGVucXVhbDsJLyogV0hFTiBbTk9UXSBNQVRDSEVEIEFORCBjb25kaXRp b25zICovCiB9IE1lcmdlQWN0aW9uU3RhdGU7CiAKKy8qCisgKiBGb3JQb3J0aW9uT2ZTdGF0ZQor ICoKKyAqIEV4ZWN1dG9yIHN0YXRlIG9mIGEgRk9SIFBPUlRJT04gT0Ygb3BlcmF0aW9uLgorICov Cit0eXBlZGVmIHN0cnVjdCBGb3JQb3J0aW9uT2ZTdGF0ZQoreworCU5vZGVUYWcJCXR5cGU7CisK KwljaGFyCSAgICpmcF9yYW5nZU5hbWU7CS8qIHRoZSBjb2x1bW4gbmFtZWQgaW4gRk9SIFBPUlRJ T04gT0YgKi8KKwlPaWQJCQlmcF9yYW5nZVR5cGU7CS8qIHRoZSB0eXBlIG9mIHRoZSBGT1IgUE9S VElPTiBPRiBleHByZXNzaW9uICovCisJaW50CQkJZnBfcmFuZ2VBdHRubzsJLyogdGhlIGF0dG5v IG9mIHRoZSByYW5nZSBjb2x1bW4gKi8KKwlEYXR1bQkJZnBfdGFyZ2V0UmFuZ2U7IC8qIHRoZSBy YW5nZS9tdWx0aXJhbmdlIGZyb20gRk9SIFBPUlRJT04gT0YgKi8KKwlUeXBlQ2FjaGVFbnRyeSAq ZnBfbGVmdG92ZXJzdHlwY2FjaGU7CS8qIHR5cGUgY2FjaGUgZW50cnkgb2YgdGhlIHJhbmdlICov CisJVHVwbGVUYWJsZVNsb3QgKmZwX0V4aXN0aW5nOwkvKiBzbG90IHRvIHN0b3JlIG9sZCB0dXBs ZSAqLworCVR1cGxlVGFibGVTbG90ICpmcF9MZWZ0b3ZlcjsJLyogc2xvdCB0byBzdG9yZSBsZWZ0 b3ZlciAqLworfSBGb3JQb3J0aW9uT2ZTdGF0ZTsKKwogLyoKICAqIFJlc3VsdFJlbEluZm8KICAq CkBAIC01ODgsNiArNjA3LDkgQEAgdHlwZWRlZiBzdHJ1Y3QgUmVzdWx0UmVsSW5mbwogCS8qIGZv ciBNRVJHRSwgZXhwciBzdGF0ZSBmb3IgY2hlY2tpbmcgdGhlIGpvaW4gY29uZGl0aW9uICovCiAJ RXhwclN0YXRlICAqcmlfTWVyZ2VKb2luQ29uZGl0aW9uOwogCisJLyogRk9SIFBPUlRJT04gT0Yg ZXZhbHVhdGlvbiBzdGF0ZSAqLworCUZvclBvcnRpb25PZlN0YXRlICpyaV9mb3JQb3J0aW9uT2Y7 CisKIAkvKiBwYXJ0aXRpb24gY2hlY2sgZXhwcmVzc2lvbiBzdGF0ZSAoTlVMTCBpZiBub3Qgc2V0 IHVwIHlldCkgKi8KIAlFeHByU3RhdGUgICpyaV9QYXJ0aXRpb25DaGVja0V4cHI7CiAKZGlmZiAt LWdpdCBhL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaCBiL3NyYy9pbmNsdWRlL25vZGVz L3BhcnNlbm9kZXMuaAppbmRleCBlY2JkZGQxMmUxYi4uYTA5ZTlkOWJhNmEgMTAwNjQ0Ci0tLSBh L3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaAorKysgYi9zcmMvaW5jbHVkZS9ub2Rlcy9w YXJzZW5vZGVzLmgKQEAgLTE0Nyw2ICsxNDcsOSBAQCB0eXBlZGVmIHN0cnVjdCBRdWVyeQogCSAq LwogCWludAkJCXJlc3VsdFJlbGF0aW9uIHBnX25vZGVfYXR0cihxdWVyeV9qdW1ibGVfaWdub3Jl KTsKIAorCS8qIEZPUiBQT1JUSU9OIE9GIGNsYXVzZSBmb3IgVVBEQVRFL0RFTEVURSAqLworCUZv clBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZjsKKwogCS8qIGhhcyBhZ2dyZWdhdGVzIGluIHRs aXN0IG9yIGhhdmluZ1F1YWwgKi8KIAlib29sCQloYXNBZ2dzIHBnX25vZGVfYXR0cihxdWVyeV9q dW1ibGVfaWdub3JlKTsKIAkvKiBoYXMgd2luZG93IGZ1bmN0aW9ucyBpbiB0bGlzdCAqLwpAQCAt MTYxMyw2ICsxNjE2LDIxIEBAIHR5cGVkZWYgc3RydWN0IFJvd01hcmtDbGF1c2UKIAlib29sCQlw dXNoZWREb3duOwkJLyogcHVzaGVkIGRvd24gZnJvbSBoaWdoZXIgcXVlcnkgbGV2ZWw/ICovCiB9 IFJvd01hcmtDbGF1c2U7CiAKKy8qCisgKiBGb3JQb3J0aW9uT2ZDbGF1c2UKKyAqCQlyZXByZXNl bnRhdGlvbiBvZiBGT1IgUE9SVElPTiBPRiA8cGVyaW9kLW5hbWU+IEZST00gPHRzPiBUTyA8dGU+ CisgKgkJb3IgRk9SIFBPUlRJT04gT0YgPHBlcmlvZC1uYW1lPiAoPHRhcmdldD4pCisgKi8KK3R5 cGVkZWYgc3RydWN0IEZvclBvcnRpb25PZkNsYXVzZQoreworCU5vZGVUYWcJCXR5cGU7CisJY2hh cgkgICAqcmFuZ2VfbmFtZTsKKwlpbnQJCQlsb2NhdGlvbjsKKwlOb2RlCSAgICp0YXJnZXQ7CisJ Tm9kZQkgICAqdGFyZ2V0X3N0YXJ0OworCU5vZGUJICAgKnRhcmdldF9lbmQ7Cit9IEZvclBvcnRp b25PZkNsYXVzZTsKKwogLyoKICAqIFdpdGhDbGF1c2UgLQogICoJICAgcmVwcmVzZW50YXRpb24g b2YgV0lUSCBjbGF1c2UKQEAgLTIxMjYsNiArMjE0NCw3IEBAIHR5cGVkZWYgc3RydWN0IERlbGV0 ZVN0bXQKIAlOb2RlCSAgICp3aGVyZUNsYXVzZTsJLyogcXVhbGlmaWNhdGlvbnMgKi8KIAlSZXR1 cm5pbmdDbGF1c2UgKnJldHVybmluZ0NsYXVzZTsJLyogUkVUVVJOSU5HIGNsYXVzZSAqLwogCVdp dGhDbGF1c2UgKndpdGhDbGF1c2U7CQkvKiBXSVRIIGNsYXVzZSAqLworCUZvclBvcnRpb25PZkNs YXVzZSAqZm9yUG9ydGlvbk9mOwkvKiBGT1IgUE9SVElPTiBPRiBjbGF1c2UgKi8KIH0gRGVsZXRl U3RtdDsKIAogLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMjE0MSw2ICsyMTYwLDcgQEAg dHlwZWRlZiBzdHJ1Y3QgVXBkYXRlU3RtdAogCUxpc3QJICAgKmZyb21DbGF1c2U7CQkvKiBvcHRp b25hbCBmcm9tIGNsYXVzZSBmb3IgbW9yZSB0YWJsZXMgKi8KIAlSZXR1cm5pbmdDbGF1c2UgKnJl dHVybmluZ0NsYXVzZTsJLyogUkVUVVJOSU5HIGNsYXVzZSAqLwogCVdpdGhDbGF1c2UgKndpdGhD bGF1c2U7CQkvKiBXSVRIIGNsYXVzZSAqLworCUZvclBvcnRpb25PZkNsYXVzZSAqZm9yUG9ydGlv bk9mOwkvKiBGT1IgUE9SVElPTiBPRiBjbGF1c2UgKi8KIH0gVXBkYXRlU3RtdDsKIAogLyogLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMvcGF0aG5v ZGVzLmggYi9zcmMvaW5jbHVkZS9ub2Rlcy9wYXRobm9kZXMuaAppbmRleCAzMGQ4ODliNTRjNS4u ZWJhNjk3MjU3ZjIgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3BhdGhub2Rlcy5oCisr KyBiL3NyYy9pbmNsdWRlL25vZGVzL3BhdGhub2Rlcy5oCkBAIC0yNjEyLDYgKzI2MTIsNyBAQCB0 eXBlZGVmIHN0cnVjdCBNb2RpZnlUYWJsZVBhdGgKIAlMaXN0CSAgICpyZXR1cm5pbmdMaXN0czsg LyogcGVyLXRhcmdldC10YWJsZSBSRVRVUk5JTkcgdGxpc3RzICovCiAJTGlzdAkgICAqcm93TWFy a3M7CQkvKiBQbGFuUm93TWFya3MgKG5vbi1sb2NraW5nIG9ubHkpICovCiAJT25Db25mbGljdEV4 cHIgKm9uY29uZmxpY3Q7IC8qIE9OIENPTkZMSUNUIGNsYXVzZSwgb3IgTlVMTCAqLworCUZvclBv cnRpb25PZkV4cHIgKmZvclBvcnRpb25PZjsgLyogRk9SIFBPUlRJT04gT0YgY2xhdXNlIGZvciBV UERBVEUvREVMRVRFICovCiAJaW50CQkJZXBxUGFyYW07CQkvKiBJRCBvZiBQYXJhbSBmb3IgRXZh bFBsYW5RdWFsIHJlLWV2YWwgKi8KIAlMaXN0CSAgICptZXJnZUFjdGlvbkxpc3RzOwkvKiBwZXIt dGFyZ2V0LXRhYmxlIGxpc3RzIG9mIGFjdGlvbnMgZm9yCiAJCQkJCQkJCQkgKiBNRVJHRSAqLwpk aWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMvcGxhbm5vZGVzLmggYi9zcmMvaW5jbHVkZS9u b2Rlcy9wbGFubm9kZXMuaAppbmRleCBjNDM5M2E5NDMyMS4uOTJiODdjMTQ4NTkgMTAwNjQ0Ci0t LSBhL3NyYy9pbmNsdWRlL25vZGVzL3BsYW5ub2Rlcy5oCisrKyBiL3NyYy9pbmNsdWRlL25vZGVz L3BsYW5ub2Rlcy5oCkBAIC0zNjgsNiArMzY4LDggQEAgdHlwZWRlZiBzdHJ1Y3QgTW9kaWZ5VGFi bGUKIAlMaXN0CSAgICpvbkNvbmZsaWN0Q29sczsKIAkvKiBXSEVSRSBmb3IgT04gQ09ORkxJQ1Qg VVBEQVRFICovCiAJTm9kZQkgICAqb25Db25mbGljdFdoZXJlOworCS8qIEZPUiBQT1JUSU9OIE9G IGNsYXVzZSBmb3IgVVBEQVRFL0RFTEVURSAqLworCU5vZGUJICAgKmZvclBvcnRpb25PZjsKIAkv KiBSVEkgb2YgdGhlIEVYQ0xVREVEIHBzZXVkbyByZWxhdGlvbiAqLwogCUluZGV4CQlleGNsUmVs UlRJOwogCS8qIHRsaXN0IG9mIHRoZSBFWENMVURFRCBwc2V1ZG8gcmVsYXRpb24gKi8KZGlmZiAt LWdpdCBhL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oIGIvc3JjL2luY2x1ZGUvbm9kZXMv cHJpbW5vZGVzLmgKaW5kZXggMWI0NDM2ZjJmZjYuLmZiYmNkNzdkZDg0IDEwMDY0NAotLS0gYS9z cmMvaW5jbHVkZS9ub2Rlcy9wcmltbm9kZXMuaAorKysgYi9zcmMvaW5jbHVkZS9ub2Rlcy9wcmlt bm9kZXMuaApAQCAtMjM4NSw0ICsyMzg1LDMxIEBAIHR5cGVkZWYgc3RydWN0IE9uQ29uZmxpY3RF eHByCiAJTGlzdAkgICAqZXhjbFJlbFRsaXN0OwkvKiB0bGlzdCBvZiB0aGUgRVhDTFVERUQgcHNl dWRvIHJlbGF0aW9uICovCiB9IE9uQ29uZmxpY3RFeHByOwogCisvKi0tLS0tLS0tLS0KKyAqIEZv clBvcnRpb25PZkV4cHIgLSByZXByZXNlbnRzIGEgRk9SIFBPUlRJT04gT0YgLi4uIGV4cHJlc3Np b24KKyAqCisgKiBXZSBzZXQgdXAgYW4gZXhwcmVzc2lvbiB0byBtYWtlIGEgcmFuZ2UgZnJvbSB0 aGUgRlJPTS9UTyBib3VuZHMsCisgKiBzbyB0aGF0IHdlIGNhbiB1c2UgcmFuZ2Ugb3BlcmF0b3Jz IHdpdGggaXQuCisgKgorICogVGhlbiB3ZSBzZXQgdXAgYW4gb3ZlcmxhcHMgZXhwcmVzc2lvbiBi ZXR3ZWVuIHRoYXQgYW5kIHRoZSByYW5nZSBjb2x1bW4sCisgKiBzbyB0aGF0IHdlIGNhbiBmaW5k IHRoZSByb3dzIHdlIG5lZWQgdG8gdXBkYXRlL2RlbGV0ZS4KKyAqCisgKiBJbiB0aGUgZXhlY3V0 b3Igd2UnbGwgYWxzbyBidWlsZCBhbiBpbnRlcnNlY3QgZXhwcmVzc2lvbiBiZXR3ZWVuIHRoZQor ICogdGFyZ2V0ZWQgcmFuZ2UgYW5kIHRoZSByYW5nZSBjb2x1bW4sIHNvIHRoYXQgd2UgY2FuIHVw ZGF0ZSB0aGUgc3RhcnQvZW5kCisgKiBib3VuZHMgb2YgdGhlIFVQREFURSdkIHJlY29yZC4KKyAq LS0tLS0tLS0tLQorICovCit0eXBlZGVmIHN0cnVjdCBGb3JQb3J0aW9uT2ZFeHByCit7CisJTm9k ZVRhZwkJdHlwZTsKKwlWYXIJCSAgICpyYW5nZVZhcjsJCS8qIFJhbmdlIGNvbHVtbiAqLworCWNo YXIJICAgKnJhbmdlX25hbWU7CQkvKiBSYW5nZSBuYW1lICovCisJTm9kZQkgICAqdGFyZ2V0UmFu Z2U7CS8qIEZPUiBQT1JUSU9OIE9GIGJvdW5kcyBhcyBhIHJhbmdlICovCisJT2lkCQkJcmFuZ2VU eXBlOwkJLyogdHlwZSBvZiB0YXJnZXRSYW5nZSAqLworCU5vZGUJICAgKm92ZXJsYXBzRXhwcjsJ LyogcmFuZ2UgJiYgdGFyZ2V0UmFuZ2UgKi8KKwlMaXN0CSAgICpyYW5nZVRhcmdldExpc3Q7CS8q IExpc3Qgb2YgVGFyZ2V0RW50cnlzIHRvIHNldCB0aGUgdGltZQorCQkJCQkJCQkJICogY29sdW1u KHMpICovCisJT2lkCQkJd2l0aG91dFBvcnRpb25Qcm9jOyAvKiBTUkYgcHJvYyBmb3Igb2xkX3Jh bmdlIC0gdGFyZ2V0X3JhbmdlICovCit9IEZvclBvcnRpb25PZkV4cHI7CisKICNlbmRpZgkJCQkJ CQkvKiBQUklNTk9ERVNfSCAqLwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvb3B0aW1pemVyL3Bh dGhub2RlLmggYi9zcmMvaW5jbHVkZS9vcHRpbWl6ZXIvcGF0aG5vZGUuaAppbmRleCA5NTVlOTA1 Njg1OC4uYWMwZjY5MTc0M2YgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL29wdGltaXplci9wYXRo bm9kZS5oCisrKyBiL3NyYy9pbmNsdWRlL29wdGltaXplci9wYXRobm9kZS5oCkBAIC0yODYsNyAr Mjg2LDcgQEAgZXh0ZXJuIE1vZGlmeVRhYmxlUGF0aCAqY3JlYXRlX21vZGlmeXRhYmxlX3BhdGgo UGxhbm5lckluZm8gKnJvb3QsCiAJCQkJCQkJCQkJCQlMaXN0ICp3aXRoQ2hlY2tPcHRpb25MaXN0 cywgTGlzdCAqcmV0dXJuaW5nTGlzdHMsCiAJCQkJCQkJCQkJCQlMaXN0ICpyb3dNYXJrcywgT25D b25mbGljdEV4cHIgKm9uY29uZmxpY3QsCiAJCQkJCQkJCQkJCQlMaXN0ICptZXJnZUFjdGlvbkxp c3RzLCBMaXN0ICptZXJnZUpvaW5Db25kaXRpb25zLAotCQkJCQkJCQkJCQkJaW50IGVwcVBhcmFt KTsKKwkJCQkJCQkJCQkJCUZvclBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZiwgaW50IGVwcVBh cmFtKTsKIGV4dGVybiBMaW1pdFBhdGggKmNyZWF0ZV9saW1pdF9wYXRoKFBsYW5uZXJJbmZvICpy b290LCBSZWxPcHRJbmZvICpyZWwsCiAJCQkJCQkJCQlQYXRoICpzdWJwYXRoLAogCQkJCQkJCQkJ Tm9kZSAqbGltaXRPZmZzZXQsIE5vZGUgKmxpbWl0Q291bnQsCmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS9wYXJzZXIvYW5hbHl6ZS5oIGIvc3JjL2luY2x1ZGUvcGFyc2VyL2FuYWx5emUuaAppbmRl eCBmMjllZDAzYjQ3Ni4uNDYxNGJlMDUyZGMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3BhcnNl ci9hbmFseXplLmgKKysrIGIvc3JjL2luY2x1ZGUvcGFyc2VyL2FuYWx5emUuaApAQCAtNDMsNyAr NDMsOCBAQCBleHRlcm4gTGlzdCAqdHJhbnNmb3JtSW5zZXJ0Um93KFBhcnNlU3RhdGUgKnBzdGF0 ZSwgTGlzdCAqZXhwcmxpc3QsCiAJCQkJCQkJCUxpc3QgKnN0bXRjb2xzLCBMaXN0ICppY29sdW1u cywgTGlzdCAqYXR0cm5vcywKIAkJCQkJCQkJYm9vbCBzdHJpcF9pbmRpcmVjdGlvbik7CiBleHRl cm4gTGlzdCAqdHJhbnNmb3JtVXBkYXRlVGFyZ2V0TGlzdChQYXJzZVN0YXRlICpwc3RhdGUsCi0J CQkJCQkJCQkgICBMaXN0ICpvcmlnVGxpc3QpOworCQkJCQkJCQkJICAgTGlzdCAqb3JpZ1RsaXN0 LAorCQkJCQkJCQkJICAgRm9yUG9ydGlvbk9mRXhwciAqZm9yUG9ydGlvbk9mKTsKIGV4dGVybiB2 b2lkIHRyYW5zZm9ybVJldHVybmluZ0NsYXVzZShQYXJzZVN0YXRlICpwc3RhdGUsIFF1ZXJ5ICpx cnksCiAJCQkJCQkJCQkgUmV0dXJuaW5nQ2xhdXNlICpyZXR1cm5pbmdDbGF1c2UsCiAJCQkJCQkJ CQkgUGFyc2VFeHByS2luZCBleHByS2luZCk7CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wYXJz ZXIva3dsaXN0LmggYi9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgKaW5kZXggODQxODJlYWFh ZTIuLmE4ZGVmM2EzODZjIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgK KysrIGIvc3JjL2luY2x1ZGUvcGFyc2VyL2t3bGlzdC5oCkBAIC0zNDYsNiArMzQ2LDcgQEAgUEdf S0VZV09SRCgicGxhY2luZyIsIFBMQUNJTkcsIFJFU0VSVkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwp CiBQR19LRVlXT1JEKCJwbGFuIiwgUExBTiwgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVM KQogUEdfS0VZV09SRCgicGxhbnMiLCBQTEFOUywgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xB QkVMKQogUEdfS0VZV09SRCgicG9saWN5IiwgUE9MSUNZLCBVTlJFU0VSVkVEX0tFWVdPUkQsIEJB UkVfTEFCRUwpCitQR19LRVlXT1JEKCJwb3J0aW9uIiwgUE9SVElPTiwgVU5SRVNFUlZFRF9LRVlX T1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgicG9zaXRpb24iLCBQT1NJVElPTiwgQ09MX05B TUVfS0VZV09SRCwgQkFSRV9MQUJFTCkKIFBHX0tFWVdPUkQoInByZWNlZGluZyIsIFBSRUNFRElO RywgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgicHJlY2lzaW9u IiwgUFJFQ0lTSU9OLCBDT0xfTkFNRV9LRVlXT1JELCBBU19MQUJFTCkKZGlmZiAtLWdpdCBhL3Ny Yy9pbmNsdWRlL3BhcnNlci9wYXJzZV9ub2RlLmggYi9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2Vf bm9kZS5oCmluZGV4IGY3ZDA3Yzg0NTQyLi4zZTQ1N2Q5NjFmZSAxMDA2NDQKLS0tIGEvc3JjL2lu Y2x1ZGUvcGFyc2VyL3BhcnNlX25vZGUuaAorKysgYi9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2Vf bm9kZS5oCkBAIC01Niw2ICs1Niw3IEBAIHR5cGVkZWYgZW51bSBQYXJzZUV4cHJLaW5kCiAJRVhQ Ul9LSU5EX1VQREFURV9TT1VSQ0UsCS8qIFVQREFURSBhc3NpZ25tZW50IHNvdXJjZSBpdGVtICov CiAJRVhQUl9LSU5EX1VQREFURV9UQVJHRVQsCS8qIFVQREFURSBhc3NpZ25tZW50IHRhcmdldCBp dGVtICovCiAJRVhQUl9LSU5EX01FUkdFX1dIRU4sCQkvKiBNRVJHRSBXSEVOIFtOT1RdIE1BVENI RUQgY29uZGl0aW9uICovCisJRVhQUl9LSU5EX1VQREFURV9QT1JUSU9OLAkvKiBVUERBVEUgRk9S IFBPUlRJT04gT0YgaXRlbSAqLwogCUVYUFJfS0lORF9HUk9VUF9CWSwJCQkvKiBHUk9VUCBCWSAq LwogCUVYUFJfS0lORF9PUkRFUl9CWSwJCQkvKiBPUkRFUiBCWSAqLwogCUVYUFJfS0lORF9ESVNU SU5DVF9PTiwJCS8qIERJU1RJTkNUIE9OICovCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS91dGls cy9sc3lzY2FjaGUuaCBiL3NyYy9pbmNsdWRlL3V0aWxzL2xzeXNjYWNoZS5oCmluZGV4IDUwZmIx NDllOWFjLi41YjUwZWYyMzBhYiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvdXRpbHMvbHN5c2Nh Y2hlLmgKKysrIGIvc3JjL2luY2x1ZGUvdXRpbHMvbHN5c2NhY2hlLmgKQEAgLTE1MCw2ICsxNTAs NyBAQCBleHRlcm4gT2lkCWdldF9yZWxfcmVsYW0oT2lkIHJlbGlkKTsKIGV4dGVybiBPaWQJZ2V0 X3RyYW5zZm9ybV9mcm9tc3FsKE9pZCB0eXBpZCwgT2lkIGxhbmdpZCwgTGlzdCAqdHJmdHlwZXMp OwogZXh0ZXJuIE9pZAlnZXRfdHJhbnNmb3JtX3Rvc3FsKE9pZCB0eXBpZCwgT2lkIGxhbmdpZCwg TGlzdCAqdHJmdHlwZXMpOwogZXh0ZXJuIGJvb2wgZ2V0X3R5cGlzZGVmaW5lZChPaWQgdHlwaWQp OworZXh0ZXJuIGJvb2wgZ2V0X3R5cG5hbWVfYW5kX25hbWVzcGFjZShPaWQgdHlwaWQsIGNoYXIg Kip0eXBuYW1lLCBjaGFyICoqdHlwbmFtZXNwYWNlKTsKIGV4dGVybiBpbnQxNiBnZXRfdHlwbGVu KE9pZCB0eXBpZCk7CiBleHRlcm4gYm9vbCBnZXRfdHlwYnl2YWwoT2lkIHR5cGlkKTsKIGV4dGVy biB2b2lkIGdldF90eXBsZW5ieXZhbChPaWQgdHlwaWQsIGludDE2ICp0eXBsZW4sIGJvb2wgKnR5 cGJ5dmFsKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRp b25fb2Yub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjkyODhiNDIyNGY3Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5v dXQKQEAgLTAsMCArMSwxMjQ4IEBACistLSBUZXN0cyBmb3IgVVBEQVRFL0RFTEVURSBGT1IgUE9S VElPTiBPRgorU0VUIGRhdGVzdHlsZSBUTyBJU08sIFlNRDsKKy0tIFdvcmtzIG9uIG5vbi1QSyBj b2x1bW5zCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5n ZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQgTk9UIE5VTEwKKyk7CitJTlNF UlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUwor ICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMjAtMDEtMDEpJywgJ29uZScpOworVVBEQVRFIGZv cl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0w MS0xNScgVE8gJzIwMTktMDEtMDEnCisgIFNFVCBuYW1lID0gJ29uZV4xJzsKK0RFTEVURSBGUk9N IGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMS0xNScgVE8gJzIwMTktMDEtMjAnOworLS0gV2l0aCBhIHRhYmxlIGFsaWFzIHdpdGggQVMK K1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDItMDEnIFRPICcyMDE5LTAyLTAzJyBBUyB0CisgIFNFVCBuYW1lID0gJ29uZV4y JzsKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOS0wMi0wMycgVE8gJzIwMTktMDItMDQnIEFTIHQ7CistLSBXaXRoIGEg dGFibGUgYWxpYXMgd2l0aG91dCBBUworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMi0wNCcgVE8gJzIwMTktMDItMDUnIHQK KyAgU0VUIG5hbWUgPSAnb25lXjMnOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAyLTA1JyBUTyAnMjAxOS0wMi0w NicgdDsKKy0tIFVQREFURSB3aXRoIEZST00KK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0Cisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDMtMDEnIHRvICcyMDE5LTAzLTAy JworICBTRVQgbmFtZSA9ICdvbmVeNCcKKyAgRlJPTSAoU0VMRUNUICdbMSwyKSc6OmludDRyYW5n ZSkgQVMgdDIoaWQpCisgIFdIRVJFIGZvcl9wb3J0aW9uX29mX3Rlc3QuaWQgPSB0Mi5pZDsKKy0t IERFTEVURSB3aXRoIFVTSU5HCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDMtMDInIFRPICcyMDE5LTAzLTAzJwor ICBVU0lORyAoU0VMRUNUICdbMSwyKSc6OmludDRyYW5nZSkgQVMgdDIoaWQpCisgIFdIRVJFIGZv cl9wb3J0aW9uX29mX3Rlc3QuaWQgPSB0Mi5pZDsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgtMDEtMTUpIHwgb25lCisgWzEsMikgfCBbMjAx OC0wMS0xNSwyMDE5LTAxLTAxKSB8IG9uZV4xCisgWzEsMikgfCBbMjAxOS0wMS0wMSwyMDE5LTAx LTE1KSB8IG9uZQorIFsxLDIpIHwgWzIwMTktMDEtMjAsMjAxOS0wMi0wMSkgfCBvbmUKKyBbMSwy KSB8IFsyMDE5LTAyLTAxLDIwMTktMDItMDMpIHwgb25lXjIKKyBbMSwyKSB8IFsyMDE5LTAyLTA0 LDIwMTktMDItMDUpIHwgb25lXjMKKyBbMSwyKSB8IFsyMDE5LTAyLTA2LDIwMTktMDMtMDEpIHwg b25lCisgWzEsMikgfCBbMjAxOS0wMy0wMSwyMDE5LTAzLTAyKSB8IG9uZV40CisgWzEsMikgfCBb MjAxOS0wMy0wMywyMDIwLTAxLTAxKSB8IG9uZQorKDkgcm93cykKKworLS0gV29ya3Mgb24gbW9y ZSB0aGFuIG9uZSByYW5nZQorRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0OworQ1JFQVRF IFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkMV9h dCBkYXRlcmFuZ2UsCisgIHZhbGlkMl9hdCBkYXRlcmFuZ2UsCisgIG5hbWUgdGV4dCBOT1QgTlVM TAorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZDFfYXQsIHZh bGlkMl9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0w MyknLCAnWzIwMTUtMDEtMDEsMjAyNS0wMS0wMSknLCAnb25lJyk7CitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZDFfYXQgRlJPTSAnMjAxOC0wMS0xNScg VE8gTlVMTAorICBTRVQgbmFtZSA9ICdmb28nOworICBTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9u X29mX3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlkMV9hdCwgdmFsaWQyX2F0OworICBpZCAgIHwgICAg ICAgIHZhbGlkMV9hdCAgICAgICAgfCAgICAgICAgdmFsaWQyX2F0ICAgICAgICB8IG5hbWUgCist LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgtMDEtMTUpIHwgWzIwMTUtMDEtMDEs MjAyNS0wMS0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDE4LTAxLTE1LDIwMTgtMDItMDMpIHwgWzIw MTUtMDEtMDEsMjAyNS0wMS0wMSkgfCBmb28KKygyIHJvd3MpCisKK1VQREFURSBmb3JfcG9ydGlv bl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkMl9hdCBGUk9NICcyMDE4LTAxLTE1JyBU TyBOVUxMCisgIFNFVCBuYW1lID0gJ2Jhcic7CisgIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2YWxpZDJfYXQ7CisgIGlkICAgfCAgICAg ICAgdmFsaWQxX2F0ICAgICAgICB8ICAgICAgICB2YWxpZDJfYXQgICAgICAgIHwgbmFtZSAKKy0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLQorIFsxLDIpIHwgWzIwMTgtMDEtMDIsMjAxOC0wMS0xNSkgfCBbMjAxNS0wMS0wMSwy MDE4LTAxLTE1KSB8IG9uZQorIFsxLDIpIHwgWzIwMTgtMDEtMDIsMjAxOC0wMS0xNSkgfCBbMjAx OC0wMS0xNSwyMDI1LTAxLTAxKSB8IGJhcgorIFsxLDIpIHwgWzIwMTgtMDEtMTUsMjAxOC0wMi0w MykgfCBbMjAxNS0wMS0wMSwyMDE4LTAxLTE1KSB8IGZvbworIFsxLDIpIHwgWzIwMTgtMDEtMTUs MjAxOC0wMi0wMykgfCBbMjAxOC0wMS0xNSwyMDI1LTAxLTAxKSB8IGJhcgorKDQgcm93cykKKwor REVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZDFf YXQgRlJPTSAnMjAxOC0wMS0yMCcgVE8gTlVMTDsKKyAgU0VMRUNUICogRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZDFfYXQsIHZhbGlkMl9hdDsKKyAgaWQgICB8ICAg ICAgICB2YWxpZDFfYXQgICAgICAgIHwgICAgICAgIHZhbGlkMl9hdCAgICAgICAgfCBuYW1lIAor LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tCisgWzEsMikgfCBbMjAxOC0wMS0wMiwyMDE4LTAxLTE1KSB8IFsyMDE1LTAxLTAx LDIwMTgtMDEtMTUpIHwgb25lCisgWzEsMikgfCBbMjAxOC0wMS0wMiwyMDE4LTAxLTE1KSB8IFsy MDE4LTAxLTE1LDIwMjUtMDEtMDEpIHwgYmFyCisgWzEsMikgfCBbMjAxOC0wMS0xNSwyMDE4LTAx LTIwKSB8IFsyMDE1LTAxLTAxLDIwMTgtMDEtMTUpIHwgZm9vCisgWzEsMikgfCBbMjAxOC0wMS0x NSwyMDE4LTAxLTIwKSB8IFsyMDE4LTAxLTE1LDIwMjUtMDEtMDEpIHwgYmFyCisoNCByb3dzKQor CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk Ml9hdCBGUk9NICcyMDE4LTAxLTIwJyBUTyBOVUxMOworICBTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0 aW9uX29mX3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlkMV9hdCwgdmFsaWQyX2F0OworICBpZCAgIHwg ICAgICAgIHZhbGlkMV9hdCAgICAgICAgfCAgICAgICAgdmFsaWQyX2F0ICAgICAgICB8IG5hbWUg CistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgtMDEtMTUpIHwgWzIwMTUtMDEt MDEsMjAxOC0wMS0xNSkgfCBvbmUKKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgtMDEtMTUpIHwg WzIwMTgtMDEtMTUsMjAxOC0wMS0yMCkgfCBiYXIKKyBbMSwyKSB8IFsyMDE4LTAxLTE1LDIwMTgt MDEtMjApIHwgWzIwMTUtMDEtMDEsMjAxOC0wMS0xNSkgfCBmb28KKyBbMSwyKSB8IFsyMDE4LTAx LTE1LDIwMTgtMDEtMjApIHwgWzIwMTgtMDEtMTUsMjAxOC0wMS0yMCkgfCBiYXIKKyg0IHJvd3Mp CisKKy0tIFRlc3Qgd2l0aCBOVUxMcyBpbiB0aGUgc2NhbGFyL3JhbmdlIGtleSBjb2x1bW5zLgor LS0gVGhpcyB3b24ndCBoYXBwZW4gaWYgdGhlcmUgaXMgYSBQUklNQVJZIEtFWSBvciBVTklRVUUg Y29uc3RyYWludAorLS0gYnV0IEZPUiBQT1JUSU9OIE9GIHNob3VsZG4ndCByZXF1aXJlIHRoYXQu CitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CitDUkVBVEUgVU5MT0dHRUQgVEFCTEUg Zm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJh bmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChp ZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgTlVMTCwgJzEgbnVsbCcpLAor ICAoJ1sxLDIpJywgJygsKScsICcxIHVuYm91bmRlZCcpLAorICAoJ1sxLDIpJywgJ2VtcHR5Jywg JzEgZW1wdHknKSwKKyAgKE5VTEwsIE5VTEwsIE5VTEwpLAorICAoTlVMTCwgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMTktMDEtMDEnKSwgJ251bGwga2V5Jyk7CitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAor ICBTRVQgbmFtZSA9ICdOVUxMIHRvIE5VTEwnOworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9v Zl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAg ICAgICAgIHwgICAgIG5hbWUgICAgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tCisgWzEsMikgfCBlbXB0eSAgICAgICAgICAgICAgICAgICB8IDEgZW1w dHkKKyBbMSwyKSB8ICgsKSAgICAgICAgICAgICAgICAgICAgIHwgTlVMTCB0byBOVUxMCisgWzEs MikgfCAgICAgICAgICAgICAgICAgICAgICAgICB8IDEgbnVsbAorICAgICAgIHwgWzIwMTgtMDEt MDEsMjAxOS0wMS0wMSkgfCBOVUxMIHRvIE5VTEwKKyAgICAgICB8ICAgICAgICAgICAgICAgICAg ICAgICAgIHwgCisoNSByb3dzKQorCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7Cist LQorLS0gVVBEQVRFIHRlc3RzCistLQorQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Qg KAorICBpZCBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSBOT1QgTlVM TCwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5UIGZvcl9wb3J0aW9uX29mX3Br IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQg SU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAo J1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDItMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywg J1syMDE4LTAyLTAzLDIwMTgtMDMtMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAz LTAzLDIwMTgtMDQtMDQpJywgJ29uZScpLAorICAoJ1syLDMpJywgJ1syMDE4LTAxLTAxLDIwMTgt MDEtMDUpJywgJ3R3bycpLAorICAoJ1szLDQpJywgJ1syMDE4LTAxLTAxLCknLCAndGhyZWUnKSwK KyAgKCdbNCw1KScsICcoLDIwMTgtMDQtMDEpJywgJ2ZvdXInKSwKKyAgKCdbNSw2KScsICcoLCkn LCAnZml2ZScpCisgIDsKK1xzZXQgUVVJRVQgZmFsc2UKKy0tIFVwZGF0aW5nIHdpdGggYSBtaXNz aW5nIGNvbHVtbiBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJ T04gT0YgaW52YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0g J2ZvbycKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworRVJST1I6ICBjb2x1bW4gb3IgcGVyaW9kICJp bnZhbGlkX2F0IiBvZiByZWxhdGlvbiAiZm9yX3BvcnRpb25fb2ZfdGVzdCIgZG9lcyBub3QgZXhp c3QKK0xJTkUgMjogICBGT1IgUE9SVElPTiBPRiBpbnZhbGlkX2F0IEZST00gJzIwMTgtMDYtMDEn IFRPIE5VTEwKKyAgICAgICAgICAgICAgICAgICAgICAgICBeCistLSBVcGRhdGluZyB0aGUgcmFu Z2UgZmFpbHMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMTgtMDYtMDEnIFRPIE5VTEwKKyAgU0VUIHZhbGlkX2F0ID0gJ1sxOTkw LTAxLTAxLDE5OTktMDEtMDEpJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CitFUlJPUjogIGNhbid0 IGRpcmVjdGx5IGFzc2lnbiB0byAidmFsaWRfYXQiIGluIGEgRk9SIFBPUlRJT04gT0YgdXBkYXRl CitMSU5FIDM6ICAgU0VUIHZhbGlkX2F0ID0gJ1sxOTkwLTAxLTAxLDE5OTktMDEtMDEpJworICAg ICAgICAgICAgICBeCistLSBUaGUgd3JvbmcgdHlwZSBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAxIFRPIDQKKyAgU0VUIG5h bWUgPSAnbm9wZScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworRVJST1I6ICBmdW5jdGlvbiBwZ19j YXRhbG9nLmRhdGVyYW5nZShpbnRlZ2VyLCBpbnRlZ2VyKSBkb2VzIG5vdCBleGlzdAorTElORSAy OiAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gMSBUTyA0CisgICAgICAgICAgICAgICAg ICAgICAgICAgXgorREVUQUlMOiAgTm8gZnVuY3Rpb24gb2YgdGhhdCBuYW1lIGFjY2VwdHMgdGhl IGdpdmVuIGFyZ3VtZW50IHR5cGVzLgorSElOVDogIFlvdSBtaWdodCBuZWVkIHRvIGFkZCBleHBs aWNpdCB0eXBlIGNhc3RzLgorLS0gVXBkYXRpbmcgd2l0aCB0aW1lc3RhbXBzIHJldmVyc2VkIGZh aWxzCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE4LTA2LTAxJyBUTyAnMjAxOC0wMS0wMScKKyAgU0VUIG5hbWUgPSAndGhyZWVe MScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworRVJST1I6ICByYW5nZSBsb3dlciBib3VuZCBtdXN0 IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byByYW5nZSB1cHBlciBib3VuZAorLS0gVXBkYXRpbmcg d2l0aCBhIHN1YnF1ZXJ5IGZhaWxzCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIChTRUxFQ1QgJzIwMTgtMDEtMDEnKSBUTyAnMjAxOC0w Ni0wMScKKyAgU0VUIG5hbWUgPSAnbm9wZScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworRVJST1I6 ICBjYW5ub3QgdXNlIHN1YnF1ZXJ5IGluIEZPUiBQT1JUSU9OIE9GIGV4cHJlc3Npb24KK0xJTkUg MjogICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIChTRUxFQ1QgJzIwMTgtMDEtMDEnKSBU TyAnMjAxLi4uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCistLSBV cGRhdGluZyB3aXRoIGEgY29sdW1uIGZhaWxzCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIGxvd2VyKHZhbGlkX2F0KSBUTyBOVUxMCisg IFNFVCBuYW1lID0gJ25vcGUnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK0VSUk9SOiAgY2Fubm90 IHVzZSBjb2x1bW4gcmVmZXJlbmNlIGluIEZPUiBQT1JUSU9OIE9GIGV4cHJlc3Npb24KK0xJTkUg MjogICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIGxvd2VyKHZhbGlkX2F0KSBUTyBOVUxM CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCistLSBVcGRh dGluZyB3aXRoIHRpbWVzdGFtcHMgZXF1YWwgZG9lcyBub3RoaW5nCitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA0LTAxJyBU TyAnMjAxOC0wNC0wMScKKyAgU0VUIG5hbWUgPSAndGhyZWVeMCcKKyAgV0hFUkUgaWQgPSAnWzMs NCknOworVVBEQVRFIDAKKy0tIFVwZGF0aW5nIGEgZmluaXRlL29wZW4gcG9ydGlvbiB3aXRoIGEg ZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0g J3RocmVlXjEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK1VQREFURSAyCistLSBVcGRhdGluZyBh IGZpbml0ZS9vcGVuIHBvcnRpb24gd2l0aCBhbiBvcGVuL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBU TyAnMjAxOC0wMy0wMScKKyAgU0VUIG5hbWUgPSAndGhyZWVeMicKKyAgV0hFUkUgaWQgPSAnWzMs NCknOworVVBEQVRFIDIKKy0tIFVwZGF0aW5nIGFuIG9wZW4vZmluaXRlIHBvcnRpb24gd2l0aCBh biBvcGVuL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMi0wMScKKyAgU0VUIG5hbWUg PSAnZm91cl4xJworICBXSEVSRSBpZCA9ICdbNCw1KSc7CitVUERBVEUgMgorLS0gVXBkYXRpbmcg YW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGEgZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUg Zm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE3 LTAxLTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2ZvdXJeMicKKyAgV0hFUkUgaWQgPSAnWzQs NSknOworVVBEQVRFIDMKKy0tIFVwZGF0aW5nIGEgZmluaXRlL2Zpbml0ZSBwb3J0aW9uIHdpdGgg YW4gZXhhY3QgZml0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE3LTAxLTAxJyBUTyAnMjAxOC0wMi0wMScKKyAgU0VUIG5hbWUg PSAnZm91cl4zJworICBXSEVSRSBpZCA9ICdbNCw1KSc7CitVUERBVEUgMQorLS0gVXBkYXRpbmcg YW4gZW5jbG9zZWQgc3BhbgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSBOVUxMIFRPIE5VTEwKKyAgU0VUIG5hbWUgPSAndHdvXjInCisg IFdIRVJFIGlkID0gJ1syLDMpJzsKK1VQREFURSAxCistLSBVcGRhdGluZyBhbiBvcGVuL29wZW4g cG9ydGlvbiB3aXRoIGEgZmluaXRlL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBmb3JfcG9ydGlvbl9v Zl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDEnIFRPICcy MDE5LTAxLTAxJworICBTRVQgbmFtZSA9ICdmaXZlXjEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsK K1VQREFURSAzCistLSBVcGRhdGluZyBhbiBlbmNsb3NlZCBzcGFuIHdpdGggc2VwYXJhdGUgcHJv dHJ1ZGluZyBzcGFucworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxNy0wMS0wMScgVE8gJzIwMjAtMDEtMDEnCisgIFNFVCBuYW1l ID0gJ2ZpdmVeMicKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworVVBEQVRFIDUKKy0tIFVwZGF0aW5n IG11bHRpcGxlIGVuY2xvc2VkIHNwYW5zCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdv bmVeMicKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworVVBEQVRFIDMKKy0tIFVwZGF0aW5nIHdpdGgg YSBkaXJlY3QgdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCAoZGF0ZXJhbmdlKCcyMDE4LTAzLTEwJywgJzIwMTgtMDMtMTcnKSkKKyAg U0VUIG5hbWUgPSAnb25lXjMnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSAzCistLSBV cGRhdGluZyB0aGUgbm9uLXJhbmdlIHBhcnQgb2YgdGhlIFBLOgorVVBEQVRFIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMi0xNScgVE8g TlVMTAorICBTRVQgaWQgPSAnWzYsNyknCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSA1 CistLSBVUERBVEUgd2l0aCBubyBXSEVSRSBjbGF1c2UKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90 ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMzAtMDEtMDEnIFRPIE5VTEwK KyAgU0VUIG5hbWUgPSBuYW1lIHx8ICcqJzsKK1VQREFURSA0CitTRUxFQ1QgKiBGUk9NIGZvcl9w b3J0aW9uX29mX3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCAgIG5hbWUgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tCisgWzEsMikgfCBbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKSB8IG9uZV4y CisgWzEsMikgfCBbMjAxOC0wMi0wMywyMDE4LTAyLTE1KSB8IG9uZV4yCisgWzIsMykgfCBbMjAx OC0wMS0wMSwyMDE4LTAxLTA1KSB8IHR3b14yCisgWzMsNCkgfCBbMjAxOC0wMS0wMSwyMDE4LTAz LTAxKSB8IHRocmVlXjIKKyBbMyw0KSB8IFsyMDE4LTAzLTAxLDIwMTgtMDYtMDEpIHwgdGhyZWUK KyBbMyw0KSB8IFsyMDE4LTA2LTAxLDIwMzAtMDEtMDEpIHwgdGhyZWVeMQorIFszLDQpIHwgWzIw MzAtMDEtMDEsKSAgICAgICAgICAgfCB0aHJlZV4xKgorIFs0LDUpIHwgKCwyMDE3LTAxLTAxKSAg ICAgICAgICAgfCBmb3VyXjEKKyBbNCw1KSB8IFsyMDE3LTAxLTAxLDIwMTgtMDItMDEpIHwgZm91 cl4zCisgWzQsNSkgfCBbMjAxOC0wMi0wMSwyMDE4LTA0LTAxKSB8IGZvdXJeMgorIFs1LDYpIHwg KCwyMDE3LTAxLTAxKSAgICAgICAgICAgfCBmaXZlCisgWzUsNikgfCBbMjAxNy0wMS0wMSwyMDE4 LTAxLTAxKSB8IGZpdmVeMgorIFs1LDYpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBmaXZl XjIKKyBbNSw2KSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgZml2ZV4yCisgWzUsNikgfCBb MjAyMC0wMS0wMSwyMDMwLTAxLTAxKSB8IGZpdmUKKyBbNSw2KSB8IFsyMDMwLTAxLTAxLCkgICAg ICAgICAgIHwgZml2ZSoKKyBbNiw3KSB8IFsyMDE4LTAyLTE1LDIwMTgtMDMtMDMpIHwgb25lXjIK KyBbNiw3KSB8IFsyMDE4LTAzLTAzLDIwMTgtMDMtMTApIHwgb25lXjIKKyBbNiw3KSB8IFsyMDE4 LTAzLTEwLDIwMTgtMDMtMTcpIHwgb25lXjMKKyBbNiw3KSB8IFsyMDE4LTAzLTE3LDIwMTgtMDQt MDQpIHwgb25lXjIKKygyMCByb3dzKQorCitcc2V0IFFVSUVUIHRydWUKKy0tIFVwZGF0aW5nIHdp dGggYSBzaGlmdC9yZWR1Y2UgY29uZmxpY3QKKy0tIChyZXF1aXJlcyBhIHRzcmFuZ2UgY29sdW1u KQorQ1JFQVRFIFVOTE9HR0VEIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50 NHJhbmdlLAorICB2YWxpZF9hdCB0c3JhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5U TyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdb MSwyKScsICdbMjAwMC0wMS0wMSwyMDIwLTAxLTAxKScsICdvbmUnKTsKKy0tIHVwZGF0ZXMgWzIw MTEtMDMtMDEgMDE6MDI6MDAsIDIwMTItMDEtMDEpIChub3RlIDIgbWludXRlcykKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0MgorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdAorICAgIEZST00g JzIwMTEtMDMtMDEnOjp0aW1lc3RhbXAgKyBJTlRFUlZBTCAnMTowMjowMycgSE9VUiBUTyBNSU5V VEUKKyAgICBUTyAnMjAxMi0wMS0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKy0tIFRPIGlzIHVzZWQgZm9yIHRoZSBib3VuZCBidXQgbm90IHRoZSBJTlRF UlZBTDoKKy0tIHN5bnRheCBlcnJvcgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0CisgICAgRlJPTSAnMjAxMy0wMy0wMSc6OnRpbWVzdGFtcCAr IElOVEVSVkFMICcxOjAyOjAzJyBIT1VSCisgICAgVE8gJzIwMTQtMDEtMDEnCisgIFNFVCBuYW1l ID0gJ29uZV4yJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIHN5bnRheCBlcnJvciBh dCBvciBuZWFyICInMjAxNC0wMS0wMSciCitMSU5FIDQ6ICAgICBUTyAnMjAxNC0wMS0wMScKKyAg ICAgICAgICAgICAgIF4KKy0tIGFkZGluZyBwYXJlbnMgZml4ZXMgaXQKKy0tIHVwZGF0ZXMgWzIw MTUtMDMtMDEgMDE6MDA6MDAsIDIwMTYtMDEtMDEpIChubyBtaW51dGVzKQorVVBEQVRFIGZvcl9w b3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0CisgICAgRlJPTSAoJzIw MTUtMDMtMDEnOjp0aW1lc3RhbXAgKyBJTlRFUlZBTCAnMTowMjowMycgSE9VUikKKyAgICBUTyAn MjAxNi0wMS0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjMnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK K1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICBpZCAgIHwgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAg IHwgbmFtZSAgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IFsiMjAwMC0wMS0wMSAwMDowMDowMCIsIjIwMTEt MDMtMDEgMDE6MDI6MDAiKSB8IG9uZQorIFsxLDIpIHwgWyIyMDExLTAzLTAxIDAxOjAyOjAwIiwi MjAxMi0wMS0wMSAwMDowMDowMCIpIHwgb25lXjEKKyBbMSwyKSB8IFsiMjAxMi0wMS0wMSAwMDow MDowMCIsIjIwMTUtMDMtMDEgMDE6MDA6MDAiKSB8IG9uZQorIFsxLDIpIHwgWyIyMDE1LTAzLTAx IDAxOjAwOjAwIiwiMjAxNi0wMS0wMSAwMDowMDowMCIpIHwgb25lXjMKKyBbMSwyKSB8IFsiMjAx Ni0wMS0wMSAwMDowMDowMCIsIjIwMjAtMDEtMDEgMDA6MDA6MDAiKSB8IG9uZQorKDUgcm93cykK KworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0MjsKKy0tIFVQREFURSBGT1IgUE9SVElP TiBPRiBpbiBhIENURToKKy0tIFZpc2libGUgdG8gU0VMRUNUOgorSU5TRVJUIElOVE8gZm9yX3Bv cnRpb25fb2ZfdGVzdCAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMTAsMTEpJywg J1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ3RlbicpOworV0lUSCB1cGRhdGVfYXByIEFTICgK KyAgVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE4LTA0LTAxJyBUTyAnMjAxOC0wNS0wMScKKyAgICBTRVQgbmFtZSA9ICdBcHIg MjAxOCcKKyAgICBXSEVSRSBpZCA9ICdbMTAsMTEpJworICAgIFJFVFVSTklORyBpZCwgdmFsaWRf YXQsIG5hbWUKKykKK1NFTEVDVCAqCisgIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBBUyB0LCB1 cGRhdGVfYXByCisgIFdIRVJFIHQuaWQgPSB1cGRhdGVfYXByLmlkOworICAgaWQgICAgfCAgICAg ICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgfCAgIGlkICAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCAgIG5hbWUgICAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgWzEw LDExKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgdGVuICB8IFsxMCwxMSkgfCBbMjAxOC0w NC0wMSwyMDE4LTA1LTAxKSB8IEFwciAyMDE4CisoMSByb3cpCisKK1NFTEVDVCAqIEZST00gZm9y X3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCA9ICdbMTAsMTEpJzsKKyAgIGlkICAgIHwgICAgICAg IHZhbGlkX2F0ICAgICAgICAgfCAgIG5hbWUgICAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0KKyBbMTAsMTEpIHwgWzIwMTgtMDQtMDEsMjAxOC0wNS0wMSkg fCBBcHIgMjAxOAorIFsxMCwxMSkgfCBbMjAxOC0wMS0wMSwyMDE4LTA0LTAxKSB8IHRlbgorIFsx MCwxMSkgfCBbMjAxOC0wNS0wMSwyMDIwLTAxLTAxKSB8IHRlbgorKDMgcm93cykKKworLS0gTm90 IHZpc2libGUgdG8gVVBEQVRFOgorLS0gVHVwbGVzIHVwZGF0ZWQvaW5zZXJ0ZWQgd2l0aGluIHRo ZSBDVEUgYXJlIG5vdCB2aXNpYmxlIHRvIHRoZSBtYWluIHF1ZXJ5IHlldCwKKy0tIGJ1dCBuZWl0 aGVyIGFyZSBvbGQgdHVwbGVzIHRoZSBDVEUgY2hhbmdlZDoKK0lOU0VSVCBJTlRPIGZvcl9wb3J0 aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzExLDEyKScsICdb MjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICdlbGV2ZW4nKTsKK1dJVEggdXBkYXRlX2FwciBBUyAo CisgIFVQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAxOC0wNC0wMScgVE8gJzIwMTgtMDUtMDEnCisgICAgU0VUIG5hbWUgPSAnQXBy IDIwMTgnCisgICAgV0hFUkUgaWQgPSAnWzExLDEyKScKKyAgICBSRVRVUk5JTkcgaWQsIHZhbGlk X2F0LCBuYW1lCispCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE4LTA1LTAxJyBUTyAnMjAxOC0wNi0wMScKKyAgQVMgdAorICBT RVQgbmFtZSA9ICdNYXkgMjAxOCcKKyAgRlJPTSB1cGRhdGVfYXByIEFTIGoKKyAgV0hFUkUgdC5p ZCA9IGouaWQ7CitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgV0hFUkUgaWQgPSAn WzExLDEyKSc7CisgICBpZCAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgICBuYW1lICAg CistLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgWzExLDEy KSB8IFsyMDE4LTA0LTAxLDIwMTgtMDUtMDEpIHwgQXByIDIwMTgKKyBbMTEsMTIpIHwgWzIwMTgt MDEtMDEsMjAxOC0wNC0wMSkgfCBlbGV2ZW4KKyBbMTEsMTIpIHwgWzIwMTgtMDUtMDEsMjAyMC0w MS0wMSkgfCBlbGV2ZW4KKygzIHJvd3MpCisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QgV0hFUkUgaWQgSU4gKCdbMTAsMTEpJywgJ1sxMSwxMiknKTsKKy0tIFVQREFURSBGT1IgUE9S VElPTiBPRiBpbiBhIFBML3BnU1FMIGZ1bmN0aW9uCitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9v Zl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxMCwxMSknLCAnWzIwMTgt MDEtMDEsMjAyMC0wMS0wMSknLCAndGVuJyk7CitDUkVBVEUgRlVOQ1RJT04gZnBvX3VwZGF0ZShf aWQgaW50NHJhbmdlLCBfdGFyZ2V0X2Zyb20gZGF0ZSwgX3RhcmdldF90aWwgZGF0ZSkKK1JFVFVS TlMgdm9pZCBMQU5HVUFHRSBwbHBnc3FsIEFTCiskJAorQkVHSU4KKyAgVVBEQVRFIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICQyIFRPICQzCisg ICAgU0VUIG5hbWUgPSBjb25jYXQoX3RhcmdldF9mcm9tOjp0ZXh0LCAnIHRvICcsIF90YXJnZXRf dGlsOjp0ZXh0KQorICAgIFdIRVJFIGlkID0gJDE7CitFTkQ7CiskJDsKK1NFTEVDVCBmcG9fdXBk YXRlKCdbMTAsMTEpJywgJzIwMTUtMDEtMDEnLCAnMjAxOS0wMS0wMScpOworIGZwb191cGRhdGUg CistLS0tLS0tLS0tLS0KKyAKKygxIHJvdykKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9v Zl90ZXN0IFdIRVJFIGlkID0gJ1sxMCwxMSknOworICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8ICAgICAgICAgICBuYW1lICAgICAgICAgICAKKy0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgWzEwLDExKSB8IFsy MDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgMjAxNS0wMS0wMSB0byAyMDE5LTAxLTAxCisgWzEwLDEx KSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgdGVuCisoMiByb3dzKQorCitEUk9QIFRBQkxF IGZvcl9wb3J0aW9uX29mX3Rlc3Q7CistLQorLS0gREVMRVRFIHRlc3RzCistLQorQ1JFQVRFIFRB QkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisgIHZh bGlkX2F0IGRhdGVyYW5nZSBOT1QgTlVMTCwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05T VFJBSU5UIGZvcl9wb3J0aW9uX29mX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFs aWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDItMDMp JywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAyLTAzLDIwMTgtMDMtMDMpJywgJ29uZScp LAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJywgJ29uZScpLAorICAoJ1sy LDMpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDEtMDUpJywgJ3R3bycpLAorICAoJ1szLDQpJywgJ1sy MDE4LTAxLTAxLCknLCAndGhyZWUnKSwKKyAgKCdbNCw1KScsICcoLDIwMTgtMDQtMDEpJywgJ2Zv dXInKSwKKyAgKCdbNSw2KScsICcoLCknLCAnZml2ZScpLAorICAoJ1s2LDcpJywgJ1syMDE4LTAx LTAxLCknLCAnc2l4JyksCisgICgnWzcsOCknLCAnKCwyMDE4LTA0LTAxKScsICdzZXZlbicpLAor ICAoJ1s4LDkpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDItMDMpJywgJ2VpZ2h0JyksCisgICgnWzgs OSknLCAnWzIwMTgtMDItMDMsMjAxOC0wMy0wMyknLCAnZWlnaHQnKSwKKyAgKCdbOCw5KScsICdb MjAxOC0wMy0wMywyMDE4LTA0LTA0KScsICdlaWdodCcpCisgIDsKK1xzZXQgUVVJRVQgZmFsc2UK Ky0tIERlbGV0aW5nIHdpdGggYSBtaXNzaW5nIGNvbHVtbiBmYWlscworREVMRVRFIEZST00gZm9y X3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiBpbnZhbGlkX2F0IEZST00gJzIwMTgt MDYtMDEnIFRPIE5VTEwKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworRVJST1I6ICBjb2x1bW4gb3Ig cGVyaW9kICJpbnZhbGlkX2F0IiBvZiByZWxhdGlvbiAiZm9yX3BvcnRpb25fb2ZfdGVzdCIgZG9l cyBub3QgZXhpc3QKK0xJTkUgMjogICBGT1IgUE9SVElPTiBPRiBpbnZhbGlkX2F0IEZST00gJzIw MTgtMDYtMDEnIFRPIE5VTEwKKyAgICAgICAgICAgICAgICAgICAgICAgICBeCistLSBUaGUgd3Jv bmcgdHlwZSBmYWlscworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NIDEgVE8gNAorICBXSEVSRSBpZCA9ICdbMyw0KSc7CitFUlJP UjogIGZ1bmN0aW9uIHBnX2NhdGFsb2cuZGF0ZXJhbmdlKGludGVnZXIsIGludGVnZXIpIGRvZXMg bm90IGV4aXN0CitMSU5FIDI6ICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAxIFRPIDQK KyAgICAgICAgICAgICAgICAgICAgICAgICBeCitERVRBSUw6ICBObyBmdW5jdGlvbiBvZiB0aGF0 IG5hbWUgYWNjZXB0cyB0aGUgZ2l2ZW4gYXJndW1lbnQgdHlwZXMuCitISU5UOiAgWW91IG1pZ2h0 IG5lZWQgdG8gYWRkIGV4cGxpY2l0IHR5cGUgY2FzdHMuCistLSBEZWxldGluZyB3aXRoIHRpbWVz dGFtcHMgcmV2ZXJzZWQgZmFpbHMKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNi0wMScgVE8gJzIwMTgtMDEtMDEn CisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK0VSUk9SOiAgcmFuZ2UgbG93ZXIgYm91bmQgbXVzdCBi ZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gcmFuZ2UgdXBwZXIgYm91bmQKKy0tIERlbGV0aW5nIHdp dGggYSBzdWJxdWVyeSBmYWlscworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIChTRUxFQ1QgJzIwMTgtMDEtMDEnKSBUTyAnMjAx OC0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworRVJST1I6ICBjYW5ub3QgdXNlIHN1YnF1 ZXJ5IGluIEZPUiBQT1JUSU9OIE9GIGV4cHJlc3Npb24KK0xJTkUgMjogICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NIChTRUxFQ1QgJzIwMTgtMDEtMDEnKSBUTyAnMjAxLi4uCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCistLSBEZWxldGluZyB3aXRoIGEgY29s dW1uIGZhaWxzCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gbG93ZXIodmFsaWRfYXQpIFRPIE5VTEwKKyAgV0hFUkUgaWQgPSAn WzMsNCknOworRVJST1I6ICBjYW5ub3QgdXNlIGNvbHVtbiByZWZlcmVuY2UgaW4gRk9SIFBPUlRJ T04gT0YgZXhwcmVzc2lvbgorTElORSAyOiAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g bG93ZXIodmFsaWRfYXQpIFRPIE5VTEwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KKy0tIERlbGV0aW5nIHdpdGggdGltZXN0YW1wcyBlcXVhbCBkb2VzIG5v dGhpbmcKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOC0wNC0wMScgVE8gJzIwMTgtMDQtMDEnCisgIFdIRVJFIGlkID0g J1szLDQpJzsKK0RFTEVURSAwCistLSBEZWxldGluZyBhIGZpbml0ZS9vcGVuIHBvcnRpb24gd2l0 aCBhIGZpbml0ZS9vcGVuIHRhcmdldAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFdI RVJFIGlkID0gJ1szLDQpJzsKK0RFTEVURSAyCistLSBEZWxldGluZyBhIGZpbml0ZS9vcGVuIHBv cnRpb24gd2l0aCBhbiBvcGVuL2Zpbml0ZSB0YXJnZXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAz LTAxJworICBXSEVSRSBpZCA9ICdbNiw3KSc7CitERUxFVEUgMgorLS0gRGVsZXRpbmcgYW4gb3Bl bi9maW5pdGUgcG9ydGlvbiB3aXRoIGFuIG9wZW4vZmluaXRlIHRhcmdldAorREVMRVRFIEZST00g Zm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwg VE8gJzIwMTgtMDItMDEnCisgIFdIRVJFIGlkID0gJ1s0LDUpJzsKK0RFTEVURSAyCistLSBEZWxl dGluZyBhbiBvcGVuL2Zpbml0ZSBwb3J0aW9uIHdpdGggYSBmaW5pdGUvb3BlbiB0YXJnZXQKK0RF TEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAxNy0wMS0wMScgVE8gTlVMTAorICBXSEVSRSBpZCA9ICdbNyw4KSc7CitERUxFVEUg MgorLS0gRGVsZXRpbmcgYSBmaW5pdGUvZmluaXRlIHBvcnRpb24gd2l0aCBhbiBleGFjdCBmaXQK K0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAxOC0wMi0wMScgVE8gJzIwMTgtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1s0LDUp JzsKK0RFTEVURSAxCistLSBEZWxldGluZyBhbiBlbmNsb3NlZCBzcGFuCitERUxFVEUgRlJPTSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBU TyBOVUxMCisgIFdIRVJFIGlkID0gJ1syLDMpJzsKK0RFTEVURSAxCistLSBEZWxldGluZyBhbiBv cGVuL29wZW4gcG9ydGlvbiB3aXRoIGEgZmluaXRlL2Zpbml0ZSB0YXJnZXQKK0RFTEVURSBGUk9N IGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OC0wMS0wMScgVE8gJzIwMTktMDEtMDEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0RFTEVURSAz CistLSBEZWxldGluZyBhbiBlbmNsb3NlZCBzcGFuIHdpdGggc2VwYXJhdGUgcHJvdHJ1ZGluZyBz cGFucworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE4LTAyLTAzJyBUTyAnMjAxOC0wMy0wMycKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworREVMRVRFIDEKKy0tIERlbGV0aW5nIG11bHRpcGxlIGVuY2xvc2VkIHNwYW5zCitE RUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gTlVMTCBUTyBOVUxMCisgIFdIRVJFIGlkID0gJ1s4LDkpJzsKK0RFTEVURSAzCistLSBE ZWxldGluZyB3aXRoIGEgZGlyZWN0IHRhcmdldAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZXJhbmdlKCcyMDE4LTAzLTEwJywg JzIwMTgtMDMtMTcnKSkKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworREVMRVRFIDMKKy0tIERFTEVU RSB3aXRoIG5vIFdIRVJFIGNsYXVzZQorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDMwLTAxLTAxJyBUTyBOVUxMOworREVM RVRFIDQKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgIAorLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAy LDIwMTgtMDItMDMpIHwgb25lCisgWzEsMikgfCBbMjAxOC0wMy0wMywyMDE4LTAzLTEwKSB8IG9u ZQorIFsxLDIpIHwgWzIwMTgtMDMtMTcsMjAxOC0wNC0wNCkgfCBvbmUKKyBbMyw0KSB8IFsyMDE4 LTAxLTAxLDIwMTgtMDYtMDEpIHwgdGhyZWUKKyBbNSw2KSB8ICgsMjAxOC0wMS0wMSkgICAgICAg ICAgIHwgZml2ZQorIFs1LDYpIHwgWzIwMTktMDEtMDEsMjAzMC0wMS0wMSkgfCBmaXZlCisgWzYs NykgfCBbMjAxOC0wMy0wMSwyMDMwLTAxLTAxKSB8IHNpeAorIFs3LDgpIHwgKCwyMDE3LTAxLTAx KSAgICAgICAgICAgfCBzZXZlbgorKDggcm93cykKKworXHNldCBRVUlFVCB0cnVlCistLSBVUERB VEUgLi4uIFJFVFVSTklORyByZXR1cm5zIG9ubHkgdGhlIHVwZGF0ZWQgdmFsdWVzIChub3QgdGhl IGluc2VydGVkIHNpZGUgdmFsdWVzKQorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMi0wMScgVE8gJzIwMTgtMDItMTUnCisg IFNFVCBuYW1lID0gJ3RocmVlXjMnCisgIFdIRVJFIGlkID0gJ1szLDQpJworICBSRVRVUk5JTkcg KjsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgIG5hbWUgICAKKy0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAyLTAx LDIwMTgtMDItMTUpIHwgdGhyZWVeMworKDEgcm93KQorCistLSBERUxFVEUgLi4uIFJFVFVSTklO RyByZXR1cm5zIHRoZSBkZWxldGVkIHZhbHVlcyAocmVnYXJkbGVzcyBvZiBib3VuZHMpCitERUxF VEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTgtMDItMDInIFRPICcyMDE4LTAyLTAzJworICBXSEVSRSBpZCA9ICdbMyw0KScKKyAg UkVUVVJOSU5HICo7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8ICBuYW1lICAg CistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tCisgWzMsNCkgfCBb MjAxOC0wMi0wMSwyMDE4LTAyLTE1KSB8IHRocmVlXjMKKygxIHJvdykKKworLS0gREVMRVRFIEZP UiBQT1JUSU9OIE9GIGluIGEgUEwvcGdTUUwgZnVuY3Rpb24KK0lOU0VSVCBJTlRPIGZvcl9wb3J0 aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEwLDExKScsICdb MjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICd0ZW4nKTsKK0NSRUFURSBGVU5DVElPTiBmcG9fZGVs ZXRlKF9pZCBpbnQ0cmFuZ2UsIF90YXJnZXRfZnJvbSBkYXRlLCBfdGFyZ2V0X3RpbCBkYXRlKQor UkVUVVJOUyB2b2lkIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBERUxFVEUgRlJP TSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAk MiBUTyAkMworICAgIFdIRVJFIGlkID0gJDE7CitFTkQ7CiskJDsKK1NFTEVDVCBmcG9fZGVsZXRl KCdbMTAsMTEpJywgJzIwMTUtMDEtMDEnLCAnMjAxOS0wMS0wMScpOworIGZwb19kZWxldGUgCist LS0tLS0tLS0tLS0KKyAKKygxIHJvdykKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90 ZXN0IFdIRVJFIGlkID0gJ1sxMCwxMSknOworICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICB8IG5hbWUgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0K KyBbMTAsMTEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCB0ZW4KKygxIHJvdykKKworREVM RVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCBJTiAoJ1sxMCwxMSknKTsKKy0t IHRlc3QgdGhhdCB3ZSBydW4gdHJpZ2dlcnMgb24gdGhlIFVQREFURS9ERUxFVEVkIHJvdyBhbmQg dGhlIElOU0VSVGVkIHJvd3MKK0NSRUFURSBGVU5DVElPTiBkdW1wX3RyaWdnZXIoKQorUkVUVVJO UyBUUklHR0VSIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBSQUlTRSBOT1RJQ0Ug JyU6ICUgJSAlOicsCisgICAgVEdfTkFNRSwgVEdfV0hFTiwgVEdfT1AsIFRHX0xFVkVMOworCisg IElGIFRHX0FSR1ZbMF0gVEhFTgorICAgIFJBSVNFIE5PVElDRSAnICBvbGQ6ICUnLCAoU0VMRUNU IHN0cmluZ19hZ2cob2xkX3RhYmxlOjp0ZXh0LCAnXG4gICAgICAgJykgRlJPTSBvbGRfdGFibGUp OworICBFTFNFCisgICAgUkFJU0UgTk9USUNFICcgIG9sZDogJScsIE9MRC52YWxpZF9hdDsKKyAg RU5EIElGOworICBJRiBUR19BUkdWWzFdIFRIRU4KKyAgICBSQUlTRSBOT1RJQ0UgJyAgbmV3OiAl JywgKFNFTEVDVCBzdHJpbmdfYWdnKG5ld190YWJsZTo6dGV4dCwgJ1xuICAgICAgICcpIEZST00g bmV3X3RhYmxlKTsKKyAgRUxTRQorICAgIFJBSVNFIE5PVElDRSAnICBuZXc6ICUnLCBORVcudmFs aWRfYXQ7CisgIEVORCBJRjsKKworICBJRiBUR19PUCA9ICdJTlNFUlQnIE9SIFRHX09QID0gJ1VQ REFURScgVEhFTgorICAgIFJFVFVSTiBORVc7CisgIEVMU0lGIFRHX09QID0gJ0RFTEVURScgVEhF TgorICAgIFJFVFVSTiBPTEQ7CisgIEVORCBJRjsKK0VORDsKKyQkOworLS0gc3RhdGVtZW50IHRy aWdnZXJzOgorQ1JFQVRFIFRSSUdHRVIgZnBvX2JlZm9yZV9zdG10CitCRUZPUkUgSU5TRVJUIE9S IFVQREFURSBPUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVN RU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworQ1JFQVRF IFRSSUdHRVIgZnBvX2FmdGVyX2luc2VydF9zdG10CitBRlRFUiBJTlNFUlQgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJp Z2dlcihmYWxzZSwgZmFsc2UpOworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9zdG10 CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5U IEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworQ1JFQVRFIFRS SUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9zdG10CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25f b2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dl cihmYWxzZSwgZmFsc2UpOworLS0gcm93IHRyaWdnZXJzOgorQ1JFQVRFIFRSSUdHRVIgZnBvX2Jl Zm9yZV9yb3cKK0JFRk9SRSBJTlNFUlQgT1IgVVBEQVRFIE9SIERFTEVURSBPTiBmb3JfcG9ydGlv bl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZh bHNlLCBmYWxzZSk7CitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdworQUZURVIg SU5TRVJUIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NF RFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKK0NSRUFURSBUUklHR0VSIGZwb19hZnRl cl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVB Q0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworQ1JF QVRFIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cKK0FGVEVSIERFTEVURSBPTiBmb3JfcG9y dGlvbl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2Vy KGZhbHNlLCBmYWxzZSk7CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDIxLTAxLTAxJyBUTyAnMjAyMi0wMS0wMScKKyAgU0VUIG5h bWUgPSAnZml2ZV4zJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CitOT1RJQ0U6ICBmcG9fYmVmb3Jl X3N0bXQ6IEJFRk9SRSBVUERBVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgor Tk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBV UERBVEUgUk9XOgorTk9USUNFOiAgICBvbGQ6IFsyMDE5LTAxLTAxLDIwMzAtMDEtMDEpCitOT1RJ Q0U6ICAgIG5ldzogWzIwMjEtMDEtMDEsMjAyMi0wMS0wMSkKK05PVElDRTogIGZwb19iZWZvcmVf c3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitO T1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIElO U0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMTkt MDEtMDEsMjAyMS0wMS0wMSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJ TlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDE5 LTAxLTAxLDIwMjEtMDEtMDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVS IElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5l dzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBJTlNFUlQgU1RBVEVN RU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9U SUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6 IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDIyLTAxLTAxLDIwMzAtMDEtMDEpCitOT1RJQ0U6 ICBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIgSU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xk OiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBbMjAyMi0wMS0wMSwyMDMwLTAxLTAxKQorTk9USUNF OiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBBRlRFUiBJTlNFUlQgU1RBVEVNRU5UOgorTk9USUNF OiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2Fm dGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICAgIG9sZDogWzIwMTkt MDEtMDEsMjAzMC0wMS0wMSkKK05PVElDRTogICAgbmV3OiBbMjAyMS0wMS0wMSwyMDIyLTAxLTAx KQorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9zdG10OiBBRlRFUiBVUERBVEUgU1RBVEVNRU5U OgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorREVMRVRF IEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDIzLTAxLTAxJyBUTyAnMjAyNC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworTk9U SUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgREVMRVRFIFNUQVRFTUVOVDoKK05PVElDRTog ICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZv cmVfcm93OiBCRUZPUkUgREVMRVRFIFJPVzoKK05PVElDRTogICAgb2xkOiBbMjAyMi0wMS0wMSwy MDMwLTAxLTAxKQorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9z dG10OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05P VElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgSU5T RVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBbMjAyMi0w MS0wMSwyMDIzLTAxLTAxKQorTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9yb3c6IEFGVEVSIElO U0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMjIt MDEtMDEsMjAyMy0wMS0wMSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfc3RtdDogQUZURVIg SU5TRVJUIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3 OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1F TlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJ Q0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIElOU0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDog PE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMjQtMDEtMDEsMjAzMC0wMS0wMSkKK05PVElDRTog IGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6 IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDI0LTAxLTAxLDIwMzAtMDEtMDEpCitOT1RJQ0U6 ICBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVSIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6 ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYWZ0 ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIFJPVzoKK05PVElDRTogICAgb2xkOiBbMjAyMi0w MS0wMSwyMDMwLTAxLTAxKQorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2Fm dGVyX2RlbGV0ZV9zdG10OiBBRlRFUiBERUxFVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6 IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorU0VMRUNUICogRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9h dCAgICAgICAgIHwgIG5hbWUgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgtMDItMDMpIHwgb25lCisgWzEsMikg fCBbMjAxOC0wMy0wMywyMDE4LTAzLTEwKSB8IG9uZQorIFsxLDIpIHwgWzIwMTgtMDMtMTcsMjAx OC0wNC0wNCkgfCBvbmUKKyBbMyw0KSB8IFsyMDE4LTAxLTAxLDIwMTgtMDItMDEpIHwgdGhyZWUK KyBbMyw0KSB8IFsyMDE4LTAyLTAxLDIwMTgtMDItMDIpIHwgdGhyZWVeMworIFszLDQpIHwgWzIw MTgtMDItMDMsMjAxOC0wMi0xNSkgfCB0aHJlZV4zCisgWzMsNCkgfCBbMjAxOC0wMi0xNSwyMDE4 LTA2LTAxKSB8IHRocmVlCisgWzUsNikgfCAoLDIwMTgtMDEtMDEpICAgICAgICAgICB8IGZpdmUK KyBbNSw2KSB8IFsyMDE5LTAxLTAxLDIwMjEtMDEtMDEpIHwgZml2ZQorIFs1LDYpIHwgWzIwMjEt MDEtMDEsMjAyMi0wMS0wMSkgfCBmaXZlXjMKKyBbNSw2KSB8IFsyMDIyLTAxLTAxLDIwMjMtMDEt MDEpIHwgZml2ZQorIFs1LDYpIHwgWzIwMjQtMDEtMDEsMjAzMC0wMS0wMSkgfCBmaXZlCisgWzYs NykgfCBbMjAxOC0wMy0wMSwyMDMwLTAxLTAxKSB8IHNpeAorIFs3LDgpIHwgKCwyMDE3LTAxLTAx KSAgICAgICAgICAgfCBzZXZlbgorKDE0IHJvd3MpCisKKy0tIFRyaWdnZXJzIHdpdGggYSBjdXN0 b20gdHJhbnNpdGlvbiB0YWJsZSBuYW1lOgorRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0 OworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UsCisg IHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgbmFtZSB0ZXh0CispOworSU5TRVJUIElOVE8gZm9yX3Bv cnRpb25fb2ZfdGVzdCBWQUxVRVMgKCdbMSwyKScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScs ICdvbmUnKTsKKy0tIHN0YXRlbWVudCB0cmlnZ2VyczoKK0NSRUFURSBUUklHR0VSIGZwb19iZWZv cmVfc3RtdAorQkVGT1JFIElOU0VSVCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZvcl9wb3J0aW9u X29mX3Rlc3QKK0ZPUiBFQUNIIFNUQVRFTUVOVCBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdn ZXIoZmFsc2UsIGZhbHNlKTsKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9pbnNlcnRfc3RtdAor QUZURVIgSU5TRVJUIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK1JFRkVSRU5DSU5HIE5FVyBUQUJM RSBBUyBuZXdfdGFibGUKK0ZPUiBFQUNIIFNUQVRFTUVOVCBFWEVDVVRFIFBST0NFRFVSRSBkdW1w X3RyaWdnZXIoZmFsc2UsIHRydWUpOworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9z dG10CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgTkVX IFRBQkxFIEFTIG5ld190YWJsZSBPTEQgVEFCTEUgQVMgb2xkX3RhYmxlCitGT1IgRUFDSCBTVEFU RU1FTlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKHRydWUsIHRydWUpOworQ1JFQVRF IFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9zdG10CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgT0xEIFRBQkxFIEFTIG9sZF90YWJsZQorRk9SIEVBQ0gg U1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0cnVlLCBmYWxzZSk7Cist LSByb3cgdHJpZ2dlcnM6CitDUkVBVEUgVFJJR0dFUiBmcG9fYmVmb3JlX3JvdworQkVGT1JFIElO U0VSVCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNI IFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKK0NSRUFU RSBUUklHR0VSIGZwb19hZnRlcl9pbnNlcnRfcm93CitBRlRFUiBJTlNFUlQgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgTkVXIFRBQkxFIEFTIG5ld190YWJsZQorRk9SIEVBQ0gg Uk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgdHJ1ZSk7CitDUkVBVEUg VFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRlX3JvdworQUZURVIgVVBEQVRFIE9OIGZvcl9wb3J0aW9u X29mX3Rlc3QKK1JFRkVSRU5DSU5HIE9MRCBUQUJMRSBBUyBvbGRfdGFibGUgTkVXIFRBQkxFIEFT IG5ld190YWJsZQorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0 cnVlLCB0cnVlKTsKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVfcm93CitBRlRFUiBE RUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgT0xEIFRBQkxFIEFTIG9s ZF90YWJsZQorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0cnVl LCBmYWxzZSk7CitCRUdJTjsKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMTUnIFRPICcyMDE5LTAxLTAxJworICBTRVQg bmFtZSA9ICcyMDE4LTAxLTE1X3RvXzIwMTktMDEtMDEnOworTk9USUNFOiAgZnBvX2JlZm9yZV9z dG10OiBCRUZPUkUgVVBEQVRFIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05P VElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgVVBE QVRFIFJPVzoKK05PVElDRTogICAgb2xkOiBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKQorTk9USUNF OiAgICBuZXc6IFsyMDE4LTAxLTE1LDIwMTktMDEtMDEpCitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0 bXQ6IEJFRk9SRSBJTlNFUlQgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9U SUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBJTlNF UlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDE4LTAx LTAxLDIwMTgtMDEtMTUpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIgSU5T RVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiAoIlsxLDIp IiwiWzIwMTgtMDEtMDEsMjAxOC0wMS0xNSkiLG9uZSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNl cnRfc3RtdDogQUZURVIgSU5TRVJUIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4K K05PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAxOC0wMS0xNSkiLG9uZSkK K05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJ Q0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9f YmVmb3JlX3JvdzogQkVGT1JFIElOU0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitO T1RJQ0U6ICAgIG5ldzogWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkKK05PVElDRTogIGZwb19hZnRl cl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgor Tk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSIsb25lKQor Tk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBBRlRFUiBJTlNFUlQgU1RBVEVNRU5UOgor Tk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOS0w MS0wMSwyMDIwLTAxLTAxKSIsb25lKQorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFG VEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIw MjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTE1LDIw MTktMDEtMDEpIiwyMDE4LTAxLTE1X3RvXzIwMTktMDEtMDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJf dXBkYXRlX3N0bXQ6IEFGVEVSIFVQREFURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogKCJb MSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICAgIG5ldzogKCJb MSwyKSIsIlsyMDE4LTAxLTE1LDIwMTktMDEtMDEpIiwyMDE4LTAxLTE1X3RvXzIwMTktMDEtMDEp CitST0xMQkFDSzsKK0JFR0lOOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDEtMjEnOworTk9USUNF OiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgREVMRVRFIFNUQVRFTUVOVDoKK05PVElDRTogICAg b2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVf cm93OiBCRUZPUkUgREVMRVRFIFJPVzoKK05PVElDRTogICAgb2xkOiBbMjAxOC0wMS0wMSwyMDIw LTAxLTAxKQorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10 OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElD RTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgSU5TRVJU IFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBbMjAxOC0wMS0y MSwyMDIwLTAxLTAxKQorTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9yb3c6IEFGVEVSIElOU0VS VCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIs IlsyMDE4LTAxLTIxLDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0 X3N0bXQ6IEFGVEVSIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitO T1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTIxLDIwMjAtMDEtMDEpIixvbmUpCitO T1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIFJPVzoKK05PVElDRTog ICAgb2xkOiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkiLG9uZSkKK05PVElDRTog ICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19hZnRlcl9kZWxldGVfc3RtdDogQUZURVIgREVM RVRFIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAy MC0wMS0wMSkiLG9uZSkKK05PVElDRTogICAgbmV3OiA8TlVMTD4KK1JPTExCQUNLOworQkVHSU47 CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NIE5VTEwgVE8gJzIwMTgtMDEtMDInCisgIFNFVCBuYW1lID0gJ05VTExfdG9fMjAxOC0wMS0w MSc7CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBVUERBVEUgU1RBVEVNRU5UOgor Tk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAg ZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUgUk9XOgorTk9USUNFOiAgICBvbGQ6IFsyMDE4 LTAxLTAxLDIwMjAtMDEtMDEpCitOT1RJQ0U6ICAgIG5ldzogWzIwMTgtMDEtMDEsMjAxOC0wMS0w MikKK05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6CitO T1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBm cG9fYmVmb3JlX3JvdzogQkVGT1JFIElOU0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+ CitOT1RJQ0U6ICAgIG5ldzogWzIwMTgtMDEtMDIsMjAyMC0wMS0wMSkKK05PVElDRTogIGZwb19h ZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxM PgorTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0wMS0wMiwyMDIwLTAxLTAxKSIsb25l KQorTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBBRlRFUiBJTlNFUlQgU1RBVEVNRU5U OgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAx OC0wMS0wMiwyMDIwLTAxLTAxKSIsb25lKQorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6 IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAx LDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTAx LDIwMTgtMDEtMDIpIixOVUxMX3RvXzIwMTgtMDEtMDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBk YXRlX3N0bXQ6IEFGVEVSIFVQREFURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogKCJbMSwy KSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICAgIG5ldzogKCJbMSwy KSIsIlsyMDE4LTAxLTAxLDIwMTgtMDEtMDIpIixOVUxMX3RvXzIwMTgtMDEtMDEpCitST0xMQkFD SzsKKy0tIERlZmVycmVkIHRyaWdnZXJzCistLSAobXVzdCBiZSBDT05TVFJBSU5UIHRyaWdnZXJz IHRodXMgQUZURVIgUk9XIHdpdGggbm8gdHJhbnNpdGlvbiB0YWJsZXMpCitEUk9QIFRBQkxFIGZv cl9wb3J0aW9uX29mX3Rlc3Q7CitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisg IGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQKKyk7CitJ TlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVF UworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ29uZScpOworQ1JFQVRF IENPTlNUUkFJTlQgVFJJR0dFUiBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdworQUZURVIgSU5TRVJUIE9O IGZvcl9wb3J0aW9uX29mX3Rlc3QKK0RFRkVSUkFCTEUgSU5JVElBTExZIERFRkVSUkVECitGT1Ig RUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CitD UkVBVEUgQ09OU1RSQUlOVCBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERB VEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQK K0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNl KTsKK0NSRUFURSBDT05TVFJBSU5UIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cKK0FGVEVS IERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitERUZFUlJBQkxFIElOSVRJQUxMWSBERUZF UlJFRAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwg ZmFsc2UpOworQkVHSU47CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyAnMjAxOS0wMS0wMScKKyAgU0VUIG5h bWUgPSAnMjAxOC0wMS0xNV90b18yMDE5LTAxLTAxJzsKK0NPTU1JVDsKK05PVElDRTogIGZwb19h ZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxM PgorTk9USUNFOiAgICBuZXc6IFsyMDE4LTAxLTAxLDIwMTgtMDEtMTUpCitOT1RJQ0U6ICBmcG9f YWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIgSU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVM TD4KK05PVElDRTogICAgbmV3OiBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKQorTk9USUNFOiAgZnBv X2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICAgIG9sZDogWzIw MTgtMDEtMDEsMjAyMC0wMS0wMSkKK05PVElDRTogICAgbmV3OiBbMjAxOC0wMS0xNSwyMDE5LTAx LTAxKQorQkVHSU47CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMS0yMSc7CitDT01NSVQ7CitOT1RJ Q0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIgSU5TRVJUIFJPVzoKK05PVElDRTogICAg b2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBbMjAxOC0wMS0yMSwyMDE5LTAxLTAxKQorTk9U SUNFOiAgZnBvX2FmdGVyX2RlbGV0ZV9yb3c6IEFGVEVSIERFTEVURSBST1c6CitOT1RJQ0U6ICAg IG9sZDogWzIwMTgtMDEtMTUsMjAxOS0wMS0wMSkKK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05P VElDRTogIGZwb19hZnRlcl9kZWxldGVfcm93OiBBRlRFUiBERUxFVEUgUk9XOgorTk9USUNFOiAg ICBvbGQ6IFsyMDE4LTAxLTAxLDIwMTgtMDEtMTUpCitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitC RUdJTjsKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMS0wMicKKyAgU0VUIG5hbWUgPSAnTlVMTF90b18yMDE4 LTAxLTAxJzsKK0NPTU1JVDsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDsKKyAg aWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgICAgICAgICAgIG5hbWUgICAgICAgICAg IAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCisgWzEsMikgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IG9uZQorIFsxLDIpIHwg WzIwMTgtMDEtMjEsMjAxOS0wMS0wMSkgfCAyMDE4LTAxLTE1X3RvXzIwMTktMDEtMDEKKygyIHJv d3MpCisKKy0tIHRlc3QgRk9SIFBPUlRJT04gT0YgZnJvbSB0cmlnZ2VycyBkdXJpbmcgRk9SIFBP UlRJT04gT0Y6CitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CitDUkVBVEUgVEFCTEUg Zm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJh bmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChp ZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAxLDIwMjAt MDEtMDEpJywgJ29uZScpLAorICAoJ1syLDMpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywg J3R3bycpLAorICAoJ1szLDQpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ3RocmVlJyks CisgICgnWzQsNSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAnZm91cicpOworQ1JFQVRF IEZVTkNUSU9OIHRyZ19mcG9fdXBkYXRlKCkKK1JFVFVSTlMgVFJJR0dFUiBMQU5HVUFHRSBwbHBn c3FsIEFTCiskJAorQkVHSU4KKyAgSUYgcGdfdHJpZ2dlcl9kZXB0aCgpID0gMSBUSEVOCisgICAg VVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgICAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTgtMDItMDEnIFRPICcyMDE4LTAzLTAxJworICAgICAgU0VUIG5hbWUgPSBDT05D QVQobmFtZSwgJ14nKQorICAgICAgV0hFUkUgaWQgPSBPTEQuaWQ7CisgIEVORCBJRjsKKyAgUkVU VVJOIENBU0UgV0hFTiAnVEdfT1AnID0gJ0RFTEVURScgVEhFTiBPTEQgRUxTRSBORVcgRU5EOwor RU5EOworJCQ7CitDUkVBVEUgRlVOQ1RJT04gdHJnX2Zwb19kZWxldGUoKQorUkVUVVJOUyBUUklH R0VSIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBJRiBwZ190cmlnZ2VyX2RlcHRo KCkgPSAxIFRIRU4KKyAgICBERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAzLTAxJyBUTyAnMjAxOC0wNC0wMScK KyAgICAgIFdIRVJFIGlkID0gT0xELmlkOworICBFTkQgSUY7CisgIFJFVFVSTiBDQVNFIFdIRU4g J1RHX09QJyA9ICdERUxFVEUnIFRIRU4gT0xEIEVMU0UgTkVXIEVORDsKK0VORDsKKyQkOworLS0g VVBEQVRFIEZPUiBQT1JUSU9OIE9GIGZyb20gYSB0cmlnZ2VyIGZpcmVkIGJ5IFVQREFURSBGT1Ig UE9SVElPTiBPRgorQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9yb3cKK0FGVEVSIFVQ REFURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURV UkUgdHJnX2Zwb191cGRhdGUoKTsKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDUtMDEnIFRPICcyMDE4LTA2LTAxJworICBT RVQgbmFtZSA9IENPTkNBVChuYW1lLCAnKicpCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1NFTEVD VCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCA9ICdbMSwyKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBuYW1lIAor LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQorIFsxLDIpIHwgWzIwMTgt MDEtMDEsMjAxOC0wMi0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDE4LTAyLTAxLDIwMTgtMDMtMDEp IHwgb25lXgorIFsxLDIpIHwgWzIwMTgtMDMtMDEsMjAxOC0wNS0wMSkgfCBvbmUKKyBbMSwyKSB8 IFsyMDE4LTA1LTAxLDIwMTgtMDYtMDEpIHwgb25lKgorIFsxLDIpIHwgWzIwMTgtMDYtMDEsMjAy MC0wMS0wMSkgfCBvbmUKKyg1IHJvd3MpCisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRl X3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0OworLS0gVVBEQVRFIEZPUiBQT1JUSU9OIE9GIGZy b20gYSB0cmlnZ2VyIGZpcmVkIGJ5IERFTEVURSBGT1IgUE9SVElPTiBPRgorQ1JFQVRFIFRSSUdH RVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cKK0FGVEVSIERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90 ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgdHJnX2Zwb191cGRhdGUoKTsKK0RF TEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAxOC0wNS0wMScgVE8gJzIwMTgtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1syLDMpJzsK K1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCA9ICdbMiwzKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBu YW1lIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQorIFsyLDMpIHwg WzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkgfCB0d28KKyBbMiwzKSB8IFsyMDE4LTAyLTAxLDIwMTgt MDMtMDEpIHwgdHdvXgorIFsyLDMpIHwgWzIwMTgtMDMtMDEsMjAxOC0wNS0wMSkgfCB0d28KKyBb MiwzKSB8IFsyMDE4LTA2LTAxLDIwMjAtMDEtMDEpIHwgdHdvCisoNCByb3dzKQorCitEUk9QIFRS SUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cgT04gZm9yX3BvcnRpb25fb2ZfdGVzdDsKKy0tIERF TEVURSBGT1IgUE9SVElPTiBPRiBmcm9tIGEgdHJpZ2dlciBmaXJlZCBieSBVUERBVEUgRk9SIFBP UlRJT04gT0YKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERB VEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJF IHRyZ19mcG9fZGVsZXRlKCk7CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA1LTAxJyBUTyAnMjAxOC0wNi0wMScKKyAgU0VU IG5hbWUgPSBDT05DQVQobmFtZSwgJyonKQorICBXSEVSRSBpZCA9ICdbMyw0KSc7CitTRUxFQ1Qg KiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgV0hFUkUgaWQgPSAnWzMsNCknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgIG5hbWUgIAor LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tCisgWzMsNCkgfCBbMjAx OC0wMS0wMSwyMDE4LTAzLTAxKSB8IHRocmVlCisgWzMsNCkgfCBbMjAxOC0wNC0wMSwyMDE4LTA1 LTAxKSB8IHRocmVlCisgWzMsNCkgfCBbMjAxOC0wNS0wMSwyMDE4LTA2LTAxKSB8IHRocmVlKgor IFszLDQpIHwgWzIwMTgtMDYtMDEsMjAyMC0wMS0wMSkgfCB0aHJlZQorKDQgcm93cykKKworRFJP UCBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93IE9OIGZvcl9wb3J0aW9uX29mX3Rlc3Q7Cist LSBERUxFVEUgRk9SIFBPUlRJT04gT0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgREVMRVRFIEZP UiBQT1JUSU9OIE9GCitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfZGVsZXRlX3JvdworQUZURVIg REVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NF RFVSRSB0cmdfZnBvX2RlbGV0ZSgpOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA1LTAxJyBUTyAnMjAxOC0wNi0w MScKKyAgV0hFUkUgaWQgPSAnWzQsNSknOworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90 ZXN0IFdIRVJFIGlkID0gJ1s0LDUpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAg ICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tCisgWzQsNSkgfCBbMjAxOC0wMS0wMSwyMDE4LTAzLTAxKSB8IGZvdXIK KyBbNCw1KSB8IFsyMDE4LTA0LTAxLDIwMTgtMDUtMDEpIHwgZm91cgorIFs0LDUpIHwgWzIwMTgt MDYtMDEsMjAyMC0wMS0wMSkgfCBmb3VyCisoMyByb3dzKQorCitEUk9QIFRSSUdHRVIgZnBvX2Fm dGVyX2RlbGV0ZV9yb3cgT04gZm9yX3BvcnRpb25fb2ZfdGVzdDsKKy0tIFRlc3Qgd2l0aCBtdWx0 aXJhbmdlcworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJh bmdlIE5PVCBOVUxMLAorICB2YWxpZF9hdCBkYXRlbXVsdGlyYW5nZSBOT1QgTlVMTCwKKyAgbmFt ZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5UIGZvcl9wb3J0aW9uX29mX3Rlc3QyX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5U TyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdb MSwyKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAz KScpLCBkYXRlcmFuZ2UoJzIwMTgtMDItMDQnLCAnMjAxOC0wMy0wMycpKSwgJ29uZScpLAorICAo J1sxLDIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAzLTAzJywgJzIwMTgtMDQt MDQpJykpLCAnb25lJyksCisgICgnWzIsMyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAxOC0wNS0wMSknKSksICd0d28nKSwKKyAgKCdbMyw0KScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsIG51bGwpKSwgJ3RocmVlJyk7CisgIDsKK1VQ REFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTEwJywgJzIwMTgtMDItMTAnKSwgZGF0ZXJh bmdlKCcyMDE4LTAzLTA1JywgJzIwMTgtMDUtMDEnKSkpCisgIFNFVCBuYW1lID0gJ29uZV4xJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0Mgor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4 LTAxLTE1JywgJzIwMTgtMDItMTUnKSwgZGF0ZXJhbmdlKCcyMDE4LTAzLTAxJywgJzIwMTgtMDMt MTUnKSkpCisgIFdIRVJFIGlkID0gJ1syLDMpJzsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQorIFsxLDIpIHwg e1syMDE4LTAxLTAyLDIwMTgtMDEtMTApLFsyMDE4LTAyLTEwLDIwMTgtMDMtMDMpfSAgICAgICAg ICAgICAgICAgICAgICAgICB8IG9uZQorIFsxLDIpIHwge1syMDE4LTAxLTEwLDIwMTgtMDItMDMp LFsyMDE4LTAyLTA0LDIwMTgtMDItMTApfSAgICAgICAgICAgICAgICAgICAgICAgICB8IG9uZV4x CisgWzEsMikgfCB7WzIwMTgtMDMtMDMsMjAxOC0wMy0wNSl9ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb25lCisgWzEsMikgfCB7WzIwMTgtMDMtMDUs MjAxOC0wNC0wNCl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgb25lXjEKKyBbMiwzKSB8IHtbMjAxOC0wMS0wMSwyMDE4LTAxLTE1KSxbMjAxOC0wMi0x NSwyMDE4LTAzLTAxKSxbMjAxOC0wMy0xNSwyMDE4LTA1LTAxKX0gfCB0d28KKyBbMyw0KSB8IHtb MjAxOC0wMS0wMSwpfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCB0aHJlZQorKDYgcm93cykKKworRFJPUCBUQUJMRSBmb3JfcG9ydGlv bl9vZl90ZXN0MjsKKy0tIFRlc3Qgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBlCitDUkVBVEUgVFlQ RSBteWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOworQ1JFQVRFIFRBQkxFIGZvcl9w b3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJhbmdlIE5PVCBOVUxMLAorICB2YWxpZF9hdCBt eWRhdGVyYW5nZSBOT1QgTlVMTCwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5U IGZvcl9wb3J0aW9uX29mX3Rlc3QyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZh bGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAz KScsICdvbmUnKSwKKyAgKCdbMSwyKScsICdbMjAxOC0wMi0wMywyMDE4LTAzLTAzKScsICdvbmUn KSwKKyAgKCdbMSwyKScsICdbMjAxOC0wMy0wMywyMDE4LTA0LTA0KScsICdvbmUnKSwKKyAgKCdb MiwzKScsICdbMjAxOC0wMS0wMSwyMDE4LTA1LTAxKScsICd0d28nKSwKKyAgKCdbMyw0KScsICdb MjAxOC0wMS0wMSwpJywgJ3RocmVlJyk7CisgIDsKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0 MgorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0w Mi0xMCcKKyAgU0VUIG5hbWUgPSAnb25lXjEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK0RFTEVU RSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTgtMDEtMTUnIFRPICcyMDE4LTAyLTE1JworICBXSEVSRSBpZCA9ICdbMiwzKSc7CitT RUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QyIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgbmFtZSAgCistLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQorIFsxLDIpIHwgWzIwMTgtMDEtMDIsMjAxOC0w MS0xMCkgfCBvbmUKKyBbMSwyKSB8IFsyMDE4LTAxLTEwLDIwMTgtMDItMDMpIHwgb25lXjEKKyBb MSwyKSB8IFsyMDE4LTAyLTAzLDIwMTgtMDItMTApIHwgb25lXjEKKyBbMSwyKSB8IFsyMDE4LTAy LTEwLDIwMTgtMDMtMDMpIHwgb25lCisgWzEsMikgfCBbMjAxOC0wMy0wMywyMDE4LTA0LTA0KSB8 IG9uZQorIFsyLDMpIHwgWzIwMTgtMDEtMDEsMjAxOC0wMS0xNSkgfCB0d28KKyBbMiwzKSB8IFsy MDE4LTAyLTE1LDIwMTgtMDUtMDEpIHwgdHdvCisgWzMsNCkgfCBbMjAxOC0wMS0wMSwpICAgICAg ICAgICB8IHRocmVlCisoOCByb3dzKQorCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Qy OworRFJPUCBUWVBFIG15ZGF0ZXJhbmdlOworLS0gVGVzdCBGT1IgUE9SVElPTiBPRiBhZ2FpbnN0 IGEgcGFydGl0aW9uZWQgdGFibGUuCistLSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF8xIGhhcyB0aGUg c2FtZSBhdHRudW1zIGFzIHRoZSByb290CistLSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF8zIGhhcyB0 aGUgZGlmZmVyZW50IGF0dG51bXMgZnJvbSB0aGUgcm9vdAorLS0gdGVtcG9yYWxfcGFydGl0aW9u ZWRfNSBoYXMgdGhlIGRpZmZlcmVudCBhdHRudW1zIHRvbywgYnV0IHJldmVyc2VkCitDUkVBVEUg VEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0 IGRhdGVyYW5nZSwKKyAgbmFtZSB0ZXh0LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3Bhcml0aW9u ZWRfdXEgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKykgUEFSVElUSU9O IEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF8xIFBBUlRJ VElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzIs MyknKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF8zIFBBUlRJVElPTiBPRiB0 ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgVkFMVUVTIElOICgnWzMsNCknLCAnWzQsNSknKTsKK0NS RUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF81IFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9w YXJ0aXRpb25lZCBGT1IgVkFMVUVTIElOICgnWzUsNiknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX3BhcnRpdGlvbmVkIERFVEFDSCBQQVJUSVRJT04gdGVtcG9yYWxfcGFydGl0aW9u ZWRfMzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzMgRFJPUCBDT0xVTU4gaWQs IERST1AgQ09MVU1OIHZhbGlkX2F0OworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRf MyBBREQgQ09MVU1OIGlkIGludDRyYW5nZSBOT1QgTlVMTCwgQUREIENPTFVNTiB2YWxpZF9hdCBk YXRlcmFuZ2UgTk9UIE5VTEw7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBBVFRB Q0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzMgRk9SIFZBTFVFUyBJTiAoJ1szLDQp JywgJ1s0LDUpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBERVRBQ0ggUEFS VElUSU9OIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzU7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF81IERST1AgQ09MVU1OIGlkLCBEUk9QIENPTFVNTiB2YWxpZF9hdDsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzUgQUREIENPTFVNTiB2YWxpZF9hdCBkYXRlcmFuZ2Ug Tk9UIE5VTEwsIEFERCBDT0xVTU4gaWQgaW50NHJhbmdlIE5PVCBOVUxMOworQUxURVIgVEFCTEUg dGVtcG9yYWxfcGFydGl0aW9uZWQgQVRUQUNIIFBBUlRJVElPTiB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF81IEZPUiBWQUxVRVMgSU4gKCdbNSw2KScsICdbNiw3KScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGFydGl0aW9uZWQgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCBk YXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAnb25lJyksCisgICgnWzMsNCkn LCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAndGhyZWUnKSwKKyAgKCdb NSw2KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyksICdmaXZlJyk7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkOworICBpZCAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBuYW1lICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tCisgWzEsMikgfCBbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKSB8IG9uZQorIFszLDQpIHwg WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0aHJlZQorIFs1LDYpIHwgWzIwMDAtMDEtMDEsMjAx MC0wMS0wMSkgfCBmaXZlCisoMyByb3dzKQorCistLSBVcGRhdGUgd2l0aG91dCBtb3Zpbmcgd2l0 aGluIHBhcnRpdGlvbiAxCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMy0wMScgVE8gJzIwMDAtMDQtMDEnCisgIFNFVCBuYW1l ID0gJ29uZV4xJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CistLSBVcGRhdGUgd2l0aG91dCBtb3Zp bmcgd2l0aGluIHBhcnRpdGlvbiAzCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMy0wMScgVE8gJzIwMDAtMDQtMDEnCisgIFNF VCBuYW1lID0gJ3RocmVlXjEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKy0tIFVwZGF0ZSB3aXRo b3V0IG1vdmluZyB3aXRoaW4gcGFydGl0aW9uIDUKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAzLTAxJyBUTyAnMjAwMC0wNC0w MScKKyAgU0VUIG5hbWUgPSAnZml2ZV4xJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBNb3Zl IGZyb20gcGFydGl0aW9uIDEgdG8gcGFydGl0aW9uIDMKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRp b25lZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTA2LTAxJyBUTyAnMjAwMC0w Ny0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjInLAorICAgICAgaWQgPSAnWzQsNSknCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKy0tIE1vdmUgZnJvbSBwYXJ0aXRpb24gMyB0byBwYXJ0aXRpb24gMQor VVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMDAtMDYtMDEnIFRPICcyMDAwLTA3LTAxJworICBTRVQgbmFtZSA9ICd0aHJlZV4yJywKKyAg ICAgIGlkID0gJ1syLDMpJworICBXSEVSRSBpZCA9ICdbMyw0KSc7CistLSBNb3ZlIGZyb20gcGFy dGl0aW9uIDUgdG8gcGFydGl0aW9uIDMKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTA2LTAxJyBUTyAnMjAwMC0wNy0wMScKKyAg U0VUIG5hbWUgPSAnZml2ZV4yJywKKyAgICAgIGlkID0gJ1szLDQpJworICBXSEVSRSBpZCA9ICdb NSw2KSc7CistLSBVcGRhdGUgYWxsIHBhcnRpdGlvbnMgYXQgb25jZSAoZWFjaCB3aXRoIGxlZnRv dmVycykKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWQgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCAgbmFtZSAgIAorLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLQorIFsxLDIpIHwgWzIwMDAt MDEtMDEsMjAwMC0wMy0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDAwLTAzLTAxLDIwMDAtMDQtMDEp IHwgb25lXjEKKyBbMSwyKSB8IFsyMDAwLTA0LTAxLDIwMDAtMDYtMDEpIHwgb25lCisgWzEsMikg fCBbMjAwMC0wNy0wMSwyMDEwLTAxLTAxKSB8IG9uZQorIFsyLDMpIHwgWzIwMDAtMDYtMDEsMjAw MC0wNy0wMSkgfCB0aHJlZV4yCisgWzMsNCkgfCBbMjAwMC0wMS0wMSwyMDAwLTAzLTAxKSB8IHRo cmVlCisgWzMsNCkgfCBbMjAwMC0wMy0wMSwyMDAwLTA0LTAxKSB8IHRocmVlXjEKKyBbMyw0KSB8 IFsyMDAwLTA0LTAxLDIwMDAtMDYtMDEpIHwgdGhyZWUKKyBbMyw0KSB8IFsyMDAwLTA2LTAxLDIw MDAtMDctMDEpIHwgZml2ZV4yCisgWzMsNCkgfCBbMjAwMC0wNy0wMSwyMDEwLTAxLTAxKSB8IHRo cmVlCisgWzQsNSkgfCBbMjAwMC0wNi0wMSwyMDAwLTA3LTAxKSB8IG9uZV4yCisgWzUsNikgfCBb MjAwMC0wMS0wMSwyMDAwLTAzLTAxKSB8IGZpdmUKKyBbNSw2KSB8IFsyMDAwLTAzLTAxLDIwMDAt MDQtMDEpIHwgZml2ZV4xCisgWzUsNikgfCBbMjAwMC0wNC0wMSwyMDAwLTA2LTAxKSB8IGZpdmUK KyBbNSw2KSB8IFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEpIHwgZml2ZQorKDE1IHJvd3MpCisKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfMSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8ICBuYW1lICAgCistLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tCisgWzEsMikgfCBbMjAwMC0wMS0wMSwy MDAwLTAzLTAxKSB8IG9uZQorIFsxLDIpIHwgWzIwMDAtMDMtMDEsMjAwMC0wNC0wMSkgfCBvbmVe MQorIFsxLDIpIHwgWzIwMDAtMDQtMDEsMjAwMC0wNi0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDAw LTA3LTAxLDIwMTAtMDEtMDEpIHwgb25lCisgWzIsMykgfCBbMjAwMC0wNi0wMSwyMDAwLTA3LTAx KSB8IHRocmVlXjIKKyg1IHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9u ZWRfMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIG5hbWUgICB8ICBpZCAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgCistLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgdGhyZWUgICB8IFszLDQpIHwgWzIwMDAtMDEtMDEsMjAwMC0wMy0wMSkKKyB0aHJlZV4x IHwgWzMsNCkgfCBbMjAwMC0wMy0wMSwyMDAwLTA0LTAxKQorIHRocmVlICAgfCBbMyw0KSB8IFsy MDAwLTA0LTAxLDIwMDAtMDYtMDEpCisgZml2ZV4yICB8IFszLDQpIHwgWzIwMDAtMDYtMDEsMjAw MC0wNy0wMSkKKyB0aHJlZSAgIHwgWzMsNCkgfCBbMjAwMC0wNy0wMSwyMDEwLTAxLTAxKQorIG9u ZV4yICAgfCBbNCw1KSB8IFsyMDAwLTA2LTAxLDIwMDAtMDctMDEpCisoNiByb3dzKQorCitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzUgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICBuYW1lICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgIGlkICAgCistLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyBmaXZlICAgfCBbMjAwMC0wMS0wMSwyMDAw LTAzLTAxKSB8IFs1LDYpCisgZml2ZV4xIHwgWzIwMDAtMDMtMDEsMjAwMC0wNC0wMSkgfCBbNSw2 KQorIGZpdmUgICB8IFsyMDAwLTA0LTAxLDIwMDAtMDYtMDEpIHwgWzUsNikKKyBmaXZlICAgfCBb MjAwMC0wNy0wMSwyMDEwLTAxLTAxKSB8IFs1LDYpCisoNCByb3dzKQorCitEUk9QIFRBQkxFIHRl bXBvcmFsX3BhcnRpdGlvbmVkOworUkVTRVQgZGF0ZXN0eWxlOwpkaWZmIC0tZ2l0IGEvc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9wcml2aWxlZ2VzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvcHJpdmlsZWdlcy5vdXQKaW5kZXggZGFhZmFhOTRmZGUuLjlmZjhlN2ZiMzYzIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ByaXZpbGVnZXMub3V0CisrKyBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdlcy5vdXQKQEAgLTExMTksNiArMTExOSwy NCBAQCBFUlJPUjogIG51bGwgdmFsdWUgaW4gY29sdW1uICJiIiBvZiByZWxhdGlvbiAiZXJydHN0 X3BhcnRfMiIgdmlvbGF0ZXMgbm90LW51bGwgYwogREVUQUlMOiAgRmFpbGluZyByb3cgY29udGFp bnMgKGEsIGIsIGMpID0gKGFhYWEsIG51bGwsIGNjYykuCiBTRVQgU0VTU0lPTiBBVVRIT1JJWkFU SU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsKIERST1AgVEFCTEUgZXJydHN0OworLS0gdGVzdCBjb2x1 bW4tbGV2ZWwgcHJpdmlsZWdlcyBvbiB0aGUgcmFuZ2UgdXNlZCBpbiBGT1IgUE9SVElPTiBPRgor U0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CitDUkVBVEUgVEFC TEUgdDEgKAorICBjMSBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IHRzcmFuZ2UsCisJQ09OU1RSQUlO VCB0MXBrIFBSSU1BUlkgS0VZIChjMSwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitH UkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXIyOworR1JBTlQgU0VMRUNUIE9O IHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMzsKK0dSQU5UIFVQREFURSAoYzEpIE9OIHQxIFRPIHJl Z3Jlc3NfcHJpdl91c2VyMjsKK0dSQU5UIFVQREFURSAoYzEsIHZhbGlkX2F0KSBPTiB0MSBUTyBy ZWdyZXNzX3ByaXZfdXNlcjM7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJp dl91c2VyMjsKK1VQREFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAx LTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKK0VSUk9SOiAgcGVybWlzc2lv biBkZW5pZWQgZm9yIHRhYmxlIHQxCitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3Nf cHJpdl91c2VyMzsKK1VQREFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAw LTAxLTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKK1NFVCBTRVNTSU9OIEFV VEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIxOworRFJPUCBUQUJMRSB0MTsKIC0tIHRlc3Qg Y29sdW1uLWxldmVsIHByaXZpbGVnZXMgd2hlbiBpbnZvbHZlZCB3aXRoIERFTEVURQogU0VUIFNF U1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CiBBTFRFUiBUQUJMRSBhdGVz dDYgQUREIENPTFVNTiB0aHJlZSBpbnRlZ2VyOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC91cGRhdGFibGVfdmlld3Mub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC91cGRhdGFibGVfdmlld3Mub3V0CmluZGV4IDAzZGY3ZTc1YjdiLi40ZmI5MjhkNTYxZCAxMDA2 NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC91cGRhdGFibGVfdmlld3Mub3V0Cisr KyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdXBkYXRhYmxlX3ZpZXdzLm91dApAQCAtMzcw MCw2ICszNzAwLDM4IEBAIHNlbGVjdCAqIGZyb20gdXZfaW9jdV90YWI7CiAKIGRyb3AgdmlldyB1 dl9pb2N1X3ZpZXc7CiBkcm9wIHRhYmxlIHV2X2lvY3VfdGFiOworLS0gQ2hlY2sgVVBEQVRFIEZP UiBQT1JUSU9OIE9GIHdvcmtzIGNvcnJlY3RseQorY3JlYXRlIHRhYmxlIHV2X2Zwb190YWIgKGlk IGludDRyYW5nZSwgdmFsaWRfYXQgdHNyYW5nZSwgYiBmbG9hdCwKKyAgICBjb25zdHJhaW50IHBr X3V2X2Zwb190YWIgcHJpbWFyeSBrZXkgKGlkLCB2YWxpZF9hdCB3aXRob3V0IG92ZXJsYXBzKSk7 CitpbnNlcnQgaW50byB1dl9mcG9fdGFiIHZhbHVlcyAoJ1sxLDFdJywgJ1syMDIwLTAxLTAxLCAy MDMwLTAxLTAxKScsIDApOworY3JlYXRlIHZpZXcgdXZfZnBvX3ZpZXcgYXMKKyAgICBzZWxlY3Qg YiwgYisxIGFzIGMsIHZhbGlkX2F0LCBpZCwgJzIuMCc6OnRleHQgYXMgdHdvIGZyb20gdXZfZnBv X3RhYjsKK2luc2VydCBpbnRvIHV2X2Zwb192aWV3IChpZCwgdmFsaWRfYXQsIGIpIHZhbHVlcyAo J1sxLDFdJywgJ1syMDEwLTAxLTAxLCAyMDIwLTAxLTAxKScsIDEpOworc2VsZWN0ICogZnJvbSB1 dl9mcG9fdmlldzsKKyBiIHwgYyB8ICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgaWQgICB8IHR3byAKKy0tLSstLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0t LS0KKyAwIHwgMSB8IFsiV2VkIEphbiAwMSAwMDowMDowMCAyMDIwIiwiVHVlIEphbiAwMSAwMDow MDowMCAyMDMwIikgfCBbMSwyKSB8IDIuMAorIDEgfCAyIHwgWyJGcmkgSmFuIDAxIDAwOjAwOjAw IDIwMTAiLCJXZWQgSmFuIDAxIDAwOjAwOjAwIDIwMjAiKSB8IFsxLDIpIHwgMi4wCisoMiByb3dz KQorCit1cGRhdGUgdXZfZnBvX3ZpZXcgZm9yIHBvcnRpb24gb2YgdmFsaWRfYXQgZnJvbSAnMjAx NS0wMS0wMScgdG8gJzIwMjAtMDEtMDEnIHNldCBiID0gMiB3aGVyZSBpZCA9ICdbMSwxXSc7Citz ZWxlY3QgKiBmcm9tIHV2X2Zwb192aWV3OworIGIgfCBjIHwgICAgICAgICAgICAgICAgICAgICAg ICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICAgICB8ICBpZCAgIHwgdHdvIAorLS0tKy0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLSstLS0tLQorIDAgfCAxIHwgWyJXZWQgSmFuIDAxIDAwOjAwOjAwIDIwMjAiLCJU dWUgSmFuIDAxIDAwOjAwOjAwIDIwMzAiKSB8IFsxLDIpIHwgMi4wCisgMiB8IDMgfCBbIlRodSBK YW4gMDEgMDA6MDA6MDAgMjAxNSIsIldlZCBKYW4gMDEgMDA6MDA6MDAgMjAyMCIpIHwgWzEsMikg fCAyLjAKKyAxIHwgMiB8IFsiRnJpIEphbiAwMSAwMDowMDowMCAyMDEwIiwiVGh1IEphbiAwMSAw MDowMDowMCAyMDE1IikgfCBbMSwyKSB8IDIuMAorKDMgcm93cykKKworZGVsZXRlIGZyb20gdXZf ZnBvX3ZpZXcgZm9yIHBvcnRpb24gb2YgdmFsaWRfYXQgZnJvbSAnMjAxNy0wMS0wMScgdG8gJzIw MjItMDEtMDEnIHdoZXJlIGlkID0gJ1sxLDFdJzsKK3NlbGVjdCAqIGZyb20gdXZfZnBvX3ZpZXc7 CisgYiB8IGMgfCAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIGlkICAgfCB0d28gCistLS0rLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tCisgMSB8IDIg fCBbIkZyaSBKYW4gMDEgMDA6MDA6MDAgMjAxMCIsIlRodSBKYW4gMDEgMDA6MDA6MDAgMjAxNSIp IHwgWzEsMikgfCAyLjAKKyAwIHwgMSB8IFsiU2F0IEphbiAwMSAwMDowMDowMCAyMDIyIiwiVHVl IEphbiAwMSAwMDowMDowMCAyMDMwIikgfCBbMSwyKSB8IDIuMAorIDIgfCAzIHwgWyJUaHUgSmFu IDAxIDAwOjAwOjAwIDIwMTUiLCJTdW4gSmFuIDAxIDAwOjAwOjAwIDIwMTciKSB8IFsxLDIpIHwg Mi4wCisoMyByb3dzKQorCiAtLSBUZXN0IHdob2xlLXJvdyByZWZlcmVuY2VzIHRvIHRoZSB2aWV3 CiBjcmVhdGUgdGFibGUgdXZfaW9jdV90YWIgKGEgaW50IHVuaXF1ZSwgYiB0ZXh0KTsKIGNyZWF0 ZSB2aWV3IHV2X2lvY3VfdmlldyBhcwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC93aXRob3V0X292ZXJsYXBzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0 aG91dF9vdmVybGFwcy5vdXQKaW5kZXggZjMxNDRiZGMzOWMuLjQwMTU1MGI1NDgyIDEwMDY0NAot LS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMub3V0CisrKyBi L3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9vdmVybGFwcy5vdXQKQEAgLTIsNyAr Miw3IEBACiAtLQogLS0gV2UgbGVhdmUgYmVoaW5kIHNldmVyYWwgdGFibGVzIHRvIHRlc3QgcGdf ZHVtcCBldGM6CiAtLSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX3JuZzIsCi0tLSB0ZW1wb3JhbF9m a19ybmcycm5nLgorLS0gdGVtcG9yYWxfZmtfcm5nMnJuZywgdGVtcG9yYWxfZmsyX3JuZzJybmcu CiBTRVQgZGF0ZXN0eWxlIFRPIElTTywgWU1EOwogLS0KIC0tIHRlc3QgaW5wdXQgcGFyc2VyCkBA IC04ODksNiArODg5LDM2IEBAIElOU0VSVCBJTlRPIHRlbXBvcmFsMyAoaWQsIHZhbGlkX2F0LCBp ZDIsIG5hbWUpCiAgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0w MScpLCAnWzcsOCknLCAnZm9vJyksCiAgICgnWzIsMyknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEn LCAnMjAxMC0wMS0wMScpLCAnWzksMTApJywgJ2JhcicpCiA7CitVUERBVEUgdGVtcG9yYWwzIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDUtMDEnIFRPICcyMDAwLTA3LTAxJwor ICBTRVQgbmFtZSA9IG5hbWUgfHwgJzEnOworVVBEQVRFIHRlbXBvcmFsMyBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDAwLTA0LTAxJyBUTyAnMjAwMC0wNi0wMScKKyAgU0VUIG5hbWUg PSBuYW1lIHx8ICcyJworICBXSEVSRSBpZCA9ICdbMiwzKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICB8ICBpZDIgICB8IG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IFsyMDAwLTAxLTAxLDIwMDAtMDUtMDEpIHwgWzcs OCkgIHwgZm9vCisgWzEsMikgfCBbMjAwMC0wNS0wMSwyMDAwLTA3LTAxKSB8IFs3LDgpICB8IGZv bzEKKyBbMSwyKSB8IFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEpIHwgWzcsOCkgIHwgZm9vCisgWzIs MykgfCBbMjAwMC0wMS0wMSwyMDAwLTA0LTAxKSB8IFs5LDEwKSB8IGJhcgorIFsyLDMpIHwgWzIw MDAtMDQtMDEsMjAwMC0wNS0wMSkgfCBbOSwxMCkgfCBiYXIyCisgWzIsMykgfCBbMjAwMC0wNS0w MSwyMDAwLTA2LTAxKSB8IFs5LDEwKSB8IGJhcjEyCisgWzIsMykgfCBbMjAwMC0wNi0wMSwyMDAw LTA3LTAxKSB8IFs5LDEwKSB8IGJhcjEKKyBbMiwzKSB8IFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEp IHwgWzksMTApIHwgYmFyCisoOCByb3dzKQorCistLSBjb25mbGljdGluZyBpZCBvbmx5OgorSU5T RVJUIElOVE8gdGVtcG9yYWwzIChpZCwgdmFsaWRfYXQsIGlkMiwgbmFtZSkKKyAgVkFMVUVTCisg ICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpLCAnWzgsOSkn LCAnZm9vMycpOworRVJST1I6ICBjb25mbGljdGluZyBrZXkgdmFsdWUgdmlvbGF0ZXMgZXhjbHVz aW9uIGNvbnN0cmFpbnQgInRlbXBvcmFsM19wayIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0 KT0oWzEsMiksIFsyMDA1LTAxLTAxLDIwMDYtMDEtMDEpKSBjb25mbGljdHMgd2l0aCBleGlzdGlu ZyBrZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAwMC0wNy0wMSwyMDEwLTAxLTAxKSkuCist LSBjb25mbGljdGluZyBpZDIgb25seToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsMyAoaWQsIHZhbGlk X2F0LCBpZDIsIG5hbWUpCisgIFZBTFVFUworICAoJ1szLDQpJywgZGF0ZXJhbmdlKCcyMDA1LTAx LTAxJywgJzIwMTAtMDEtMDEnKSwgJ1s5LDEwKScsICdiYXIzJyk7CitFUlJPUjogIGNvbmZsaWN0 aW5nIGtleSB2YWx1ZSB2aW9sYXRlcyBleGNsdXNpb24gY29uc3RyYWludCAidGVtcG9yYWwzX3Vu aXEiCitERVRBSUw6ICBLZXkgKGlkMiwgdmFsaWRfYXQpPShbOSwxMCksIFsyMDA1LTAxLTAxLDIw MTAtMDEtMDEpKSBjb25mbGljdHMgd2l0aCBleGlzdGluZyBrZXkgKGlkMiwgdmFsaWRfYXQpPShb OSwxMCksIFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEpKS4KIERST1AgVEFCTEUgdGVtcG9yYWwzOwog LS0KIC0tIHRlc3QgY2hhbmdpbmcgdGhlIFBLJ3MgZGVwZW5kZW5jaWVzCkBAIC05MjAsMjYgKzk1 MCw0MyBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZCAoaWQsIHZhbGlkX2F0LCBu YW1lKSBWQUxVRVMKICAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAy LTAxJyksICdvbmUnKSwKICAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAw LTAzLTAxJyksICdvbmUnKSwKICAgKCdbMyw0KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcy MDEwLTAxLTAxJyksICd0aHJlZScpOwotU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci0gIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IG5hbWUgIAotLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KLSBb MSwyKSB8IFsyMDAwLTAxLTAxLDIwMDAtMDItMDEpIHwgb25lCi0gWzEsMikgfCBbMjAwMC0wMi0w MSwyMDAwLTAzLTAxKSB8IG9uZQotIFszLDQpIHwgWzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0 aHJlZQorU0VMRUNUIHRhYmxlb2lkOjpyZWdjbGFzcywgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyB0YWJsZW9pZCB8ICBpZCAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCBuYW1lICAKKy0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0KKyB0cDEgICAgICB8IFsxLDIpIHwgWzIwMDAtMDEtMDEsMjAw MC0wMi0wMSkgfCBvbmUKKyB0cDEgICAgICB8IFsxLDIpIHwgWzIwMDAtMDItMDEsMjAwMC0wMy0w MSkgfCBvbmUKKyB0cDIgICAgICB8IFszLDQpIHwgWzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0 aHJlZQogKDMgcm93cykKIAotU0VMRUNUICogRlJPTSB0cDEgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OwotICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBuYW1lIAotLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQotIFsxLDIpIHwgWzIwMDAtMDEtMDEsMjAwMC0w Mi0wMSkgfCBvbmUKLSBbMSwyKSB8IFsyMDAwLTAyLTAxLDIwMDAtMDMtMDEpIHwgb25lCi0oMiBy b3dzKQotCi1TRUxFQ1QgKiBGUk9NIHRwMiBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci0gIGlkICAg fCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgIAotLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0KLSBbMyw0KSB8IFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpIHwg dGhyZWUKLSgxIHJvdykKK1VQREFURSAgdGVtcG9yYWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0xNScgVE8gJzIwMDAtMDItMTUnCisgIFNFVCBu YW1lID0gJ29uZTInCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSAgdGVtcG9yYWxfcGFy dGl0aW9uZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMi0yMCcgVE8g JzIwMDAtMDItMjUnCisgIFNFVCBpZCA9ICdbNCw1KScKKyAgV0hFUkUgbmFtZSA9ICdvbmUnOwor VVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScKKyAgU0VUIGlkID0gJ1syLDMpJworICBX SEVSRSBuYW1lID0gJ3RocmVlJzsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDEtMTUnIFRPICcyMDAwLTAyLTE1 JworICBXSEVSRSBpZCA9ICdbMyw0KSc7CitTRUxFQ1QgdGFibGVvaWQ6OnJlZ2NsYXNzLCAqIEZS T00gdGVtcG9yYWxfcGFydGl0aW9uZWQgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworIHRhYmxlb2lk IHwgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgIAorLS0tLS0tLS0tLSst LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQorIHRwMSAgICAgIHwgWzEs MikgfCBbMjAwMC0wMS0wMSwyMDAwLTAxLTE1KSB8IG9uZQorIHRwMSAgICAgIHwgWzEsMikgfCBb MjAwMC0wMS0xNSwyMDAwLTAyLTAxKSB8IG9uZTIKKyB0cDEgICAgICB8IFsxLDIpIHwgWzIwMDAt MDItMDEsMjAwMC0wMi0xNSkgfCBvbmUyCisgdHAxICAgICAgfCBbMSwyKSB8IFsyMDAwLTAyLTE1 LDIwMDAtMDItMjApIHwgb25lCisgdHAxICAgICAgfCBbMSwyKSB8IFsyMDAwLTAyLTI1LDIwMDAt MDMtMDEpIHwgb25lCisgdHAxICAgICAgfCBbMiwzKSB8IFsyMDAyLTAxLTAxLDIwMDMtMDEtMDEp IHwgdGhyZWUKKyB0cDIgICAgICB8IFszLDQpIHwgWzIwMDAtMDEtMDEsMjAwMC0wMS0xNSkgfCB0 aHJlZQorIHRwMiAgICAgIHwgWzMsNCkgfCBbMjAwMC0wMi0xNSwyMDAyLTAxLTAxKSB8IHRocmVl CisgdHAyICAgICAgfCBbMyw0KSB8IFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEpIHwgdGhyZWUKKyB0 cDIgICAgICB8IFs0LDUpIHwgWzIwMDAtMDItMjAsMjAwMC0wMi0yNSkgfCBvbmUKKygxMCByb3dz KQogCiBEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkOwogLS0gdGVtcG9yYWwgVU5JUVVF OgpAQCAtOTU1LDI2ICsxMDAyLDQzIEBAIElOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUwogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAw LTAxLTAxJywgJzIwMDAtMDItMDEnKSwgJ29uZScpLAogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcy MDAwLTAyLTAxJywgJzIwMDAtMDMtMDEnKSwgJ29uZScpLAogICAoJ1szLDQpJywgZGF0ZXJhbmdl KCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ3RocmVlJyk7Ci1TRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3BhcnRpdGlvbmVkIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKLSAgaWQgICB8ICAgICAg ICB2YWxpZF9hdCAgICAgICAgIHwgbmFtZSAgCi0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLQotIFsxLDIpIHwgWzIwMDAtMDEtMDEsMjAwMC0wMi0wMSkgfCBvbmUKLSBb MSwyKSB8IFsyMDAwLTAyLTAxLDIwMDAtMDMtMDEpIHwgb25lCi0gWzMsNCkgfCBbMjAwMC0wMS0w MSwyMDEwLTAxLTAxKSB8IHRocmVlCitTRUxFQ1QgdGFibGVvaWQ6OnJlZ2NsYXNzLCAqIEZST00g dGVtcG9yYWxfcGFydGl0aW9uZWQgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworIHRhYmxlb2lkIHwg IGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgIAorLS0tLS0tLS0tLSstLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQorIHRwMSAgICAgIHwgWzEsMikg fCBbMjAwMC0wMS0wMSwyMDAwLTAyLTAxKSB8IG9uZQorIHRwMSAgICAgIHwgWzEsMikgfCBbMjAw MC0wMi0wMSwyMDAwLTAzLTAxKSB8IG9uZQorIHRwMiAgICAgIHwgWzMsNCkgfCBbMjAwMC0wMS0w MSwyMDEwLTAxLTAxKSB8IHRocmVlCiAoMyByb3dzKQogCi1TRUxFQ1QgKiBGUk9NIHRwMSBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7Ci0gIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5h bWUgCi0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tCi0gWzEsMikgfCBb MjAwMC0wMS0wMSwyMDAwLTAyLTAxKSB8IG9uZQotIFsxLDIpIHwgWzIwMDAtMDItMDEsMjAwMC0w My0wMSkgfCBvbmUKLSgyIHJvd3MpCi0KLVNFTEVDVCAqIEZST00gdHAyIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKLSAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgbmFtZSAgCi0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQotIFszLDQpIHwgWzIwMDAtMDEt MDEsMjAxMC0wMS0wMSkgfCB0aHJlZQotKDEgcm93KQorVVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRp b25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTE1JyBUTyAnMjAw MC0wMi0xNScKKyAgU0VUIG5hbWUgPSAnb25lMicKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworVVBE QVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDAwLTAyLTIwJyBUTyAnMjAwMC0wMi0yNScKKyAgU0VUIGlkID0gJ1s0LDUpJworICBXSEVS RSBuYW1lID0gJ29uZSc7CitVUERBVEUgIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDItMDEtMDEnIFRPICcyMDAzLTAxLTAxJworICBTRVQg aWQgPSAnWzIsMyknCisgIFdIRVJFIG5hbWUgPSAndGhyZWUnOworREVMRVRFIEZST00gdGVtcG9y YWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0x NScgVE8gJzIwMDAtMDItMTUnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK1NFTEVDVCB0YWJsZW9p ZDo6cmVnY2xhc3MsICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgdGFibGVvaWQgfCAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgbmFt ZSAgCistLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t CisgdHAxICAgICAgfCBbMSwyKSB8IFsyMDAwLTAxLTAxLDIwMDAtMDEtMTUpIHwgb25lCisgdHAx ICAgICAgfCBbMSwyKSB8IFsyMDAwLTAxLTE1LDIwMDAtMDItMDEpIHwgb25lMgorIHRwMSAgICAg IHwgWzEsMikgfCBbMjAwMC0wMi0wMSwyMDAwLTAyLTE1KSB8IG9uZTIKKyB0cDEgICAgICB8IFsx LDIpIHwgWzIwMDAtMDItMTUsMjAwMC0wMi0yMCkgfCBvbmUKKyB0cDEgICAgICB8IFsxLDIpIHwg WzIwMDAtMDItMjUsMjAwMC0wMy0wMSkgfCBvbmUKKyB0cDEgICAgICB8IFsyLDMpIHwgWzIwMDIt MDEtMDEsMjAwMy0wMS0wMSkgfCB0aHJlZQorIHRwMiAgICAgIHwgWzMsNCkgfCBbMjAwMC0wMS0w MSwyMDAwLTAxLTE1KSB8IHRocmVlCisgdHAyICAgICAgfCBbMyw0KSB8IFsyMDAwLTAyLTE1LDIw MDItMDEtMDEpIHwgdGhyZWUKKyB0cDIgICAgICB8IFszLDQpIHwgWzIwMDMtMDEtMDEsMjAxMC0w MS0wMSkgfCB0aHJlZQorIHRwMiAgICAgIHwgWzQsNSkgfCBbMjAwMC0wMi0yMCwyMDAwLTAyLTI1 KSB8IG9uZQorKDEwIHJvd3MpCiAKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQ7CiAt LSBBTFRFUiBUQUJMRSBSRVBMSUNBIElERU5USVRZCkBAIC0xNzU1LDYgKzE4MTksMzMgQEAgVVBE QVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknCiAgIFdIRVJFIGlkID0gJ1s1LDYpJyBB TkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOwogRVJS T1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ybmciIHZpb2xhdGVzIGZv cmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJybmdfZmsiIG9uIHRhYmxlICJ0 ZW1wb3JhbF9ma19ybmcycm5nIgogREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwg WzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAi dGVtcG9yYWxfZmtfcm5nMnJuZyIuCistLSBjaGFuZ2luZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBp cyBva2F5OgorVVBEQVRFIHRlbXBvcmFsX3JuZworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKKyAgU0VUIGlkID0gJ1s3LDgpJworICBX SEVSRSBpZCA9ICdbNSw2KSc7CistLSBjaGFuZ2luZyBqdXN0IGEgcGFydCBmYWlsczoKK1VQREFU RSB0ZW1wb3JhbF9ybmcKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0w NScgVE8gJzIwMTgtMDEtMTAnCisgIFNFVCBpZCA9ICdbNyw4KScKKyAgV0hFUkUgaWQgPSAnWzUs NiknOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ybmciIHZp b2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJybmdfZmsiIG9u IHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycm5nIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQp PShbNSw2KSwgWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJv bSB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIuCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Ju ZyBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KKyBbNSw2KSB8IFsyMDE2LTAyLTAxLDIwMTYtMDMtMDEpCisgWzUsNikgfCBb MjAxOC0wMS0wMSwyMDE4LTAxLTAyKQorIFs1LDYpIHwgWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSkK KyBbNyw4KSB8IFsyMDE4LTAxLTAyLDIwMTgtMDEtMDMpCisoNCByb3dzKQorCitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgaW4gKCdbMyw0KScpIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lk IAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzMsNCkg fCBbMjAxOC0wMS0wNSwyMDE4LTAxLTEwKSB8IFs1LDYpCisoMSByb3cpCisKIC0tIHRoZW4gZGVs ZXRlIHRoZSBvYmplY3RpbmcgRksgcmVjb3JkIGFuZCB0aGUgc2FtZSBQSyB1cGRhdGUgc3VjY2Vl ZHM6CiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1szLDQpJzsK IFVQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDE2LTAxLTAx JywgJzIwMTYtMDItMDEnKQpAQCAtMTgwMiw2ICsxODkzLDQyIEBAIEJFR0lOOwogQ09NTUlUOwog RVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ybmciIHZpb2xhdGVz IGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJybmdfZmsiIG9uIHRhYmxl ICJ0ZW1wb3JhbF9ma19ybmcycm5nIgogREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2 KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJs ZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIuCistLSBkZWxldGluZyBhbiB1bnJlZmVyZW5jZWQgcGFy dCBpcyBva2F5OgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1dIRVJFIGlkID0gJ1s1LDYp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkIGluICgnWzUsNiknLCAnWzcs OCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIFs1LDYpIHwgWzIwMTgt MDEtMDEsMjAxOC0wMS0wMikKKyBbNSw2KSB8IFsyMDE4LTAxLTAzLDIwMTgtMDItMDEpCisoMiBy b3dzKQorCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgaW4gKCdb Myw0KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAg ICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tCisgWzMsNCkgfCBbMjAxOC0wMS0wNSwyMDE4LTAxLTEwKSB8IFs1LDYpCisoMSBy b3cpCisKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9y YWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAx OC0wMS0xMCcKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBv biB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0 ZW1wb3JhbF9ma19ybmcycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIKK0RF VEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAzLDIwMTgtMDItMDEp KSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJybmciLgor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScp IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAg IAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgWzUsNikgfCBbMjAxOC0wMS0w MSwyMDE4LTAxLTAyKQorIFs1LDYpIHwgWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSkKKygyIHJvd3Mp CisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQp JykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAxLTA1LDIwMTgtMDEtMTApIHwgWzUsNikKKygxIHJvdykK KwogLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBL IGRlbGV0ZSBzdWNjZWVkczoKIERFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUg aWQgPSAnWzMsNCknOwogREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYp JyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOwpA QCAtMTgxOCwxMSArMTk0NSwxMiBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAg IE9OIERFTEVURSBSRVNUUklDVDsKIEVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gREVMRVRFIGFjdGlv biBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKIC0tCi0tLSB0ZXN0IE9O IFVQREFURS9ERUxFVEUgb3B0aW9ucworLS0gcm5nMnJuZyB0ZXN0IE9OIFVQREFURS9ERUxFVEUg b3B0aW9ucwogLS0KIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKK1RSVU5D QVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIElOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywg ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCkBA IC0xODMwLDggKzE5NTgsOSBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAg T04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7CiBFUlJPUjogIHVuc3VwcG9ydGVk IE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9E CiAtLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVMTAotSU5TRVJUIElOVE8gdGVt cG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s5LDEwKScsIGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s5LDEwKScpOworVFJVTkNBVEUgdGVtcG9yYWxf cm5nLCB0ZW1wb3JhbF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwg dmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQs IHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5n CiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCkBAIC0xODM5LDkgKzE5NjgsMTAgQEAgQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZwogICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBV UERBVEUgU0VUIE5VTEw7CiBFUlJPUjogIHVuc3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9y IGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9ECiAtLSB0ZXN0IEZLIHJlZmVyZW5j ZWQgdXBkYXRlcyBTRVQgREVGQVVMVAorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9m a19ybmcycm5nOwogSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1stMSwtMV0nLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkpOwotSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxMiwxMyknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKLUlOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTIsMTMpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3JuZzJybmcKICAgQUxURVIgQ09MVU1OIHBhcmVudF9pZCBTRVQgREVGQVVMVCAnWy0xLC0x XScsCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKQEAgLTIyMTEsNiAr MjM0MSwyMiBAQCBVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbNyw4KScKICAgV0hF UkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJykpOwogRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9u IHRhYmxlICJ0ZW1wb3JhbF9tbHRybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQg InRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19tbHRy bmcybWx0cm5nIgogREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwge1syMDE4LTAx LTAxLDIwMTgtMDItMDEpfSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3Jh bF9ma19tbHRybmcybWx0cm5nIi4KKy0tIGNoYW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlz IG9rYXk6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDInLCAnMjAxOC0wMS0wMycpKSkK KyAgU0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBjaGFuZ2luZyBq dXN0IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wNScsICcyMDE4 LTAxLTEwJykpKQorICBTRVQgaWQgPSAnWzcsOCknCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0VS Uk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfbWx0cm5nIiB2aW9sYXRl cyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nX2ZrIiBv biB0YWJsZSAidGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZh bGlkX2F0KT0oWzUsNiksIHtbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKSxbMjAxOC0wMS0wMywyMDE4 LTAyLTAxKX0pIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfbWx0 cm5nMm1sdHJuZyIuCistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQg dGhlIHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfbWx0 cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNF VCBpZCA9ICdbNyw4KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJykpOwogLS0KIC0t IHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFJFU1RSSUNUCiAtLQpAQCAtMjI1Myw2ICsyMzk5 LDE5IEBAIEJFR0lOOwogQ09NTUlUOwogRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxl ICJ0ZW1wb3JhbF9tbHRybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmdfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19tbHRybmcybWx0 cm5nIgogREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwge1syMDE4LTAxLTAxLDIw MTgtMDItMDEpfSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIi4KKy0tIGRlbGV0aW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChk YXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDInLCAnMjAxOC0wMS0wMycpKSkKK1dI RVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRF IEZST00gdGVtcG9yYWxfbWx0cm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAnKSkpCitXSEVSRSBpZCA9 ICdbNSw2KSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX21s dHJuZyIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfbWx0cm5n Mm1sdHJuZ19mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmciCitERVRBSUw6 ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCB7WzIwMTgtMDEtMDEsMjAxOC0wMS0wMiksWzIw MTgtMDEtMDMsMjAxOC0wMi0wMSl9KSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRl bXBvcmFsX2ZrX21sdHJuZzJtbHRybmciLgorLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBG SyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRl bXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00g dGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpKTsKIC0tCiAtLSBG SyBiZXR3ZWVuIHBhcnRpdGlvbmVkIHRhYmxlczogcmFuZ2VzCiAtLQpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVsZSBiL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxs ZWxfc2NoZWR1bGUKaW5kZXggYTBmNWZhYjBmNWQuLjg0NDM1MDI2MjE3IDEwMDY0NAotLS0gYS9z cmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv cGFyYWxsZWxfc2NoZWR1bGUKQEAgLTQ4LDcgKzQ4LDcgQEAgdGVzdDogY3JlYXRlX2luZGV4IGNy ZWF0ZV9pbmRleF9zcGdpc3QgY3JlYXRlX3ZpZXcgaW5kZXhfaW5jbHVkaW5nIGluZGV4X2luY2x1 ZGkKICMgLS0tLS0tLS0tLQogIyBBbm90aGVyIGdyb3VwIG9mIHBhcmFsbGVsIHRlc3RzCiAjIC0t LS0tLS0tLS0KLXRlc3Q6IGNyZWF0ZV9hZ2dyZWdhdGUgY3JlYXRlX2Z1bmN0aW9uX3NxbCBjcmVh dGVfY2FzdCBjb25zdHJhaW50cyB0cmlnZ2VycyBzZWxlY3QgaW5oZXJpdCB0eXBlZF90YWJsZSB2 YWN1dW0gZHJvcF9pZl9leGlzdHMgdXBkYXRhYmxlX3ZpZXdzIHJvbGVhdHRyaWJ1dGVzIGNyZWF0 ZV9hbSBoYXNoX2Z1bmMgZXJyb3JzIGluZmluaXRlX3JlY3Vyc2UKK3Rlc3Q6IGNyZWF0ZV9hZ2dy ZWdhdGUgY3JlYXRlX2Z1bmN0aW9uX3NxbCBjcmVhdGVfY2FzdCBjb25zdHJhaW50cyB0cmlnZ2Vy cyBzZWxlY3QgaW5oZXJpdCB0eXBlZF90YWJsZSB2YWN1dW0gZHJvcF9pZl9leGlzdHMgdXBkYXRh YmxlX3ZpZXdzIHJvbGVhdHRyaWJ1dGVzIGNyZWF0ZV9hbSBoYXNoX2Z1bmMgZXJyb3JzIGluZmlu aXRlX3JlY3Vyc2UgZm9yX3BvcnRpb25fb2YKIAogIyAtLS0tLS0tLS0tCiAjIHNhbml0eV9jaGVj ayBkb2VzIGEgdmFjdXVtLCBhZmZlY3RpbmcgdGhlIHNvcnQgb3JkZXIgb2YgU0VMRUNUICoKZGlm ZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29mLnNxbCBiL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29mLnNxbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMC4uMGU2YzJkYjVhNzUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVz dC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwKQEAgLTAsMCArMSw5MDUgQEAKKy0tIFRl c3RzIGZvciBVUERBVEUvREVMRVRFIEZPUiBQT1JUSU9OIE9GCisKK1NFVCBkYXRlc3R5bGUgVE8g SVNPLCBZTUQ7CisKKy0tIFdvcmtzIG9uIG5vbi1QSyBjb2x1bW5zCitDUkVBVEUgVEFCTEUgZm9y X3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdl LAorICBuYW1lIHRleHQgTk9UIE5VTEwKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90 ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAy LDIwMjAtMDEtMDEpJywgJ29uZScpOworCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyAnMjAxOS0wMS0wMScK KyAgU0VUIG5hbWUgPSAnb25lXjEnOworCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMTUnIFRPICcyMDE5LTAx LTIwJzsKKworLS0gV2l0aCBhIHRhYmxlIGFsaWFzIHdpdGggQVMKKworVVBEQVRFIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMi0wMScg VE8gJzIwMTktMDItMDMnIEFTIHQKKyAgU0VUIG5hbWUgPSAnb25lXjInOworCitERUxFVEUgRlJP TSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDItMDMnIFRPICcyMDE5LTAyLTA0JyBBUyB0OworCistLSBXaXRoIGEgdGFibGUgYWxpYXMg d2l0aG91dCBBUworCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAyLTA0JyBUTyAnMjAxOS0wMi0wNScgdAorICBTRVQgbmFt ZSA9ICdvbmVeMyc7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMi0wNScgVE8gJzIwMTktMDItMDYnIHQ7CisK Ky0tIFVQREFURSB3aXRoIEZST00KKworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMy0wMScgdG8gJzIwMTktMDMtMDInCisg IFNFVCBuYW1lID0gJ29uZV40JworICBGUk9NIChTRUxFQ1QgJ1sxLDIpJzo6aW50NHJhbmdlKSBB UyB0MihpZCkKKyAgV0hFUkUgZm9yX3BvcnRpb25fb2ZfdGVzdC5pZCA9IHQyLmlkOworCistLSBE RUxFVEUgd2l0aCBVU0lORworCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDMtMDInIFRPICcyMDE5LTAzLTAzJwor ICBVU0lORyAoU0VMRUNUICdbMSwyKSc6OmludDRyYW5nZSkgQVMgdDIoaWQpCisgIFdIRVJFIGZv cl9wb3J0aW9uX29mX3Rlc3QuaWQgPSB0Mi5pZDsKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0gV29ya3Mgb24gbW9yZSB0aGFu IG9uZSByYW5nZQorRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0OworQ1JFQVRFIFRBQkxF IGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkMV9hdCBkYXRl cmFuZ2UsCisgIHZhbGlkMl9hdCBkYXRlcmFuZ2UsCisgIG5hbWUgdGV4dCBOT1QgTlVMTAorKTsK K0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZDFfYXQsIHZhbGlkMl9h dCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAn WzIwMTUtMDEtMDEsMjAyNS0wMS0wMSknLCAnb25lJyk7CisKK1VQREFURSBmb3JfcG9ydGlvbl9v Zl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkMV9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyBO VUxMCisgIFNFVCBuYW1lID0gJ2Zvbyc7CisgIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2YWxpZDJfYXQ7CisKK1VQREFURSBmb3JfcG9y dGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkMl9hdCBGUk9NICcyMDE4LTAxLTE1 JyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2Jhcic7CisgIFNFTEVDVCAqIEZST00gZm9yX3BvcnRp b25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2YWxpZDJfYXQ7CisKK0RFTEVURSBG Uk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWQxX2F0IEZST00g JzIwMTgtMDEtMjAnIFRPIE5VTEw7CisgIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVz dCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2YWxpZDJfYXQ7CisKK0RFTEVURSBGUk9NIGZvcl9w b3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWQyX2F0IEZST00gJzIwMTgtMDEt MjAnIFRPIE5VTEw7CisgIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBC WSBpZCwgdmFsaWQxX2F0LCB2YWxpZDJfYXQ7CisKKy0tIFRlc3Qgd2l0aCBOVUxMcyBpbiB0aGUg c2NhbGFyL3JhbmdlIGtleSBjb2x1bW5zLgorLS0gVGhpcyB3b24ndCBoYXBwZW4gaWYgdGhlcmUg aXMgYSBQUklNQVJZIEtFWSBvciBVTklRVUUgY29uc3RyYWludAorLS0gYnV0IEZPUiBQT1JUSU9O IE9GIHNob3VsZG4ndCByZXF1aXJlIHRoYXQuCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rl c3Q7CitDUkVBVEUgVU5MT0dHRUQgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQg SU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAo J1sxLDIpJywgTlVMTCwgJzEgbnVsbCcpLAorICAoJ1sxLDIpJywgJygsKScsICcxIHVuYm91bmRl ZCcpLAorICAoJ1sxLDIpJywgJ2VtcHR5JywgJzEgZW1wdHknKSwKKyAgKE5VTEwsIE5VTEwsIE5V TEwpLAorICAoTlVMTCwgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMTktMDEtMDEnKSwgJ251 bGwga2V5Jyk7CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdOVUxMIHRvIE5VTEwnOwor U0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0OworCistLQorLS0gVVBEQVRFIHRlc3Rz CistLQorCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5n ZSBOT1QgTlVMTCwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlIE5PVCBOVUxMLAorICBuYW1lIHRleHQg Tk9UIE5VTEwsCisgIENPTlNUUkFJTlQgZm9yX3BvcnRpb25fb2ZfcGsgUFJJTUFSWSBLRVkgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9u X29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgt MDEtMDIsMjAxOC0wMi0wMyknLCAnb25lJyksCisgICgnWzEsMiknLCAnWzIwMTgtMDItMDMsMjAx OC0wMy0wMyknLCAnb25lJyksCisgICgnWzEsMiknLCAnWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCkn LCAnb25lJyksCisgICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSknLCAndHdvJyks CisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDEsKScsICd0aHJlZScpLAorICAoJ1s0LDUpJywgJygs MjAxOC0wNC0wMSknLCAnZm91cicpLAorICAoJ1s1LDYpJywgJygsKScsICdmaXZlJykKKyAgOwor XHNldCBRVUlFVCBmYWxzZQorCistLSBVcGRhdGluZyB3aXRoIGEgbWlzc2luZyBjb2x1bW4gZmFp bHMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIGludmFsaWRf YXQgRlJPTSAnMjAxOC0wNi0wMScgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdmb28nCisgIFdIRVJF IGlkID0gJ1s1LDYpJzsKKworLS0gVXBkYXRpbmcgdGhlIHJhbmdlIGZhaWxzCitVUERBVEUgZm9y X3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2 LTAxJyBUTyBOVUxMCisgIFNFVCB2YWxpZF9hdCA9ICdbMTk5MC0wMS0wMSwxOTk5LTAxLTAxKScK KyAgV0hFUkUgaWQgPSAnWzUsNiknOworCistLSBUaGUgd3JvbmcgdHlwZSBmYWlscworVVBEQVRF IGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAxIFRP IDQKKyAgU0VUIG5hbWUgPSAnbm9wZScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworCistLSBVcGRh dGluZyB3aXRoIHRpbWVzdGFtcHMgcmV2ZXJzZWQgZmFpbHMKK1VQREFURSBmb3JfcG9ydGlvbl9v Zl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDYtMDEnIFRPICcy MDE4LTAxLTAxJworICBTRVQgbmFtZSA9ICd0aHJlZV4xJworICBXSEVSRSBpZCA9ICdbMyw0KSc7 CisKKy0tIFVwZGF0aW5nIHdpdGggYSBzdWJxdWVyeSBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAoU0VMRUNUICcyMDE4LTAx LTAxJykgVE8gJzIwMTgtMDYtMDEnCisgIFNFVCBuYW1lID0gJ25vcGUnCisgIFdIRVJFIGlkID0g J1szLDQpJzsKKworLS0gVXBkYXRpbmcgd2l0aCBhIGNvbHVtbiBmYWlscworVVBEQVRFIGZvcl9w b3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBsb3dlcih2YWxp ZF9hdCkgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdub3BlJworICBXSEVSRSBpZCA9ICdbMyw0KSc7 CisKKy0tIFVwZGF0aW5nIHdpdGggdGltZXN0YW1wcyBlcXVhbCBkb2VzIG5vdGhpbmcKK1VQREFU RSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTgtMDQtMDEnIFRPICcyMDE4LTA0LTAxJworICBTRVQgbmFtZSA9ICd0aHJlZV4wJworICBXSEVS RSBpZCA9ICdbMyw0KSc7CisKKy0tIFVwZGF0aW5nIGEgZmluaXRlL29wZW4gcG9ydGlvbiB3aXRo IGEgZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFNFVCBuYW1l ID0gJ3RocmVlXjEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0gVXBkYXRpbmcgYSBmaW5p dGUvb3BlbiBwb3J0aW9uIHdpdGggYW4gb3Blbi9maW5pdGUgdGFyZ2V0CitVUERBVEUgZm9yX3Bv cnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIw MTgtMDMtMDEnCisgIFNFVCBuYW1lID0gJ3RocmVlXjInCisgIFdIRVJFIGlkID0gJ1szLDQpJzsK KworLS0gVXBkYXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGFuIG9wZW4vZmluaXRl IHRhcmdldAorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAyLTAxJworICBTRVQgbmFtZSA9ICdmb3VyXjEnCisg IFdIRVJFIGlkID0gJ1s0LDUpJzsKKworLS0gVXBkYXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlv biB3aXRoIGEgZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE3LTAxLTAxJyBUTyBOVUxMCisgIFNF VCBuYW1lID0gJ2ZvdXJeMicKKyAgV0hFUkUgaWQgPSAnWzQsNSknOworCistLSBVcGRhdGluZyBh IGZpbml0ZS9maW5pdGUgcG9ydGlvbiB3aXRoIGFuIGV4YWN0IGZpdAorVVBEQVRFIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxNy0wMS0wMScg VE8gJzIwMTgtMDItMDEnCisgIFNFVCBuYW1lID0gJ2ZvdXJeMycKKyAgV0hFUkUgaWQgPSAnWzQs NSknOworCistLSBVcGRhdGluZyBhbiBlbmNsb3NlZCBzcGFuCitVUERBVEUgZm9yX3BvcnRpb25f b2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAorICBT RVQgbmFtZSA9ICd0d29eMicKKyAgV0hFUkUgaWQgPSAnWzIsMyknOworCistLSBVcGRhdGluZyBh biBvcGVuL29wZW4gcG9ydGlvbiB3aXRoIGEgZmluaXRlL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgt MDEtMDEnIFRPICcyMDE5LTAxLTAxJworICBTRVQgbmFtZSA9ICdmaXZlXjEnCisgIFdIRVJFIGlk ID0gJ1s1LDYpJzsKKworLS0gVXBkYXRpbmcgYW4gZW5jbG9zZWQgc3BhbiB3aXRoIHNlcGFyYXRl IHByb3RydWRpbmcgc3BhbnMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTctMDEtMDEnIFRPICcyMDIwLTAxLTAxJworICBTRVQg bmFtZSA9ICdmaXZlXjInCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKKworLS0gVXBkYXRpbmcgbXVs dGlwbGUgZW5jbG9zZWQgc3BhbnMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ29uZV4y JworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKKy0tIFVwZGF0aW5nIHdpdGggYSBkaXJlY3QgdGFy Z2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCAoZGF0ZXJhbmdlKCcyMDE4LTAzLTEwJywgJzIwMTgtMDMtMTcnKSkKKyAgU0VUIG5hbWUgPSAn b25lXjMnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gVXBkYXRpbmcgdGhlIG5vbi1yYW5n ZSBwYXJ0IG9mIHRoZSBQSzoKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDItMTUnIFRPIE5VTEwKKyAgU0VUIGlkID0gJ1s2 LDcpJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKKy0tIFVQREFURSB3aXRoIG5vIFdIRVJFIGNs YXVzZQorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAzMC0wMS0wMScgVE8gTlVMTAorICBTRVQgbmFtZSA9IG5hbWUgfHwgJyonOwor CitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworXHNldCBRVUlFVCB0cnVlCisKKy0tIFVwZGF0aW5nIHdpdGggYSBzaGlmdC9yZWR1Y2UgY29u ZmxpY3QKKy0tIChyZXF1aXJlcyBhIHRzcmFuZ2UgY29sdW1uKQorQ1JFQVRFIFVOTE9HR0VEIFRB QkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCB0 c3JhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0 MiAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAwMC0wMS0wMSwy MDIwLTAxLTAxKScsICdvbmUnKTsKKy0tIHVwZGF0ZXMgWzIwMTEtMDMtMDEgMDE6MDI6MDAsIDIw MTItMDEtMDEpIChub3RlIDIgbWludXRlcykKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0Mgor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdAorICAgIEZST00gJzIwMTEtMDMtMDEnOjp0aW1lc3Rh bXAgKyBJTlRFUlZBTCAnMTowMjowMycgSE9VUiBUTyBNSU5VVEUKKyAgICBUTyAnMjAxMi0wMS0w MScKKyAgU0VUIG5hbWUgPSAnb25lXjEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gVE8g aXMgdXNlZCBmb3IgdGhlIGJvdW5kIGJ1dCBub3QgdGhlIElOVEVSVkFMOgorLS0gc3ludGF4IGVy cm9yCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQKKyAgICBGUk9NICcyMDEzLTAzLTAxJzo6dGltZXN0YW1wICsgSU5URVJWQUwgJzE6MDI6MDMn IEhPVVIKKyAgICBUTyAnMjAxNC0wMS0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjInCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworLS0gYWRkaW5nIHBhcmVucyBmaXhlcyBpdAorLS0gdXBkYXRlcyBb MjAxNS0wMy0wMSAwMTowMDowMCwgMjAxNi0wMS0wMSkgKG5vIG1pbnV0ZXMpCitVUERBVEUgZm9y X3BvcnRpb25fb2ZfdGVzdDIKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQKKyAgICBGUk9NICgn MjAxNS0wMy0wMSc6OnRpbWVzdGFtcCArIElOVEVSVkFMICcxOjAyOjAzJyBIT1VSKQorICAgIFRP ICcyMDE2LTAxLTAxJworICBTRVQgbmFtZSA9ICdvbmVeMycKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworCitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QyIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK0RST1AgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDI7CisKKy0tIFVQREFURSBGT1Ig UE9SVElPTiBPRiBpbiBhIENURToKKworLS0gVmlzaWJsZSB0byBTRUxFQ1Q6CitJTlNFUlQgSU5U TyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sx MCwxMSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAndGVuJyk7CitXSVRIIHVwZGF0ZV9h cHIgQVMgKAorICBVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICAgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTgtMDQtMDEnIFRPICcyMDE4LTA1LTAxJworICAgIFNFVCBuYW1l ID0gJ0FwciAyMDE4JworICAgIFdIRVJFIGlkID0gJ1sxMCwxMSknCisgICAgUkVUVVJOSU5HIGlk LCB2YWxpZF9hdCwgbmFtZQorKQorU0VMRUNUICoKKyAgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0 IEFTIHQsIHVwZGF0ZV9hcHIKKyAgV0hFUkUgdC5pZCA9IHVwZGF0ZV9hcHIuaWQ7CitTRUxFQ1Qg KiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgV0hFUkUgaWQgPSAnWzEwLDExKSc7CisKKy0tIE5v dCB2aXNpYmxlIHRvIFVQREFURToKKy0tIFR1cGxlcyB1cGRhdGVkL2luc2VydGVkIHdpdGhpbiB0 aGUgQ1RFIGFyZSBub3QgdmlzaWJsZSB0byB0aGUgbWFpbiBxdWVyeSB5ZXQsCistLSBidXQgbmVp dGhlciBhcmUgb2xkIHR1cGxlcyB0aGUgQ1RFIGNoYW5nZWQ6CitJTlNFUlQgSU5UTyBmb3JfcG9y dGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxMSwxMiknLCAn WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAnZWxldmVuJyk7CitXSVRIIHVwZGF0ZV9hcHIgQVMg KAorICBVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICAgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTgtMDQtMDEnIFRPICcyMDE4LTA1LTAxJworICAgIFNFVCBuYW1lID0gJ0Fw ciAyMDE4JworICAgIFdIRVJFIGlkID0gJ1sxMSwxMiknCisgICAgUkVUVVJOSU5HIGlkLCB2YWxp ZF9hdCwgbmFtZQorKQorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNS0wMScgVE8gJzIwMTgtMDYtMDEnCisgIEFTIHQKKyAg U0VUIG5hbWUgPSAnTWF5IDIwMTgnCisgIEZST00gdXBkYXRlX2FwciBBUyBqCisgIFdIRVJFIHQu aWQgPSBqLmlkOworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0g J1sxMSwxMiknOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCBJTiAo J1sxMCwxMSknLCAnWzExLDEyKScpOworCistLSBVUERBVEUgRk9SIFBPUlRJT04gT0YgaW4gYSBQ TC9wZ1NRTCBmdW5jdGlvbgorSU5TRVJUIElOVE8gZm9yX3BvcnRpb25fb2ZfdGVzdCAoaWQsIHZh bGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMTAsMTEpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEt MDEpJywgJ3RlbicpOworQ1JFQVRFIEZVTkNUSU9OIGZwb191cGRhdGUoX2lkIGludDRyYW5nZSwg X3RhcmdldF9mcm9tIGRhdGUsIF90YXJnZXRfdGlsIGRhdGUpCitSRVRVUk5TIHZvaWQgTEFOR1VB R0UgcGxwZ3NxbCBBUworJCQKK0JFR0lOCisgIFVQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0Cisg ICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAkMiBUTyAkMworICAgIFNFVCBuYW1lID0g Y29uY2F0KF90YXJnZXRfZnJvbTo6dGV4dCwgJyB0byAnLCBfdGFyZ2V0X3RpbDo6dGV4dCkKKyAg ICBXSEVSRSBpZCA9ICQxOworRU5EOworJCQ7CitTRUxFQ1QgZnBvX3VwZGF0ZSgnWzEwLDExKScs ICcyMDE1LTAxLTAxJywgJzIwMTktMDEtMDEnKTsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdCBXSEVSRSBpZCA9ICdbMTAsMTEpJzsKKworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9v Zl90ZXN0OworCistLQorLS0gREVMRVRFIHRlc3RzCistLQorCitDUkVBVEUgVEFCTEUgZm9yX3Bv cnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSBOT1QgTlVMTCwKKyAgdmFsaWRfYXQgZGF0 ZXJhbmdlIE5PVCBOVUxMLAorICBuYW1lIHRleHQgTk9UIE5VTEwsCisgIENPTlNUUkFJTlQgZm9y X3BvcnRpb25fb2ZfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBT KQorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFt ZSkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAnb25lJyks CisgICgnWzEsMiknLCAnWzIwMTgtMDItMDMsMjAxOC0wMy0wMyknLCAnb25lJyksCisgICgnWzEs MiknLCAnWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCknLCAnb25lJyksCisgICgnWzIsMyknLCAnWzIw MTgtMDEtMDEsMjAxOC0wMS0wNSknLCAndHdvJyksCisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDEs KScsICd0aHJlZScpLAorICAoJ1s0LDUpJywgJygsMjAxOC0wNC0wMSknLCAnZm91cicpLAorICAo J1s1LDYpJywgJygsKScsICdmaXZlJyksCisgICgnWzYsNyknLCAnWzIwMTgtMDEtMDEsKScsICdz aXgnKSwKKyAgKCdbNyw4KScsICcoLDIwMTgtMDQtMDEpJywgJ3NldmVuJyksCisgICgnWzgsOSkn LCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAnZWlnaHQnKSwKKyAgKCdbOCw5KScsICdbMjAx OC0wMi0wMywyMDE4LTAzLTAzKScsICdlaWdodCcpLAorICAoJ1s4LDkpJywgJ1syMDE4LTAzLTAz LDIwMTgtMDQtMDQpJywgJ2VpZ2h0JykKKyAgOworXHNldCBRVUlFVCBmYWxzZQorCistLSBEZWxl dGluZyB3aXRoIGEgbWlzc2luZyBjb2x1bW4gZmFpbHMKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgaW52YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBU TyBOVUxMCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKKworLS0gVGhlIHdyb25nIHR5cGUgZmFpbHMK K0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAxIFRPIDQKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworCistLSBEZWxldGluZyB3aXRo IHRpbWVzdGFtcHMgcmV2ZXJzZWQgZmFpbHMKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNi0wMScgVE8gJzIwMTgt MDEtMDEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0gRGVsZXRpbmcgd2l0aCBhIHN1YnF1 ZXJ5IGZhaWxzCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gKFNFTEVDVCAnMjAxOC0wMS0wMScpIFRPICcyMDE4LTA2LTAxJwor ICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIERlbGV0aW5nIHdpdGggYSBjb2x1bW4gZmFpbHMK K0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSBsb3dlcih2YWxpZF9hdCkgVE8gTlVMTAorICBXSEVSRSBpZCA9ICdbMyw0KSc7CisK Ky0tIERlbGV0aW5nIHdpdGggdGltZXN0YW1wcyBlcXVhbCBkb2VzIG5vdGhpbmcKK0RFTEVURSBG Uk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOC0wNC0wMScgVE8gJzIwMTgtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0g RGVsZXRpbmcgYSBmaW5pdGUvb3BlbiBwb3J0aW9uIHdpdGggYSBmaW5pdGUvb3BlbiB0YXJnZXQK K0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAxOC0wNi0wMScgVE8gTlVMTAorICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0t IERlbGV0aW5nIGEgZmluaXRlL29wZW4gcG9ydGlvbiB3aXRoIGFuIG9wZW4vZmluaXRlIHRhcmdl dAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDMtMDEnCisgIFdIRVJFIGlkID0gJ1s2LDcpJzsKKwor LS0gRGVsZXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGFuIG9wZW4vZmluaXRlIHRh cmdldAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDItMDEnCisgIFdIRVJFIGlkID0gJ1s0LDUpJzsK KworLS0gRGVsZXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGEgZmluaXRlL29wZW4g dGFyZ2V0CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTctMDEtMDEnIFRPIE5VTEwKKyAgV0hFUkUgaWQgPSAnWzcsOCkn OworCistLSBEZWxldGluZyBhIGZpbml0ZS9maW5pdGUgcG9ydGlvbiB3aXRoIGFuIGV4YWN0IGZp dAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDE4LTAyLTAxJyBUTyAnMjAxOC0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzQs NSknOworCistLSBEZWxldGluZyBhbiBlbmNsb3NlZCBzcGFuCitERUxFVEUgRlJPTSBmb3JfcG9y dGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyBOVUxM CisgIFdIRVJFIGlkID0gJ1syLDMpJzsKKworLS0gRGVsZXRpbmcgYW4gb3Blbi9vcGVuIHBvcnRp b24gd2l0aCBhIGZpbml0ZS9maW5pdGUgdGFyZ2V0CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9v Zl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDEnIFRPICcy MDE5LTAxLTAxJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CisKKy0tIERlbGV0aW5nIGFuIGVuY2xv c2VkIHNwYW4gd2l0aCBzZXBhcmF0ZSBwcm90cnVkaW5nIHNwYW5zCitERUxFVEUgRlJPTSBmb3Jf cG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDIt MDMnIFRPICcyMDE4LTAzLTAzJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKKy0tIERlbGV0aW5n IG11bHRpcGxlIGVuY2xvc2VkIHNwYW5zCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyBOVUxMCisgIFdIRVJFIGlk ID0gJ1s4LDkpJzsKKworLS0gRGVsZXRpbmcgd2l0aCBhIGRpcmVjdCB0YXJnZXQKK0RFTEVURSBG Uk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVy YW5nZSgnMjAxOC0wMy0xMCcsICcyMDE4LTAzLTE3JykpCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK KworLS0gREVMRVRFIHdpdGggbm8gV0hFUkUgY2xhdXNlCitERUxFVEUgRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMzAtMDEtMDEnIFRP IE5VTEw7CisKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7Citcc2V0IFFVSUVUIHRydWUKKworLS0gVVBEQVRFIC4uLiBSRVRVUk5JTkcgcmV0 dXJucyBvbmx5IHRoZSB1cGRhdGVkIHZhbHVlcyAobm90IHRoZSBpbnNlcnRlZCBzaWRlIHZhbHVl cykKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTgtMDItMDEnIFRPICcyMDE4LTAyLTE1JworICBTRVQgbmFtZSA9ICd0aHJlZV4z JworICBXSEVSRSBpZCA9ICdbMyw0KScKKyAgUkVUVVJOSU5HICo7CisKKy0tIERFTEVURSAuLi4g UkVUVVJOSU5HIHJldHVybnMgdGhlIGRlbGV0ZWQgdmFsdWVzIChyZWdhcmRsZXNzIG9mIGJvdW5k cykKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOC0wMi0wMicgVE8gJzIwMTgtMDItMDMnCisgIFdIRVJFIGlkID0gJ1sz LDQpJworICBSRVRVUk5JTkcgKjsKKworLS0gREVMRVRFIEZPUiBQT1JUSU9OIE9GIGluIGEgUEwv cGdTUUwgZnVuY3Rpb24KK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxp ZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEwLDExKScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAx KScsICd0ZW4nKTsKK0NSRUFURSBGVU5DVElPTiBmcG9fZGVsZXRlKF9pZCBpbnQ0cmFuZ2UsIF90 YXJnZXRfZnJvbSBkYXRlLCBfdGFyZ2V0X3RpbCBkYXRlKQorUkVUVVJOUyB2b2lkIExBTkdVQUdF IHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAkMiBUTyAkMworICAgIFdIRVJFIGlk ID0gJDE7CitFTkQ7CiskJDsKK1NFTEVDVCBmcG9fZGVsZXRlKCdbMTAsMTEpJywgJzIwMTUtMDEt MDEnLCAnMjAxOS0wMS0wMScpOworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdI RVJFIGlkID0gJ1sxMCwxMSknOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVS RSBpZCBJTiAoJ1sxMCwxMSknKTsKKworCistLSB0ZXN0IHRoYXQgd2UgcnVuIHRyaWdnZXJzIG9u IHRoZSBVUERBVEUvREVMRVRFZCByb3cgYW5kIHRoZSBJTlNFUlRlZCByb3dzCisKK0NSRUFURSBG VU5DVElPTiBkdW1wX3RyaWdnZXIoKQorUkVUVVJOUyBUUklHR0VSIExBTkdVQUdFIHBscGdzcWwg QVMKKyQkCitCRUdJTgorICBSQUlTRSBOT1RJQ0UgJyU6ICUgJSAlOicsCisgICAgVEdfTkFNRSwg VEdfV0hFTiwgVEdfT1AsIFRHX0xFVkVMOworCisgIElGIFRHX0FSR1ZbMF0gVEhFTgorICAgIFJB SVNFIE5PVElDRSAnICBvbGQ6ICUnLCAoU0VMRUNUIHN0cmluZ19hZ2cob2xkX3RhYmxlOjp0ZXh0 LCAnXG4gICAgICAgJykgRlJPTSBvbGRfdGFibGUpOworICBFTFNFCisgICAgUkFJU0UgTk9USUNF ICcgIG9sZDogJScsIE9MRC52YWxpZF9hdDsKKyAgRU5EIElGOworICBJRiBUR19BUkdWWzFdIFRI RU4KKyAgICBSQUlTRSBOT1RJQ0UgJyAgbmV3OiAlJywgKFNFTEVDVCBzdHJpbmdfYWdnKG5ld190 YWJsZTo6dGV4dCwgJ1xuICAgICAgICcpIEZST00gbmV3X3RhYmxlKTsKKyAgRUxTRQorICAgIFJB SVNFIE5PVElDRSAnICBuZXc6ICUnLCBORVcudmFsaWRfYXQ7CisgIEVORCBJRjsKKworICBJRiBU R19PUCA9ICdJTlNFUlQnIE9SIFRHX09QID0gJ1VQREFURScgVEhFTgorICAgIFJFVFVSTiBORVc7 CisgIEVMU0lGIFRHX09QID0gJ0RFTEVURScgVEhFTgorICAgIFJFVFVSTiBPTEQ7CisgIEVORCBJ RjsKK0VORDsKKyQkOworCistLSBzdGF0ZW1lbnQgdHJpZ2dlcnM6CisKK0NSRUFURSBUUklHR0VS IGZwb19iZWZvcmVfc3RtdAorQkVGT1JFIElOU0VSVCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZv cl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFNUQVRFTUVOVCBFWEVDVVRFIFBST0NFRFVSRSBk dW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2lu c2VydF9zdG10CitBRlRFUiBJTlNFUlQgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0gg U1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOwor CitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQKK0FGVEVSIFVQREFURSBPTiBm b3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBTVEFURU1FTlQgRVhFQ1VURSBQUk9DRURVUkUg ZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9k ZWxldGVfc3RtdAorQUZURVIgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNI IFNUQVRFTUVOVCBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsK KworLS0gcm93IHRyaWdnZXJzOgorCitDUkVBVEUgVFJJR0dFUiBmcG9fYmVmb3JlX3JvdworQkVG T1JFIElOU0VSVCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZP UiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsK KworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2luc2VydF9yb3cKK0FGVEVSIElOU0VSVCBPTiBm b3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90 cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVf cm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVY RUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworCitDUkVBVEUgVFJJ R0dFUiBmcG9fYWZ0ZXJfZGVsZXRlX3JvdworQUZURVIgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29m X3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2Us IGZhbHNlKTsKKworCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDIxLTAxLTAxJyBUTyAnMjAyMi0wMS0wMScKKyAgU0VUIG5hbWUg PSAnZml2ZV4zJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyMy0wMS0wMScg VE8gJzIwMjQtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKKworU0VMRUNUICogRlJPTSBm b3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0gVHJpZ2dlcnMg d2l0aCBhIGN1c3RvbSB0cmFuc2l0aW9uIHRhYmxlIG5hbWU6CisKK0RST1AgVEFCTEUgZm9yX3Bv cnRpb25fb2ZfdGVzdDsKK0NSRUFURSBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0ICgKKyAgaWQg aW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIG5hbWUgdGV4dAorKTsKK0lOU0VS VCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgVkFMVUVTICgnWzEsMiknLCAnWzIwMTgtMDEtMDEs MjAyMC0wMS0wMSknLCAnb25lJyk7CisKKy0tIHN0YXRlbWVudCB0cmlnZ2VyczoKKworQ1JFQVRF IFRSSUdHRVIgZnBvX2JlZm9yZV9zdG10CitCRUZPUkUgSU5TRVJUIE9SIFVQREFURSBPUiBERUxF VEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJP Q0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworCitDUkVBVEUgVFJJR0dFUiBmcG9f YWZ0ZXJfaW5zZXJ0X3N0bXQKK0FGVEVSIElOU0VSVCBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitS RUZFUkVOQ0lORyBORVcgVEFCTEUgQVMgbmV3X3RhYmxlCitGT1IgRUFDSCBTVEFURU1FTlQgRVhF Q1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCB0cnVlKTsKKworQ1JFQVRFIFRSSUdH RVIgZnBvX2FmdGVyX3VwZGF0ZV9zdG10CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2Zf dGVzdAorUkVGRVJFTkNJTkcgTkVXIFRBQkxFIEFTIG5ld190YWJsZSBPTEQgVEFCTEUgQVMgb2xk X3RhYmxlCitGT1IgRUFDSCBTVEFURU1FTlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2Vy KHRydWUsIHRydWUpOworCitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfZGVsZXRlX3N0bXQKK0FG VEVSIERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitSRUZFUkVOQ0lORyBPTEQgVEFCTEUg QVMgb2xkX3RhYmxlCitGT1IgRUFDSCBTVEFURU1FTlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90 cmlnZ2VyKHRydWUsIGZhbHNlKTsKKworLS0gcm93IHRyaWdnZXJzOgorCitDUkVBVEUgVFJJR0dF UiBmcG9fYmVmb3JlX3JvdworQkVGT1JFIElOU0VSVCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZv cl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3Ry aWdnZXIoZmFsc2UsIGZhbHNlKTsKKworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2luc2VydF9y b3cKK0FGVEVSIElOU0VSVCBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitSRUZFUkVOQ0lORyBORVcg VEFCTEUgQVMgbmV3X3RhYmxlCitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90 cmlnZ2VyKGZhbHNlLCB0cnVlKTsKKworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9y b3cKK0FGVEVSIFVQREFURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitSRUZFUkVOQ0lORyBPTEQg VEFCTEUgQVMgb2xkX3RhYmxlIE5FVyBUQUJMRSBBUyBuZXdfdGFibGUKK0ZPUiBFQUNIIFJPVyBF WEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIodHJ1ZSwgdHJ1ZSk7CisKK0NSRUFURSBUUklH R0VSIGZwb19hZnRlcl9kZWxldGVfcm93CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2Zf dGVzdAorUkVGRVJFTkNJTkcgT0xEIFRBQkxFIEFTIG9sZF90YWJsZQorRk9SIEVBQ0ggUk9XIEVY RUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0cnVlLCBmYWxzZSk7CisKK0JFR0lOOworVVBE QVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOC0wMS0xNScgVE8gJzIwMTktMDEtMDEnCisgIFNFVCBuYW1lID0gJzIwMTgtMDEtMTVfdG9f MjAxOS0wMS0wMSc7CitST0xMQkFDSzsKKworQkVHSU47CitERUxFVEUgRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0w MS0yMSc7CitST0xMQkFDSzsKKworQkVHSU47CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDEtMDInCisgIFNF VCBuYW1lID0gJ05VTExfdG9fMjAxOC0wMS0wMSc7CitST0xMQkFDSzsKKworLS0gRGVmZXJyZWQg dHJpZ2dlcnMKKy0tIChtdXN0IGJlIENPTlNUUkFJTlQgdHJpZ2dlcnMgdGh1cyBBRlRFUiBST1cg d2l0aCBubyB0cmFuc2l0aW9uIHRhYmxlcykKKworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90 ZXN0OworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2Us CisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgbmFtZSB0ZXh0CispOworSU5TRVJUIElOVE8gZm9y X3BvcnRpb25fb2ZfdGVzdCAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScs ICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICdvbmUnKTsKKworQ1JFQVRFIENPTlNUUkFJTlQg VFJJR0dFUiBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdworQUZURVIgSU5TRVJUIE9OIGZvcl9wb3J0aW9u X29mX3Rlc3QKK0RFRkVSUkFCTEUgSU5JVElBTExZIERFRkVSUkVECitGT1IgRUFDSCBST1cgRVhF Q1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CisKK0NSRUFURSBDT05T VFJBSU5UIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9yb3cKK0FGVEVSIFVQREFURSBPTiBmb3Jf cG9ydGlvbl9vZl90ZXN0CitERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRAorRk9SIEVBQ0gg Uk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworCitDUkVB VEUgQ09OU1RSQUlOVCBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVfcm93CitBRlRFUiBERUxFVEUg T04gZm9yX3BvcnRpb25fb2ZfdGVzdAorREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQKK0ZP UiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsK KworQkVHSU47CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyAnMjAxOS0wMS0wMScKKyAgU0VUIG5hbWUgPSAn MjAxOC0wMS0xNV90b18yMDE5LTAxLTAxJzsKK0NPTU1JVDsKKworQkVHSU47CitERUxFVEUgRlJP TSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVM TCBUTyAnMjAxOC0wMS0yMSc7CitDT01NSVQ7CisKK0JFR0lOOworVVBEQVRFIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAx LTAyJworICBTRVQgbmFtZSA9ICdOVUxMX3RvXzIwMTgtMDEtMDEnOworQ09NTUlUOworCitTRUxF Q1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CisKKy0tIHRlc3QgRk9SIFBPUlRJT04gT0Yg ZnJvbSB0cmlnZ2VycyBkdXJpbmcgRk9SIFBPUlRJT04gT0Y6CisKK0RST1AgVEFCTEUgZm9yX3Bv cnRpb25fb2ZfdGVzdDsKK0NSRUFURSBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0ICgKKyAgaWQg aW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIG5hbWUgdGV4dAorKTsKK0lOU0VS VCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisg ICgnWzEsMiknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAnb25lJyksCisgICgnWzIsMykn LCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAndHdvJyksCisgICgnWzMsNCknLCAnWzIwMTgt MDEtMDEsMjAyMC0wMS0wMSknLCAndGhyZWUnKSwKKyAgKCdbNCw1KScsICdbMjAxOC0wMS0wMSwy MDIwLTAxLTAxKScsICdmb3VyJyk7CisKK0NSRUFURSBGVU5DVElPTiB0cmdfZnBvX3VwZGF0ZSgp CitSRVRVUk5TIFRSSUdHRVIgTEFOR1VBR0UgcGxwZ3NxbCBBUworJCQKK0JFR0lOCisgIElGIHBn X3RyaWdnZXJfZGVwdGgoKSA9IDEgVEhFTgorICAgIFVQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgICAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAyLTAxJyBUTyAnMjAx OC0wMy0wMScKKyAgICAgIFNFVCBuYW1lID0gQ09OQ0FUKG5hbWUsICdeJykKKyAgICAgIFdIRVJF IGlkID0gT0xELmlkOworICBFTkQgSUY7CisgIFJFVFVSTiBDQVNFIFdIRU4gJ1RHX09QJyA9ICdE RUxFVEUnIFRIRU4gT0xEIEVMU0UgTkVXIEVORDsKK0VORDsKKyQkOworCitDUkVBVEUgRlVOQ1RJ T04gdHJnX2Zwb19kZWxldGUoKQorUkVUVVJOUyBUUklHR0VSIExBTkdVQUdFIHBscGdzcWwgQVMK KyQkCitCRUdJTgorICBJRiBwZ190cmlnZ2VyX2RlcHRoKCkgPSAxIFRIRU4KKyAgICBERUxFVEUg RlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE4LTAzLTAxJyBUTyAnMjAxOC0wNC0wMScKKyAgICAgIFdIRVJFIGlkID0gT0xELmlk OworICBFTkQgSUY7CisgIFJFVFVSTiBDQVNFIFdIRU4gJ1RHX09QJyA9ICdERUxFVEUnIFRIRU4g T0xEIEVMU0UgTkVXIEVORDsKK0VORDsKKyQkOworCistLSBVUERBVEUgRk9SIFBPUlRJT04gT0Yg ZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgVVBEQVRFIEZPUiBQT1JUSU9OIE9GCisKK0NSRUFURSBU UklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25f b2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fdXBkYXRlKCk7 CisKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTgtMDUtMDEnIFRPICcyMDE4LTA2LTAxJworICBTRVQgbmFtZSA9IENPTkNBVChu YW1lLCAnKicpCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworU0VMRUNUICogRlJPTSBmb3JfcG9y dGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sxLDIpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisK K0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0 OworCistLSBVUERBVEUgRk9SIFBPUlRJT04gT0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgREVM RVRFIEZPUiBQT1JUSU9OIE9GCisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVfcm93 CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNV VEUgUFJPQ0VEVVJFIHRyZ19mcG9fdXBkYXRlKCk7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNS0wMScgVE8g JzIwMTgtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1syLDMpJzsKKworU0VMRUNUICogRlJPTSBmb3Jf cG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1syLDMpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfZGVsZXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90 ZXN0OworCistLSBERUxFVEUgRk9SIFBPUlRJT04gT0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkg VVBEQVRFIEZPUiBQT1JUSU9OIE9GCisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVf cm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVY RUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fZGVsZXRlKCk7CisKK1VQREFURSBmb3JfcG9ydGlvbl9v Zl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDUtMDEnIFRPICcy MDE4LTA2LTAxJworICBTRVQgbmFtZSA9IENPTkNBVChuYW1lLCAnKicpCisgIFdIRVJFIGlkID0g J1szLDQpJzsKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0g J1szLDQpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJf dXBkYXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0OworCistLSBERUxFVEUgRk9SIFBPUlRJ T04gT0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgREVMRVRFIEZPUiBQT1JUSU9OIE9GCisKK0NS RUFURSBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVfcm93CitBRlRFUiBERUxFVEUgT04gZm9yX3Bv cnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fZGVs ZXRlKCk7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNS0wMScgVE8gJzIwMTgtMDYtMDEnCisgIFdIRVJFIGlk ID0gJ1s0LDUpJzsKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlk ID0gJ1s0LDUpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0 ZXJfZGVsZXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0OworCistLSBUZXN0IHdpdGggbXVs dGlyYW5nZXMKKworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50 NHJhbmdlIE5PVCBOVUxMLAorICB2YWxpZF9hdCBkYXRlbXVsdGlyYW5nZSBOT1QgTlVMTCwKKyAg bmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5UIGZvcl9wb3J0aW9uX29mX3Rlc3QyX3Br IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQg SU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAg KCdbMSwyKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMicsICcyMDE4LTAy LTAzKScpLCBkYXRlcmFuZ2UoJzIwMTgtMDItMDQnLCAnMjAxOC0wMy0wMycpKSwgJ29uZScpLAor ICAoJ1sxLDIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAzLTAzJywgJzIwMTgt MDQtMDQpJykpLCAnb25lJyksCisgICgnWzIsMyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAxOC0wNS0wMSknKSksICd0d28nKSwKKyAgKCdbMyw0KScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsIG51bGwpKSwgJ3RocmVlJyk7CisgIDsK KworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMTAnLCAnMjAxOC0wMi0xMCcpLCBk YXRlcmFuZ2UoJzIwMTgtMDMtMDUnLCAnMjAxOC0wNS0wMScpKSkKKyAgU0VUIG5hbWUgPSAnb25l XjEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdDIKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOC0wMS0xNScsICcyMDE4LTAyLTE1JyksIGRhdGVyYW5nZSgnMjAxOC0wMy0wMScsICcy MDE4LTAzLTE1JykpKQorICBXSEVSRSBpZCA9ICdbMiwzKSc7CisKK1NFTEVDVCAqIEZST00gZm9y X3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCitEUk9QIFRBQkxFIGZv cl9wb3J0aW9uX29mX3Rlc3QyOworCistLSBUZXN0IHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZQor CitDUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOworCitDUkVB VEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIgKAorICBpZCBpbnQ0cmFuZ2UgTk9UIE5VTEws CisgIHZhbGlkX2F0IG15ZGF0ZXJhbmdlIE5PVCBOVUxMLAorICBuYW1lIHRleHQgTk9UIE5VTEws CisgIENPTlNUUkFJTlQgZm9yX3BvcnRpb25fb2ZfdGVzdDJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29m X3Rlc3QyIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAx LTAyLDIwMTgtMDItMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAyLTAzLDIwMTgt MDMtMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJywg J29uZScpLAorICAoJ1syLDMpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDUtMDEpJywgJ3R3bycpLAor ICAoJ1szLDQpJywgJ1syMDE4LTAxLTAxLCknLCAndGhyZWUnKTsKKyAgOworCitVUERBVEUgZm9y X3BvcnRpb25fb2ZfdGVzdDIKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0w MS0xMCcgVE8gJzIwMTgtMDItMTAnCisgIFNFVCBuYW1lID0gJ29uZV4xJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMTUnIFRPICcyMDE4LTAyLTE1JworICBXSEVS RSBpZCA9ICdbMiwzKSc7CisKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOwor RFJPUCBUWVBFIG15ZGF0ZXJhbmdlOworCistLSBUZXN0IEZPUiBQT1JUSU9OIE9GIGFnYWluc3Qg YSBwYXJ0aXRpb25lZCB0YWJsZS4KKy0tIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzEgaGFzIHRoZSBz YW1lIGF0dG51bXMgYXMgdGhlIHJvb3QKKy0tIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzMgaGFzIHRo ZSBkaWZmZXJlbnQgYXR0bnVtcyBmcm9tIHRoZSByb290CistLSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF81IGhhcyB0aGUgZGlmZmVyZW50IGF0dG51bXMgdG9vLCBidXQgcmV2ZXJzZWQKKworQ1JFQVRF IFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9h dCBkYXRlcmFuZ2UsCisgIG5hbWUgdGV4dCwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJpdGlv bmVkX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispIFBBUlRJVElP TiBCWSBMSVNUIChpZCk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfMSBQQVJU SVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1sy LDMpJyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfMyBQQVJUSVRJT04gT0Yg dGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFZBTFVFUyBJTiAoJ1szLDQpJywgJ1s0LDUpJyk7CitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfNSBQQVJUSVRJT04gT0YgdGVtcG9yYWxf cGFydGl0aW9uZWQgRk9SIFZBTFVFUyBJTiAoJ1s1LDYpJywgJ1s2LDcpJyk7CisKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkIERFVEFDSCBQQVJUSVRJT04gdGVtcG9yYWxfcGFydGl0 aW9uZWRfMzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzMgRFJPUCBDT0xVTU4g aWQsIERST1AgQ09MVU1OIHZhbGlkX2F0OworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfMyBBREQgQ09MVU1OIGlkIGludDRyYW5nZSBOT1QgTlVMTCwgQUREIENPTFVNTiB2YWxpZF9h dCBkYXRlcmFuZ2UgTk9UIE5VTEw7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBB VFRBQ0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzMgRk9SIFZBTFVFUyBJTiAoJ1sz LDQpJywgJ1s0LDUpJyk7CisKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkIERFVEFD SCBQQVJUSVRJT04gdGVtcG9yYWxfcGFydGl0aW9uZWRfNTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X3BhcnRpdGlvbmVkXzUgRFJPUCBDT0xVTU4gaWQsIERST1AgQ09MVU1OIHZhbGlkX2F0OworQUxU RVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfNSBBREQgQ09MVU1OIHZhbGlkX2F0IGRhdGVy YW5nZSBOT1QgTlVMTCwgQUREIENPTFVNTiBpZCBpbnQ0cmFuZ2UgTk9UIE5VTEw7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBBVFRBQ0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRp dGlvbmVkXzUgRk9SIFZBTFVFUyBJTiAoJ1s1LDYpJywgJ1s2LDcpJyk7CisKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BhcnRpdGlvbmVkIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sx LDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ29uZScpLAorICAo J1szLDQpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ3RocmVlJyks CisgICgnWzUsNiknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAnZml2 ZScpOworCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkOworCistLSBVcGRhdGUg d2l0aG91dCBtb3Zpbmcgd2l0aGluIHBhcnRpdGlvbiAxCitVUERBVEUgdGVtcG9yYWxfcGFydGl0 aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMy0wMScgVE8gJzIwMDAt MDQtMDEnCisgIFNFVCBuYW1lID0gJ29uZV4xJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKKy0t IFVwZGF0ZSB3aXRob3V0IG1vdmluZyB3aXRoaW4gcGFydGl0aW9uIDMKK1VQREFURSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAzLTAxJyBU TyAnMjAwMC0wNC0wMScKKyAgU0VUIG5hbWUgPSAndGhyZWVeMScKKyAgV0hFUkUgaWQgPSAnWzMs NCknOworCistLSBVcGRhdGUgd2l0aG91dCBtb3Zpbmcgd2l0aGluIHBhcnRpdGlvbiA1CitVUERB VEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAw MC0wMy0wMScgVE8gJzIwMDAtMDQtMDEnCisgIFNFVCBuYW1lID0gJ2ZpdmVeMScKKyAgV0hFUkUg aWQgPSAnWzUsNiknOworCistLSBNb3ZlIGZyb20gcGFydGl0aW9uIDEgdG8gcGFydGl0aW9uIDMK K1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDAwLTA2LTAxJyBUTyAnMjAwMC0wNy0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjInLAorICAg ICAgaWQgPSAnWzQsNSknCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gTW92ZSBmcm9tIHBh cnRpdGlvbiAzIHRvIHBhcnRpdGlvbiAxCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wNi0wMScgVE8gJzIwMDAtMDctMDEnCisg IFNFVCBuYW1lID0gJ3RocmVlXjInLAorICAgICAgaWQgPSAnWzIsMyknCisgIFdIRVJFIGlkID0g J1szLDQpJzsKKworLS0gTW92ZSBmcm9tIHBhcnRpdGlvbiA1IHRvIHBhcnRpdGlvbiAzCitVUERB VEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAw MC0wNi0wMScgVE8gJzIwMDAtMDctMDEnCisgIFNFVCBuYW1lID0gJ2ZpdmVeMicsCisgICAgICBp ZCA9ICdbMyw0KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworCistLSBVcGRhdGUgYWxsIHBhcnRp dGlvbnMgYXQgb25jZSAoZWFjaCB3aXRoIGxlZnRvdmVycykKKworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3BhcnRpdGlvbmVkXzEgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF8zIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfNSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKK0RS T1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQ7CisKK1JFU0VUIGRhdGVzdHlsZTsKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3ByaXZpbGVnZXMuc3FsIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvcHJpdmlsZWdlcy5zcWwKaW5kZXggOTZlZmYxMTA0ZDIuLmFlNTdmMjMzMzE0IDEw MDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wcml2aWxlZ2VzLnNxbAorKysgYi9zcmMv dGVzdC9yZWdyZXNzL3NxbC9wcml2aWxlZ2VzLnNxbApAQCAtNzY1LDYgKzc2NSwyNCBAQCBVUERB VEUgZXJydHN0IFNFVCBhID0gJ2FhYWEnLCBiID0gTlVMTCBXSEVSRSBhID0gJ2FhYSc7CiBTRVQg U0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsKIERST1AgVEFCTEUgZXJy dHN0OwogCistLSB0ZXN0IGNvbHVtbi1sZXZlbCBwcml2aWxlZ2VzIG9uIHRoZSByYW5nZSB1c2Vk IGluIEZPUiBQT1JUSU9OIE9GCitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJp dl91c2VyMTsKK0NSRUFURSBUQUJMRSB0MSAoCisgIGMxIGludDRyYW5nZSwKKyAgdmFsaWRfYXQg dHNyYW5nZSwKKwlDT05TVFJBSU5UIHQxcGsgUFJJTUFSWSBLRVkgKGMxLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKQorKTsKK0dSQU5UIFNFTEVDVCBPTiB0MSBUTyByZWdyZXNzX3ByaXZfdXNl cjI7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXIzOworR1JBTlQgVVBE QVRFIChjMSkgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXIyOworR1JBTlQgVVBEQVRFIChjMSwg dmFsaWRfYXQpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMzsKK1NFVCBTRVNTSU9OIEFVVEhP UklaQVRJT04gcmVncmVzc19wcml2X3VzZXIyOworVVBEQVRFIHQxIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMDAtMDEtMDEnIFRPICcyMDAxLTAxLTAxJyBTRVQgYzEgPSAnWzIsMykn OworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjM7CitVUERBVEUg dDEgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEt MDEnIFNFVCBjMSA9ICdbMiwzKSc7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3Nf cHJpdl91c2VyMTsKK0RST1AgVEFCTEUgdDE7CisKIC0tIHRlc3QgY29sdW1uLWxldmVsIHByaXZp bGVnZXMgd2hlbiBpbnZvbHZlZCB3aXRoIERFTEVURQogU0VUIFNFU1NJT04gQVVUSE9SSVpBVElP TiByZWdyZXNzX3ByaXZfdXNlcjE7CiBBTFRFUiBUQUJMRSBhdGVzdDYgQUREIENPTFVNTiB0aHJl ZSBpbnRlZ2VyOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdXBkYXRhYmxlX3Zp ZXdzLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3VwZGF0YWJsZV92aWV3cy5zcWwKaW5kZXgg YzA3MWZmZmMxMTYuLmU4YzA0ZTNhZDkxIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC91cGRhdGFibGVfdmlld3Muc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3VwZGF0YWJs ZV92aWV3cy5zcWwKQEAgLTE4ODEsNiArMTg4MSwyMCBAQCBzZWxlY3QgKiBmcm9tIHV2X2lvY3Vf dGFiOwogZHJvcCB2aWV3IHV2X2lvY3VfdmlldzsKIGRyb3AgdGFibGUgdXZfaW9jdV90YWI7CiAK Ky0tIENoZWNrIFVQREFURSBGT1IgUE9SVElPTiBPRiB3b3JrcyBjb3JyZWN0bHkKK2NyZWF0ZSB0 YWJsZSB1dl9mcG9fdGFiIChpZCBpbnQ0cmFuZ2UsIHZhbGlkX2F0IHRzcmFuZ2UsIGIgZmxvYXQs CisgICAgY29uc3RyYWludCBwa191dl9mcG9fdGFiIHByaW1hcnkga2V5IChpZCwgdmFsaWRfYXQg d2l0aG91dCBvdmVybGFwcykpOworaW5zZXJ0IGludG8gdXZfZnBvX3RhYiB2YWx1ZXMgKCdbMSwx XScsICdbMjAyMC0wMS0wMSwgMjAzMC0wMS0wMSknLCAwKTsKK2NyZWF0ZSB2aWV3IHV2X2Zwb192 aWV3IGFzCisgICAgc2VsZWN0IGIsIGIrMSBhcyBjLCB2YWxpZF9hdCwgaWQsICcyLjAnOjp0ZXh0 IGFzIHR3byBmcm9tIHV2X2Zwb190YWI7CisKK2luc2VydCBpbnRvIHV2X2Zwb192aWV3IChpZCwg dmFsaWRfYXQsIGIpIHZhbHVlcyAoJ1sxLDFdJywgJ1syMDEwLTAxLTAxLCAyMDIwLTAxLTAxKScs IDEpOworc2VsZWN0ICogZnJvbSB1dl9mcG9fdmlldzsKK3VwZGF0ZSB1dl9mcG9fdmlldyBmb3Ig cG9ydGlvbiBvZiB2YWxpZF9hdCBmcm9tICcyMDE1LTAxLTAxJyB0byAnMjAyMC0wMS0wMScgc2V0 IGIgPSAyIHdoZXJlIGlkID0gJ1sxLDFdJzsKK3NlbGVjdCAqIGZyb20gdXZfZnBvX3ZpZXc7Citk ZWxldGUgZnJvbSB1dl9mcG9fdmlldyBmb3IgcG9ydGlvbiBvZiB2YWxpZF9hdCBmcm9tICcyMDE3 LTAxLTAxJyB0byAnMjAyMi0wMS0wMScgd2hlcmUgaWQgPSAnWzEsMV0nOworc2VsZWN0ICogZnJv bSB1dl9mcG9fdmlldzsKKwogLS0gVGVzdCB3aG9sZS1yb3cgcmVmZXJlbmNlcyB0byB0aGUgdmll dwogY3JlYXRlIHRhYmxlIHV2X2lvY3VfdGFiIChhIGludCB1bmlxdWUsIGIgdGV4dCk7CiBjcmVh dGUgdmlldyB1dl9pb2N1X3ZpZXcgYXMKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L3dpdGhvdXRfb3ZlcmxhcHMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvd2l0aG91dF9vdmVy bGFwcy5zcWwKaW5kZXggNGFhY2EyNDJiYmUuLmM1Yzg5ZmU0MGFiIDEwMDY0NAotLS0gYS9zcmMv dGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdy ZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbApAQCAtMiw3ICsyLDcgQEAKIC0tCiAtLSBXZSBs ZWF2ZSBiZWhpbmQgc2V2ZXJhbCB0YWJsZXMgdG8gdGVzdCBwZ19kdW1wIGV0YzoKIC0tIHRlbXBv cmFsX3JuZywgdGVtcG9yYWxfcm5nMiwKLS0tIHRlbXBvcmFsX2ZrX3JuZzJybmcuCistLSB0ZW1w b3JhbF9ma19ybmcycm5nLCB0ZW1wb3JhbF9mazJfcm5nMnJuZy4KIAogU0VUIGRhdGVzdHlsZSBU TyBJU08sIFlNRDsKIApAQCAtNjMyLDYgKzYzMiwyMCBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbDMg KGlkLCB2YWxpZF9hdCwgaWQyLCBuYW1lKQogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAx LTAxJywgJzIwMTAtMDEtMDEnKSwgJ1s3LDgpJywgJ2ZvbycpLAogICAoJ1syLDMpJywgZGF0ZXJh bmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ1s5LDEwKScsICdiYXInKQogOworVVBE QVRFIHRlbXBvcmFsMyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTA1LTAxJyBU TyAnMjAwMC0wNy0wMScKKyAgU0VUIG5hbWUgPSBuYW1lIHx8ICcxJzsKK1VQREFURSB0ZW1wb3Jh bDMgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wNC0wMScgVE8gJzIwMDAtMDYt MDEnCisgIFNFVCBuYW1lID0gbmFtZSB8fCAnMicKKyAgV0hFUkUgaWQgPSAnWzIsMyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbDMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gY29uZmxpY3Rp bmcgaWQgb25seToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsMyAoaWQsIHZhbGlkX2F0LCBpZDIsIG5h bWUpCisgIFZBTFVFUworICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDA1LTAxLTAxJywgJzIwMDYt MDEtMDEnKSwgJ1s4LDkpJywgJ2ZvbzMnKTsKKy0tIGNvbmZsaWN0aW5nIGlkMiBvbmx5OgorSU5T RVJUIElOVE8gdGVtcG9yYWwzIChpZCwgdmFsaWRfYXQsIGlkMiwgbmFtZSkKKyAgVkFMVUVTCisg ICgnWzMsNCknLCBkYXRlcmFuZ2UoJzIwMDUtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAnWzksMTAp JywgJ2JhcjMnKTsKIERST1AgVEFCTEUgdGVtcG9yYWwzOwogCiAtLQpAQCAtNjY3LDkgKzY4MSwy MyBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZCAoaWQsIHZhbGlkX2F0LCBuYW1l KSBWQUxVRVMKICAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAx JyksICdvbmUnKSwKICAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAz LTAxJyksICdvbmUnKSwKICAgKCdbMyw0KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEw LTAxLTAxJyksICd0aHJlZScpOwotU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci1TRUxFQ1QgKiBGUk9NIHRwMSBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7Ci1TRUxFQ1QgKiBGUk9NIHRwMiBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitTRUxFQ1Qg dGFibGVvaWQ6OnJlZ2NsYXNzLCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWQgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworVVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTE1JyBUTyAnMjAwMC0wMi0xNScKKyAgU0VUIG5h bWUgPSAnb25lMicKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworVVBEQVRFICB0ZW1wb3JhbF9wYXJ0 aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAyLTIwJyBUTyAn MjAwMC0wMi0yNScKKyAgU0VUIGlkID0gJ1s0LDUpJworICBXSEVSRSBuYW1lID0gJ29uZSc7CitV UERBVEUgIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMDItMDEtMDEnIFRPICcyMDAzLTAxLTAxJworICBTRVQgaWQgPSAnWzIsMyknCisgIFdI RVJFIG5hbWUgPSAndGhyZWUnOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWQKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0xNScgVE8gJzIwMDAtMDItMTUn CisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK1NFTEVDVCB0YWJsZW9pZDo6cmVnY2xhc3MsICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CiBEUk9QIFRBQkxF IHRlbXBvcmFsX3BhcnRpdGlvbmVkOwogCiAtLSB0ZW1wb3JhbCBVTklRVUU6CkBAIC02ODUsOSAr NzEzLDIzIEBAIElOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkIChpZCwgdmFsaWRfYXQs IG5hbWUpIFZBTFVFUwogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMDAt MDItMDEnKSwgJ29uZScpLAogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAyLTAxJywgJzIw MDAtMDMtMDEnKSwgJ29uZScpLAogICAoJ1szLDQpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywg JzIwMTAtMDEtMDEnKSwgJ3RocmVlJyk7Ci1TRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKLVNFTEVDVCAqIEZST00gdHAxIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKLVNFTEVDVCAqIEZST00gdHAyIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK1NF TEVDVCB0YWJsZW9pZDo6cmVnY2xhc3MsICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitVUERBVEUgIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDEtMTUnIFRPICcyMDAwLTAyLTE1JworICBT RVQgbmFtZSA9ICdvbmUyJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CitVUERBVEUgIHRlbXBvcmFs X3BhcnRpdGlvbmVkCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDItMjAn IFRPICcyMDAwLTAyLTI1JworICBTRVQgaWQgPSAnWzQsNSknCisgIFdIRVJFIG5hbWUgPSAnb25l JzsKK1VQREFURSAgdGVtcG9yYWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIwMDMtMDEtMDEnCisgIFNFVCBpZCA9ICdbMiwzKScK KyAgV0hFUkUgbmFtZSA9ICd0aHJlZSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTE1JyBUTyAnMjAwMC0w Mi0xNScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworU0VMRUNUIHRhYmxlb2lkOjpyZWdjbGFzcywg KiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKIERST1Ag VEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQ7CiAKIC0tIEFMVEVSIFRBQkxFIFJFUExJQ0EgSURF TlRJVFkKQEAgLTEyOTEsNiArMTMzMywxOCBAQCBDT01NSVQ7CiAtLSBjaGFuZ2luZyB0aGUgc2Nh bGFyIHBhcnQgZmFpbHM6CiBVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbNyw4KScKICAg V0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDE4LTAyLTAxJyk7CistLSBjaGFuZ2luZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5 OgorVVBEQVRFIHRlbXBvcmFsX3JuZworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKKyAgU0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBp ZCA9ICdbNSw2KSc7CistLSBjaGFuZ2luZyBqdXN0IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1w b3JhbF9ybmcKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8g JzIwMTgtMDEtMTAnCisgIFNFVCBpZCA9ICdbNyw4KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScp IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJu ZyBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwogLS0gdGhlbiBk ZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIHVwZGF0ZSBzdWNj ZWVkczoKIERFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzMsNCkn OwogVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTYtMDEt MDEnLCAnMjAxNi0wMi0wMScpCkBAIC0xMzM4LDYgKzEzOTIsMTggQEAgQkVHSU47CiAKICAgREVM RVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOwogQ09NTUlUOworLS0gZGVsZXRp bmcgYW4gdW5yZWZlcmVuY2VkIHBhcnQgaXMgb2theToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZworRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wMicgVE8gJzIwMTgtMDEt MDMnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3JuZyBXSEVS RSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkIGluICgnWzMsNCknKSBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBkZWxldGluZyBqdXN0IGEgcGFydCBmYWlsczoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZworRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0w NScgVE8gJzIwMTgtMDEtMTAnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3JuZyBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkIGluICgn WzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CiAtLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0 aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgZGVsZXRlIHN1Y2NlZWRzOgogREVMRVRFIEZS T00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CiBERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CkBAIC0xMzU2LDEyICsxNDIyLDEzIEBAIEFMVEVS IFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcKICAgT04gREVMRVRFIFJFU1RSSUNUOwogCiAtLQot LS0gdGVzdCBPTiBVUERBVEUvREVMRVRFIG9wdGlvbnMKKy0tIHJuZzJybmcgdGVzdCBPTiBVUERB VEUvREVMRVRFIG9wdGlvbnMKIC0tCiAKIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENB U0NBREUKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIElOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxf Zmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgn WzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcp Jyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCkBAIC0xMzY5LDggKzE0MzYsOSBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19y bmcycm5nCiAgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7CiAKIC0tIHRl c3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMCi1JTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzksMTApJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSk7Ci1JTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpLCAnWzksMTApJyk7CitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRl bXBvcmFsX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpLCAnWzYsNyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcKICAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnJuZ19mawogICAgIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKQEAgLTEzNzgsOSArMTQ0NiwxMCBAQCBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBT RVQgTlVMTDsKIAogLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKK1RS VU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIElOU0VSVCBJTlRPIHRl bXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgZGF0ZXJhbmdlKG51 bGwsIG51bGwpKTsKLUlOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbMTIsMTMpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7Ci1J TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkg VkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAn WzEyLDEzKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFM VUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwg J1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgIEFMVEVSIENPTFVN TiBwYXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAogICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19ybmcycm5nX2ZrCkBAIC0xNzE2LDYgKzE3ODUsMjAgQEAgQkVHSU47CiAgIFdIRVJF IGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpKTsKIENPTU1JVDsKIC0tIGNoYW5naW5nIHRoZSBzY2Fs YXIgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VUIGlkID0gJ1s3LDgpJwor ICBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKSk7CistLSBjaGFuZ2luZyBhbiB1bnJlZmVy ZW5jZWQgcGFydCBpcyBva2F5OgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAyJywgJzIw MTgtMDEtMDMnKSkpCisgIFNFVCBpZCA9ICdbNyw4KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOwor LS0gY2hhbmdpbmcganVzdCBhIHBhcnQgZmFpbHM6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDUnLCAnMjAxOC0wMS0xMCcpKSkKKyAgU0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBpZCA9 ICdbNSw2KSc7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhl IHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfbWx0cm5n Mm1sdHJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CiBVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBp ZCA9ICdbNyw4KScKICAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJykpOwogCkBAIC0xNzYw LDYgKzE4NDMsMTcgQEAgQkVHSU47CiAKICAgREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpKTsKIENPTU1JVDsKKy0tIGRlbGV0aW5nIGFuIHVu cmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcKK0ZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEt MDInLCAnMjAxOC0wMS0wMycpKSkKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1 c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nCitGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTA1JywgJzIw MTgtMDEtMTAnKSkpCitXSEVSRSBpZCA9ICdbNSw2KSc7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2Jq ZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgZGVsZXRlIHN1Y2NlZWRzOgorREVMRVRF IEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9 IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJykpOwog CiAtLQogLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcwpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDM0X3RlbXBvcmFsLnBsIGIvc3JjL3Rlc3Qvc3Vi c2NyaXB0aW9uL3QvMDM0X3RlbXBvcmFsLnBsCmluZGV4IDZiYmY2NTY3Mjc5Li5iNzQ2OTNjYjg5 YyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDM0X3RlbXBvcmFsLnBsCisr KyBiL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAzNF90ZW1wb3JhbC5wbApAQCAtMTM3LDYgKzEz NywxMiBAQCBpcyggJHN0ZGVyciwKIAlxcShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3Qg dXBkYXRlIHRhYmxlICJ0ZW1wb3JhbF9ub19rZXkiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBh IHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyB1cGRhdGVzCiBISU5UOiAgVG8gZW5hYmxl IHVwZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFC TEUuKSwKIAkiY2FuJ3QgVVBEQVRFIHRlbXBvcmFsX25vX2tleSBERUZBVUxUIik7CisoJHJlc3Vs dCwgJHN0ZG91dCwgJHN0ZGVycikgPSAkbm9kZV9wdWJsaXNoZXItPnBzcWwoJ3Bvc3RncmVzJywK KwkiVVBEQVRFIHRlbXBvcmFsX25vX2tleSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDAxLTAxLTAxJyBUTyAnMjAwMi0wMS0wMScgU0VUIGEgPSAnYycgV0hFUkUgaWQgPSAnWzIsMykn Iik7CitpcyggJHN0ZGVyciwKKwlxcShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgdXBk YXRlIHRhYmxlICJ0ZW1wb3JhbF9ub19rZXkiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJl cGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyB1cGRhdGVzCitISU5UOiAgVG8gZW5hYmxlIHVw ZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUu KSwKKwkiY2FuJ3QgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHRlbXBvcmFsX25vX2tleSBERUZBVUxU Iik7CiAKICgkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNx bCgncG9zdGdyZXMnLAogCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF9ub19rZXkgV0hFUkUgaWQgPSAn WzMsNCknIik7CkBAIC0xNDQsNiArMTUwLDEyIEBAIGlzKCAkc3RkZXJyLAogCXFxKHBzcWw6PHN0 ZGluPjoxOiBFUlJPUjogIGNhbm5vdCBkZWxldGUgZnJvbSB0YWJsZSAidGVtcG9yYWxfbm9fa2V5 IiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNo ZXMgZGVsZXRlcwogSElOVDogIFRvIGVuYWJsZSBkZWxldGluZyBmcm9tIHRoZSB0YWJsZSwgc2V0 IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKIAkiY2FuJ3QgREVMRVRFIHRl bXBvcmFsX25vX2tleSBERUZBVUxUIik7CisoJHJlc3VsdCwgJHN0ZG91dCwgJHN0ZGVycikgPSAk bm9kZV9wdWJsaXNoZXItPnBzcWwoJ3Bvc3RncmVzJywKKwkiREVMRVRFIEZST00gdGVtcG9yYWxf bm9fa2V5IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDItMDEtMDEnIFRPICcyMDAz LTAxLTAxJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKK2lzKCAkc3RkZXJyLAorCXFxKHBzcWw6PHN0 ZGluPjoxOiBFUlJPUjogIGNhbm5vdCBkZWxldGUgZnJvbSB0YWJsZSAidGVtcG9yYWxfbm9fa2V5 IiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNo ZXMgZGVsZXRlcworSElOVDogIFRvIGVuYWJsZSBkZWxldGluZyBmcm9tIHRoZSB0YWJsZSwgc2V0 IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKKwkiY2FuJ3QgREVMRVRFIEZP UiBQT1JUSU9OIE9GIHRlbXBvcmFsX25vX2tleSBERUZBVUxUIik7CiAKICRub2RlX3B1Ymxpc2hl ci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScpOwogCkBAIC0xNjUsMTYgKzE3NywyMiBAQCAkbm9k ZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgKIAogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bv c3RncmVzJywKIAkiVVBEQVRFIHRlbXBvcmFsX3BrIFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1sy LDMpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRF IHRlbXBvcmFsX3BrIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDEtMDEtMDEnIFRP ICcyMDAyLTAxLTAxJyBTRVQgYSA9ICdjJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKIAogJG5vZGVf cHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiREVMRVRFIEZST00gdGVtcG9yYWxf cGsgV0hFUkUgaWQgPSAnWzMsNCknIik7Ciskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9z dGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF9wayBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7 CiAKICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScpOwogCiAkcmVzdWx0 ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAqIEZS T00gdGVtcG9yYWxfcGsgT1JERVIgQlkgaWQsIHZhbGlkX2F0Iik7CiBpcyggJHJlc3VsdCwgcXF7 WzEsMil8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YQotWzIsMyl8WzIwMDAtMDEtMDEsMjAxMC0w MS0wMSl8YgorWzIsMyl8WzIwMDAtMDEtMDEsMjAwMS0wMS0wMSl8YgorWzIsMyl8WzIwMDEtMDEt MDEsMjAwMi0wMS0wMSl8YworWzIsMyl8WzIwMDMtMDEtMDEsMjAxMC0wMS0wMSl8YgogWzQsNSl8 WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YX0sICdyZXBsaWNhdGVkIHRlbXBvcmFsX3BrIERFRkFV TFQnKTsKIAogIyByZXBsaWNhdGUgd2l0aCBhIHVuaXF1ZSBrZXk6CkBAIC0xOTIsNiArMjEwLDEy IEBAIGlzKCAkc3RkZXJyLAogCXFxKHBzcWw6PHN0ZGluPjoxOiBFUlJPUjogIGNhbm5vdCB1cGRh dGUgdGFibGUgInRlbXBvcmFsX3VuaXF1ZSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVw bGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0ZXMKIEhJTlQ6ICBUbyBlbmFibGUgdXBk YXRpbmcgdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4p LAogCSJjYW4ndCBVUERBVEUgdGVtcG9yYWxfdW5pcXVlIERFRkFVTFQiKTsKKygkcmVzdWx0LCAk c3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJV UERBVEUgdGVtcG9yYWxfdW5pcXVlIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDEt MDEtMDEnIFRPICcyMDAyLTAxLTAxJyBTRVQgYSA9ICdjJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsK K2lzKCAkc3RkZXJyLAorCXFxKHBzcWw6PHN0ZGluPjoxOiBFUlJPUjogIGNhbm5vdCB1cGRhdGUg dGFibGUgInRlbXBvcmFsX3VuaXF1ZSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGlj YSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0ZXMKK0hJTlQ6ICBUbyBlbmFibGUgdXBkYXRp bmcgdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAor CSJjYW4ndCBVUERBVEUgRk9SIFBPUlRJT04gT0YgdGVtcG9yYWxfdW5pcXVlIERFRkFVTFQiKTsK IAogKCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIpID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdw b3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3VuaXF1ZSBXSEVSRSBpZCA9ICdbMyw0 KSciKTsKQEAgLTE5OSw2ICsyMjMsMTIgQEAgaXMoICRzdGRlcnIsCiAJcXEocHNxbDo8c3RkaW4+ OjE6IEVSUk9SOiAgY2Fubm90IGRlbGV0ZSBmcm9tIHRhYmxlICJ0ZW1wb3JhbF91bmlxdWUiIGJl Y2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyBk ZWxldGVzCiBISU5UOiAgVG8gZW5hYmxlIGRlbGV0aW5nIGZyb20gdGhlIHRhYmxlLCBzZXQgUkVQ TElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAogCSJjYW4ndCBERUxFVEUgdGVtcG9y YWxfdW5pcXVlIERFRkFVTFQiKTsKKygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2Rl X3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF91bmlx dWUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIwMDMtMDEt MDEnIFdIRVJFIGlkID0gJ1syLDMpJyIpOworaXMoICRzdGRlcnIsCisJcXEocHNxbDo8c3RkaW4+ OjE6IEVSUk9SOiAgY2Fubm90IGRlbGV0ZSBmcm9tIHRhYmxlICJ0ZW1wb3JhbF91bmlxdWUiIGJl Y2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyBk ZWxldGVzCitISU5UOiAgVG8gZW5hYmxlIGRlbGV0aW5nIGZyb20gdGhlIHRhYmxlLCBzZXQgUkVQ TElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAorCSJjYW4ndCBERUxFVEUgRk9SIFBP UlRJT04gT0YgdGVtcG9yYWxfdW5pcXVlIERFRkFVTFQiKTsKIAogJG5vZGVfcHVibGlzaGVyLT53 YWl0X2Zvcl9jYXRjaHVwKCdzdWIxJyk7CiAKQEAgLTI4NywxNiArMzE3LDIyIEBAICRub2RlX3B1 Ymxpc2hlci0+c2FmZV9wc3FsKAogCiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdy ZXMnLAogCSJVUERBVEUgdGVtcG9yYWxfbm9fa2V5IFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1sy LDMpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRF IHRlbXBvcmFsX25vX2tleSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAxLTAxLTAx JyBUTyAnMjAwMi0wMS0wMScgU0VUIGEgPSAnYycgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRu b2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBv cmFsX25vX2tleSBXSEVSRSBpZCA9ICdbMyw0KSciKTsKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9w c3FsKCdwb3N0Z3JlcycsCisJIkRFTEVURSBGUk9NIHRlbXBvcmFsX25vX2tleSBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQg PSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScp OwogCiAkcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJ IlNFTEVDVCAqIEZST00gdGVtcG9yYWxfbm9fa2V5IE9SREVSIEJZIGlkLCB2YWxpZF9hdCIpOwog aXMoICRyZXN1bHQsIHFxe1sxLDIpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGEKLVsyLDMpfFsy MDAwLTAxLTAxLDIwMTAtMDEtMDEpfGIKK1syLDMpfFsyMDAwLTAxLTAxLDIwMDEtMDEtMDEpfGIK K1syLDMpfFsyMDAxLTAxLTAxLDIwMDItMDEtMDEpfGMKK1syLDMpfFsyMDAzLTAxLTAxLDIwMTAt MDEtMDEpfGIKIFs0LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGF9LCAncmVwbGljYXRlZCB0 ZW1wb3JhbF9ub19rZXkgRlVMTCcpOwogCiAjIHJlcGxpY2F0ZSB3aXRoIGEgcHJpbWFyeSBrZXk6 CkBAIC0zMTAsMTYgKzM0NiwyMiBAQCAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgKIAogJG5v ZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiVVBEQVRFIHRlbXBvcmFsX3Br IFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1syLDMpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRFIHRlbXBvcmFsX3BrIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMDEtMDEtMDEnIFRPICcyMDAyLTAxLTAxJyBTRVQgYSA9ICdjJyBXSEVS RSBpZCA9ICdbMiwzKSciKTsKIAogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVz JywKIAkiREVMRVRFIEZST00gdGVtcG9yYWxfcGsgV0hFUkUgaWQgPSAnWzMsNCknIik7Ciskbm9k ZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3Jh bF9wayBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0w MS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3Jf Y2F0Y2h1cCgnc3ViMScpOwogCiAkcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3Fs KCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAqIEZST00gdGVtcG9yYWxfcGsgT1JERVIgQlkgaWQsIHZh bGlkX2F0Iik7CiBpcyggJHJlc3VsdCwgcXF7WzEsMil8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8 YQotWzIsMyl8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YgorWzIsMyl8WzIwMDAtMDEtMDEsMjAw MS0wMS0wMSl8YgorWzIsMyl8WzIwMDEtMDEtMDEsMjAwMi0wMS0wMSl8YworWzIsMyl8WzIwMDMt MDEtMDEsMjAxMC0wMS0wMSl8YgogWzQsNSl8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YX0sICdy ZXBsaWNhdGVkIHRlbXBvcmFsX3BrIEZVTEwnKTsKIAogIyByZXBsaWNhdGUgd2l0aCBhIHVuaXF1 ZSBrZXk6CkBAIC0zMzMsMTcgKzM3NSwyMyBAQCAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgK IAogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiVVBEQVRFIHRlbXBv cmFsX3VuaXF1ZSBTRVQgYSA9ICdiJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKKyRub2RlX3B1Ymxp c2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIlVQREFURSB0ZW1wb3JhbF91bmlxdWUgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMS0wMS0wMScgVE8gJzIwMDItMDEtMDEnIFNF VCBhID0gJ2MnIFdIRVJFIGlkID0gJ1syLDMpJyIpOwogCiAkbm9kZV9wdWJsaXNoZXItPnNhZmVf cHNxbCgncG9zdGdyZXMnLAogCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF91bmlxdWUgV0hFUkUgaWQg PSAnWzMsNCknIik7Ciskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJE RUxFVEUgRlJPTSB0ZW1wb3JhbF91bmlxdWUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAwMi0wMS0wMScgVE8gJzIwMDMtMDEtMDEnIFdIRVJFIGlkID0gJ1syLDMpJyIpOwogCiAkbm9k ZV9wdWJsaXNoZXItPndhaXRfZm9yX2NhdGNodXAoJ3N1YjEnKTsKIAogJHJlc3VsdCA9ICRub2Rl X3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX3VuaXF1ZSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQiKTsKIGlzKCAkcmVzdWx0LCBxcXtbMSwy KXxbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKXxhCi1bMiwzKXxbMjAwMC0wMS0wMSwyMDEwLTAxLTAx KXxiCi1bNCw1KXxbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKXxhfSwgJ3JlcGxpY2F0ZWQgdGVtcG9y YWxfdW5pcXVlIEZVTEwnKTsKK1syLDMpfFsyMDAwLTAxLTAxLDIwMDEtMDEtMDEpfGIKK1syLDMp fFsyMDAxLTAxLTAxLDIwMDItMDEtMDEpfGMKK1syLDMpfFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEp fGIKK1s0LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGF9LCAncmVwbGljYXRlZCB0ZW1wb3Jh bF91bmlxdWUgREVGQVVMVCcpOwogCiAjIGNsZWFudXAKIApAQCAtNDI1LDE2ICs0NzMsMjIgQEAg JG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoCiAKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3Fs KCdwb3N0Z3JlcycsCiAJIlVQREFURSB0ZW1wb3JhbF9wayBTRVQgYSA9ICdiJyBXSEVSRSBpZCA9 ICdbMiwzKSciKTsKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIlVQ REFURSB0ZW1wb3JhbF9wayBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAxLTAxLTAx JyBUTyAnMjAwMi0wMS0wMScgU0VUIGEgPSAnYycgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRu b2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBv cmFsX3BrIFdIRVJFIGlkID0gJ1szLDQpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwo J3Bvc3RncmVzJywKKwkiREVMRVRFIEZST00gdGVtcG9yYWxfcGsgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIwMDMtMDEtMDEnIFdIRVJFIGlkID0gJ1syLDMp JyIpOwogCiAkbm9kZV9wdWJsaXNoZXItPndhaXRfZm9yX2NhdGNodXAoJ3N1YjEnKTsKIAogJHJl c3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX3BrIE9SREVSIEJZIGlkLCB2YWxpZF9hdCIpOwogaXMoICRyZXN1bHQs IHFxe1sxLDIpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGEKLVsyLDMpfFsyMDAwLTAxLTAxLDIw MTAtMDEtMDEpfGIKK1syLDMpfFsyMDAwLTAxLTAxLDIwMDEtMDEtMDEpfGIKK1syLDMpfFsyMDAx LTAxLTAxLDIwMDItMDEtMDEpfGMKK1syLDMpfFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEpfGIKIFs0 LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGF9LCAncmVwbGljYXRlZCB0ZW1wb3JhbF9wayBV U0lORyBJTkRFWCcpOwogCiAjIHJlcGxpY2F0ZSB3aXRoIGEgdW5pcXVlIGtleToKQEAgLTQ0OCwx NiArNTAyLDIyIEBAICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKAogCiAkbm9kZV9wdWJsaXNo ZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJVUERBVEUgdGVtcG9yYWxfdW5pcXVlIFNFVCBh ID0gJ2InIFdIRVJFIGlkID0gJ1syLDMpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwo J3Bvc3RncmVzJywKKwkiVVBEQVRFIHRlbXBvcmFsX3VuaXF1ZSBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDAxLTAxLTAxJyBUTyAnMjAwMi0wMS0wMScgU0VUIGEgPSAnYycgV0hFUkUg aWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3Jlcycs CiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3VuaXF1ZSBXSEVSRSBpZCA9ICdbMyw0KSciKTsKKyRu b2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIkRFTEVURSBGUk9NIHRlbXBv cmFsX3VuaXF1ZSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAn MjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+d2Fp dF9mb3JfY2F0Y2h1cCgnc3ViMScpOwogCiAkcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2Fm ZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAqIEZST00gdGVtcG9yYWxfdW5pcXVlIE9SREVS IEJZIGlkLCB2YWxpZF9hdCIpOwogaXMoICRyZXN1bHQsIHFxe1sxLDIpfFsyMDAwLTAxLTAxLDIw MTAtMDEtMDEpfGEKLVsyLDMpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGIKK1syLDMpfFsyMDAw LTAxLTAxLDIwMDEtMDEtMDEpfGIKK1syLDMpfFsyMDAxLTAxLTAxLDIwMDItMDEtMDEpfGMKK1sy LDMpfFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEpfGIKIFs0LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEt MDEpfGF9LCAncmVwbGljYXRlZCB0ZW1wb3JhbF91bmlxdWUgVVNJTkcgSU5ERVgnKTsKIAogIyBj bGVhbnVwCkBAIC01NDMsNiArNjAzLDEyIEBAIGlzKCAkc3RkZXJyLAogCXFxKHBzcWw6PHN0ZGlu PjoxOiBFUlJPUjogIGNhbm5vdCB1cGRhdGUgdGFibGUgInRlbXBvcmFsX25vX2tleSIgYmVjYXVz ZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0 ZXMKIEhJTlQ6ICBUbyBlbmFibGUgdXBkYXRpbmcgdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVO VElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAogCSJjYW4ndCBVUERBVEUgdGVtcG9yYWxfbm9fa2V5 IE5PVEhJTkciKTsKKygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hl ci0+cHNxbCgncG9zdGdyZXMnLAorCSJVUERBVEUgdGVtcG9yYWxfbm9fa2V5IEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMDEtMDEtMDEnIFRPICcyMDAyLTAxLTAxJyBTRVQgYSA9ICdj JyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKK2lzKCAkc3RkZXJyLAorCXFxKHBzcWw6PHN0ZGluPjox OiBFUlJPUjogIGNhbm5vdCB1cGRhdGUgdGFibGUgInRlbXBvcmFsX25vX2tleSIgYmVjYXVzZSBp dCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0ZXMK K0hJTlQ6ICBUbyBlbmFibGUgdXBkYXRpbmcgdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElU WSB1c2luZyBBTFRFUiBUQUJMRS4pLAorCSJjYW4ndCBVUERBVEUgdGVtcG9yYWxfbm9fa2V5IE5P VEhJTkciKTsKIAogKCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIpID0gJG5vZGVfcHVibGlzaGVy LT5wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX25vX2tleSBXSEVSRSBp ZCA9ICdbMyw0KSciKTsKQEAgLTU1MCw2ICs2MTYsMTIgQEAgaXMoICRzdGRlcnIsCiAJcXEocHNx bDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IGRlbGV0ZSBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9u b19rZXkiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1 Ymxpc2hlcyBkZWxldGVzCiBISU5UOiAgVG8gZW5hYmxlIGRlbGV0aW5nIGZyb20gdGhlIHRhYmxl LCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAogCSJjYW4ndCBERUxF VEUgdGVtcG9yYWxfbm9fa2V5IE5PVEhJTkciKTsKKygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJy KSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1w b3JhbF9ub19rZXkgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8g JzIwMDMtMDEtMDEnIFdIRVJFIGlkID0gJ1syLDMpJyIpOworaXMoICRzdGRlcnIsCisJcXEocHNx bDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IGRlbGV0ZSBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9u b19rZXkiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1 Ymxpc2hlcyBkZWxldGVzCitISU5UOiAgVG8gZW5hYmxlIGRlbGV0aW5nIGZyb20gdGhlIHRhYmxl LCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAorCSJjYW4ndCBERUxF VEUgdGVtcG9yYWxfbm9fa2V5IE5PVEhJTkciKTsKIAogJG5vZGVfcHVibGlzaGVyLT53YWl0X2Zv cl9jYXRjaHVwKCdzdWIxJyk7CiAKQEAgLTU3NSw2ICs2NDcsMTIgQEAgaXMoICRzdGRlcnIsCiAJ cXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxf cGsiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxp c2hlcyB1cGRhdGVzCiBISU5UOiAgVG8gZW5hYmxlIHVwZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJF UExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKIAkiY2FuJ3QgVVBEQVRFIHRlbXBv cmFsX3BrIE5PVEhJTkciKTsKKygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1 Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJVUERBVEUgdGVtcG9yYWxfcGsgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMS0wMS0wMScgVE8gJzIwMDItMDEtMDEnIFNFVCBhID0g J2MnIFdIRVJFIGlkID0gJ1syLDMpJyIpOworaXMoICRzdGRlcnIsCisJcXEocHNxbDo8c3RkaW4+ OjE6IEVSUk9SOiAgY2Fubm90IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxfcGsiIGJlY2F1c2UgaXQg ZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyB1cGRhdGVzCitI SU5UOiAgVG8gZW5hYmxlIHVwZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkg dXNpbmcgQUxURVIgVEFCTEUuKSwKKwkiY2FuJ3QgVVBEQVRFIHRlbXBvcmFsX3BrIE5PVEhJTkci KTsKIAogKCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIpID0gJG5vZGVfcHVibGlzaGVyLT5wc3Fs KCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3BrIFdIRVJFIGlkID0gJ1szLDQp JyIpOwpAQCAtNTgyLDYgKzY2MCwxMiBAQCBpcyggJHN0ZGVyciwKIAlxcShwc3FsOjxzdGRpbj46 MTogRVJST1I6ICBjYW5ub3QgZGVsZXRlIGZyb20gdGFibGUgInRlbXBvcmFsX3BrIiBiZWNhdXNl IGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNoZXMgZGVsZXRl cwogSElOVDogIFRvIGVuYWJsZSBkZWxldGluZyBmcm9tIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0Eg SURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKIAkiY2FuJ3QgREVMRVRFIHRlbXBvcmFsX3Br IE5PVEhJTkciKTsKKygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hl ci0+cHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF9wayBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQg PSAnWzIsMyknIik7CitpcyggJHN0ZGVyciwKKwlxcShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBj YW5ub3QgZGVsZXRlIGZyb20gdGFibGUgInRlbXBvcmFsX3BrIiBiZWNhdXNlIGl0IGRvZXMgbm90 IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNoZXMgZGVsZXRlcworSElOVDogIFRv IGVuYWJsZSBkZWxldGluZyBmcm9tIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNp bmcgQUxURVIgVEFCTEUuKSwKKwkiY2FuJ3QgREVMRVRFIHRlbXBvcmFsX3BrIE5PVEhJTkciKTsK IAogJG5vZGVfcHVibGlzaGVyLT53YWl0X2Zvcl9jYXRjaHVwKCdzdWIxJyk7CiAKQEAgLTYwNyw2 ICs2OTEsMTIgQEAgaXMoICRzdGRlcnIsCiAJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fu bm90IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxfdW5pcXVlIiBiZWNhdXNlIGl0IGRvZXMgbm90IGhh dmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNoZXMgdXBkYXRlcwogSElOVDogIFRvIGVu YWJsZSB1cGRhdGluZyB0aGUgdGFibGUsIHNldCBSRVBMSUNBIElERU5USVRZIHVzaW5nIEFMVEVS IFRBQkxFLiksCiAJImNhbid0IFVQREFURSB0ZW1wb3JhbF91bmlxdWUgTk9USElORyIpOworKCRy ZXN1bHQsICRzdGRvdXQsICRzdGRlcnIpID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0Z3Jl cycsCisJIlVQREFURSB0ZW1wb3JhbF91bmlxdWUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAwMS0wMS0wMScgVE8gJzIwMDItMDEtMDEnIFNFVCBhID0gJ2MnIFdIRVJFIGlkID0gJ1sy LDMpJyIpOworaXMoICRzdGRlcnIsCisJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90 IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxfdW5pcXVlIiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUg YSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNoZXMgdXBkYXRlcworSElOVDogIFRvIGVuYWJs ZSB1cGRhdGluZyB0aGUgdGFibGUsIHNldCBSRVBMSUNBIElERU5USVRZIHVzaW5nIEFMVEVSIFRB QkxFLiksCisJImNhbid0IFVQREFURSBGT1IgUE9SVElPTiBPRiB0ZW1wb3JhbF91bmlxdWUgTk9U SElORyIpOwogCiAoJHJlc3VsdCwgJHN0ZG91dCwgJHN0ZGVycikgPSAkbm9kZV9wdWJsaXNoZXIt PnBzcWwoJ3Bvc3RncmVzJywKIAkiREVMRVRFIEZST00gdGVtcG9yYWxfdW5pcXVlIFdIRVJFIGlk ID0gJ1szLDQpJyIpOwpAQCAtNjE0LDYgKzcwNCwxMiBAQCBpcyggJHN0ZGVyciwKIAlxcShwc3Fs OjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgZGVsZXRlIGZyb20gdGFibGUgInRlbXBvcmFsX3Vu aXF1ZSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVi bGlzaGVzIGRlbGV0ZXMKIEhJTlQ6ICBUbyBlbmFibGUgZGVsZXRpbmcgZnJvbSB0aGUgdGFibGUs IHNldCBSRVBMSUNBIElERU5USVRZIHVzaW5nIEFMVEVSIFRBQkxFLiksCiAJImNhbid0IERFTEVU RSB0ZW1wb3JhbF91bmlxdWUgTk9USElORyIpOworKCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIp ID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0Z3JlcycsCisJIkRFTEVURSBGUk9NIHRlbXBv cmFsX3VuaXF1ZSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAn MjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CitpcyggJHN0ZGVyciwKKwlxcShwc3Fs OjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgZGVsZXRlIGZyb20gdGFibGUgInRlbXBvcmFsX3Vu aXF1ZSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVi bGlzaGVzIGRlbGV0ZXMKK0hJTlQ6ICBUbyBlbmFibGUgZGVsZXRpbmcgZnJvbSB0aGUgdGFibGUs IHNldCBSRVBMSUNBIElERU5USVRZIHVzaW5nIEFMVEVSIFRBQkxFLiksCisJImNhbid0IERFTEVU RSBGT1IgUE9SVElPTiBPRiB0ZW1wb3JhbF91bmlxdWUgTk9USElORyIpOwogCiAkbm9kZV9wdWJs aXNoZXItPndhaXRfZm9yX2NhdGNodXAoJ3N1YjEnKTsKIApkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xz L3BnaW5kZW50L3R5cGVkZWZzLmxpc3QgYi9zcmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlz dAppbmRleCAwMThiNTkxOWNmNi4uYzBhODI1MzQxOGMgMTAwNjQ0Ci0tLSBhL3NyYy90b29scy9w Z2luZGVudC90eXBlZGVmcy5saXN0CisrKyBiL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5s aXN0CkBAIC04MzcsNiArODM3LDkgQEAgRm9yQm90aFN0YXRlCiBGb3JFYWNoU3RhdGUKIEZvckZp dmVTdGF0ZQogRm9yRm91clN0YXRlCitGb3JQb3J0aW9uT2ZDbGF1c2UKK0ZvclBvcnRpb25PZkV4 cHIKK0ZvclBvcnRpb25PZlN0YXRlCiBGb3JUaHJlZVN0YXRlCiBGb3JlaWduQXN5bmNDb25maWd1 cmVXYWl0X2Z1bmN0aW9uCiBGb3JlaWduQXN5bmNOb3RpZnlfZnVuY3Rpb24KQEAgLTk3MCw2ICs5 NzMsNyBAQCBGb3JtX3BnX3RzX3RlbXBsYXRlCiBGb3JtX3BnX3R5cGUKIEZvcm1fcGdfdXNlcl9t YXBwaW5nCiBGb3JtYXROb2RlCitGUE9fUXVlcnlIYXNoRW50cnkKIEZyZWVCbG9ja051bWJlckFy cmF5CiBGcmVlTGlzdERhdGEKIEZyZWVQYWdlQnRyZWUKLS0gCjIuMzkuNQoK --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0001-Add-docs-section-for-temporal-tables-with-primar.patch" Content-Disposition: attachment; filename="v59-0001-Add-docs-section-for-temporal-tables-with-primar.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk3z0 RnJvbSBmMTRmZWZjZjg3NjRiOTZjNzVhZmEwNzYzMTJkMzRkMjU5NzdjNDljIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMTcgSnVuIDIwMjUgMTc6MTI6MTAgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwMS8xMV0gQWRkIGRvY3Mgc2VjdGlvbiBmb3IgdGVtcG9yYWwgdGFibGVz LCB3aXRoIHByaW1hcnkKIGtleXMKClRoaXMgc2VjdGlvbiBpbnRyb2R1Y2VzIHRlbXBvcmFsIHRh Ymxlcywgd2l0aCBhIGZvY3VzIG9uIEFwcGxpY2F0aW9uIFRpbWUgKHdoaWNoCndlIHN1cHBvcnQp IGFuZCBvbmx5IGEgYnJpZWYgbWVudGlvbiBvZiBTeXN0ZW0gVGltZSAod2hpY2ggd2UgZG9uJ3Qp LiBJdCBjb3ZlcnMKdGVtcG9yYWwgcHJpbWFyeSBrZXlzIGFuZCB1bmlxdWUgY29uc3RyYWludHMu IFRlbXBvcmFsIGZvcmVpZ24ga2V5cyBhcmUKZG9jdW1lbnRlZCBpbiB0aGUgbmV4dCBjb21taXQu IFdlIHdpbGwgZG9jdW1lbnQgdGVtcG9yYWwgdXBkYXRlL2RlbGV0ZSBhbmQKcGVyaW9kcyBhcyB3 ZSBhZGQgdGhvc2UgZmVhdHVyZXMuCgpUaGlzIGNvbW1pdCBhbHNvIGFkZHMgZ2xvc3NhcnkgZW50 cmllcyBmb3IgdGVtcG9yYWwgdGFibGUsIGFwcGxpY2F0aW9uCnRpbWUsIGFuZCBzeXN0ZW0gdGlt ZS4KCkF1dGhvcjogUGF1bCBBLiBKdW5nd2lydGggPHBqQGlsbHVtaW5hdGVkY29tcHV0aW5nLmNv bT4KLS0tCiBkb2Mvc3JjL3NnbWwvZGRsLnNnbWwgICAgICAgICAgICAgICAgICAgICB8IDE5OCAr KysrKysrKysrKysrKysrKysrKysrCiBkb2Mvc3JjL3NnbWwvZ2xvc3Nhcnkuc2dtbCAgICAgICAg ICAgICAgICB8ICA0NyArKysrKwogZG9jL3NyYy9zZ21sL2ltYWdlcy9NYWtlZmlsZSAgICAgICAg ICAgICAgfCAgIDMgKy0KIGRvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtZW50aXRpZXMuc3Zn IHwgIDM0ICsrKysKIGRvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtZW50aXRpZXMudHh0IHwg IDE2ICsrCiA1IGZpbGVzIGNoYW5nZWQsIDI5NyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0p CiBjcmVhdGUgbW9kZSAxMDA2NDQgZG9jL3NyYy9zZ21sL2ltYWdlcy90ZW1wb3JhbC1lbnRpdGll cy5zdmcKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLWVu dGl0aWVzLnR4dAoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9kZGwuc2dtbCBiL2RvYy9zcmMv c2dtbC9kZGwuc2dtbAppbmRleCA2NWJjMDcwZDJlNS4uNzRiNTUwMDVmZmUgMTAwNjQ0Ci0tLSBh L2RvYy9zcmMvc2dtbC9kZGwuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZGRsLnNnbWwKQEAgLTE1 ODUsNiArMTU4NSwyMDQgQEAgQ1JFQVRFIFRBQkxFIGNpcmNsZXMgKAogICAgPC9wYXJhPgogIDwv c2VjdDE+CiAKKworIDxzZWN0MSBpZD0iZGRsLXRlbXBvcmFsLXRhYmxlcyI+CisgIDx0aXRsZT5U ZW1wb3JhbCBUYWJsZXM8L3RpdGxlPgorCisgIDxpbmRleHRlcm0gem9uZT0iZGRsLXRlbXBvcmFs LXRhYmxlcyI+CisgICA8cHJpbWFyeT50ZW1wb3JhbDwvcHJpbWFyeT4KKyAgPC9pbmRleHRlcm0+ CisKKyAgPHBhcmE+CisgICBUZW1wb3JhbCB0YWJsZXMgYWxsb3cgdXNlcnMgdG8gdHJhY2sgZGlm ZmVyZW50IGRpbWVuc2lvbnMgb2YKKyAgIGhpc3RvcnkuIEFwcGxpY2F0aW9uIHRpbWUgdHJhY2tz IHRoZSBoaXN0b3J5IG9mIGEgdGhpbmcgb3V0IGluIHRoZQorICAgd29ybGQsIGFuZCBzeXN0ZW0g dGltZSB0cmFja3MgdGhlIGhpc3Rvcnkgb2YgdGhlIGRhdGFiYXNlIGl0c2VsZi4gVGhpcworICAg Y2hhcHRlciBkZXNjcmliZXMgaG93IHRvIGV4cHJlc3MgYW5kIG1hbmFnZSBzdWNoIGhpc3Rvcmll cyBpbiB0ZW1wb3JhbAorICAgdGFibGVzLgorICA8L3BhcmE+CisKKyAgPHNlY3QyIGlkPSJkZGwt YXBwbGljYXRpb24tdGltZSI+CisgICA8dGl0bGU+QXBwbGljYXRpb24gVGltZTwvdGl0bGU+CisK KyAgIDxpbmRleHRlcm0gem9uZT0iZGRsLWFwcGxpY2F0aW9uLXRpbWUiPgorICAgIDxwcmltYXJ5 PmFwcGxpY2F0aW9uIHRpbWU8L3ByaW1hcnk+CisgICA8L2luZGV4dGVybT4KKworICAgPHBhcmE+ CisgICAgPGZpcnN0dGVybT5BcHBsaWNhdGlvbiB0aW1lPC9maXJzdHRlcm0+IHJlZmVycyB0byBh IGhpc3Rvcnkgb2YgdGhlCisgICAgZW50aXR5IGRlc2NyaWJlZCBieSBhIHRhYmxlLiBJbiBhIHR5 cGljYWwgbm9uLXRlbXBvcmFsIHRhYmxlLCB0aGVyZSBpcworICAgIHNpbmdsZSByb3cgZm9yIGVh Y2ggZW50aXR5LiBJbiBhIHRlbXBvcmFsIHRhYmxlLCBhbiBlbnRpdHkgbWF5IGhhdmUKKyAgICBt dWx0aXBsZSByb3dzLCBhcyBsb25nIGFzIHRob3NlIHJvd3MgZGVzY3JpYmUgbm9uLW92ZXJsYXBw aW5nIHBlcmlvZHMKKyAgICBmcm9tIGl0cyBoaXN0b3J5LiBBcHBsaWNhdGlvbiB0aW1lIHJlcXVp cmVzIGVhY2ggcm93IHRvIGhhdmUgYSBzdGFydAorICAgIGFuZCBlbmQgdGltZSwgZXhwcmVzc2lu ZyB3aGVuIHRoZSByb3cgaXMgdHJ1ZS4KKyAgIDwvcGFyYT4KKworICAgPHBhcmE+CisgICAgVGhl IGZvbGxvd2luZyBTUUwgY3JlYXRlcyBhIHRlbXBvcmFsIHRhYmxlIHRoYXQgY2FuIHN0b3JlIGFw cGxpY2F0aW9uIHRpbWU6Cis8cHJvZ3JhbWxpc3Rpbmc+CitDUkVBVEUgVEFCTEUgcHJvZHVjdHMg KAorICBpZCAgICAgICBpbnRlZ2VyICAgTk9UIE5VTEwsCisgIHByaWNlICAgIGRlY2ltYWwgICBO T1QgTlVMTCwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlIE5PVCBOVUxMCispOworPC9wcm9ncmFtbGlz dGluZz4KKyAgIDwvcGFyYT4KKworICAgPHBhcmE+CisgICAgUmVjb3JkcyBpbiBhIHRlbXBvcmFs IHRhYmxlIGNhbiBiZSBwbG90dGVkIG9uIGEgdGltZWxpbmUsIGFzIGluCisgICAgPHhyZWYgbGlu a2VuZD0idGVtcG9yYWwtZW50aXRpZXMtZmlndXJlIi8+LiBIZXJlIHdlIHNob3cgdGhyZWUgcmVj b3JkcworICAgIGRlc2NyaWJpbmcgdHdvIHByb2R1Y3RzLiBFYWNoIHJlY29yZCBpcyBhIHR1cGxl IHdpdGggdGhyZWUgYXR0cmlidXRlczoKKyAgICB0aGUgaWQsIHRoZSBwcmljZSwgYW5kIHRoZSBh cHBsaWNhdGlvbiB0aW1lLiBTbyBwcm9kdWN0IDUgd2FzIGZpcnN0CisgICAgb2ZmZXJlZCBmb3Ig NS4wMCBzdGFydGluZyBKYW51YXJ5IDEsIDIwMjAsIGJ1dCB0aGVuIGJlY2FtZSA4LjAwIHN0YXJ0 aW5nCisgICAgSmFudWFyeSAxLCAyMDIyLiBJdHMgc2Vjb25kIHJlY29yZCBoYXMgbm8gc3BlY2lm aWVkIGVuZCB0aW1lLAorICAgIGluZGljYXRpbmcgdGhhdCBpdCBpcyB0cnVlIGluZGVmaW5pdGVs eSwgb3IgZm9yIGFsbCBmdXR1cmUgdGltZS4gVGhlCisgICAgbGFzdCByZWNvcmQgc2hvd3MgdGhh dCBwcm9kdWN0IDYgd2FzIGludHJvZHVjZWQgSmFudWFyeSAxLCAyMDIxIGZvciA5LjAwLAorICAg IHRoZW4gY2FuY2VsZWQgSmFudWFyeSAxLCAyMDI0LgorICAgPC9wYXJhPgorCisgICA8ZmlndXJl IGlkPSJ0ZW1wb3JhbC1lbnRpdGllcy1maWd1cmUiPgorICAgIDx0aXRsZT5BcHBsaWNhdGlvbiBU aW1lIEV4YW1wbGU8L3RpdGxlPgorICAgIDxtZWRpYW9iamVjdD4KKyAgICAgPGltYWdlb2JqZWN0 PgorICAgICAgPGltYWdlZGF0YSBmaWxlcmVmPSJpbWFnZXMvdGVtcG9yYWwtZW50aXRpZXMuc3Zn IiBmb3JtYXQ9IlNWRyIgd2lkdGg9IjEwMCUiLz4KKyAgICAgPC9pbWFnZW9iamVjdD4KKyAgICA8 L21lZGlhb2JqZWN0PgorICAgPC9maWd1cmU+CisKKyAgIDxwYXJhPgorICAgIEluIGEgdGFibGUs IHRoZXNlIHJlY29yZHMgd291bGQgYmU6Cis8cHJvZ3JhbWxpc3Rpbmc+CisgaWQgfCBwcmljZSB8 ICAgICAgICB2YWxpZF9hdAorLS0tLSstLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyAgNSB8ICAgICA1IHwgWzIwMjAtMDEtMDEsMjAyMi0wMS0wMSkKKyAgNSB8ICAgICA4IHwgWzIw MjItMDEtMDEsKQorICA2IHwgICAgIDkgfCBbMjAyMS0wMS0wMSwyMDI0LTAxLTAxKQorPC9wcm9n cmFtbGlzdGluZz4KKyAgIDwvcGFyYT4KKworICAgPHBhcmE+CisgICAgV2Ugc2hvdyB0aGUgYXBw bGljYXRpb24gdGltZSB1c2luZyByYW5nZXR5cGUgbm90YXRpb24sIGJlY2F1c2UgaXQKKyAgICBp cyBzdG9yZWQgYXMgYSBzaW5nbGUgY29sdW1uIChlaXRoZXIgYSByYW5nZSBvciBtdWx0aXJhbmdl KS4gQnkKKyAgICBjb252ZW50aW9uIHJhbmdlcyBpbmNsdWRlIHRoZWlyIHN0YXJ0IHBvaW50IGJ1 dCBleGNsdWRlIHRoZWlyIGVuZAorICAgIHBvaW50LiBUaGF0IHdheSB0d28gYWRqYWNlbnQgcmFu Z2VzIGNvdmVyIGFsbCBwb2ludHMgd2l0aG91dAorICAgIG92ZXJsYXBwaW5nLgorICAgPC9wYXJh PgorCisgICA8cGFyYT4KKyAgICBJbiBwcmluY2lwbGUsIGEgdGFibGUgd2l0aCBhcHBsaWNhdGlv bi10aW1lIHJhbmdlcy9tdWx0aXJhbmdlcyBpcworICAgIGVxdWl2YWxlbnQgdG8gYSB0YWJsZSB0 aGF0IHN0b3JlcyBhcHBsaWNhdGlvbi10aW1lICJpbnN0YW50cyI6IG9uZSBmb3IKKyAgICBlYWNo IHNlY29uZCwgbWlsbGlzZWNvbmQsIG5hbm9zZWNvbmQsIG9yIHdoYXRldmVyIGZpbmVzdCBncmFu dWxhcml0eSBpcworICAgIGF2YWlsYWJsZS4gQnV0IHN1Y2ggYSB0YWJsZSB3b3VsZCBjb250YWlu IGZhciB0b28gbWFueSByb3dzLCBzbworICAgIHJhbmdlcy9tdWx0aXJhbmdlcyBvZmZlciBhbiBv cHRpbWl6YXRpb24gdG8gcmVwcmVzZW50IHRoZSBzYW1lCisgICAgaW5mb3JtYXRpb24gaW4gYSBj b21wYWN0IGZvcm0uIEluIGFkZGl0aW9uLCByYW5nZXMgYW5kIG11bHRpcmFuZ2VzCisgICAgb2Zm ZXIgYSBtb3JlIGNvbnZlbmllbnQgaW50ZXJmYWNlIGZvciB0eXBpY2FsIHRlbXBvcmFsIG9wZXJh dGlvbnMsCisgICAgd2hlcmUgcmVjb3JkcyBjaGFuZ2UgaW5mcmVxdWVudGx5IGVub3VnaCB0aGF0 IHNlcGFyYXRlICJ2ZXJzaW9ucyIKKyAgICBwZXJzaXN0IGZvciBleHRlbmRlZCBwZXJpb2RzIG9m IHRpbWUuCisgICA8L3BhcmE+CisKKyAgIDxzZWN0MyBpZD0iZGRsLWFwcGxpY2F0aW9uLXRpbWUt cHJpbWFyeS1rZXlzIj4KKyAgICA8dGl0bGU+VGVtcG9yYWwgUHJpbWFyeSBLZXlzIGFuZCBVbmlx dWUgQ29uc3RyYWludHM8L3RpdGxlPgorCisgICAgPHBhcmE+CisgICAgIEEgdGFibGUgd2l0aCBh cHBsaWNhdGlvbiB0aW1lIGhhcyBhIGRpZmZlcmVudCBjb25jZXB0IG9mIGVudGl0eQorICAgICBp bnRlZ3JpdHkgdGhhbiBhIG5vbi10ZW1wb3JhbCB0YWJsZS4gVGVtcG9yYWwgZW50aXR5IGludGVn cml0eSBjYW4gYmUKKyAgICAgZW5mb3JjZWQgd2l0aCBhIHRlbXBvcmFsIHByaW1hcnkga2V5LiBB IHJlZ3VsYXIgcHJpbWFyeSBrZXkgaGFzIGF0CisgICAgIGxlYXN0IG9uZSBlbGVtZW50LCBhbGwg ZWxlbWVudHMgYXJlIDxsaXRlcmFsPk5PVCBOVUxMPC9saXRlcmFsPiwgYW5kCisgICAgIHRoZSBj b21iaW5lZCB2YWx1ZSBvZiBhbGwgZWxlbWVudHMgaXMgdW5pcXVlLiBBIHRlbXBvcmFsIHByaW1h cnkga2V5CisgICAgIGFsc28gaGFzIGF0IGxlYXN0IG9uZSBzdWNoIGVsZW1lbnQsIGJ1dCBpbiBh ZGRpdGlvbiBpdCBoYXMgYSBmaW5hbAorICAgICBlbGVtZW50IHRoYXQgaXMgYSByYW5nZXR5cGUg b3IgbXVsdGlyYW5nZXR5cGUgdGhhdCBzaG93cyB3aGVuIGl0IHdhcworICAgICB0cnVlLiBUaGUg cmVndWxhciBwYXJ0cyBvZiB0aGUga2V5IG11c3QgYmUgdW5pcXVlIGZvciBhbnkgbW9tZW50IGlu CisgICAgIHRpbWUsIGJ1dCBub24tdW5pcXVlIHJlY29yZHMgYXJlIGFsbG93ZWQgaWYgdGhlaXIg YXBwbGljYXRpb24gdGltZSBkb2VzCisgICAgIG5vdCBvdmVybGFwLgorICAgIDwvcGFyYT4KKwor ICAgIDxwYXJhPgorICAgICBUaGUgc3ludGF4IHRvIGNyZWF0ZSBhIHRlbXBvcmFsIHByaW1hcnkg a2V5IGlzIGFzIGZvbGxvd3M6CisKKzxwcm9ncmFtbGlzdGluZz4KK0FMVEVSIFRBQkxFIHByb2R1 Y3RzCisgIEFERCBDT05TVFJBSU5UIHByb2R1Y3RzX3BrZXkKKyAgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKKzwvcHJvZ3JhbWxpc3Rpbmc+CisKKyAgICAgSW4g dGhpcyBleGFtcGxlLCA8bGl0ZXJhbD5pZDwvbGl0ZXJhbD4gaXMgdGhlIG5vbi10ZW1wb3JhbCBw YXJ0IG9mCisgICAgIHRoZSBrZXksIGFuZCA8bGl0ZXJhbD52YWxpZF9hdDwvbGl0ZXJhbD4gaXMg YSByYW5nZSBjb2x1bW4gY29udGFpbmluZworICAgICB0aGUgYXBwbGljYXRpb24gdGltZS4gWW91 IGNhbiBhbHNvIGNyZWF0ZSB0aGUgcHJpbWFyeSBrZXkgYXMgcGFydCBvZgorICAgICB0aGUgPGxp bmsgbGlua2VuZD0ic3FsLWNyZWF0ZXRhYmxlIj48bGl0ZXJhbD5DUkVBVEUKKyAgICAgVEFCTEU8 L2xpdGVyYWw+PC9saW5rPiBjb21tYW5kLgorICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAg ICBUaGUgPGxpdGVyYWw+V0lUSE9VVCBPVkVSTEFQUzwvbGl0ZXJhbD4gY29sdW1uIG11c3QgYmUg PGxpdGVyYWw+Tk9UCisgICAgIE5VTEw8L2xpdGVyYWw+IChsaWtlIHRoZSBvdGhlciBwYXJ0cyBv ZiB0aGUga2V5KS4gSW4gYWRkaXRpb24gaXQgbWF5CisgICAgIG5vdCBjb250YWluIGVtcHR5IHZh bHVlczogYSByYW5nZXR5cGUgb2YgPGxpdGVyYWw+J2VtcHR5JzwvbGl0ZXJhbD4gb3IKKyAgICAg YSBtdWx0aXJhbmdlIG9mIDxsaXRlcmFsPnt9PC9saXRlcmFsPi4gQW4gZW1wdHkgYXBwbGljYXRp b24gdGltZSB3b3VsZAorICAgICBoYXZlIG5vIG1lYW5pbmcuCisgICAgPC9wYXJhPgorCisgICAg PHBhcmE+CisgICAgIEl0IGlzIGFsc28gcG9zc2libGUgdG8gY3JlYXRlIGEgdGVtcG9yYWwgdW5p cXVlIGNvbnN0cmFpbnQgdGhhdCBpcworICAgICBub3QgYSBwcmltYXJ5IGtleS4gVGhlIHN5bnRh eCBpcyBzaW1pbGFyOgorCis8cHJvZ3JhbWxpc3Rpbmc+CitBTFRFUiBUQUJMRSBwcm9kdWN0cwor ICBBREQgQ09OU1RSQUlOVCBwcm9kdWN0c19pZF92YWxpZF9hdF9rZXkKKyAgVU5JUVVFIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7Cis8L3Byb2dyYW1saXN0aW5nPgorCisgICAgIFlv dSBjYW4gYWxzbyBjcmVhdGUgdGhlIHVuaXF1ZSBjb25zdHJhaW50IGFzIHBhcnQgb2YgdGhlIDxs aW5rCisgICAgIGxpbmtlbmQ9InNxbC1jcmVhdGV0YWJsZSI+PGxpdGVyYWw+Q1JFQVRFIFRBQkxF PC9saXRlcmFsPjwvbGluaz4KKyAgICAgY29tbWFuZC4KKyAgICA8L3BhcmE+CisKKyAgICA8cGFy YT4KKyAgICAgVGVtcG9yYWwgdW5pcXVlIGNvbnN0cmFpbnRzIGFsc28gZm9yYmlkIGVtcHR5IHJh bmdlcy9tdWx0aXJhbmdlcworICAgICBmb3IgdGhlaXIgYXBwbGljYXRpb24gdGltZSwgYWx0aG91 Z2ggdGhhdCBjb2x1bW4gaXMgcGVybWl0dGVkIHRvIGJlCisgICAgIG51bGwgKGxpa2Ugb3RoZXIg ZWxlbWVudHMgb2YgdGhlIGtleSkuCisgICAgPC9wYXJhPgorCisgICAgPHBhcmE+CisgICAgIFRl bXBvcmFsIHByaW1hcnkga2V5cyBhbmQgdW5pcXVlIGNvbnN0cmFpbnRzIGFyZSBiYWNrZWQgYnkK KyAgICAgPGxpbmsgbGlua2VuZD0iZ2lzdCI+R2lTVCBpbmRleGVzPC9saW5rPiByYXRoZXIgdGhh biBCLVRyZWUgaW5kZXhlcy4gSW4KKyAgICAgcHJhY3RpY2UsIGNyZWF0aW5nIGEgdGVtcG9yYWwg cHJpbWFyeSBrZXkgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQKKyAgICAgcmVxdWlyZXMgaW5zdGFs bGluZyB0aGUgPHhyZWYgbGlua2VuZD0iYnRyZWUtZ2lzdCIvPiBleHRlbnNpb24sIHNvIHRoYXQK KyAgICAgdGhlIGRhdGFiYXNlIGhhcyBvcGNsYXNzZXMgZm9yIHRoZSBub24tdGVtcG9yYWwgcGFy dHMgb2YgdGhlIGtleS4KKyAgICA8L3BhcmE+CisKKyAgICA8cGFyYT4KKyAgICAgVGVtcG9yYWwg cHJpbWFyeSBrZXlzIGFuZCB1bmlxdWUgY29uc3RyYWludHMgaGF2ZSB0aGUgc2FtZSBiZWhhdmlv cgorICAgICBhcyA8bGluayBsaW5rZW5kPSJkZGwtY29uc3RyYWludHMtZXhjbHVzaW9uIj5leGNs dXNpb24gY29uc3RyYWludHM8L2xpbms+LAorICAgICB3aGVyZSBlYWNoIHJlZ3VsYXIga2V5IHBh cnQgaXMgY29tcGFyZWQgd2l0aCBlcXVhbGl0eSwgYW5kIHRoZSBhcHBsaWNhdGlvbgorICAgICB0 aW1lIGlzIGNvbXBhcmVkIHdpdGggb3ZlcmxhcHMsIGZvciBleGFtcGxlIDxsaXRlcmFsPkVYQ0xV REUgVVNJTkcgZ2lzdAorICAgICAoaWQgV0lUSCA9LCB2YWxpZF9hdCBXSVRIICZhbXA7JmFtcDsp PC9saXRlcmFsPi4gVGhlIG9ubHkgZGlmZmVyZW5jZSBpcworICAgICB0aGF0IHRoZXkgYWxzbyBm b3JiaWQgYW4gZW1wdHkgYXBwbGljYXRpb24gdGltZS4KKyAgICA8L3BhcmE+CisgICA8L3NlY3Qz PgorICA8L3NlY3QyPgorCisgIDxzZWN0MiBpZD0iZGRsLXN5c3RlbS10aW1lIj4KKyAgIDx0aXRs ZT5TeXN0ZW0gVGltZTwvdGl0bGU+CisKKyAgIDxpbmRleHRlcm0gem9uZT0iZGRsLXN5c3RlbS10 aW1lIj4KKyAgICA8cHJpbWFyeT5zeXN0ZW0gdGltZTwvcHJpbWFyeT4KKyAgIDwvaW5kZXh0ZXJt PgorCisgICA8cGFyYT4KKyAgICA8Zmlyc3R0ZXJtPlN5c3RlbSB0aW1lPC9maXJzdHRlcm0+IHJl ZmVycyB0byB0aGUgaGlzdG9yeSBvZiB0aGUKKyAgICBkYXRhYmFzZSB0YWJsZSwgbm90IHRoZSBl bnRpdHkgaXQgZGVzY3JpYmVzLiBJdCBjYXB0dXJlcyB3aGVuIGVhY2ggcm93CisgICAgd2FzIGlu c2VydGVkL3VwZGF0ZWQvZGVsZXRlZC4KKyAgIDwvcGFyYT4KKworICAgPHBhcmE+CisgICAgPHBy b2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBkb2VzIG5vdCBjdXJyZW50bHkgc3Vw cG9ydAorICAgIHN5c3RlbSB0aW1lLCBidXQgdGhlcmUgYXJlIHNldmVyYWwgZXh0ZW5zaW9ucyB0 aGF0IHByb3ZpZGUgaXRzCisgICAgZnVuY3Rpb25hbGl0eS4gU2VlCisgICAgPHVsaW5rIHVybD0i aHR0cHM6Ly93aWtpLnBvc3RncmVzcWwub3JnL3dpa2kvU1FMMjAxMVRlbXBvcmFsIj50aGUgU1FM OjIwMTEKKyAgICBUZW1wb3JhbCB3aWtpIHBhZ2U8L3VsaW5rPiBmb3IgcG9zc2liaWxpdGllcy4K KyAgIDwvcGFyYT4KKyAgPC9zZWN0Mj4KKyA8L3NlY3QxPgorCiAgPHNlY3QxIGlkPSJkZGwtYWx0 ZXIiPgogICA8dGl0bGU+TW9kaWZ5aW5nIFRhYmxlczwvdGl0bGU+CiAKZGlmZiAtLWdpdCBhL2Rv Yy9zcmMvc2dtbC9nbG9zc2FyeS5zZ21sIGIvZG9jL3NyYy9zZ21sL2dsb3NzYXJ5LnNnbWwKaW5k ZXggODY1MWYwY2RiOTEuLmE3NmNmNWMzODNmIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZ2xv c3Nhcnkuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZ2xvc3Nhcnkuc2dtbApAQCAtODEsNiArODEs MjEgQEAKICAgIDwvZ2xvc3NkZWY+CiAgIDwvZ2xvc3NlbnRyeT4KIAorICA8Z2xvc3NlbnRyeSBp ZD0iZ2xvc3NhcnktYXBwbGljYXRpb24tdGltZSI+CisgICA8Z2xvc3N0ZXJtPkFwcGxpY2F0aW9u IHRpbWU8L2dsb3NzdGVybT4KKyAgIDxnbG9zc2RlZj4KKyAgICA8cGFyYT4KKyAgICAgSW4gYSA8 Z2xvc3N0ZXJtIGxpbmtlbmQ9Imdsb3NzYXJ5LXRlbXBvcmFsLXRhYmxlIj50ZW1wb3JhbCB0YWJs ZTwvZ2xvc3N0ZXJtPiwKKyAgICAgdGhlIGRpbWVuc2lvbiBvZiB0aW1lIHRoYXQgcmVwcmVzZW50 cyB3aGVuIHRoZSBlbnRpdHkgZGVzY3JpYmVkIGJ5IHRoZSB0YWJsZQorICAgICBjaGFuZ2VkIChh cyBvcHBvc2VkIHRvIHRoZSB0YWJsZSBpdHNlbGYpLgorICAgIDwvcGFyYT4KKyAgICA8cGFyYT4K KyAgICAgRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZQorICAgICA8eHJlZiBsaW5rZW5kPSJkZGwt dGVtcG9yYWwtdGFibGVzIi8+LgorICAgIDwvcGFyYT4KKyAgIDwvZ2xvc3NkZWY+CisgIDwvZ2xv c3NlbnRyeT4KKwogICA8Z2xvc3NlbnRyeSBpZD0iZ2xvc3NhcnktYWlvIj4KICAgIDxnbG9zc3Rl cm0+QXN5bmNocm9ub3VzIDxhY3JvbnltPkkvTzwvYWNyb255bT48L2dsb3NzdGVybT4KICAgIDxh Y3JvbnltPkFJTzwvYWNyb255bT4KQEAgLTE4NDcsNiArMTg2MiwyMiBAQAogICAgPC9nbG9zc2Rl Zj4KICAgPC9nbG9zc2VudHJ5PgogCisgIDxnbG9zc2VudHJ5IGlkPSJnbG9zc2FyeS1zeXN0ZW0t dGltZSI+CisgICA8Z2xvc3N0ZXJtPlN5c3RlbSB0aW1lPC9nbG9zc3Rlcm0+CisgICA8Z2xvc3Nk ZWY+CisgICAgPHBhcmE+CisgICAgIEluIGEgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10 ZW1wb3JhbC10YWJsZSI+dGVtcG9yYWwgdGFibGU8L2dsb3NzdGVybT4sCisgICAgIHRoZSBkaW1l bnNpb24gb2YgdGltZSB0aGF0IHJlcHJlc2VudHMgd2hlbiB0aGUgdGFibGUgaXRzZWxmIHdhcyBj aGFuZ2VkCisgICAgIChhcyBvcHBvc2VkIHRvIHRoZSBlbnRpdHkgdGhlIHRhYmxlIGRlc2NyaWJl cykuCisgICAgIE9mdGVuIHVzZWQgZm9yIGF1ZGl0aW5nLCBjb21wbGlhbmNlLCBhbmQgZGVidWdn aW5nLgorICAgIDwvcGFyYT4KKyAgICA8cGFyYT4KKyAgICAgRm9yIG1vcmUgaW5mb3JtYXRpb24s IHNlZQorICAgICA8eHJlZiBsaW5rZW5kPSJkZGwtdGVtcG9yYWwtdGFibGVzIi8+LgorICAgIDwv cGFyYT4KKyAgIDwvZ2xvc3NkZWY+CisgIDwvZ2xvc3NlbnRyeT4KKwogICA8Z2xvc3NlbnRyeSBp ZD0iZ2xvc3NhcnktdGFibGUiPgogICAgPGdsb3NzdGVybT5UYWJsZTwvZ2xvc3N0ZXJtPgogICAg PGdsb3NzZGVmPgpAQCAtMTg4NSw2ICsxOTE2LDIyIEBACiAgICA8L2dsb3NzZGVmPgogICA8L2ds b3NzZW50cnk+CiAKKyAgPGdsb3NzZW50cnkgaWQ9Imdsb3NzYXJ5LXRlbXBvcmFsLXRhYmxlIj4K KyAgIDxnbG9zc3Rlcm0+VGVtcG9yYWwgdGFibGU8L2dsb3NzdGVybT4KKyAgIDxnbG9zc2RlZj4K KyAgICA8cGFyYT4KKyAgICAgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10YWJsZSI+VGFi bGVzPC9nbG9zc3Rlcm0+CisgICAgIHRoYXQgdHJhY2sgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9z c2FyeS1hcHBsaWNhdGlvbi10aW1lIj5hcHBsaWNhdGlvbiB0aW1lPC9nbG9zc3Rlcm0+CisgICAg IG9yIDxnbG9zc3Rlcm0gbGlua2VuZD0iZ2xvc3Nhcnktc3lzdGVtLXRpbWUiPnN5c3RlbSB0aW1l PC9nbG9zc3Rlcm0+IChvciBib3RoKS4KKyAgICAgTm90IHRvIGJlIGNvbmZ1c2VkIHdpdGggPGds b3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10ZW1wb3JhcnktdGFibGUiPnRlbXBvcmFyeSB0YWJs ZXM8L2dsb3NzdGVybT4uCisgICAgPC9wYXJhPgorICAgIDxwYXJhPgorICAgICBGb3IgbW9yZSBp bmZvcm1hdGlvbiwgc2VlCisgICAgIDx4cmVmIGxpbmtlbmQ9ImRkbC10ZW1wb3JhbC10YWJsZXMi Lz4uCisgICAgPC9wYXJhPgorICAgPC9nbG9zc2RlZj4KKyAgPC9nbG9zc2VudHJ5PgorCiAgIDxn bG9zc2VudHJ5IGlkPSJnbG9zc2FyeS10ZW1wb3JhcnktdGFibGUiPgogICAgPGdsb3NzdGVybT5U ZW1wb3JhcnkgdGFibGU8L2dsb3NzdGVybT4KICAgIDxnbG9zc2RlZj4KZGlmZiAtLWdpdCBhL2Rv Yy9zcmMvc2dtbC9pbWFnZXMvTWFrZWZpbGUgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL01ha2VmaWxl CmluZGV4IDY0NTUxOTA5NWQwLi4xZDk5ZDRlMzBjOCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21s L2ltYWdlcy9NYWtlZmlsZQorKysgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL01ha2VmaWxlCkBAIC01 LDcgKzUsOCBAQAogQUxMX0lNQUdFUyA9IFwKIAlnZW5ldGljLWFsZ29yaXRobS5zdmcgXAogCWdp bi5zdmcgXAotCXBhZ2VsYXlvdXQuc3ZnCisJcGFnZWxheW91dC5zdmcgXAorCXRlbXBvcmFsLWVu dGl0aWVzLnN2ZwogCiBESVRBQSA9IGRpdGFhCiBET1QgPSBkb3QKZGlmZiAtLWdpdCBhL2RvYy9z cmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtZW50aXRpZXMuc3ZnIGIvZG9jL3NyYy9zZ21sL2ltYWdl cy90ZW1wb3JhbC1lbnRpdGllcy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAuLjczNTViZTQ3MmU4Ci0tLSAvZGV2L251bGwKKysrIGIvZG9jL3NyYy9zZ21sL2ltYWdl cy90ZW1wb3JhbC1lbnRpdGllcy5zdmcKQEAgLTAsMCArMSwzNCBAQAorPD94bWwgdmVyc2lvbj0i MS4wIj8+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0i MCAwIDEwMjAgMjgwIiB3aWR0aD0iMTAyMCIgaGVpZ2h0PSIyODAiIHNoYXBlLXJlbmRlcmluZz0i Z2VvbWV0cmljUHJlY2lzaW9uIiB2ZXJzaW9uPSIxLjAiPgorICA8ZGVmcz4KKyAgICA8ZmlsdGVy IGlkPSJmMiIgeD0iMCIgeT0iMCIgd2lkdGg9IjIwMCUiIGhlaWdodD0iMjAwJSI+CisgICAgICA8 ZmVPZmZzZXQgcmVzdWx0PSJvZmZPdXQiIGluPSJTb3VyY2VHcmFwaGljIiBkeD0iNSIgZHk9IjUi Lz4KKyAgICAgIDxmZUdhdXNzaWFuQmx1ciByZXN1bHQ9ImJsdXJPdXQiIGluPSJvZmZPdXQiIHN0 ZERldmlhdGlvbj0iMyIvPgorICAgICAgPGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0i Ymx1ck91dCIgbW9kZT0ibm9ybWFsIi8+CisgICAgPC9maWx0ZXI+CisgIDwvZGVmcz4KKyAgPGcg c3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2UtbGluZWpvaW49 InJvdW5kIj4KKyAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAyMCIgaGVpZ2h0PSIyODAi IHN0eWxlPSJmaWxsOiAjZmZmZmZmIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJv a2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9p bj0icm91bmQiIGZpbGw9IiM5OWRkOTkiIGQ9Ik0yMTUuMCAxMzMuMCBMMjE1LjAgMjAzLjAgTDc4 NS4wIDIwMy4wIEw3ODUuMCAxMzMuMCB6Ii8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBz dHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5l am9pbj0icm91bmQiIGZpbGw9IiM5OWRkOTkiIGQ9Ik00MDUuMCAxMzMuMCBMOTY1LjAgMTMzLjAg TDk2NS4wIDYzLjAgTDQwNS4wIDYzLjAgeiIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIg c3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGlu ZWpvaW49InJvdW5kIiBmaWxsPSIjOTlkZDk5IiBkPSJNNDA1LjAgNjMuMCBMNDA1LjAgMTMzLjAg TDI1LjAgMTMzLjAgTDI1LjAgNjMuMCB6Ii8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBz dHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5l am9pbj0icm91bmQiIGZpbGw9Im5vbmUiIGQ9Ik0yNS4wIDIyNC4wIEwyNS4wIDIzNy4wICIvPgor ICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tl LWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJN NDA1LjAgMjI0LjAgTDQwNS4wIDIzNy4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIg c3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGlu ZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNMjE1LjAgMjI0LjAgTDIxNS4wIDIzNy4wICIv PgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ry b2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBk PSJNNTk1LjAgMjI0LjAgTDU5NS4wIDIzNy4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAw MCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Ut bGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNNzg1LjAgMjI0LjAgTDc4NS4wIDIzNy4w ICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIg c3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25l IiBkPSJNOTc1LjAgMjI0LjAgTDk3NS4wIDIzNy4wICIvPgorICAgIDx0ZXh0IHg9IjQwIiB5PSI5 NiIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmls bD0iIzAwMDAwMCI+cHJvZHVjdHM8L3RleHQ+CisgICAgPHRleHQgeD0iNDAiIHk9IjExMCIgZm9u dC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAw MDAwMCI+KDUsIDUuMDAsIFsxIEphbiAyMDIwLDEgSmFuIDIwMjIpKTwvdGV4dD4KKyAgICA8dGV4 dCB4PSIyMTAiIHk9IjI1MCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0 cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyMTwvdGV4dD4KKyAgICA8dGV4dCB4PSIyMzAi IHk9IjE2NiIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9u ZSIgZmlsbD0iIzAwMDAwMCI+cHJvZHVjdHM8L3RleHQ+CisgICAgPHRleHQgeD0iMjMwIiB5PSIx ODAiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZp bGw9IiMwMDAwMDAiPig2LCA5LjAwLCBbMSBKYW4gMjAyMSwxIEphbiAyMDI0KSk8L3RleHQ+Cisg ICAgPHRleHQgeD0iMjAiIHk9IjI1MCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0i MTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyMDwvdGV4dD4KKyAgICA8dGV4dCB4 PSI0MjAiIHk9Ijk2IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tl PSJub25lIiBmaWxsPSIjMDAwMDAwIj5wcm9kdWN0czwvdGV4dD4KKyAgICA8dGV4dCB4PSI0MjAi IHk9IjExMCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9u ZSIgZmlsbD0iIzAwMDAwMCI+KDUsIDguMDAsIFsxIEphbiAyMDIyLCkpPC90ZXh0PgorICAgIDx0 ZXh0IHg9IjU5MCIgeT0iMjUwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIg c3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIzPC90ZXh0PgorICAgIDx0ZXh0IHg9IjQw MCIgeT0iMjUwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJu b25lIiBmaWxsPSIjMDAwMDAwIj4yMDIyPC90ZXh0PgorICAgIDx0ZXh0IHg9Ijc4MCIgeT0iMjUw IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxs PSIjMDAwMDAwIj4yMDI0PC90ZXh0PgorICAgIDx0ZXh0IHg9Ijk3OSIgeT0iMjUwIiBmb250LWZh bWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAw Ij4uLi48L3RleHQ+CisgIDwvZz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2lt YWdlcy90ZW1wb3JhbC1lbnRpdGllcy50eHQgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFs LWVudGl0aWVzLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMTVh ODZkMmEyNzYKLS0tIC9kZXYvbnVsbAorKysgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFs LWVudGl0aWVzLnR4dApAQCAtMCwwICsxLDE2IEBACisKKworKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSsKK3wgY0dSRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCBjR1JFICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 Cit8IHByb2R1Y3RzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcHJvZHVjdHMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAoNSwgNS4wMCwgWzEg SmFuIDIwMjAsMSBKYW4gMjAyMikpICB8ICg1LCA4LjAwLCBbMSBKYW4gMjAyMiwpKSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAg ICAgICAgICAgIHwgY0dSRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICB8IHByb2R1Y3RzICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgfCAo NiwgOS4wMCwgWzEgSmFuIDIwMjEsMSBKYW4gMjAyNCkpICAgICAgICAgICAgICAgICAgICAgfAor ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisKK3wgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgICAgICAgfAorMjAyMCAgICAgICAgICAgICAgIDIwMjEgICAg ICAgICAgICAgICAyMDIyICAgICAgICAgICAgICAgMjAyMyAgICAgICAgICAgICAgIDIwMjQgICAg ICAgICAgICAgICAuLi4KLS0gCjIuMzkuNQoK --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0004-Add-range_minus_multi-and-multirange_minus_multi.patch" Content-Disposition: attachment; filename="v59-0004-Add-range_minus_multi-and-multirange_minus_multi.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4b3 RnJvbSAwMTM3OTBmZjhjMzQ1OTdjYjkxZGI0YmZkMDkwYTE2M2ZhYjNkMWQ2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFNhdCwgMzAgRGVjIDIwMjMgMjM6MTA6NTkgLTA4MDAKU3ViamVj dDogW1BBVENIIHY1OSAwNC8xMV0gQWRkIHJhbmdlX21pbnVzX211bHRpIGFuZCBtdWx0aXJhbmdl X21pbnVzX211bHRpCiBmdW5jdGlvbnMKClRoZSBleGlzdGluZyByYW5nZV9taW51cyBmdW5jdGlv biByYWlzZXMgYW4gZXhjZXB0aW9uIHdoZW4gdGhlIHJhbmdlIGlzCiJzcGxpdCIsIGJlY2F1c2Ug dGhlbiB0aGUgcmVzdWx0IGNhbid0IGJlIHJlcHJlc2VudGVkIGJ5IGEgc2luZ2xlIHJhbmdlLgpG b3IgZXhhbXBsZSAnWzAsMTApJzo6aW50NHJhbmdlIC0gJ1s0LDUpJyB3b3VsZCBiZSAnWzAsNCkn IGFuZCAnWzUsMTApJy4KClRoaXMgY29tbWl0IGFkZHMgbmV3IHNldC1yZXR1cm5pbmcgZnVuY3Rp b25zIHNvIHRoYXQgY2FsbGVycyBjYW4gZ2V0CnJlc3VsdHMgZXZlbiBpbiB0aGUgY2FzZSBvZiBz cGxpdHMuIFRoZXJlIGlzIG5vIHJpc2sgb2YgYW4gZXhjZXB0aW9uIGZvcgptdWx0aXJhbmdlcywg YnV0IGEgc2V0LXJldHVybmluZyBmdW5jdGlvbiBsZXRzIHVzIGhhbmRsZSB0aGVtIHRoZSBzYW1l CndheSB3ZSBoYW5kbGUgcmFuZ2VzLgoKQm90aCBmdW5jdGlvbnMgcmV0dXJuIHplcm8gcmVzdWx0 cyBpZiB0aGUgc3VidHJhY3Rpb24gd291bGQgZ2l2ZSBhbgplbXB0eSByYW5nZS9tdWx0aXJhbmdl LgoKVGhlIG1haW4gdXNlLWNhc2UgZm9yIHRoZXNlIGZ1bmN0aW9ucyBpcyB0byBpbXBsZW1lbnQg VVBEQVRFL0RFTEVURSBGT1IKUE9SVElPTiBPRiwgd2hpY2ggbXVzdCBjb21wdXRlIHRoZSBhcHBs aWNhdGlvbi10aW1lIG9mICJ0ZW1wb3JhbApsZWZ0b3ZlcnMiOiB0aGUgcGFydCBvZiBoaXN0b3J5 IGluIGFuIHVwZGF0ZWQvZGVsZXRlZCByb3cgdGhhdCB3YXMgbm90CmNoYW5nZWQuIFRvIHByZXNl cnZlIHRoZSB1bnRvdWNoZWQgaGlzdG9yeSwgd2Ugd2lsbCBpbXBsaWNpdGx5IGluc2VydApvbmUg cmVjb3JkIGZvciBlYWNoIHJlc3VsdCByZXR1cm5lZCBieSByYW5nZS9tdWx0aXJhbmdlX21pbnVz X211bHRpLgpVc2luZyBhIHNldC1yZXR1cm5pbmcgZnVuY3Rpb24gd2lsbCBhbHNvIGxldCB1cyBz dXBwb3J0IHVzZXItZGVmaW5lZAp0eXBlcyBmb3IgYXBwbGljYXRpb24tdGltZSB1cGRhdGUvZGVs ZXRlIGluIHRoZSBmdXR1cmUuCgpBdXRob3I6IFBhdWwgQS4gSnVuZ3dpcnRoIDxwakBpbGx1bWlu YXRlZGNvbXB1dGluZy5jb20+Ci0tLQogZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1yYW5nZS5zZ21s ICAgICAgICAgICAgIHwgIDQyICsrKysrCiBzcmMvYmFja2VuZC91dGlscy9hZHQvbXVsdGlyYW5n ZXR5cGVzLmMgICAgICAgfCAgNzEgKysrKysrKysKIHNyYy9iYWNrZW5kL3V0aWxzL2FkdC9yYW5n ZXR5cGVzLmMgICAgICAgICAgICB8IDE2NiArKysrKysrKysrKysrKysrKysKIHNyYy9pbmNsdWRl L2NhdGFsb2cvcGdfcHJvYy5kYXQgICAgICAgICAgICAgICB8ICAgOCArCiBzcmMvaW5jbHVkZS91 dGlscy9yYW5nZXR5cGVzLmggICAgICAgICAgICAgICAgfCAgIDIgKwogc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9tdWx0aXJhbmdldHlwZXMub3V0IHwgMTE2ICsrKysrKysrKysrKwogc3JjL3Rl c3QvcmVncmVzcy9leHBlY3RlZC9yYW5nZXR5cGVzLm91dCAgICAgIHwgIDU0ICsrKysrKwogc3Jj L3Rlc3QvcmVncmVzcy9zcWwvbXVsdGlyYW5nZXR5cGVzLnNxbCAgICAgIHwgIDIyICsrKwogc3Jj L3Rlc3QvcmVncmVzcy9zcWwvcmFuZ2V0eXBlcy5zcWwgICAgICAgICAgIHwgIDEwICsrCiA5IGZp bGVzIGNoYW5nZWQsIDQ5MSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21s L2Z1bmMvZnVuYy1yYW5nZS5zZ21sIGIvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1yYW5nZS5zZ21s CmluZGV4IDJkYzQwMzQ4YTU3Li5hNDE4N2Q4NDA2YyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21s L2Z1bmMvZnVuYy1yYW5nZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtcmFuZ2Uu c2dtbApAQCAtODQyLDYgKzg0MiwyOSBAQAogICAgICAgICA8cmV0dXJudmFsdWU+WzEsNCk8L3Jl dHVybnZhbHVlPgogICAgICAgIDwvcGFyYT48L2VudHJ5PgogICAgICAgPC9yb3c+CisKKyAgICAg IDxyb3c+CisgICAgICAgPGVudHJ5IHJvbGU9ImZ1bmNfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9 ImZ1bmNfc2lnbmF0dXJlIj4KKyAgICAgICAgPGluZGV4dGVybT4KKyAgICAgICAgIDxwcmltYXJ5 PnJhbmdlX21pbnVzX211bHRpPC9wcmltYXJ5PgorICAgICAgICA8L2luZGV4dGVybT4KKyAgICAg ICAgPGZ1bmN0aW9uPnJhbmdlX21pbnVzX211bHRpPC9mdW5jdGlvbj4gKCA8dHlwZT5hbnlyYW5n ZTwvdHlwZT4sIDx0eXBlPmFueXJhbmdlPC90eXBlPiApCisgICAgICAgIDxyZXR1cm52YWx1ZT5z ZXRvZiBhbnlyYW5nZTwvcmV0dXJudmFsdWU+CisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJh PgorICAgICAgICBSZXR1cm5zIHRoZSBub24tZW1wdHkgcmFuZ2UocykgcmVtYWluaW5nIGFmdGVy IHN1YnRyYWN0aW5nIHRoZSBzZWNvbmQgcmFuZ2UgZnJvbSB0aGUgZmlyc3QuCisgICAgICAgIE9u ZSByb3cgaXMgcmV0dXJuZWQgZm9yIGVhY2ggcmFuZ2UsIHNvIGlmIHRoZSBzZWNvbmQgcmFuZ2Ug c3BsaXRzIHRoZSBmaXJzdCBpbnRvIHR3byBwYXJ0cywKKyAgICAgICAgdGhlcmUgd2lsbCBiZSB0 d28gcmVzdWx0cy4gSWYgdGhlIHN1YnRyYWN0aW9uIHlpZWxkcyBhbiBlbXB0eSByYW5nZSwgbm8g cm93cyBhcmUgcmV0dXJuZWQuCisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAg ICA8bGl0ZXJhbD5yYW5nZV9taW51c19tdWx0aSgnWzAsMTApJzo6aW50NHJhbmdlLCAnWzMsNCkn OjppbnQ0cmFuZ2UpPC9saXRlcmFsPgorICAgICAgICA8cmV0dXJudmFsdWU+PC9yZXR1cm52YWx1 ZT4KKzxwcm9ncmFtbGlzdGluZz4KKyBbMCwzKQorIFs0LDEwKQorPC9wcm9ncmFtbGlzdGluZz4K KyAgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgIDwvcm93PgogICAgICA8L3Rib2R5PgogICAg IDwvdGdyb3VwPgogICAgPC90YWJsZT4KQEAgLTEwNDEsNiArMTA2NCwyNSBAQAogPC9wcm9ncmFt bGlzdGluZz4KICAgICAgICA8L3BhcmE+PC9lbnRyeT4KICAgICAgIDwvcm93PgorCisgICAgICA8 cm93PgorICAgICAgIDxlbnRyeSByb2xlPSJmdW5jX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJm dW5jX3NpZ25hdHVyZSI+CisgICAgICAgIDxpbmRleHRlcm0+CisgICAgICAgICA8cHJpbWFyeT5t dWx0aXJhbmdlX21pbnVzX211bHRpPC9wcmltYXJ5PgorICAgICAgICA8L2luZGV4dGVybT4KKyAg ICAgICAgPGZ1bmN0aW9uPm11bHRpcmFuZ2VfbWludXNfbXVsdGk8L2Z1bmN0aW9uPiAoIDx0eXBl PmFueW11bHRpcmFuZ2U8L3R5cGU+LCA8dHlwZT5hbnltdWx0aXJhbmdlPC90eXBlPiApCisgICAg ICAgIDxyZXR1cm52YWx1ZT5zZXRvZiBhbnltdWx0aXJhbmdlPC9yZXR1cm52YWx1ZT4KKyAgICAg ICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIFJldHVybnMgdGhlIG5vbi1lbXB0eSBt dWx0aXJhbmdlKHMpIHJlbWFpbmluZyBhZnRlciBzdWJ0cmFjdGluZyB0aGUgc2Vjb25kIG11bHRp cmFuZ2UgZnJvbSB0aGUgZmlyc3QuCisgICAgICAgIElmIHRoZSBzdWJ0cmFjdGlvbiB5aWVsZHMg YW4gZW1wdHkgbXVsdGlyYW5nZSwgbm8gcm93cyBhcmUgcmV0dXJuZWQuCisgICAgICAgIFR3byBy b3dzIGFyZSBuZXZlciByZXR1cm5lZCwgYmVjYXVzZSBhIHNpbmdsZSBtdWx0aXJhbmdlIGNhbiBh bHdheXMgYWNjb21tb2RhdGUgYW55IHJlc3VsdC4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBh cmE+CisgICAgICAgIDxsaXRlcmFsPnJhbmdlX21pbnVzX211bHRpKCdbMCwxMCknOjppbnQ0cmFu Z2UsICdbMyw0KSc6OmludDRyYW5nZSk8L2xpdGVyYWw+CisgICAgICAgIDxyZXR1cm52YWx1ZT57 WzAsMyksIFs0LDEwKX08L3JldHVybnZhbHVlPgorICAgICAgIDwvcGFyYT48L2VudHJ5PgorICAg ICAgPC9yb3c+CiAgICAgIDwvdGJvZHk+CiAgICAgPC90Z3JvdXA+CiAgICA8L3RhYmxlPgpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L211bHRpcmFuZ2V0eXBlcy5jIGIvc3JjL2Jh Y2tlbmQvdXRpbHMvYWR0L211bHRpcmFuZ2V0eXBlcy5jCmluZGV4IDg0NzMzZGM1MDE5Li5lM2Ux MDMxOGYyNyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L211bHRpcmFuZ2V0eXBl cy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9tdWx0aXJhbmdldHlwZXMuYwpAQCAtMTIy Niw2ICsxMjI2LDc3IEBAIG11bHRpcmFuZ2VfbWludXNfaW50ZXJuYWwoT2lkIG1sdHJuZ3R5cG9p ZCwgVHlwZUNhY2hlRW50cnkgKnJhbmdldHlwLAogCXJldHVybiBtYWtlX211bHRpcmFuZ2UobWx0 cm5ndHlwb2lkLCByYW5nZXR5cCwgcmFuZ2VfY291bnQzLCByYW5nZXMzKTsKIH0KIAorLyoKKyAq IG11bHRpcmFuZ2VfbWludXNfbXVsdGkgLSBsaWtlIG11bHRpcmFuZ2VfbWludXMgYnV0IHJldHVy bmluZyB0aGUgcmVzdWx0IGFzIGEgU1JGLAorICogd2l0aCBubyByb3dzIGlmIHRoZSByZXN1bHQg d291bGQgYmUgZW1wdHkuCisgKi8KK0RhdHVtCittdWx0aXJhbmdlX21pbnVzX211bHRpKFBHX0ZV TkNUSU9OX0FSR1MpCit7CisJRnVuY0NhbGxDb250ZXh0ICpmdW5jY3R4OworCU1lbW9yeUNvbnRl eHQgb2xkY29udGV4dDsKKworCWlmICghU1JGX0lTX0ZJUlNUQ0FMTCgpKQorCXsKKwkJLyogV2Ug bmV2ZXIgaGF2ZSBtb3JlIHRoYW4gb25lIHJlc3VsdCAqLworCQlmdW5jY3R4ID0gU1JGX1BFUkNB TExfU0VUVVAoKTsKKwkJU1JGX1JFVFVSTl9ET05FKGZ1bmNjdHgpOworCX0KKwllbHNlCisJewor CQlNdWx0aXJhbmdlVHlwZSAqbXIxOworCQlNdWx0aXJhbmdlVHlwZSAqbXIyOworCQlPaWQJCQlt bHRybmd0eXBvaWQ7CisJCVR5cGVDYWNoZUVudHJ5ICp0eXBjYWNoZTsKKwkJVHlwZUNhY2hlRW50 cnkgKnJhbmdldHlwOworCQlpbnQzMgkJcmFuZ2VfY291bnQxOworCQlpbnQzMgkJcmFuZ2VfY291 bnQyOworCQlSYW5nZVR5cGUgKipyYW5nZXMxOworCQlSYW5nZVR5cGUgKipyYW5nZXMyOworCQlN dWx0aXJhbmdlVHlwZSAqbXI7CisKKwkJZnVuY2N0eCA9IFNSRl9GSVJTVENBTExfSU5JVCgpOwor CisJCS8qCisJCSAqIHN3aXRjaCB0byBtZW1vcnkgY29udGV4dCBhcHByb3ByaWF0ZSBmb3IgbXVs dGlwbGUgZnVuY3Rpb24gY2FsbHMKKwkJICovCisJCW9sZGNvbnRleHQgPSBNZW1vcnlDb250ZXh0 U3dpdGNoVG8oZnVuY2N0eC0+bXVsdGlfY2FsbF9tZW1vcnlfY3R4KTsKKworCQkvKiBnZXQgYXJn cywgZGV0b2FzdGluZyBpbnRvIG11bHRpLWNhbGwgbWVtb3J5IGNvbnRleHQgKi8KKwkJbXIxID0g UEdfR0VUQVJHX01VTFRJUkFOR0VfUCgwKTsKKwkJbXIyID0gUEdfR0VUQVJHX01VTFRJUkFOR0Vf UCgxKTsKKworCQltbHRybmd0eXBvaWQgPSBNdWx0aXJhbmdlVHlwZUdldE9pZChtcjEpOworCQl0 eXBjYWNoZSA9IGxvb2t1cF90eXBlX2NhY2hlKG1sdHJuZ3R5cG9pZCwgVFlQRUNBQ0hFX01VTFRJ UkFOR0VfSU5GTyk7CisJCWlmICh0eXBjYWNoZS0+cm5ndHlwZSA9PSBOVUxMKQorCQkJZWxvZyhF UlJPUiwgInR5cGUgJXUgaXMgbm90IGEgbXVsdGlyYW5nZSB0eXBlIiwgbWx0cm5ndHlwb2lkKTsK KwkJcmFuZ2V0eXAgPSB0eXBjYWNoZS0+cm5ndHlwZTsKKworCQlpZiAoTXVsdGlyYW5nZUlzRW1w dHkobXIxKSB8fCBNdWx0aXJhbmdlSXNFbXB0eShtcjIpKQorCQkJbXIgPSBtcjE7CisJCWVsc2UK KwkJeworCQkJbXVsdGlyYW5nZV9kZXNlcmlhbGl6ZShyYW5nZXR5cCwgbXIxLCAmcmFuZ2VfY291 bnQxLCAmcmFuZ2VzMSk7CisJCQltdWx0aXJhbmdlX2Rlc2VyaWFsaXplKHJhbmdldHlwLCBtcjIs ICZyYW5nZV9jb3VudDIsICZyYW5nZXMyKTsKKworCQkJbXIgPSBtdWx0aXJhbmdlX21pbnVzX2lu dGVybmFsKG1sdHJuZ3R5cG9pZCwKKwkJCQkJCQkJCQkgICByYW5nZXR5cCwKKwkJCQkJCQkJCQkg ICByYW5nZV9jb3VudDEsCisJCQkJCQkJCQkJICAgcmFuZ2VzMSwKKwkJCQkJCQkJCQkgICByYW5n ZV9jb3VudDIsCisJCQkJCQkJCQkJICAgcmFuZ2VzMik7CisJCX0KKworCQlNZW1vcnlDb250ZXh0 U3dpdGNoVG8ob2xkY29udGV4dCk7CisKKwkJZnVuY2N0eCA9IFNSRl9QRVJDQUxMX1NFVFVQKCk7 CisJCWlmIChNdWx0aXJhbmdlSXNFbXB0eShtcikpCisJCQlTUkZfUkVUVVJOX0RPTkUoZnVuY2N0 eCk7CisJCWVsc2UKKwkJCVNSRl9SRVRVUk5fTkVYVChmdW5jY3R4LCBNdWx0aXJhbmdlVHlwZVBH ZXREYXR1bShtcikpOworCX0KK30KKwogLyogbXVsdGlyYW5nZSBpbnRlcnNlY3Rpb24gKi8KIERh dHVtCiBtdWx0aXJhbmdlX2ludGVyc2VjdChQR19GVU5DVElPTl9BUkdTKQpkaWZmIC0tZ2l0IGEv c3JjL2JhY2tlbmQvdXRpbHMvYWR0L3JhbmdldHlwZXMuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2Fk dC9yYW5nZXR5cGVzLmMKaW5kZXggMGIyYWQ4YjA5NzUuLjZjODhmYThjOWI5IDEwMDY0NAotLS0g YS9zcmMvYmFja2VuZC91dGlscy9hZHQvcmFuZ2V0eXBlcy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0 aWxzL2FkdC9yYW5nZXR5cGVzLmMKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJwb3N0Z3Jl cy5oIgogCiAjaW5jbHVkZSAiY29tbW9uL2hhc2hmbi5oIgorI2luY2x1ZGUgImZ1bmNhcGkuaCIK ICNpbmNsdWRlICJsaWJwcS9wcWZvcm1hdC5oIgogI2luY2x1ZGUgIm1pc2NhZG1pbi5oIgogI2lu Y2x1ZGUgIm5vZGVzL21ha2VmdW5jcy5oIgpAQCAtMzksNiArNDAsNyBAQAogI2luY2x1ZGUgIm9w dGltaXplci9jbGF1c2VzLmgiCiAjaW5jbHVkZSAib3B0aW1pemVyL2Nvc3QuaCIKICNpbmNsdWRl ICJvcHRpbWl6ZXIvb3B0aW1pemVyLmgiCisjaW5jbHVkZSAidXRpbHMvYXJyYXkuaCIKICNpbmNs dWRlICJ1dGlscy9idWlsdGlucy5oIgogI2luY2x1ZGUgInV0aWxzL2RhdGUuaCIKICNpbmNsdWRl ICJ1dGlscy9sc3lzY2FjaGUuaCIKQEAgLTEyMTQsNiArMTIxNiwxNzAgQEAgcmFuZ2Vfc3BsaXRf aW50ZXJuYWwoVHlwZUNhY2hlRW50cnkgKnR5cGNhY2hlLCBjb25zdCBSYW5nZVR5cGUgKnIxLCBj b25zdCBSYW5nZVQKIAlyZXR1cm4gZmFsc2U7CiB9CiAKKy8qCisgKiByYW5nZV9taW51c19tdWx0 aSAtIGxpa2UgcmFuZ2VfbWludXMgYnV0IGFzIGEgU1JGIHRvIGFjY29tbW9kYXRlIHNwbGl0cywK KyAqIHdpdGggbm8gcmVzdWx0IHJvd3MgaWYgdGhlIHJlc3VsdCB3b3VsZCBiZSBlbXB0eS4KKyAq LworRGF0dW0KK3JhbmdlX21pbnVzX211bHRpKFBHX0ZVTkNUSU9OX0FSR1MpCit7CisJdHlwZWRl ZiBzdHJ1Y3QKKwl7CisJCVJhbmdlVHlwZSAgKnJzWzJdOworCQlpbnQJCQluOworCX0JCQlyYW5n ZV9taW51c19tdWx0aV9mY3R4OworCisJRnVuY0NhbGxDb250ZXh0ICpmdW5jY3R4OworCXJhbmdl X21pbnVzX211bHRpX2ZjdHggKmZjdHg7CisJTWVtb3J5Q29udGV4dCBvbGRjb250ZXh0OworCisJ Lyogc3R1ZmYgZG9uZSBvbmx5IG9uIHRoZSBmaXJzdCBjYWxsIG9mIHRoZSBmdW5jdGlvbiAqLwor CWlmIChTUkZfSVNfRklSU1RDQUxMKCkpCisJeworCQlSYW5nZVR5cGUgICpyMTsKKwkJUmFuZ2VU eXBlICAqcjI7CisJCU9pZAkJCXJuZ3R5cGlkOworCQlUeXBlQ2FjaGVFbnRyeSAqdHlwY2FjaGU7 CisKKwkJLyogY3JlYXRlIGEgZnVuY3Rpb24gY29udGV4dCBmb3IgY3Jvc3MtY2FsbCBwZXJzaXN0 ZW5jZSAqLworCQlmdW5jY3R4ID0gU1JGX0ZJUlNUQ0FMTF9JTklUKCk7CisKKwkJLyoKKwkJICog c3dpdGNoIHRvIG1lbW9yeSBjb250ZXh0IGFwcHJvcHJpYXRlIGZvciBtdWx0aXBsZSBmdW5jdGlv biBjYWxscworCQkgKi8KKwkJb2xkY29udGV4dCA9IE1lbW9yeUNvbnRleHRTd2l0Y2hUbyhmdW5j Y3R4LT5tdWx0aV9jYWxsX21lbW9yeV9jdHgpOworCisJCXIxID0gUEdfR0VUQVJHX1JBTkdFX1Ao MCk7CisJCXIyID0gUEdfR0VUQVJHX1JBTkdFX1AoMSk7CisKKwkJLyogRGlmZmVyZW50IHR5cGVz IHNob3VsZCBiZSBwcmV2ZW50ZWQgYnkgQU5ZUkFOR0UgbWF0Y2hpbmcgcnVsZXMgKi8KKwkJaWYg KFJhbmdlVHlwZUdldE9pZChyMSkgIT0gUmFuZ2VUeXBlR2V0T2lkKHIyKSkKKwkJCWVsb2coRVJS T1IsICJyYW5nZSB0eXBlcyBkbyBub3QgbWF0Y2giKTsKKworCQkvKiBhbGxvY2F0ZSBtZW1vcnkg Zm9yIHVzZXIgY29udGV4dCAqLworCQlmY3R4ID0gKHJhbmdlX21pbnVzX211bHRpX2ZjdHggKikg cGFsbG9jKHNpemVvZihyYW5nZV9taW51c19tdWx0aV9mY3R4KSk7CisKKwkJLyoKKwkJICogSW5p dGlhbGl6ZSBzdGF0ZS4gV2UgY2FuJ3Qgc3RvcmUgdGhlIHJhbmdlIHR5cGNhY2hlIGluIGZuX2V4 dHJhCisJCSAqIGJlY2F1c2UgdGhlIGNhbGxlciB1c2VzIHRoYXQgZm9yIHRoZSBTUkYgc3RhdGUu CisJCSAqLworCQlybmd0eXBpZCA9IFJhbmdlVHlwZUdldE9pZChyMSk7CisJCXR5cGNhY2hlID0g bG9va3VwX3R5cGVfY2FjaGUocm5ndHlwaWQsIFRZUEVDQUNIRV9SQU5HRV9JTkZPKTsKKwkJaWYg KHR5cGNhY2hlLT5ybmdlbGVtdHlwZSA9PSBOVUxMKQorCQkJZWxvZyhFUlJPUiwgInR5cGUgJXUg aXMgbm90IGEgcmFuZ2UgdHlwZSIsIHJuZ3R5cGlkKTsKKwkJcmFuZ2VfbWludXNfbXVsdGlfaW50 ZXJuYWwodHlwY2FjaGUsIHIxLCByMiwgZmN0eC0+cnMsICZmY3R4LT5uKTsKKworCQlmdW5jY3R4 LT51c2VyX2ZjdHggPSBmY3R4OworCQlNZW1vcnlDb250ZXh0U3dpdGNoVG8ob2xkY29udGV4dCk7 CisJfQorCisJLyogc3R1ZmYgZG9uZSBvbiBldmVyeSBjYWxsIG9mIHRoZSBmdW5jdGlvbiAqLwor CWZ1bmNjdHggPSBTUkZfUEVSQ0FMTF9TRVRVUCgpOworCWZjdHggPSBmdW5jY3R4LT51c2VyX2Zj dHg7CisKKwlpZiAoZnVuY2N0eC0+Y2FsbF9jbnRyIDwgZmN0eC0+bikKKwl7CisJCS8qCisJCSAq IFdlIG11c3Qga2VlcCB0aGVzZSBvbiBzZXBhcmF0ZSBsaW5lcyBiZWNhdXNlIFNSRl9SRVRVUk5f TkVYVCBkb2VzCisJCSAqIGNhbGxfY250cisrOgorCQkgKi8KKwkJUmFuZ2VUeXBlICAqcmV0ID0g ZmN0eC0+cnNbZnVuY2N0eC0+Y2FsbF9jbnRyXTsKKworCQlTUkZfUkVUVVJOX05FWFQoZnVuY2N0 eCwgUmFuZ2VUeXBlUEdldERhdHVtKHJldCkpOworCX0KKwllbHNlCisJCS8qIGRvIHdoZW4gdGhl cmUgaXMgbm8gbW9yZSBsZWZ0ICovCisJCVNSRl9SRVRVUk5fRE9ORShmdW5jY3R4KTsKK30KKwor LyoKKyAqIHJhbmdlX21pbnVzX211bHRpX2ludGVybmFsIC0gU2V0cyBvdXRwdXRzIGFuZCBvdXRw dXRuIHRvIHRoZSByYW5nZXMKKyAqIHJlbWFpbmluZyBhbmQgdGhlaXIgY291bnQgKHJlc3BlY3Rp dmVseSkgYWZ0ZXIgc3VidHJhY3RpbmcgcjIgZnJvbSByMS4KKyAqIFRoZSBhcnJheSBzaG91bGQg bmV2ZXIgY29udGFpbiBlbXB0eSByYW5nZXMuCisgKiBUaGUgb3V0cHV0cyB3aWxsIGJlIG9yZGVy ZWQuIFdlIGV4cGVjdCB0aGF0IG91dHB1dHMgaXMgYW4gYXJyYXkgb2YKKyAqIFJhbmdlVHlwZSBw b2ludGVycywgYWxyZWFkeSBhbGxvY2F0ZWQgd2l0aCB0d28gZWxlbWVudHMuCisgKi8KK3ZvaWQK K3JhbmdlX21pbnVzX211bHRpX2ludGVybmFsKFR5cGVDYWNoZUVudHJ5ICp0eXBjYWNoZSwgUmFu Z2VUeXBlICpyMSwKKwkJCQkJCSAgIFJhbmdlVHlwZSAqcjIsIFJhbmdlVHlwZSAqKm91dHB1dHMs IGludCAqb3V0cHV0bikKK3sKKwlpbnQJCQljbXBfbDFsMiwKKwkJCQljbXBfbDF1MiwKKwkJCQlj bXBfdTFsMiwKKwkJCQljbXBfdTF1MjsKKwlSYW5nZUJvdW5kCWxvd2VyMSwKKwkJCQlsb3dlcjI7 CisJUmFuZ2VCb3VuZAl1cHBlcjEsCisJCQkJdXBwZXIyOworCWJvb2wJCWVtcHR5MSwKKwkJCQll bXB0eTI7CisKKwlyYW5nZV9kZXNlcmlhbGl6ZSh0eXBjYWNoZSwgcjEsICZsb3dlcjEsICZ1cHBl cjEsICZlbXB0eTEpOworCXJhbmdlX2Rlc2VyaWFsaXplKHR5cGNhY2hlLCByMiwgJmxvd2VyMiwg JnVwcGVyMiwgJmVtcHR5Mik7CisKKwlpZiAoZW1wdHkxKQorCXsKKwkJLyogaWYgcjEgaXMgZW1w dHkgdGhlbiByMSAtIHIyIGlzIGVtcHR5LCBzbyByZXR1cm4gemVybyByZXN1bHRzICovCisJCSpv dXRwdXRuID0gMDsKKwkJcmV0dXJuOworCX0KKwllbHNlIGlmIChlbXB0eTIpCisJeworCQkvKiBy MiBpcyBlbXB0eSBzbyB0aGUgcmVzdWx0IGlzIGp1c3QgcjEgKHdoaWNoIHdlIGtub3cgaXMgbm90 IGVtcHR5KSAqLworCQlvdXRwdXRzWzBdID0gcjE7CisJCSpvdXRwdXRuID0gMTsKKwkJcmV0dXJu OworCX0KKworCS8qCisJICogVXNlIHRoZSBzYW1lIGxvZ2ljIGFzIHJhbmdlX21pbnVzX2ludGVy bmFsLCBidXQgc3VwcG9ydCB0aGUgc3BsaXQgY2FzZQorCSAqLworCWNtcF9sMWwyID0gcmFuZ2Vf Y21wX2JvdW5kcyh0eXBjYWNoZSwgJmxvd2VyMSwgJmxvd2VyMik7CisJY21wX2wxdTIgPSByYW5n ZV9jbXBfYm91bmRzKHR5cGNhY2hlLCAmbG93ZXIxLCAmdXBwZXIyKTsKKwljbXBfdTFsMiA9IHJh bmdlX2NtcF9ib3VuZHModHlwY2FjaGUsICZ1cHBlcjEsICZsb3dlcjIpOworCWNtcF91MXUyID0g cmFuZ2VfY21wX2JvdW5kcyh0eXBjYWNoZSwgJnVwcGVyMSwgJnVwcGVyMik7CisKKwlpZiAoY21w X2wxbDIgPCAwICYmIGNtcF91MXUyID4gMCkKKwl7CisJCWxvd2VyMi5pbmNsdXNpdmUgPSAhbG93 ZXIyLmluY2x1c2l2ZTsKKwkJbG93ZXIyLmxvd2VyID0gZmFsc2U7CS8qIGl0IHdpbGwgYmVjb21l IHRoZSB1cHBlciBib3VuZCAqLworCQlvdXRwdXRzWzBdID0gbWFrZV9yYW5nZSh0eXBjYWNoZSwg Jmxvd2VyMSwgJmxvd2VyMiwgZmFsc2UsIE5VTEwpOworCisJCXVwcGVyMi5pbmNsdXNpdmUgPSAh dXBwZXIyLmluY2x1c2l2ZTsKKwkJdXBwZXIyLmxvd2VyID0gdHJ1ZTsJLyogaXQgd2lsbCBiZWNv bWUgdGhlIGxvd2VyIGJvdW5kICovCisJCW91dHB1dHNbMV0gPSBtYWtlX3JhbmdlKHR5cGNhY2hl LCAmdXBwZXIyLCAmdXBwZXIxLCBmYWxzZSwgTlVMTCk7CisKKwkJKm91dHB1dG4gPSAyOworCX0K KwllbHNlIGlmIChjbXBfbDF1MiA+IDAgfHwgY21wX3UxbDIgPCAwKQorCXsKKwkJb3V0cHV0c1sw XSA9IHIxOworCQkqb3V0cHV0biA9IDE7CisJfQorCWVsc2UgaWYgKGNtcF9sMWwyID49IDAgJiYg Y21wX3UxdTIgPD0gMCkKKwl7CisJCSpvdXRwdXRuID0gMDsKKwl9CisJZWxzZSBpZiAoY21wX2wx bDIgPD0gMCAmJiBjbXBfdTFsMiA+PSAwICYmIGNtcF91MXUyIDw9IDApCisJeworCQlsb3dlcjIu aW5jbHVzaXZlID0gIWxvd2VyMi5pbmNsdXNpdmU7CisJCWxvd2VyMi5sb3dlciA9IGZhbHNlOwkv KiBpdCB3aWxsIGJlY29tZSB0aGUgdXBwZXIgYm91bmQgKi8KKwkJb3V0cHV0c1swXSA9IG1ha2Vf cmFuZ2UodHlwY2FjaGUsICZsb3dlcjEsICZsb3dlcjIsIGZhbHNlLCBOVUxMKTsKKwkJKm91dHB1 dG4gPSAxOworCX0KKwllbHNlIGlmIChjbXBfbDFsMiA+PSAwICYmIGNtcF91MXUyID49IDAgJiYg Y21wX2wxdTIgPD0gMCkKKwl7CisJCXVwcGVyMi5pbmNsdXNpdmUgPSAhdXBwZXIyLmluY2x1c2l2 ZTsKKwkJdXBwZXIyLmxvd2VyID0gdHJ1ZTsJLyogaXQgd2lsbCBiZWNvbWUgdGhlIGxvd2VyIGJv dW5kICovCisJCW91dHB1dHNbMF0gPSBtYWtlX3JhbmdlKHR5cGNhY2hlLCAmdXBwZXIyLCAmdXBw ZXIxLCBmYWxzZSwgTlVMTCk7CisJCSpvdXRwdXRuID0gMTsKKwl9CisJZWxzZQorCXsKKwkJZWxv ZyhFUlJPUiwgInVuZXhwZWN0ZWQgY2FzZSBpbiByYW5nZV9taW51c19tdWx0aSIpOworCX0KK30K KwogLyogcmFuZ2UgLT4gcmFuZ2UgYWdncmVnYXRlIGZ1bmN0aW9ucyAqLwogCiBEYXR1bQpkaWZm IC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfcHJvYy5kYXQKaW5kZXggOTEyMWEzODJmNzYuLjE2ODU5YThjZmE3IDEwMDY0NAot LS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBiL3NyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfcHJvYy5kYXQKQEAgLTEwOTM5LDYgKzEwOTM5LDEwIEBACiB7IG9pZCA9PiAnMzg2 OScsCiAgIHByb25hbWUgPT4gJ3JhbmdlX21pbnVzJywgcHJvcmV0dHlwZSA9PiAnYW55cmFuZ2Un LAogICBwcm9hcmd0eXBlcyA9PiAnYW55cmFuZ2UgYW55cmFuZ2UnLCBwcm9zcmMgPT4gJ3Jhbmdl X21pbnVzJyB9LAoreyBvaWQgPT4gJzg0MTInLCBkZXNjciA9PiAncmVtb3ZlIHBvcnRpb24gZnJv bSByYW5nZScsCisgIHByb25hbWUgPT4gJ3JhbmdlX21pbnVzX211bHRpJywgcHJvcm93cyA9PiAn MicsCisgIHByb3JldHNldCA9PiAndCcsIHByb3JldHR5cGUgPT4gJ2FueXJhbmdlJywKKyAgcHJv YXJndHlwZXMgPT4gJ2FueXJhbmdlIGFueXJhbmdlJywgcHJvc3JjID0+ICdyYW5nZV9taW51c19t dWx0aScgfSwKIHsgb2lkID0+ICczODcwJywgZGVzY3IgPT4gJ2xlc3MtZXF1YWwtZ3JlYXRlcics CiAgIHByb25hbWUgPT4gJ3JhbmdlX2NtcCcsIHByb3JldHR5cGUgPT4gJ2ludDQnLAogICBwcm9h cmd0eXBlcyA9PiAnYW55cmFuZ2UgYW55cmFuZ2UnLCBwcm9zcmMgPT4gJ3JhbmdlX2NtcCcgfSwK QEAgLTExMjI5LDYgKzExMjMzLDEwIEBACiB7IG9pZCA9PiAnNDI3MScsCiAgIHByb25hbWUgPT4g J211bHRpcmFuZ2VfbWludXMnLCBwcm9yZXR0eXBlID0+ICdhbnltdWx0aXJhbmdlJywKICAgcHJv YXJndHlwZXMgPT4gJ2FueW11bHRpcmFuZ2UgYW55bXVsdGlyYW5nZScsIHByb3NyYyA9PiAnbXVs dGlyYW5nZV9taW51cycgfSwKK3sgb2lkID0+ICc4NDExJywgZGVzY3IgPT4gJ3JlbW92ZSBwb3J0 aW9uIGZyb20gbXVsdGlyYW5nZScsCisgIHByb25hbWUgPT4gJ211bHRpcmFuZ2VfbWludXNfbXVs dGknLCBwcm9yb3dzID0+ICcxJywKKyAgcHJvcmV0c2V0ID0+ICd0JywgcHJvcmV0dHlwZSA9PiAn YW55bXVsdGlyYW5nZScsCisgIHByb2FyZ3R5cGVzID0+ICdhbnltdWx0aXJhbmdlIGFueW11bHRp cmFuZ2UnLCBwcm9zcmMgPT4gJ211bHRpcmFuZ2VfbWludXNfbXVsdGknIH0sCiB7IG9pZCA9PiAn NDI3MicsCiAgIHByb25hbWUgPT4gJ211bHRpcmFuZ2VfaW50ZXJzZWN0JywgcHJvcmV0dHlwZSA9 PiAnYW55bXVsdGlyYW5nZScsCiAgIHByb2FyZ3R5cGVzID0+ICdhbnltdWx0aXJhbmdlIGFueW11 bHRpcmFuZ2UnLApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvdXRpbHMvcmFuZ2V0eXBlcy5oIGIv c3JjL2luY2x1ZGUvdXRpbHMvcmFuZ2V0eXBlcy5oCmluZGV4IDUwYWRiM2M4YzEzLi44MzZmMmIw OTE0YiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvdXRpbHMvcmFuZ2V0eXBlcy5oCisrKyBiL3Ny Yy9pbmNsdWRlL3V0aWxzL3JhbmdldHlwZXMuaApAQCAtMTY0LDUgKzE2NCw3IEBAIGV4dGVybiBS YW5nZVR5cGUgKm1ha2VfZW1wdHlfcmFuZ2UoVHlwZUNhY2hlRW50cnkgKnR5cGNhY2hlKTsKIGV4 dGVybiBib29sIHJhbmdlX3NwbGl0X2ludGVybmFsKFR5cGVDYWNoZUVudHJ5ICp0eXBjYWNoZSwg Y29uc3QgUmFuZ2VUeXBlICpyMSwKIAkJCQkJCQkJIGNvbnN0IFJhbmdlVHlwZSAqcjIsIFJhbmdl VHlwZSAqKm91dHB1dDEsCiAJCQkJCQkJCSBSYW5nZVR5cGUgKipvdXRwdXQyKTsKK2V4dGVybiB2 b2lkIHJhbmdlX21pbnVzX211bHRpX2ludGVybmFsKFR5cGVDYWNoZUVudHJ5ICp0eXBjYWNoZSwg UmFuZ2VUeXBlICpyMSwKKwkJCQkJCQkJCSAgIFJhbmdlVHlwZSAqcjIsIFJhbmdlVHlwZSAqKm91 dHB1dHMsIGludCAqb3V0cHV0bik7CiAKICNlbmRpZgkJCQkJCQkvKiBSQU5HRVRZUEVTX0ggKi8K ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvbXVsdGlyYW5nZXR5cGVzLm91 dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvbXVsdGlyYW5nZXR5cGVzLm91dAppbmRleCA2 M2RlNGQwOWIxNS4uZjVlN2RmOGRmNDMgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhw ZWN0ZWQvbXVsdGlyYW5nZXR5cGVzLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L211bHRpcmFuZ2V0eXBlcy5vdXQKQEAgLTIyMDAsNiArMjIwMCwxMjIgQEAgU0VMRUNUIG51bW11 bHRpcmFuZ2UobnVtcmFuZ2UoMSwyKSwgbnVtcmFuZ2UoNCw1KSkgLSBudW1tdWx0aXJhbmdlKG51 bXJhbmdlKC0yLDAKICB7WzEsMiksWzQsNSl9CiAoMSByb3cpCiAKKy0tIG11bHRpcmFuZ2VfbWlu dXNfbXVsdGkKK1NFTEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UoKSwg bnVtbXVsdGlyYW5nZSgpKTsKKyBtdWx0aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCisoMCByb3dzKQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShu dW1tdWx0aXJhbmdlKCksIG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSwyKSkpOworIG11bHRpcmFu Z2VfbWludXNfbXVsdGkgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKK1NF TEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSwyKSks IG51bW11bHRpcmFuZ2UoKSk7CisgbXVsdGlyYW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQorIHtbMSwyKX0KKygxIHJvdykKKworU0VMRUNUIG11bHRpcmFuZ2VfbWlu dXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIpLCBudW1yYW5nZSgzLDQpKSwgbnVt bXVsdGlyYW5nZSgpKTsKKyBtdWx0aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisge1sxLDIpLFszLDQpfQorKDEgcm93KQorCitTRUxFQ1QgbXVsdGlyYW5nZV9t aW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsMikpLCBudW1tdWx0aXJhbmdlKG51 bXJhbmdlKDEsMikpKTsKKyBtdWx0aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisoMCByb3dzKQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1t dWx0aXJhbmdlKG51bXJhbmdlKDEsMikpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDIsNCkpKTsK KyBtdWx0aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisge1sx LDIpfQorKDEgcm93KQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJh bmdlKG51bXJhbmdlKDEsMikpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDMsNCkpKTsKKyBtdWx0 aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisge1sxLDIpfQor KDEgcm93KQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51 bXJhbmdlKDEsNCkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsMikpKTsKKyBtdWx0aXJhbmdl X21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisge1syLDQpfQorKDEgcm93 KQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdl KDEsNCkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDIsMykpKTsKKyBtdWx0aXJhbmdlX21pbnVz X211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisge1sxLDIpLFszLDQpfQorKDEgcm93 KQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdl KDEsNCkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDAsOCkpKTsKKyBtdWx0aXJhbmdlX21pbnVz X211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisoMCByb3dzKQorCitTRUxFQ1QgbXVs dGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsNCkpLCBudW1tdWx0 aXJhbmdlKG51bXJhbmdlKDAsMikpKTsKKyBtdWx0aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCisge1syLDQpfQorKDEgcm93KQorCitTRUxFQ1QgbXVsdGlyYW5n ZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsOCkpLCBudW1tdWx0aXJhbmdl KG51bXJhbmdlKDAsMiksIG51bXJhbmdlKDMsNCkpKTsKKyBtdWx0aXJhbmdlX21pbnVzX211bHRp IAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisge1syLDMpLFs0LDgpfQorKDEgcm93KQorCitT RUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsOCkp LCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDIsMyksIG51bXJhbmdlKDUsbnVsbCkpKTsKKyBtdWx0 aXJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisge1sxLDIpLFsz LDUpfQorKDEgcm93KQorCitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJh bmdlKG51bXJhbmdlKDEsMiksIG51bXJhbmdlKDQsNSkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdl KC0yLDApKSk7CisgbXVsdGlyYW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQorIHtbMSwyKSxbNCw1KX0KKygxIHJvdykKKworU0VMRUNUIG11bHRpcmFuZ2VfbWludXNf bXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIpLCBudW1yYW5nZSg0LDUpKSwgbnVtbXVs dGlyYW5nZShudW1yYW5nZSgyLDQpKSk7CisgbXVsdGlyYW5nZV9taW51c19tdWx0aSAKKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIHtbMSwyKSxbNCw1KX0KKygxIHJvdykKKworU0VMRUNUIG11 bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIpLCBudW1yYW5n ZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShudW1yYW5nZSgzLDUpKSk7CisgbXVsdGlyYW5nZV9taW51 c19tdWx0aSAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHtbMSwyKX0KKygxIHJvdykKKwor U0VMRUNUIG11bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIp LCBudW1yYW5nZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShudW1yYW5nZSgwLDkpKSk7CisgbXVsdGly YW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorKDAgcm93cykKKwor U0VMRUNUIG11bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDMp LCBudW1yYW5nZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShudW1yYW5nZSgyLDkpKSk7CisgbXVsdGly YW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHtbMSwyKX0KKygx IHJvdykKKworU0VMRUNUIG11bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1y YW5nZSgxLDIpLCBudW1yYW5nZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShudW1yYW5nZSg4LDkpKSk7 CisgbXVsdGlyYW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHtb MSwyKSxbNCw1KX0KKygxIHJvdykKKworU0VMRUNUIG11bHRpcmFuZ2VfbWludXNfbXVsdGkobnVt bXVsdGlyYW5nZShudW1yYW5nZSgxLDIpLCBudW1yYW5nZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShu dW1yYW5nZSgtMiwwKSwgbnVtcmFuZ2UoOCw5KSkpOworIG11bHRpcmFuZ2VfbWludXNfbXVsdGkg CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB7WzEsMiksWzQsNSl9CisoMSByb3cpCisKIC0t IGludGVyc2VjdGlvbgogU0VMRUNUIG51bW11bHRpcmFuZ2UoKSAqIG51bW11bHRpcmFuZ2UoKTsK ICA/Y29sdW1uPyAKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcmFuZ2V0 eXBlcy5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3JhbmdldHlwZXMub3V0CmluZGV4 IGNkZDk1Nzk5Y2Q1Li5lMDYyYTRlNWMyYyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9yYW5nZXR5cGVzLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Jh bmdldHlwZXMub3V0CkBAIC00ODEsNiArNDgxLDYwIEBAIHNlbGVjdCByYW5nZV9taW51cyhudW1y YW5nZSgxMC4xLDEyLjIsJ1tdJyksIG51bXJhbmdlKDAuMCwxMjAuMiwnKF0nKSk7CiAgZW1wdHkK ICgxIHJvdykKIAorc2VsZWN0IHJhbmdlX21pbnVzX211bHRpKCdlbXB0eSc6Om51bXJhbmdlLCBu dW1yYW5nZSgyLjAsIDMuMCkpOworIHJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0t LS0tLQorKDAgcm93cykKKworc2VsZWN0IHJhbmdlX21pbnVzX211bHRpKG51bXJhbmdlKDEuMSwg Mi4yKSwgJ2VtcHR5Jzo6bnVtcmFuZ2UpOworIHJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0t LS0tLS0tLS0tLQorIFsxLjEsMi4yKQorKDEgcm93KQorCitzZWxlY3QgcmFuZ2VfbWludXNfbXVs dGkobnVtcmFuZ2UoMS4xLCAyLjIpLCBudW1yYW5nZSgyLjAsIDMuMCkpOworIHJhbmdlX21pbnVz X211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLQorIFsxLjEsMi4wKQorKDEgcm93KQorCitzZWxl Y3QgcmFuZ2VfbWludXNfbXVsdGkobnVtcmFuZ2UoMS4xLCAyLjIpLCBudW1yYW5nZSgyLjIsIDMu MCkpOworIHJhbmdlX21pbnVzX211bHRpIAorLS0tLS0tLS0tLS0tLS0tLS0tLQorIFsxLjEsMi4y KQorKDEgcm93KQorCitzZWxlY3QgcmFuZ2VfbWludXNfbXVsdGkobnVtcmFuZ2UoMS4xLCAyLjIs J1tdJyksIG51bXJhbmdlKDIuMCwgMy4wKSk7CisgcmFuZ2VfbWludXNfbXVsdGkgCistLS0tLS0t LS0tLS0tLS0tLS0tCisgWzEuMSwyLjApCisoMSByb3cpCisKK3NlbGVjdCByYW5nZV9taW51c19t dWx0aShudW1yYW5nZSgxLjAsIDMuMCksIG51bXJhbmdlKDEuNSwgMi4wKSk7CisgcmFuZ2VfbWlu dXNfbXVsdGkgCistLS0tLS0tLS0tLS0tLS0tLS0tCisgWzEuMCwxLjUpCisgWzIuMCwzLjApCiso MiByb3dzKQorCitzZWxlY3QgcmFuZ2VfbWludXNfbXVsdGkobnVtcmFuZ2UoMTAuMSwxMi4yLCdb XScpLCBudW1yYW5nZSgxMTAuMCwxMjAuMiwnKF0nKSk7CisgcmFuZ2VfbWludXNfbXVsdGkgCist LS0tLS0tLS0tLS0tLS0tLS0tCisgWzEwLjEsMTIuMl0KKygxIHJvdykKKworc2VsZWN0IHJhbmdl X21pbnVzX211bHRpKG51bXJhbmdlKDEwLjEsMTIuMiwnW10nKSwgbnVtcmFuZ2UoMC4wLDEyMC4y LCcoXScpKTsKKyByYW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKygwIHJv d3MpCisKK3NlbGVjdCByYW5nZV9taW51c19tdWx0aShudW1yYW5nZSgxLjAsMy4wLCdbXScpLCBu dW1yYW5nZSgxLjUsMi4wLCcoXScpKTsKKyByYW5nZV9taW51c19tdWx0aSAKKy0tLS0tLS0tLS0t LS0tLS0tLS0KKyBbMS4wLDEuNV0KKyAoMi4wLDMuMF0KKygyIHJvd3MpCisKIHNlbGVjdCBudW1y YW5nZSg0LjUsIDUuNSwgJ1tdJykgJiYgbnVtcmFuZ2UoNS41LCA2LjUpOwogID9jb2x1bW4/IAog LS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvbXVsdGlyYW5nZXR5 cGVzLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL211bHRpcmFuZ2V0eXBlcy5zcWwKaW5kZXgg NDFkNTUyNDI4NWEuLjExMjMzNGIwM2ViIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9tdWx0aXJhbmdldHlwZXMuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL211bHRpcmFu Z2V0eXBlcy5zcWwKQEAgLTQxNCw2ICs0MTQsMjggQEAgU0VMRUNUIG51bW11bHRpcmFuZ2UobnVt cmFuZ2UoMSwzKSwgbnVtcmFuZ2UoNCw1KSkgLSBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDIsOSkK IFNFTEVDVCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsMiksIG51bXJhbmdlKDQsNSkpIC0gbnVt bXVsdGlyYW5nZShudW1yYW5nZSg4LDkpKTsKIFNFTEVDVCBudW1tdWx0aXJhbmdlKG51bXJhbmdl KDEsMiksIG51bXJhbmdlKDQsNSkpIC0gbnVtbXVsdGlyYW5nZShudW1yYW5nZSgtMiwwKSwgbnVt cmFuZ2UoOCw5KSk7CiAKKy0tIG11bHRpcmFuZ2VfbWludXNfbXVsdGkKK1NFTEVDVCBtdWx0aXJh bmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UoKSwgbnVtbXVsdGlyYW5nZSgpKTsKK1NFTEVD VCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UoKSwgbnVtbXVsdGlyYW5nZShu dW1yYW5nZSgxLDIpKSk7CitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJh bmdlKG51bXJhbmdlKDEsMikpLCBudW1tdWx0aXJhbmdlKCkpOworU0VMRUNUIG11bHRpcmFuZ2Vf bWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIpLCBudW1yYW5nZSgzLDQpKSwg bnVtbXVsdGlyYW5nZSgpKTsKK1NFTEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRp cmFuZ2UobnVtcmFuZ2UoMSwyKSksIG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSwyKSkpOworU0VM RUNUIG11bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIpKSwg bnVtbXVsdGlyYW5nZShudW1yYW5nZSgyLDQpKSk7CitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19t dWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsMikpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdl KDMsNCkpKTsKK1NFTEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UobnVt cmFuZ2UoMSw0KSksIG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSwyKSkpOworU0VMRUNUIG11bHRp cmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDQpKSwgbnVtbXVsdGly YW5nZShudW1yYW5nZSgyLDMpKSk7CitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1t dWx0aXJhbmdlKG51bXJhbmdlKDEsNCkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDAsOCkpKTsK K1NFTEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSw0 KSksIG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMCwyKSkpOworU0VMRUNUIG11bHRpcmFuZ2VfbWlu dXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDgpKSwgbnVtbXVsdGlyYW5nZShudW1y YW5nZSgwLDIpLCBudW1yYW5nZSgzLDQpKSk7CitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0 aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsOCkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDIs MyksIG51bXJhbmdlKDUsbnVsbCkpKTsKK1NFTEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51 bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSwyKSwgbnVtcmFuZ2UoNCw1KSksIG51bW11bHRpcmFuZ2Uo bnVtcmFuZ2UoLTIsMCkpKTsKK1NFTEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRp cmFuZ2UobnVtcmFuZ2UoMSwyKSwgbnVtcmFuZ2UoNCw1KSksIG51bW11bHRpcmFuZ2UobnVtcmFu Z2UoMiw0KSkpOworU0VMRUNUIG11bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShu dW1yYW5nZSgxLDIpLCBudW1yYW5nZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShudW1yYW5nZSgzLDUp KSk7CitTRUxFQ1QgbXVsdGlyYW5nZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdl KDEsMiksIG51bXJhbmdlKDQsNSkpLCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDAsOSkpKTsKK1NF TEVDVCBtdWx0aXJhbmdlX21pbnVzX211bHRpKG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMSwzKSwg bnVtcmFuZ2UoNCw1KSksIG51bW11bHRpcmFuZ2UobnVtcmFuZ2UoMiw5KSkpOworU0VMRUNUIG11 bHRpcmFuZ2VfbWludXNfbXVsdGkobnVtbXVsdGlyYW5nZShudW1yYW5nZSgxLDIpLCBudW1yYW5n ZSg0LDUpKSwgbnVtbXVsdGlyYW5nZShudW1yYW5nZSg4LDkpKSk7CitTRUxFQ1QgbXVsdGlyYW5n ZV9taW51c19tdWx0aShudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsMiksIG51bXJhbmdlKDQsNSkp LCBudW1tdWx0aXJhbmdlKG51bXJhbmdlKC0yLDApLCBudW1yYW5nZSg4LDkpKSk7CisKIC0tIGlu dGVyc2VjdGlvbgogU0VMRUNUIG51bW11bHRpcmFuZ2UoKSAqIG51bW11bHRpcmFuZ2UoKTsKIFNF TEVDVCBudW1tdWx0aXJhbmdlKCkgKiBudW1tdWx0aXJhbmdlKG51bXJhbmdlKDEsMikpOwpkaWZm IC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvcmFuZ2V0eXBlcy5zcWwgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC9yYW5nZXR5cGVzLnNxbAppbmRleCBhNWVjZGY1MzcyZi4uNWM0YjAzMzdiN2Eg MTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3JhbmdldHlwZXMuc3FsCisrKyBiL3Ny Yy90ZXN0L3JlZ3Jlc3Mvc3FsL3JhbmdldHlwZXMuc3FsCkBAIC0xMDcsNiArMTA3LDE2IEBAIHNl bGVjdCBudW1yYW5nZSgxLjEsIDIuMiwnW10nKSAtIG51bXJhbmdlKDIuMCwgMy4wKTsKIHNlbGVj dCByYW5nZV9taW51cyhudW1yYW5nZSgxMC4xLDEyLjIsJ1tdJyksIG51bXJhbmdlKDExMC4wLDEy MC4yLCcoXScpKTsKIHNlbGVjdCByYW5nZV9taW51cyhudW1yYW5nZSgxMC4xLDEyLjIsJ1tdJyks IG51bXJhbmdlKDAuMCwxMjAuMiwnKF0nKSk7CiAKK3NlbGVjdCByYW5nZV9taW51c19tdWx0aSgn ZW1wdHknOjpudW1yYW5nZSwgbnVtcmFuZ2UoMi4wLCAzLjApKTsKK3NlbGVjdCByYW5nZV9taW51 c19tdWx0aShudW1yYW5nZSgxLjEsIDIuMiksICdlbXB0eSc6Om51bXJhbmdlKTsKK3NlbGVjdCBy YW5nZV9taW51c19tdWx0aShudW1yYW5nZSgxLjEsIDIuMiksIG51bXJhbmdlKDIuMCwgMy4wKSk7 CitzZWxlY3QgcmFuZ2VfbWludXNfbXVsdGkobnVtcmFuZ2UoMS4xLCAyLjIpLCBudW1yYW5nZSgy LjIsIDMuMCkpOworc2VsZWN0IHJhbmdlX21pbnVzX211bHRpKG51bXJhbmdlKDEuMSwgMi4yLCdb XScpLCBudW1yYW5nZSgyLjAsIDMuMCkpOworc2VsZWN0IHJhbmdlX21pbnVzX211bHRpKG51bXJh bmdlKDEuMCwgMy4wKSwgbnVtcmFuZ2UoMS41LCAyLjApKTsKK3NlbGVjdCByYW5nZV9taW51c19t dWx0aShudW1yYW5nZSgxMC4xLDEyLjIsJ1tdJyksIG51bXJhbmdlKDExMC4wLDEyMC4yLCcoXScp KTsKK3NlbGVjdCByYW5nZV9taW51c19tdWx0aShudW1yYW5nZSgxMC4xLDEyLjIsJ1tdJyksIG51 bXJhbmdlKDAuMCwxMjAuMiwnKF0nKSk7CitzZWxlY3QgcmFuZ2VfbWludXNfbXVsdGkobnVtcmFu Z2UoMS4wLDMuMCwnW10nKSwgbnVtcmFuZ2UoMS41LDIuMCwnKF0nKSk7CisKIHNlbGVjdCBudW1y YW5nZSg0LjUsIDUuNSwgJ1tdJykgJiYgbnVtcmFuZ2UoNS41LCA2LjUpOwogc2VsZWN0IG51bXJh bmdlKDEuMCwgMi4wKSA8PCBudW1yYW5nZSgzLjAsIDQuMCk7CiBzZWxlY3QgbnVtcmFuZ2UoMS4w LCAzLjAsJ1tdJykgPDwgbnVtcmFuZ2UoMy4wLCA0LjAsJ1tdJyk7Ci0tIAoyLjM5LjUKCg== --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0007-Add-tg_temporal-to-TriggerData.patch" Content-Disposition: attachment; filename="v59-0007-Add-tg_temporal-to-TriggerData.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4h6 RnJvbSBmNmIwODAzZTJkMThkZGJmNDQ5YzMyMjc4NDY1MzQxYTI4ZDhhNWY3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMTMgSnVuIDIwMjUgMTU6NDA6MDYgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwNy8xMV0gQWRkIHRnX3RlbXBvcmFsIHRvIFRyaWdnZXJEYXRhCgpUaGlz IG5lZWRzIHRvIGJlIHBhc3NlZCB0byBvdXIgUkkgdHJpZ2dlcnMgdG8gaW1wbGVtZW50IHRlbXBv cmFsCkNBU0NBREUvU0VUIE5VTEwvU0VUIERFRkFVTFQgd2hlbiB0aGUgdXNlciBjb21tYW5kIGlz IGFuIFVQREFURS9ERUxFVEUKRk9SIFBPUlRJT04gT0YuIFRoZSB0cmlnZ2VycyB3aWxsIHVzZSB0 aGUgRk9SIFBPUlRJT04gT0YgYm91bmRzIHRvIGF2b2lkCm92ZXItYXBwbHlpbmcgdGhlIGNoYW5n ZSB0byByZWZlcmVuY2luZyByZWNvcmRzLgoKUHJvYmFibHkgaXQgaXMgdXNlZnVsIGZvciB1c2Vy LWRlZmluZWQgdHJpZ2dlcnMgYXMgd2VsbCwgZm9yIGV4YW1wbGUKYXVkaXRpbmcgb3IgdHJpZ2dl ci1iYXNlZCByZXBsaWNhdGlvbi4KCkF1dGhvcjogUGF1bCBBLiBKdW5nd2lydGggPHBqQGlsbHVt aW5hdGVkY29tcHV0aW5nLmNvbT4KLS0tCiBkb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sICAgICAg ICB8IDU2ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCiBzcmMvYmFja2VuZC9jb21t YW5kcy90YWJsZWNtZHMuYyB8ICAxICsKIHNyYy9iYWNrZW5kL2NvbW1hbmRzL3RyaWdnZXIuYyAg IHwgNTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyYy9pbmNsdWRlL2NvbW1hbmRz L3RyaWdnZXIuaCAgIHwgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA5OCBpbnNlcnRpb25zKCspLCAx MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sIGIv ZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbAppbmRleCBlM2FkOTgwNjUyOC4uMDA0NGE5N2EzZmQg MTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC90cmlnZ2VyLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21s L3RyaWdnZXIuc2dtbApAQCAtNTYzLDE3ICs1NjMsMTggQEAgQ0FMTEVEX0FTX1RSSUdHRVIoZmNp bmZvKQogPHByb2dyYW1saXN0aW5nPgogdHlwZWRlZiBzdHJ1Y3QgVHJpZ2dlckRhdGEKIHsKLSAg ICBOb2RlVGFnICAgICAgICAgIHR5cGU7Ci0gICAgVHJpZ2dlckV2ZW50ICAgICB0Z19ldmVudDsK LSAgICBSZWxhdGlvbiAgICAgICAgIHRnX3JlbGF0aW9uOwotICAgIEhlYXBUdXBsZSAgICAgICAg dGdfdHJpZ3R1cGxlOwotICAgIEhlYXBUdXBsZSAgICAgICAgdGdfbmV3dHVwbGU7Ci0gICAgVHJp Z2dlciAgICAgICAgICp0Z190cmlnZ2VyOwotICAgIFR1cGxlVGFibGVTbG90ICAqdGdfdHJpZ3Ns b3Q7Ci0gICAgVHVwbGVUYWJsZVNsb3QgICp0Z19uZXdzbG90OwotICAgIFR1cGxlc3RvcmVzdGF0 ZSAqdGdfb2xkdGFibGU7Ci0gICAgVHVwbGVzdG9yZXN0YXRlICp0Z19uZXd0YWJsZTsKLSAgICBj b25zdCBCaXRtYXBzZXQgKnRnX3VwZGF0ZWRjb2xzOworICAgIE5vZGVUYWcgICAgICAgICAgICB0 eXBlOworICAgIFRyaWdnZXJFdmVudCAgICAgICB0Z19ldmVudDsKKyAgICBSZWxhdGlvbiAgICAg ICAgICAgdGdfcmVsYXRpb247CisgICAgSGVhcFR1cGxlICAgICAgICAgIHRnX3RyaWd0dXBsZTsK KyAgICBIZWFwVHVwbGUgICAgICAgICAgdGdfbmV3dHVwbGU7CisgICAgVHJpZ2dlciAgICAgICAg ICAgKnRnX3RyaWdnZXI7CisgICAgVHVwbGVUYWJsZVNsb3QgICAgKnRnX3RyaWdzbG90OworICAg IFR1cGxlVGFibGVTbG90ICAgICp0Z19uZXdzbG90OworICAgIFR1cGxlc3RvcmVzdGF0ZSAgICp0 Z19vbGR0YWJsZTsKKyAgICBUdXBsZXN0b3Jlc3RhdGUgICAqdGdfbmV3dGFibGU7CisgICAgY29u c3QgQml0bWFwc2V0ICAgKnRnX3VwZGF0ZWRjb2xzOworICAgIEZvclBvcnRpb25PZlN0YXRlICp0 Z190ZW1wb3JhbDsKIH0gVHJpZ2dlckRhdGE7CiA8L3Byb2dyYW1saXN0aW5nPgogCkBAIC04NDEs NiArODQyLDM5IEBAIHR5cGVkZWYgc3RydWN0IFRyaWdnZXIKICAgICAgICA8L3BhcmE+CiAgICAg ICA8L2xpc3RpdGVtPgogICAgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgICA8dmFybGlzdGVudHJ5 PgorICAgICAgPHRlcm0+PHN0cnVjdGZpZWxkPnRnX3RlbXBvcmFsPC9zdHJ1Y3RmaWVsZD48L3Rl cm0+CisgICAgICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAgIFNldCBmb3IgPGxp dGVyYWw+VVBEQVRFPC9saXRlcmFsPiBhbmQgPGxpdGVyYWw+REVMRVRFPC9saXRlcmFsPiBxdWVy aWVzCisgICAgICAgIHRoYXQgdXNlIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiwg b3RoZXJ3aXNlIDxzeW1ib2w+TlVMTDwvc3ltYm9sPi4KKyAgICAgICAgQ29udGFpbnMgYSBwb2lu dGVyIHRvIGEgc3RydWN0dXJlIG9mIHR5cGUKKyAgICAgICAgPHN0cnVjdG5hbWU+Rm9yUG9ydGlv bk9mU3RhdGU8L3N0cnVjdG5hbWU+LCBkZWZpbmVkIGluCisgICAgICAgIDxmaWxlbmFtZT5ub2Rl cy9leGVjbm9kZXMuaDwvZmlsZW5hbWU+OgorCis8cHJvZ3JhbWxpc3Rpbmc+Cit0eXBlZGVmIHN0 cnVjdCBGb3JQb3J0aW9uT2ZTdGF0ZQoreworICAgIE5vZGVUYWcgICAgIHR5cGU7CisKKyAgICBj aGFyICAgICAgICpmcF9yYW5nZU5hbWU7ICAgLyogdGhlIGNvbHVtbiBuYW1lZCBpbiBGT1IgUE9S VElPTiBPRiAqLworICAgIE9pZCAgICAgICAgIGZwX3JhbmdlVHlwZTsgICAvKiB0aGUgdHlwZSBv ZiB0aGUgRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbiAqLworICAgIGludCAgICAgICAgIGZwX3Jh bmdlQXR0bm87ICAvKiB0aGUgYXR0bm8gb2YgdGhlIHJhbmdlIGNvbHVtbiAqLworICAgIERhdHVt ICAgICAgIGZwX3RhcmdldFJhbmdlOyAvKiB0aGUgcmFuZ2UvbXVsdGlyYW5nZSBmcm9tIEZPUiBQ T1JUSU9OIE9GICovCisgICAgVHlwZUNhY2hlRW50cnkgKmZwX2xlZnRvdmVyc3R5cGNhY2hlOyAg IC8qIHR5cGUgY2FjaGUgZW50cnkgb2YgdGhlIHJhbmdlICovCit9IEZvclBvcnRpb25PZlN0YXRl OworPC9wcm9ncmFtbGlzdGluZz4KKworICAgICAgIHdoZXJlIDxzdHJ1Y3RmaWVsZD5mcF9yYW5n ZU5hbWU8L3N0cnVjdGZpZWxkPiBpcyB0aGUgcmFuZ2UKKyAgICAgICBjb2x1bW4gbmFtZWQgaW4g dGhlIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBjbGF1c2UsCisgICAgICAgPHN0 cnVjdGZpZWxkPmZwX3JhbmdlVHlwZTwvc3RydWN0ZmllbGQ+IGlzIGl0cyByYW5nZSB0eXBlLAor ICAgICAgIDxzdHJ1Y3RmaWVsZD5mcF9yYW5nZUF0dG5vPC9zdHJ1Y3RmaWVsZD4gaXMgaXRzIGF0 dHJpYnV0ZSBudW1iZXIsCisgICAgICAgYW5kIDxzdHJ1Y3RmaWVsZD5mcF90YXJnZXRSYW5nZTwv c3RydWN0ZmllbGQ+IGlzIGEgcmFuZ2V0eXBlIHZhbHVlIGNyZWF0ZWQKKyAgICAgICBieSBldmFs dWF0aW5nIHRoZSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gYm91bmRzLgorICAg ICAgIDwvcGFyYT4KKyAgICAgIDwvbGlzdGl0ZW0+CisgICAgIDwvdmFybGlzdGVudHJ5PgogICAg IDwvdmFyaWFibGVsaXN0PgogICAgPC9wYXJhPgogCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9j b21tYW5kcy90YWJsZWNtZHMuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCmlu ZGV4IDM0ZjllMzQyMzYyLi5mOWY0OTk2ZDFjMyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29t bWFuZHMvdGFibGVjbWRzLmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMK QEAgLTEzNzYwLDYgKzEzNzYwLDcgQEAgdmFsaWRhdGVGb3JlaWduS2V5Q29uc3RyYWludChjaGFy ICpjb25uYW1lLAogCQl0cmlnZGF0YS50Z190cmlndHVwbGUgPSBFeGVjRmV0Y2hTbG90SGVhcFR1 cGxlKHNsb3QsIGZhbHNlLCBOVUxMKTsKIAkJdHJpZ2RhdGEudGdfdHJpZ3Nsb3QgPSBzbG90Owog CQl0cmlnZGF0YS50Z190cmlnZ2VyID0gJnRyaWc7CisJCXRyaWdkYXRhLnRnX3RlbXBvcmFsID0g TlVMTDsKIAogCQlmY2luZm8tPmNvbnRleHQgPSAoTm9kZSAqKSAmdHJpZ2RhdGE7CiAKZGlmZiAt LWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RyaWdnZXIuYyBiL3NyYy9iYWNrZW5kL2NvbW1h bmRzL3RyaWdnZXIuYwppbmRleCA1NzlhYzhkNzZhZS4uNDNiOWQ4MmU2M2EgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RyaWdnZXIuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5k cy90cmlnZ2VyLmMKQEAgLTQ3LDEyICs0NywxNCBAQAogI2luY2x1ZGUgInN0b3JhZ2UvbG1nci5o IgogI2luY2x1ZGUgInV0aWxzL2FjbC5oIgogI2luY2x1ZGUgInV0aWxzL2J1aWx0aW5zLmgiCisj aW5jbHVkZSAidXRpbHMvZGF0dW0uaCIKICNpbmNsdWRlICJ1dGlscy9mbWdyb2lkcy5oIgogI2lu Y2x1ZGUgInV0aWxzL2d1Y19ob29rcy5oIgogI2luY2x1ZGUgInV0aWxzL2ludmFsLmgiCiAjaW5j bHVkZSAidXRpbHMvbHN5c2NhY2hlLmgiCiAjaW5jbHVkZSAidXRpbHMvbWVtdXRpbHMuaCIKICNp bmNsdWRlICJ1dGlscy9wbGFuY2FjaGUuaCIKKyNpbmNsdWRlICJ1dGlscy9yYW5nZXR5cGVzLmgi CiAjaW5jbHVkZSAidXRpbHMvcmVsLmgiCiAjaW5jbHVkZSAidXRpbHMvc25hcG1nci5oIgogI2lu Y2x1ZGUgInV0aWxzL3N5c2NhY2hlLmgiCkBAIC0yNjQ5LDYgKzI2NTEsNyBAQCBFeGVjQlNEZWxl dGVUcmlnZ2VycyhFU3RhdGUgKmVzdGF0ZSwgUmVzdWx0UmVsSW5mbyAqcmVsaW5mbykKIAlMb2NU cmlnZ2VyRGF0YS50Z19ldmVudCA9IFRSSUdHRVJfRVZFTlRfREVMRVRFIHwKIAkJVFJJR0dFUl9F VkVOVF9CRUZPUkU7CiAJTG9jVHJpZ2dlckRhdGEudGdfcmVsYXRpb24gPSByZWxpbmZvLT5yaV9S ZWxhdGlvbkRlc2M7CisJTG9jVHJpZ2dlckRhdGEudGdfdGVtcG9yYWwgPSByZWxpbmZvLT5yaV9m b3JQb3J0aW9uT2Y7CiAJZm9yIChpID0gMDsgaSA8IHRyaWdkZXNjLT5udW10cmlnZ2VyczsgaSsr KQogCXsKIAkJVHJpZ2dlciAgICAqdHJpZ2dlciA9ICZ0cmlnZGVzYy0+dHJpZ2dlcnNbaV07CkBA IC0yNzU3LDYgKzI3NjAsNyBAQCBFeGVjQlJEZWxldGVUcmlnZ2VycyhFU3RhdGUgKmVzdGF0ZSwg RVBRU3RhdGUgKmVwcXN0YXRlLAogCQlUUklHR0VSX0VWRU5UX1JPVyB8CiAJCVRSSUdHRVJfRVZF TlRfQkVGT1JFOwogCUxvY1RyaWdnZXJEYXRhLnRnX3JlbGF0aW9uID0gcmVsaW5mby0+cmlfUmVs YXRpb25EZXNjOworCUxvY1RyaWdnZXJEYXRhLnRnX3RlbXBvcmFsID0gcmVsaW5mby0+cmlfZm9y UG9ydGlvbk9mOwogCWZvciAoaSA9IDA7IGkgPCB0cmlnZGVzYy0+bnVtdHJpZ2dlcnM7IGkrKykK IAl7CiAJCUhlYXBUdXBsZQluZXd0dXBsZTsKQEAgLTI4NTgsNiArMjg2Miw3IEBAIEV4ZWNJUkRl bGV0ZVRyaWdnZXJzKEVTdGF0ZSAqZXN0YXRlLCBSZXN1bHRSZWxJbmZvICpyZWxpbmZvLAogCQlU UklHR0VSX0VWRU5UX1JPVyB8CiAJCVRSSUdHRVJfRVZFTlRfSU5TVEVBRDsKIAlMb2NUcmlnZ2Vy RGF0YS50Z19yZWxhdGlvbiA9IHJlbGluZm8tPnJpX1JlbGF0aW9uRGVzYzsKKwlMb2NUcmlnZ2Vy RGF0YS50Z190ZW1wb3JhbCA9IHJlbGluZm8tPnJpX2ZvclBvcnRpb25PZjsKIAogCUV4ZWNGb3Jj ZVN0b3JlSGVhcFR1cGxlKHRyaWd0dXBsZSwgc2xvdCwgZmFsc2UpOwogCkBAIC0yOTIxLDYgKzI5 MjYsNyBAQCBFeGVjQlNVcGRhdGVUcmlnZ2VycyhFU3RhdGUgKmVzdGF0ZSwgUmVzdWx0UmVsSW5m byAqcmVsaW5mbykKIAkJVFJJR0dFUl9FVkVOVF9CRUZPUkU7CiAJTG9jVHJpZ2dlckRhdGEudGdf cmVsYXRpb24gPSByZWxpbmZvLT5yaV9SZWxhdGlvbkRlc2M7CiAJTG9jVHJpZ2dlckRhdGEudGdf dXBkYXRlZGNvbHMgPSB1cGRhdGVkQ29sczsKKwlMb2NUcmlnZ2VyRGF0YS50Z190ZW1wb3JhbCA9 IHJlbGluZm8tPnJpX2ZvclBvcnRpb25PZjsKIAlmb3IgKGkgPSAwOyBpIDwgdHJpZ2Rlc2MtPm51 bXRyaWdnZXJzOyBpKyspCiAJewogCQlUcmlnZ2VyICAgICp0cmlnZ2VyID0gJnRyaWdkZXNjLT50 cmlnZ2Vyc1tpXTsKQEAgLTMwNjQsNiArMzA3MCw3IEBAIEV4ZWNCUlVwZGF0ZVRyaWdnZXJzKEVT dGF0ZSAqZXN0YXRlLCBFUFFTdGF0ZSAqZXBxc3RhdGUsCiAJCVRSSUdHRVJfRVZFTlRfUk9XIHwK IAkJVFJJR0dFUl9FVkVOVF9CRUZPUkU7CiAJTG9jVHJpZ2dlckRhdGEudGdfcmVsYXRpb24gPSBy ZWxpbmZvLT5yaV9SZWxhdGlvbkRlc2M7CisJTG9jVHJpZ2dlckRhdGEudGdfdGVtcG9yYWwgPSBy ZWxpbmZvLT5yaV9mb3JQb3J0aW9uT2Y7CiAJdXBkYXRlZENvbHMgPSBFeGVjR2V0QWxsVXBkYXRl ZENvbHMocmVsaW5mbywgZXN0YXRlKTsKIAlMb2NUcmlnZ2VyRGF0YS50Z191cGRhdGVkY29scyA9 IHVwZGF0ZWRDb2xzOwogCWZvciAoaSA9IDA7IGkgPCB0cmlnZGVzYy0+bnVtdHJpZ2dlcnM7IGkr KykKQEAgLTMyMjYsNiArMzIzMyw3IEBAIEV4ZWNJUlVwZGF0ZVRyaWdnZXJzKEVTdGF0ZSAqZXN0 YXRlLCBSZXN1bHRSZWxJbmZvICpyZWxpbmZvLAogCQlUUklHR0VSX0VWRU5UX1JPVyB8CiAJCVRS SUdHRVJfRVZFTlRfSU5TVEVBRDsKIAlMb2NUcmlnZ2VyRGF0YS50Z19yZWxhdGlvbiA9IHJlbGlu Zm8tPnJpX1JlbGF0aW9uRGVzYzsKKwlMb2NUcmlnZ2VyRGF0YS50Z190ZW1wb3JhbCA9IHJlbGlu Zm8tPnJpX2ZvclBvcnRpb25PZjsKIAogCUV4ZWNGb3JjZVN0b3JlSGVhcFR1cGxlKHRyaWd0dXBs ZSwgb2xkc2xvdCwgZmFsc2UpOwogCkBAIC0zNjk3LDYgKzM3MDUsNyBAQCB0eXBlZGVmIHN0cnVj dCBBZnRlclRyaWdnZXJTaGFyZWREYXRhCiAJT2lkCQkJYXRzX3JlbGlkOwkJLyogdGhlIHJlbGF0 aW9uIGl0J3Mgb24gKi8KIAlPaWQJCQlhdHNfcm9saWQ7CQkvKiByb2xlIHRvIGV4ZWN1dGUgdGhl IHRyaWdnZXIgKi8KIAlDb21tYW5kSWQJYXRzX2ZpcmluZ19pZDsJLyogSUQgZm9yIGZpcmluZyBj eWNsZSAqLworCUZvclBvcnRpb25PZlN0YXRlICpmb3JfcG9ydGlvbl9vZjsJLyogdGhlIEZPUiBQ T1JUSU9OIE9GIGNsYXVzZSAqLwogCXN0cnVjdCBBZnRlclRyaWdnZXJzVGFibGVEYXRhICphdHNf dGFibGU7CS8qIHRyYW5zaXRpb24gdGFibGUgYWNjZXNzICovCiAJQml0bWFwc2V0ICAqYXRzX21v ZGlmaWVkY29sczsJLyogbW9kaWZpZWQgY29sdW1ucyAqLwogfSBBZnRlclRyaWdnZXJTaGFyZWRE YXRhOwpAQCAtMzk3MCw2ICszOTc5LDcgQEAgc3RhdGljIFNldENvbnN0cmFpbnRTdGF0ZSBTZXRD b25zdHJhaW50U3RhdGVDcmVhdGUoaW50IG51bWFsbG9jKTsKIHN0YXRpYyBTZXRDb25zdHJhaW50 U3RhdGUgU2V0Q29uc3RyYWludFN0YXRlQ29weShTZXRDb25zdHJhaW50U3RhdGUgb3JpZ3N0YXRl KTsKIHN0YXRpYyBTZXRDb25zdHJhaW50U3RhdGUgU2V0Q29uc3RyYWludFN0YXRlQWRkSXRlbShT ZXRDb25zdHJhaW50U3RhdGUgc3RhdGUsCiAJCQkJCQkJCQkJCQkJT2lkIHRnb2lkLCBib29sIHRn aXNkZWZlcnJlZCk7CitzdGF0aWMgRm9yUG9ydGlvbk9mU3RhdGUgKkNvcHlGb3JQb3J0aW9uT2ZT dGF0ZShGb3JQb3J0aW9uT2ZTdGF0ZSAqc3JjKTsKIHN0YXRpYyB2b2lkIGNhbmNlbF9wcmlvcl9z dG10X3RyaWdnZXJzKE9pZCByZWxpZCwgQ21kVHlwZSBjbWRUeXBlLCBpbnQgdGdldmVudCk7CiAK IApAQCAtNDE3Nyw2ICs0MTg3LDcgQEAgYWZ0ZXJUcmlnZ2VyQWRkRXZlbnQoQWZ0ZXJUcmlnZ2Vy RXZlbnRMaXN0ICpldmVudHMsCiAJCQluZXdzaGFyZWQtPmF0c19ldmVudCA9PSBldnRzaGFyZWQt PmF0c19ldmVudCAmJgogCQkJbmV3c2hhcmVkLT5hdHNfZmlyaW5nX2lkID09IDAgJiYKIAkJCW5l d3NoYXJlZC0+YXRzX3RhYmxlID09IGV2dHNoYXJlZC0+YXRzX3RhYmxlICYmCisJCQluZXdzaGFy ZWQtPmZvcl9wb3J0aW9uX29mID09IGV2dHNoYXJlZC0+Zm9yX3BvcnRpb25fb2YgJiYKIAkJCW5l d3NoYXJlZC0+YXRzX3JlbGlkID09IGV2dHNoYXJlZC0+YXRzX3JlbGlkICYmCiAJCQluZXdzaGFy ZWQtPmF0c19yb2xpZCA9PSBldnRzaGFyZWQtPmF0c19yb2xpZCAmJgogCQkJYm1zX2VxdWFsKG5l d3NoYXJlZC0+YXRzX21vZGlmaWVkY29scywKQEAgLTQ1NTMsNiArNDU2NCw5IEBAIEFmdGVyVHJp Z2dlckV4ZWN1dGUoRVN0YXRlICplc3RhdGUsCiAJTG9jVHJpZ2dlckRhdGEudGdfcmVsYXRpb24g PSByZWw7CiAJaWYgKFRSSUdHRVJfRk9SX1VQREFURShMb2NUcmlnZ2VyRGF0YS50Z190cmlnZ2Vy LT50Z3R5cGUpKQogCQlMb2NUcmlnZ2VyRGF0YS50Z191cGRhdGVkY29scyA9IGV2dHNoYXJlZC0+ YXRzX21vZGlmaWVkY29sczsKKwlpZiAoVFJJR0dFUl9GT1JfVVBEQVRFKExvY1RyaWdnZXJEYXRh LnRnX3RyaWdnZXItPnRndHlwZSkgfHwKKwkJVFJJR0dFUl9GT1JfREVMRVRFKExvY1RyaWdnZXJE YXRhLnRnX3RyaWdnZXItPnRndHlwZSkpCisJCUxvY1RyaWdnZXJEYXRhLnRnX3RlbXBvcmFsID0g ZXZ0c2hhcmVkLT5mb3JfcG9ydGlvbl9vZjsKIAogCU1lbW9yeUNvbnRleHRSZXNldChwZXJfdHVw bGVfY29udGV4dCk7CiAKQEAgLTYxMDIsNiArNjExNiw0MiBAQCBBZnRlclRyaWdnZXJQZW5kaW5n T25SZWwoT2lkIHJlbGlkKQogCXJldHVybiBmYWxzZTsKIH0KIAorLyogLS0tLS0tLS0tLQorICog Rm9yUG9ydGlvbk9mU3RhdGUoKQorICoKKyAqIENvcHlzIGEgRm9yUG9ydGlvbk9mU3RhdGUgaW50 byB0aGUgY3VycmVudCBtZW1vcnkgY29udGV4dC4KKyAqLworc3RhdGljIEZvclBvcnRpb25PZlN0 YXRlICoKK0NvcHlGb3JQb3J0aW9uT2ZTdGF0ZShGb3JQb3J0aW9uT2ZTdGF0ZSAqc3JjKQorewor CUZvclBvcnRpb25PZlN0YXRlICpkc3QgPSBOVUxMOworCisJaWYgKHNyYykKKwl7CisJCU1lbW9y eUNvbnRleHQgb2xkY3R4OworCQlSYW5nZVR5cGUgICpyOworCQlUeXBlQ2FjaGVFbnRyeSAqdHlw Y2FjaGU7CisKKwkJLyoKKwkJICogTmVlZCB0byBsaWZ0IHRoZSBGT1IgUE9SVElPTiBPRiBkZXRh aWxzIGludG8gYSBoaWdoZXIgbWVtb3J5CisJCSAqIGNvbnRleHQgYmVjYXVzZSBjYXNjYWRpbmcg Zm9yZWlnbiBrZXkgdXBkYXRlL2RlbGV0ZXMgY2FuIGNhdXNlCisJCSAqIHRyaWdnZXJzIHRvIGZp cmUgdHJpZ2dlcnMsIGFuZCB0aGUgQWZ0ZXJUcmlnZ2VyRXZlbnRzIHdpbGwgb3V0bGl2ZQorCQkg KiB0aGUgRlBPIGRldGFpbHMgb2YgdGhlIG9yaWdpbmFsIHF1ZXJ5LgorCQkgKi8KKwkJb2xkY3R4 ID0gTWVtb3J5Q29udGV4dFN3aXRjaFRvKFRvcFRyYW5zYWN0aW9uQ29udGV4dCk7CisJCWRzdCA9 IG1ha2VOb2RlKEZvclBvcnRpb25PZlN0YXRlKTsKKwkJZHN0LT5mcF9yYW5nZU5hbWUgPSBwc3Ry ZHVwKHNyYy0+ZnBfcmFuZ2VOYW1lKTsKKwkJZHN0LT5mcF9yYW5nZVR5cGUgPSBzcmMtPmZwX3Jh bmdlVHlwZTsKKwkJZHN0LT5mcF9yYW5nZUF0dG5vID0gc3JjLT5mcF9yYW5nZUF0dG5vOworCisJ CXIgPSBEYXR1bUdldFJhbmdlVHlwZVAoc3JjLT5mcF90YXJnZXRSYW5nZSk7CisJCXR5cGNhY2hl ID0gbG9va3VwX3R5cGVfY2FjaGUoUmFuZ2VUeXBlR2V0T2lkKHIpLCBUWVBFQ0FDSEVfUkFOR0Vf SU5GTyk7CisJCWRzdC0+ZnBfdGFyZ2V0UmFuZ2UgPSBkYXR1bUNvcHkoc3JjLT5mcF90YXJnZXRS YW5nZSwgdHlwY2FjaGUtPnR5cGJ5dmFsLCB0eXBjYWNoZS0+dHlwbGVuKTsKKwkJTWVtb3J5Q29u dGV4dFN3aXRjaFRvKG9sZGN0eCk7CisJfQorCXJldHVybiBkc3Q7Cit9CisKIC8qIC0tLS0tLS0t LS0KICAqIEFmdGVyVHJpZ2dlclNhdmVFdmVudCgpCiAgKgpAQCAtNjUxOCw2ICs2NTY4LDcgQEAg QWZ0ZXJUcmlnZ2VyU2F2ZUV2ZW50KEVTdGF0ZSAqZXN0YXRlLCBSZXN1bHRSZWxJbmZvICpyZWxp bmZvLAogCQllbHNlCiAJCQluZXdfc2hhcmVkLmF0c190YWJsZSA9IE5VTEw7CiAJCW5ld19zaGFy ZWQuYXRzX21vZGlmaWVkY29scyA9IG1vZGlmaWVkQ29sczsKKwkJbmV3X3NoYXJlZC5mb3JfcG9y dGlvbl9vZiA9IENvcHlGb3JQb3J0aW9uT2ZTdGF0ZShyZWxpbmZvLT5yaV9mb3JQb3J0aW9uT2Yp OwogCiAJCWFmdGVyVHJpZ2dlckFkZEV2ZW50KCZhZnRlclRyaWdnZXJzLnF1ZXJ5X3N0YWNrW2Fm dGVyVHJpZ2dlcnMucXVlcnlfZGVwdGhdLmV2ZW50cywKIAkJCQkJCQkgJm5ld19ldmVudCwgJm5l d19zaGFyZWQpOwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvdHJpZ2dlci5oIGIv c3JjL2luY2x1ZGUvY29tbWFuZHMvdHJpZ2dlci5oCmluZGV4IGNmZDdkYWEyMGVkLi5jNjdlMTMy NDM5MSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvdHJpZ2dlci5oCisrKyBiL3Ny Yy9pbmNsdWRlL2NvbW1hbmRzL3RyaWdnZXIuaApAQCAtNDEsNiArNDEsNyBAQCB0eXBlZGVmIHN0 cnVjdCBUcmlnZ2VyRGF0YQogCVR1cGxlc3RvcmVzdGF0ZSAqdGdfb2xkdGFibGU7CiAJVHVwbGVz dG9yZXN0YXRlICp0Z19uZXd0YWJsZTsKIAljb25zdCBCaXRtYXBzZXQgKnRnX3VwZGF0ZWRjb2xz OworCUZvclBvcnRpb25PZlN0YXRlICp0Z190ZW1wb3JhbDsKIH0gVHJpZ2dlckRhdGE7CiAKIC8q Ci0tIAoyLjM5LjUKCg== --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0002-Document-temporal-foreign-keys.patch" Content-Disposition: attachment; filename="v59-0002-Document-temporal-foreign-keys.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk461 RnJvbSA2ZjFiZjU2ZDlhNzFiYjNhNTE5NzlkNzlhM2NmMzMzODQ2MmY3MTdkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMTcgSnVuIDIwMjUgMjM6MjM6MjggLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwMi8xMV0gRG9jdW1lbnQgdGVtcG9yYWwgZm9yZWlnbiBrZXlzCgpBdXRo b3I6IFBhdWwgQS4gSnVuZ3dpcnRoIDxwakBpbGx1bWluYXRlZGNvbXB1dGluZy5jb20+Ci0tLQog ZG9jL3NyYy9zZ21sL2RkbC5zZ21sICAgICAgICAgICAgICAgICAgICAgICB8IDk4ICsrKysrKysr KysrKysrKysrKysrKwogZG9jL3NyYy9zZ21sL2ltYWdlcy9NYWtlZmlsZSAgICAgICAgICAgICAg ICB8ICAzICstCiBkb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLXJlZmVyZW5jZXMuc3ZnIHwg MzcgKysrKysrKysKIGRvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtcmVmZXJlbmNlcy50eHQg fCAyMSArKysrKwogNCBmaWxlcyBjaGFuZ2VkLCAxNTggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtcmVm ZXJlbmNlcy5zdmcKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBv cmFsLXJlZmVyZW5jZXMudHh0CgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2RkbC5zZ21sIGIv ZG9jL3NyYy9zZ21sL2RkbC5zZ21sCmluZGV4IDc0YjU1MDA1ZmZlLi41M2Q4NDliZjM0YyAxMDA2 NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2RkbC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9kZGwuc2dt bApAQCAtMTc1OCw2ICsxNzU4LDEwMyBAQCBBTFRFUiBUQUJMRSBwcm9kdWN0cwogICAgICB0aGF0 IHRoZXkgYWxzbyBmb3JiaWQgYW4gZW1wdHkgYXBwbGljYXRpb24gdGltZS4KICAgICA8L3BhcmE+ CiAgICA8L3NlY3QzPgorCisgICA8c2VjdDMgaWQ9ImRkbC1hcHBsaWNhdGlvbi10aW1lLWZvcmVp Z24ta2V5cyI+CisgICAgPHRpdGxlPlRlbXBvcmFsIEZvcmVpZ24gS2V5czwvdGl0bGU+CisKKyAg ICA8cGFyYT4KKyAgICAgQSB0ZW1wb3JhbCBmb3JlaWduIGtleSBpcyBhIHJlZmVyZW5jZSBmcm9t IG9uZSBhcHBsaWNhdGlvbi10aW1lCisgICAgIHRhYmxlIHRvIGFub3RoZXIgYXBwbGljYXRpb24t dGltZSB0YWJsZS4gSnVzdCBhcyBhIG5vbi10ZW1wb3JhbAorICAgICByZWZlcmVuY2UgcmVxdWly ZXMgYSByZWZlcmVuY2VkIGtleSB0byBleGlzdCwgc28gYSB0ZW1wb3JhbCByZWZlcmVuY2UKKyAg ICAgcmVxdWlyZXMgYSByZWZlcmVuY2VkIGtleSB0byBleGlzdCwgYnV0IGR1cmluZyB3aGF0ZXZl ciBoaXN0b3J5IHRoZQorICAgICByZWZlcmVuY2UgZXhpc3RzIChhdCBsZWFzdCkuIFNvIGlmIHRo ZSA8bGl0ZXJhbD5wcm9kdWN0czwvbGl0ZXJhbD4gdGFibGUgaXMKKyAgICAgcmVmZXJlbmNlZCBi eSBhIDxsaXRlcmFsPnZhcmlhbnRzPC9saXRlcmFsPiB0YWJsZSwgYW5kIGEgdmFyaWFudCBvZgor ICAgICBwcm9kdWN0IDUgaGFzIGFuIGFwcGxpY2F0aW9uLXRpbWUgb2YKKyAgICAgPGxpdGVyYWw+ WzIwMjAtMDEtMDEsMjAyNi0wMS0wMSk8L2xpdGVyYWw+LCB0aGVuIHByb2R1Y3QgNSBtdXN0IGV4 aXN0CisgICAgIHRocm91Z2hvdXQgdGhhdCBwZXJpb2QuCisgICAgPC9wYXJhPgorCisgICAgPHBh cmE+CisgICAgIFdlIGNhbiBjcmVhdGUgdGhlIDxsaXRlcmFsPnZhcmlhbnRzPC9saXRlcmFsPiB0 YWJsZSB3aXRoIHRoZSBmb2xsb3dpbmcKKyAgICAgc2NoZW1hICh3aXRob3V0IGEgZm9yZWlnbiBr ZXkgeWV0IHRvIGVuZm9yY2UgcmVmZXJlbnRpYWwgaW50ZWdyaXR5KToKKworPHByb2dyYW1saXN0 aW5nPgorQ1JFQVRFIFRBQkxFIHZhcmlhbnRzICgKKyAgaWQgICAgICAgICBpbnRlZ2VyICAgTk9U IE5VTEwsCisgIHByb2R1Y3RfaWQgaW50ZWdlciAgIE5PVCBOVUxMLAorICBuYW1lICAgICAgIHRl eHQgICAgICBOT1QgTlVMTCwKKyAgdmFsaWRfYXQgICBkYXRlcmFuZ2UgTk9UIE5VTEwsCisgIENP TlNUUkFJTlQgdmFyaWFudHNfcGtleQorICAgIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUyksCispOworPC9wcm9ncmFtbGlzdGluZz4KKworICAgICBXZSBoYXZlIGlu Y2x1ZGVkIGEgdGVtcG9yYWwgcHJpbWFyeSBrZXkgYXMgYSBiZXN0IHByYWN0aWNlLCBidXQgaXQg aXMgbm90CisgICAgIHN0cmljdGx5IHJlcXVpcmVkIGJ5IGZvcmVpZ24ga2V5cy4KKyAgICA8L3Bh cmE+CisKKyAgICA8cGFyYT4KKyAgICAgPHhyZWYgbGlua2VuZD0idGVtcG9yYWwtcmVmZXJlbmNl cy1maWd1cmUiLz4gcGxvdHMgcHJvZHVjdCA1IChpbgorICAgICBncmVlbikgYW5kIHR3byB2YXJp YW50cyByZWZlcmVuY2luZyBpdCAoaW4geWVsbG93KSBvbiB0aGUgc2FtZQorICAgICB0aW1lbGlu ZS4gVmFyaWFudCA4IChNZWRpdW0pIHdhcyBpbnRyb2R1Y2VkIGZpcnN0LCB0aGVuIHZhcmlhbnQg OSAoWFhMKS4KKyAgICAgQm90aCBzYXRpc2Z5IHRoZSBmb3JlaWduIGtleSBjb25zdHJhaW50LCBi ZWNhdXNlIHRoZSByZWZlcmVuY2VkIHByb2R1Y3QKKyAgICAgZXhpc3RzIHRocm91Z2hvdXQgdGhl aXIgZW50aXJlIGhpc3RvcnkuCisgICAgPC9wYXJhPgorCisgICAgPGZpZ3VyZSBpZD0idGVtcG9y YWwtcmVmZXJlbmNlcy1maWd1cmUiPgorICAgICA8dGl0bGU+VGVtcG9yYWwgRm9yZWlnbiBLZXkg RXhhbXBsZTwvdGl0bGU+CisgICAgIDxtZWRpYW9iamVjdD4KKyAgICAgIDxpbWFnZW9iamVjdD4K KyAgICAgICA8aW1hZ2VkYXRhIGZpbGVyZWY9ImltYWdlcy90ZW1wb3JhbC1yZWZlcmVuY2VzLnN2 ZyIgZm9ybWF0PSJTVkciIHdpZHRoPSIxMDAlIi8+CisgICAgICA8L2ltYWdlb2JqZWN0PgorICAg ICA8L21lZGlhb2JqZWN0PgorICAgIDwvZmlndXJlPgorCisgICAgPHBhcmE+CisKKyAgICAgSW4g YSB0YWJsZSwgdGhlc2UgcmVjb3JkcyB3b3VsZCBiZToKKzxwcm9ncmFtbGlzdGluZz4KKyBpZCB8 IHByb2R1Y3RfaWQgfCAgbmFtZSAgfCAgICAgICAgdmFsaWRfYXQKKy0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgOCB8ICAgICAgICAgIDUgfCBN ZWRpdW0gfCBbMjAyMS0wMS0wMSwyMDIzLTA2LTAxKQorICA5IHwgICAgICAgICAgNSB8IFhYTCAg ICB8IFsyMDIyLTAzLTAxLDIwMjQtMDYtMDEpCis8L3Byb2dyYW1saXN0aW5nPgorICAgIDwvcGFy YT4KKworICAgIDxwYXJhPgorICAgICBOb3RlIHRoYXQgYSB0ZW1wb3JhbCByZWZlcmVuY2UgbmVl ZCBub3QgYmUgZnVsZmlsbGVkIGJ5IGEgc2luZ2xlCisgICAgIHJvdyBpbiB0aGUgcmVmZXJlbmNl ZCB0YWJsZS4gUHJvZHVjdCA1IGhhZCBhIHByaWNlIGNoYW5nZSBpbiB0aGUgbWlkZGxlCisgICAg IG9mIHZhcmlhbnQgOCdzIGhpc3RvcnksIGJ1dCB0aGUgcmVmZXJlbmNlIGlzIHN0aWxsIHZhbGlk LiBUaGUKKyAgICAgY29tYmluYXRpb24gb2YgYWxsIG1hdGNoaW5nIHJvd3MgaXMgdXNlZCB0byB0 ZXN0IHdoZXRoZXIgdGhlIHJlZmVyZW5jZWQKKyAgICAgaGlzdG9yeSBjb250YWlucyB0aGUgcmVm ZXJlbmNpbmcgcm93LgorICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAgICBUaGUgc3ludGF4 IHRvIGFkZCBhIHRlbXBvcmFsIGZvcmVpZ24ga2V5IHRvIG91ciB0YWJsZSBpczoKKworPHByb2dy YW1saXN0aW5nPgorQUxURVIgVEFCTEUgdmFyaWFudHMKKyAgQUREIENPTlNUUkFJTlQgdmFyaWFu dHNfaWRfdmFsaWRfYXRfZmtleQorICAgIEZPUkVJR04gS0VZIChwcm9kdWN0X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyBwcm9kdWN0cyAoaWQsIFBFUklPRCB2YWxpZF9hdCk7 Cis8L3Byb2dyYW1saXN0aW5nPgorCisgICAgIE5vdGUgdGhhdCB0aGUga2V5d29yZCA8bGl0ZXJh bD5QRVJJT0Q8L2xpdGVyYWw+IG11c3QgYmUgdXNlZCBmb3IgdGhlCisgICAgIGFwcGxpY2F0aW9u LXRpbWUgY29sdW1uIGluIGJvdGggdGhlIHJlZmVyZW5jaW5nIGFuZCByZWZlcmVuY2VkIHRhYmxl LgorICAgIDwvcGFyYT4KKworICAgIDxwYXJhPgorICAgICBBIHRlbXBvcmFsIHByaW1hcnkga2V5 IG9yIHVuaXF1ZSBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSByZWZlcmVuY2VkIGNvbHVtbnMKKyAg ICAgbXVzdCBleGlzdCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZS4KKyAgICA8L3BhcmE+CisKKyAg ICA8cGFyYT4KKyAgICAgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBzdXBw b3J0cyA8bGl0ZXJhbD5OTyBBQ1RJT048L2xpdGVyYWw+CisgICAgIHRlbXBvcmFsIGZvcmVpZ24g a2V5cywgYnV0IG5vdCA8bGl0ZXJhbD5SRVNUUklDVDwvbGl0ZXJhbD4sCisgICAgIDxsaXRlcmFs PkNBU0NBREU8L2xpdGVyYWw+LCA8bGl0ZXJhbD5TRVQgTlVMTDwvbGl0ZXJhbD4sIG9yCisgICAg IDxsaXRlcmFsPlNFVCBERUZBVUxUPC9saXRlcmFsPi4KKyAgICA8L3BhcmE+CisgICA8L3NlY3Qz PgogICA8L3NlY3QyPgogCiAgIDxzZWN0MiBpZD0iZGRsLXN5c3RlbS10aW1lIj4KQEAgLTE3ODEs NiArMTg3OCw3IEBAIEFMVEVSIFRBQkxFIHByb2R1Y3RzCiAgICAgVGVtcG9yYWwgd2lraSBwYWdl PC91bGluaz4gZm9yIHBvc3NpYmlsaXRpZXMuCiAgICA8L3BhcmE+CiAgIDwvc2VjdDI+CisKICA8 L3NlY3QxPgogCiAgPHNlY3QxIGlkPSJkZGwtYWx0ZXIiPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9z Z21sL2ltYWdlcy9NYWtlZmlsZSBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvTWFrZWZpbGUKaW5kZXgg MWQ5OWQ0ZTMwYzguLmZkNTViOWFkMjNmIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvaW1hZ2Vz L01ha2VmaWxlCisrKyBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvTWFrZWZpbGUKQEAgLTYsNyArNiw4 IEBAIEFMTF9JTUFHRVMgPSBcCiAJZ2VuZXRpYy1hbGdvcml0aG0uc3ZnIFwKIAlnaW4uc3ZnIFwK IAlwYWdlbGF5b3V0LnN2ZyBcCi0JdGVtcG9yYWwtZW50aXRpZXMuc3ZnCisJdGVtcG9yYWwtZW50 aXRpZXMuc3ZnIFwKKwl0ZW1wb3JhbC1yZWZlcmVuY2VzLnN2ZwogCiBESVRBQSA9IGRpdGFhCiBE T1QgPSBkb3QKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtcmVmZXJl bmNlcy5zdmcgYi9kb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBvcmFsLXJlZmVyZW5jZXMuc3ZnCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xNWY0MDQxM2E2NAotLS0gL2Rl di9udWxsCisrKyBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtcmVmZXJlbmNlcy5zdmcK QEAgLTAsMCArMSwzNyBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8c3ZnIHhtbG5zPSJodHRw Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwMjAgMzUwIiB3aWR0aD0iMTAy MCIgaGVpZ2h0PSIzNTAiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIiB2ZXJz aW9uPSIxLjAiPgorICA8ZGVmcz4KKyAgICA8ZmlsdGVyIGlkPSJmMiIgeD0iMCIgeT0iMCIgd2lk dGg9IjIwMCUiIGhlaWdodD0iMjAwJSI+CisgICAgICA8ZmVPZmZzZXQgcmVzdWx0PSJvZmZPdXQi IGluPSJTb3VyY2VHcmFwaGljIiBkeD0iNSIgZHk9IjUiLz4KKyAgICAgIDxmZUdhdXNzaWFuQmx1 ciByZXN1bHQ9ImJsdXJPdXQiIGluPSJvZmZPdXQiIHN0ZERldmlhdGlvbj0iMyIvPgorICAgICAg PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iYmx1ck91dCIgbW9kZT0ibm9ybWFsIi8+ CisgICAgPC9maWx0ZXI+CisgIDwvZGVmcz4KKyAgPGcgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2Ut bGluZWNhcD0ic3F1YXJlIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KKyAgICA8cmVjdCB4PSIw IiB5PSIwIiB3aWR0aD0iMTAyMCIgaGVpZ2h0PSIzNTAiIHN0eWxlPSJmaWxsOiAjZmZmZmZmIi8+ CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJv a2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9IiM5OWRkOTki IGQ9Ik0zOTUuMCA2My4wIEw5NDUuMCA2My4wIEw5NDUuMCAxMzMuMCBMMzk1LjAgMTMzLjAgeiIv PgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ry b2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIjZmZmZjMz IiBkPSJNMjE1LjAgMTMzLjAgTDIxNS4wIDIwMy4wIEw2ODUuMCAyMDMuMCBMNjg1LjAgMTMzLjAg eiIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIg c3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIjZmZm ZjMzIiBkPSJNODc1LjAgMjAzLjAgTDg3NS4wIDI3My4wIEw0NTUuMCAyNzMuMCBMNDU1LjAgMjAz LjAgeiIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAw MCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIj OTlkZDk5IiBkPSJNMzk1LjAgNjMuMCBMMzk1LjAgMTMzLjAgTDI1LjAgMTMzLjAgTDI1LjAgNjMu MCB6Ii8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAw IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5v bmUiIGQ9Ik0yMTUuMCAyOTQuMCBMMjE1LjAgMzA3LjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIj MDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0 cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIGQ9Ik0yNS4wIDI5NC4wIEwyNS4wIDMw Ny4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAw MCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJu b25lIiBkPSJNNDA1LjAgMjk0LjAgTDQwNS4wIDMwNy4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0i IzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBz dHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNNTk1LjAgMjk0LjAgTDU5NS4w IDMwNy4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAw MDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxs PSJub25lIiBkPSJNNzg1LjAgMjk0LjAgTDc4NS4wIDMwNy4wICIvPgorICAgIDxwYXRoIHN0cm9r ZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5k IiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNOTc1LjAgMjk0LjAgTDk3 NS4wIDMwNy4wICIvPgorICAgIDx0ZXh0IHg9IjQwIiB5PSI5NiIgZm9udC1mYW1pbHk9IkNvdXJp ZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+cHJvZHVjdHM8 L3RleHQ+CisgICAgPHRleHQgeD0iNDAiIHk9IjExMCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZv bnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+KDUsIDUuMDAsIFsxIEph biAyMDIwLDEgSmFuIDIwMjIpKTwvdGV4dD4KKyAgICA8dGV4dCB4PSIyMTAiIHk9IjMyMCIgZm9u dC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAw MDAwMCI+MjAyMTwvdGV4dD4KKyAgICA8dGV4dCB4PSIyMzAiIHk9IjE2NiIgZm9udC1mYW1pbHk9 IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+dmFy aWFudHM8L3RleHQ+CisgICAgPHRleHQgeD0iMjMwIiB5PSIxODAiIGZvbnQtZmFtaWx5PSJDb3Vy aWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPig4LCA1LCAn TWVkaXVtJywgWzEgSmFuIDIwMjEsMSBKdW4gMjAyMykpPC90ZXh0PgorICAgIDx0ZXh0IHg9IjIw IiB5PSIzMjAiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5v bmUiIGZpbGw9IiMwMDAwMDAiPjIwMjA8L3RleHQ+CisgICAgPHRleHQgeD0iNDcwIiB5PSIyMzYi IGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9 IiMwMDAwMDAiPnZhcmlhbnRzPC90ZXh0PgorICAgIDx0ZXh0IHg9IjQ3MCIgeT0iMjUwIiBmb250 LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAw MDAwIj4oOSwgNSwgJ1hYTCcsIFsxIE1hciAyMDIyLDEgSnVuIDIwMjQpKTwvdGV4dD4KKyAgICA8 dGV4dCB4PSI0MTAiIHk9Ijk2IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIg c3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj5wcm9kdWN0czwvdGV4dD4KKyAgICA8dGV4dCB4 PSI0MTAiIHk9IjExMCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9r ZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+KDUsIDguMDAsIFsxIEphbiAyMDIyLCkpPC90ZXh0Pgor ICAgIDx0ZXh0IHg9IjU5MCIgeT0iMzIwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXpl PSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIzPC90ZXh0PgorICAgIDx0ZXh0 IHg9IjQwMCIgeT0iMzIwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ry b2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDIyPC90ZXh0PgorICAgIDx0ZXh0IHg9Ijc4MCIg eT0iMzIwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25l IiBmaWxsPSIjMDAwMDAwIj4yMDI0PC90ZXh0PgorICAgIDx0ZXh0IHg9Ijk3OSIgeT0iMzIwIiBm b250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIj MDAwMDAwIj4uLi48L3RleHQ+CisgIDwvZz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9z Z21sL2ltYWdlcy90ZW1wb3JhbC1yZWZlcmVuY2VzLnR4dCBiL2RvYy9zcmMvc2dtbC9pbWFnZXMv dGVtcG9yYWwtcmVmZXJlbmNlcy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAuLmY0OTA0MGU4ODQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZG9jL3NyYy9zZ21sL2ltYWdl cy90ZW1wb3JhbC1yZWZlcmVuY2VzLnR4dApAQCAtMCwwICsxLDIxIEBACisKKworKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IGNHUkUgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCBjR1JFICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwKK3wgcHJvZHVjdHMgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHByb2R1Y3Rz ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAoNSwgNS4w MCwgWzEgSmFuIDIwMjAsMSBKYW4gMjAyMikpIHwgKDUsIDguMDAsIFsxIEphbiAyMDIyLCkpICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAg ICAgICAgICAgIHwgY1lFTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fAorICAgICAgICAgICAgICAgICAgIHwgdmFyaWFudHMgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgIHwgKDgsIDUsICdNZWRpdW0nLCBbMSBK YW4gMjAyMSwxIEp1biAyMDIzKSkgICAgfAorICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAg ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IGNZRUwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB2YXJpYW50cyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgKDksIDUsICdYWEwnLCBbMSBNYXIgMjAyMiwxIEp1biAyMDI0KSkgIHwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCit8 ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwKKzIwMjAgICAgICAgICAgICAg ICAyMDIxICAgICAgICAgICAgICAgMjAyMiAgICAgICAgICAgICAgIDIwMjMgICAgICAgICAgICAg ICAyMDI0ICAgICAgICAgICAgICAgLi4uCi0tIAoyLjM5LjUKCg== --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0008-Look-up-more-temporal-foreign-key-helper-procs.patch" Content-Disposition: attachment; filename="v59-0008-Look-up-more-temporal-foreign-key-helper-procs.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4i7 RnJvbSBhNzlmNTJmMjllMjE0OTEyYzExMWZkY2UzMTEzNDQ5ZGVkZjA1MjQ3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMTMgSnVuIDIwMjUgMTY6MTE6NDcgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwOC8xMV0gTG9vayB1cCBtb3JlIHRlbXBvcmFsIGZvcmVpZ24ga2V5IGhl bHBlciBwcm9jcwoKVG8gaW1wbGVtZW50IENBU0NBREUvU0VUIE5VTEwvU0VUIERFRkFVTFQgb24g dGVtcG9yYWwgZm9yZWlnbiBrZXlzLCB3ZQpuZWVkIGFuIGludGVyc2VjdCBmdW5jdGlvbiBhbmQg YSBtaW51cyBzZXQtcmV0dXJuaW5nIGZ1bmN0aW9uLiBXZSBjYW4KbG9vayB0aGVtIHVwIHdoZW4g d2UgbG9vayB1cCB0aGUgb3BlcmF0b3JzIGFscmVhZHkgbmVlZGVkIGZvciB0ZW1wb3JhbApmb3Jl aWduIGtleXMgKGluY2x1ZGluZyBOTyBBQ1RJT04gY29uc3RyYWludHMpLgoKQXV0aG9yOiBQYXVs IEEuIEp1bmd3aXJ0aCA8cGpAaWxsdW1pbmF0ZWRjb21wdXRpbmcuY29tPgotLS0KIHNyYy9iYWNr ZW5kL2NhdGFsb2cvcGdfY29uc3RyYWludC5jIHwgMzYgKysrKysrKysrKysrKysrKysrKysrKysr Ky0tLS0KIHNyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jICAgIHwgIDYgKysrLS0KIHNy Yy9iYWNrZW5kL3BhcnNlci9hbmFseXplLmMgICAgICAgIHwgIDIgKy0KIHNyYy9iYWNrZW5kL3V0 aWxzL2FkdC9yaV90cmlnZ2Vycy5jIHwgMTIgKysrKysrLS0tLQogc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19jb25zdHJhaW50LmggfCAxMCArKysrLS0tLQogNSBmaWxlcyBjaGFuZ2VkLCA1MCBpbnNl cnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRh bG9nL3BnX2NvbnN0cmFpbnQuYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfY29uc3RyYWludC5j CmluZGV4IDk5NDRlNGJkMmQxLi43NzE1MjI1MmVhMSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv Y2F0YWxvZy9wZ19jb25zdHJhaW50LmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19jb25z dHJhaW50LmMKQEAgLTE2MzUsNyArMTYzNSw3IEBAIERlY29uc3RydWN0RmtDb25zdHJhaW50Um93 KEhlYXBUdXBsZSB0dXBsZSwgaW50ICpudW1ma3MsCiB9CiAKIC8qCi0gKiBGaW5kRktQZXJpb2RP cGVycyAtCisgKiBGaW5kRktQZXJpb2RPcGVyc0FuZFByb2NzIC0KICAqCiAgKiBMb29rcyB1cCB0 aGUgb3BlcmF0b3Igb2lkcyB1c2VkIGZvciB0aGUgUEVSSU9EIHBhcnQgb2YgYSB0ZW1wb3JhbCBm b3JlaWduIGtleS4KICAqIFRoZSBvcGNsYXNzIHNob3VsZCBiZSB0aGUgb3BjbGFzcyBvZiB0aGF0 IFBFUklPRCBlbGVtZW50LgpAQCAtMTY0NiwxMiArMTY0NiwxOSBAQCBEZWNvbnN0cnVjdEZrQ29u c3RyYWludFJvdyhIZWFwVHVwbGUgdHVwbGUsIGludCAqbnVtZmtzLAogICogVGhhdCB3YXkgZm9y ZWlnbiBrZXlzIGNhbiBjb21wYXJlIGZrYXR0ciA8QCByYW5nZV9hZ2cocGthdHRyKS4KICAqIGlu dGVyc2VjdG9wZXJvaWQgaXMgdXNlZCBieSBOTyBBQ1RJT04gY29uc3RyYWludHMgdG8gdHJpbSB0 aGUgcmFuZ2UgYmVpbmcgY29uc2lkZXJlZAogICogdG8ganVzdCB3aGF0IHdhcyB1cGRhdGVkL2Rl bGV0ZWQuCisgKiBpbnRlcnNlY3Rwcm9jb2lkIGlzIHVzZWQgdG8gbGltaXQgdGhlIGVmZmVjdCBv ZiBDQVNDQURFL1NFVCBOVUxML1NFVCBERUZBVUxUCisgKiB3aGVuIHRoZSBQSyByZWNvcmQgaXMg Y2hhbmdlZCB3aXRoIEZPUiBQT1JUSU9OIE9GLgorICogd2l0aG91dHBvcnRpb25vaWQgaXMgYSBz ZXQtcmV0dXJuaW5nIGZ1bmN0aW9uIGNvbXB1dGluZworICogdGhlIGRpZmZlcmVuY2UgYmV0d2Vl biBvbmUgcmFuZ2UgYW5kIGFub3RoZXIsCisgKiByZXR1cm5pbmcgZWFjaCByZXN1bHQgcmFuZ2Ug aW4gYSBzZXBhcmF0ZSByb3cuCiAgKi8KIHZvaWQKLUZpbmRGS1BlcmlvZE9wZXJzKE9pZCBvcGNs YXNzLAotCQkJCSAgT2lkICpjb250YWluZWRieW9wZXJvaWQsCi0JCQkJICBPaWQgKmFnZ2VkY29u dGFpbmVkYnlvcGVyb2lkLAotCQkJCSAgT2lkICppbnRlcnNlY3RvcGVyb2lkKQorRmluZEZLUGVy aW9kT3BlcnNBbmRQcm9jcyhPaWQgb3BjbGFzcywKKwkJCQkJCSAgT2lkICpjb250YWluZWRieW9w ZXJvaWQsCisJCQkJCQkgIE9pZCAqYWdnZWRjb250YWluZWRieW9wZXJvaWQsCisJCQkJCQkgIE9p ZCAqaW50ZXJzZWN0b3Blcm9pZCwKKwkJCQkJCSAgT2lkICppbnRlcnNlY3Rwcm9jb2lkLAorCQkJ CQkJICBPaWQgKndpdGhvdXRwb3J0aW9ub2lkKQogewogCU9pZAkJCW9wZmFtaWx5ID0gSW52YWxp ZE9pZDsKIAlPaWQJCQlvcGNpbnR5cGUgPSBJbnZhbGlkT2lkOwpAQCAtMTY5Myw2ICsxNzAwLDE3 IEBAIEZpbmRGS1BlcmlvZE9wZXJzKE9pZCBvcGNsYXNzLAogCQkJCQkJCSAgIGFnZ2VkY29udGFp bmVkYnlvcGVyb2lkLAogCQkJCQkJCSAgICZzdHJhdCk7CiAKKwkvKgorCSAqIEhhcmRjb2RlIGlu dGVyc2VjdCBvcGVyYXRvcnMgZm9yIHJhbmdlcyBhbmQgbXVsdGlyYW5nZXMsIGJlY2F1c2Ugd2UK KwkgKiBkb24ndCBoYXZlIGEgYmV0dGVyIHdheSB0byBsb29rIHVwIG9wZXJhdG9ycyB0aGF0IGFy ZW4ndCB1c2VkIGluCisJICogaW5kZXhlcy4KKwkgKgorCSAqIElmIHlvdSBjaGFuZ2UgdGhpcyBj b2RlLCB5b3UgbXVzdCBjaGFuZ2UgdGhlIGNvZGUgaW4KKwkgKiB0cmFuc2Zvcm1Gb3JQb3J0aW9u T2ZDbGF1c2UuCisJICoKKwkgKiBYWFg6IEZpbmQgYSBtb3JlIGV4dGVuc2libGUgd2F5IHRvIGxv b2sgdXAgdGhlIG9wZXJhdG9yLCBwZXJtaXR0aW5nCisJICogdXNlci1kZWZpbmVkIHR5cGVzLgor CSAqLwogCXN3aXRjaCAob3BjaW50eXBlKQogCXsKIAkJY2FzZSBBTllSQU5HRU9JRDoKQEAgLTE3 MDQsNiArMTcyMiwxNCBAQCBGaW5kRktQZXJpb2RPcGVycyhPaWQgb3BjbGFzcywKIAkJZGVmYXVs dDoKIAkJCWVsb2coRVJST1IsICJ1bmV4cGVjdGVkIG9wY2ludHlwZTogJXUiLCBvcGNpbnR5cGUp OwogCX0KKworCS8qCisJICogTG9vayB1cCB0aGUgaW50ZXJzZWN0IHByb2MuIFdlIHVzZSB0aGlz IGZvciBGT1IgUE9SVElPTiBPRiAoYm90aCB0aGUKKwkgKiBvcGVyYXRpb24gaXRzZWxmIGFuZCB3 aGVuIGNoZWNraW5nIGZvcmVpZ24ga2V5cykuIElmIHRoaXMgaXMgbWlzc2luZyB3ZQorCSAqIGRv bid0IG5lZWQgdG8gY29tcGxhaW4gaGVyZSwgYmVjYXVzZSBGT1IgUE9SVElPTiBPRiB3aWxsIG5v dCBiZQorCSAqIGFsbG93ZWQuCisJICovCisJKmludGVyc2VjdHByb2NvaWQgPSBnZXRfb3Bjb2Rl KCppbnRlcnNlY3RvcGVyb2lkKTsKIH0KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2Nv bW1hbmRzL3RhYmxlY21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKaW5k ZXggZjlmNDk5NmQxYzMuLmI0MDFlNzI4YTkxIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21t YW5kcy90YWJsZWNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYwpA QCAtMTA1NjQsOSArMTA1NjQsMTEgQEAgQVRBZGRGb3JlaWduS2V5Q29uc3RyYWludChMaXN0ICoq d3F1ZXVlLCBBbHRlcmVkVGFibGVJbmZvICp0YWIsIFJlbGF0aW9uIHJlbCwKIAkJT2lkCQkJcGVy aW9kb3Blcm9pZDsKIAkJT2lkCQkJYWdnZWRwZXJpb2RvcGVyb2lkOwogCQlPaWQJCQlpbnRlcnNl Y3RvcGVyb2lkOworCQlPaWQJCQlpbnRlcnNlY3Rwcm9jb2lkOworCQlPaWQJCQl3aXRob3V0b3Zl cmxhcHNvaWQ7CiAKLQkJRmluZEZLUGVyaW9kT3BlcnMob3BjbGFzc2VzW251bXBrcyAtIDFdLCAm cGVyaW9kb3Blcm9pZCwgJmFnZ2VkcGVyaW9kb3Blcm9pZCwKLQkJCQkJCSAgJmludGVyc2VjdG9w ZXJvaWQpOworCQlGaW5kRktQZXJpb2RPcGVyc0FuZFByb2NzKG9wY2xhc3Nlc1tudW1wa3MgLSAx XSwgJnBlcmlvZG9wZXJvaWQsICZhZ2dlZHBlcmlvZG9wZXJvaWQsCisJCQkJCQkJCSAgJmludGVy c2VjdG9wZXJvaWQsICZpbnRlcnNlY3Rwcm9jb2lkLCAmd2l0aG91dG92ZXJsYXBzb2lkKTsKIAl9 CiAKIAkvKiBGaXJzdCwgY3JlYXRlIHRoZSBjb25zdHJhaW50IGNhdGFsb2cgZW50cnkgaXRzZWxm LiAqLwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFyc2VyL2FuYWx5emUuYyBiL3NyYy9iYWNr ZW5kL3BhcnNlci9hbmFseXplLmMKaW5kZXggNWNmNzMyNzhlMTYuLmE1NDJjODFiNDVmIDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6ZS5jCisrKyBiL3NyYy9iYWNrZW5kL3Bh cnNlci9hbmFseXplLmMKQEAgLTE0NDUsNyArMTQ0NSw3IEBAIHRyYW5zZm9ybUZvclBvcnRpb25P ZkNsYXVzZShQYXJzZVN0YXRlICpwc3RhdGUsCiAJCS8qCiAJCSAqIFdoYXRldmVyIG9wZXJhdG9y IGlzIHVzZWQgZm9yIGludGVyc2VjdCBieSB0ZW1wb3JhbCBmb3JlaWduIGtleXMsCiAJCSAqIHdl IGNhbiB1c2UgaXRzIGJhY2tpbmcgcHJvY2VkdXJlIGZvciBpbnRlcnNlY3RzIGluIEZPUiBQT1JU SU9OIE9GLgotCQkgKiBYWFg6IFNoYXJlIGNvZGUgd2l0aCBGaW5kRktQZXJpb2RPcGVycz8KKwkJ ICogWFhYOiBTaGFyZSBjb2RlIHdpdGggRmluZEZLUGVyaW9kT3BlcnNBbmRQcm9jcz8KIAkJICov CiAJCXN3aXRjaCAob3BjaW50eXBlKQogCQl7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGls cy9hZHQvcmlfdHJpZ2dlcnMuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5j CmluZGV4IGQ2YjFlYjU3YTQ4Li5mYzhkNTllMGY0NyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv dXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3JpX3Ry aWdnZXJzLmMKQEAgLTEyOSw2ICsxMjksOCBAQCB0eXBlZGVmIHN0cnVjdCBSSV9Db25zdHJhaW50 SW5mbwogCU9pZAkJCXBlcmlvZF9jb250YWluZWRfYnlfb3BlcjsJLyogYW55cmFuZ2UgPEAgYW55 cmFuZ2UgKi8KIAlPaWQJCQlhZ2dlZF9wZXJpb2RfY29udGFpbmVkX2J5X29wZXI7IC8qIGZrYXR0 ciA8QCByYW5nZV9hZ2cocGthdHRyKSAqLwogCU9pZAkJCXBlcmlvZF9pbnRlcnNlY3Rfb3BlcjsJ LyogYW55cmFuZ2UgKiBhbnlyYW5nZSAob3IgbXVsdGlyYW5nZSkgKi8KKwlPaWQJCQlwZXJpb2Rf aW50ZXJzZWN0X3Byb2M7CS8qIGFueXJhbmdlICogYW55cmFuZ2UgKG9yIG11bHRpcmFuZ2UpICov CisJT2lkCQkJd2l0aG91dF9wb3J0aW9uX3Byb2M7CS8qIGFueXJhbmdlIC0gYW55cmFuZ2UgU1JG ICovCiAJZGxpc3Rfbm9kZQl2YWxpZF9saW5rOwkJLyogTGluayBpbiBsaXN0IG9mIHZhbGlkIGVu dHJpZXMgKi8KIH0gUklfQ29uc3RyYWludEluZm87CiAKQEAgLTIzMzcsMTAgKzIzMzksMTIgQEAg cmlfTG9hZENvbnN0cmFpbnRJbmZvKE9pZCBjb25zdHJhaW50T2lkKQogCXsKIAkJT2lkCQkJb3Bj bGFzcyA9IGdldF9pbmRleF9jb2x1bW5fb3BjbGFzcyhjb25Gb3JtLT5jb25pbmRpZCwgcmlpbmZv LT5ua2V5cyk7CiAKLQkJRmluZEZLUGVyaW9kT3BlcnMob3BjbGFzcywKLQkJCQkJCSAgJnJpaW5m by0+cGVyaW9kX2NvbnRhaW5lZF9ieV9vcGVyLAotCQkJCQkJICAmcmlpbmZvLT5hZ2dlZF9wZXJp b2RfY29udGFpbmVkX2J5X29wZXIsCi0JCQkJCQkgICZyaWluZm8tPnBlcmlvZF9pbnRlcnNlY3Rf b3Blcik7CisJCUZpbmRGS1BlcmlvZE9wZXJzQW5kUHJvY3Mob3BjbGFzcywKKwkJCQkJCQkJICAm cmlpbmZvLT5wZXJpb2RfY29udGFpbmVkX2J5X29wZXIsCisJCQkJCQkJCSAgJnJpaW5mby0+YWdn ZWRfcGVyaW9kX2NvbnRhaW5lZF9ieV9vcGVyLAorCQkJCQkJCQkgICZyaWluZm8tPnBlcmlvZF9p bnRlcnNlY3Rfb3BlciwKKwkJCQkJCQkJICAmcmlpbmZvLT5wZXJpb2RfaW50ZXJzZWN0X3Byb2Ms CisJCQkJCQkJCSAgJnJpaW5mby0+d2l0aG91dF9wb3J0aW9uX3Byb2MpOwogCX0KIAogCVJlbGVh c2VTeXNDYWNoZSh0dXApOwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19jb25z dHJhaW50LmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuaAppbmRleCA0YWZj ZWI1YzY5Mi4uZjhhMDFkODk2MTcgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdf Y29uc3RyYWludC5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3RyYWludC5oCkBA IC0yODgsMTAgKzI4OCwxMiBAQCBleHRlcm4gdm9pZCBEZWNvbnN0cnVjdEZrQ29uc3RyYWludFJv dyhIZWFwVHVwbGUgdHVwbGUsIGludCAqbnVtZmtzLAogCQkJCQkJCQkJICAgQXR0ck51bWJlciAq Y29ua2V5LCBBdHRyTnVtYmVyICpjb25ma2V5LAogCQkJCQkJCQkJICAgT2lkICpwZl9lcV9vcHJz LCBPaWQgKnBwX2VxX29wcnMsIE9pZCAqZmZfZXFfb3BycywKIAkJCQkJCQkJCSAgIGludCAqbnVt X2ZrX2RlbF9zZXRfY29scywgQXR0ck51bWJlciAqZmtfZGVsX3NldF9jb2xzKTsKLWV4dGVybiB2 b2lkIEZpbmRGS1BlcmlvZE9wZXJzKE9pZCBvcGNsYXNzLAotCQkJCQkJCSAgT2lkICpjb250YWlu ZWRieW9wZXJvaWQsCi0JCQkJCQkJICBPaWQgKmFnZ2VkY29udGFpbmVkYnlvcGVyb2lkLAotCQkJ CQkJCSAgT2lkICppbnRlcnNlY3RvcGVyb2lkKTsKK2V4dGVybiB2b2lkIEZpbmRGS1BlcmlvZE9w ZXJzQW5kUHJvY3MoT2lkIG9wY2xhc3MsCisJCQkJCQkJCQkgIE9pZCAqY29udGFpbmVkYnlvcGVy b2lkLAorCQkJCQkJCQkJICBPaWQgKmFnZ2VkY29udGFpbmVkYnlvcGVyb2lkLAorCQkJCQkJCQkJ ICBPaWQgKmludGVyc2VjdG9wZXJvaWQsCisJCQkJCQkJCQkgIE9pZCAqaW50ZXJzZWN0cHJvY29p ZCwKKwkJCQkJCQkJCSAgT2lkICp3aXRob3V0cG9ydGlvbm9pZCk7CiAKIGV4dGVybiBib29sIGNo ZWNrX2Z1bmN0aW9uYWxfZ3JvdXBpbmcoT2lkIHJlbGlkLAogCQkJCQkJCQkJICBJbmRleCB2YXJu bywgSW5kZXggdmFybGV2ZWxzdXAsCi0tIAoyLjM5LjUKCg== --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0009-Add-CASCADE-SET-NULL-SET-DEFAULT-for-temporal-fo.patch" Content-Disposition: attachment; filename="v59-0009-Add-CASCADE-SET-NULL-SET-DEFAULT-for-temporal-fo.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4k8 RnJvbSBiY2IyOTk2NzIwYzAzNmUxNGE5MzY3Zjc4ZmRjNmU0MzkzZmIwZDgwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFNhdCwgMyBKdW4gMjAyMyAyMTo0MToxMSAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggdjU5IDA5LzExXSBBZGQgQ0FTQ0FERS9TRVQgTlVMTC9TRVQgREVGQVVMVCBmb3Ig dGVtcG9yYWwKIGZvcmVpZ24ga2V5cwoKUHJldmlvdXNseSB3ZSByYWlzZWQgYW4gZXJyb3IgZm9y IHRoZXNlIG9wdGlvbnMsIGJlY2F1c2UgdGhlaXIKaW1wbGVtZW50YXRpb25zIHJlcXVpcmUgRk9S IFBPUlRJT04gT0YuIE5vdyB0aGF0IHdlIGhhdmUgdGVtcG9yYWwKVVBEQVRFL0RFTEVURSwgd2Ug Y2FuIGltcGxlbWVudCBmb3JlaWduIGtleXMgdGhhdCB1c2UgaXQuCgpBdXRob3I6IFBhdWwgQS4g SnVuZ3dpcnRoIDxwakBpbGx1bWluYXRlZGNvbXB1dGluZy5jb20+Ci0tLQogZG9jL3NyYy9zZ21s L2RkbC5zZ21sICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLQogZG9jL3NyYy9zZ21s L3JlZi9jcmVhdGVfdGFibGUuc2dtbCAgICAgICAgICAgIHwgICAxNCArLQogc3JjL2JhY2tlbmQv Y29tbWFuZHMvdGFibGVjbWRzLmMgICAgICAgICAgICAgIHwgICA2NSArLQogc3JjL2JhY2tlbmQv dXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMgICAgICAgICAgIHwgIDYxNyArKysrKystCiBzcmMvaW5j bHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0ICAgICAgICAgICAgICAgfCAgIDIyICsKIHNyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvYnRyZWVfaW5kZXgub3V0ICAgICB8ICAgMTggKy0KIC4uLi9yZWdy ZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMub3V0ICAgICB8IDE1OTQgKysrKysrKysrKysr KysrKy0KIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsICAgICB8ICA5 MDAgKysrKysrKysrLQogOCBmaWxlcyBjaGFuZ2VkLCAzMTg0IGluc2VydGlvbnMoKyksIDUyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9kZGwuc2dtbCBiL2RvYy9zcmMv c2dtbC9kZGwuc2dtbAppbmRleCA1M2Q4NDliZjM0Yy4uMTNjMTc0YjQ3YTkgMTAwNjQ0Ci0tLSBh L2RvYy9zcmMvc2dtbC9kZGwuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZGRsLnNnbWwKQEAgLTE4 NTAsOSArMTg1MCw5IEBAIEFMVEVSIFRBQkxFIHZhcmlhbnRzCiAKICAgICA8cGFyYT4KICAgICAg PHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiBzdXBwb3J0cyA8bGl0ZXJhbD5O TyBBQ1RJT048L2xpdGVyYWw+Ci0gICAgIHRlbXBvcmFsIGZvcmVpZ24ga2V5cywgYnV0IG5vdCA8 bGl0ZXJhbD5SRVNUUklDVDwvbGl0ZXJhbD4sCi0gICAgIDxsaXRlcmFsPkNBU0NBREU8L2xpdGVy YWw+LCA8bGl0ZXJhbD5TRVQgTlVMTDwvbGl0ZXJhbD4sIG9yCi0gICAgIDxsaXRlcmFsPlNFVCBE RUZBVUxUPC9saXRlcmFsPi4KKyAgICAgPGxpdGVyYWw+Q0FTQ0FERTwvbGl0ZXJhbD4sIDxsaXRl cmFsPlNFVCBOVUxMPC9saXRlcmFsPiwgYW5kCisgICAgIDxsaXRlcmFsPlNFVCBERUZBVUxUPC9s aXRlcmFsPiB0ZW1wb3JhbCBmb3JlaWduIGtleXMsCisgICAgIGJ1dCBub3QgPGxpdGVyYWw+UkVT VFJJQ1Q8L2xpdGVyYWw+LgogICAgIDwvcGFyYT4KICAgIDwvc2VjdDM+CiAgIDwvc2VjdDI+CmRp ZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV90YWJsZS5zZ21sIGIvZG9jL3NyYy9z Z21sL3JlZi9jcmVhdGVfdGFibGUuc2dtbAppbmRleCBhMTU3YTI0NGU0ZS4uOTc1ZDVkYWEwYzEg MTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3RhYmxlLnNnbWwKKysrIGIvZG9j L3NyYy9zZ21sL3JlZi9jcmVhdGVfdGFibGUuc2dtbApAQCAtMTMxNSw3ICsxMzE1LDkgQEAgV0lU SCAoIE1PRFVMVVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJh bDwvcmVwbGFjZWFibGU+LCBSRU0KICAgICAgICAgIDwvcGFyYT4KIAogICAgICAgICAgPHBhcmE+ Ci0gICAgICAgICAgSW4gYSB0ZW1wb3JhbCBmb3JlaWduIGtleSwgdGhpcyBvcHRpb24gaXMgbm90 IHN1cHBvcnRlZC4KKyAgICAgICAgICBJbiBhIHRlbXBvcmFsIGZvcmVpZ24ga2V5LCB0aGUgZGVs ZXRlL3VwZGF0ZSB3aWxsIHVzZQorICAgICAgICAgIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9s aXRlcmFsPiBzZW1hbnRpY3MgdG8gY29uc3RyYWluIHRoZQorICAgICAgICAgIGVmZmVjdCB0byB0 aGUgYm91bmRzIGJlaW5nIGRlbGV0ZWQvdXBkYXRlZCBpbiB0aGUgcmVmZXJlbmNlZCByb3cuCiAg ICAgICAgICA8L3BhcmE+CiAgICAgICAgIDwvbGlzdGl0ZW0+CiAgICAgICAgPC92YXJsaXN0ZW50 cnk+CkBAIC0xMzMwLDcgKzEzMzIsMTAgQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0KICAgICAg ICAgIDwvcGFyYT4KIAogICAgICAgICAgPHBhcmE+Ci0gICAgICAgICAgSW4gYSB0ZW1wb3JhbCBm b3JlaWduIGtleSwgdGhpcyBvcHRpb24gaXMgbm90IHN1cHBvcnRlZC4KKyAgICAgICAgICBJbiBh IHRlbXBvcmFsIGZvcmVpZ24ga2V5LCB0aGUgY2hhbmdlIHdpbGwgdXNlIDxsaXRlcmFsPkZPUiBQ T1JUSU9OCisgICAgICAgICAgT0Y8L2xpdGVyYWw+IHNlbWFudGljcyB0byBjb25zdHJhaW4gdGhl IGVmZmVjdCB0byB0aGUgYm91bmRzIGJlaW5nCisgICAgICAgICAgZGVsZXRlZC91cGRhdGVkIGlu IHRoZSByZWZlcmVuY2VkIHJvdy4gVGhlIGNvbHVtbiBtYWtlZCB3aXRoCisgICAgICAgICAgPGxp dGVyYWw+UEVSSU9EPC9saXRlcmFsPiB3aWxsIG5vdCBiZSBzZXQgdG8gbnVsbC4KICAgICAgICAg IDwvcGFyYT4KICAgICAgICAgPC9saXN0aXRlbT4KICAgICAgICA8L3Zhcmxpc3RlbnRyeT4KQEAg LTEzNDcsNyArMTM1MiwxMCBAQCBXSVRIICggTU9EVUxVUyA8cmVwbGFjZWFibGUgY2xhc3M9InBh cmFtZXRlciI+bnVtZXJpY19saXRlcmFsPC9yZXBsYWNlYWJsZT4sIFJFTQogICAgICAgICAgPC9w YXJhPgogCiAgICAgICAgICA8cGFyYT4KLSAgICAgICAgICBJbiBhIHRlbXBvcmFsIGZvcmVpZ24g a2V5LCB0aGlzIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkLgorICAgICAgICAgIEluIGEgdGVtcG9y YWwgZm9yZWlnbiBrZXksIHRoZSBjaGFuZ2Ugd2lsbCB1c2UgPGxpdGVyYWw+Rk9SIFBPUlRJT04K KyAgICAgICAgICBPRjwvbGl0ZXJhbD4gc2VtYW50aWNzIHRvIGNvbnN0cmFpbiB0aGUgZWZmZWN0 IHRvIHRoZSBib3VuZHMgYmVpbmcKKyAgICAgICAgICBkZWxldGVkL3VwZGF0ZWQgaW4gdGhlIHJl ZmVyZW5jZWQgcm93LiBUaGUgY29sdW1uIG1hcmtlZCB3aXRoCisgICAgICAgICAgPGxpdGVyYWw+ UEVSSU9EPC9saXRlcmFsPiB3aXRoIG5vdCBiZSBzZXQgdG8gYSBkZWZhdWx0IHZhbHVlLgogICAg ICAgICAgPC9wYXJhPgogICAgICAgICA8L2xpc3RpdGVtPgogICAgICAgIDwvdmFybGlzdGVudHJ5 PgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMgYi9zcmMvYmFj a2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYwppbmRleCBiNDAxZTcyOGE5MS4uY2U0ZWZkZWI4NTQg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCisrKyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCkBAIC01NjIsNyArNTYyLDcgQEAgc3RhdGljIE9i amVjdEFkZHJlc3MgQVRBZGRGb3JlaWduS2V5Q29uc3RyYWludChMaXN0ICoqd3F1ZXVlLCBBbHRl cmVkVGFibGVJbmZvICoKIAkJCQkJCQkJCQkJICAgUmVsYXRpb24gcmVsLCBDb25zdHJhaW50ICpm a2NvbnN0cmFpbnQsCiAJCQkJCQkJCQkJCSAgIGJvb2wgcmVjdXJzZSwgYm9vbCByZWN1cnNpbmcs CiAJCQkJCQkJCQkJCSAgIExPQ0tNT0RFIGxvY2ttb2RlKTsKLXN0YXRpYyBpbnQJdmFsaWRhdGVG a09uRGVsZXRlU2V0Q29sdW1ucyhpbnQgbnVtZmtzLCBjb25zdCBpbnQxNiAqZmthdHRudW1zLAor c3RhdGljIGludAl2YWxpZGF0ZUZrT25EZWxldGVTZXRDb2x1bW5zKGludCBudW1ma3MsIGNvbnN0 IGludDE2ICpma2F0dG51bXMsIGNvbnN0IGludDE2IGZrcGVyaW9kYXR0bnVtLAogCQkJCQkJCQkJ CSBpbnQgbnVtZmtzZXRjb2xzLCBpbnQxNiAqZmtzZXRjb2xzYXR0bnVtcywKIAkJCQkJCQkJCQkg TGlzdCAqZmtzZXRjb2xzKTsKIHN0YXRpYyBPYmplY3RBZGRyZXNzIGFkZEZrQ29uc3RyYWludChh ZGRGa0NvbnN0cmFpbnRTaWRlcyBma3NpZGUsCkBAIC0xMDA3NCw2ICsxMDA3NCw3IEBAIEFUQWRk Rm9yZWlnbktleUNvbnN0cmFpbnQoTGlzdCAqKndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAqdGFi LCBSZWxhdGlvbiByZWwsCiAJaW50MTYJCWZrZGVsc2V0Y29sc1tJTkRFWF9NQVhfS0VZU10gPSB7 MH07CiAJYm9vbAkJd2l0aF9wZXJpb2Q7CiAJYm9vbAkJcGtfaGFzX3dpdGhvdXRfb3ZlcmxhcHM7 CisJaW50MTYJCWZrcGVyaW9kYXR0bnVtID0gSW52YWxpZEF0dHJOdW1iZXI7CiAJaW50CQkJaTsK IAlpbnQJCQludW1ma3MsCiAJCQkJbnVtcGtzLApAQCAtMTAxNTksMTUgKzEwMTYwLDIwIEBAIEFU QWRkRm9yZWlnbktleUNvbnN0cmFpbnQoTGlzdCAqKndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAq dGFiLCBSZWxhdGlvbiByZWwsCiAJCQkJCQkJCQkgZmtjb25zdHJhaW50LT5ma19hdHRycywKIAkJ CQkJCQkJCSBma2F0dG51bSwgZmt0eXBvaWQsIGZrY29sbG9pZCk7CiAJd2l0aF9wZXJpb2QgPSBm a2NvbnN0cmFpbnQtPmZrX3dpdGhfcGVyaW9kIHx8IGZrY29uc3RyYWludC0+cGtfd2l0aF9wZXJp b2Q7Ci0JaWYgKHdpdGhfcGVyaW9kICYmICFma2NvbnN0cmFpbnQtPmZrX3dpdGhfcGVyaW9kKQot CQllcmVwb3J0KEVSUk9SLAotCQkJCWVycmNvZGUoRVJSQ09ERV9JTlZBTElEX0ZPUkVJR05fS0VZ KSwKLQkJCQllcnJtc2coImZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2Vk IHRhYmxlIGJ1dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlIikpOworCWlmICh3aXRoX3Blcmlv ZCkKKwl7CisJCWlmICghZmtjb25zdHJhaW50LT5ma193aXRoX3BlcmlvZCkKKwkJCWVyZXBvcnQo RVJST1IsCisJCQkJCShlcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9GT1JFSUdOX0tFWSksCisJCQkJ CSBlcnJtc2coImZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxl IGJ1dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlIikpKTsKKwkJZmtwZXJpb2RhdHRudW0gPSBm a2F0dG51bVtudW1ma3MgLSAxXTsKKwl9CiAKIAludW1ma2RlbHNldGNvbHMgPSB0cmFuc2Zvcm1D b2x1bW5OYW1lTGlzdChSZWxhdGlvbkdldFJlbGlkKHJlbCksCiAJCQkJCQkJCQkJCSAgZmtjb25z dHJhaW50LT5ma19kZWxfc2V0X2NvbHMsCiAJCQkJCQkJCQkJCSAgZmtkZWxzZXRjb2xzLCBOVUxM LCBOVUxMKTsKIAludW1ma2RlbHNldGNvbHMgPSB2YWxpZGF0ZUZrT25EZWxldGVTZXRDb2x1bW5z KG51bWZrcywgZmthdHRudW0sCisJCQkJCQkJCQkJCQkgICBma3BlcmlvZGF0dG51bSwKIAkJCQkJ CQkJCQkJCSAgIG51bWZrZGVsc2V0Y29scywKIAkJCQkJCQkJCQkJCSAgIGZrZGVsc2V0Y29scywK IAkJCQkJCQkJCQkJCSAgIGZrY29uc3RyYWludC0+ZmtfZGVsX3NldF9jb2xzKTsKQEAgLTEwMjY5 LDE5ICsxMDI3NSwxMyBAQCBBVEFkZEZvcmVpZ25LZXlDb25zdHJhaW50KExpc3QgKip3cXVldWUs IEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogCSAqLwogCWlmIChma2NvbnN0 cmFpbnQtPmZrX3dpdGhfcGVyaW9kKQogCXsKLQkJaWYgKGZrY29uc3RyYWludC0+ZmtfdXBkX2Fj dGlvbiA9PSBGS0NPTlNUUl9BQ1RJT05fUkVTVFJJQ1QgfHwKLQkJCWZrY29uc3RyYWludC0+Zmtf dXBkX2FjdGlvbiA9PSBGS0NPTlNUUl9BQ1RJT05fQ0FTQ0FERSB8fAotCQkJZmtjb25zdHJhaW50 LT5ma191cGRfYWN0aW9uID09IEZLQ09OU1RSX0FDVElPTl9TRVROVUxMIHx8Ci0JCQlma2NvbnN0 cmFpbnQtPmZrX3VwZF9hY3Rpb24gPT0gRktDT05TVFJfQUNUSU9OX1NFVERFRkFVTFQpCisJCWlm IChma2NvbnN0cmFpbnQtPmZrX3VwZF9hY3Rpb24gPT0gRktDT05TVFJfQUNUSU9OX1JFU1RSSUNU KQogCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJZXJyY29kZShFUlJDT0RFX0ZFQVRVUkVfTk9UX1NV UFBPUlRFRCksCiAJCQkJCWVycm1zZygidW5zdXBwb3J0ZWQgJXMgYWN0aW9uIGZvciBmb3JlaWdu IGtleSBjb25zdHJhaW50IHVzaW5nIFBFUklPRCIsCiAJCQkJCQkgICAiT04gVVBEQVRFIikpOwog Ci0JCWlmIChma2NvbnN0cmFpbnQtPmZrX2RlbF9hY3Rpb24gPT0gRktDT05TVFJfQUNUSU9OX1JF U1RSSUNUIHx8Ci0JCQlma2NvbnN0cmFpbnQtPmZrX2RlbF9hY3Rpb24gPT0gRktDT05TVFJfQUNU SU9OX0NBU0NBREUgfHwKLQkJCWZrY29uc3RyYWludC0+ZmtfZGVsX2FjdGlvbiA9PSBGS0NPTlNU Ul9BQ1RJT05fU0VUTlVMTCB8fAotCQkJZmtjb25zdHJhaW50LT5ma19kZWxfYWN0aW9uID09IEZL Q09OU1RSX0FDVElPTl9TRVRERUZBVUxUKQorCQlpZiAoZmtjb25zdHJhaW50LT5ma19kZWxfYWN0 aW9uID09IEZLQ09OU1RSX0FDVElPTl9SRVNUUklDVCkKIAkJCWVyZXBvcnQoRVJST1IsCiAJCQkJ CWVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAogCQkJCQllcnJtc2coInVu c3VwcG9ydGVkICVzIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJ T0QiLApAQCAtMTA2MzgsNiArMTA2MzgsNyBAQCBBVEFkZEZvcmVpZ25LZXlDb25zdHJhaW50KExp c3QgKip3cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogICovCiBz dGF0aWMgaW50CiB2YWxpZGF0ZUZrT25EZWxldGVTZXRDb2x1bW5zKGludCBudW1ma3MsIGNvbnN0 IGludDE2ICpma2F0dG51bXMsCisJCQkJCQkJIGNvbnN0IGludDE2IGZrcGVyaW9kYXR0bnVtLAog CQkJCQkJCSBpbnQgbnVtZmtzZXRjb2xzLCBpbnQxNiAqZmtzZXRjb2xzYXR0bnVtcywKIAkJCQkJ CQkgTGlzdCAqZmtzZXRjb2xzKQogewpAQCAtMTA2NTEsNiArMTA2NTIsMTQgQEAgdmFsaWRhdGVG a09uRGVsZXRlU2V0Q29sdW1ucyhpbnQgbnVtZmtzLCBjb25zdCBpbnQxNiAqZmthdHRudW1zLAog CQkvKiBNYWtlIHN1cmUgaXQncyBpbiBma2F0dG51bXNbXSAqLwogCQlmb3IgKGludCBqID0gMDsg aiA8IG51bWZrczsgaisrKQogCQl7CisJCQlpZiAoZmtwZXJpb2RhdHRudW0gPT0gc2V0Y29sX2F0 dG51bSkKKwkJCXsKKwkJCQljaGFyCSAgICpjb2wgPSBzdHJWYWwobGlzdF9udGgoZmtzZXRjb2xz LCBpKSk7CisKKwkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9JTlZB TElEX0NPTFVNTl9SRUZFUkVOQ0UpLAorCQkJCQkJIGVycm1zZygiY29sdW1uIFwiJXNcIiByZWZl cmVuY2VkIGluIE9OIERFTEVURSBTRVQgYWN0aW9uIGNhbm5vdCBiZSBQRVJJT0QiLCBjb2wpKSk7 CisJCQl9CiAJCQlpZiAoZmthdHRudW1zW2pdID09IHNldGNvbF9hdHRudW0pCiAJCQl7CiAJCQkJ c2VlbiA9IHRydWU7CkBAIC0xMzg5MCwxNyArMTM4OTksMjYgQEAgY3JlYXRlRm9yZWlnbktleUFj dGlvblRyaWdnZXJzKE9pZCBteVJlbE9pZCwgT2lkIHJlZlJlbE9pZCwgQ29uc3RyYWludCAqZmtj b25zdHIKIAkJY2FzZSBGS0NPTlNUUl9BQ1RJT05fQ0FTQ0FERToKIAkJCWZrX3RyaWdnZXItPmRl ZmVycmFibGUgPSBmYWxzZTsKIAkJCWZrX3RyaWdnZXItPmluaXRkZWZlcnJlZCA9IGZhbHNlOwot CQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9jYXNjYWRl X2RlbCIpOworCQkJaWYgKGZrY29uc3RyYWludC0+Zmtfd2l0aF9wZXJpb2QpCisJCQkJZmtfdHJp Z2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9wZXJpb2RfY2FzY2FkZV9k ZWwiKTsKKwkJCWVsc2UKKwkJCQlma190cmlnZ2VyLT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1l KCJSSV9GS2V5X2Nhc2NhZGVfZGVsIik7CiAJCQlicmVhazsKIAkJY2FzZSBGS0NPTlNUUl9BQ1RJ T05fU0VUTlVMTDoKIAkJCWZrX3RyaWdnZXItPmRlZmVycmFibGUgPSBmYWxzZTsKIAkJCWZrX3Ry aWdnZXItPmluaXRkZWZlcnJlZCA9IGZhbHNlOwotCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBT eXN0ZW1GdW5jTmFtZSgiUklfRktleV9zZXRudWxsX2RlbCIpOworCQkJaWYgKGZrY29uc3RyYWlu dC0+Zmtfd2l0aF9wZXJpb2QpCisJCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5j TmFtZSgiUklfRktleV9wZXJpb2Rfc2V0bnVsbF9kZWwiKTsKKwkJCWVsc2UKKwkJCQlma190cmln Z2VyLT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3NldG51bGxfZGVsIik7CiAJ CQlicmVhazsKIAkJY2FzZSBGS0NPTlNUUl9BQ1RJT05fU0VUREVGQVVMVDoKIAkJCWZrX3RyaWdn ZXItPmRlZmVycmFibGUgPSBmYWxzZTsKIAkJCWZrX3RyaWdnZXItPmluaXRkZWZlcnJlZCA9IGZh bHNlOwotCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9z ZXRkZWZhdWx0X2RlbCIpOworCQkJaWYgKGZrY29uc3RyYWludC0+Zmtfd2l0aF9wZXJpb2QpCisJ CQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9wZXJpb2Rf c2V0ZGVmYXVsdF9kZWwiKTsKKwkJCWVsc2UKKwkJCQlma190cmlnZ2VyLT5mdW5jbmFtZSA9IFN5 c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3NldGRlZmF1bHRfZGVsIik7CiAJCQlicmVhazsKIAkJZGVm YXVsdDoKIAkJCWVsb2coRVJST1IsICJ1bnJlY29nbml6ZWQgRksgYWN0aW9uIHR5cGU6ICVkIiwK QEAgLTEzOTUwLDE3ICsxMzk2OCwyNiBAQCBjcmVhdGVGb3JlaWduS2V5QWN0aW9uVHJpZ2dlcnMo T2lkIG15UmVsT2lkLCBPaWQgcmVmUmVsT2lkLCBDb25zdHJhaW50ICpma2NvbnN0cgogCQljYXNl IEZLQ09OU1RSX0FDVElPTl9DQVNDQURFOgogCQkJZmtfdHJpZ2dlci0+ZGVmZXJyYWJsZSA9IGZh bHNlOwogCQkJZmtfdHJpZ2dlci0+aW5pdGRlZmVycmVkID0gZmFsc2U7Ci0JCQlma190cmlnZ2Vy LT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X2Nhc2NhZGVfdXBkIik7CisJCQlp ZiAoZmtjb25zdHJhaW50LT5ma193aXRoX3BlcmlvZCkKKwkJCQlma190cmlnZ2VyLT5mdW5jbmFt ZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3BlcmlvZF9jYXNjYWRlX3VwZCIpOworCQkJZWxz ZQorCQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1lID0gU3lzdGVtRnVuY05hbWUoIlJJX0ZLZXlfY2Fz Y2FkZV91cGQiKTsKIAkJCWJyZWFrOwogCQljYXNlIEZLQ09OU1RSX0FDVElPTl9TRVROVUxMOgog CQkJZmtfdHJpZ2dlci0+ZGVmZXJyYWJsZSA9IGZhbHNlOwogCQkJZmtfdHJpZ2dlci0+aW5pdGRl ZmVycmVkID0gZmFsc2U7Ci0JCQlma190cmlnZ2VyLT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1l KCJSSV9GS2V5X3NldG51bGxfdXBkIik7CisJCQlpZiAoZmtjb25zdHJhaW50LT5ma193aXRoX3Bl cmlvZCkKKwkJCQlma190cmlnZ2VyLT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5 X3BlcmlvZF9zZXRudWxsX3VwZCIpOworCQkJZWxzZQorCQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1l ID0gU3lzdGVtRnVuY05hbWUoIlJJX0ZLZXlfc2V0bnVsbF91cGQiKTsKIAkJCWJyZWFrOwogCQlj YXNlIEZLQ09OU1RSX0FDVElPTl9TRVRERUZBVUxUOgogCQkJZmtfdHJpZ2dlci0+ZGVmZXJyYWJs ZSA9IGZhbHNlOwogCQkJZmtfdHJpZ2dlci0+aW5pdGRlZmVycmVkID0gZmFsc2U7Ci0JCQlma190 cmlnZ2VyLT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3NldGRlZmF1bHRfdXBk Iik7CisJCQlpZiAoZmtjb25zdHJhaW50LT5ma193aXRoX3BlcmlvZCkKKwkJCQlma190cmlnZ2Vy LT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0X3Vw ZCIpOworCQkJZWxzZQorCQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1lID0gU3lzdGVtRnVuY05hbWUo IlJJX0ZLZXlfc2V0ZGVmYXVsdF91cGQiKTsKIAkJCWJyZWFrOwogCQlkZWZhdWx0OgogCQkJZWxv ZyhFUlJPUiwgInVucmVjb2duaXplZCBGSyBhY3Rpb24gdHlwZTogJWQiLApkaWZmIC0tZ2l0IGEv c3JjL2JhY2tlbmQvdXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMgYi9zcmMvYmFja2VuZC91dGlscy9h ZHQvcmlfdHJpZ2dlcnMuYwppbmRleCBmYzhkNTllMGY0Ny4uNGYyZDYyMDExYTcgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5jCisrKyBiL3NyYy9iYWNrZW5k L3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5jCkBAIC03OSw2ICs3OSwxMiBAQAogI2RlZmluZSBSSV9Q TEFOX1NFVE5VTExfT05VUERBVEUJCTgKICNkZWZpbmUgUklfUExBTl9TRVRERUZBVUxUX09OREVM RVRFCQk5CiAjZGVmaW5lIFJJX1BMQU5fU0VUREVGQVVMVF9PTlVQREFURQkJMTAKKyNkZWZpbmUg UklfUExBTl9QRVJJT0RfQ0FTQ0FERV9PTkRFTEVURQkJMTEKKyNkZWZpbmUgUklfUExBTl9QRVJJ T0RfQ0FTQ0FERV9PTlVQREFURQkJMTIKKyNkZWZpbmUgUklfUExBTl9QRVJJT0RfU0VUTlVMTF9P TlVQREFURQkJMTMKKyNkZWZpbmUgUklfUExBTl9QRVJJT0RfU0VUTlVMTF9PTkRFTEVURQkJMTQK KyNkZWZpbmUgUklfUExBTl9QRVJJT0RfU0VUREVGQVVMVF9PTlVQREFURQkxNQorI2RlZmluZSBS SV9QTEFOX1BFUklPRF9TRVRERUZBVUxUX09OREVMRVRFCTE2CiAKICNkZWZpbmUgTUFYX1FVT1RF RF9OQU1FX0xFTiAgKE5BTUVEQVRBTEVOKjIrMykKICNkZWZpbmUgTUFYX1FVT1RFRF9SRUxfTkFN RV9MRU4gIChNQVhfUVVPVEVEX05BTUVfTEVOKjIpCkBAIC0xOTQsNiArMjAwLDcgQEAgc3RhdGlj IGJvb2wgcmlfQ2hlY2tfUGtfTWF0Y2goUmVsYXRpb24gcGtfcmVsLCBSZWxhdGlvbiBma19yZWws CiAJCQkJCQkJICBjb25zdCBSSV9Db25zdHJhaW50SW5mbyAqcmlpbmZvKTsKIHN0YXRpYyBEYXR1 bSByaV9yZXN0cmljdChUcmlnZ2VyRGF0YSAqdHJpZ2RhdGEsIGJvb2wgaXNfbm9fYWN0aW9uKTsK IHN0YXRpYyBEYXR1bSByaV9zZXQoVHJpZ2dlckRhdGEgKnRyaWdkYXRhLCBib29sIGlzX3NldF9u dWxsLCBpbnQgdGdraW5kKTsKK3N0YXRpYyBEYXR1bSB0cmlfc2V0KFRyaWdnZXJEYXRhICp0cmln ZGF0YSwgYm9vbCBpc19zZXRfbnVsbCwgaW50IHRna2luZCk7CiBzdGF0aWMgdm9pZCBxdW90ZU9u ZU5hbWUoY2hhciAqYnVmZmVyLCBjb25zdCBjaGFyICpuYW1lKTsKIHN0YXRpYyB2b2lkIHF1b3Rl UmVsYXRpb25OYW1lKGNoYXIgKmJ1ZmZlciwgUmVsYXRpb24gcmVsKTsKIHN0YXRpYyB2b2lkIHJp X0dlbmVyYXRlUXVhbChTdHJpbmdJbmZvIGJ1ZiwKQEAgLTIzMCw2ICsyMzcsNyBAQCBzdGF0aWMg Ym9vbCByaV9QZXJmb3JtQ2hlY2soY29uc3QgUklfQ29uc3RyYWludEluZm8gKnJpaW5mbywKIAkJ CQkJCQlSSV9RdWVyeUtleSAqcWtleSwgU1BJUGxhblB0ciBxcGxhbiwKIAkJCQkJCQlSZWxhdGlv biBma19yZWwsIFJlbGF0aW9uIHBrX3JlbCwKIAkJCQkJCQlUdXBsZVRhYmxlU2xvdCAqb2xkc2xv dCwgVHVwbGVUYWJsZVNsb3QgKm5ld3Nsb3QsCisJCQkJCQkJaW50IHBlcmlvZFBhcmFtLCBEYXR1 bSBwZXJpb2QsCiAJCQkJCQkJYm9vbCBpc19yZXN0cmljdCwKIAkJCQkJCQlib29sIGRldGVjdE5l d1Jvd3MsIGludCBleHBlY3RfT0spOwogc3RhdGljIHZvaWQgcmlfRXh0cmFjdFZhbHVlcyhSZWxh dGlvbiByZWwsIFR1cGxlVGFibGVTbG90ICpzbG90LApAQCAtMjM5LDYgKzI0NywxMSBAQCBwZ19u b3JldHVybiBzdGF0aWMgdm9pZCByaV9SZXBvcnRWaW9sYXRpb24oY29uc3QgUklfQ29uc3RyYWlu dEluZm8gKnJpaW5mbywKIAkJCQkJCQkJCQkgICBSZWxhdGlvbiBwa19yZWwsIFJlbGF0aW9uIGZr X3JlbCwKIAkJCQkJCQkJCQkgICBUdXBsZVRhYmxlU2xvdCAqdmlvbGF0b3JzbG90LCBUdXBsZURl c2MgdHVwZGVzYywKIAkJCQkJCQkJCQkgICBpbnQgcXVlcnlubywgYm9vbCBpc19yZXN0cmljdCwg Ym9vbCBwYXJ0Z29uZSk7CitzdGF0aWMgYm9vbCBmcG9fdGFyZ2V0c19wa19yYW5nZShjb25zdCBG b3JQb3J0aW9uT2ZTdGF0ZSAqdGdfdGVtcG9yYWwsCisJCQkJCQkJCSBjb25zdCBSSV9Db25zdHJh aW50SW5mbyAqcmlpbmZvKTsKK3N0YXRpYyBEYXR1bSByZXN0cmljdF9lbmZvcmNlZF9yYW5nZShj b25zdCBGb3JQb3J0aW9uT2ZTdGF0ZSAqdGdfdGVtcG9yYWwsCisJCQkJCQkJCQkgY29uc3QgUklf Q29uc3RyYWludEluZm8gKnJpaW5mbywKKwkJCQkJCQkJCSBUdXBsZVRhYmxlU2xvdCAqb2xkc2xv dCk7CiAKIAogLyoKQEAgLTQ1Miw2ICs0NjUsNyBAQCBSSV9GS2V5X2NoZWNrKFRyaWdnZXJEYXRh ICp0cmlnZGF0YSkKIAlyaV9QZXJmb3JtQ2hlY2socmlpbmZvLCAmcWtleSwgcXBsYW4sCiAJCQkJ CWZrX3JlbCwgcGtfcmVsLAogCQkJCQlOVUxMLCBuZXdzbG90LAorCQkJCQktMSwgKERhdHVtKSAw LAogCQkJCQlmYWxzZSwKIAkJCQkJcGtfcmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9Q QVJUSVRJT05FRF9UQUJMRSwKIAkJCQkJU1BJX09LX1NFTEVDVCk7CkBAIC02MTcsNiArNjMxLDcg QEAgcmlfQ2hlY2tfUGtfTWF0Y2goUmVsYXRpb24gcGtfcmVsLCBSZWxhdGlvbiBma19yZWwsCiAJ cmVzdWx0ID0gcmlfUGVyZm9ybUNoZWNrKHJpaW5mbywgJnFrZXksIHFwbGFuLAogCQkJCQkJCSBm a19yZWwsIHBrX3JlbCwKIAkJCQkJCQkgb2xkc2xvdCwgTlVMTCwKKwkJCQkJCQkgLTEsIChEYXR1 bSkgMCwKIAkJCQkJCQkgZmFsc2UsCiAJCQkJCQkJIHRydWUsCS8qIHRyZWF0IGxpa2UgdXBkYXRl ICovCiAJCQkJCQkJIFNQSV9PS19TRUxFQ1QpOwpAQCAtODkzLDYgKzkwOCw3IEBAIHJpX3Jlc3Ry aWN0KFRyaWdnZXJEYXRhICp0cmlnZGF0YSwgYm9vbCBpc19ub19hY3Rpb24pCiAJcmlfUGVyZm9y bUNoZWNrKHJpaW5mbywgJnFrZXksIHFwbGFuLAogCQkJCQlma19yZWwsIHBrX3JlbCwKIAkJCQkJ b2xkc2xvdCwgTlVMTCwKKwkJCQkJLTEsIChEYXR1bSkgMCwKIAkJCQkJIWlzX25vX2FjdGlvbiwK IAkJCQkJdHJ1ZSwJCS8qIG11c3QgZGV0ZWN0IG5ldyByb3dzICovCiAJCQkJCVNQSV9PS19TRUxF Q1QpOwpAQCAtOTk1LDYgKzEwMTEsNyBAQCBSSV9GS2V5X2Nhc2NhZGVfZGVsKFBHX0ZVTkNUSU9O X0FSR1MpCiAJcmlfUGVyZm9ybUNoZWNrKHJpaW5mbywgJnFrZXksIHFwbGFuLAogCQkJCQlma19y ZWwsIHBrX3JlbCwKIAkJCQkJb2xkc2xvdCwgTlVMTCwKKwkJCQkJLTEsIChEYXR1bSkgMCwKIAkJ CQkJZmFsc2UsCiAJCQkJCXRydWUsCQkvKiBtdXN0IGRldGVjdCBuZXcgcm93cyAqLwogCQkJCQlT UElfT0tfREVMRVRFKTsKQEAgLTExMTIsNiArMTEyOSw3IEBAIFJJX0ZLZXlfY2FzY2FkZV91cGQo UEdfRlVOQ1RJT05fQVJHUykKIAlyaV9QZXJmb3JtQ2hlY2socmlpbmZvLCAmcWtleSwgcXBsYW4s CiAJCQkJCWZrX3JlbCwgcGtfcmVsLAogCQkJCQlvbGRzbG90LCBuZXdzbG90LAorCQkJCQktMSwg KERhdHVtKSAwLAogCQkJCQlmYWxzZSwKIAkJCQkJdHJ1ZSwJCS8qIG11c3QgZGV0ZWN0IG5ldyBy b3dzICovCiAJCQkJCVNQSV9PS19VUERBVEUpOwpAQCAtMTM0MCw2ICsxMzU4LDcgQEAgcmlfc2V0 KFRyaWdnZXJEYXRhICp0cmlnZGF0YSwgYm9vbCBpc19zZXRfbnVsbCwgaW50IHRna2luZCkKIAly aV9QZXJmb3JtQ2hlY2socmlpbmZvLCAmcWtleSwgcXBsYW4sCiAJCQkJCWZrX3JlbCwgcGtfcmVs LAogCQkJCQlvbGRzbG90LCBOVUxMLAorCQkJCQktMSwgKERhdHVtKSAwLAogCQkJCQlmYWxzZSwK IAkJCQkJdHJ1ZSwJCS8qIG11c3QgZGV0ZWN0IG5ldyByb3dzICovCiAJCQkJCVNQSV9PS19VUERB VEUpOwpAQCAtMTM3MSw2ICsxMzkwLDU0MCBAQCByaV9zZXQoVHJpZ2dlckRhdGEgKnRyaWdkYXRh LCBib29sIGlzX3NldF9udWxsLCBpbnQgdGdraW5kKQogfQogCiAKKy8qCisgKiBSSV9GS2V5X3Bl cmlvZF9jYXNjYWRlX2RlbCAtCisgKgorICogQ2FzY2FkZWQgZGVsZXRlIGZvcmVpZ24ga2V5IHJl ZmVyZW5jZXMgYXQgZGVsZXRlIGV2ZW50IG9uIHRlbXBvcmFsIFBLIHRhYmxlLgorICovCitEYXR1 bQorUklfRktleV9wZXJpb2RfY2FzY2FkZV9kZWwoUEdfRlVOQ1RJT05fQVJHUykKK3sKKwlUcmln Z2VyRGF0YSAqdHJpZ2RhdGEgPSAoVHJpZ2dlckRhdGEgKikgZmNpbmZvLT5jb250ZXh0OworCWNv bnN0IFJJX0NvbnN0cmFpbnRJbmZvICpyaWluZm87CisJUmVsYXRpb24JZmtfcmVsOworCVJlbGF0 aW9uCXBrX3JlbDsKKwlUdXBsZVRhYmxlU2xvdCAqb2xkc2xvdDsKKwlSSV9RdWVyeUtleSBxa2V5 OworCVNQSVBsYW5QdHIJcXBsYW47CisJRGF0dW0JCXRhcmdldFJhbmdlOworCisJLyogQ2hlY2sg dGhhdCB0aGlzIGlzIGEgdmFsaWQgdHJpZ2dlciBjYWxsIG9uIHRoZSByaWdodCB0aW1lIGFuZCBl dmVudC4gKi8KKwlyaV9DaGVja1RyaWdnZXIoZmNpbmZvLCAiUklfRktleV9wZXJpb2RfY2FzY2Fk ZV9kZWwiLCBSSV9UUklHVFlQRV9ERUxFVEUpOworCisJcmlpbmZvID0gcmlfRmV0Y2hDb25zdHJh aW50SW5mbyh0cmlnZGF0YS0+dGdfdHJpZ2dlciwKKwkJCQkJCQkJCXRyaWdkYXRhLT50Z19yZWxh dGlvbiwgdHJ1ZSk7CisKKwkvKgorCSAqIEdldCB0aGUgcmVsYXRpb24gZGVzY3JpcHRvcnMgb2Yg dGhlIEZLIGFuZCBQSyB0YWJsZXMgYW5kIHRoZSBvbGQgdHVwbGUuCisJICoKKwkgKiBma19yZWwg aXMgb3BlbmVkIGluIFJvd0V4Y2x1c2l2ZUxvY2sgbW9kZSBzaW5jZSB0aGF0J3Mgd2hhdCBvdXIK KwkgKiBldmVudHVhbCBERUxFVEUgd2lsbCBnZXQgb24gaXQuCisJICovCisJZmtfcmVsID0gdGFi bGVfb3BlbihyaWluZm8tPmZrX3JlbGlkLCBSb3dFeGNsdXNpdmVMb2NrKTsKKwlwa19yZWwgPSB0 cmlnZGF0YS0+dGdfcmVsYXRpb247CisJb2xkc2xvdCA9IHRyaWdkYXRhLT50Z190cmlnc2xvdDsK KworCS8qCisJICogRG9uJ3QgZGVsZXRlIHRoYW4gbW9yZSB0aGFuIHRoZSBQSydzIGR1cmF0aW9u LCB0cmltbWVkIGJ5IGFuIG9yaWdpbmFsCisJICogRk9SIFBPUlRJT04gT0YgaWYgbmVjZXNzYXJ5 LgorCSAqLworCXRhcmdldFJhbmdlID0gcmVzdHJpY3RfZW5mb3JjZWRfcmFuZ2UodHJpZ2RhdGEt PnRnX3RlbXBvcmFsLCByaWluZm8sIG9sZHNsb3QpOworCisJaWYgKFNQSV9jb25uZWN0KCkgIT0g U1BJX09LX0NPTk5FQ1QpCisJCWVsb2coRVJST1IsICJTUElfY29ubmVjdCBmYWlsZWQiKTsKKwor CS8qIEZldGNoIG9yIHByZXBhcmUgYSBzYXZlZCBwbGFuIGZvciB0aGUgY2FzY2FkZWQgZGVsZXRl ICovCisJcmlfQnVpbGRRdWVyeUtleSgmcWtleSwgcmlpbmZvLCBSSV9QTEFOX1BFUklPRF9DQVND QURFX09OREVMRVRFKTsKKworCWlmICgocXBsYW4gPSByaV9GZXRjaFByZXBhcmVkUGxhbigmcWtl eSkpID09IE5VTEwpCisJeworCQlTdHJpbmdJbmZvRGF0YSBxdWVyeWJ1ZjsKKwkJY2hhcgkJZmty ZWxuYW1lW01BWF9RVU9URURfUkVMX05BTUVfTEVOXTsKKwkJY2hhcgkJYXR0bmFtZVtNQVhfUVVP VEVEX05BTUVfTEVOXTsKKwkJY2hhcgkJcGFyYW1uYW1lWzE2XTsKKwkJY29uc3QgY2hhciAqcXVl cnlzZXA7CisJCU9pZAkJCXF1ZXJ5b2lkc1tSSV9NQVhfTlVNS0VZUyArIDFdOworCQljb25zdCBj aGFyICpma19vbmx5OworCisJCS8qIC0tLS0tLS0tLS0KKwkJICogVGhlIHF1ZXJ5IHN0cmluZyBi dWlsdCBpcworCQkgKiAgREVMRVRFIEZST00gW09OTFldIDxma3RhYmxlPgorCQkgKiAgRk9SIFBP UlRJT04gT0YgJGZrYXR0ICgke24rMX0pCisJCSAqICBXSEVSRSAkMSA9IGZrYXR0MSBbQU5EIC4u Ll0KKwkJICogVGhlIHR5cGUgaWQncyBmb3IgdGhlICQgcGFyYW1ldGVycyBhcmUgdGhvc2Ugb2Yg dGhlCisJCSAqIGNvcnJlc3BvbmRpbmcgUEsgYXR0cmlidXRlcy4KKwkJICogLS0tLS0tLS0tLQor CQkgKi8KKwkJaW5pdFN0cmluZ0luZm8oJnF1ZXJ5YnVmKTsKKwkJZmtfb25seSA9IGZrX3JlbC0+ cmRfcmVsLT5yZWxraW5kID09IFJFTEtJTkRfUEFSVElUSU9ORURfVEFCTEUgPworCQkJIiIgOiAi T05MWSAiOworCQlxdW90ZVJlbGF0aW9uTmFtZShma3JlbG5hbWUsIGZrX3JlbCk7CisJCXF1b3Rl T25lTmFtZShhdHRuYW1lLCBSSUF0dE5hbWUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbcmlp bmZvLT5ua2V5cyAtIDFdKSk7CisKKwkJYXBwZW5kU3RyaW5nSW5mbygmcXVlcnlidWYsICJERUxF VEUgRlJPTSAlcyVzIEZPUiBQT1JUSU9OIE9GICVzICgkJWQpIiwKKwkJCQkJCSBma19vbmx5LCBm a3JlbG5hbWUsIGF0dG5hbWUsIHJpaW5mby0+bmtleXMgKyAxKTsKKwkJcXVlcnlzZXAgPSAiV0hF UkUiOworCQlmb3IgKGludCBpID0gMDsgaSA8IHJpaW5mby0+bmtleXM7IGkrKykKKwkJeworCQkJ T2lkCQkJcGtfdHlwZSA9IFJJQXR0VHlwZShwa19yZWwsIHJpaW5mby0+cGtfYXR0bnVtc1tpXSk7 CisJCQlPaWQJCQlwa19jb2xsID0gUklBdHRDb2xsYXRpb24ocGtfcmVsLCByaWluZm8tPnBrX2F0 dG51bXNbaV0pOworCQkJT2lkCQkJZmtfdHlwZSA9IFJJQXR0VHlwZShma19yZWwsIHJpaW5mby0+ ZmtfYXR0bnVtc1tpXSk7CisJCQlPaWQJCQlma19jb2xsID0gUklBdHRDb2xsYXRpb24oZmtfcmVs LCByaWluZm8tPmZrX2F0dG51bXNbaV0pOworCisJCQlxdW90ZU9uZU5hbWUoYXR0bmFtZSwKKwkJ CQkJCSBSSUF0dE5hbWUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbaV0pKTsKKwkJCXNwcmlu dGYocGFyYW1uYW1lLCAiJCVkIiwgaSArIDEpOworCQkJcmlfR2VuZXJhdGVRdWFsKCZxdWVyeWJ1 ZiwgcXVlcnlzZXAsCisJCQkJCQkJcGFyYW1uYW1lLCBwa190eXBlLAorCQkJCQkJCXJpaW5mby0+ cGZfZXFfb3Byc1tpXSwKKwkJCQkJCQlhdHRuYW1lLCBma190eXBlKTsKKwkJCWlmIChwa19jb2xs ICE9IGZrX2NvbGwgJiYgIWdldF9jb2xsYXRpb25faXNkZXRlcm1pbmlzdGljKHBrX2NvbGwpKQor CQkJCXJpX0dlbmVyYXRlUXVhbENvbGxhdGlvbigmcXVlcnlidWYsIHBrX2NvbGwpOworCQkJcXVl cnlzZXAgPSAiQU5EIjsKKwkJCXF1ZXJ5b2lkc1tpXSA9IHBrX3R5cGU7CisJCX0KKworCQkvKiBT ZXQgYSBwYXJhbSBmb3IgRk9SIFBPUlRJT04gT0YgVE8vRlJPTSAqLworCQlxdWVyeW9pZHNbcmlp bmZvLT5ua2V5c10gPSBSSUF0dFR5cGUocGtfcmVsLCByaWluZm8tPnBrX2F0dG51bXNbcmlpbmZv LT5ua2V5cyAtIDFdKTsKKworCQkvKiBQcmVwYXJlIGFuZCBzYXZlIHRoZSBwbGFuICovCisJCXFw bGFuID0gcmlfUGxhbkNoZWNrKHF1ZXJ5YnVmLmRhdGEsIHJpaW5mby0+bmtleXMgKyAxLCBxdWVy eW9pZHMsCisJCQkJCQkJICZxa2V5LCBma19yZWwsIHBrX3JlbCk7CisJfQorCisJLyoKKwkgKiBX ZSBoYXZlIGEgcGxhbiBub3cuIEJ1aWxkIHVwIHRoZSBhcmd1bWVudHMgZnJvbSB0aGUga2V5IHZh bHVlcyBpbiB0aGUKKwkgKiBkZWxldGVkIFBLIHR1cGxlIGFuZCBkZWxldGUgdGhlIHJlZmVyZW5j aW5nIHJvd3MKKwkgKi8KKwlyaV9QZXJmb3JtQ2hlY2socmlpbmZvLCAmcWtleSwgcXBsYW4sCisJ CQkJCWZrX3JlbCwgcGtfcmVsLAorCQkJCQlvbGRzbG90LCBOVUxMLAorCQkJCQlyaWluZm8tPm5r ZXlzICsgMSwgdGFyZ2V0UmFuZ2UsCisJCQkJCWZhbHNlLAorCQkJCQl0cnVlLAkJLyogbXVzdCBk ZXRlY3QgbmV3IHJvd3MgKi8KKwkJCQkJU1BJX09LX0RFTEVURSk7CisKKwlpZiAoU1BJX2Zpbmlz aCgpICE9IFNQSV9PS19GSU5JU0gpCisJCWVsb2coRVJST1IsICJTUElfZmluaXNoIGZhaWxlZCIp OworCisJdGFibGVfY2xvc2UoZmtfcmVsLCBSb3dFeGNsdXNpdmVMb2NrKTsKKworCXJldHVybiBQ b2ludGVyR2V0RGF0dW0oTlVMTCk7Cit9CisKKy8qCisgKiBSSV9GS2V5X3BlcmlvZF9jYXNjYWRl X3VwZCAtCisgKgorICogQ2FzY2FkZWQgdXBkYXRlIGZvcmVpZ24ga2V5IHJlZmVyZW5jZXMgYXQg dXBkYXRlIGV2ZW50IG9uIHRlbXBvcmFsIFBLIHRhYmxlLgorICovCitEYXR1bQorUklfRktleV9w ZXJpb2RfY2FzY2FkZV91cGQoUEdfRlVOQ1RJT05fQVJHUykKK3sKKwlUcmlnZ2VyRGF0YSAqdHJp Z2RhdGEgPSAoVHJpZ2dlckRhdGEgKikgZmNpbmZvLT5jb250ZXh0OworCWNvbnN0IFJJX0NvbnN0 cmFpbnRJbmZvICpyaWluZm87CisJUmVsYXRpb24JZmtfcmVsOworCVJlbGF0aW9uCXBrX3JlbDsK KwlUdXBsZVRhYmxlU2xvdCAqb2xkc2xvdDsKKwlUdXBsZVRhYmxlU2xvdCAqbmV3c2xvdDsKKwlS SV9RdWVyeUtleSBxa2V5OworCVNQSVBsYW5QdHIJcXBsYW47CisJRGF0dW0JCXRhcmdldFJhbmdl OworCisJLyogQ2hlY2sgdGhhdCB0aGlzIGlzIGEgdmFsaWQgdHJpZ2dlciBjYWxsIG9uIHRoZSBy aWdodCB0aW1lIGFuZCBldmVudC4gKi8KKwlyaV9DaGVja1RyaWdnZXIoZmNpbmZvLCAiUklfRktl eV9wZXJpb2RfY2FzY2FkZV91cGQiLCBSSV9UUklHVFlQRV9VUERBVEUpOworCisJcmlpbmZvID0g cmlfRmV0Y2hDb25zdHJhaW50SW5mbyh0cmlnZGF0YS0+dGdfdHJpZ2dlciwKKwkJCQkJCQkJCXRy aWdkYXRhLT50Z19yZWxhdGlvbiwgdHJ1ZSk7CisKKwkvKgorCSAqIEdldCB0aGUgcmVsYXRpb24g ZGVzY3JpcHRvcnMgb2YgdGhlIEZLIGFuZCBQSyB0YWJsZXMgYW5kIHRoZSBuZXcgYW5kCisJICog b2xkIHR1cGxlLgorCSAqCisJICogZmtfcmVsIGlzIG9wZW5lZCBpbiBSb3dFeGNsdXNpdmVMb2Nr IG1vZGUgc2luY2UgdGhhdCdzIHdoYXQgb3VyCisJICogZXZlbnR1YWwgVVBEQVRFIHdpbGwgZ2V0 IG9uIGl0LgorCSAqLworCWZrX3JlbCA9IHRhYmxlX29wZW4ocmlpbmZvLT5ma19yZWxpZCwgUm93 RXhjbHVzaXZlTG9jayk7CisJcGtfcmVsID0gdHJpZ2RhdGEtPnRnX3JlbGF0aW9uOworCW5ld3Ns b3QgPSB0cmlnZGF0YS0+dGdfbmV3c2xvdDsKKwlvbGRzbG90ID0gdHJpZ2RhdGEtPnRnX3RyaWdz bG90OworCisJLyoKKwkgKiBEb24ndCBkZWxldGUgdGhhbiBtb3JlIHRoYW4gdGhlIFBLJ3MgZHVy YXRpb24sIHRyaW1tZWQgYnkgYW4gb3JpZ2luYWwKKwkgKiBGT1IgUE9SVElPTiBPRiBpZiBuZWNl c3NhcnkuCisJICovCisJdGFyZ2V0UmFuZ2UgPSByZXN0cmljdF9lbmZvcmNlZF9yYW5nZSh0cmln ZGF0YS0+dGdfdGVtcG9yYWwsIHJpaW5mbywgb2xkc2xvdCk7CisKKwlpZiAoU1BJX2Nvbm5lY3Qo KSAhPSBTUElfT0tfQ09OTkVDVCkKKwkJZWxvZyhFUlJPUiwgIlNQSV9jb25uZWN0IGZhaWxlZCIp OworCisJLyogRmV0Y2ggb3IgcHJlcGFyZSBhIHNhdmVkIHBsYW4gZm9yIHRoZSBjYXNjYWRlZCB1 cGRhdGUgKi8KKwlyaV9CdWlsZFF1ZXJ5S2V5KCZxa2V5LCByaWluZm8sIFJJX1BMQU5fUEVSSU9E X0NBU0NBREVfT05VUERBVEUpOworCisJaWYgKChxcGxhbiA9IHJpX0ZldGNoUHJlcGFyZWRQbGFu KCZxa2V5KSkgPT0gTlVMTCkKKwl7CisJCVN0cmluZ0luZm9EYXRhIHF1ZXJ5YnVmOworCQlTdHJp bmdJbmZvRGF0YSBxdWFsYnVmOworCQljaGFyCQlma3JlbG5hbWVbTUFYX1FVT1RFRF9SRUxfTkFN RV9MRU5dOworCQljaGFyCQlhdHRuYW1lW01BWF9RVU9URURfTkFNRV9MRU5dOworCQljaGFyCQlw YXJhbW5hbWVbMTZdOworCQljb25zdCBjaGFyICpxdWVyeXNlcDsKKwkJY29uc3QgY2hhciAqcXVh bHNlcDsKKwkJT2lkCQkJcXVlcnlvaWRzWzIgKiBSSV9NQVhfTlVNS0VZUyArIDFdOworCQljb25z dCBjaGFyICpma19vbmx5OworCisJCS8qIC0tLS0tLS0tLS0KKwkJICogVGhlIHF1ZXJ5IHN0cmlu ZyBidWlsdCBpcworCQkgKiAgVVBEQVRFIFtPTkxZXSA8Zmt0YWJsZT4KKwkJICoJCSAgRk9SIFBP UlRJT04gT0YgJGZrYXR0ICgkezJuKzF9KQorCQkgKgkJICBTRVQgZmthdHQxID0gJDEsIFssIC4u Ll0KKwkJICoJCSAgV0hFUkUgJG4gPSBma2F0dDEgW0FORCAuLi5dCisJCSAqIFRoZSB0eXBlIGlk J3MgZm9yIHRoZSAkIHBhcmFtZXRlcnMgYXJlIHRob3NlIG9mIHRoZQorCQkgKiBjb3JyZXNwb25k aW5nIFBLIGF0dHJpYnV0ZXMuICBOb3RlIHRoYXQgd2UgYXJlIGFzc3VtaW5nCisJCSAqIHRoZXJl IGlzIGFuIGFzc2lnbm1lbnQgY2FzdCBmcm9tIHRoZSBQSyB0byB0aGUgRksgdHlwZTsKKwkJICog ZWxzZSB0aGUgcGFyc2VyIHdpbGwgZmFpbC4KKwkJICogLS0tLS0tLS0tLQorCQkgKi8KKwkJaW5p dFN0cmluZ0luZm8oJnF1ZXJ5YnVmKTsKKwkJaW5pdFN0cmluZ0luZm8oJnF1YWxidWYpOworCQlm a19vbmx5ID0gZmtfcmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9QQVJUSVRJT05FRF9U QUJMRSA/CisJCQkiIiA6ICJPTkxZICI7CisJCXF1b3RlUmVsYXRpb25OYW1lKGZrcmVsbmFtZSwg ZmtfcmVsKTsKKwkJcXVvdGVPbmVOYW1lKGF0dG5hbWUsIFJJQXR0TmFtZShma19yZWwsIHJpaW5m by0+ZmtfYXR0bnVtc1tyaWluZm8tPm5rZXlzIC0gMV0pKTsKKworCQlhcHBlbmRTdHJpbmdJbmZv KCZxdWVyeWJ1ZiwgIlVQREFURSAlcyVzIEZPUiBQT1JUSU9OIE9GICVzICgkJWQpIFNFVCIsCisJ CQkJCQkgZmtfb25seSwgZmtyZWxuYW1lLCBhdHRuYW1lLCAyICogcmlpbmZvLT5ua2V5cyArIDEp OworCisJCXF1ZXJ5c2VwID0gIiI7CisJCXF1YWxzZXAgPSAiV0hFUkUiOworCQlmb3IgKGludCBp ID0gMCwgaiA9IHJpaW5mby0+bmtleXM7IGkgPCByaWluZm8tPm5rZXlzOyBpKyssIGorKykKKwkJ eworCQkJT2lkCQkJcGtfdHlwZSA9IFJJQXR0VHlwZShwa19yZWwsIHJpaW5mby0+cGtfYXR0bnVt c1tpXSk7CisJCQlPaWQJCQlwa19jb2xsID0gUklBdHRDb2xsYXRpb24ocGtfcmVsLCByaWluZm8t PnBrX2F0dG51bXNbaV0pOworCQkJT2lkCQkJZmtfdHlwZSA9IFJJQXR0VHlwZShma19yZWwsIHJp aW5mby0+ZmtfYXR0bnVtc1tpXSk7CisJCQlPaWQJCQlma19jb2xsID0gUklBdHRDb2xsYXRpb24o ZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbaV0pOworCisJCQlxdW90ZU9uZU5hbWUoYXR0bmFt ZSwKKwkJCQkJCSBSSUF0dE5hbWUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbaV0pKTsKKwor CQkJLyoKKwkJCSAqIERvbid0IHNldCB0aGUgdGVtcG9yYWwgY29sdW1uKHMpLiBGT1IgUE9SVElP TiBPRiB3aWxsIHRha2UgY2FyZQorCQkJICogb2YgdGhhdC4KKwkJCSAqLworCQkJaWYgKGkgPCBy aWluZm8tPm5rZXlzIC0gMSkKKwkJCQlhcHBlbmRTdHJpbmdJbmZvKCZxdWVyeWJ1ZiwKKwkJCQkJ CQkJICIlcyAlcyA9ICQlZCIsCisJCQkJCQkJCSBxdWVyeXNlcCwgYXR0bmFtZSwgaSArIDEpOwor CisJCQlzcHJpbnRmKHBhcmFtbmFtZSwgIiQlZCIsIGogKyAxKTsKKwkJCXJpX0dlbmVyYXRlUXVh bCgmcXVhbGJ1ZiwgcXVhbHNlcCwKKwkJCQkJCQlwYXJhbW5hbWUsIHBrX3R5cGUsCisJCQkJCQkJ cmlpbmZvLT5wZl9lcV9vcHJzW2ldLAorCQkJCQkJCWF0dG5hbWUsIGZrX3R5cGUpOworCQkJaWYg KHBrX2NvbGwgIT0gZmtfY29sbCAmJiAhZ2V0X2NvbGxhdGlvbl9pc2RldGVybWluaXN0aWMocGtf Y29sbCkpCisJCQkJcmlfR2VuZXJhdGVRdWFsQ29sbGF0aW9uKCZxdWVyeWJ1ZiwgcGtfY29sbCk7 CisJCQlxdWVyeXNlcCA9ICIsIjsKKwkJCXF1YWxzZXAgPSAiQU5EIjsKKwkJCXF1ZXJ5b2lkc1tp XSA9IHBrX3R5cGU7CisJCQlxdWVyeW9pZHNbal0gPSBwa190eXBlOworCQl9CisJCWFwcGVuZEJp bmFyeVN0cmluZ0luZm8oJnF1ZXJ5YnVmLCBxdWFsYnVmLmRhdGEsIHF1YWxidWYubGVuKTsKKwor CQkvKiBTZXQgYSBwYXJhbSBmb3IgRk9SIFBPUlRJT04gT0YgVE8vRlJPTSAqLworCQlxdWVyeW9p ZHNbMiAqIHJpaW5mby0+bmtleXNdID0gUklBdHRUeXBlKHBrX3JlbCwgcmlpbmZvLT5wa19hdHRu dW1zW3JpaW5mby0+bmtleXMgLSAxXSk7CisKKwkJLyogUHJlcGFyZSBhbmQgc2F2ZSB0aGUgcGxh biAqLworCQlxcGxhbiA9IHJpX1BsYW5DaGVjayhxdWVyeWJ1Zi5kYXRhLCAyICogcmlpbmZvLT5u a2V5cyArIDEsIHF1ZXJ5b2lkcywKKwkJCQkJCQkgJnFrZXksIGZrX3JlbCwgcGtfcmVsKTsKKwl9 CisKKwkvKgorCSAqIFdlIGhhdmUgYSBwbGFuIG5vdy4gUnVuIGl0IHRvIHVwZGF0ZSB0aGUgZXhp c3RpbmcgcmVmZXJlbmNlcy4KKwkgKi8KKwlyaV9QZXJmb3JtQ2hlY2socmlpbmZvLCAmcWtleSwg cXBsYW4sCisJCQkJCWZrX3JlbCwgcGtfcmVsLAorCQkJCQlvbGRzbG90LCBuZXdzbG90LAorCQkJ CQlyaWluZm8tPm5rZXlzICogMiArIDEsIHRhcmdldFJhbmdlLAorCQkJCQlmYWxzZSwKKwkJCQkJ dHJ1ZSwJCS8qIG11c3QgZGV0ZWN0IG5ldyByb3dzICovCisJCQkJCVNQSV9PS19VUERBVEUpOwor CisJaWYgKFNQSV9maW5pc2goKSAhPSBTUElfT0tfRklOSVNIKQorCQllbG9nKEVSUk9SLCAiU1BJ X2ZpbmlzaCBmYWlsZWQiKTsKKworCXRhYmxlX2Nsb3NlKGZrX3JlbCwgUm93RXhjbHVzaXZlTG9j ayk7CisKKwlyZXR1cm4gUG9pbnRlckdldERhdHVtKE5VTEwpOworfQorCisvKgorICogUklfRktl eV9wZXJpb2Rfc2V0bnVsbF9kZWwgLQorICoKKyAqIFNldCBmb3JlaWduIGtleSByZWZlcmVuY2Vz IHRvIE5VTEwgdmFsdWVzIGF0IGRlbGV0ZSBldmVudCBvbiBQSyB0YWJsZS4KKyAqLworRGF0dW0K K1JJX0ZLZXlfcGVyaW9kX3NldG51bGxfZGVsKFBHX0ZVTkNUSU9OX0FSR1MpCit7CisJLyogQ2hl Y2sgdGhhdCB0aGlzIGlzIGEgdmFsaWQgdHJpZ2dlciBjYWxsIG9uIHRoZSByaWdodCB0aW1lIGFu ZCBldmVudC4gKi8KKwlyaV9DaGVja1RyaWdnZXIoZmNpbmZvLCAiUklfRktleV9wZXJpb2Rfc2V0 bnVsbF9kZWwiLCBSSV9UUklHVFlQRV9ERUxFVEUpOworCisJLyogU2hhcmUgY29kZSB3aXRoIFVQ REFURSBjYXNlICovCisJcmV0dXJuIHRyaV9zZXQoKFRyaWdnZXJEYXRhICopIGZjaW5mby0+Y29u dGV4dCwgdHJ1ZSwgUklfVFJJR1RZUEVfREVMRVRFKTsKK30KKworLyoKKyAqIFJJX0ZLZXlfcGVy aW9kX3NldG51bGxfdXBkIC0KKyAqCisgKiBTZXQgZm9yZWlnbiBrZXkgcmVmZXJlbmNlcyB0byBO VUxMIGF0IHVwZGF0ZSBldmVudCBvbiBQSyB0YWJsZS4KKyAqLworRGF0dW0KK1JJX0ZLZXlfcGVy aW9kX3NldG51bGxfdXBkKFBHX0ZVTkNUSU9OX0FSR1MpCit7CisJLyogQ2hlY2sgdGhhdCB0aGlz IGlzIGEgdmFsaWQgdHJpZ2dlciBjYWxsIG9uIHRoZSByaWdodCB0aW1lIGFuZCBldmVudC4gKi8K KwlyaV9DaGVja1RyaWdnZXIoZmNpbmZvLCAiUklfRktleV9wZXJpb2Rfc2V0bnVsbF91cGQiLCBS SV9UUklHVFlQRV9VUERBVEUpOworCisJLyogU2hhcmUgY29kZSB3aXRoIERFTEVURSBjYXNlICov CisJcmV0dXJuIHRyaV9zZXQoKFRyaWdnZXJEYXRhICopIGZjaW5mby0+Y29udGV4dCwgdHJ1ZSwg UklfVFJJR1RZUEVfVVBEQVRFKTsKK30KKworLyoKKyAqIFJJX0ZLZXlfcGVyaW9kX3NldGRlZmF1 bHRfZGVsIC0KKyAqCisgKiBTZXQgZm9yZWlnbiBrZXkgcmVmZXJlbmNlcyB0byBkZWZhdWx0cyBh dCBkZWxldGUgZXZlbnQgb24gUEsgdGFibGUuCisgKi8KK0RhdHVtCitSSV9GS2V5X3BlcmlvZF9z ZXRkZWZhdWx0X2RlbChQR19GVU5DVElPTl9BUkdTKQoreworCS8qIENoZWNrIHRoYXQgdGhpcyBp cyBhIHZhbGlkIHRyaWdnZXIgY2FsbCBvbiB0aGUgcmlnaHQgdGltZSBhbmQgZXZlbnQuICovCisJ cmlfQ2hlY2tUcmlnZ2VyKGZjaW5mbywgIlJJX0ZLZXlfcGVyaW9kX3NldGRlZmF1bHRfZGVsIiwg UklfVFJJR1RZUEVfREVMRVRFKTsKKworCS8qIFNoYXJlIGNvZGUgd2l0aCBVUERBVEUgY2FzZSAq LworCXJldHVybiB0cmlfc2V0KChUcmlnZ2VyRGF0YSAqKSBmY2luZm8tPmNvbnRleHQsIGZhbHNl LCBSSV9UUklHVFlQRV9ERUxFVEUpOworfQorCisvKgorICogUklfRktleV9wZXJpb2Rfc2V0ZGVm YXVsdF91cGQgLQorICoKKyAqIFNldCBmb3JlaWduIGtleSByZWZlcmVuY2VzIHRvIGRlZmF1bHRz IGF0IHVwZGF0ZSBldmVudCBvbiBQSyB0YWJsZS4KKyAqLworRGF0dW0KK1JJX0ZLZXlfcGVyaW9k X3NldGRlZmF1bHRfdXBkKFBHX0ZVTkNUSU9OX0FSR1MpCit7CisJLyogQ2hlY2sgdGhhdCB0aGlz IGlzIGEgdmFsaWQgdHJpZ2dlciBjYWxsIG9uIHRoZSByaWdodCB0aW1lIGFuZCBldmVudC4gKi8K KwlyaV9DaGVja1RyaWdnZXIoZmNpbmZvLCAiUklfRktleV9wZXJpb2Rfc2V0ZGVmYXVsdF91cGQi LCBSSV9UUklHVFlQRV9VUERBVEUpOworCisJLyogU2hhcmUgY29kZSB3aXRoIERFTEVURSBjYXNl ICovCisJcmV0dXJuIHRyaV9zZXQoKFRyaWdnZXJEYXRhICopIGZjaW5mby0+Y29udGV4dCwgZmFs c2UsIFJJX1RSSUdUWVBFX1VQREFURSk7Cit9CisKKy8qCisgKiB0cmlfc2V0IC0KKyAqCisgKiBD b21tb24gY29kZSBmb3IgdGVtcG9yYWwgT04gREVMRVRFIFNFVCBOVUxMLCBPTiBERUxFVEUgU0VU IERFRkFVTFQsIE9OCisgKiBVUERBVEUgU0VUIE5VTEwsIGFuZCBPTiBVUERBVEUgU0VUIERFRkFV TFQuCisgKi8KK3N0YXRpYyBEYXR1bQordHJpX3NldChUcmlnZ2VyRGF0YSAqdHJpZ2RhdGEsIGJv b2wgaXNfc2V0X251bGwsIGludCB0Z2tpbmQpCit7CisJY29uc3QgUklfQ29uc3RyYWludEluZm8g KnJpaW5mbzsKKwlSZWxhdGlvbglma19yZWw7CisJUmVsYXRpb24JcGtfcmVsOworCVR1cGxlVGFi bGVTbG90ICpvbGRzbG90OworCVJJX1F1ZXJ5S2V5IHFrZXk7CisJU1BJUGxhblB0cglxcGxhbjsK KwlEYXR1bQkJdGFyZ2V0UmFuZ2U7CisJaW50MzIJCXF1ZXJ5bm87CisKKwlyaWluZm8gPSByaV9G ZXRjaENvbnN0cmFpbnRJbmZvKHRyaWdkYXRhLT50Z190cmlnZ2VyLAorCQkJCQkJCQkJdHJpZ2Rh dGEtPnRnX3JlbGF0aW9uLCB0cnVlKTsKKworCS8qCisJICogR2V0IHRoZSByZWxhdGlvbiBkZXNj cmlwdG9ycyBvZiB0aGUgRksgYW5kIFBLIHRhYmxlcyBhbmQgdGhlIG9sZCB0dXBsZS4KKwkgKgor CSAqIGZrX3JlbCBpcyBvcGVuZWQgaW4gUm93RXhjbHVzaXZlTG9jayBtb2RlIHNpbmNlIHRoYXQn cyB3aGF0IG91cgorCSAqIGV2ZW50dWFsIFVQREFURSB3aWxsIGdldCBvbiBpdC4KKwkgKi8KKwlm a19yZWwgPSB0YWJsZV9vcGVuKHJpaW5mby0+ZmtfcmVsaWQsIFJvd0V4Y2x1c2l2ZUxvY2spOwor CXBrX3JlbCA9IHRyaWdkYXRhLT50Z19yZWxhdGlvbjsKKwlvbGRzbG90ID0gdHJpZ2RhdGEtPnRn X3RyaWdzbG90OworCisJLyoKKwkgKiBEb24ndCBTRVQgTlVMTC9ERUZBVUxUIG1vcmUgdGhhbiB0 aGUgUEsncyBkdXJhdGlvbiwgdHJpbW1lZCBieSBhbgorCSAqIG9yaWdpbmFsIEZPUiBQT1JUSU9O IE9GIGlmIG5lY2Vzc2FyeS4KKwkgKi8KKwl0YXJnZXRSYW5nZSA9IHJlc3RyaWN0X2VuZm9yY2Vk X3JhbmdlKHRyaWdkYXRhLT50Z190ZW1wb3JhbCwgcmlpbmZvLCBvbGRzbG90KTsKKworCWlmIChT UElfY29ubmVjdCgpICE9IFNQSV9PS19DT05ORUNUKQorCQllbG9nKEVSUk9SLCAiU1BJX2Nvbm5l Y3QgZmFpbGVkIik7CisKKwkvKgorCSAqIEZldGNoIG9yIHByZXBhcmUgYSBzYXZlZCBwbGFuIGZv ciB0aGUgdHJpZ2dlci4KKwkgKi8KKwlzd2l0Y2ggKHRna2luZCkKKwl7CisJCWNhc2UgUklfVFJJ R1RZUEVfVVBEQVRFOgorCQkJcXVlcnlubyA9IGlzX3NldF9udWxsCisJCQkJPyBSSV9QTEFOX1BF UklPRF9TRVROVUxMX09OVVBEQVRFCisJCQkJOiBSSV9QTEFOX1BFUklPRF9TRVRERUZBVUxUX09O VVBEQVRFOworCQkJYnJlYWs7CisJCWNhc2UgUklfVFJJR1RZUEVfREVMRVRFOgorCQkJcXVlcnlu byA9IGlzX3NldF9udWxsCisJCQkJPyBSSV9QTEFOX1BFUklPRF9TRVROVUxMX09OREVMRVRFCisJ CQkJOiBSSV9QTEFOX1BFUklPRF9TRVRERUZBVUxUX09OREVMRVRFOworCQkJYnJlYWs7CisJCWRl ZmF1bHQ6CisJCQllbG9nKEVSUk9SLCAiaW52YWxpZCB0Z2tpbmQgcGFzc2VkIHRvIHJpX3NldCIp OworCX0KKworCXJpX0J1aWxkUXVlcnlLZXkoJnFrZXksIHJpaW5mbywgcXVlcnlubyk7CisKKwlp ZiAoKHFwbGFuID0gcmlfRmV0Y2hQcmVwYXJlZFBsYW4oJnFrZXkpKSA9PSBOVUxMKQorCXsKKwkJ U3RyaW5nSW5mb0RhdGEgcXVlcnlidWY7CisJCVN0cmluZ0luZm9EYXRhIHF1YWxidWY7CisJCWNo YXIJCWZrcmVsbmFtZVtNQVhfUVVPVEVEX1JFTF9OQU1FX0xFTl07CisJCWNoYXIJCWF0dG5hbWVb TUFYX1FVT1RFRF9OQU1FX0xFTl07CisJCWNoYXIJCXBhcmFtbmFtZVsxNl07CisJCWNvbnN0IGNo YXIgKnF1ZXJ5c2VwOworCQljb25zdCBjaGFyICpxdWFsc2VwOworCQlPaWQJCQlxdWVyeW9pZHNb UklfTUFYX05VTUtFWVMgKyAxXTsJLyogKzEgZm9yIEZPUiBQT1JUSU9OIE9GICovCisJCWNvbnN0 IGNoYXIgKmZrX29ubHk7CisJCWludAkJCW51bV9jb2xzX3RvX3NldDsKKwkJY29uc3QgaW50MTYg KnNldF9jb2xzOworCisJCXN3aXRjaCAodGdraW5kKQorCQl7CisJCQljYXNlIFJJX1RSSUdUWVBF X1VQREFURToKKwkJCQkvKiAtMSBzbyB3ZSBsZXQgRk9SIFBPUlRJT04gT0Ygc2V0IHRoZSByYW5n ZS4gKi8KKwkJCQludW1fY29sc190b19zZXQgPSByaWluZm8tPm5rZXlzIC0gMTsKKwkJCQlzZXRf Y29scyA9IHJpaW5mby0+ZmtfYXR0bnVtczsKKwkJCQlicmVhazsKKwkJCWNhc2UgUklfVFJJR1RZ UEVfREVMRVRFOgorCisJCQkJLyoKKwkJCQkgKiBJZiBjb25mZGVsc2V0Y29scyBhcmUgcHJlc2Vu dCwgdGhlbiB3ZSBvbmx5IHVwZGF0ZSB0aGUKKwkJCQkgKiBjb2x1bW5zIHNwZWNpZmllZCBpbiB0 aGF0IGFycmF5LCBvdGhlcndpc2Ugd2UgdXBkYXRlIGFsbAorCQkJCSAqIHRoZSByZWZlcmVuY2lu ZyBjb2x1bW5zLgorCQkJCSAqLworCQkJCWlmIChyaWluZm8tPm5kZWxzZXRjb2xzICE9IDApCisJ CQkJeworCQkJCQludW1fY29sc190b19zZXQgPSByaWluZm8tPm5kZWxzZXRjb2xzOworCQkJCQlz ZXRfY29scyA9IHJpaW5mby0+Y29uZmRlbHNldGNvbHM7CisJCQkJfQorCQkJCWVsc2UKKwkJCQl7 CisJCQkJCS8qIC0xIHNvIHdlIGxldCBGT1IgUE9SVElPTiBPRiBzZXQgdGhlIHJhbmdlLiAqLwor CQkJCQludW1fY29sc190b19zZXQgPSByaWluZm8tPm5rZXlzIC0gMTsKKwkJCQkJc2V0X2NvbHMg PSByaWluZm8tPmZrX2F0dG51bXM7CisJCQkJfQorCQkJCWJyZWFrOworCQkJZGVmYXVsdDoKKwkJ CQllbG9nKEVSUk9SLCAiaW52YWxpZCB0Z2tpbmQgcGFzc2VkIHRvIHJpX3NldCIpOworCQl9CisK KwkJLyogLS0tLS0tLS0tLQorCQkgKiBUaGUgcXVlcnkgc3RyaW5nIGJ1aWx0IGlzCisJCSAqCVVQ REFURSBbT05MWV0gPGZrdGFibGU+CisJCSAqCQkJRk9SIFBPUlRJT04gT0YgJGZrYXR0ICgke24r MX0pCisJCSAqCQkJU0VUIGZrYXR0MSA9IHtOVUxMfERFRkFVTFR9IFssIC4uLl0KKwkJICoJCQlX SEVSRSAkMSA9IGZrYXR0MSBbQU5EIC4uLl0KKwkJICogVGhlIHR5cGUgaWQncyBmb3IgdGhlICQg cGFyYW1ldGVycyBhcmUgdGhvc2Ugb2YgdGhlCisJCSAqIGNvcnJlc3BvbmRpbmcgUEsgYXR0cmli dXRlcy4KKwkJICogLS0tLS0tLS0tLQorCQkgKi8KKwkJaW5pdFN0cmluZ0luZm8oJnF1ZXJ5YnVm KTsKKwkJaW5pdFN0cmluZ0luZm8oJnF1YWxidWYpOworCQlma19vbmx5ID0gZmtfcmVsLT5yZF9y ZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9QQVJUSVRJT05FRF9UQUJMRSA/CisJCQkiIiA6ICJPTkxZ ICI7CisJCXF1b3RlUmVsYXRpb25OYW1lKGZrcmVsbmFtZSwgZmtfcmVsKTsKKwkJcXVvdGVPbmVO YW1lKGF0dG5hbWUsIFJJQXR0TmFtZShma19yZWwsIHJpaW5mby0+ZmtfYXR0bnVtc1tyaWluZm8t Pm5rZXlzIC0gMV0pKTsKKworCQlhcHBlbmRTdHJpbmdJbmZvKCZxdWVyeWJ1ZiwgIlVQREFURSAl cyVzIEZPUiBQT1JUSU9OIE9GICVzICgkJWQpIFNFVCIsCisJCQkJCQkgZmtfb25seSwgZmtyZWxu YW1lLCBhdHRuYW1lLCByaWluZm8tPm5rZXlzICsgMSk7CisKKwkJLyoKKwkJICogQWRkIGFzc2ln bm1lbnQgY2xhdXNlcworCQkgKi8KKwkJcXVlcnlzZXAgPSAiIjsKKwkJZm9yIChpbnQgaSA9IDA7 IGkgPCBudW1fY29sc190b19zZXQ7IGkrKykKKwkJeworCQkJcXVvdGVPbmVOYW1lKGF0dG5hbWUs IFJJQXR0TmFtZShma19yZWwsIHNldF9jb2xzW2ldKSk7CisJCQlhcHBlbmRTdHJpbmdJbmZvKCZx dWVyeWJ1ZiwKKwkJCQkJCQkgIiVzICVzID0gJXMiLAorCQkJCQkJCSBxdWVyeXNlcCwgYXR0bmFt ZSwKKwkJCQkJCQkgaXNfc2V0X251bGwgPyAiTlVMTCIgOiAiREVGQVVMVCIpOworCQkJcXVlcnlz ZXAgPSAiLCI7CisJCX0KKworCQkvKgorCQkgKiBBZGQgV0hFUkUgY2xhdXNlCisJCSAqLworCQlx dWFsc2VwID0gIldIRVJFIjsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCByaWluZm8tPm5rZXlzOyBp KyspCisJCXsKKwkJCU9pZAkJCXBrX3R5cGUgPSBSSUF0dFR5cGUocGtfcmVsLCByaWluZm8tPnBr X2F0dG51bXNbaV0pOworCQkJT2lkCQkJZmtfdHlwZSA9IFJJQXR0VHlwZShma19yZWwsIHJpaW5m by0+ZmtfYXR0bnVtc1tpXSk7CisJCQlPaWQJCQlwa19jb2xsID0gUklBdHRDb2xsYXRpb24ocGtf cmVsLCByaWluZm8tPnBrX2F0dG51bXNbaV0pOworCQkJT2lkCQkJZmtfY29sbCA9IFJJQXR0Q29s bGF0aW9uKGZrX3JlbCwgcmlpbmZvLT5ma19hdHRudW1zW2ldKTsKKworCQkJcXVvdGVPbmVOYW1l KGF0dG5hbWUsCisJCQkJCQkgUklBdHROYW1lKGZrX3JlbCwgcmlpbmZvLT5ma19hdHRudW1zW2ld KSk7CisKKwkJCXNwcmludGYocGFyYW1uYW1lLCAiJCVkIiwgaSArIDEpOworCQkJcmlfR2VuZXJh dGVRdWFsKCZxdWVyeWJ1ZiwgcXVhbHNlcCwKKwkJCQkJCQlwYXJhbW5hbWUsIHBrX3R5cGUsCisJ CQkJCQkJcmlpbmZvLT5wZl9lcV9vcHJzW2ldLAorCQkJCQkJCWF0dG5hbWUsIGZrX3R5cGUpOwor CQkJaWYgKHBrX2NvbGwgIT0gZmtfY29sbCAmJiAhZ2V0X2NvbGxhdGlvbl9pc2RldGVybWluaXN0 aWMocGtfY29sbCkpCisJCQkJcmlfR2VuZXJhdGVRdWFsQ29sbGF0aW9uKCZxdWVyeWJ1ZiwgcGtf Y29sbCk7CisJCQlxdWFsc2VwID0gIkFORCI7CisJCQlxdWVyeW9pZHNbaV0gPSBwa190eXBlOwor CQl9CisKKwkJLyogU2V0IGEgcGFyYW0gZm9yIEZPUiBQT1JUSU9OIE9GIFRPL0ZST00gKi8KKwkJ cXVlcnlvaWRzW3JpaW5mby0+bmtleXNdID0gUklBdHRUeXBlKHBrX3JlbCwgcmlpbmZvLT5wa19h dHRudW1zW3JpaW5mby0+bmtleXMgLSAxXSk7CisKKwkJLyogUHJlcGFyZSBhbmQgc2F2ZSB0aGUg cGxhbiAqLworCQlxcGxhbiA9IHJpX1BsYW5DaGVjayhxdWVyeWJ1Zi5kYXRhLCByaWluZm8tPm5r ZXlzICsgMSwgcXVlcnlvaWRzLAorCQkJCQkJCSAmcWtleSwgZmtfcmVsLCBwa19yZWwpOworCX0K KworCS8qCisJICogV2UgaGF2ZSBhIHBsYW4gbm93LiBSdW4gaXQgdG8gdXBkYXRlIHRoZSBleGlz dGluZyByZWZlcmVuY2VzLgorCSAqLworCXJpX1BlcmZvcm1DaGVjayhyaWluZm8sICZxa2V5LCBx cGxhbiwKKwkJCQkJZmtfcmVsLCBwa19yZWwsCisJCQkJCW9sZHNsb3QsIE5VTEwsCisJCQkJCXJp aW5mby0+bmtleXMgKyAxLCB0YXJnZXRSYW5nZSwKKwkJCQkJZmFsc2UsCisJCQkJCXRydWUsCQkv KiBtdXN0IGRldGVjdCBuZXcgcm93cyAqLworCQkJCQlTUElfT0tfVVBEQVRFKTsKKworCWlmIChT UElfZmluaXNoKCkgIT0gU1BJX09LX0ZJTklTSCkKKwkJZWxvZyhFUlJPUiwgIlNQSV9maW5pc2gg ZmFpbGVkIik7CisKKwl0YWJsZV9jbG9zZShma19yZWwsIFJvd0V4Y2x1c2l2ZUxvY2spOworCisJ aWYgKGlzX3NldF9udWxsKQorCQlyZXR1cm4gUG9pbnRlckdldERhdHVtKE5VTEwpOworCWVsc2UK Kwl7CisJCS8qCisJCSAqIElmIHdlIGp1c3QgZGVsZXRlZCBvciB1cGRhdGVkIHRoZSBQSyByb3cg d2hvc2Uga2V5IHdhcyBlcXVhbCB0byB0aGUKKwkJICogRksgY29sdW1ucycgZGVmYXVsdCB2YWx1 ZXMsIGFuZCBhIHJlZmVyZW5jaW5nIHJvdyBleGlzdHMgaW4gdGhlIEZLCisJCSAqIHRhYmxlLCB3 ZSB3b3VsZCBoYXZlIHVwZGF0ZWQgdGhhdCByb3cgdG8gdGhlIHNhbWUgdmFsdWVzIGl0IGFscmVh ZHkKKwkJICogaGFkIC0tLSBhbmQgUklfRktleV9ma191cGRfY2hlY2tfcmVxdWlyZWQgd291bGQg aGVuY2UgYmVsaWV2ZSBubworCQkgKiBjaGVjayBpcyBuZWNlc3NhcnkuICBTbyB3ZSBuZWVkIHRv IGRvIGFub3RoZXIgbG9va3VwIG5vdyBhbmQgaW4KKwkJICogY2FzZSBhIHJlZmVyZW5jZSBzdGls bCBleGlzdHMsIGFib3J0IHRoZSBvcGVyYXRpb24uICBUaGF0IGlzCisJCSAqIGFscmVhZHkgaW1w bGVtZW50ZWQgaW4gdGhlIE5PIEFDVElPTiB0cmlnZ2VyLCBzbyBqdXN0IHJ1biBpdC4gKFRoaXMK KwkJICogcmVjaGVjayBpcyBvbmx5IG5lZWRlZCBpbiB0aGUgU0VUIERFRkFVTFQgY2FzZSwgc2lu Y2UgQ0FTQ0FERSB3b3VsZAorCQkgKiByZW1vdmUgc3VjaCByb3dzIGluIGNhc2Ugb2YgYSBERUxF VEUgb3BlcmF0aW9uIG9yIHdvdWxkIGNoYW5nZSB0aGUKKwkJICogRksga2V5IHZhbHVlcyBpbiBj YXNlIG9mIGFuIFVQREFURSwgd2hpbGUgU0VUIE5VTEwgaXMgY2VydGFpbiB0bworCQkgKiByZXN1 bHQgaW4gcm93cyB0aGF0IHNhdGlzZnkgdGhlIEZLIGNvbnN0cmFpbnQuKQorCQkgKi8KKwkJcmV0 dXJuIHJpX3Jlc3RyaWN0KHRyaWdkYXRhLCB0cnVlKTsKKwl9Cit9CisKIC8qCiAgKiBSSV9GS2V5 X3BrX3VwZF9jaGVja19yZXF1aXJlZCAtCiAgKgpAQCAtMjQ4Nyw2ICszMDQwLDcgQEAgcmlfUGVy Zm9ybUNoZWNrKGNvbnN0IFJJX0NvbnN0cmFpbnRJbmZvICpyaWluZm8sCiAJCQkJUklfUXVlcnlL ZXkgKnFrZXksIFNQSVBsYW5QdHIgcXBsYW4sCiAJCQkJUmVsYXRpb24gZmtfcmVsLCBSZWxhdGlv biBwa19yZWwsCiAJCQkJVHVwbGVUYWJsZVNsb3QgKm9sZHNsb3QsIFR1cGxlVGFibGVTbG90ICpu ZXdzbG90LAorCQkJCWludCBwZXJpb2RQYXJhbSwgRGF0dW0gcGVyaW9kLAogCQkJCWJvb2wgaXNf cmVzdHJpY3QsCiAJCQkJYm9vbCBkZXRlY3ROZXdSb3dzLCBpbnQgZXhwZWN0X09LKQogewpAQCAt MjQ5OSw4ICszMDUzLDggQEAgcmlfUGVyZm9ybUNoZWNrKGNvbnN0IFJJX0NvbnN0cmFpbnRJbmZv ICpyaWluZm8sCiAJaW50CQkJc3BpX3Jlc3VsdDsKIAlPaWQJCQlzYXZlX3VzZXJpZDsKIAlpbnQJ CQlzYXZlX3NlY19jb250ZXh0OwotCURhdHVtCQl2YWxzW1JJX01BWF9OVU1LRVlTICogMl07Ci0J Y2hhcgkJbnVsbHNbUklfTUFYX05VTUtFWVMgKiAyXTsKKwlEYXR1bQkJdmFsc1tSSV9NQVhfTlVN S0VZUyAqIDIgKyAxXTsKKwljaGFyCQludWxsc1tSSV9NQVhfTlVNS0VZUyAqIDIgKyAxXTsKIAog CS8qCiAJICogVXNlIHRoZSBxdWVyeSB0eXBlIGNvZGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhl IHF1ZXJ5IGlzIHJ1biBhZ2FpbnN0CkBAIC0yNTQzLDYgKzMwOTcsMTIgQEAgcmlfUGVyZm9ybUNo ZWNrKGNvbnN0IFJJX0NvbnN0cmFpbnRJbmZvICpyaWluZm8sCiAJCXJpX0V4dHJhY3RWYWx1ZXMo c291cmNlX3JlbCwgb2xkc2xvdCwgcmlpbmZvLCBzb3VyY2VfaXNfcGssCiAJCQkJCQkgdmFscywg bnVsbHMpOwogCX0KKwkvKiBBZGQvcmVwbGFjZSBhIHF1ZXJ5IHBhcmFtIGZvciB0aGUgUEVSSU9E IGlmIG5lZWRlZCAqLworCWlmIChwZXJpb2QpCisJeworCQl2YWxzW3BlcmlvZFBhcmFtIC0gMV0g PSBwZXJpb2Q7CisJCW51bGxzW3BlcmlvZFBhcmFtIC0gMV0gPSAnICc7CisJfQogCiAJLyoKIAkg KiBJbiBSRUFEIENPTU1JVFRFRCBtb2RlLCB3ZSBqdXN0IG5lZWQgdG8gdXNlIGFuIHVwLXRvLWRh dGUgcmVndWxhcgpAQCAtMzIyMyw2ICszNzgzLDEyIEBAIFJJX0ZLZXlfdHJpZ2dlcl90eXBlKE9p ZCB0Z2ZvaWQpCiAJCWNhc2UgRl9SSV9GS0VZX1NFVERFRkFVTFRfVVBEOgogCQljYXNlIEZfUklf RktFWV9OT0FDVElPTl9ERUw6CiAJCWNhc2UgRl9SSV9GS0VZX05PQUNUSU9OX1VQRDoKKwkJY2Fz ZSBGX1JJX0ZLRVlfUEVSSU9EX0NBU0NBREVfREVMOgorCQljYXNlIEZfUklfRktFWV9QRVJJT0Rf Q0FTQ0FERV9VUEQ6CisJCWNhc2UgRl9SSV9GS0VZX1BFUklPRF9TRVROVUxMX0RFTDoKKwkJY2Fz ZSBGX1JJX0ZLRVlfUEVSSU9EX1NFVE5VTExfVVBEOgorCQljYXNlIEZfUklfRktFWV9QRVJJT0Rf U0VUREVGQVVMVF9ERUw6CisJCWNhc2UgRl9SSV9GS0VZX1BFUklPRF9TRVRERUZBVUxUX1VQRDoK IAkJCXJldHVybiBSSV9UUklHR0VSX1BLOwogCiAJCWNhc2UgRl9SSV9GS0VZX0NIRUNLX0lOUzoK QEAgLTMyMzIsMyArMzc5OCw1MCBAQCBSSV9GS2V5X3RyaWdnZXJfdHlwZShPaWQgdGdmb2lkKQog CiAJcmV0dXJuIFJJX1RSSUdHRVJfTk9ORTsKIH0KKworLyoKKyAqIGZwb190YXJnZXRzX3BrX3Jh bmdlCisgKgorICogUmV0dXJucyB0cnVlIGlmZiB0aGUgcHJpbWFyeSBrZXkgcmVmZXJlbmNlZCBi eSByaWluZm8gaW5jbHVkZXMgdGhlIHJhbmdlCisgKiBjb2x1bW4gdGFyZ2V0ZWQgYnkgdGhlIEZP UiBQT1JUSU9OIE9GIGNsYXVzZSAoYWNjb3JkaW5nIHRvIHRnX3RlbXBvcmFsKS4KKyAqLworc3Rh dGljIGJvb2wKK2Zwb190YXJnZXRzX3BrX3JhbmdlKGNvbnN0IEZvclBvcnRpb25PZlN0YXRlICp0 Z190ZW1wb3JhbCwgY29uc3QgUklfQ29uc3RyYWludEluZm8gKnJpaW5mbykKK3sKKwlpZiAodGdf dGVtcG9yYWwgPT0gTlVMTCkKKwkJcmV0dXJuIGZhbHNlOworCisJcmV0dXJuIHJpaW5mby0+cGtf YXR0bnVtc1tyaWluZm8tPm5rZXlzIC0gMV0gPT0gdGdfdGVtcG9yYWwtPmZwX3JhbmdlQXR0bm87 Cit9CisKKy8qCisgKiByZXN0cmljdF9lbmZvcmNlZF9yYW5nZSAtCisgKgorICogUmV0dXJucyBh IERhdHVtIG9mIFJhbmdlVHlwZVAgaG9sZGluZyB0aGUgYXBwcm9wcmlhdGUgdGltZXNwYW4KKyAq IHRvIHRhcmdldCBjaGlsZCByZWNvcmRzIHdoZW4gd2UgUkVTVFJJQ1QvQ0FTQ0FERS9TRVQgTlVM TC9TRVQgREVGQVVMVC4KKyAqCisgKiBJbiBhIG5vcm1hbCBVUERBVEUvREVMRVRFIHRoaXMgc2hv dWxkIGJlIHRoZSByZWZlcmVuY2VkIHJvdydzIG93biB2YWxpZCB0aW1lLAorICogYnV0IGlmIHRo ZXJlIHdhcyBhIEZPUiBQT1JUSU9OIE9GIGNsYXVzZSwgdGhlbiB3ZSBzaG91bGQgdXNlIHRoYXQg dG8KKyAqIHRyaW0gZG93biB0aGUgc3BhbiBmdXJ0aGVyLgorICovCitzdGF0aWMgRGF0dW0KK3Jl c3RyaWN0X2VuZm9yY2VkX3JhbmdlKGNvbnN0IEZvclBvcnRpb25PZlN0YXRlICp0Z190ZW1wb3Jh bCwgY29uc3QgUklfQ29uc3RyYWludEluZm8gKnJpaW5mbywgVHVwbGVUYWJsZVNsb3QgKm9sZHNs b3QpCit7CisJRGF0dW0JCXBrUmVjb3JkUmFuZ2U7CisJYm9vbAkJaXNudWxsOworCUF0dHJOdW1i ZXIJYXR0bm8gPSByaWluZm8tPnBrX2F0dG51bXNbcmlpbmZvLT5ua2V5cyAtIDFdOworCisJcGtS ZWNvcmRSYW5nZSA9IHNsb3RfZ2V0YXR0cihvbGRzbG90LCBhdHRubywgJmlzbnVsbCk7CisJaWYg KGlzbnVsbCkKKwkJZWxvZyhFUlJPUiwgImFwcGxpY2F0aW9uIHRpbWUgc2hvdWxkIG5vdCBiZSBu dWxsIik7CisKKwlpZiAoZnBvX3RhcmdldHNfcGtfcmFuZ2UodGdfdGVtcG9yYWwsIHJpaW5mbykp CisJeworCQlpZiAoIU9pZElzVmFsaWQocmlpbmZvLT5wZXJpb2RfaW50ZXJzZWN0X3Byb2MpKQor CQkJZWxvZyhFUlJPUiwgImludmFsaWQgaW50ZXJzZWN0IHN1cHBvcnQgZnVuY3Rpb24iKTsKKwor CQlyZXR1cm4gT2lkRnVuY3Rpb25DYWxsMihyaWluZm8tPnBlcmlvZF9pbnRlcnNlY3RfcHJvYywg cGtSZWNvcmRSYW5nZSwgdGdfdGVtcG9yYWwtPmZwX3RhcmdldFJhbmdlKTsKKwl9CisJZWxzZQor CQlyZXR1cm4gcGtSZWNvcmRSYW5nZTsKK30KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFs b2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CmluZGV4IDE2 ODU5YThjZmE3Li41YmJkZmJlNGRjYiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBAIC00MTIw LDYgKzQxMjAsMjggQEAKICAgcHJvcmV0dHlwZSA9PiAndHJpZ2dlcicsIHByb2FyZ3R5cGVzID0+ ICcnLAogICBwcm9zcmMgPT4gJ1JJX0ZLZXlfbm9hY3Rpb25fdXBkJyB9LAogCisjIFRlbXBvcmFs IHJlZmVyZW50aWFsIGludGVncml0eSBjb25zdHJhaW50IHRyaWdnZXJzCit7IG9pZCA9PiAnNjEy NCcsIGRlc2NyID0+ICd0ZW1wb3JhbCByZWZlcmVudGlhbCBpbnRlZ3JpdHkgT04gREVMRVRFIENB U0NBREUnLAorICBwcm9uYW1lID0+ICdSSV9GS2V5X3BlcmlvZF9jYXNjYWRlX2RlbCcsIHByb3Zv bGF0aWxlID0+ICd2JywgcHJvcmV0dHlwZSA9PiAndHJpZ2dlcicsCisgIHByb2FyZ3R5cGVzID0+ ICcnLCBwcm9zcmMgPT4gJ1JJX0ZLZXlfcGVyaW9kX2Nhc2NhZGVfZGVsJyB9LAoreyBvaWQgPT4g JzYxMjUnLCBkZXNjciA9PiAndGVtcG9yYWwgcmVmZXJlbnRpYWwgaW50ZWdyaXR5IE9OIFVQREFU RSBDQVNDQURFJywKKyAgcHJvbmFtZSA9PiAnUklfRktleV9wZXJpb2RfY2FzY2FkZV91cGQnLCBw cm92b2xhdGlsZSA9PiAndicsIHByb3JldHR5cGUgPT4gJ3RyaWdnZXInLAorICBwcm9hcmd0eXBl cyA9PiAnJywgcHJvc3JjID0+ICdSSV9GS2V5X3BlcmlvZF9jYXNjYWRlX3VwZCcgfSwKK3sgb2lk ID0+ICc2MTI4JywgZGVzY3IgPT4gJ3RlbXBvcmFsIHJlZmVyZW50aWFsIGludGVncml0eSBPTiBE RUxFVEUgU0VUIE5VTEwnLAorICBwcm9uYW1lID0+ICdSSV9GS2V5X3BlcmlvZF9zZXRudWxsX2Rl bCcsIHByb3ZvbGF0aWxlID0+ICd2JywgcHJvcmV0dHlwZSA9PiAndHJpZ2dlcicsCisgIHByb2Fy Z3R5cGVzID0+ICcnLCBwcm9zcmMgPT4gJ1JJX0ZLZXlfcGVyaW9kX3NldG51bGxfZGVsJyB9LAor eyBvaWQgPT4gJzYxMjknLCBkZXNjciA9PiAndGVtcG9yYWwgcmVmZXJlbnRpYWwgaW50ZWdyaXR5 IE9OIFVQREFURSBTRVQgTlVMTCcsCisgIHByb25hbWUgPT4gJ1JJX0ZLZXlfcGVyaW9kX3NldG51 bGxfdXBkJywgcHJvdm9sYXRpbGUgPT4gJ3YnLCBwcm9yZXR0eXBlID0+ICd0cmlnZ2VyJywKKyAg cHJvYXJndHlwZXMgPT4gJycsIHByb3NyYyA9PiAnUklfRktleV9wZXJpb2Rfc2V0bnVsbF91cGQn IH0sCit7IG9pZCA9PiAnNjEzMCcsIGRlc2NyID0+ICd0ZW1wb3JhbCByZWZlcmVudGlhbCBpbnRl Z3JpdHkgT04gREVMRVRFIFNFVCBERUZBVUxUJywKKyAgcHJvbmFtZSA9PiAnUklfRktleV9wZXJp b2Rfc2V0ZGVmYXVsdF9kZWwnLCBwcm92b2xhdGlsZSA9PiAndicsCisgIHByb3JldHR5cGUgPT4g J3RyaWdnZXInLCBwcm9hcmd0eXBlcyA9PiAnJywKKyAgcHJvc3JjID0+ICdSSV9GS2V5X3Blcmlv ZF9zZXRkZWZhdWx0X2RlbCcgfSwKK3sgb2lkID0+ICc2MTMxJywgZGVzY3IgPT4gJ3RlbXBvcmFs IHJlZmVyZW50aWFsIGludGVncml0eSBPTiBVUERBVEUgU0VUIERFRkFVTFQnLAorICBwcm9uYW1l ID0+ICdSSV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0X3VwZCcsIHByb3ZvbGF0aWxlID0+ICd2JywK KyAgcHJvcmV0dHlwZSA9PiAndHJpZ2dlcicsIHByb2FyZ3R5cGVzID0+ICcnLAorICBwcm9zcmMg PT4gJ1JJX0ZLZXlfcGVyaW9kX3NldGRlZmF1bHRfdXBkJyB9LAorCiB7IG9pZCA9PiAnMTY2Nics CiAgIHByb25hbWUgPT4gJ3ZhcmJpdGVxJywgcHJvbGVha3Byb29mID0+ICd0JywgcHJvcmV0dHlw ZSA9PiAnYm9vbCcsCiAgIHByb2FyZ3R5cGVzID0+ICd2YXJiaXQgdmFyYml0JywgcHJvc3JjID0+ ICdiaXRlcScgfSwKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvYnRyZWVf aW5kZXgub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9idHJlZV9pbmRleC5vdXQKaW5k ZXggMjFkYzliNTc4M2EuLmMzYmY5NDc5N2U3IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL2J0cmVlX2luZGV4Lm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2J0cmVlX2luZGV4Lm91dApAQCAtNDU0LDE0ICs0NTQsMTcgQEAgc2VsZWN0IHByb25hbWUgZnJv bSBwZ19wcm9jIHdoZXJlIHByb25hbWUgbGlrZSBFJ1JJXFxfRktleSVkZWwnIG9yZGVyIGJ5IDE7 CiAoMyByb3dzKQogCiBzZWxlY3QgcHJvbmFtZSBmcm9tIHBnX3Byb2Mgd2hlcmUgcHJvbmFtZSBs aWtlIEUnUklcXF9GS2V5JWRlbCcgb3JkZXIgYnkgMTsKLSAgICAgICAgcHJvbmFtZSAgICAgICAg IAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgICAgICBwcm9uYW1lICAgICAgICAg ICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgUklfRktleV9jYXNjYWRlX2Rl bAogIFJJX0ZLZXlfbm9hY3Rpb25fZGVsCisgUklfRktleV9wZXJpb2RfY2FzY2FkZV9kZWwKKyBS SV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0X2RlbAorIFJJX0ZLZXlfcGVyaW9kX3NldG51bGxfZGVs CiAgUklfRktleV9yZXN0cmljdF9kZWwKICBSSV9GS2V5X3NldGRlZmF1bHRfZGVsCiAgUklfRktl eV9zZXRudWxsX2RlbAotKDUgcm93cykKKyg4IHJvd3MpCiAKIGV4cGxhaW4gKGNvc3RzIG9mZikK IHNlbGVjdCBwcm9uYW1lIGZyb20gcGdfcHJvYyB3aGVyZSBwcm9uYW1lIGlsaWtlICcwMCVmb28n IG9yZGVyIGJ5IDE7CkBAIC01MDAsMTQgKzUwMywxNyBAQCBzZWxlY3QgcHJvbmFtZSBmcm9tIHBn X3Byb2Mgd2hlcmUgcHJvbmFtZSBsaWtlIEUnUklcXF9GS2V5JWRlbCcgb3JkZXIgYnkgMTsKICg2 IHJvd3MpCiAKIHNlbGVjdCBwcm9uYW1lIGZyb20gcGdfcHJvYyB3aGVyZSBwcm9uYW1lIGxpa2Ug RSdSSVxcX0ZLZXklZGVsJyBvcmRlciBieSAxOwotICAgICAgICBwcm9uYW1lICAgICAgICAgCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICAgIHByb25hbWUgICAgICAgICAgICAK Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBSSV9GS2V5X2Nhc2NhZGVfZGVsCiAg UklfRktleV9ub2FjdGlvbl9kZWwKKyBSSV9GS2V5X3BlcmlvZF9jYXNjYWRlX2RlbAorIFJJX0ZL ZXlfcGVyaW9kX3NldGRlZmF1bHRfZGVsCisgUklfRktleV9wZXJpb2Rfc2V0bnVsbF9kZWwKICBS SV9GS2V5X3Jlc3RyaWN0X2RlbAogIFJJX0ZLZXlfc2V0ZGVmYXVsdF9kZWwKICBSSV9GS2V5X3Nl dG51bGxfZGVsCi0oNSByb3dzKQorKDggcm93cykKIAogZXhwbGFpbiAoY29zdHMgb2ZmKQogc2Vs ZWN0IHByb25hbWUgZnJvbSBwZ19wcm9jIHdoZXJlIHByb25hbWUgaWxpa2UgJzAwJWZvbycgb3Jk ZXIgYnkgMTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9v dmVybGFwcy5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMu b3V0CmluZGV4IDQwMTU1MGI1NDgyLi40ZDlmMjVhYzQwNSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91dAorKysgYi9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMub3V0CkBAIC0xOTQ3LDcgKzE5NDcsMjQgQEAg RVJST1I6ICB1bnN1cHBvcnRlZCBPTiBERUxFVEUgYWN0aW9uIGZvciBmb3JlaWduIGtleSBjb25z dHJhaW50IHVzaW5nIFBFUklPRAogLS0KIC0tIHJuZzJybmcgdGVzdCBPTiBVUERBVEUvREVMRVRF IG9wdGlvbnMKIC0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0g cmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVM TAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIHVwZGF0ZXMg U0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0gcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVs ZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAo dHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2Nh bGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVG QVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxU ICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3 byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorLS0KIC0tIHRlc3QgRksgcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUKKy0tCiBUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFs X2ZrX3JuZzJybmc7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFM VUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKIElO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBW QUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp LCAnWzYsNyknKTsKQEAgLTE5NTYsMjkgKzE5NzMsNTkzIEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3JuZzJybmcKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQp CiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKICAgICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBV UERBVEUgQ0FTQ0FERTsKLUVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gVVBEQVRFIGFjdGlvbiBmb3Ig Zm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKKy0tIGxlZnRvdmVycyBvbiBib3Ro IHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0w MSkgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzcsOCkK KyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpCisoMyByb3dzKQor CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgp JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEt MDEsMjAxOS0wMS0wMSkgfCBbNyw4KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEt MDEpIHwgWzcsOCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs3LDgp CisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywg JzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCBp ZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEt MDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0g J1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEt MDEpIHwgWzksMTApCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5 KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUK Ky0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3JuZzJybmc7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr X3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0w MSkgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykK KygyIHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyBpZCB8IHZhbGlk X2F0IHwgcGFyZW50X2lkIAorLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisoMCByb3dzKQor CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAn WzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRf aWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDEgcm93KQorCist LQogLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tCiBUUlVOQ0FURSB0 ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3JuZzJybmc7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpKTsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr X3JuZzJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmssCiAgIEFE RCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKICAg ICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOwotRVJST1I6ICB1bnN1cHBv cnRlZCBPTiBVUERBVEUgYWN0aW9uIGZvciBmb3JlaWduIGtleSBjb25zdHJhaW50IHVzaW5nIFBF UklPRAorLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBT RVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEw MSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTkt MDEtMDEsMjAyMC0wMS0wMSkgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KSB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRf aWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAKKyBbMTAwLDEwMSkgfCBbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEt MDEpIHwgCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRh dGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5n IFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJF IGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIw MjAtMDEtMDEpIHwgCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5 KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxM CistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcycm5nOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywg ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0g J1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEt MDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFsx MDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisKKy0t IG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRf YXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8 IAorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzEwMCwxMDEpIHwg WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28g cmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAw LDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJu ZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0w MS0wMSwyMDIwLTAxLTAxKSB8IAorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEp IHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCiAtLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBT RVQgREVGQVVMVAorLS0KIFRSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJu ZzsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEs LTFdJywgZGF0ZXJhbmdlKG51bGwsIG51bGwpKTsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpOwogSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJyksICdbNiw3KScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5n MnJuZwogICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAg RFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmssCiAgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJ T0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKICAgICBPTiBERUxFVEUg U0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOwotRVJST1I6ICB1bnN1cHBvcnRlZCBP TiBVUERBVEUgYWN0aW9uIGZvciBmb3JlaWduIGtleSBjb25zdHJhaW50IHVzaW5nIFBFUklPRAor LS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQg PSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBb MjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEs MjAyMC0wMS0wMSkgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KSB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRf aWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbLTEsMCkKKyBbMTAwLDEwMSkg fCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDIwLTAx LTAxLDIwMjEtMDEtMDEpIHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywg ZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwy MDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitV UERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAx KSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVm ZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0 ZW1wb3JhbF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1stMSwtMV0nLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19y bmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CistLSBsZWZ0b3Zl cnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxp ZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEp IHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKQor IFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisK Ky0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFs aWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAx KSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDAp CisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbLTEsMCkKKygzIHJvd3Mp CisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVu dF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKQorIFsyMDAsMjAx KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLQor VFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2 LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcy cm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maywKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50 X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcm5nMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVm dG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdb Nyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3Ju ZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAg aWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lk MiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykg ICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4 KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2 LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgt MDEtMDEsMjAxOS0wMS0wMSkgfCBbNyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSB8IFs3LDgpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsy MDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzcsOCkgICAgICB8IFs2LDcpCisoMyByb3dzKQorCist LSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Ju ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Ju ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFu Z2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr Ml9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5 KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbOSwxMCknIFdI RVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4 LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzksMTApICAgICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgWzIw MjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0t CistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMp CistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcp JywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNp ZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4 LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIw MjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygyIHJvd3MpCisKKy0t IG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyBpZCB8IHZhbGlkX2F0IHwgcGFyZW50 X2lkMSB8IHBhcmVudF9pZDIgCistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRl OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwg WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygxIHJvdykKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNv bHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2 LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQx LCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrMl9ybmcycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maywK KyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmsKKyAgICBGT1JFSUdOIEtF WSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5V TEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcyIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBT RVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEg fCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0w MSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAx LTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitV UERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwg WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEpIHwgWzIw MTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEpIHwgWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSkgfCAgICAgICAgICAgIHwgCisoMyByb3dzKQorCistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwg aWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwg aWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAt MDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5n IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAx KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5 KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJl bnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIw MjAtMDEtMDEpIHwgICAgICAgICAgICB8IAorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEt MDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FU RSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZB TFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyks ICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9p ZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0w MS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIw LTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAx LTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0w MSwyMDE5LTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKSB8ICAgICAgICAgICAgfCAKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcy MDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcg V0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgICAgICAgICAgICB8 IAorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4 LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5V TEwgKHR3byBzY2FsYXIgY29scywgU0VUIE5VTEwgc3Vic2V0KQorLS0KK1RSVU5DQVRFIHRlbXBv cmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n MiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsy X3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgn WzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcp JywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBj b2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxF VEUgU0VUIE5VTEwgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIE5VTEw7CitFUlJPUjogIGNvbHVt biAidmFsaWRfYXQiIHJlZmVyZW5jZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJl IFBFUklPRAorLS0gb2s6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrMl9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVu dF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAg ICBPTiBERUxFVEUgU0VUIE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0t IGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hF UkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hF UkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2 LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwg WzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAg fCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8ICAg ICAgICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwg ICAgICAgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkg fCAgICAgICAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIw LTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIx LTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9h dCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcy MDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hF UkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgICAgICAgICAgICB8IFs4 LDkpCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KSAgICAgIHwg WzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQg REVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRl bXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIs IHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCBkYXRlcmFuZ2UobnVsbCwg bnVsbCkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBW QUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVG QVVMVCAnWy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBERUZBVUxUICdb LTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVG QVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEn IFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAx OC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsy MDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8 IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQor CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAnWzcs OCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lk MSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAx LTAxKSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIw LTAxLTAxKSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwy MDIxLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9z cyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkp Jyk7CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s5LDEwKScsIGlkMiA9ICdbOSwx MCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0 ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwy MDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0 ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8 IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsyMDAsMjAx KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dz KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBz Y2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5n MnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgZGF0ZXJhbmdlKG51bGwsIG51bGwpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNykn LCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgt MDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBb MjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKwor LS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0g J1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAw LDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBb MTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbLTEsMCkK KyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbLTEs MCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScs ICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScs ICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcy IFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsy MDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsyMDAsMjAxKSB8 IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2Fs YXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIs IHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s2LDcpJywgZGF0ZXJhbmdlKG51bGws IG51bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkg VkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQs IHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMg YmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVt cG9yYWxfZmsyX3JuZzJybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQg J1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZhbGlkX2F0KSBPTiBV UERBVEUgU0VUIERFRkFVTFQ7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJlZmVyZW5jZWQg aW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQg REVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJu Z19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmsKKyAgICBGT1JF SUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAocGFyZW50 X2lkMSkgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8 IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEt MDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0w MS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDIw LTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBu b24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWy0xLDApICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWzYsNykKKyBbMTAw LDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbNiw3KQorKDMg cm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkp JywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWzgs OSknLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3Ju ZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIw MCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywg J1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScg QU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwg cGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEp IHwgWy0xLDApICAgICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0w MSkgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKIC0tCiAtLSB0ZXN0IEZPUkVJR04g S0VZLCBtdWx0aXJhbmdlIHJlZmVyZW5jZXMgbXVsdGlyYW5nZQogLS0KQEAgLTI0MTMsNiArMjk5 NCw2MjYgQEAgREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwge1syMDE4LTAxLTAx LDIwMTgtMDEtMDIpLFsyMDE4LTAxLTAzLDIwMTgtMDIKIERFTEVURSBGUk9NIHRlbXBvcmFsX2Zr X21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzMsNCknOwogREVMRVRFIEZST00gdGVtcG9yYWxf bWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpKTsKIC0tCistLQorLS0gbWx0cm5n Mm1sdHJuZyB0ZXN0IE9OIFVQREFURS9ERUxFVEUgb3B0aW9ucworLS0KKy0tIFRPQzoKKy0tIHJl ZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERQor LS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VU IE5VTEwKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVAorLS0gcmVmZXJlbmNlZCBk ZWxldGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNj YWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29s cykKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0g cmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVu Y2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scywgU0VUIE5VTEwgc3Vic2V0KQor LS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLSBy ZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVy ZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBz dWJzZXQpCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KK1RS VU5DQVRFIHRlbXBvcmFsX21sdHJuZywgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19tbHRybmcybWx0cm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcybWx0 cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nX2ZrCisg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfbWx0cm5nCisgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NB REU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0w MS0wMScsICcyMDIwLTAxLTAxJykpKSBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAg ICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsy MDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs2LDcpCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAx LDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IFs3LDgpCisoMiByb3dzKQor CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VUIGlkID0gJ1s3 LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJu ZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg ICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAg ICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAx OC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNyw4KQorIFsx MDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAg ICAgfCBbNyw4KQorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScpOworVVBEQVRFIHRlbXBv cmFsX21sdHJuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlk X2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0 cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgICBpZCAgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwy MDEpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IFs5LDEwKQorIFsyMDAsMjAxKSB8IHtb MjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRy bmcsIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRy bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwx MDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSksICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAg ICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3KQorKDEgcm93KQorCistLSBub24tRlBPIGRlbGV0 ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgaWQgfCB2YWxpZF9hdCB8IHBhcmVudF9pZCAKKy0t LS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byBy ZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEt MDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQgCist LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAw LDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzgsOSkKKygxIHJvdykKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMCistLQorVFJVTkNBVEUgdGVt cG9yYWxfbWx0cm5nLCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVt cG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVF UyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX21sdHJuZzJt bHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmssCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdO IEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9tbHRybmcKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOworLS0g bGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAn MjAyMC0wMS0wMScpKSkgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAg ICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0w MSwyMDIxLTAxLTAxKX0gfCBbNiw3KQorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAx LTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCAKKygyIHJvd3MpCisKKy0tIG5vbi1GUE8g dXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlk ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50 X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTkt MDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IAorIFsxMDAsMTAxKSB8IHtbMjAxOS0w MS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCAKKygyIHJvd3MpCisK Ky0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxf bWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VUIGlkID0gJ1s5 LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAn WzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICB2 YWxpZF9hdCAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IHtbMjAxOC0wMS0wMSwyMDIw LTAxLTAxKX0gfCAKKyBbMjAwLDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzgs OSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVM TAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZywgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJu ZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb Niw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9h dCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAt MDEtMDEnKSkpIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf bWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAg ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwg e1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs2LDcp CisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAg ICAgICAgICB8IAorKDIgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9tbHRybmcgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAg ICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEw MSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwg CisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAg ICAgICAgICB8IAorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScpOworREVMRVRFIEZST00g dGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdI RVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCB7WzIwMTgt MDEtMDEsMjAyMC0wMS0wMSl9IHwgCisgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEt MDEpfSB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIERFRkFVTFQKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcsIHRlbXBvcmFsX2Zr X21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWy0xLC0xXScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxs KSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZCBTRVQg REVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcy bWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nX2Zr CisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVS RU5DRVMgdGVtcG9yYWxfbWx0cm5nCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFU RSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBv cmFsX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUg aWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdI RVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJl bnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAx OS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7 WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWy0xLDAp CisoMiByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcg U0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAg ICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0g fCBbLTEsMCkKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAg ICAgICAgICAgICAgICAgIHwgWy0xLDApCisoMiByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRy bmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJyk7 CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4 LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBw YXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0KKyBbMjAwLDIwMSkgfCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgWy0xLDApCisg WzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCitUUlVO Q0FURSB0ZW1wb3JhbF9tbHRybmcsIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRF IEZST00gdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAg ICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0w MSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7WzIwMTkt MDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWy0xLDApCisoMiBy b3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBX SEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8 IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0w MSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbLTEsMCkKKyBbMTAwLDEw MSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwg Wy0xLDApCisoMiByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5 KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9tbHRybmcgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUg aWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAg ICAgICB2YWxpZF9hdCAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IHtbMjAxOC0wMS0w MSwyMDIwLTAxLTAxKX0gfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0w MS0wMSl9IHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBk YXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0 cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9t bHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOwor QUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJl bnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcy CisgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0w MScpKSkgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxp ZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEs MjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykgICAgICB8IFs2LDcp CisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAg ICAgICAgICB8IFs3LDgpICAgICAgfCBbNiw3KQorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRh dGU6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50 X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsx MDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KX0gfCBbNyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0w MS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWzcsOCkgICAgICB8IFs2LDcpCisoMiBy b3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgs OSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJt bHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIw MCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSksICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIgU0VUIGlk MSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAx LTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hF UkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg ICAgICAgICB2YWxpZF9hdCAgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0KKyBbMjAwLDIwMSkgfCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgWzksMTApICAg ICB8IFs4LDkpCisgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkp ICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxl dGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRy bmcyLCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21s dHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJywgJ1s2LDcpJyk7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0w MS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlk X2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwy MDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3KSAgICAgIHwgWzYsNykK KygxIHJvdykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRy bmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor IGlkIHwgdmFsaWRfYXQgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0rLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisoMCByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdv IHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQy LCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQx IHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEt MDEtMDEpfSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FU RSB0ZW1wb3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNykn LCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcp JywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZworICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRl bXBvcmFsX21sdHJuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxM OworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAx LTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0g J1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAg ICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQxIHwg cGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEp IHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs2 LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0g ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHwgCisoMiByb3dzKQorCistLSBu b24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzcsOCkn IFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcy bWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAg IGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAg ICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpfSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEs MjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8IAorKDIg cm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4 LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEn KSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcy bWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sy MDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBp ZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0w MS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdI RVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8ICAgICAgICAg ICAgfCAKKyBbMjAwLDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzgsOSkgICAg ICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcy LCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJu ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQx LCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBs ZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0w MScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0 ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5 LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3KSAgICAgIHwgWzYsNykKKyBb MTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICB8IAorKDIgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFs aWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAx LDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8ICAgICAgICAgICAgfCAKKyBb MTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICB8IAorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVu Y2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5n MiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQg QD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5n Mm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IHtbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKX0g fCAgICAgICAgICAgIHwgCisgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8 IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNl ZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0t CitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzYsNyknLCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEw MSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp KSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhl IFBFUklPRCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZwor ICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX21sdHJuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgKHZhbGlkX2F0KSBPTiBV UERBVEUgU0VUIE5VTEw7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJlZmVyZW5jZWQgaW4g T04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxf ZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZzIKKyAgICBPTiBE RUxFVEUgU0VUIE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywg JzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAg ICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEt MDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAs MTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAg fCAgICAgICAgICAgIHwgWzYsNykKKygyIHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVM RVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZh bGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCist LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0w MSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCAgICAgICAgICAgIHwgWzYs NykKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgICAgICAgICB8IFs2LDcpCisoMiByb3dzKQorCistLSBGSyBhY3Jvc3Mg dHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwg aWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5 KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFO RCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRf aWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDE4LTAxLTAxLDIw MjAtMDEtMDEpfSB8ICAgICAgICAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IHtbMjAyMC0wMS0w MSwyMDIxLTAxLTAxKX0gfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQor LS0KK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZzIsIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5n OworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxV RVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UobnVsbCwg bnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9h dCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0 cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMg KCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScpKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJf bWx0cm5nMm1sdHJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0x LC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBERUZBVUxUICdbLTEsLTFdJywK KyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrLAorICBBREQg Q09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBT RVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFs X21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0g J1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf bWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAg ICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7 WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWy0xLDAp ICAgICB8IFstMSwwKQorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVt cG9yYWxfbWx0cm5nMiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50 X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsx MDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KX0gfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAt MDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygy IHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdb OCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAx JykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAt MDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5n Mm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdb MjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nMiBTRVQg aWQxID0gJ1s5LDEwKScsIGlkMiA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZh bGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgICAgICAgICB2YWxpZF9hdCAgICAgICAgICB8IHBhcmVudF9pZDEg fCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCB7WzIwMTgtMDEtMDEsMjAyMC0w MS0wMSl9IHwgWy0xLDApICAgICB8IFstMSwwKQorIFsyMDAsMjAxKSB8IHtbMjAyMC0wMS0wMSwy MDIxLTAxLTAxKX0gfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0 IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0K K1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZzIsIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMg KCdbLTEsLTFdJywgJ1stMSwtMV0nLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UobnVsbCwgbnVs bCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkg VkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5n Mm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdb MTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoK K0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKX0gfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEs MjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWy0xLDApICAgICB8IFstMSww KQorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9t bHRybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAg ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIw LTAxLTAxLDIwMjEtMDEtMDEpfSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCB7 WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWy0xLDAp ICAgICB8IFstMSwwKQorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJv d3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQx LCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdl KGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVu dF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9N IHRlbXBvcmFsX21sdHJuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IHtbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKX0gfCBbLTEs MCkgICAgIHwgWy0xLDApCisgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8 IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNl ZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1YnNl dCkKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1s dHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkg VkFMVUVTICgnWy0xLC0xXScsICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxs LCBudWxsKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGZhaWxzIGJlY2F1c2UgeW91IGNh bid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFd JywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04g S0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUICh2YWxpZF9h dCkgT04gVVBEQVRFIFNFVCBERUZBVUxUOworRVJST1I6ICBjb2x1bW4gInZhbGlkX2F0IiByZWZl cmVuY2VkIGluIE9OIERFTEVURSBTRVQgYWN0aW9uIGNhbm5vdCBiZSBQRVJJT0QKKy0tIG9rOgor QUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgQUxURVIgQ09MVU1OIHBh cmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9y YWxfZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZzIKKyAgICBP TiBERUxFVEUgU0VUIERFRkFVTFQgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgREVGQVVMVDsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5n MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5 LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFs aWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAx LDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs2LDcpICAgICAgfCBbNiw3 KQorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAg ICAgICAgICAgfCBbLTEsMCkgICAgIHwgWzYsNykKKygyIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBk YXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtb MjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbLTEsMCkg ICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAg ICAgICAgICAgICAgICAgICAgIHwgWy0xLDApICAgICB8IFs2LDcpCisoMiByb3dzKQorCistLSBG SyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJu ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEt MDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSkn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwg J1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlk MSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICB2YWxpZF9hdCAgICAg ICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCB7 WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgWy0xLDApICAgICB8IFs4LDkpCisgWzIwMCwyMDEp IHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93 cykKKworLS0gRksgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBlCitDUkVBVEUgVFlQRSBteWRhdGVy YW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzMg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX3JuZzNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKQorKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9mazNfcm5nMnJuZyAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfYXQgbXlkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisg IENPTlNUUkFJTlQgdGVtcG9yYWxfZmszX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazNfcm5nMnJu Z19mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmczIChpZCwgUEVSSU9EIHZhbGlkX2F0KSBPTiBERUxFVEUgQ0FTQ0FE RQorKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzMgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCBteWRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmszX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbNSw2KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4 LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmczIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbOCw5KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrM19ybmcycm5nIFdIRVJFIGlkID0gJ1s1LDYpJzsKKyAg aWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzUsNikgfCBbMjAxOC0wMS0wMSwy MDE5LTAxLTAxKSB8IFs4LDkpCisgWzUsNikgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4 LDkpCisoMiByb3dzKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcycm5nOworRFJPUCBU QUJMRSB0ZW1wb3JhbF9ybmczOworRFJPUCBUWVBFIG15ZGF0ZXJhbmdlOworLS0KIC0tIEZLIGJl dHdlZW4gcGFydGl0aW9uZWQgdGFibGVzOiByYW5nZXMKIC0tCiBDUkVBVEUgVEFCTEUgdGVtcG9y YWxfcGFydGl0aW9uZWRfcm5nICgKQEAgLTI0MjEsOCArMzYyMiw4IEBAIENSRUFURSBUQUJMRSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKAogICBuYW1lIHRleHQsCiAgIENPTlNUUkFJTlQgdGVt cG9yYWxfcGFyaXRpb25lZF9ybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKQogKSBQQVJUSVRJT04gQlkgTElTVCAoaWQpOwotQ1JFQVRFIFRBQkxFIHRwMSBw YXJ0aXRpb24gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMSwy KScsICdbMyw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCknLCAnWzExLDEyKScpOwotQ1JF QVRFIFRBQkxFIHRwMiBwYXJ0aXRpb24gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBW QUxVRVMgSU4gKCdbMiwzKScsICdbNCw1KScsICdbNiw3KScsICdbOCw5KScsICdbMTAsMTEpJywg J1sxMiwxMyknKTsKK0NSRUFURSBUQUJMRSB0cDEgUEFSVElUSU9OIE9GIHRlbXBvcmFsX3BhcnRp dGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcs OCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUsMTYpJywgJ1sxNywxOCkn LCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKK0NSRUFURSBUQUJMRSB0cDIgUEFS VElUSU9OIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzAsMSkn LCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScsICdbMTIsMTMp JywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywgJ1syMCwyMSknLCAnWzIyLDIzKScs ICdbMjQsMjUpJyk7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2 YWxpZF9hdCwgbmFtZSkgVkFMVUVTCiAgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEn LCAnMjAwMC0wMi0wMScpLCAnb25lJyksCiAgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDAtMDIt MDEnLCAnMjAwMC0wMy0wMScpLCAnb25lJyksCkBAIC0yNDM1LDggKzM2MzYsOCBAQCBDUkVBVEUg VEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoCiAgIENPTlNUUkFJTlQgdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcg KGlkLCBQRVJJT0QgdmFsaWRfYXQpCiApIFBBUlRJVElPTiBCWSBMSVNUIChpZCk7Ci1DUkVBVEUg VEFCTEUgdGZrcDEgcGFydGl0aW9uIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcg Rk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3LDgpJywgJ1s5LDEw KScsICdbMTEsMTIpJyk7Ci1DUkVBVEUgVEFCTEUgdGZrcDIgcGFydGl0aW9uIE9GIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgRk9SIFZBTFVFUyBJTiAoJ1syLDMpJywgJ1s0LDUpJywg J1s2LDcpJywgJ1s4LDkpJywgJ1sxMCwxMSknLCAnWzEyLDEzKScpOworQ1JFQVRFIFRBQkxFIHRm a3AxIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIEZPUiBWQUxV RVMgSU4gKCdbMSwyKScsICdbMyw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCknLCAnWzEx LDEyKScsICdbMTMsMTQpJywgJ1sxNSwxNiknLCAnWzE3LDE4KScsICdbMTksMjApJywgJ1syMSwy MiknLCAnWzIzLDI0KScpOworQ1JFQVRFIFRBQkxFIHRma3AyIFBBUlRJVElPTiBPRiB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIEZPUiBWQUxVRVMgSU4gKCdbMCwxKScsICdbMiwzKScs ICdbNCw1KScsICdbNiw3KScsICdbOCw5KScsICdbMTAsMTEpJywgJ1sxMiwxMyknLCAnWzE0LDE1 KScsICdbMTYsMTcpJywgJ1sxOCwxOSknLCAnWzIwLDIxKScsICdbMjIsMjMpJywgJ1syNCwyNSkn KTsKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2luZyBpbnNlcnRzCiAtLQpAQCAtMjQ3 OCw3ICszNjc5LDcgQEAgVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgdmFsaWRf YXQgPSBkYXRlcmFuZ2UoJzIwMTYtMDItMDEnLCAnMjAxNi0wMy0KIC0tIHNob3VsZCBmYWlsOgog VVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgdmFsaWRfYXQgPSBkYXRlcmFuZ2Uo JzIwMTYtMDEtMDEnLCAnMjAxNi0wMi0wMScpCiAgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFs aWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOwotRVJST1I6ICB1 cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0cDEiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0 cmFpbnQgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmtfMSIgb24gdGFibGUgInRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmciCitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUg b24gdGFibGUgInRwMSIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfcm5nMnJuZ19ma18yIiBvbiB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfcm5nMnJuZyIKIERFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4 LTAxLTAxLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmciLgogLS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVy ZW5jZWQgZGVsZXRlcyBOTyBBQ1RJT04KQEAgLTI0OTAsMzcgKzM2OTEsMTYyIEBAIElOU0VSVCBJ TlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbCiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hF UkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMi0wMScsICcy MDE4LTAzLTAxJyk7CiAtLSBzaG91bGQgZmFpbDoKIERFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRp dGlvbmVkX3JuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKTsKLUVSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0 YWJsZSAidHAxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19ybmcycm5nX2ZrXzEiIG9uIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nIgorRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0cDEiIHZpb2xh dGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJy bmdfZmtfMiIgb24gdGFibGUgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmciCiBERVRB SUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkg aXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19y bmcycm5nIi4KIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FE RQogLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19ybmcycm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZh bGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nCiAgICAgT04g REVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7Ci1FUlJPUjogIHVuc3VwcG9ydGVkIE9O IFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9ECitV UERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlk ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJu ZyBXSEVSRSBpZCA9ICdbNCw1KSc7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8 IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LQorIFs0LDUpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4KQorIFs0LDUpIHwgWzIw MTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KQorIFs0LDUpIHwgWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSkgfCBbNiw3KQorKDMgcm93cykKKworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3Ju ZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbNCw1KSc7CisgIGlkICAg fCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFs0LDUpIHwgWzIwMTktMDEtMDEsMjAyMC0w MS0wMSkgfCBbNyw4KQorIFs0LDUpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNyw4KQor IFs0LDUpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNyw4KQorKDMgcm93cykKKworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1sxNSwxNiknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb MTUsMTYpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEwLDExKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyksICdbMTUsMTYpJyk7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBp ZCA9ICdbMTYsMTcpJyBXSEVSRSBpZCA9ICdbMTUsMTYpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1sxMCwxMSknOworICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tCisgWzEwLDExKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzE2LDE3KQor IFsxMCwxMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFsxNSwxNikKKygyIHJvd3MpCisK IC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERQogLS0KK1RS VU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s1LDYpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIw MjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s4LDkpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CisgIGlkICAgfCAgICAgICAg dmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFs1LDYpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBb OCw5KQorIFs1LDYpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykK KworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1s4LDkp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBp ZCA9ICdbNSw2KSc7CisgaWQgfCB2YWxpZF9hdCB8IHBhcmVudF9pZCAKKy0tLS0rLS0tLS0tLS0t LSstLS0tLS0tLS0tLQorKDAgcm93cykKKworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxNywxOCknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTcsMTgpJywgZGF0ZXJhbmdlKCcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzExLDEyKScsIGRh dGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTcsMTgpJyk7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hFUkUgaWQgPSAnWzE3LDE4KScgQU5EIHZh bGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTEsMTIpJzsKKyAgIGlkICAgIHwgICAg ICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMSwxMikgfCBbMjAyMC0wMS0wMSwyMDIxLTAx LTAxKSB8IFsxNywxOCkKKygxIHJvdykKKwogLS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5j ZWQgdXBkYXRlcyBTRVQgTlVMTAogLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3Ju ZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOSwxMCknLCBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb Niw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOSwxMCknKTsK IEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcKICAgRFJPUCBDT05T VFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmssCiAgIEFERCBDT05TVFJB SU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmcKICAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOwot RVJST1I6ICB1bnN1cHBvcnRlZCBPTiBVUERBVEUgYWN0aW9uIGZvciBmb3JlaWduIGtleSBjb25z dHJhaW50IHVzaW5nIFBFUklPRAorVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkID0gJ1sxMCwxMSknIFdIRVJFIGlkID0gJ1s5LDEwKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzYsNyknOworICBpZCAgIHwg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNiw3KSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEt MDEpIHwgCisgWzYsNykgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs5LDEwKQorIFs2LDcp IHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOSwxMCkKKygzIHJvd3MpCisKK1VQREFURSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgU0VUIGlkID0gJ1sxMCwxMSknIFdIRVJFIGlkID0gJ1s5 LDEwKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hF UkUgaWQgPSAnWzYsNyknOworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJl bnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBb Niw3KSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzYsNykgfCBbMjAxOC0wMS0wMSwy MDE5LTAxLTAxKSB8IAorIFs2LDcpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAKKygzIHJv d3MpCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbMTgsMTkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzE4LDE5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMiwxMyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpLCAnWzE4LDE5KScpOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyBTRVQgaWQgPSAnWzE5LDIwKScgV0hFUkUgaWQgPSAnWzE4LDE5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKKyAgIGlkICAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMiwxMykgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8 IAorIFsxMiwxMykgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFsxOCwxOSkKKygyIHJvd3Mp CisKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwKIC0t CitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVk X2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzExLDEyKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s3LDgpJywgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxMSwxMiknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFs X3BhcnRpdGlvbmVkX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAx JyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzExLDEyKSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzcsOCknOworICBpZCAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNyw4KSB8IFsyMDE5LTAxLTAxLDIwMjAt MDEtMDEpIHwgCisgWzcsOCkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFsxMSwxMikKKyBb Nyw4KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzExLDEyKQorKDMgcm93cykKKworREVM RVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1sxMSwxMiknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlkID0g J1s3LDgpJzsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAor LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzcsOCkgfCBb MjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFs3LDgpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0w MSkgfCAKKyBbNyw4KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgCisoMyByb3dzKQorCitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzIwLDIxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1syMCwyMSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTMsMTQpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSwgJ1syMCwyMSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3Ju ZyBXSEVSRSBpZCA9ICdbMjAsMjEpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRl OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlk ID0gJ1sxMywxNCknOworICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVu dF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzEzLDE0KSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzEzLDE0KSB8IFsyMDIwLTAx LTAxLDIwMjEtMDEtMDEpIHwgWzIwLDIxKQorKDIgcm93cykKKwogLS0KIC0tIHBhcnRpdGlvbmVk IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVAogLS0KK1RSVU5DQVRFIHRlbXBvcmFs X3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb MCwxKScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzEyLDEzKScsIGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s4LDkp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxMiwxMyknKTsKIEFM VEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcKICAgQUxURVIgQ09MVU1O IHBhcmVudF9pZCBTRVQgREVGQVVMVCAnWy0xLC0xXScsCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrLApAQCAtMjUyOCwxMCArMzg1NCw3MyBAQCBB TFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nCiAgICAgRk9SRUlHTiBL RVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cGFydGl0aW9uZWRfcm5nCiAgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQg REVGQVVMVDsKLUVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gVVBEQVRFIGFjdGlvbiBmb3IgZm9yZWln biBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAt MDEtMDEnIFNFVCBpZCA9ICdbMTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK0VSUk9SOiAg aW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGZrcDIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNv bnN0cmFpbnQgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsiCitERVRBSUw6ICBL ZXkgKHBhcmVudF9pZCwgdmFsaWRfYXQpPShbLTEsMCksIFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEp KSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIi4KK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdb OCw5KSc7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFs4LDkpIHwgWzIw MTgtMDEtMDEsMjAyMS0wMS0wMSkgfCBbMTIsMTMpCisoMSByb3cpCisKK1VQREFURSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgU0VUIGlkID0gJ1sxMywxNCknIFdIRVJFIGlkID0gJ1sxMiwxMykn OworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZmtwMiIgdmlvbGF0ZXMgZm9y ZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19mayIK K0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFstMSwwKSwgWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ybmciLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdI RVJFIGlkID0gJ1s4LDkpJzsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFy ZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzgsOSkgfCBbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKSB8IFsxMiwxMykKKygxIHJvdykKKworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1syMiwyMyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb MjIsMjMpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzE0LDE1KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyksICdbMjIsMjMpJyk7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBp ZCA9ICdbMjMsMjQpJyBXSEVSRSBpZCA9ICdbMjIsMjMpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZmtwMiIg dmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZ19mayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFstMSwwKSwg WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxlICJ0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmciLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nIFdIRVJFIGlkID0gJ1sxNCwxNSknOworICAgaWQgICAgfCAgICAgICAgdmFsaWRf YXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tCisgWzE0LDE1KSB8IFsyMDE4LTAxLTAxLDIwMjEtMDEtMDEpIHwgWzIy LDIzKQorKDEgcm93KQorCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCBkZWxldGVz IFNFVCBERUZBVUxUCiAtLQorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nLCB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1swLDEpJywgZGF0ZXJhbmdlKG51bGws IG51bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbMTQsMTUpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzksMTApJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxNCwxNSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBU TyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzE0LDE1KSc7CitFUlJPUjogIGluc2VydCBvciB1 cGRhdGUgb24gdGFibGUgInRma3AxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIgorREVUQUlMOiAgS2V5IChwYXJlbnRf aWQsIHZhbGlkX2F0KT0oWy0xLDApLCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSkgaXMgbm90IHBy ZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyIuCitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzksMTApJzsKKyAg IGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbOSwxMCkgfCBbMjAxOC0wMS0w MSwyMDIxLTAxLTAxKSB8IFsxNCwxNSkKKygxIHJvdykKKworREVMRVRFIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1sxNCwxNSknOworRVJST1I6ICBpbnNlcnQgb3Ig dXBkYXRlIG9uIHRhYmxlICJ0ZmtwMSIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAi dGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19mayIKK0RFVEFJTDogIEtleSAocGFyZW50 X2lkLCB2YWxpZF9hdCk9KFstMSwwKSwgWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSkpIGlzIG5vdCBw cmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmciLgorU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1s5LDEwKSc7Cisg ICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzksMTApIHwgWzIwMTgtMDEt MDEsMjAyMS0wMS0wMSkgfCBbMTQsMTUpCisoMSByb3cpCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjQsMjUpJywgZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVyYW5n ZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sx NSwxNiknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzI0LDI1KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1syNCwy NSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitFUlJPUjogIGluc2VydCBv ciB1cGRhdGUgb24gdGFibGUgInRma3AxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIgorREVUQUlMOiAgS2V5IChwYXJl bnRfaWQsIHZhbGlkX2F0KT0oWy0xLDApLCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSkgaXMgbm90 IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyIuCitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzE1LDE2KSc7 CisgICBpZCAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTUsMTYpIHwgWzIw MTgtMDEtMDEsMjAyMS0wMS0wMSkgfCBbMjQsMjUpCisoMSByb3cpCisKIERST1AgVEFCTEUgdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0 aW9uZWRfcm5nOwogLS0KQEAgLTI2MTcsMzIgKzQwMDYsMTUwIEBAIERFVEFJTDogIEtleSAoaWQs IHZhbGlkX2F0KT0oWzUsNiksIHtbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKX0pIGlzIHN0aWxsIHJl ZmVyZW5jCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUK IC0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcsIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZCkgVkFMVUVTICgnWzQsNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19tbHRybmcybWx0cm5nCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19tbHRybmcybWx0cm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19tbHRybmcybWx0cm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0 cm5nCiAgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7Ci1FUlJPUjogIHVu c3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNp bmcgUEVSSU9ECitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAy MC0wMS0wMScpKSkgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAn WzQsNSknOworICBpZCAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAg ICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzQsNSkgfCB7WzIwMTkt MDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWzcsOCkKKyBbNCw1 KSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBb Niw3KQorKDIgcm93cykKKworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBTRVQg aWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNCw1KSc7CisgIGlkICAg fCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFy ZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNCw1KSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAx KX0gICAgICAgICAgICAgICAgICAgICAgICAgfCBbNyw4KQorIFs0LDUpIHwge1syMDE4LTAxLTAx LDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs3LDgpCisoMiByb3dzKQor CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzE1LDE2KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJu ZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTUsMTYpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1sxMCwxMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpKSwgJ1sxNSwxNiknKTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9t bHRybmcgU0VUIGlkID0gJ1sxNiwxNyknIFdIRVJFIGlkID0gJ1sxNSwxNiknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwLDExKSc7CisgICBpZCAgICB8ICAg ICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwLDExKSB8IHtbMjAxOC0wMS0wMSwy MDIwLTAxLTAxKX0gfCBbMTYsMTcpCisgWzEwLDExKSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KX0gfCBbMTUsMTYpCisoMiByb3dzKQorCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNl ZCBkZWxldGVzIENBU0NBREUKIC0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRy bmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzUsNiknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVS RSBpZCA9ICdbOCw5KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzUsNiknOworICBpZCAgIHwgICAgICAgICAgICAgICAg ICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tCisgWzUsNikgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSl9IHwgWzgsOSkKKygxIHJvdykKKworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0 aW9uZWRfbWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CisgaWQgfCB2 YWxpZF9hdCB8IHBhcmVudF9pZCAKKy0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93 cykKKworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1sxNywxOCknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9t bHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE3LDE4KScsIGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk KSBWQUxVRVMgKCdbMTEsMTIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSksICdbMTcsMTgpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9tbHRybmcgV0hFUkUgaWQgPSAnWzE3LDE4KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0 cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTEsMTIpJzsKKyAgIGlkICAgIHwgICAgICAgICB2YWxp ZF9hdCAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTEsMTIpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEp fSB8IFsxNywxOCkKKygxIHJvdykKKwogLS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQg dXBkYXRlcyBTRVQgTlVMTAogLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJu ZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOSwxMCkn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s5LDEwKScpOwogQUxURVIgVEFC TEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZwogICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19maywKICAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19mawogICAgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BhcnRpdGlvbmVkX21sdHJuZwogICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUg U0VUIE5VTEw7Ci1FUlJPUjogIHVuc3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVp Z24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9ECitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgU0VUIGlkID0gJ1sxMCwxMSknIFdIRVJF IGlkID0gJ1s5LDEwKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzYsNyknOworICBpZCAgIHwgICAgICAgICAgICAgICAg ICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tCisgWzYsNykgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAg ICAgICAgICAgIHwgCisgWzYsNykgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEt MDEsMjAyMS0wMS0wMSl9IHwgWzksMTApCisoMiByb3dzKQorCitVUERBVEUgdGVtcG9yYWxfcGFy dGl0aW9uZWRfbWx0cm5nIFNFVCBpZCA9ICdbMTAsMTEpJyBXSEVSRSBpZCA9ICdbOSwxMCknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJF IGlkID0gJ1s2LDcpJzsKKyAgaWQgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAg ICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFs2LDcpIHwg e1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIFs2 LDcpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8 IAorKDIgcm93cykKKworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxOCwxOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE4LDE5KScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMTIsMTMpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTgsMTkpJyk7CitVUERBVEUgdGVtcG9yYWxf cGFydGl0aW9uZWRfbWx0cm5nIFNFVCBpZCA9ICdbMTksMjApJyBXSEVSRSBpZCA9ICdbMTgsMTkp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMiwxMyknOwor ICAgaWQgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMiwxMykgfCB7 WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgCisgWzEyLDEzKSB8IHtbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKX0gfCBbMTgsMTkpCisoMiByb3dzKQorCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVm ZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCiAtLQorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1sxMSwxMiknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzcsOCknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1sxMSwxMiknKTsK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEt MDEnKSkpIFdIRVJFIGlkID0gJ1sxMSwxMiknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s3LDgpJzsKKyAgaWQgICB8ICAg ICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRf aWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFs3LDgpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAg ICAgICAgICAgICAgICAgICAgICAgICB8IAorIFs3LDgpIHwge1syMDE4LTAxLTAxLDIwMTktMDEt MDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFsxMSwxMikKKygyIHJvd3MpCisKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbMTEsMTIpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbNyw4KSc7CisgIGlkICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNyw4KSB8 IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBb Nyw4KSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0g fCAKKygyIHJvd3MpCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjAsMjEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFy dGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1syMCwyMSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQs IHBhcmVudF9pZCkgVkFMVUVTICgnWzEzLDE0KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzIwLDIxKScpOworREVMRVRFIEZST00gdGVt cG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFdIRVJFIGlkID0gJ1syMCwyMSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEzLDE0KSc7CisgICBpZCAgICB8ICAg ICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEzLDE0KSB8IHtbMjAxOC0wMS0wMSwy MDIwLTAxLTAxKX0gfCAKKyBbMTMsMTQpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFsy MCwyMSkKKygyIHJvd3MpCisKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIERFRkFVTFQKIC0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcs IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzAsMSknLCBk YXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTIsMTMpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTIsMTMpJyk7CiBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nCiAgIEFMVEVSIENPTFVNTiBw YXJlbnRfaWQgU0VUIERFRkFVTFQgJ1swLDEpJywKICAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmdfZmssCkBAIC0yNjUwLDEwICs0MTU3LDY3IEBA IEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcKICAgICBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcKICAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04g VVBEQVRFIFNFVCBERUZBVUxUOwotRVJST1I6ICB1bnN1cHBvcnRlZCBPTiBVUERBVEUgYWN0aW9u IGZvciBmb3JlaWduIGtleSBjb25zdHJhaW50IHVzaW5nIFBFUklPRAorVVBEQVRFIHRlbXBvcmFs X3BhcnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZCA9ICdbMTMs MTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbOCw5KSc7CisgIGlkICAgfCAgICAg ICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lk IAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKyBbOCw5KSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAg ICAgICAgICAgICAgICAgICAgICAgfCBbMCwxKQorIFs4LDkpIHwge1syMDE4LTAxLTAxLDIwMTkt MDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFsxMiwxMykKKygyIHJvd3MpCisKK1VQ REFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgU0VUIGlkID0gJ1sxMywxNCknIFdIRVJF IGlkID0gJ1sxMiwxMyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkpJzsKKyAgaWQgICB8ICAgICAgICAgICAgICAg ICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLQorIFs4LDkpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAg ICAgICAgICAgICB8IFswLDEpCisgWzgsOSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIw MjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzAsMSkKKygyIHJvd3MpCisKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjIsMjMp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1syMiwyMyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzE0LDE1KScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAn WzIyLDIzKScpOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBTRVQgaWQgPSAn WzIzLDI0KScgV0hFUkUgaWQgPSAnWzIyLDIzKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1s dHJuZyBXSEVSRSBpZCA9ICdbMTQsMTUpJzsKKyAgIGlkICAgIHwgICAgICAgICB2YWxpZF9hdCAg ICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBbMTQsMTUpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IFsw LDEpCisgWzE0LDE1KSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbMjIsMjMpCisoMiBy b3dzKQorCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZB VUxUCiAtLQorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1swLDEpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE0LDE1KScsIGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbOSwxMCknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1sxNCwxNSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFs X3BhcnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkID0gJ1sx NCwxNSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0 cm5nIFdIRVJFIGlkID0gJ1s5LDEwKSc7CisgICBpZCAgIHwgICAgICAgICAgICAgICAgICAgICB2 YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LQorIFs5LDEwKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAg ICAgICAgfCBbMCwxKQorIFs5LDEwKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0w MS0wMSwyMDIxLTAxLTAxKX0gfCBbMTQsMTUpCisoMiByb3dzKQorCitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgV0hFUkUgaWQgPSAnWzE0LDE1KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzks MTApJzsKKyAgIGlkICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAg ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzksMTApIHwge1syMDE5 LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IFswLDEpCisgWzks MTApIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8 IFswLDEpCisoMiByb3dzKQorCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRy bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjQsMjUpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxNSwxNiknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1syNCwyNSknKTsKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbMjQsMjUpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxNSwxNiknOworICAgaWQgICAg fCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxNSwxNikgfCB7WzIwMTgtMDEt MDEsMjAyMC0wMS0wMSl9IHwgWzAsMSkKKyBbMTUsMTYpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEt MDEpfSB8IFsyNCwyNSkKKygyIHJvd3MpCisKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0 cm5nOwogUkVTRVQgZGF0ZXN0eWxlOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwv d2l0aG91dF9vdmVybGFwcy5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJs YXBzLnNxbAppbmRleCBjNWM4OWZlNDBhYi4uMjI0ZGRlZjg0MzAgMTAwNjQ0Ci0tLSBhL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jl c3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsCkBAIC0xNDI0LDggKzE0MjQsMjYgQEAgQUxURVIg VEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZwogLS0KIC0tIHJuZzJybmcgdGVzdCBPTiBVUERBVEUv REVMRVRFIG9wdGlvbnMKIC0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FE RQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBT RVQgTlVMTAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIHVw ZGF0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0g cmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQg TlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBT RVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBE RUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFV TFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQogCistLQogLS0gdGVzdCBG SyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KKwogVFJVTkNBVEUgdGVtcG9yYWxfcm5n LCB0ZW1wb3JhbF9ma19ybmcycm5nOwogSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSk7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSwgJ1s2LDcpJyk7CkBAIC0xNDM0LDI4ICsxNDUyLDM0NiBAQCBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCiAgICAgT04gREVMRVRFIENB U0NBREUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQ REFURSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9y YWxfcm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcy MDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJyksICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQg PSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdb MjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJl bmNlZCBkZWxldGVzIENBU0NBREUKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9y YWxfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JyksICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8g JzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf Zmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK Ky0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRl cmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSkn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcy MDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVS RSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKIAorLS0KIC0tIHRlc3Qg RksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMCistLQorCiBUUlVOQ0FURSB0ZW1wb3JhbF9y bmcsIHRlbXBvcmFsX2ZrX3JuZzJybmc7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKTsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpLCAnWzYsNyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcK KyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmssCiAgIEFERCBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKICAgICBPTiBERUxF VEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRF IHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEt MDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcg U0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUg aWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5n LCB0ZW1wb3JhbF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSwgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAx LTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hF UkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJF IGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5 KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sy MDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRf YXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwogCistLQog LS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tCisKIFRSVU5DQVRF IHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIElOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgZGF0ZXJhbmdlKG51bGwsIG51 bGwpKTsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb Niw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwogSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3 KScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZwogICBBTFRFUiBDT0xVTU4gcGFy ZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3JuZzJybmdfZmssCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsK ICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmcKICAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNF VCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxf cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAx LTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQg PSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0t IEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk KSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hF UkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgREVGQVVMVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcy cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1st MSwtMV0nLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRl czoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9ybmcgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksg YWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAy MC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyks ICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxh ciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJy bmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrMl9ybmcycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJu Z19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmsKKyAgICBGT1JF SUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBD QVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5n MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBp ZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0 ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxV RVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAn WzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAnWzksMTAp JyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAx KScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRl bGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxf cm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChp ZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5n MnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAw LDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAn WzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9y YWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAy MC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cist LSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVy ZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAy MC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAy MS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworREVMRVRF IEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAn MjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdI RVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCitU UlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5nMnJuZzsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYs NyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9p ZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyksICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJy bmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrLAorICBBREQgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxl ZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAn WzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9y bmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0g bm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJyBX SEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9z cyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkp Jyk7CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s5LDEwKScgV0hFUkUgaWQxID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxM ICh0d28gc2NhbGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3Jh bF9mazJfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScpOworLS0g bGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVs ZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdb OCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdb OCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6 ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIw MCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQpCist LQorCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5nMnJuZzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNykn LCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2Fu J3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJy bmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrLAorICBBREQgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMICh2YWxpZF9hdCkgT04gVVBEQVRFIFNFVCBO VUxMOworLS0gb2s6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9p ZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBP TiBERUxFVEUgU0VUIE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxl ZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUg aWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0 ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxf cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAs MjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2Vk IHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRl bXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCBk YXRlcmFuZ2UobnVsbCwgbnVsbCkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcp Jyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBBTFRFUiBDT0xVTU4gcGFy ZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQy IFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9y bmcycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAg IEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisg ICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9O IFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRF IHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlk MSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6 CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBX SEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9z cyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkp Jyk7CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s5LDEwKScsIGlkMiA9ICdbOSwx MCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0 ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwy MDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQg ZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVt cG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIGRh dGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSkn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNykn KTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24t RlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwx MDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQg cm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0w MScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00g dGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0w MS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlk ID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFV TFQgc3Vic2V0KQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3Ju ZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1stMSwtMV0nLCAnWzYsNyknLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScs ICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4n dCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJu ZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERS T1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3JuZzJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFy ZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgor ICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAodmFsaWRfYXQpIE9OIFVQREFURSBTRVQgREVGQVVM VDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJybmcKKyAgQUxURVIgQ09M VU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9y bmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklP RCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUg U0VUIERFRkFVTFQgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQx ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQg PSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0x XScsICdbOCw5KScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxV RVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAn WzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKIAogLS0KIC0tIHRlc3QgRk9SRUlHTiBLRVksIG11bHRpcmFuZ2UgcmVmZXJl bmNlcyBtdWx0aXJhbmdlCkBAIC0xODU1LDYgKzIxOTEsNDA4IEBAIFdIRVJFIGlkID0gJ1s1LDYp JzsKIERFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzMs NCknOwogREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQg dmFsaWRfYXQgPSBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0w Mi0wMScpKTsKIAorLS0KKworLS0KKy0tIG1sdHJuZzJtbHRybmcgdGVzdCBPTiBVUERBVEUvREVM RVRFIG9wdGlvbnMKKy0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQor LS0gcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQg TlVMTAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0gcmVm ZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQg ZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMg U0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVM TCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28g c2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQg REVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZB VUxUICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQg KHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5n LCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf bWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAx KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykp LCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcKKyAgRFJP UCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50 X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcKKyAg ICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBi b3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkp IFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNF VCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkg VkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX21sdHJuZyBTRVQg aWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAx LTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX21s dHJuZywgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21s dHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAw LDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSwgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9N IHRlbXBvcmFsX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVM RVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5T RVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBv cmFsX21sdHJuZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBp ZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksg cmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRy bmcsIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRy bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwx MDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSksICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZworICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZwor ICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAx JykpKSBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX21sdHJu ZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElO VE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcg U0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfbWx0cm5nLCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9y YWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRF IEZST00gdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScpOworREVMRVRFIEZST00g dGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdI RVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tCisKK1RSVU5DQVRFIHRlbXBv cmFsX21sdHJuZywgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSks ICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZworICBBTFRF UiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcKKyAgICBPTiBERUxF VEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJv dGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkg U0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VU IGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBW QUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBp ZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEt MDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJF IGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBG SyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFs X21sdHJuZywgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRy bmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdb Niw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9N IHRlbXBvcmFsX21sdHJuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk KSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRy bmcgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIw MCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5j ZWQgdXBkYXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1w b3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYs NyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJywgJ1s2 LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZworICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFs X21sdHJuZzIKKyAgICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxl ZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcy MDIwLTAxLTAxJykpKSBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRl bXBvcmFsX21sdHJuZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwx MDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQg cm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChp ZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRl bXBvcmFsX21sdHJuZzIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5E IHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf ZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28g c2NhbGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9m azJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQy LCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQy KSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAx LTAxJykpKSBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf bWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFj cm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAo aWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAn WzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJywg J1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbOCw5 KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVM TCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChp ZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFC TEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrMl9tbHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0 cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQ RVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04g REVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3Ro IHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg KGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBT RVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIg U0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0w MS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21s dHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVT ICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIg U0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcy MDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQor LS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJt bHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEw MCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSksICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBP IGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hFUkUgaWQxID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVy ZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRy bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIg Y29scywgU0VUIE5VTEwgc3Vic2V0KQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwg dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcy IChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworLS0gZmFp bHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUg dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9tbHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5n Mm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVM RVRFIFNFVCBOVUxMICh2YWxpZF9hdCkgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gb2s6CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZworICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9tbHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9p ZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZzIKKyAg ICBPTiBERUxFVEUgU0VUIE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0t IGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAx LTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxV RVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hF UkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1 cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1w b3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdb LTEsLTFdJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcp JywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3 KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAg QUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBBTFRFUiBD T0xVTU4gcGFyZW50X2lkMiBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlO VCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9y YWxfZmsyX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFy ZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfbWx0cm5n MgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBs ZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAn MjAyMC0wMS0wMScpKSkgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQx ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hF UkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVw ZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAn WzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5n IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAx KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykp LCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAn WzksMTApJywgaWQyID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQg QD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5n Mm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFy IGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcyLCB0ZW1wb3JhbF9mazJfbWx0 cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxp ZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lk MikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9u IGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0w MS0wMScpKSkgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hF UkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBh Y3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIg KGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEt MDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScs ICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgs OSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERF RkFVTFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorLS0KKworVFJVTkNB VEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwt MV0nLCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgn WzYsNyknLCAnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSkn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwg J1s2LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBF UklPRCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZworICBB TFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lk MSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxf bWx0cm5nMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAodmFsaWRfYXQpIE9OIFVQREFURSBT RVQgREVGQVVMVDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmssCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRl bXBvcmFsX21sdHJuZzIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHBhcmVudF9pZDEpIE9O IFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRF IEZST00gdGVtcG9yYWxfbWx0cm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkMSA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJF IGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRh dGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAs MTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAo aWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScs ICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor CistLSBGSyB3aXRoIGEgY3VzdG9tIHJhbmdlIHR5cGUKKworQ1JFQVRFIFRZUEUgbXlkYXRlcmFu Z2UgQVMgcmFuZ2Uoc3VidHlwZT1kYXRlKTsKKworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzMg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX3JuZzNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKQorKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9mazNfcm5nMnJuZyAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfYXQgbXlkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisg IENPTlNUUkFJTlQgdGVtcG9yYWxfZmszX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazNfcm5nMnJu Z19mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmczIChpZCwgUEVSSU9EIHZhbGlkX2F0KSBPTiBERUxFVEUgQ0FTQ0FE RQorKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzMgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCBteWRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmszX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbNSw2KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4 LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmczIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbOCw5KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrM19ybmcycm5nIFdIRVJFIGlkID0gJ1s1LDYpJzsKKwor RFJPUCBUQUJMRSB0ZW1wb3JhbF9mazNfcm5nMnJuZzsKK0RST1AgVEFCTEUgdGVtcG9yYWxfcm5n MzsKK0RST1AgVFlQRSBteWRhdGVyYW5nZTsKKwogLS0KIC0tIEZLIGJldHdlZW4gcGFydGl0aW9u ZWQgdGFibGVzOiByYW5nZXMKIC0tCkBAIC0xODY1LDggKzI2MDMsOCBAQCBDUkVBVEUgVEFCTEUg dGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nICgKICAgbmFtZSB0ZXh0LAogICBDT05TVFJBSU5UIHRl bXBvcmFsX3Bhcml0aW9uZWRfcm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKICkgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsKLUNSRUFURSBUQUJMRSB0cDEg cGFydGl0aW9uIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzEs MiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknKTsKLUNS RUFURSBUQUJMRSB0cDIgcGFydGl0aW9uIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1Ig VkFMVUVTIElOICgnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScs ICdbMTIsMTMpJyk7CitDUkVBVEUgVEFCTEUgdHAxIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3 LDgpJywgJ1s5LDEwKScsICdbMTEsMTIpJywgJ1sxMywxNCknLCAnWzE1LDE2KScsICdbMTcsMTgp JywgJ1sxOSwyMCknLCAnWzIxLDIyKScsICdbMjMsMjQpJyk7CitDUkVBVEUgVEFCTEUgdHAyIFBB UlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1swLDEp JywgJ1syLDMpJywgJ1s0LDUpJywgJ1s2LDcpJywgJ1s4LDkpJywgJ1sxMCwxMSknLCAnWzEyLDEz KScsICdbMTQsMTUpJywgJ1sxNiwxNyknLCAnWzE4LDE5KScsICdbMjAsMjEpJywgJ1syMiwyMykn LCAnWzI0LDI1KScpOwogSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwg dmFsaWRfYXQsIG5hbWUpIFZBTFVFUwogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAx JywgJzIwMDAtMDItMDEnKSwgJ29uZScpLAogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAy LTAxJywgJzIwMDAtMDMtMDEnKSwgJ29uZScpLApAQCAtMTg4MCw4ICsyNjE4LDggQEAgQ1JFQVRF IFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKAogICBDT05TVFJBSU5UIHRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5n IChpZCwgUEVSSU9EIHZhbGlkX2F0KQogKSBQQVJUSVRJT04gQlkgTElTVCAoaWQpOwotQ1JFQVRF IFRBQkxFIHRma3AxIHBhcnRpdGlvbiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n IEZPUiBWQUxVRVMgSU4gKCdbMSwyKScsICdbMyw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwx MCknLCAnWzExLDEyKScpOwotQ1JFQVRFIFRBQkxFIHRma3AyIHBhcnRpdGlvbiBPRiB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIEZPUiBWQUxVRVMgSU4gKCdbMiwzKScsICdbNCw1KScs ICdbNiw3KScsICdbOCw5KScsICdbMTAsMTEpJywgJ1sxMiwxMyknKTsKK0NSRUFURSBUQUJMRSB0 ZmtwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFM VUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sx MSwxMiknLCAnWzEzLDE0KScsICdbMTUsMTYpJywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEs MjIpJywgJ1syMywyNCknKTsKK0NSRUFURSBUQUJMRSB0ZmtwMiBQQVJUSVRJT04gT0YgdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzAsMSknLCAnWzIsMykn LCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScsICdbMTIsMTMpJywgJ1sxNCwx NSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywgJ1syMCwyMSknLCAnWzIyLDIzKScsICdbMjQsMjUp Jyk7CiAKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2luZyBpbnNlcnRzCkBAIC0xOTQw LDM2ICsyNjc4LDkwIEBAIERFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBXSEVS RSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZXJhbmdlCiAtLSBwYXJ0aXRpb25lZCBG SyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQogLS0KIAorVFJVTkNBVEUgdGVtcG9yYWxfcGFy dGl0aW9uZWRfcm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkg VkFMVUVTICgnWzQsNSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAn WzYsNyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcKICAg RFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmssCiAgIEFE RCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsKICAgICBGT1JF SUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ybmcKICAgICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FT Q0FERTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nIFdIRVJFIGlkID0gJ1s0LDUpJzsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzQsNSknOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1sxNSwxNiknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb MTUsMTYpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEwLDExKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyksICdbMTUsMTYpJyk7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBp ZCA9ICdbMTYsMTcpJyBXSEVSRSBpZCA9ICdbMTUsMTYpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1sxMCwxMSknOwogCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJl bmNlZCBkZWxldGVzIENBU0NBREUKIC0tCiAKK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1s1LDYpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s4LDkp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBp ZCA9ICdbNSw2KSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hFUkUg aWQgPSAnWzgsOSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTcsMTgpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE3LDE4KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMSwxMiknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzE3LDE4KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1sxNywxOCknIEFORCB2YWxp ZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzExLDEyKSc7CisKIC0tCiAtLSBwYXJ0aXRp b25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKIC0tCiAKK1RSVU5DQVRFIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOSwxMCknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyksICdbOSwxMCknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3Ju ZzJybmcKICAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdf ZmssCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsK ICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcKICAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04g VVBEQVRFIFNFVCBOVUxMOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlk ID0gJ1sxMCwxMSknIFdIRVJFIGlkID0gJ1s5LDEwKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzYsNyknOworVVBEQVRFIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgaWQgPSAnWzEwLDExKScgV0hFUkUgaWQgPSAnWzksMTAp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBp ZCA9ICdbNiw3KSc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzE4LDE5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIw LTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFs aWRfYXQpIFZBTFVFUyAoJ1sxOCwxOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0w MS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTIsMTMpJywgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxOCwxOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmcgU0VUIGlkID0gJ1sxOSwyMCknIFdIRVJFIGlkID0gJ1sxOCwxOSknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEyLDEzKSc7CiAKIC0tCiAtLSBwYXJ0 aXRpb25lZCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwKIC0tCiAKK1RSVU5DQVRFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbMTEsMTIpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQs IHBhcmVudF9pZCkgVkFMVUVTICgnWzcsOCknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScpLCAnWzExLDEyKScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRf cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAx LTAxJyBXSEVSRSBpZCA9ICdbMTEsMTIpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbNyw4KSc7CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgV0hFUkUgaWQgPSAnWzExLDEyKSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzcsOCknOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sy MCwyMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjAs MjEpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZCkgVkFMVUVTICgnWzEzLDE0KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JyksICdbMjAsMjEpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hF UkUgaWQgPSAnWzIwLDIxKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdb MTMsMTQpJzsKKwogLS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQg REVGQVVMVAogLS0KIAorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nLCB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1swLDEpJywgZGF0ZXJhbmdlKG51bGwsIG51 bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbMTIsMTMpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpLCAnWzEyLDEzKScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZwogICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdb LTEsLTFdJywKICAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJy bmdfZmssCkBAIC0xOTc3LDExICsyNzY5LDM0IEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX3JuZzJybmcKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcKICAgICBPTiBE RUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworVVBEQVRFIHRlbXBvcmFs X3BhcnRpdGlvbmVkX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAx JyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1sxMywxNCknIFdIRVJFIGlkID0gJ1sxMiwxMykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlk ID0gJ1s4LDkpJzsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgU0VUIGlkID0gJ1sx MywxNCknIFdIRVJFIGlkID0gJ1sxMiwxMyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1s4LDkpJzsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjIsMjMpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIyLDIzKScsIGRhdGVy YW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1sxNCwxNSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzIyLDIz KScpOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgaWQgPSAnWzIzLDI0KScg V0hFUkUgaWQgPSAnWzIyLDIzKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9 ICdbMTQsMTUpJzsKIAogLS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgREVGQVVMVAogLS0KIAorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nLCB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1swLDEpJywgZGF0ZXJhbmdlKG51bGws IG51bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbMTQsMTUpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzksMTApJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxNCwxNSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBU TyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzE0LDE1KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzksMTApJzsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBXSEVSRSBpZCA9ICdbMTQsMTUpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbOSwx MCknOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1syNCwyNSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbMjQsMjUpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzE1LDE2KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJyksICdbMjQsMjUpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgV0hFUkUgaWQgPSAnWzI0LDI1KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBX SEVSRSBpZCA9ICdbMTUsMTYpJzsKKwogRFJPUCBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nOwogRFJPUCBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmc7CiAKQEAgLTIw NzAsMzYgKzI4ODUsOTAgQEAgREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5n IFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlbXUKIC0tIHBhcnRpdGlvbmVk IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFCiAtLQogCitUUlVOQ0FURSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9tbHRybmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRy bmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzQsNSknLCBkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcp Jyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nCiAg IERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nX2Zr LAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5n X2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nCiAgICAgT04gREVMRVRFIENBU0NB REUgT04gVVBEQVRFIENBU0NBREU7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5n IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTkt MDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzQsNSknOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBT RVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNCw1KSc7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzE1LDE2KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIw LTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMgKCdbMTUsMTYpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1sxMCwxMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpKSwgJ1sxNSwxNiknKTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcg U0VUIGlkID0gJ1sxNiwxNyknIFdIRVJFIGlkID0gJ1sxNSwxNiknIEFORCB2YWxpZF9hdCBAPiAn MjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2Zr X21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwLDExKSc7CiAKIC0tCiAtLSBwYXJ0aXRpb25l ZCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERQogLS0KIAorVFJVTkNBVEUgdGVtcG9yYWxf cGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5n OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0 cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s1LDYpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5 KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAy MC0wMS0wMScpKSkgV0hFUkUgaWQgPSAnWzgsOSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbOCw5KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQg PSAnWzUsNiknOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwg dmFsaWRfYXQpIFZBTFVFUyAoJ1sxNywxOCknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE3LDE4KScsIGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTEsMTIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTcsMTgpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9tbHRybmcgV0hFUkUgaWQgPSAnWzE3LDE4KScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRf ZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTEsMTIpJzsKKwogLS0KIC0tIHBhcnRpdGlv bmVkIEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVMTAogLS0KIAorVFJVTkNBVEUgdGVtcG9y YWxfcGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0 cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s5LDEwKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2Zr X21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbNiw3KScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAn WzksMTApJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0 cm5nCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0 cm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcy bWx0cm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQog ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nCiAgICAgT04gREVMRVRF IFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBTRVQgaWQgPSAnWzEwLDExKScgV0hFUkUg aWQgPSAnWzksMTApJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0 cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfbWx0cm5nIFNFVCBpZCA9ICdbMTAsMTEpJyBXSEVSRSBpZCA9ICdbOSwxMCknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0g J1s2LDcpJzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbMTgsMTkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxOCwxOSknLCBkYXRlbXVsdGlyYW5n ZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEyLDEzKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzE4LDE5KScpOworVVBEQVRFIHRlbXBvcmFsX3BhcnRp dGlvbmVkX21sdHJuZyBTRVQgaWQgPSAnWzE5LDIwKScgV0hFUkUgaWQgPSAnWzE4LDE5KScgQU5E IHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKIAogLS0K IC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAogLS0KIAorVFJV TkNBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxMSwxMiknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFM VUVTICgnWzcsOCknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScpKSwgJ1sxMSwxMiknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVk X21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkID0gJ1sxMSwxMiknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1s3LDgpJzsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVS RSBpZCA9ICdbMTEsMTIpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf bWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNyw4KSc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIwLDIxKScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbMjAsMjEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEt MDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1s dHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMywxNCknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1syMCwyMSkn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdb MjAsMjEpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMywx NCknOworCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZB VUxUCiAtLQogCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcsIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzAsMSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRp dGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTIsMTMpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTIsMTMpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nCiAgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQg U0VUIERFRkFVTFQgJ1swLDEpJywKICAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX21sdHJuZzJtbHRybmdfZmssCkBAIC0yMTA3LDExICsyOTc2LDM0IEBAIEFMVEVSIFRB QkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcKICAgICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9tbHRybmcKICAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNF VCBERUZBVUxUOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIw MjAtMDEtMDEnKSkpIFNFVCBpZCA9ICdbMTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBp ZCA9ICdbOCw5KSc7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFNFVCBpZCA9 ICdbMTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbOCw5KSc7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzIyLDIzKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAx LTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbMjIsMjMpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIw LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sx NCwxNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSwgJ1syMiwyMyknKTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgU0VU IGlkID0gJ1syMywyNCknIFdIRVJFIGlkID0gJ1syMiwyMyknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzE0LDE1KSc7CiAKIC0tCiAtLSBwYXJ0aXRpb25lZCBG SyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKIC0tCiAKK1RSVU5DQVRFIHRlbXBvcmFs X3BhcnRpdGlvbmVkX21sdHJuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJu ZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbMCwxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1sxNCwxNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzksMTApJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdb MTQsMTUpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScs ICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbMTQsMTUpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbOSwxMCknOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFdIRVJFIGlkID0gJ1sxNCwx NSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5n IFdIRVJFIGlkID0gJ1s5LDEwKSc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9t bHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjQsMjUpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxNSwxNiknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1syNCwyNSknKTsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbMjQsMjUpJyBBTkQg dmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxNSwxNiknOworCiBEUk9Q IFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CiBEUk9QIFRBQkxF IHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZzsKIAotLSAKMi4zOS41Cgo= --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0006-Add-isolation-tests-for-UPDATE-DELETE-FOR-PORTIO.patch" Content-Disposition: attachment; filename="v59-0006-Add-isolation-tests-for-UPDATE-DELETE-FOR-PORTIO.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4f5 RnJvbSA3N2M5M2UyZDE2OWM5YWM0ZjcyMGYxZTFjMTMwYzkyMGIwMTVhMzU3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMzEgT2N0IDIwMjUgMTk6NTk6NTIgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAwNi8xMV0gQWRkIGlzb2xhdGlvbiB0ZXN0cyBmb3IgVVBEQVRFL0RFTEVU RSBGT1IgUE9SVElPTgogT0YKCkNvbmN1cnJlbnQgdXBkYXRlcy9kZWxldGVzIGluIFJFQUQgQ09N TUlUVEVEIG1vZGUgZG9uJ3QgZ2l2ZSB5b3Ugd2hhdCB5b3Ugd2FudDoKdGhlIHNlY29uZCB1cGRh dGUvZGVsZXRlIGZhaWxzIHRvIGxlZnRvdmVycyBmcm9tIHRoZSBmaXJzdCwgc28geW91IGVzc2Vu dGlhbGx5CmhhdmUgbG9zdCB1cGRhdGVzL2RlbGV0ZXMuIEJ1dCB3ZSBhcmUgZm9sbG93aW5nIHRo ZSBydWxlcywgYW5kIG90aGVyIFJEQk1TZXMKZ2l2ZSB5b3Ugc2NyZXd5IHJlc3VsdHMgaW4gUkVB RCBDT01NSVRURUQgdG9vIChhbGJlaXQgZGlmZmVyZW50KS4KCk9uZSBhcHByb2FjaCBpcyB0byBs b2NrIHRoZSBoaXN0b3J5IHlvdSB3YW50IHdpdGggU0VMRUNUIEZPUiBVUERBVEUgYmVmb3JlCmlz c3VpbmcgdGhlIGFjdHVhbCBVUERBVEUvREVMRVRFLiBUaGF0IHdheSB5b3Ugc2VlIHRoZSBsZWZ0 b3ZlcnMgb2YgYW55b25lIGVsc2UKd2hvIGFsc28gdG91Y2hlZCB0aGF0IGhpc3RvcnkuIFRoZSBp c29sYXRpb24gdGVzdHMgaGVyZSB1c2UgdGhhdCBhcHByb2FjaCBhbmQKc2hvdyB0aGF0IGl0J3Mg dmlhYmxlLgotLS0KIGRvYy9zcmMvc2dtbC9kbWwuc2dtbCAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgMTYgKwogc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMgICAgICAg IHwgICAgNCArCiAuLi4vaXNvbGF0aW9uL2V4cGVjdGVkL2Zvci1wb3J0aW9uLW9mLm91dCAgICAg fCA1ODAzICsrKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0aW9uX3Nj aGVkdWxlICAgICAgICAgfCAgICAxICsKIHNyYy90ZXN0L2lzb2xhdGlvbi9zcGVjcy9mb3ItcG9y dGlvbi1vZi5zcGVjICB8ICA3NTEgKysrCiA1IGZpbGVzIGNoYW5nZWQsIDY1NzUgaW5zZXJ0aW9u cygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L2lzb2xhdGlvbi9leHBlY3RlZC9mb3It cG9ydGlvbi1vZi5vdXQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9pc29sYXRpb24vc3Bl Y3MvZm9yLXBvcnRpb24tb2Yuc3BlYwoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9kbWwuc2dt bCBiL2RvYy9zcmMvc2dtbC9kbWwuc2dtbAppbmRleCBhODk5YzlhYjQ0Ny4uZTRhZmVkZjRkN2Eg MTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9kbWwuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZG1s LnNnbWwKQEAgLTM5NCw2ICszOTQsMjIgQEAgV0hFUkUgaWQgPSA1OwogICAgY29sdW1uIHJlZmVy ZW5jZXMgYXJlIG5vdC4KICAgPC9wYXJhPgogCisgIDxwYXJhPgorICAgSW4gPGxpdGVyYWw+UkVB RCBDT01NSVRURUQ8L2xpdGVyYWw+IG1vZGUsIHRlbXBvcmFsIHVwZGF0ZXMgYW5kIGRlbGV0ZXMg Y2FuCisgICBjYXVzZSB1bmV4cGVjdGVkIHJlc3VsdHMgd2hlbiB0aGV5IGNvbmN1cnJlbnRseSB0 b3VjaCB0aGUgc2FtZSByb3cuIEl0IGlzCisgICBwb3NzaWJsZSB0byBsb3NlIGFsbCBvciBwYXJ0 IG9mIHRoZSBzZWNvbmQgdXBkYXRlIG9yIGRlbGV0ZS4gVGhhdCdzIGJlY2F1c2UKKyAgIGFmdGVy IHRoZSBmaXJzdCB1cGRhdGUgY2hhbmdlcyB0aGUgc3RhcnQvZW5kIHRpbWVzIG9mIHRoZSBvcmln aW5hbAorICAgcmVjb3JkLCBpdCBtYXkgbm8gbG9uZ2VyIGZpdCB3aXRoaW4gdGhlIHNlY29uZCBx dWVyeSdzIDxsaXRlcmFsPkZPUiBQT1JUSU9OCisgICBPRjwvbGl0ZXJhbD4gYm91bmRzLCBzbyBp dCBiZWNvbWVzIGRpc3F1YWxpZmllZCBmcm9tIHRoZSBxdWVyeS4gT24gdGhlIG90aGVyCisgICBo YW5kIHRoZSBqdXN0LWluc2VydGVkIHRlbXBvcmFsIGxlZnRvdmVycyBtYXkgYmUgb3Zlcmxvb2tl ZCBieSB0aGUgc2Vjb25kIHF1ZXJ5LAorICAgd2hpY2ggaGFzIGFscmVhZHkgc2Nhbm5lZCB0aGUg dGFibGUgdG8gZmluZCByb3dzIHRvIG1vZGlmeS4gVG8gc29sdmUgdGhlc2UKKyAgIHByb2JsZW1z LCBwcmVjZWRlIGV2ZXJ5IHRlbXBvcmFsIHVwZGF0ZS9kZWxldGUgd2l0aCBhIDxsaXRlcmFsPlNF TEVDVCBGT1IKKyAgIFVQREFURTwvbGl0ZXJhbD4gbWF0Y2hpbmcgdGhlIHNhbWUgY3JpdGVyaWEg KGluY2x1ZGluZyB0aGUgdGFyZ2V0ZWQgcG9ydGlvbiBvZgorICAgYXBwbGljYXRpb24gdGltZSku IFRoYXQgd2F5IHRoZSBhY3R1YWwgdXBkYXRlL2RlbGV0ZSBkb2Vzbid0IGJlZ2luIHVudGlsIHRo ZQorICAgbG9jayBpcyBoZWxkLCBhbmQgYWxsIGNvbmN1cnJlbnQgbGVmdG92ZXJzIHdpbGwgYmUg dmlzaWJsZS4gSW4gb3RoZXIKKyAgIHRyYW5zYWN0aW9uIGlzb2xhdGlvbiBsZXZlbHMsIHRoaXMg bG9jayBpcyBub3QgcmVxdWlyZWQuCisgIDwvcGFyYT4KKwogICA8cGFyYT4KICAgIFdoZW4gdGVt cG9yYWwgbGVmdG92ZXJzIGFyZSBpbnNlcnRlZCwgYWxsIDxsaXRlcmFsPklOU0VSVDwvbGl0ZXJh bD4KICAgIHRyaWdnZXJzIGFyZSBmaXJlZCwgYnV0IHBlcm1pc3Npb24gY2hlY2tzIGZvciBpbnNl cnRpbmcgcm93cyBhcmUKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVNb2Rp ZnlUYWJsZS5jIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMKaW5kZXgg NjY1ZGJjMTgyMzkuLjg1NzEzOWVjNThiIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9leGVjdXRv ci9ub2RlTW9kaWZ5VGFibGUuYworKysgYi9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlTW9kaWZ5 VGFibGUuYwpAQCAtMTQwMyw2ICsxNDAzLDEwIEBAIEV4ZWNGb3JQb3J0aW9uT2ZMZWZ0b3ZlcnMo TW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LAogCSAqIFdlIGhhdmUgYWxyZWFkeSBsb2NrZWQg dGhlIHR1cGxlIGluIEV4ZWNVcGRhdGUvRXhlY0RlbGV0ZSwgYW5kIGl0IGhhcwogCSAqIHBhc3Nl ZCBFdmFsUGxhblF1YWwuIFRoaXMgZW5zdXJlcyB0aGF0IGNvbmN1cnJlbnQgdXBkYXRlcyBpbiBS RUFECiAJICogQ09NTUlUVEVEIGNhbid0IGluc2VydCBjb25mbGljdGluZyB0ZW1wb3JhbCBsZWZ0 b3ZlcnMuCisJICoKKwkgKiBJdCBkb2VzICpub3QqIHByb3RlY3QgYWdhaW5zdCBjb25jdXJyZW50 IHVwZGF0ZS9kZWxldGVzIG92ZXJsb29raW5nIGVhY2gKKwkgKiBvdGhlcnMnIGxlZnRvdmVycyB0 aG91Z2guIFNlZSBvdXIgaXNvbGF0aW9uIHRlc3RzIGZvciBkZXRhaWxzIGFib3V0IHRoYXQKKwkg KiBhbmQgYSB2aWFibGUgd29ya2Fyb3VuZC4KIAkgKi8KIAlpZiAoIXRhYmxlX3R1cGxlX2ZldGNo X3Jvd192ZXJzaW9uKHJlc3VsdFJlbEluZm8tPnJpX1JlbGF0aW9uRGVzYywgdHVwbGVpZCwgU25h cHNob3RBbnksIG9sZHR1cGxlU2xvdCkpCiAJCWVsb2coRVJST1IsICJmYWlsZWQgdG8gZmV0Y2gg dHVwbGUgZm9yIEZPUiBQT1JUSU9OIE9GIik7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9pc29sYXRp b24vZXhwZWN0ZWQvZm9yLXBvcnRpb24tb2Yub3V0IGIvc3JjL3Rlc3QvaXNvbGF0aW9uL2V4cGVj dGVkL2Zvci1wb3J0aW9uLW9mLm91dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMC4uODlmNjQ2ZGQ4OTkKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdC9pc29sYXRpb24v ZXhwZWN0ZWQvZm9yLXBvcnRpb24tb2Yub3V0CkBAIC0wLDAgKzEsNTgwMyBAQAorUGFyc2VkIHRl c3Qgc3BlYyB3aXRoIDIgc2Vzc2lvbnMKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJy YyBzMmxvY2syMDI3IHMydXBkMjAyNyBzMmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMxcQor c3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMy cmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAy NzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0 IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgt MDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVj dHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAy Ni0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3Rl cCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEt MDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAw CitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx cmMgczJyYyBzMmxvY2syMDI1MDMgczJ1cGQyMDI1MDMgczJjIHMxbG9jazIwMjUgczF1cGQyMDI1 IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVE Oworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVw IHMybG9jazIwMjUwMzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAn WzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAyNS0wNC0wMSknCisgIE9SREVS IEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUwMzogCisg IFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAz LTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNU ICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdb MjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsK KworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAor WzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAn MjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAzLTAxKXwgOC4wMAorWzEs Mil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMjYt MDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUyMDI2IHMy dXBkMjAyNTIwMjYgczJjIHMxbG9jazIwMjUgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFyYzog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUyMDI2OiAKKyAg U0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0 ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQ REFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYt MDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMK KyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0w MS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAx LDIwMjYtMDYtMDEpfDEwLjAwCisoMiByb3dzKQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBU TyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4wMAor WzEsMil8WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIw MjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMxbG9jazIwMjUgczF1 cGQyMDI1IHMxYyBzMmxvY2syMDI3IHMydXBkMjAyNyBzMmMgczFxCitzdGVwIHMxcmM6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICog RlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAy NS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKwor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEg cm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHBy aWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7Citz dGVwIHMybG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0g J1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAxLDIwMjgtMDEtMDEpJworICBPUkRF UiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDI2 LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEt MDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdb MSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwg OC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAx LTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMxbG9jazIw MjUgczF1cGQyMDI1IHMxYyBzMmxvY2syMDI1MDMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBz MXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczFsb2NrMjAyNTogCisg IFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9h dCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBV UERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzog Q09NTUlUOworc3RlcCBzMmxvY2syMDI1MDM6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisg IFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUtMDQt MDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1 cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAx LDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAor WzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJj IHMycmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMybG9jazIwMjUyMDI2IHMydXBkMjAyNTIw MjYgczJjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRU RUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAn WzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVS IEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0w MScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmxvY2syMDI1MjAyNjogCisgIFNFTEVD VCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAn WzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7 CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAK K1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCitzdGVwIHMy dXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAx LTAxLDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTAxLTAxKXwxMC4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNi0wNi0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2LTA2LTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXJjIHMycmMgczJsb2NrMjAyNyBzMnVwZDIwMjcgczFsb2NrMjAyNSBzMmMgczF1cGQyMDI1IHMx YyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOwor c3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMy bG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIp JyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAxLDIwMjgtMDEtMDEpJworICBPUkRFUiBCWSB2 YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUg aWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisg IE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6 IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZHx2YWxpZF9hdHxw cmljZQorLS0rLS0tLS0tLS0rLS0tLS0KKygwIHJvd3MpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4 LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEt MDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAy NTAzIHMydXBkMjAyNTAzIHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMx cmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MDM6IAor ICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUtMDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1Ig VVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQt MDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwy KScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkg dmFsaWRfYXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOwor c3RlcCBzMWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wMy0w MSl8IDguMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfCA4LjAwCitbMSwyKXxbMjAy NS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxv Y2syMDI1MjAyNiBzMnVwZDIwMjUyMDI2IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFx CitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAg czJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2sy MDI1MjAyNjogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMikn IEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZh bGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEn IFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hF UkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSkn CisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCisoMSByb3cpCisKK3N0 ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAx LTAxLDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTAxLTAxKXwgOC4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNi0wNi0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2LTA2LTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXJjIHMycmMgczJsb2NrMjAyNyBzMmRlbDIwMjcgczJjIHMxbG9jazIwMjUgczF1cGQyMDI1IHMx YyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOwor c3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMy bG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIp JyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAxLDIwMjgtMDEtMDEpJworICBPUkRFUiBCWSB2 YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0w MScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENP TU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hF UkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSkn CisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0w MS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxb MjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMmRlbDIwMjUwMyBzMmMgczFsb2NrMjAy NSBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVB RCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1J VFRFRDsKK3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBX SEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMy0wMSwyMDI1LTA0LTAx KScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVs MjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZS T00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUt MDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIp fFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCitzdGVwIHMxdXBkMjAy NTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAz LTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsy MDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11 dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYgczJkZWwyMDI1MjAyNiBzMmMgczFsb2Nr MjAyNSBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENP TU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAyNTIwMjY6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz CisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYt MDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAg czJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYg J1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRF OworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAw CisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBT RVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy YyBzMnJjIHMxbG9jazIwMjUgczF1cGQyMDI1IHMxYyBzMmxvY2syMDI3IHMyZGVsMjAyNyBzMmMg czFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMWxv Y2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScg QU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFs aWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAn MjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMybG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAx LDIwMjgtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisK K3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEt MDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0 YXRpb246IHMxcmMgczJyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczJsb2NrMjAyNTAzIHMy ZGVsMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQg Q09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRU RUQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJF IGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJwor ICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1 OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAg U0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0 ICYmICdbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQ REFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwg OC4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUt MDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsy MDI1LTAxLTAxLDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAx KXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBz MWMgczJsb2NrMjAyNTIwMjYgczJkZWwyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxcmM6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICog RlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAy NS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKwor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEg cm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHBy aWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7Citz dGVwIHMybG9jazIwMjUyMDI2OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBp ZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAg T1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0w MSl8IDUuMDAKKygyIHJvd3MpCisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRP ICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7 CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitb MSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMg czJyYyBzMmxvY2syMDI3IHMyZGVsMjAyNyBzMWxvY2syMDI1IHMyYyBzMXVwZDIwMjUgczFjIHMx cQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVw IHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2Nr MjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFO RCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlk X2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCist LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJP TSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBU TyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxbG9jazIwMjU6 IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFs aWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBG T1IgVVBEQVRFOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9j azIwMjU6IDwuLi4gY29tcGxldGVkPgoraWR8dmFsaWRfYXR8cHJpY2UKKy0tKy0tLS0tLS0tKy0t LS0tCisoMCByb3dzKQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScK KyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEt MDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAy NTAzIHMyZGVsMjAyNTAzIHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMx cmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MDM6IAor ICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUtMDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1Ig VVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAy NS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxbG9jazIwMjU6IAorICBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQg JiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBE QVRFOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6 IDwuLi4gY29tcGxldGVkPgoraWR8dmFsaWRfYXR8cHJpY2UKKy0tKy0tLS0tLS0tKy0tLS0tCiso MCByb3dzKQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VU IHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7 CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitb MSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAzLTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAy Ni0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCBy b3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYg czJkZWwyMDI1MjAyNiBzMWxvY2syMDI1IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJj OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAyNTIwMjY6IAor ICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1Ig VVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcy MDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFsb2NrMjAyNTogCisg IFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9h dCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBV UERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAy NTogPC4uLiBjb21wbGV0ZWQ+CitpZHx2YWxpZF9hdHxwcmljZQorLS0rLS0tLS0tLS0rLS0tLS0K KygwIHJvd3MpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBT RVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy YyBzMnJjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMg czFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxv Y2syMDI3OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScg QU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKScKKyAgT1JERVIgQlkgdmFs aWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAn MjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBw cm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0w MSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorKDEgcm93KQor CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsy MDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11 dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMydXBkMjAyNTAzIHMyYyBzMWxvY2syMDI1 IHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFE IENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlU VEVEOworc3RlcCBzMmxvY2syMDI1MDM6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdI RVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUtMDQtMDEp JworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQy MDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTog CisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxp ZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZP UiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0w MSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAy NS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBzMnVw ZDIwMjUyMDI2IHMyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MjAyNjogCisgIFNF TEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAm JiAnWzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERB VEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAx JworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJj OiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisg IFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEt MDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwy MDI2LTA2LTAxKXwxMC4wMAorKDIgcm93cykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNi0wNi0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2LTA2LTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXJjIHMycmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMy YyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOwor c3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMx bG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIp JyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2 YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0w MScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENP TU1JVDsKK3N0ZXAgczJsb2NrMjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hF UkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSkn CisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIw Mjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjct MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8 WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxcmMgczJyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczJsb2NrMjAyNTAz IHMydXBkMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJF QUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01N SVRURUQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdI RVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEp JworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwy MDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAgU0VMRUNUICogRlJP TSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0w My0wMSwyMDI1LTA0LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWR8 dmFsaWRfYXR8cHJpY2UKKy0tKy0tLS0tLS0tKy0tLS0tCisoMCByb3dzKQorCitzdGVwIHMydXBk MjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy YyBzMnJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMmxvY2syMDI1MjAyNiBzMnVwZDIwMjUy MDI2IHMyYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlU VEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7Citz dGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0g J1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRF UiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAg REVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczJsb2NrMjAyNTIwMjY6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIw MjYtMDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0 ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0g MTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjYtMDEtMDEsMjAyNi0wNi0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJs b2NrMjAyNyBzMnVwZDIwMjcgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAg czFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjc6IAor ICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgJiYgJ1syMDI3LTAxLTAxLDIwMjgtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1Ig VVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAx JworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFs b2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMikn IEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZh bGlkX2F0IEZPUiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczFsb2NrMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZHx2YWxpZF9hdHxwcmljZQorLS0rLS0t LS0tLS0rLS0tLS0KKygwIHJvd3MpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00g cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sx LDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4 LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJv d3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJ1 cGQyMDI1MDMgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUwMzogCisgIFNFTEVD VCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAn WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7 CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAg U0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxbG9jazIw MjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQg dmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9h dCBGT1IgVVBEQVRFOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx bG9jazIwMjU6IDwuLi4gY29tcGxldGVkPgoraWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyNS0w My0wMSwyMDI1LTA0LTAxKXwxMC4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUyMDI2IHMydXBkMjAy NTIwMjYgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUyMDI2OiAKKyAgU0VMRUNU ICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdb MjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsK KworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisg IFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWxvY2sy MDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5E IHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRf YXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjUt MDYtMDEsMjAyNi0wNi0wMSl8MTAuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNi0wNi0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2 LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNyBzMmRlbDIwMjcgczJjIHMxbG9jazIwMjUgczFkZWwy MDI1IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlU VEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7Citz dGVwIHMybG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0g J1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAxLDIwMjgtMDEtMDEpJworICBPUkRF UiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI3OiAKKyAg REVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy Ny0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMK KyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0w MS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBz MWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0 YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMyZGVsMjAyNTAzIHMy YyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MDM6IAorICBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAzLTAx LDIwMjUtMDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisK K3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAg U0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0 ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQ REFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKK3N0 ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJs b2NrMjAyNTIwMjYgczJkZWwyMDI1MjAyNiBzMmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMx cQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVw IHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2Nr MjAyNTIwMjY6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIp JyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEpJworICBPUkRFUiBCWSB2 YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJj OiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisg IFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEt MDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFk ZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczFsb2NrMjAy NSBzMWRlbDIwMjUgczFjIHMybG9jazIwMjcgczJkZWwyMDI3IHMyYyBzMXEKK3N0ZXAgczFyYzog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYg J1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRF OworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJsb2Nr MjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFO RCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlk X2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCist LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjYtMDEtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJP TSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBU TyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlU Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAor WzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJj IHMycmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMybG9jazIwMjUwMyBzMmRlbDIwMjUwMyBz MmMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsK K3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBz MWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwy KScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkg dmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMybG9jazIwMjUwMzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAg V0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAyNS0wNC0w MSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkfHZhbGlkX2F0fHByaWNl CistLSstLS0tLS0tLSstLS0tLQorKDAgcm93cykKKworc3RlcCBzMmRlbDIwMjUwMzogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMx YyBzMmxvY2syMDI1MjAyNiBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1 LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSBy b3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJsb2NrMjAyNTIw MjY6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQg dmFsaWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9h dCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBG Uk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEn IFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01N SVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAw CitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjcgczJkZWwyMDI3IHMxbG9jazIw MjUgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQg Q09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI3OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cwor ICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwyMDI4LTAx LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy ZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hF UkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSkn CisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZHx2YWxpZF9h dHxwcmljZQorLS0rLS0tLS0tLS0rLS0tLS0KKygwIHJvd3MpCisKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w MS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxb MjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMmRlbDIwMjUwMyBzMWxvY2syMDI1IHMy YyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVB RCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1J VFRFRDsKK3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBX SEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMy0wMSwyMDI1LTA0LTAx KScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVs MjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVS RSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScK KyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkfHZhbGlkX2F0 fHByaWNlCistLSstLS0tLS0tLSstLS0tLQorKDAgcm93cykKKworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBzMmRl bDIwMjUyMDI2IHMxbG9jazIwMjUgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MjAyNjogCisgIFNF TEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAm JiAnWzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERB VEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYt MDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VM RUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYm ICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFU RTsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiA8 Li4uIGNvbXBsZXRlZD4KK2lkfHZhbGlkX2F0fHByaWNlCistLSstLS0tLS0tLSstLS0tLQorKDAg cm93cykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx cnIgczJyciBzMnVwZDIwMjcgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAn MjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2 LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwx MC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKwor c3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMnVwZDIwMjUwMyBzMmMgczF1cGQyMDI1 IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVB RDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0 ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEw LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1 cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIw MjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwgOC4wMAorWzEs Mil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMy cnIgczJ1cGQyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBU TyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYt MDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsy MDI1LTA2LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAx KXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMydXBkMjAy NyBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJF QUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7Citz dGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBk MjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAy Ni0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJy ciBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEn CisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6 IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0w My0wMSwyMDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDgu MDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0 YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUyMDI2 IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVB RDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0 ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQy MDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEs MjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDEtMDEpfDEwLjAwCitb MSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIg czJyciBzMnVwZDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAy OC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNl cmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlU Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAor WzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJy IHMycnIgczJ1cGQyMDI1MDMgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRP ICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2Ug PSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBu b3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxcnIgczJyciBzMnVwZDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnVwZDIwMjUyMDI2OiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBT RVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+Citz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6 ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0 ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8 WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1cGQyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMxcQor c3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBz MnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVw IHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0 byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIw MjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMnVwZDIwMjUw MyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVB VEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0w MSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0w NC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisg IFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxk IG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6 IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0w NC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlv bjogczFyciBzMnJyIHMxcSBzMnVwZDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3Rl cCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy dXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQy MDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwy MDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygz IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczF1cGQyMDI1 IHMxYyBzMnVwZDIwMjcgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFU QUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0w MScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VU IHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlU Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAor WzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIw MjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEs Mil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMg czFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7Citz dGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisK K3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4 LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1 cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAx LDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAor WzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJy IHMycnIgczFxIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxcnI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1 OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisg IFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2 LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8 IDguMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0w MS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1 cGQyMDI3IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAy OC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNl cmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlU Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAor WzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJy IHMycnIgczFxIHMydXBkMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAz OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+ CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJS T1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAorWzEs Mil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1cGQyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMx YyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsK K3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykK Kworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJp Y2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6 IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwy MDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygz IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRlbDIwMjcgczJj IHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBF QVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxF IFJFQUQ7CitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTog CisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAx KXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4 LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXJyIHMycnIgczJkZWwyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMx cnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMyZGVsMjAyNTAzOiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0w MSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK Kyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRlbDIwMjUy MDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQ RUFUQUJMRSBSRUFEOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYt MDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAg czF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAx LDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxdXBkMjAyNSBz MWMgczJkZWwyMDI3IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJF UEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFC TEUgUkVBRDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQg cHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsK K3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEt MDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0 YXRpb246IHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNTAzIHMyYyBzMXEKK3N0ZXAg czFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczF1cGQyMDI1OiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAz LTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA0 LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxdXBkMjAy NSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScK KyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEt MDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczJkZWwyMDI3 IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFU QUJMRSBSRUFEOworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAy Ni0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdh aXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBs ZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJl bnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRl bDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAy NS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQ REFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8 Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRv IGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIg czJyciBzMmRlbDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w Ni0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVw ZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVw IHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUg YWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsy MDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11 dGF0aW9uOiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJy cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBz MmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIw MjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitF UlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0 ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCiso MiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMyZGVsMjAy NTAzIHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQ RUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00g cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8g JzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsK K3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4 LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXpl IGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxb MjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFyciBzMnJyIHMxcSBzMmRlbDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMx cQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3Rl cCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitz dGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0w MScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJy ZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFx IHMxdXBkMjAyNSBzMWMgczJkZWwyMDI3IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUg cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAy OC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3Rl cCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQg ICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8 WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEt MDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykK KworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMXVwZDIwMjUgczFjIHMy ZGVsMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVB VEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUg UkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisg IFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwy MDI1LTAzLTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sx LDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MjAyNiBz MmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7 CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cp CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2Ug PSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAg czJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAx KXwgOC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJkZWwyMDI3IHMxdXBkMjAy NSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJM RSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFE Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2Fp dGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxl dGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVu dCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBz MmRlbDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMt MDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQy MDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFj Y2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAy NS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRh dGlvbjogczFyciBzMnJyIHMxcSBzMmRlbDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMxcQor c3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBz MnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVw IHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAg U0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgor c3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9S OiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitz dGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1 LTA2LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJv d3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMnVwZDIwMjcgczJjIHMx ZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRB QkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJF QUQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNl ID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3Rl cCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlv bjogczFyciBzMnJyIHMydXBkMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnVwZDIwMjUwMzogCisg IFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAz LTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMnVwZDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUg czFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFE Oworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3Rl cCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAx MC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx ZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4w MAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMydXBkMjAyNyBzMmMg czFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7Citz dGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMx ZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAy OC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1 LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIp fFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJy IHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAn MjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0g MTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0 YXRpb246IHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMydXBkMjAyNTIwMjYgczJjIHMxcQorc3Rl cCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMWRlbDIwMjU6 IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2 LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEt MDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIw MjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0 YXRpb246IHMxcnIgczJyciBzMnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMx cnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNzogCisg IFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAx LTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsK K3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlh bGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEs Mil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMy cnIgczJ1cGQyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcy MDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRl bDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2Vz cyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0w My0wMSwyMDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMnVwZDIw MjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2 LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6 IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwy MDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygz IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1cGQyMDI3 IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFU QUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0w MScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNj ZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFx OiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3 LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBz MnVwZDIwMjUwMyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBU TyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAn MjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBz ZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAK K1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy ciBzMnJyIHMxcSBzMnVwZDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAy NTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJS T1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEs Mil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjcgczJjIHMx cQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3Rl cCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitz dGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBU TyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy ciBzMnJyIHMxcSBzMWRlbDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6 IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0w MScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczFkZWwyMDI1IHMxYyBzMnVw ZDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVB VEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUg UkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0w MScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVw ZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0w MSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1cGQy MDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQ RUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0w MS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdb MSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1 OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVl IHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEtMDEs MjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCiso MyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMydXBkMjAy NTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQ RUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1 LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIw MjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBk dWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMy0w MSwyMDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1cGQy MDI1MjAyNiBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCist LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRP ICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MWRlbDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFj Y2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAy NS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRl bDIwMjcgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAx LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx ZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRlbDIwMjUwMyBzMmMgczFkZWwyMDI1IHMx YyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsK K3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAg czJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRlbDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUg czFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFE Oworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3Rl cCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w MS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6 IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisK K3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjcg czJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFE Oworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3Rl cCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAx JyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXJyIHMycnIgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFxCitzdGVwIHMxcnI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXJyIHMycnIgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w MS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6 IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAx JworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0w Ni0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlv bjogczFyciBzMnJyIHMyZGVsMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0w MS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRl bDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4u LiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBj b25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMy cnIgczJkZWwyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZS T00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScg VE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6 IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3 YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21w bGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJy ZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczJk ZWwyMDI1MjAyNiBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRP ICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2Fp dGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxl dGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVu dCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBz MmRlbDIwMjcgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZS T00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScg VE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy ciBzMnJyIHMxcSBzMmRlbDIwMjUwMyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUw MzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlh bGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEs Mil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJkZWwyMDI1MjAyNiBzMmMgczFkZWwyMDI1IHMx YyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsK K3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykK Kworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJS T1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMWRlbDIwMjUg czFjIHMyZGVsMjAyNyBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRB QkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYt MDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAg czJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitz dGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMWRlbDIwMjUgczFjIHMyZGVsMjAy NTAzIHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUg UkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygx IHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjUw MzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMWRlbDIwMjUg czFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQ RUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcy MDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7Citz dGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJy ciBzMXEgczJkZWwyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjct MDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFk ZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwu Li4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8g Y29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICog RlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBz MnJyIHMxcSBzMmRlbDIwMjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUwMzog CisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIw MjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBk dWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNC0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFyciBzMnJyIHMxcSBzMmRlbDIwMjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBz MXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVs MjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczFkZWwyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6 ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQg ICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTA2LTAxKXwgNS4wMAorWzEsMil8 WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxc2VyIHMyc2VyIHMydXBkMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjc6IAor ICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0w MS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRP ICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4LjAwCitb MSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEtMDEsMjAy OC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNSBy b3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMnVwZDIwMjUwMyBz MmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBT RVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpB QkxFOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHBy aWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOwor c3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDgu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUt MDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfCA4 LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxc2VyIHMyc2VyIHMydXBkMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMx c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisg IFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2 LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUg cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sx LDIpfFsyMDI1LTA2LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2 LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJv d3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMg czJ1cGQyMDI3IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9 IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBz MnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAx LDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAor WzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNl ciBzMnNlciBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIw MjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0w MScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1 LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwg OC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKwor c3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1 MjAyNiBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpB QkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0 ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQy MDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEs MjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDEtMDEpfDEwLjAwCitb MSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2Vy IHMyc2VyIHMydXBkMjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgt MDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7 CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJp YWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sx LDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIg czJzZXIgczJ1cGQyMDI1MDMgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIw MjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKwor c3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDgu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01N SVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBz ZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAK K1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFz ZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEn IFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJp Y2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3Vs ZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEp fCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYt MDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVw IHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIw Mjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3Vy cmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAx KXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjUwMyBzMmMg czF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBT RVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01N SVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNl ID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlh bGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEs Mil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBz MnNlciBzMXEgczJ1cGQyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEn IFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVu dCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwx MC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKwor c3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBk MjAyNyBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpB QkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJv dykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmlj ZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAx LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXNlciBzMnNlciBzMXEgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMgczFxCitzdGVwIHMx c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQ REFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAx JyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wMy0wMSl8IDgu MDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0w MSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK Kyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMXVw ZDIwMjUgczFjIHMydXBkMjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0w MScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI1 LTA2LTAxLDIwMjYtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwx MC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKwor c3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcgczF1cGQyMDI1 IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpB QkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJv dykKKworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmlj ZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0w MScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTog PC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0 byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIw MjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAy NTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQt MDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxp emUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIp fFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJz ZXIgczFxIHMydXBkMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUyMDI2OiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBT RVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+Citz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6 ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0 ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8 WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxc2VyIHMyc2VyIHMyZGVsMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjc6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisg IFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAx LDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI1 MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklB TElaQUJMRTsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0w My0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxb MjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEK K3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjUy MDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAx LTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0w MSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAy Ni0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRh dGlvbjogczFzZXIgczJzZXIgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorc3RlcCBz MXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQ REFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7 CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitb MSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAy Ny0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCBy b3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXVwZDIwMjUgczFj IHMyZGVsMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBT RVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpB QkxFOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmlj ZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAzLTAx KXwgOC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2 LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXNlciBzMnNlciBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQorc3Rl cCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxdXBkMjAyNTogCisg IFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAx LTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdb MSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2 LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTA2 LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXNlciBzMnNlciBzMmRlbDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0w MScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx dXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNj ZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFx OiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4 LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXNlciBzMnNlciBzMmRlbDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAg czFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjUwMzogCisg IERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOwor c3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFs aXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwy KXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBz MXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVw IHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIw MjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmlj ZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJj OiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxk IG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6 IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisK K3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI3IHMyYyBzMXVw ZDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTEla QUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSBy b3cpCisKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29u Y3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJz ZXIgczFxIHMyZGVsMjAyNTAzIHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNF VCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5v dCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUu MDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0 YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI1MjAyNiBzMmMgczF1 cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEg cm93KQorCitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0 byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNl ciBzMnNlciBzMXEgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorc3RlcCBzMXNlcjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZS T00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScg VE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwy MDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0 IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIw MjUgczFjIHMyZGVsMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VS SUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0w MScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAx LTAxLDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMyZGVsMjAy NTIwMjYgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTEla QUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSBy b3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJp Y2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0 ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2 LTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjcgczF1 cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VS SUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJM RTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAy Ni0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdh aXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBs ZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJl bnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMx cSBzMmRlbDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0w MScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx dXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNj ZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFx OiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1 LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEK K3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy ZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VU IHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAg Y291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTA2 LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMydXBkMjAyNyBzMmMgczFk ZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOwor c3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEw LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFk ZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAw CitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx c2VyIHMyc2VyIHMydXBkMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRP ICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcy MDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMmMgczFkZWwyMDI1IHMxYyBz MXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVw IHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIw MjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTog CisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8 WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxc2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI3IHMyYyBzMXEKK3N0 ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisg IFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0w MSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK Kyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxZGVsMjAy NSBzMWMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAy NTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVS RSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICog RlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIg czJzZXIgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJP TSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBU TyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlU Oworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJp Y2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMy c2VyIHMydXBkMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEt MDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTog PC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0 byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIw MjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJ1cGQyMDI1MDMg czFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg U0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTEla QUJMRTsKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBw cmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0 aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0 ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50 IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEw LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitz dGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMWRlbDIwMjUg czJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFC TEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3Rl cCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAx MC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0w MScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+ CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJS T1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEs Mil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcgczJjIHMxZGVsMjAyNSBzMWMg czFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3Rl cCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3Rl cCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwy MDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK KworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1 cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4w MAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjUwMyBzMmMgczFkZWwy MDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFC TEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3Rl cCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQg ICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93 KQorCitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJp Y2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNv bmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0w NC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dz KQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI1MjAy NiBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFM SVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYt MDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFj Y2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAy NS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMx cSBzMWRlbDIwMjUgczFjIHMydXBkMjAyNyBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCist LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJP TSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBU TyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlU Oworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9 IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsy MDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAx KXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUgczFjIHMy dXBkMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAy NTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVS RSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICog RlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIg czJzZXIgczFxIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAx JworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYt MDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVw IHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIw Mjc6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0w MS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBD T01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5v dCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFzZXIgczJzZXIgczFxIHMydXBkMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBz MXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1 MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0w MS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBD T01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5v dCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUu MDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFzZXIgczJzZXIgczFxIHMydXBkMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVw IHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIw MjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIw MjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3Vs ZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEp fCA1LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYt MDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxc2VyIHMyc2VyIHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFz ZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjc6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAx LTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEs MjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCiso MyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMmRlbDIwMjUw MyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFM SVpBQkxFOworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI1MjAy NiBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFM SVpBQkxFOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwy MDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCiso MiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMWRlbDIwMjUg czFjIHMyZGVsMjAyNyBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg U0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTEla QUJMRTsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI3OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w MS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxb MjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFxCitz dGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNl cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0w NC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0 YXRpb246IHMxc2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFxCitz dGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNl cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2 LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxb MjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3Rl cCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyZGVsMjAyNzogCisg IERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6 IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFz ZXIgczJzZXIgczJkZWwyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAx JyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7Cisg PHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNv bXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1 cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0w MSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2Vy IHMyZGVsMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRP ICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2Fp dGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxl dGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVu dCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFx IHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7 CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRv IGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAz MC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2Vy IHMyc2VyIHMxcSBzMmRlbDIwMjUwMyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTAzOiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXpl IGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxb MjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMyZGVsMjAyNTIwMjYgczJjIHMxZGVsMjAyNSBzMWMg czFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3Rl cCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3Rl cCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w MS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBj b3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAg czFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYt MDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykK KworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMxZGVsMjAyNSBzMWMg czJkZWwyMDI3IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAy NzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEs Mil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNTAzIHMy YyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7Citz dGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitz dGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w My0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6 IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisK K3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczFkZWwyMDI1IHMxYyBzMmRl bDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAy NTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMmRl bDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNF UklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0w MSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAy OC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVsMjAyNTogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcg Li4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNvbXBsZXRlZD4K K0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVs ZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMmRl bDIwMjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg U0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00g cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8g JzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0 aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0 ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50 IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEg czJkZWwyMDI1MjAyNiBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2 LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVs MjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4u IGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNv bmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTA2LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygyIHJvd3MpCisKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L2lzb2xhdGlvbi9p c29sYXRpb25fc2NoZWR1bGUgYi9zcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0aW9uX3NjaGVkdWxl CmluZGV4IDVhZmFlMzNkMzcwLi44N2JiYmNhYmFkMSAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvaXNv bGF0aW9uL2lzb2xhdGlvbl9zY2hlZHVsZQorKysgYi9zcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0 aW9uX3NjaGVkdWxlCkBAIC0xMjAsMyArMTIwLDQgQEAgdGVzdDogc2VyaWFsaXphYmxlLXBhcmFs bGVsLTIKIHRlc3Q6IHNlcmlhbGl6YWJsZS1wYXJhbGxlbC0zCiB0ZXN0OiBtYXR2aWV3LXdyaXRl LXNrZXcKIHRlc3Q6IGxvY2stbm93YWl0Cit0ZXN0OiBmb3ItcG9ydGlvbi1vZgpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvaXNvbGF0aW9uL3NwZWNzL2Zvci1wb3J0aW9uLW9mLnNwZWMgYi9zcmMvdGVz dC9pc29sYXRpb24vc3BlY3MvZm9yLXBvcnRpb24tb2Yuc3BlYwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uNzc2NTZkMzhhYzYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMv dGVzdC9pc29sYXRpb24vc3BlY3MvZm9yLXBvcnRpb24tb2Yuc3BlYwpAQCAtMCwwICsxLDc1MSBA QAorIyBVUERBVEUvREVMRVRFIEZPUiBQT1JUSU9OIE9GIHRlc3QKKyMKKyMgVGVzdCBpbnNlcnRp bmcgdGVtcG9yYWwgbGVmdG92ZXJzIGZyb20gYSBGT1IgUE9SVElPTiBPRiB1cGRhdGUvZGVsZXRl LgorIworIyBJbiBSRUFEIENPTU1JVFRFRCBtb2RlLCBjb25jdXJyZW50IHVwZGF0ZXMvZGVsZXRl cyB0byB0aGUgc2FtZSByZWNvcmRzIGNhdXNlCisjIHdlaXJkIHJlc3VsdHMuIFBvcnRpb25zIG9m IGhpc3RvcnkgdGhhdCBzaG91bGQgaGF2ZSBiZWVuIHVwZGF0ZWQvZGVsZXRlZCBkb24ndAorIyBn ZXQgY2hhbmdlZC4gVGhhdCdzIGJlY2F1c2UgdGhlIGxlZnRvdmVycyBmcm9tIG9uZSBvcGVyYXRp b24gYXJlIGFkZGVkIHRvbworIyBsYXRlIHRvIGJlIHNlZW4gYnkgdGhlIG90aGVyLiBFdmFsUGxh blF1YWwgd2lsbCByZWxvYWQgdGhlIGNoYW5nZWQtaW4tY29tbW9uCisjIHJvdywgYnV0IGl0IHdv bid0IHJlLXNjYW4gdG8gZmluZCBuZXcgbGVmdG92ZXJzLgorIworIyBNYXJpYURCIHNpbWlsYXJs eSBnaXZlcyB1bmRlc2lyYWJsZSByZXN1bHRzIGluIFJFQUQgQ09NTUlUVEVEIG1vZGUgKGFsdGhv dWdoCisjIG5vdCB0aGUgc2FtZSByZXN1bHRzKS4gREIyIGRvZXNuJ3QgaGF2ZSBSRUFEIENPTU1J VFRFRCwgYnV0IGl0IGdpdmVzIGNvcnJlY3QKKyMgcmVzdWx0cyBhdCBhbGwgbGV2ZWxzLCBpbiBw YXJ0aWN1bGFyIFJFQUQgU1RBQklMSVRZICh3aGljaCBzZWVtcyBjbG9zZXN0KS4KKyMKKyMgQSB3 b3JrYXJvdW5kIGlzIHRvIGxvY2sgdGhlIHBhcnQgb2YgaGlzdG9yeSB5b3Ugd2FudCBiZWZvcmUg Y2hhbmdpbmcgaXQgKHVzaW5nCisjIFNFTEVDVCBGT1IgVVBEQVRFKS4gVGhhdCB3YXkgdGhlIHNl YXJjaCBmb3Igcm93cyBpcyBsYXRlIGVub3VnaCB0byBzZWUKKyMgbGVmdG92ZXJzIGZyb20gdGhl IG90aGVyIHNlc3Npb24ocykuIFRoaXMgc2hvdWxkbid0IGltcG9zZSBhbnkgbmV3IGRlYWRsb2Nr CisjIHJpc2tzLCBzaW5jZSB0aGUgbG9ja3MgYXJlIHRoZSBzYW1lIGFzIGJlZm9yZS4gQWRkaW5n IGEgdGhpcmQvZm91cnRoL2V0Yy4KKyMgY29ubmVjdGlvbiBhbHNvIGRvZXNuJ3QgY2hhbmdlIHRo ZSBzZW1hbnRpY3MuIFRoZSBSRUFEIENPTU1JVFRFRCB0ZXN0cyBoZXJlCisjIHVzZSB0aGF0IGFw cHJvYWNoIHRvIHByb3ZlIHRoYXQgaXQncyB2aWFibGUgYW5kIGlzbid0IHZpdGlhdGVkIGJ5IGFu eSBidWdzLgorIyBJbmNpZGVudGFsbHksIHRoaXMgYXBwcm9hY2ggYWxzbyB3b3JrcyBpbiBNYXJp YURCLgorIworIyBXZSBydW4gdGhlIHNhbWUgdGVzdHMgdW5kZXIgUkVQRUFUQUJMRSBSRUFEIGFu ZCBTRVJJQUxJWkFCTEUuCisjIEluIGdlbmVyYWwgdGhleSBkbyB3aGF0IHlvdSdkIHdhbnQgd2l0 aCBubyBleHBsaWNpdCBsb2NraW5nIHJlcXVpcmVkLCBidXQgc29tZQorIyBvcmRlcmluZ3MgcmFp c2UgYSBjb25jdXJyZW50IHVwZGF0ZS9kZWxldGUgZmFpbHVyZSAoYXMgZXhwZWN0ZWQpLiBJZiB0 aGVyZSBpcworIyBhIHByaW9yIHJlYWQgYnkgczEsIGNvbmN1cnJlbnQgdXBkYXRlL2RlbGV0ZSBm YWlsdXJlcyBhcmUgbW9yZSBjb21tb24uCisjCisjIFdlIHRlc3QgdXBkYXRlcyB3aGVyZSBzMiB1 cGRhdGVzIGhpc3RvcnkgdGhhdCBpczoKKyMKKyMgLSBub24tb3ZlcmxhcHBpbmcgd2l0aCBzMSwK KyMgLSBjb250YWluZWQgZW50aXJlbHkgaW4gczEsCisjIC0gcGFydGx5IGNvbnRhaW5lZCBpbiBz MS4KKyMKKyMgV2UgZG9uJ3QgbmVlZCB0byB0ZXN0IHdoZXJlIHMyIGVudGlyZWx5IGNvbnRhaW5z IHMxIGJlY2F1c2Ugb2Ygc3ltbWV0cnk6CisjIHdlIHRlc3QgYm90aCB3aGVuIHMxIHByZWNlZGVz IHMyIGFuZCB3aGVuIHMyIHByZWNlZGVzIHMxLCAgc28gdGhhdCBzY2VuYXJpbyBpcworIyBjb3Zl cmVkLgorIworIyBXZSB0ZXN0IHZhcmlvdXMgb3JkZXJpbmdzIG9mIHRoZSB1cGRhdGUvZGVsZXRl L2NvbW1pdCBmcm9tIHMxIGFuZCBzMi4KKyMgTm90ZSB0aGF0IGBzMWxvY2sgczJsb2NrIHMxY2hh bmdlYCBpcyBib3JpbmcgYmVjYXVzZSBpdCdzIHRoZSBzYW1lIGFzCisjIGBzMWxvY2sgczFjaGFu Z2UgczJsb2NrYC4gSW4gb3RoZXIgd29yZHMgaXQgZG9lc24ndCBtYXR0ZXIgaWYgc29tZXRoaW5n CisjIGludGVycG9zZXMgYmV0d2VlbiB0aGUgbG9jayBhbmQgaXRzIGNoYW5nZSAoYXMgbG9uZyBh cyBldmVyeW9uZSBpcyBmb2xsb3dpbmcKKyMgdGhlIHNhbWUgcG9saWN5KS4KKworc2V0dXAKK3sK KyAgQ1JFQVRFIFRBQkxFIHByb2R1Y3RzICgKKwlpZCBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisJdmFs aWRfYXQgZGF0ZXJhbmdlIE5PVCBOVUxMLAorCXByaWNlIGRlY2ltYWwgTk9UIE5VTEwsCisJUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSk7CisgIElOU0VSVCBJTlRP IHByb2R1Y3RzIFZBTFVFUworCSgnWzEsMiknLCAnWzIwMjAtMDEtMDEsMjAzMC0wMS0wMSknLCA1 LjAwKTsKK30KKwordGVhcmRvd24geyBEUk9QIFRBQkxFIHByb2R1Y3RzOyB9CisKK3Nlc3Npb24g czEKK3NldHVwCQl7IFNFVCBkYXRlc3R5bGUgVE8gSVNPLCBZTUQ7IH0KK3N0ZXAgczFyYwl7IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsgfQorc3RlcCBzMXJyCXsgQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsgfQorc3RlcCBzMXNlcgl7IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7IH0KK3N0ZXAgczFsb2NrMjAyNSB7CisgIFNFTEVD VCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAn WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7 Cit9CitzdGVwIHMxdXBkMjAyNQl7CisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNl ID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7Cit9CitzdGVwIHMxZGVsMjAyNSB7CisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7Cit9CitzdGVwIHMx cQl7IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OyB9CitzdGVw IHMxYwl7IENPTU1JVDsgfQorCitzZXNzaW9uIHMyCitzZXR1cAkJeyBTRVQgZGF0ZXN0eWxlIFRP IElTTywgWU1EOyB9CitzdGVwIHMycmMJeyBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01N SVRURUQ7IH0KK3N0ZXAgczJycgl7IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJF QUQ7IH0KK3N0ZXAgczJzZXIJeyBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOyB9 CitzdGVwIHMybG9jazIwMjUwMyB7CisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUg aWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAyNS0wNC0wMSknCisg IE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7Cit9CitzdGVwIHMybG9jazIwMjUyMDI2IHsK KyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlk X2F0ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9S IFVQREFURTsKK30KK3N0ZXAgczJsb2NrMjAyNyB7CisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMK KyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0w MS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7Cit9CitzdGVwIHMydXBkMjAy NTAzIHsKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVS RSBpZCA9ICdbMSwyKSc7Cit9CitzdGVwIHMydXBkMjAyNTIwMjYgeworICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYt MDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0 ZXAgczJ1cGQyMDI3IHsKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7Cit9CitzdGVwIHMyZGVsMjAyNTAzIHsKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0w MScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0ZXAgczJkZWwy MDI1MjAyNiB7CisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwy KSc7Cit9CitzdGVwIHMyZGVsMjAyNyB7CisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7Cit9CitzdGVwIHMyYwl7IENPTU1JVDsgfQorCisjICMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgUkVBRCBDT01NSVRURUQgdGVzdHMs IFVQREFURStVUERBVEU6CisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKKworIyBzMSBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxv Y2syMDI3IHMydXBkMjAyNyBzMmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMx IHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJ1cGQyMDI1MDMgczJjIHMxbG9jazIwMjUgczF1 cGQyMDI1IHMxYyBzMXEKKworIyBzMSByZWxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBp dHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYgczJ1cGQy MDI1MjAyNiBzMmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMgdGhl IGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9jazIwMjUgczF1cGQyMDI1IHMx YyBzMmxvY2syMDI3IHMydXBkMjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQg cm93CitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMybG9j azIwMjUwMyBzMnVwZDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93 IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1 IHMxdXBkMjAyNSBzMWMgczJsb2NrMjAyNTIwMjYgczJ1cGQyMDI1MjAyNiBzMmMgczFxCisKKyMg czEgdXBkYXRlcyB0aGUgbGVmdG92ZXJzIGZyb20gczIKKyMgTG9ja2luZyBpcyByZXF1aXJlZCBv ciBzMSB3b24ndCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxv Y2syMDI3IHMydXBkMjAyNyBzMWxvY2syMDI1IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMx IG92ZXJ3cml0ZXMgdGhlIHJvdyBmcm9tIHMyIGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKKyMgTG9j a2luZyBpcyByZXF1aXJlZCBvciBzMSB3b24ndCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0 aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJ1cGQyMDI1MDMgczFsb2NrMjAyNSBzMmMgczF1 cGQyMDI1IHMxYyBzMXEKKworIyBzMSBvdmVyd3JpdGVzIHRoZSByb3cgZnJvbSBzMiBhbmQgc2Vl cyBpdHMgbGVmdG92ZXJzCisjIExvY2tpbmcgaXMgcmVxdWlyZWQgb3IgczEgd29uJ3Qgc2VlIHRo ZSBsZWZ0b3ZlcnMuCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYgczJ1cGQy MDI1MjAyNiBzMWxvY2syMDI1IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjICMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgUkVBRCBDT01NSVRURUQgdGVzdHMsIFVQ REFURStERUxFVEU6CisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK KworIyBzMSBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2sy MDI3IHMyZGVsMjAyNyBzMmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIGln bm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9u IHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJkZWwyMDI1MDMgczJjIHMxbG9jazIwMjUgczF1cGQy MDI1IHMxYyBzMXEKKworIyBzMSBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMg bGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYgczJkZWwyMDI1 MjAyNiBzMmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMgdGhlIGxl ZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9jazIwMjUgczF1cGQyMDI1IHMxYyBz MmxvY2syMDI3IHMyZGVsMjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93 CitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMybG9jazIw MjUwMyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFu ZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1IHMx dXBkMjAyNSBzMWMgczJsb2NrMjAyNTIwMjYgczJkZWwyMDI1MjAyNiBzMmMgczFxCisKKyMgczEg dXBkYXRlcyB0aGUgbGVmdG92ZXJzIGZyb20gczIKKyMgTG9ja2luZyBpcyByZXF1aXJlZCBvciBz MSB3b24ndCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2sy MDI3IHMyZGVsMjAyNyBzMWxvY2syMDI1IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIHNl ZXMgdGhlIGxlZnRvdmVycyBmcm9tIHMyCisjIExvY2tpbmcgaXMgcmVxdWlyZWQgb3IgczEgd29u J3Qgc2VlIHRoZSBsZWZ0b3ZlcnMuCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTAz IHMyZGVsMjAyNTAzIHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEgc2Vl cyB0aGUgbGVmdG92ZXJzIGZyb20gczIKKyMgTG9ja2luZyBpcyByZXF1aXJlZCBvciBzMSB3b24n dCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MjAy NiBzMmRlbDIwMjUyMDI2IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBSRUFEIENPTU1JVFRFRCB0 ZXN0cywgREVMRVRFK1VQREFURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJj IHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczFxCisK KyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVy bXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMmMgczFsb2NrMjAy NSBzMWRlbDIwMjUgczFjIHMxcQorCisjIHMxIHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBz ZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBz MnVwZDIwMjUyMDI2IHMyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczIgc2Vl cyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMWRlbDIw MjUgczFjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBk ZWxldGVkIHJvdworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMx YyBzMmxvY2syMDI1MDMgczJ1cGQyMDI1MDMgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRl bGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBz MWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczJsb2NrMjAyNTIwMjYgczJ1cGQyMDI1MjAyNiBzMmMg czFxCisKKyMgczEgZGVsZXRlcyB0aGUgbGVmdG92ZXJzIGZyb20gczIKKyMgTG9ja2luZyBpcyBy ZXF1aXJlZCBvciBzMSB3b24ndCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMg czJyYyBzMmxvY2syMDI3IHMydXBkMjAyNyBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUgczFjIHMx cQorCisjIHMxIGRlbGV0ZXMgdGhlIG5ldyByb3cgZnJvbSBzMiBhbmQgaXRzIGxlZnRvdmVycwor IyBMb2NraW5nIGlzIHJlcXVpcmVkIG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVy bXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMWxvY2syMDI1IHMy YyBzMWRlbDIwMjUgczFjIHMxcQorCisjIHMxIGRlbGV0ZXMgdGhlIG5ldyByb3cgZnJvbSBzMiBh bmQgaXRzIGxlZnRvdmVycworIyBMb2NraW5nIGlzIHJlcXVpcmVkIG9yIHMxIHdvbid0IHNlZSB0 aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUyMDI2IHMydXBk MjAyNTIwMjYgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyAjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFJFQUQgQ09NTUlUVEVEIHRlc3RzLCBE RUxFVEUrREVMRVRFOgorIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj CisKKyMgczEgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2Nr MjAyNyBzMmRlbDIwMjcgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMSBp Z25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlv biBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMyZGVsMjAyNTAzIHMyYyBzMWxvY2syMDI1IHMxZGVs MjAyNSBzMWMgczFxCisKKyMgczEgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRz IGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUyMDI2IHMyZGVsMjAy NTIwMjYgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVzIHRoZSBs ZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMg czJsb2NrMjAyNyBzMmRlbDIwMjcgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQg cm93CitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMybG9j azIwMjUwMyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCBy b3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9jazIw MjUgczFkZWwyMDI1IHMxYyBzMmxvY2syMDI1MjAyNiBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKKwor IyBzMSBkZWxldGVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5nIGlzIHJlcXVpcmVk IG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJjIHMy bG9jazIwMjcgczJkZWwyMDI3IHMxbG9jazIwMjUgczJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMg czEgZGVsZXRlcyB0aGUgbGVmdG92ZXJzIGZyb20gczIKKyMgTG9ja2luZyBpcyByZXF1aXJlZCBv ciBzMSB3b24ndCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxv Y2syMDI1MDMgczJkZWwyMDI1MDMgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKwor IyBzMSBkZWxldGVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5nIGlzIHJlcXVpcmVk IG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJjIHMy bG9jazIwMjUyMDI2IHMyZGVsMjAyNTIwMjYgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBz MXEKKworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFJFUEVB VEFCTEUgUkVBRCB0ZXN0cywgVVBEQVRFK1VQREFURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRp b24gczFyciBzMnJyIHMydXBkMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSByZWxv YWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBz MXJyIHMycnIgczJ1cGQyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEgcmVsb2Fk cyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFy ciBzMnJyIHMydXBkMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0 aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczF1cGQyMDI1IHMxYyBzMnVwZDIw MjcgczJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVm dG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUwMyBz MmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3Zl cnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTIwMjYgczJj IHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMx cnIgczJyciBzMnVwZDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJv bSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNTAzIHMx dXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUK K3Blcm11dGF0aW9uIHMxcnIgczJyciBzMnVwZDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMx cQorCisjIyB3aXRoIHByaW9yIHJlYWQgYnkgczE6CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJy ZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMnVwZDIwMjcgczJjIHMxdXBk MjAyNSBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0 YXRpb24gczFyciBzMnJyIHMxcSBzMnVwZDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKwor IyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIg czFxIHMydXBkMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUg bGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxdXBkMjAyNSBzMWMgczJ1cGQy MDI3IHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRlZCByb3cKK3Blcm11dGF0aW9uIHMx cnIgczJyciBzMXEgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9h ZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMx cnIgczJyciBzMXEgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUyMDI2IHMyYyBzMXEKKworIyBzMSBm YWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMy dXBkMjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJl bnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMydXBkMjAyNTAzIHMxdXBkMjAy NSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11 dGF0aW9uIHMxcnIgczJyciBzMXEgczJ1cGQyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEK KworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFJFUEVBVEFC TEUgUkVBRCB0ZXN0cywgVVBEQVRFK0RFTEVURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24g czFyciBzMnJyIHMyZGVsMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBpZ25vcmVz IHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJy IHMycnIgczJkZWwyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEgaWdub3JlcyB0 aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyciBz MnJyIHMyZGVsMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUg bGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjcg czJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdworcGVybXV0YXRpb24gczFyciBz MnJyIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1 cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIg czF1cGQyMDI1IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNv bmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczJkZWwyMDI3IHMxdXBkMjAy NSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11 dGF0aW9uIHMxcnIgczJyciBzMmRlbDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBz MSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczJk ZWwyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyMgd2l0aCBwcmlvciByZWFkIGJ5 IHMxOgorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMx cnIgczJyciBzMXEgczJkZWwyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIGZhaWxz IGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczJkZWwy MDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50 IGRlbGV0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMmRlbDIwMjUyMDI2IHMyYyBzMXVw ZDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFy ciBzMnJyIHMxcSBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMg dGhlIHVwZGF0ZWQgcm93CitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxdXBkMjAyNSBzMWMg czJkZWwyMDI1MDMgczJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2Vl cyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxdXBkMjAyNSBzMWMg czJkZWwyMDI1MjAyNiBzMmMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0 ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMmRlbDIwMjcgczF1cGQyMDI1IHMyYyBzMWMg czFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFy ciBzMnJyIHMxcSBzMmRlbDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWls cyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMyZGVs MjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIworIyBSRVBFQVRBQkxFIFJFQUQgdGVzdHMsIERFTEVURStVUERB VEU6CisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworIyBzMSBz ZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMnVwZDIwMjcgczJjIHMx ZGVsMjAyNSBzMWMgczFxCisKKyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMg aXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNTAzIHMyYyBzMWRl bDIwMjUgczFjIHMxcQorCisjIHMxIHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0 cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMnVwZDIwMjUyMDI2IHMyYyBzMWRl bDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFy ciBzMnJyIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRo ZSBkZWxldGVkIHJvdworcGVybXV0YXRpb24gczFyciBzMnJyIHMxZGVsMjAyNSBzMWMgczJ1cGQy MDI1MDMgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0 cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMydXBkMjAy NTIwMjYgczJjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11 dGF0aW9uIHMxcnIgczJyciBzMnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEg ZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBk MjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVu dCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMnVwZDIwMjUyMDI2IHMxZGVsMjAyNSBz MmMgczFjIHMxcQorCisjIyB3aXRoIHByaW9yIHJlYWQgYnkgczE6CisKKyMgczEgZmFpbHMgZnJv bSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMnVwZDIwMjcg czJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0 ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMnVwZDIwMjUwMyBzMmMgczFkZWwyMDI1IHMx YyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBz MXJyIHMycnIgczFxIHMydXBkMjAyNTIwMjYgczJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczIg c2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxZGVsMjAyNSBz MWMgczJ1cGQyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdworcGVy bXV0YXRpb24gczFyciBzMnJyIHMxcSBzMWRlbDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEK KworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitw ZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMg czFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFy ciBzMnJyIHMxcSBzMnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMg ZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMnVwZDIw MjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQg dXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMydXBkMjAyNTIwMjYgczFkZWwyMDI1 IHMyYyBzMWMgczFxCisKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IworIyBSRVBFQVRBQkxFIFJFQUQgdGVzdHMsIERFTEVURStERUxFVEU6CisjICMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworIyBzMSBzZWVzIHRoZSBsZWZ0b3ZlcnMK K3Blcm11dGF0aW9uIHMxcnIgczJyciBzMmRlbDIwMjcgczJjIHMxZGVsMjAyNSBzMWMgczFxCisK KyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVy bXV0YXRpb24gczFyciBzMnJyIHMyZGVsMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisj IHMxIHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11 dGF0aW9uIHMxcnIgczJyciBzMmRlbDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisj IHMyIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMxZGVsMjAyNSBz MWMgczJkZWwyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdworcGVy bXV0YXRpb24gczFyciBzMnJyIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorCisj IHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11 dGF0aW9uIHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQorCisj IHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBz MmRlbDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJy ZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMyZGVsMjAyNTAzIHMxZGVsMjAyNSBz MmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0 aW9uIHMxcnIgczJyciBzMmRlbDIwMjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIyB3 aXRoIHByaW9yIHJlYWQgYnkgczE6CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0 ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMmRlbDIwMjcgczJjIHMxZGVsMjAyNSBzMWMg czFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFy ciBzMnJyIHMxcSBzMmRlbDIwMjUwMyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMSBmYWls cyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMyZGVs MjAyNTIwMjYgczJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUgbGVmdG92ZXJz CitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI3IHMyYyBz MXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdworcGVybXV0YXRpb24gczFyciBzMnJy IHMxcSBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNTAzIHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRo ZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMy cnIgczFxIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFxCisKKyMgczEgZmFpbHMg ZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMmRlbDIw MjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRl bGV0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMmRlbDIwMjUwMyBzMWRlbDIwMjUgczJj IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMg IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBTRVJJQUxJWkFCTEUg dGVzdHMsIFVQREFURStVUERBVEU6CisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKKworIyBzMSBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMy c2VyIHMydXBkMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSByZWxvYWRzIHRoZSB1 cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBzMnNl ciBzMnVwZDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSByZWxvYWRzIHRoZSB1 cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBzMnNl ciBzMnVwZDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMgdGhlIGxl ZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjcg czJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdworcGVybXV0YXRpb24gczFzZXIg czJzZXIgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhl IHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMy c2VyIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFxCisKKyMgczEgZmFpbHMgZnJv bSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI3IHMx dXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUK K3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMydXBkMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMx cQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2Vy IHMyc2VyIHMydXBkMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMjIHdpdGggcHJp b3IgcmVhZCBieSBzMToKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJt dXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMxcQor CisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMy c2VyIHMxcSBzMnVwZDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBmYWlscyBm cm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJ1cGQy MDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVzIHRoZSBsZWZ0b3ZlcnMK K3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNyBzMmMg czFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93CitwZXJtdXRhdGlvbiBzMXNlciBzMnNl ciBzMXEgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhl IHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMy c2VyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTIwMjYgczJjIHMxcQorCisjIHMxIGZhaWxz IGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVw ZDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50 IHVwZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMydXBkMjAyNTAzIHMxdXBkMjAy NSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11 dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMx cQorCisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgU0VSSUFM SVpBQkxFIHRlc3RzLCBVUERBVEUrREVMRVRFOgorIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjCisKKyMgczEgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBz MXNlciBzMnNlciBzMmRlbDIwMjcgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEgaWdub3Jl cyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczJkZWwyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEgaWdub3Jl cyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczJkZWwyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVz IHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMgczJk ZWwyMDI3IHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRlZCByb3cKK3Blcm11dGF0aW9u IHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorCisjIHMyIGxv YWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBz MXNlciBzMnNlciBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQorCisjIHMxIGZh aWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMyZGVs MjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQg ZGVsZXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMmRlbDIwMjUwMyBzMXVwZDIwMjUgczJj IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlv biBzMXNlciBzMnNlciBzMmRlbDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIyB3 aXRoIHByaW9yIHJlYWQgYnkgczE6CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0 ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMyZGVsMjAyNyBzMmMgczF1cGQyMDI1IHMx YyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBz MXNlciBzMnNlciBzMXEgczJkZWwyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEg ZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFx IHMyZGVsMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUgbGVm dG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczF1cGQyMDI1IHMxYyBzMmRlbDIw MjcgczJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdworcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczFxIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorCisjIHMyIGxv YWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBz MXNlciBzMnNlciBzMXEgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKKworIyBz MSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBz MXEgczJkZWwyMDI3IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29u Y3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjUwMyBz MXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRl CitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI1MjAyNiBzMXVwZDIwMjUgczJj IHMxYyBzMXEKKworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisj IFNFUklBTElaQUJMRSB0ZXN0cywgREVMRVRFK1VQREFURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0 YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI3IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisjIHMx IHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxc2VyIHMyc2VyIHMydXBkMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisjIHMx IHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxc2VyIHMyc2VyIHMydXBkMjAyNTIwMjYgczJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMg czIgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMWRlbDIwMjUg czFjIHMydXBkMjAyNyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cKK3Bl cm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MDMgczJjIHMxcQor CisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Bl cm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFx CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFzZXIg czJzZXIgczJ1cGQyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20g Y29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMydXBkMjAyNTAzIHMx ZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUK K3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMydXBkMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMg czFxCisKKyMjIHdpdGggcHJpb3IgcmVhZCBieSBzMToKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1 cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI3IHMyYyBz MWRlbDIwMjUgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Bl cm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjUwMyBzMmMgczFkZWwyMDI1IHMxYyBz MXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXNl ciBzMnNlciBzMXEgczJ1cGQyMDI1MjAyNiBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMiBz ZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUg czFjIHMydXBkMjAyNyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cKK3Bl cm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBz MXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJz CitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUyMDI2 IHMyYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlv biBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMx IGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMx cSBzMnVwZDIwMjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNv bmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI1MjAy NiBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjCisjIFNFUklBTElaQUJMRSB0ZXN0cywgREVMRVRFK0RFTEVURToKKyMgIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxl ZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJkZWwyMDI3IHMyYyBzMWRlbDIwMjUg czFjIHMxcQorCisjIHMxIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0 b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMyZGVsMjAyNTAzIHMyYyBzMWRlbDIwMjUg czFjIHMxcQorCisjIHMxIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0 b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMyZGVsMjAyNTIwMjYgczJjIHMxZGVsMjAy NSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBz MnNlciBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUg ZGVsZXRlZCByb3cKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJkZWwy MDI1MDMgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0 cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJkZWwy MDI1MjAyNiBzMmMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVy bXV0YXRpb24gczFzZXIgczJzZXIgczJkZWwyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisj IHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2Vy IHMyZGVsMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29u Y3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMyZGVsMjAyNTIwMjYgczFk ZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgd2l0aCBwcmlvciByZWFkIGJ5IHMxOgorCisjIHMxIGZh aWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBz MmRlbDIwMjcgczJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJy ZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMyZGVsMjAyNTAzIHMyYyBz MWRlbDIwMjUgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Bl cm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUgczFj IHMxcQorCisjIHMyIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIg czFxIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBk ZWxldGVkIHJvdworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMxZGVsMjAyNSBzMWMgczJk ZWwyMDI1MDMgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVz IGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUgczFj IHMyZGVsMjAyNTIwMjYgczJjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxl dGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjcgczFkZWwyMDI1IHMyYyBz MWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24g czFzZXIgczJzZXIgczFxIHMyZGVsMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMx IGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMx cSBzMmRlbDIwMjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCi0tIAoyLjM5LjUKCg== --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0011-Add-PERIODs.patch" Content-Disposition: attachment; filename="v59-0011-Add-PERIODs.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4n10 RnJvbSAyZjZiNDYyNTU5YjczNDMxMjc1NjUwNTg2ZmJjMjQxMmRjZjNiZjkzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMTcgSnVuIDIwMjUgMjM6MjM6MjMgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAxMS8xMV0gQWRkIFBFUklPRHMKCi0gQWRkZWQgcGFyc2luZyBmb3IgU1FM OjIwMTEgc3ludGF4IHRvIGRlZmluZSBhbiBhcHBsaWNhdGlvbi10aW1lIFBFUklPRCBvbiBhCiAg dGFibGUgKGluIGJvdGggQ1JFQVRFIFRBQkxFIGFuZCBBTFRFUiBUQUJMRSkuIE1ha2Ugc3VyZSB3 ZSBjcmVhdGUgdGhlIFBFUklPRAogIGFmdGVyIGNvbHVtbnMgYXJlIGtub3duIChzaW5jZSBQRVJJ T0RzIGNhbiByZWZlciB0byB0aGVtKSBidXQgYmVmb3JlCiAgY29uc3RyYWludHMgYXJlIGhhbmRs ZWQgKHNpbmNlIFBFUklPRHMgY2FuIGFwcGVhciBpbiB0aGVtKS4KLSBBZGRlZCBBTFRFUiBUQUJM RSBEUk9QIHN1cHBvcnQgZm9yIFBFUklPRHMuCi0gQ3JlYXRlZCBwb3N0Z3Jlcy5wZ19wZXJpb2Qg dGFibGUuCi0gQ3JlYXRlZCBpbmZvcm1hdGlvbl9zY2hlbWEucGVyaW9kcyB2aWV3LgotIEFkZGVk IHBnX2R1bXAgc3VwcG9ydC4KLSBBZGRlZCB0ZXN0cyBhbmQgZG9jdW1lbnRhdGlvbi4KLSBBdXRv bWF0aWNhbGx5IGRlZmluZSBhIGNvbnN0cmFpbnQgZm9yIGVhY2ggUEVSSU9EIHJlcXVpcmluZyB0 aGUgc3RhcnQgY29sdW1uCiAgdG8gYmUgbGVzcyB0aGFuIHRoZSBlbmQgY29sdW1uLgotIFdoZW4g Y3JlYXRpbmcgYSBQRVJJT0QsIGNob29zZSBhbiBhcHByb3ByaWF0ZSByYW5nZSB0eXBlIHdlIGNh biB1c2UgdG8KICBpbXBsZW1lbnQgUEVSSU9ELXJlbGF0ZWQgb3BlcmF0aW9ucy4gWW91IGNhbiBj aG9vc2Ugb25lIGV4cGxpY2l0bHkgaWYgdGhlcmUKICBpcyBhbWJpZ3VpdHkgKGR1ZSB0byBtdWx0 aXBsZSByYW5nZSB0eXBlcyBjcmVhdGVkIG92ZXIgdGhlIHNhbWUgYmFzZSB0eXBlKS4KCkF1dGhv cjogUGF1bCBKdW5nd2lydGgKLS0tCiBkb2Mvc3JjL3NnbWwvY2F0YWxvZ3Muc2dtbCAgICAgICAg ICAgICAgICAgICAgfCAgMTEyICsKIGRvYy9zcmMvc2dtbC9kZGwuc2dtbCAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgNDYgKwogZG9jL3NyYy9zZ21sL2luZm9ybWF0aW9uX3NjaGVtYS5zZ21s ICAgICAgICAgIHwgICA2MyArCiBkb2Mvc3JjL3NnbWwvcGxwZ3NxbC5zZ21sICAgICAgICAgICAg ICAgICAgICAgfCAgICAyICstCiBkb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3RhYmxlLnNnbWwgICAg ICAgICAgICAgfCAgIDMxICstCiBkb2Mvc3JjL3NnbWwvcmVmL2NvbW1lbnQuc2dtbCAgICAgICAg ICAgICAgICAgfCAgICAyICsKIGRvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3RhYmxlLnNnbWwgICAg ICAgICAgICB8ICAgNjUgKy0KIGRvYy9zcmMvc2dtbC9yZWYvZGVsZXRlLnNnbWwgICAgICAgICAg ICAgICAgICB8ICAgMjEgKy0KIGRvYy9zcmMvc2dtbC9yZWYvdXBkYXRlLnNnbWwgICAgICAgICAg ICAgICAgICB8ICAgMjEgKy0KIGRvYy9zcmMvc2dtbC90cmlnZ2VyLnNnbWwgICAgICAgICAgICAg ICAgICAgICB8ICAgIDkgKy0KIHNyYy9iYWNrZW5kL2NhdGFsb2cvTWFrZWZpbGUgICAgICAgICAg ICAgICAgICB8ICAgIDEgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9hY2xjaGsuYyAgICAgICAgICAg ICAgICAgIHwgICAgMiArCiBzcmMvYmFja2VuZC9jYXRhbG9nL2RlcGVuZGVuY3kuYyAgICAgICAg ICAgICAgfCAgIDEzICsKIHNyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jICAgICAgICAgICAgICAg ICAgICB8ICAgNzUgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9pbmZvcm1hdGlvbl9zY2hlbWEuc3Fs ICAgIHwgICAyMyArLQogc3JjL2JhY2tlbmQvY2F0YWxvZy9tZXNvbi5idWlsZCAgICAgICAgICAg ICAgIHwgICAgMSArCiBzcmMvYmFja2VuZC9jYXRhbG9nL29iamVjdGFkZHJlc3MuYyAgICAgICAg ICAgfCAgIDcyICsKIHNyYy9iYWNrZW5kL2NhdGFsb2cvcGdfY29uc3RyYWludC5jICAgICAgICAg ICB8ICAgMTAgKy0KIHNyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcGVyaW9kLmMgICAgICAgICAgICAg ICB8ICAxMzIgKwogc3JjL2JhY2tlbmQvY2F0YWxvZy9zcWxfZmVhdHVyZXMudHh0ICAgICAgICAg IHwgICAgMiArLQogc3JjL2JhY2tlbmQvY29tbWFuZHMvY29tbWVudC5jICAgICAgICAgICAgICAg IHwgICAxMCArCiBzcmMvYmFja2VuZC9jb21tYW5kcy9kcm9wY21kcy5jICAgICAgICAgICAgICAg fCAgICAxICsKIHNyYy9iYWNrZW5kL2NvbW1hbmRzL2V2ZW50X3RyaWdnZXIuYyAgICAgICAgICB8 ICAgIDIgKwogc3JjL2JhY2tlbmQvY29tbWFuZHMvc2VjbGFiZWwuYyAgICAgICAgICAgICAgIHwg ICAgMSArCiBzcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYyAgICAgICAgICAgICAgfCAg OTc4ICsrKy0KIHNyYy9iYWNrZW5kL2NvbW1hbmRzL3RyaWdnZXIuYyAgICAgICAgICAgICAgICB8 ICAgIDIgKwogc3JjL2JhY2tlbmQvY29tbWFuZHMvdmlldy5jICAgICAgICAgICAgICAgICAgIHwg ICAgNCArLQogc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMgICAgICAgIHwg ICA0MSArLQogc3JjL2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMgICAgICAgICAgICAgICAgIHwg ICAgMyArCiBzcmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6ZS5jICAgICAgICAgICAgICAgICAgfCAg MTMwICstCiBzcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55ICAgICAgICAgICAgICAgICAgICAgfCAg IDQ1ICstCiBzcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfcmVsYXRpb24uYyAgICAgICAgICAgfCAg IDEwICsKIHNyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMgICAgICAgICAgICB8ICAx ODIgKy0KIHNyYy9iYWNrZW5kL3V0aWxzL2FkdC9NYWtlZmlsZSAgICAgICAgICAgICAgICB8ICAg IDEgKwogc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3BlcmlvZC5jICAgICAgICAgICAgICAgIHwgICA1 OCArCiBzcmMvYmFja2VuZC91dGlscy9jYWNoZS9sc3lzY2FjaGUuYyAgICAgICAgICAgfCAgIDg4 ICsKIHNyYy9iaW4vcGdfZHVtcC9wZ19iYWNrdXBfYXJjaGl2ZXIuYyAgICAgICAgICB8ICAgIDEg Kwogc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYyAgICAgICAgICAgICAgICAgICAgIHwgIDE4MCAr LQogc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuaCAgICAgICAgICAgICAgICAgICAgIHwgICAxNSAr CiBzcmMvYmluL3BnX2R1bXAvcGdfZHVtcF9zb3J0LmMgICAgICAgICAgICAgICAgfCAgIDI0ICsK IHNyYy9iaW4vcHNxbC9kZXNjcmliZS5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzYgKwog c3JjL2luY2x1ZGUvY2F0YWxvZy9NYWtlZmlsZSAgICAgICAgICAgICAgICAgIHwgICAgMSArCiBz cmMvaW5jbHVkZS9jYXRhbG9nL2hlYXAuaCAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsKIHNy Yy9pbmNsdWRlL2NhdGFsb2cvbWVzb24uYnVpbGQgICAgICAgICAgICAgICB8ICAgIDEgKwogc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19jb25zdHJhaW50LmggICAgICAgICAgIHwgICAgMyArLQogc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19pbmRleC5oICAgICAgICAgICAgICAgIHwgICAgMSAtCiBzcmMv aW5jbHVkZS9jYXRhbG9nL3BnX3BlcmlvZC5oICAgICAgICAgICAgICAgfCAgIDU4ICsKIHNyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcmFuZ2UuaCAgICAgICAgICAgICAgICB8ICAgIDIgKwogc3JjL2lu Y2x1ZGUvY29tbWFuZHMvdGFibGVjbWRzLmggICAgICAgICAgICAgIHwgICAgNCArLQogc3JjL2lu Y2x1ZGUvbm9kZXMvZXhlY25vZGVzLmggICAgICAgICAgICAgICAgIHwgICAgNCArCiBzcmMvaW5j bHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmggICAgICAgICAgICAgICAgfCAgIDM5ICstCiBzcmMvaW5j bHVkZS9ub2Rlcy9wcmltbm9kZXMuaCAgICAgICAgICAgICAgICAgfCAgICAyICsKIHNyYy9pbmNs dWRlL3BhcnNlci9rd2xpc3QuaCAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KIHNyYy9pbmNs dWRlL3BhcnNlci9wYXJzZV91dGlsY21kLmggICAgICAgICAgICB8ICAgIDEgKwogc3JjL2luY2x1 ZGUvdXRpbHMvbHN5c2NhY2hlLmggICAgICAgICAgICAgICAgIHwgICAgMyArCiBzcmMvaW5jbHVk ZS91dGlscy9wZXJpb2QuaCAgICAgICAgICAgICAgICAgICAgfCAgIDIxICsKIC4uLi90ZXN0X2Rk bF9kZXBhcnNlL3Rlc3RfZGRsX2RlcGFyc2UuYyAgICAgICB8ICAgIDYgKwogc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQgIHwgICA1OCArCiBzcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3BlcmlvZHMub3V0ICAgICAgICAgfCAgMzE4ICsrCiBzcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3ByaXZpbGVnZXMub3V0ICAgICAgfCAgIDI5ICsKIC4uLi9yZWdyZXNzL2V4 cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMub3V0ICAgICB8IDQ1MDAgKysrKysrKysrKysrKysrKy0K IHNyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUgICAgICAgICAgICB8ICAgIDIgKy0K IHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29mLnNxbCAgICAgICB8ICAgNTAgKwog c3JjL3Rlc3QvcmVncmVzcy9zcWwvcGVyaW9kcy5zcWwgICAgICAgICAgICAgIHwgIDE5OCArCiBz cmMvdGVzdC9yZWdyZXNzL3NxbC9wcml2aWxlZ2VzLnNxbCAgICAgICAgICAgfCAgIDI4ICsKIHNy Yy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsICAgICB8IDMwNjMgKysrKysr KysrKy0KIHNyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0ICAgICAgICAgICAgICB8ICAg IDMgKwogNjcgZmlsZXMgY2hhbmdlZCwgMTA2OTUgaW5zZXJ0aW9ucygrKSwgMjIxIGRlbGV0aW9u cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcGVyaW9kLmMK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvYmFja2VuZC91dGlscy9hZHQvcGVyaW9kLmMKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3BlcmlvZC5oCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjL2luY2x1ZGUvdXRpbHMvcGVyaW9kLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3BlcmlvZHMub3V0CiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjL3Rlc3QvcmVncmVzcy9zcWwvcGVyaW9kcy5zcWwKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3Nn bWwvY2F0YWxvZ3Muc2dtbCBiL2RvYy9zcmMvc2dtbC9jYXRhbG9ncy5zZ21sCmluZGV4IDZjOGEw ZjE3M2M5Li5lZmY3MzY2MjZiMSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2NhdGFsb2dzLnNn bWwKKysrIGIvZG9jL3NyYy9zZ21sL2NhdGFsb2dzLnNnbWwKQEAgLTIzMCw2ICsyMzAsMTEgQEAK ICAgICAgIDxlbnRyeT5pbmZvcm1hdGlvbiBhYm91dCBwYXJ0aXRpb24ga2V5IG9mIHRhYmxlczwv ZW50cnk+CiAgICAgIDwvcm93PgogCisgICAgIDxyb3c+CisgICAgICA8ZW50cnk+PGxpbmsgbGlu a2VuZD0iY2F0YWxvZy1wZy1wZXJpb2QiPjxzdHJ1Y3RuYW1lPnBnX3BlcmlvZDwvc3RydWN0bmFt ZT48L2xpbms+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT5wZXJpb2RzPC9lbnRyeT4KKyAgICAgPC9y b3c+CisKICAgICAgPHJvdz4KICAgICAgIDxlbnRyeT48bGluayBsaW5rZW5kPSJjYXRhbG9nLXBn LXBvbGljeSI+PHN0cnVjdG5hbWU+cGdfcG9saWN5PC9zdHJ1Y3RuYW1lPjwvbGluaz48L2VudHJ5 PgogICAgICAgPGVudHJ5PnJvdy1zZWN1cml0eSBwb2xpY2llczwvZW50cnk+CkBAIC01NzczLDYg KzU3NzgsMTEzIEBAIFNDUkFNLVNIQS0yNTYkPHJlcGxhY2VhYmxlPiZsdDtpdGVyYXRpb24gY291 bnQmZ3Q7PC9yZXBsYWNlYWJsZT46PHJlcGxhY2VhYmxlPiZsCiAgICAgICAgYXJlIHNpbXBsZSBy ZWZlcmVuY2VzLgogICAgICAgPC9wYXJhPjwvZW50cnk+CiAgICAgIDwvcm93PgorCisgICAgPC90 Ym9keT4KKyAgIDwvdGdyb3VwPgorICA8L3RhYmxlPgorIDwvc2VjdDE+CisKKworIDxzZWN0MSBp ZD0iY2F0YWxvZy1wZy1wZXJpb2QiPgorICA8dGl0bGU+PHN0cnVjdG5hbWU+cGdfcGVyaW9kPC9z dHJ1Y3RuYW1lPjwvdGl0bGU+CisKKyAgPGluZGV4dGVybSB6b25lPSJjYXRhbG9nLXBnLXBlcmlv ZCI+CisgICA8cHJpbWFyeT5wZ19wZXJpb2Q8L3ByaW1hcnk+CisgIDwvaW5kZXh0ZXJtPgorCisg IDxwYXJhPgorICAgVGhlIGNhdGFsb2cgPHN0cnVjdG5hbWU+cGdfcGVyaW9kPC9zdHJ1Y3RuYW1l PiBzdG9yZXMKKyAgIGluZm9ybWF0aW9uIGFib3V0IHN5c3RlbSBhbmQgYXBwbGljYXRpb24gdGlt ZSBwZXJpb2RzLgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBQZXJpb2RzIGFyZSBkZXNjcmli ZWQgaW4gPHhyZWYgbGlua2VuZD0iZGRsLXBlcmlvZHMiLz4uCisgIDwvcGFyYT4KKworICA8dGFi bGU+CisgICA8dGl0bGU+PHN0cnVjdG5hbWU+cGdfcGVyaW9kPC9zdHJ1Y3RuYW1lPiBDb2x1bW5z PC90aXRsZT4KKworICAgPHRncm91cCBjb2xzPSIxIj4KKyAgICA8dGhlYWQ+CisgICAgIDxyb3c+ CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29s dW1uX2RlZmluaXRpb24iPgorICAgICAgIENvbHVtbiBUeXBlCisgICAgICA8L3BhcmE+CisgICAg ICA8cGFyYT4KKyAgICAgICBEZXNjcmlwdGlvbgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAg IDwvcm93PgorICAgIDwvdGhlYWQ+CisKKyAgICA8dGJvZHk+CisgICAgIDxyb3c+CisgICAgICA8 ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmlu aXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5vaWQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5vaWQ8 L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBSb3cgaWRlbnRpZmll cgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorCisgICAgIDxyb3c+CisgICAg ICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2Rl ZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5wZXJuYW1lPC9zdHJ1Y3RmaWVsZD4gPHR5 cGU+dGV4dDwvdHlwZT4KKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIFBlcmlv ZCBuYW1lCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisKKyAgICAgPHJvdz4K KyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1 bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnBlcnJlbGlkPC9zdHJ1Y3RmaWVs ZD4gPHR5cGU+b2lkPC90eXBlPgorICAgICAgIChyZWZlcmVuY2VzIDxsaW5rIGxpbmtlbmQ9ImNh dGFsb2ctcGctY2xhc3MiPjxzdHJ1Y3RuYW1lPnBnX2NsYXNzPC9zdHJ1Y3RuYW1lPjwvbGluaz4u PHN0cnVjdGZpZWxkPm9pZDwvc3RydWN0ZmllbGQ+KQorICAgICAgPC9wYXJhPgorICAgICAgPHBh cmE+CisgICAgICAgVGhlIHRhYmxlIHRoaXMgcGVyaW9kIGJlbG9uZ3MgdG8KKyAgICAgIDwvcGFy YT48L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9 ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAg ICAgICA8c3RydWN0ZmllbGQ+cGVyc3RhcnQ8L3N0cnVjdGZpZWxkPiA8dHlwZT5pbnQyPC90eXBl PgorICAgICAgIChyZWZlcmVuY2VzIDxsaW5rIGxpbmtlbmQ9ImNhdGFsb2ctcGctYXR0cmlidXRl Ij48c3RydWN0bmFtZT5wZ19hdHRyaWJ1dGU8L3N0cnVjdG5hbWU+PC9saW5rPi48c3RydWN0Zmll bGQ+YXR0bnVtPC9zdHJ1Y3RmaWVsZD4pCisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAg ICAgICBUaGUgbnVtYmVyIG9mIHRoZSBzdGFydCBjb2x1bW4KKyAgICAgIDwvcGFyYT48L2VudHJ5 PgorICAgICA8L3Jvdz4KKworICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2df dGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3Ry dWN0ZmllbGQ+cGVyZW5kPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+aW50MjwvdHlwZT4KKyAgICAgICAo cmVmZXJlbmNlcyA8bGluayBsaW5rZW5kPSJjYXRhbG9nLXBnLWF0dHJpYnV0ZSI+PHN0cnVjdG5h bWU+cGdfYXR0cmlidXRlPC9zdHJ1Y3RuYW1lPjwvbGluaz4uPHN0cnVjdGZpZWxkPmF0dG51bTwv c3RydWN0ZmllbGQ+KQorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVGhlIG51 bWJlciBvZiB0aGUgZW5kIGNvbHVtbgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93 PgorCisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxvZ190YWJsZV9lbnRyeSI+ PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxzdHJ1Y3RmaWVsZD5wZXJy YW5nZTwvc3RydWN0ZmllbGQ+IDx0eXBlPmludDI8L3R5cGU+CisgICAgICAgKHJlZmVyZW5jZXMg PGxpbmsgbGlua2VuZD0iY2F0YWxvZy1wZy1hdHRyaWJ1dGUiPjxzdHJ1Y3RuYW1lPnBnX2F0dHJp YnV0ZTwvc3RydWN0bmFtZT48L2xpbms+LjxzdHJ1Y3RmaWVsZD5hdHRudW08L3N0cnVjdGZpZWxk PikKKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIFRoZSBudW1iZXIgb2YgdGhl IDxsaXRlcmFsPkdFTkVSQVRFRDwvbGl0ZXJhbD4gY29sdW1uIHRoYXQgaW1wbGVtZW50cyB0aGUg PGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPi4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8 L3Jvdz4KKworICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50 cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+ cGVyY29uc3RyYWludDwvc3RydWN0ZmllbGQ+IDx0eXBlPm9pZDwvdHlwZT4KKyAgICAgICAocmVm ZXJlbmNlcyA8bGluayBsaW5rZW5kPSJjYXRhbG9nLXBnLWNvbnN0cmFpbnQiPjxzdHJ1Y3RuYW1l PnBnX2NvbnN0cmFpbnQ8L3N0cnVjdG5hbWU+PC9saW5rPi48c3RydWN0ZmllbGQ+b2lkPC9zdHJ1 Y3RmaWVsZD4pCisgICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBUaGUgT0lEIG9m IHRoZSBwZXJpb2QncyA8bGl0ZXJhbD5DSEVDSzwvbGl0ZXJhbD4gY29uc3RyYWludAorICAgICAg PC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgorCiAgICAgPC90Ym9keT4KICAgIDwvdGdyb3Vw PgogICA8L3RhYmxlPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2RkbC5zZ21sIGIvZG9jL3Ny Yy9zZ21sL2RkbC5zZ21sCmluZGV4IDEzYzE3NGI0N2E5Li5jZjE3MzBkN2JjYSAxMDA2NDQKLS0t IGEvZG9jL3NyYy9zZ21sL2RkbC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9kZGwuc2dtbApAQCAt MTYwMSw2ICsxNjAxLDUyIEBAIENSRUFURSBUQUJMRSBjaXJjbGVzICgKICAgIHRhYmxlcy4KICAg PC9wYXJhPgogCisgIDxzZWN0MiBpZD0iZGRsLXBlcmlvZHMiPgorICAgPHRpdGxlPlBlcmlvZHM8 L3RpdGxlPgorCisgICA8aW5kZXh0ZXJtIHpvbmU9ImRkbC1wZXJpb2RzIj4KKyAgICA8cHJpbWFy eT5wZXJpb2RzPC9wcmltYXJ5PgorICAgPC9pbmRleHRlcm0+CisKKyAgIDxwYXJhPgorICAgIEEg PGZpcnN0dGVybT5wZXJpb2Q8L2ZpcnN0dGVybT4gaXMgbWV0YWRhdGEgYXR0YWNoZWQgdG8gYSB0 YWJsZQorICAgIHVuaXRpbmcgdHdvIGNvbHVtbnMsIGEgc3RhcnQgdGltZSBhbmQgZW5kIHRpbWUs IGludG8gb25lIHJhbmdlLWxpa2UKKyAgICBjb25zdHJ1Y3QuIFBlcmlvZHMgYXJlIHVzZWQgdG8g cmVwcmVzZW50IDxsaW5rCisgICAgbGlua2VuZD0iZGRsLXN5c3RlbS10aW1lIj5zeXN0ZW0gdGlt ZTwvbGluaz4gYW5kIDxsaW5rCisgICAgbGlua2VuZD0iZGRsLWFwcGxpY2F0aW9uLXRpbWUiPmFw cGxpY2F0aW9uIHRpbWU8L2xpbms+LiBBIHN5c3RlbS10aW1lCisgICAgcGVyaW9kIG11c3QgYmUg bmFtZWQgPGxpdGVyYWw+c3lzdGVtX3RpbWU8L2xpdGVyYWw+LCBhbmQgYW4KKyAgICBhcHBsaWNh dGlvbi10aW1lIHBlcmlvZCBjYW4gYmUgbmFtZWQgYW55dGhpbmcgZWxzZS4gVGhlaXIgbmFtZXMg bXVzdAorICAgIG5vdCBjb25mbGljdCB3aXRoIGNvbHVtbiBuYW1lcyBmcm9tIHRoZSBzYW1lIHRh YmxlLgorICAgPC9wYXJhPgorCisgICA8cGFyYT4KKyAgICBBcHBsaWNhdGlvbi10aW1lIHBlcmlv ZHMgYXJlIHJlZmVyZW5jZWQgaW4gc2V2ZXJhbCB0ZW1wb3JhbCBvcGVyYXRpb25zIGRlc2NyaWJl ZCBpbgorICAgIHRoaXMgY2hhcHRlcjogdGVtcG9yYWwgcHJpbWFyeSBrZXlzLCB1bmlxdWUgY29u c3RyYWludHMsIGZvcmVpZ24ga2V5cywKKyAgICB1cGRhdGUgY29tbWFuZHMsIGFuZCBkZWxldGUg Y29tbWFuZHMuCisgICAgSW4gYWxsIGNhc2VzLCA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJv ZHVjdG5hbWU+IHN1cHBvcnRzIGVpdGhlciBwZXJpb2RzCisgICAgb3IgcmVndWxhciBjb2x1bW5z IHdpdGggYSA8bGluayBsaW5rZW5kPSJyYW5nZXR5cGVzLWJ1aWx0aW4iPnJhbmdldHlwZSBvcgor ICAgIG11bHRpcmFuZ2V0eXBlPC9saW5rPi4KKyAgIDwvcGFyYT4KKworICAgPHBhcmE+CisgICAg QXBwbGljYXRpb24gcGVyaW9kcyBhcmUgZGVmaW5lZCBvbiBhIHRhYmxlIHVzaW5nIHRoZSBmb2xs b3dpbmcgc3ludGF4OgorICAgPC9wYXJhPgorCis8cHJvZ3JhbWxpc3Rpbmc+CitDUkVBVEUgVEFC TEUgYmlsbGluZ19hZGRyZXNzZXMgKAorICBjdXN0b21lcl9pZCBpbnRlZ2VyLAorICBhZGRyZXNz X2lkICBpbnRlZ2VyLAorICB2YWxpZF9mcm9tICBkYXRlLAorICB2YWxpZF90aWwgICBkYXRlLAor ICA8ZW1waGFzaXM+UEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTwv ZW1waGFzaXM+CispOworPC9wcm9ncmFtbGlzdGluZz4KKworICAgPHBhcmE+CisgICAgUGVyaW9k cyBmb3IgPGxpdGVyYWw+U1lTVEVNX1RJTUU8L2xpdGVyYWw+IGFyZSBjdXJyZW50bHkgbm90IGlt cGxlbWVudGVkLgorICAgPC9wYXJhPgorICA8L3NlY3QyPgorCiAgIDxzZWN0MiBpZD0iZGRsLWFw cGxpY2F0aW9uLXRpbWUiPgogICAgPHRpdGxlPkFwcGxpY2F0aW9uIFRpbWU8L3RpdGxlPgogCmRp ZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvaW5mb3JtYXRpb25fc2NoZW1hLnNnbWwgYi9kb2Mvc3Jj L3NnbWwvaW5mb3JtYXRpb25fc2NoZW1hLnNnbWwKaW5kZXggMTlkZmZlN2JlNmEuLjkxYjI2ODgx YzY1IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvaW5mb3JtYXRpb25fc2NoZW1hLnNnbWwKKysr IGIvZG9jL3NyYy9zZ21sL2luZm9ybWF0aW9uX3NjaGVtYS5zZ21sCkBAIC00MTcxLDYgKzQxNzEs NjkgQEAgT1JERVIgQlkgYy5vcmRpbmFsX3Bvc2l0aW9uOwogICA8L3RhYmxlPgogIDwvc2VjdDE+ CiAKKyA8c2VjdDEgaWQ9ImluZm9zY2hlbWEtcGVyaW9kcyI+CisgIDx0aXRsZT48bGl0ZXJhbD5w ZXJpb2RzPC9saXRlcmFsPjwvdGl0bGU+CisKKyAgPHBhcmE+CisgICBUaGUgdmlldyA8bGl0ZXJh bD5wZXJpb2RzPC9saXRlcmFsPiBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUKKyAgIHBl cmlvZHMgb2YgYWxsIHRhYmxlcyBpbiB0aGUgY3VycmVudCBkYXRhYmFzZS4gIFRoZSBzdGFydCBh bmQgZW5kIGNvbHVtbgorICAgbmFtZXMgYXJlIG9ubHkgc2hvd24gaWYgdGhlIGN1cnJlbnQgdXNl ciBoYXMgYWNjZXNzIHRvIHRoZW0gKGJ5IHdheSBvZiBiZWluZworICAgdGhlIG93bmVyIG9yIGhh dmluZyBzb21lIHByaXZpbGVnZSkuCisgIDwvcGFyYT4KKworICA8dGFibGU+CisgICA8dGl0bGU+ PGxpdGVyYWw+cGVyaW9kczwvbGl0ZXJhbD4gQ29sdW1uczwvdGl0bGU+CisKKyAgIDx0Z3JvdXAg Y29scz0iMyI+CisgICAgPHRoZWFkPgorICAgICA8cm93PgorICAgICAgPGVudHJ5Pk5hbWU8L2Vu dHJ5PgorICAgICAgPGVudHJ5PkRhdGEgVHlwZTwvZW50cnk+CisgICAgICA8ZW50cnk+RGVzY3Jp cHRpb248L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICA8L3RoZWFkPgorCisgICAgPHRib2R5Pgor ICAgICA8cm93PgorICAgICAgPGVudHJ5PjxsaXRlcmFsPnRhYmxlX2NhdGFsb2c8L2xpdGVyYWw+ PC9lbnRyeT4KKyAgICAgIDxlbnRyeT48dHlwZT5zcWxfaWRlbnRpZmllcjwvdHlwZT48L2VudHJ5 PgorICAgICAgPGVudHJ5Pk5hbWUgb2YgdGhlIGRhdGFiYXNlIGNvbnRhaW5pbmcgdGhlIHBlcmlv ZCAoYWx3YXlzIHRoZSBjdXJyZW50IGRhdGFiYXNlKTwvZW50cnk+CisgICAgIDwvcm93PgorCisg ICAgIDxyb3c+CisgICAgICA8ZW50cnk+PGxpdGVyYWw+dGFibGVfc2NoZW1hPC9saXRlcmFsPjwv ZW50cnk+CisgICAgICA8ZW50cnk+PHR5cGU+c3FsX2lkZW50aWZpZXI8L3R5cGU+PC9lbnRyeT4K KyAgICAgIDxlbnRyeT5OYW1lIG9mIHRoZSBzY2hlbWEgY29udGFpbmluZyB0aGUgcGVyaW9kPC9l bnRyeT4KKyAgICAgPC9yb3c+CisKKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeT48bGl0ZXJhbD50 YWJsZV9uYW1lPC9saXRlcmFsPjwvZW50cnk+CisgICAgICA8ZW50cnk+PHR5cGU+c3FsX2lkZW50 aWZpZXI8L3R5cGU+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT5OYW1lIG9mIHRoZSB0YWJsZSBjb250 YWluaW5nIHRoZSBwZXJpb2Q8L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93PgorICAg ICAgPGVudHJ5PjxsaXRlcmFsPnBlcmlvZF9uYW1lPC9saXRlcmFsPjwvZW50cnk+CisgICAgICA8 ZW50cnk+PHR5cGU+c3FsX2lkZW50aWZpZXI8L3R5cGU+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT5O YW1lIG9mIHRoZSBwZXJpb2Q8L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93PgorICAg ICAgPGVudHJ5PjxsaXRlcmFsPnN0YXJ0X2NvbHVtbl9uYW1lPC9saXRlcmFsPjwvZW50cnk+Cisg ICAgICA8ZW50cnk+PHR5cGU+c3FsX2lkZW50aWZpZXI8L3R5cGU+PC9lbnRyeT4KKyAgICAgIDxl bnRyeT5OYW1lIG9mIHRoZSBzdGFydCBjb2x1bW4gZm9yIHRoZSBwZXJpb2Q8L2VudHJ5PgorICAg ICA8L3Jvdz4KKworICAgICA8cm93PgorICAgICAgPGVudHJ5PjxsaXRlcmFsPmVuZF9jb2x1bW5f bmFtZTwvbGl0ZXJhbD48L2VudHJ5PgorICAgICAgPGVudHJ5Pjx0eXBlPnNxbF9pZGVudGlmaWVy PC90eXBlPjwvZW50cnk+CisgICAgICA8ZW50cnk+TmFtZSBvZiB0aGUgZW5kIGNvbHVtbiBmb3Ig dGhlIHBlcmlvZDwvZW50cnk+CisgICAgIDwvcm93PgorICAgIDwvdGJvZHk+CisgICA8L3Rncm91 cD4KKyAgPC90YWJsZT4KKyA8L3NlY3QxPgorCiAgPHNlY3QxIGlkPSJpbmZvc2NoZW1hLXJlZmVy ZW50aWFsLWNvbnN0cmFpbnRzIj4KICAgPHRpdGxlPjxsaXRlcmFsPnJlZmVyZW50aWFsX2NvbnN0 cmFpbnRzPC9saXRlcmFsPjwvdGl0bGU+CiAKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9wbHBn c3FsLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcGxwZ3NxbC5zZ21sCmluZGV4IGY1MTk5ODcyZTJlLi5k YWI5ODY0Yzk0YiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3BscGdzcWwuc2dtbAorKysgYi9k b2Mvc3JjL3NnbWwvcGxwZ3NxbC5zZ21sCkBAIC00MjUyLDcgKzQyNTIsNyBAQCBBU1NFUlQgPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbmRpdGlvbjwvcmVwbGFjZWFibGU+IDxvcHRp b25hbD4gLCA8cmVwbAogICAgICA8dGVybT48dmFybmFtZT5UR19QRVJJT0RfTkFNRTwvdmFybmFt ZT4gPHR5cGU+dGV4dDwvdHlwZT48L3Rlcm0+CiAgICAgIDxsaXN0aXRlbT4KICAgICAgIDxwYXJh PgotICAgICAgIHRoZSBjb2x1bW4gbmFtZSB1c2VkIGluIGEgPGxpdGVyYWw+Rk9SIFBPUlRJT04g T0Y8L2xpdGVyYWw+IGNsYXVzZSwKKyAgICAgICB0aGUgY29sdW1uL3BlcmlvZCBuYW1lIHVzZWQg aW4gYSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gY2xhdXNlLAogICAgICAgIG9y IGVsc2UgPHN5bWJvbD5OVUxMPC9zeW1ib2w+LgogICAgICAgPC9wYXJhPgogICAgICA8L2xpc3Rp dGVtPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl90YWJsZS5zZ21sIGIvZG9j L3NyYy9zZ21sL3JlZi9hbHRlcl90YWJsZS5zZ21sCmluZGV4IGJlYTlmOTAxMzhiLi4zMzA5YTBh OTkwMSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl90YWJsZS5zZ21sCisrKyBi L2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfdGFibGUuc2dtbApAQCAtNjIsNiArNjIsOCBAQCBBTFRF UiBUQUJMRSBbIElGIEVYSVNUUyBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5uYW1l PC9yZXBsYWNlYWJsZT4KICAgICBBTFRFUiBDT05TVFJBSU5UIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5jb25zdHJhaW50X25hbWU8L3JlcGxhY2VhYmxlPiBbIElOSEVSSVQgfCBOTyBJ TkhFUklUIF0KICAgICBWQUxJREFURSBDT05TVFJBSU5UIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj5jb25zdHJhaW50X25hbWU8L3JlcGxhY2VhYmxlPgogICAgIERST1AgQ09OU1RSQUlO VCBbIElGIEVYSVNUUyBdICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29uc3RyYWlu dF9uYW1lPC9yZXBsYWNlYWJsZT4gWyBSRVNUUklDVCB8IENBU0NBREUgXQorICAgIEFERCBQRVJJ T0QgRk9SIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFj ZWFibGU+ICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnN0YXJ0X2NvbHVtbjwvcmVw bGFjZWFibGU+LCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5kX2NvbHVtbjwvcmVw bGFjZWFibGU+ICkgWyBXSVRIICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBlcmlv ZF9vcHRpb248L3JlcGxhY2VhYmxlPiA9IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj52 YWx1ZTwvcmVwbGFjZWFibGU+IFssIC4uLiBdICkgXQorICAgIERST1AgUEVSSU9EIEZPUiA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiBbIFJF U1RSSUNUIHwgQ0FTQ0FERSBdCiAgICAgRElTQUJMRSBUUklHR0VSIFsgPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPnRyaWdnZXJfbmFtZTwvcmVwbGFjZWFibGU+IHwgQUxMIHwgVVNFUiBd CiAgICAgRU5BQkxFIFRSSUdHRVIgWyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dHJp Z2dlcl9uYW1lPC9yZXBsYWNlYWJsZT4gfCBBTEwgfCBVU0VSIF0KICAgICBFTkFCTEUgUkVQTElD QSBUUklHR0VSIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50cmlnZ2VyX25hbWU8L3Jl cGxhY2VhYmxlPgpAQCAtMTE2LDEwICsxMTgsMTAgQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0K IFsgQ09OU1RSQUlOVCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29uc3RyYWludF9u YW1lPC9yZXBsYWNlYWJsZT4gXQogeyBDSEVDSyAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5leHByZXNzaW9uPC9yZXBsYWNlYWJsZT4gKSBbIE5PIElOSEVSSVQgXSB8CiAgIE5PVCBO VUxMIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFi bGU+IFsgTk8gSU5IRVJJVCBdIHwKLSAgVU5JUVVFIFsgTlVMTFMgWyBOT1QgXSBESVNUSU5DVCBd ICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJs ZT4gWywgLi4uIF0gWywgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1l PC9yZXBsYWNlYWJsZT4gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxlPiB8Ci0gIFBSSU1BUlkgS0VZ ICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJs ZT4gWywgLi4uIF0gWywgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1l PC9yZXBsYWNlYWJsZT4gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxlPiB8CisgIFVOSVFVRSBbIE5V TExTIFsgTk9UIF0gRElTVElOQ1QgXSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5j b2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLiBdIFssIHsgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gfCA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiB9IFdJVEhPVVQgT1ZFUkxB UFMgXSApIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9wYXJhbWV0ZXJzPC9y ZXBsYWNlYWJsZT4gfAorICBQUklNQVJZIEtFWSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLiBdIFssIHsgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gfCA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiB9IFdJVEhPVVQg T1ZFUkxBUFMgXSApIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9wYXJhbWV0 ZXJzPC9yZXBsYWNlYWJsZT4gfAogICBFWENMVURFIFsgVVNJTkcgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmluZGV4X21ldGhvZDwvcmVwbGFjZWFibGU+IF0gKCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+ZXhjbHVkZV9lbGVtZW50PC9yZXBsYWNlYWJsZT4gV0lUSCA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+b3BlcmF0b3I8L3JlcGxhY2VhYmxlPiBbLCAuLi4g XSApIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9wYXJhbWV0ZXJzPC9yZXBs YWNlYWJsZT4gWyBXSEVSRSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wcmVkaWNh dGU8L3JlcGxhY2VhYmxlPiApIF0gfAotICBGT1JFSUdOIEtFWSAoIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLiBdIFssIFBFUklP RCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxl PiBdICkgUkVGRVJFTkNFUyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmdGFibGU8 L3JlcGxhY2VhYmxlPiBbICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmNvbHVt bjwvcmVwbGFjZWFibGU+IFssIC4uLiBdICBbLCBQRVJJT0QgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+IF0gKSBdCisgIEZPUkVJR04gS0VZICgg PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4g WywgLi4uIF0gWywgUEVSSU9EIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVt bl9uYW1lPC9yZXBsYWNlYWJsZT4gfCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVy aW9kX25hbWU8L3JlcGxhY2VhYmxlPiB9IF0gKSBSRUZFUkVOQ0VTIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5yZWZ0YWJsZTwvcmVwbGFjZWFibGU+IFsgKCA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gIFssIFBFUklP RCB7IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZjb2x1bW48L3JlcGxhY2VhYmxl PiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFi bGU+IH0gXSApIF0KICAgICBbIE1BVENIIEZVTEwgfCBNQVRDSCBQQVJUSUFMIHwgTUFUQ0ggU0lN UExFIF0gWyBPTiBERUxFVEUgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmVyZW50 aWFsX2FjdGlvbjwvcmVwbGFjZWFibGU+IF0gWyBPTiBVUERBVEUgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPnJlZmVyZW50aWFsX2FjdGlvbjwvcmVwbGFjZWFibGU+IF0gfQogWyBERUZF UlJBQkxFIHwgTk9UIERFRkVSUkFCTEUgXSBbIElOSVRJQUxMWSBERUZFUlJFRCB8IElOSVRJQUxM WSBJTU1FRElBVEUgXSBbIEVORk9SQ0VEIHwgTk9UIEVORk9SQ0VEIF0KIApAQCAtNjI0LDYgKzYy NiwyOSBAQCBXSVRIICggTU9EVUxVUyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bnVt ZXJpY19saXRlcmFsPC9yZXBsYWNlYWJsZT4sIFJFTQogICAgIDwvbGlzdGl0ZW0+CiAgICA8L3Zh cmxpc3RlbnRyeT4KIAorICAgPHZhcmxpc3RlbnRyeSBpZD0ic3FsLWFsdGVydGFibGUtZGVzYy1h ZGQtcGVyaW9kIj4KKyAgICA8dGVybT48bGl0ZXJhbD5BREQgUEVSSU9EIEZPUjwvbGl0ZXJhbD48 L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFyYT4KKyAgICAgIFRoaXMgZm9ybSBhZGRz IGEgbmV3IHBlcmlvZCB0byBhIHRhYmxlIHVzaW5nIHRoZSBzYW1lIHN5bnRheCBhcworICAgICAg PHhyZWYgbGlua2VuZD0ic3FsLWNyZWF0ZXRhYmxlIi8+LgorICAgICA8L3BhcmE+CisgICAgPC9s aXN0aXRlbT4KKyAgIDwvdmFybGlzdGVudHJ5PgorCisgICA8dmFybGlzdGVudHJ5IGlkPSJzcWwt YWx0ZXJ0YWJsZS1kZXNjLWRyb3AtcGVyaW9kIj4KKyAgICA8dGVybT48bGl0ZXJhbD5EUk9QIFBF UklPRCBGT1I8L2xpdGVyYWw+PC90ZXJtPgorICAgIDxsaXN0aXRlbT4KKyAgICAgPHBhcmE+Cisg ICAgICBUaGlzIGZvcm0gZHJvcHMgdGhlIHNwZWNpZmllZCBwZXJpb2Qgb24gYSB0YWJsZS4gIFRo ZSBzdGFydCBhbmQgZW5kCisgICAgICBjb2x1bW5zIHdpbGwgbm90IGJlIGRyb3BwZWQgYnkgdGhp cyBjb21tYW5kIGJ1dCB0aGUKKyAgICAgIDxsaXRlcmFsPkNIRUNLPC9saXRlcmFsPiBjb25zdHJh aW50IHdpbGwgYmUuICBZb3Ugd2lsbCBuZWVkIHRvIHNheQorICAgICAgPGxpdGVyYWw+Q0FTQ0FE RTwvbGl0ZXJhbD4gaWYgYW55dGhpbmcgb3V0c2lkZSB0aGUgdGFibGUgZGVwZW5kcyBvbiB0aGUK KyAgICAgIGNvbHVtbi4KKyAgICAgPC9wYXJhPgorICAgIDwvbGlzdGl0ZW0+CisgICA8L3Zhcmxp c3RlbnRyeT4KKwogICAgPHZhcmxpc3RlbnRyeSBpZD0ic3FsLWFsdGVydGFibGUtZGVzYy1kaXNh YmxlLWVuYWJsZS10cmlnZ2VyIj4KICAgICA8dGVybT48bGl0ZXJhbD5ESVNBQkxFPC9saXRlcmFs Pi88bGl0ZXJhbD5FTkFCTEUgWyBSRVBMSUNBIHwgQUxXQVlTIF0gVFJJR0dFUjwvbGl0ZXJhbD48 L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9jb21t ZW50LnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2NvbW1lbnQuc2dtbAppbmRleCA1YjQzYzU2YjEz My4uNDljMmRmOTk0NDkgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvY29tbWVudC5zZ21s CisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvY29tbWVudC5zZ21sCkBAIC00NCw2ICs0NCw3IEBAIENP TU1FTlQgT04KICAgT1BFUkFUT1IgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm9wZXJh dG9yX25hbWU8L3JlcGxhY2VhYmxlPiAoPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmxl ZnRfdHlwZTwvcmVwbGFjZWFibGU+LCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmln aHRfdHlwZTwvcmVwbGFjZWFibGU+KSB8CiAgIE9QRVJBVE9SIENMQVNTIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5vYmplY3RfbmFtZTwvcmVwbGFjZWFibGU+IFVTSU5HIDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9tZXRob2Q8L3JlcGxhY2VhYmxlPiB8CiAgIE9Q RVJBVE9SIEZBTUlMWSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+b2JqZWN0X25hbWU8 L3JlcGxhY2VhYmxlPiBVU0lORyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5kZXhf bWV0aG9kPC9yZXBsYWNlYWJsZT4gfAorICBQRVJJT0QgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPnJlbGF0aW9uX25hbWU8L3JlcGxhY2VhYmxlPi48cmVwbGFjZWFibGUgY2xhc3M9InBh cmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiB8CiAgIFBPTElDWSA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+cG9saWN5X25hbWU8L3JlcGxhY2VhYmxlPiBPTiA8cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IHwKICAgWyBQ Uk9DRURVUkFMIF0gTEFOR1VBR0UgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm9iamVj dF9uYW1lPC9yZXBsYWNlYWJsZT4gfAogICBQUk9DRURVUkUgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnByb2NlZHVyZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAoIFsgWyA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+YXJnbW9kZTwvcmVwbGFjZWFibGU+IF0gWyA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+YXJnbmFtZTwvcmVwbGFjZWFibGU+IF0gPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmFyZ3R5cGU8L3JlcGxhY2VhYmxlPiBbLCAuLi5dIF0gKSBdIHwK QEAgLTM0MSw2ICszNDIsNyBAQCBDT01NRU5UIE9OIE9QRVJBVE9SIF4gKHRleHQsIHRleHQpIElT ICdQZXJmb3JtcyBpbnRlcnNlY3Rpb24gb2YgdHdvIHRleHRzJzsKIENPTU1FTlQgT04gT1BFUkFU T1IgLSAoTk9ORSwgaW50ZWdlcikgSVMgJ1VuYXJ5IG1pbnVzJzsKIENPTU1FTlQgT04gT1BFUkFU T1IgQ0xBU1MgaW50NG9wcyBVU0lORyBidHJlZSBJUyAnNCBieXRlIGludGVnZXIgb3BlcmF0b3Jz IGZvciBidHJlZXMnOwogQ09NTUVOVCBPTiBPUEVSQVRPUiBGQU1JTFkgaW50ZWdlcl9vcHMgVVNJ TkcgYnRyZWUgSVMgJ2FsbCBpbnRlZ2VyIG9wZXJhdG9ycyBmb3IgYnRyZWVzJzsKK0NPTU1FTlQg T04gUEVSSU9EIG15X3RhYmxlLm15X2NvbHVtbiBJUyAnU2FsZXMgcHJvbW90aW9uIHZhbGlkaXR5 JzsKIENPTU1FTlQgT04gUE9MSUNZIG15X3BvbGljeSBPTiBteXRhYmxlIElTICdGaWx0ZXIgcm93 cyBieSB1c2Vycyc7CiBDT01NRU5UIE9OIFBST0NFRFVSRSBteV9wcm9jIChpbnRlZ2VyLCBpbnRl Z2VyKSBJUyAnUnVucyBhIHJlcG9ydCc7CiBDT01NRU5UIE9OIFBVQkxJQ0FUSU9OIGFsbHRhYmxl cyBJUyAnUHVibGlzaGVzIGFsbCBvcGVyYXRpb25zIG9uIGFsbCB0YWJsZXMnOwpkaWZmIC0tZ2l0 IGEvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfdGFibGUuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYv Y3JlYXRlX3RhYmxlLnNnbWwKaW5kZXggOTc1ZDVkYWEwYzEuLmYzZGNkYTc4Y2Y0IDEwMDY0NAot LS0gYS9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV90YWJsZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dt bC9yZWYvY3JlYXRlX3RhYmxlLnNnbWwKQEAgLTIzLDYgKzIzLDcgQEAgUG9zdGdyZVNRTCBkb2N1 bWVudGF0aW9uCiA8c3lub3BzaXM+CiBDUkVBVEUgWyBbIEdMT0JBTCB8IExPQ0FMIF0geyBURU1Q T1JBUlkgfCBURU1QIH0gfCBVTkxPR0dFRCBdIFRBQkxFIFsgSUYgTk9UIEVYSVNUUyBdIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gKCBbCiAg IHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJs ZT4gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmRhdGFfdHlwZTwvcmVwbGFjZWFibGU+ IFsgU1RPUkFHRSB7IFBMQUlOIHwgRVhURVJOQUwgfCBFWFRFTkRFRCB8IE1BSU4gfCBERUZBVUxU IH0gXSBbIENPTVBSRVNTSU9OIDxyZXBsYWNlYWJsZT5jb21wcmVzc2lvbl9tZXRob2Q8L3JlcGxh Y2VhYmxlPiBdIFsgQ09MTEFURSA8cmVwbGFjZWFibGU+Y29sbGF0aW9uPC9yZXBsYWNlYWJsZT4g XSBbIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fY29uc3RyYWludDwvcmVw bGFjZWFibGU+IFsgLi4uIF0gXQorICAgIHwgPHJlcGxhY2VhYmxlPnBlcmlvZF9kZWZpbml0aW9u PC9yZXBsYWNlYWJsZT4KICAgICB8IDxyZXBsYWNlYWJsZT50YWJsZV9jb25zdHJhaW50PC9yZXBs YWNlYWJsZT4KICAgICB8IExJS0UgPHJlcGxhY2VhYmxlPnNvdXJjZV90YWJsZTwvcmVwbGFjZWFi bGU+IFsgPHJlcGxhY2VhYmxlPmxpa2Vfb3B0aW9uPC9yZXBsYWNlYWJsZT4gLi4uIF0gfQogICAg IFssIC4uLiBdCkBAIC0zNyw2ICszOCw3IEBAIENSRUFURSBbIFsgR0xPQkFMIHwgTE9DQUwgXSB7 IFRFTVBPUkFSWSB8IFRFTVAgfSB8IFVOTE9HR0VEIF0gVEFCTEUgWyBJRiBOT1QgRVhJCiBDUkVB VEUgWyBbIEdMT0JBTCB8IExPQ0FMIF0geyBURU1QT1JBUlkgfCBURU1QIH0gfCBVTkxPR0dFRCBd IFRBQkxFIFsgSUYgTk9UIEVYSVNUUyBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50 YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4KICAgICBPRiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+dHlwZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAoCiAgIHsgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWyBXSVRIIE9QVElPTlMgXSBb IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fY29uc3RyYWludDwvcmVwbGFj ZWFibGU+IFsgLi4uIF0gXQorICAgIHwgPHJlcGxhY2VhYmxlPnBlcmlvZF9kZWZpbml0aW9uPC9y ZXBsYWNlYWJsZT4KICAgICB8IDxyZXBsYWNlYWJsZT50YWJsZV9jb25zdHJhaW50PC9yZXBsYWNl YWJsZT4gfQogICAgIFssIC4uLiBdCiApIF0KQEAgLTQ5LDYgKzUxLDcgQEAgQ1JFQVRFIFsgWyBH TE9CQUwgfCBMT0NBTCBdIHsgVEVNUE9SQVJZIHwgVEVNUCB9IHwgVU5MT0dHRUQgXSBUQUJMRSBb IElGIE5PVCBFWEkKIENSRUFURSBbIFsgR0xPQkFMIHwgTE9DQUwgXSB7IFRFTVBPUkFSWSB8IFRF TVAgfSB8IFVOTE9HR0VEIF0gVEFCTEUgWyBJRiBOT1QgRVhJU1RTIF0gPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPgogICAgIFBBUlRJVElPTiBP RiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGFyZW50X3RhYmxlPC9yZXBsYWNlYWJs ZT4gWyAoCiAgIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9y ZXBsYWNlYWJsZT4gWyBXSVRIIE9QVElPTlMgXSBbIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5jb2x1bW5fY29uc3RyYWludDwvcmVwbGFjZWFibGU+IFsgLi4uIF0gXQorICAgIHwgPHJl cGxhY2VhYmxlPnBlcmlvZF9kZWZpbml0aW9uPC9yZXBsYWNlYWJsZT4KICAgICB8IDxyZXBsYWNl YWJsZT50YWJsZV9jb25zdHJhaW50PC9yZXBsYWNlYWJsZT4gfQogICAgIFssIC4uLiBdCiApIF0g eyBGT1IgVkFMVUVTIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wYXJ0aXRpb25fYm91 bmRfc3BlYzwvcmVwbGFjZWFibGU+IHwgREVGQVVMVCB9CkBAIC03MywxNSArNzYsMjAgQEAgQ1JF QVRFIFsgWyBHTE9CQUwgfCBMT0NBTCBdIHsgVEVNUE9SQVJZIHwgVEVNUCB9IHwgVU5MT0dHRUQg XSBUQUJMRSBbIElGIE5PVCBFWEkKICAgICBbIE9OIERFTEVURSA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9yZXBsYWNlYWJsZT4gXSBbIE9OIFVQREFU RSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9yZXBs YWNlYWJsZT4gXSB9CiBbIERFRkVSUkFCTEUgfCBOT1QgREVGRVJSQUJMRSBdIFsgSU5JVElBTExZ IERFRkVSUkVEIHwgSU5JVElBTExZIElNTUVESUFURSBdIFsgRU5GT1JDRUQgfCBOT1QgRU5GT1JD RUQgXQogCis8cGhyYXNlPmFuZCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9k X2RlZmluaXRpb248L3JlcGxhY2VhYmxlPiBpczo8L3BocmFzZT4KKworUEVSSU9EIEZPUiB7IDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+IHwg U1lTVEVNX1RJTUUgfSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFt ZTwvcmVwbGFjZWFibGU+LCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25h bWU8L3JlcGxhY2VhYmxlPiApCitbIFdJVEggKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+cGVyaW9kX29wdGlvbjwvcmVwbGFjZWFibGU+ID0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPnZhbHVlPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gKSBdCisKIDxwaHJhc2U+YW5kIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9jb25zdHJhaW50PC9yZXBsYWNlYWJs ZT4gaXM6PC9waHJhc2U+CiAKIFsgQ09OU1RSQUlOVCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+Y29uc3RyYWludF9uYW1lPC9yZXBsYWNlYWJsZT4gXQogeyBDSEVDSyAoIDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leHByZXNzaW9uPC9yZXBsYWNlYWJsZT4gKSBbIE5PIElO SEVSSVQgXSB8CiAgIE5PVCBOVUxMIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1 bW5fbmFtZTwvcmVwbGFjZWFibGU+IFsgTk8gSU5IRVJJVCBdIHwKLSAgVU5JUVVFIFsgTlVMTFMg WyBOT1QgXSBESVNUSU5DVCBdICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVt bl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gWywgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxl PiB8Ci0gIFBSSU1BUlkgS0VZICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVt bl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gWywgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxl PiB8CisgIFVOSVFVRSBbIE5VTExTIFsgTk9UIF0gRElTVElOQ1QgXSAoIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLiBdIFssIHsg PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4g fCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxl PiB9IFdJVEhPVVQgT1ZFUkxBUFMgXSApIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5p bmRleF9wYXJhbWV0ZXJzPC9yZXBsYWNlYWJsZT4gfAorICBQUklNQVJZIEtFWSAoIDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLiBd IFssIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNl YWJsZT4gfCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxh Y2VhYmxlPiB9ICBXSVRIT1VUIE9WRVJMQVBTIF0gKSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+aW5kZXhfcGFyYW1ldGVyczwvcmVwbGFjZWFibGU+IHwKICAgRVhDTFVERSBbIFVTSU5H IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9tZXRob2Q8L3JlcGxhY2VhYmxl PiBdICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4Y2x1ZGVfZWxlbWVudDwvcmVw bGFjZWFibGU+IFdJVEggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm9wZXJhdG9yPC9y ZXBsYWNlYWJsZT4gWywgLi4uIF0gKSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5k ZXhfcGFyYW1ldGVyczwvcmVwbGFjZWFibGU+IFsgV0hFUkUgKCA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+cHJlZGljYXRlPC9yZXBsYWNlYWJsZT4gKSBdIHwKLSAgRk9SRUlHTiBLRVkg KCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxl PiBbLCAuLi4gXSBbLCBQRVJJT0QgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVt bl9uYW1lPC9yZXBsYWNlYWJsZT4gXSApIFJFRkVSRU5DRVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnJlZnRhYmxlPC9yZXBsYWNlYWJsZT4gWyAoIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5yZWZjb2x1bW48L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCBQRVJJT0QgPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+IF0gKSBd CisgIEZPUkVJR04gS0VZICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9u YW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gWywgUEVSSU9EIHsgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gfCA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiB9IF0gKSBSRUZFUkVOQ0VT IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZ0YWJsZTwvcmVwbGFjZWFibGU+IFsg KCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4g WywgLi4uIF0gWywgUEVSSU9EIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmNv bHVtbjwvcmVwbGFjZWFibGU+IHwgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBlcmlv ZF9uYW1lPC9yZXBsYWNlYWJsZT4gfSBdICkgXQogICAgIFsgTUFUQ0ggRlVMTCB8IE1BVENIIFBB UlRJQUwgfCBNQVRDSCBTSU1QTEUgXSBbIE9OIERFTEVURSA8cmVwbGFjZWFibGUKIGNsYXNzPSJw YXJhbWV0ZXIiPnJlZmVyZW50aWFsX2FjdGlvbjwvcmVwbGFjZWFibGU+IF0gWyBPTiBVUERBVEUg PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmVyZW50aWFsX2FjdGlvbjwvcmVwbGFj ZWFibGU+IF0gfQogWyBERUZFUlJBQkxFIHwgTk9UIERFRkVSUkFCTEUgXSBbIElOSVRJQUxMWSBE RUZFUlJFRCB8IElOSVRJQUxMWSBJTU1FRElBVEUgXSBbIEVORk9SQ0VEIHwgTk9UIEVORk9SQ0VE IF0KQEAgLTE0MCw2ICsxNDgsMTQgQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0KICAgIG5hbWUg YXMgYW55IGV4aXN0aW5nIGRhdGEgdHlwZSBpbiB0aGUgc2FtZSBzY2hlbWEuCiAgIDwvcGFyYT4K IAorICA8cGFyYT4KKyAgIFBlcmlvZHMgbWF5IGJlIGRlZmluZWQgb24gdGFibGVzLCBzcGVjaWZ5 aW5nIHRoYXQgdHdvIGV4aXN0aW5nIGNvbHVtbnMKKyAgIHJlcHJlc2VudCBzdGFydCBhbmQgZW5k IHZhbHVlcyBmb3IgdGhlIHBlcmlvZC4gIFBlcmlvZHMgbWF5IGhhdmUgYW55IG5hbWUKKyAgIHRo YXQgZG9lc24ndCBjb25mbGljdCB3aXRoIGEgY29sdW1uIG5hbWUsIGJ1dCB0aGUgbmFtZQorICAg PGxpdGVyYWw+U1lTVEVNX1RJTUU8L2xpdGVyYWw+IGlzIHNwZWNpYWwsIHVzZWQgZm9yIHZlcnNp b25pbmcgdGFibGVzLgorICAgU3lzdGVtIHBlcmlvZHMgYXJlIG5vdCB5ZXQgaW1wbGVtZW50ZWQu ICBTZWUgPHhyZWYgbGlua2VuZD0iZGRsLXBlcmlvZHMiLz4gZm9yIG1vcmUgZGV0YWlscy4KKyAg PC9wYXJhPgorCiAgIDxwYXJhPgogICAgVGhlIG9wdGlvbmFsIGNvbnN0cmFpbnQgY2xhdXNlcyBz cGVjaWZ5IGNvbnN0cmFpbnRzICh0ZXN0cykgdGhhdAogICAgbmV3IG9yIHVwZGF0ZWQgcm93cyBt dXN0IHNhdGlzZnkgZm9yIGFuIGluc2VydCBvciB1cGRhdGUgb3BlcmF0aW9uCkBAIC04MDAsNiAr ODE2LDM3IEBAIFdJVEggKCBNT0RVTFVTIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5u dW1lcmljX2xpdGVyYWw8L3JlcGxhY2VhYmxlPiwgUkVNCiAgICAgPC9saXN0aXRlbT4KICAgIDwv dmFybGlzdGVudHJ5PgogCisgICA8dmFybGlzdGVudHJ5IGlkPSJzcWwtY3JlYXRldGFibGUtcGFy bXMtcGVyaW9kIj4KKyAgICA8dGVybT48bGl0ZXJhbD5QRVJJT0QgRk9SIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+ICggPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+ICkgWyBXSVRIICgg PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBlcmlvZF9vcHRpb248L3JlcGxhY2VhYmxl PiA9IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj52YWx1ZTwvcmVwbGFjZWFibGU+IFss IC4uLiBdICkgXTwvbGl0ZXJhbD48L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8cGFyYT4K KyAgICAgIEEgcGVyaW9kIGRlZmluaXRpb24gZ2l2ZXMgc2VtYW50aWMgbWVhbmluZyB0byB0d28g ZXhpc3RpbmcgY29sdW1ucyBvZgorICAgICAgdGhlIHRhYmxlLiAgSXQgZGVmaW5lcyBhICJzdGFy dCBjb2x1bW4iIGFuZCBhbiAiZW5kIGNvbHVtbiIgd2hlcmUgdGhlCisgICAgICBzdGFydCB2YWx1 ZSBpcyBzdHJpY3RseSBsZXNzIHRoYW4gdGhlIGVuZCB2YWx1ZS4gIEEKKyAgICAgIDxsaXRlcmFs PkNIRUNLPC9saXRlcmFsPiBjb25zdHJhaW50IGlzIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCB0byBl bmZvcmNlCisgICAgICB0aGlzLiAgWW91IGNhbiBzcGVjaWZ5IHRoZSBuYW1lIG9mIHRoYXQgY29u c3RyYWludCB3aXRoIHRoZQorICAgICAgPGxpdGVyYWw+Y2hlY2tfY29uc3RyYWludF9uYW1lPC9s aXRlcmFsPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX29wdGlvbjwvcmVw bGFjZWFibGU+LgorICAgICA8L3BhcmE+CisKKyAgICAgPHBhcmE+CisgICAgICBCb3RoIGNvbHVt bnMgbXVzdCBoYXZlIGV4YWN0bHkgdGhlIHNhbWUgdHlwZSBhbmQgbXVzdCBoYXZlIGEgcmFuZ2Ug dHlwZQorICAgICAgZGVmaW5lZCBmcm9tIHRoZWlyIGJhc2UgdHlwZS4gIElmIHRoZXJlIGFyZSBz ZXZlcmFsIHJhbmdlIHR5cGVzIGZvciB0aGF0CisgICAgICBiYXNlIHR5cGUsIHlvdSBtdXN0IHNw ZWNpZnkgd2hpY2ggb25lIHlvdSB3YW50IGJ5IHVzaW5nIHRoZQorICAgICAgPGxpdGVyYWw+cmFu Z2V0eXBlPC9saXRlcmFsPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX29w dGlvbjwvcmVwbGFjZWFibGU+LgorICAgICAgQW55IGJhc2UgdHlwZSBpcyBhbGxvd2VkLCBhcyBs b25nIGFzIGl0IGhhcyBhIHJhbmdlIHR5cGUsIGFsdGhvdWdoIGl0IGlzCisgICAgICBleHBlY3Rl ZCB0aGF0IG1vc3QgcGVyaW9kcyB3aWxsIHVzZSB0ZW1wb3JhbCB0eXBlcyBsaWtlIDxsaXRlcmFs PnRpbWVzdGFtcHR6PC9saXRlcmFsPgorICAgICAgb3IgPGxpdGVyYWw+ZGF0ZTwvbGl0ZXJhbD4u CisgICAgIDwvcGFyYT4KKworICAgICA8cGFyYT4KKyAgICAgIEEgaGlkZGVuIDxsaXRlcmFsPkdF TkVSQVRFRDwvbGl0ZXJhbD4gY29sdW1uIGlzIHVzZWQgdG8gaW1wbGVtZW50IHRoZSBwZXJpb2Qs CisgICAgICB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdGhlIHBlcmlvZC4gIElmIHN1Y2ggYSBjb2x1 bW4gYWxyZWFkeSBleGlzdHMsIHlvdQorICAgICAgY2FuIHVzZSB0aGUgPGxpdGVyYWw+Y29sZXhp c3RzPC9saXRlcmFsPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX29wdGlv bjwvcmVwbGFjZWFibGU+CisgICAgICB3aXRoIHZhbHVlIDxsaXRlcmFsPnRydWU8L2xpdGVyYWw+ IHRvIGF2b2lkIGNyZWF0aW5nIGl0LgorICAgICA8L3BhcmE+CisgICAgPC9saXN0aXRlbT4KKyAg IDwvdmFybGlzdGVudHJ5PgorCiAgICA8dmFybGlzdGVudHJ5IGlkPSJzcWwtY3JlYXRldGFibGUt cGFybXMtY29uc3RyYWludCI+CiAgICAgPHRlcm0+PGxpdGVyYWw+Q09OU1RSQUlOVCA8cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29uc3RyYWludF9uYW1lPC9yZXBsYWNlYWJsZT48L2xp dGVyYWw+PC90ZXJtPgogICAgIDxsaXN0aXRlbT4KQEAgLTExODQsOCArMTIzMSw4IEBAIFdJVEgg KCBNT0RVTFVTIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5udW1lcmljX2xpdGVyYWw8 L3JlcGxhY2VhYmxlPiwgUkVNCiAgICA8dmFybGlzdGVudHJ5IGlkPSJzcWwtY3JlYXRldGFibGUt cGFybXMtcmVmZXJlbmNlcyI+CiAgICAgPHRlcm0+PGxpdGVyYWw+UkVGRVJFTkNFUyA8cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmdGFibGU8L3JlcGxhY2VhYmxlPiBbICggPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+ICkgXSBbIE1B VENIIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5tYXRjaHR5cGU8L3JlcGxhY2VhYmxl PiBdIFsgT04gREVMRVRFIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZlcmVudGlh bF9hY3Rpb248L3JlcGxhY2VhYmxlPiBdIFsgT04gVVBEQVRFIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5yZWZlcmVudGlhbF9hY3Rpb248L3JlcGxhY2VhYmxlPiBdPC9saXRlcmFsPiAo Y29sdW1uIGNvbnN0cmFpbnQpPC90ZXJtPgogCi0gICA8dGVybT48bGl0ZXJhbD5GT1JFSUdOIEtF WSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFi bGU+IFssIC4uLiBdIFssIFBFUklPRCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29s dW1uX25hbWU8L3JlcGxhY2VhYmxlPiBdICkKLSAgICBSRUZFUkVOQ0VTIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5yZWZ0YWJsZTwvcmVwbGFjZWFibGU+IFsgKCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gWywgUEVS SU9EIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZjb2x1bW48L3JlcGxhY2VhYmxl PiBdICkgXQorICAgPHRlcm0+PGxpdGVyYWw+Rk9SRUlHTiBLRVkgKCA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCBQRVJJ T0QgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2Vh YmxlPiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFj ZWFibGU+IH0gXSApCisgICAgUkVGRVJFTkNFUyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+cmVmdGFibGU8L3JlcGxhY2VhYmxlPiBbICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+IFssIC4uLiBdIFssIFBFUklPRCB7IDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZjb2x1bW48L3JlcGxhY2VhYmxlPiB8IDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+IH0gXSApIF0K ICAgICBbIE1BVENIIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5tYXRjaHR5cGU8L3Jl cGxhY2VhYmxlPiBdCiAgICAgWyBPTiBERUxFVEUgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnJlZmVyZW50aWFsX2FjdGlvbjwvcmVwbGFjZWFibGU+IF0KICAgICBbIE9OIFVQREFURSA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9yZXBsYWNl YWJsZT4gXTwvbGl0ZXJhbD4KQEAgLTEyMDUsNyArMTI1Miw3IEBAIFdJVEggKCBNT0RVTFVTIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5udW1lcmljX2xpdGVyYWw8L3JlcGxhY2VhYmxl PiwgUkVNCiAgICAgIDwvcGFyYT4KIAogICAgICA8cGFyYT4KLSAgICAgIElmIHRoZSBsYXN0IGNv bHVtbiBpcyBtYXJrZWQgd2l0aCA8bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+LCBpdCBpcworICAg ICAgSWYgdGhlIGxhc3Qga2V5IHBhcnQgaXMgbWFya2VkIHdpdGggPGxpdGVyYWw+UEVSSU9EPC9s aXRlcmFsPiwgaXQgaXMKICAgICAgIHRyZWF0ZWQgaW4gYSBzcGVjaWFsIHdheS4gIFdoaWxlIHRo ZSBub24tPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPgogICAgICAgY29sdW1ucyBhcmUgY29tcGFy ZWQgZm9yIGVxdWFsaXR5IChhbmQgdGhlcmUgbXVzdCBiZSBhdCBsZWFzdCBvbmUgb2YKICAgICAg IHRoZW0pLCB0aGUgPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPiBjb2x1bW4gaXMgbm90LiAgSW5z dGVhZCwgdGhlCkBAIC0xMjEzLDggKzEyNjAsMTAgQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0K ICAgICAgIHJlY29yZHMgKGJhc2VkIG9uIHRoZSBub24tPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFs PiBwYXJ0cyBvZiB0aGUga2V5KQogICAgICAgd2hvc2UgY29tYmluZWQgPGxpdGVyYWw+UEVSSU9E PC9saXRlcmFsPiB2YWx1ZXMgY29tcGxldGVseSBjb3ZlciB0aGUKICAgICAgIHJlZmVyZW5jaW5n IHJlY29yZCdzLiAgSW4gb3RoZXIgd29yZHMsIHRoZSByZWZlcmVuY2UgbXVzdCBoYXZlIGEKLSAg ICAgIHJlZmVyZW50IGZvciBpdHMgZW50aXJlIGR1cmF0aW9uLiAgVGhpcyBjb2x1bW4gbXVzdCBi ZSBhIHJhbmdlIG9yCi0gICAgICBtdWx0aXJhbmdlIHR5cGUuICBJbiBhZGRpdGlvbiwgdGhlIHJl ZmVyZW5jZWQgdGFibGUgbXVzdCBoYXZlIGEgcHJpbWFyeQorICAgICAgcmVmZXJlbnQgZm9yIGl0 cyBlbnRpcmUgZHVyYXRpb24uICBUaGlzIHBhcnQgbXVzdCBiZSBlaXRoZXIgYSAKKyAgICAgIDxs aW5rIGxpbmtlbmQ9InNxbC1jcmVhdGV0YWJsZS1wYXJtcy1wZXJpb2QiPjxsaXRlcmFsPlBFUklP RDwvbGl0ZXJhbD48L2xpbms+CisgICAgICBvciBhIGNvbHVtbiB3aXRoIGEgcmFuZ2Ugb3IgbXVs dGlyYW5nZSB0eXBlLgorICAgICAgSW4gYWRkaXRpb24sIHRoZSByZWZlcmVuY2VkIHRhYmxlIG11 c3QgaGF2ZSBhIHByaW1hcnkKICAgICAgIGtleSBvciB1bmlxdWUgY29uc3RyYWludCBkZWNsYXJl ZCB3aXRoIDxsaXRlcmFsPldJVEhPVVQKICAgICAgIE9WRVJMQVBTPC9saXRlcmFsPi4gRmluYWxs eSwgaWYgdGhlIGZvcmVpZ24ga2V5IGhhcyBhIFBFUklPRAogICAgICAgPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gc3BlY2lmaWNhdGlvbgpk aWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9kZWxldGUuc2dtbCBiL2RvYy9zcmMvc2dtbC9y ZWYvZGVsZXRlLnNnbWwKaW5kZXggZjQyNTMwOWZkNWQuLjZhYmIxYjVkYzA5IDEwMDY0NAotLS0g YS9kb2Mvc3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvZGVs ZXRlLnNnbWwKQEAgLTIzLDcgKzIzLDcgQEAgUG9zdGdyZVNRTCBkb2N1bWVudGF0aW9uCiA8c3lu b3BzaXM+CiBbIFdJVEggWyBSRUNVUlNJVkUgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+d2l0aF9xdWVyeTwvcmVwbGFjZWFibGU+IFssIC4uLl0gXQogREVMRVRFIEZST00gWyBPTkxZ IF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxl PiBbICogXQotICAgIFsgRk9SIFBPUlRJT04gT0YgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+Zm9yX3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNlYWJsZT4gXQorICAgIFsgRk9SIFBPUlRJ T04gT0YgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX29yX3BlcmlvZF9uYW1l PC9yZXBsYWNlYWJsZT4gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmZvcl9wb3J0aW9u X29mX3RhcmdldDwvcmVwbGFjZWFibGU+IF0KICAgICBbIFsgQVMgXSA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+YWxpYXM8L3JlcGxhY2VhYmxlPiBdCiAgICAgWyBVU0lORyA8cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZnJvbV9pdGVtPC9yZXBsYWNlYWJsZT4gWywgLi4uXSBd CiAgICAgWyBXSEVSRSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29uZGl0aW9uPC9y ZXBsYWNlYWJsZT4gfCBXSEVSRSBDVVJSRU5UIE9GIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5jdXJzb3JfbmFtZTwvcmVwbGFjZWFibGU+IF0KQEAgLTU4LDcgKzU4LDggQEAgREVMRVRF IEZST00gWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8 L3JlcGxhY2VhYmxlPiBbICoKICAgPC9wYXJhPgogCiAgIDxwYXJhPgotICAgSWYgdGhlIHRhYmxl IGhhcyBhIHJhbmdlIG9yIG11bHRpcmFuZ2UgY29sdW1uLAorICAgSWYgdGhlIHRhYmxlIGhhcyBh IHJhbmdlIG9yIG11bHRpcmFuZ2UgY29sdW1uLCBvciBhCisgICA8bGluayBsaW5rZW5kPSJkZGwt cGVyaW9kcyI+PGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPjwvbGluaz4sCiAgICB5b3UgbWF5IHN1 cHBseSBhIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBjbGF1c2UsIGFuZCB5b3Vy IGRlbGV0ZSB3aWxsCiAgICBvbmx5IGFmZmVjdCByb3dzIHRoYXQgb3ZlcmxhcCB0aGUgZ2l2ZW4g aW50ZXJ2YWwuIEZ1cnRoZXJtb3JlLCBpZiBhIHJvdydzIGhpc3RvcnkKICAgIGV4dGVuZHMgb3V0 c2lkZSB0aGUgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGJvdW5kcywgdGhlbiB5 b3VyIGRlbGV0ZQpAQCAtMTU3LDEwICsxNTgsMTAgQEAgREVMRVRFIEZST00gWyBPTkxZIF0gPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICoK ICAgIDwvdmFybGlzdGVudHJ5PgogCiAgICA8dmFybGlzdGVudHJ5PgotICAgIDx0ZXJtPjxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+ CisgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX29yX3Blcmlv ZF9uYW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgogICAgICA8cGFyYT4K LSAgICAgIFRoZSByYW5nZSBvciBtdWx0aXJhbmdlIGNvbHVtbiB0byB1c2Ugd2hlbiBwZXJmb3Jt aW5nIGEgdGVtcG9yYWwgZGVsZXRlLgorICAgICAgVGhlIHJhbmdlIG9yIG11bHRpcmFuZ2UgY29s dW1uIG9yIHBlcmlvZCB0byB1c2Ugd2hlbiBwZXJmb3JtaW5nIGEgdGVtcG9yYWwgZGVsZXRlLgog ICAgICA8L3BhcmE+CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgpAQCAtMTY5 LDE0ICsxNzAsMTQgQEAgREVMRVRFIEZST00gWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICoKICAgICA8dGVybT48cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Zm9yX3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNlYWJs ZT48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgogICAgICA8cGFyYT4KLSAgICAgIFRoZSBpbnRlcnZh bCB0byBkZWxldGUuIElmIHlvdSBhcmUgdGFyZ2V0aW5nIGEgcmFuZ2UgY29sdW1uLAorICAgICAg VGhlIGludGVydmFsIHRvIGRlbGV0ZS4gSWYgeW91IGFyZSB0YXJnZXRpbmcgYSByYW5nZSBjb2x1 bW4gb3IgPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPiwKICAgICAgIHlvdSBtYXkgZ2l2ZSB0aGlz IGluIHRoZSBmb3JtIDxsaXRlcmFsPkZST008L2xpdGVyYWw+CiAgICAgICA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+c3RhcnRfdGltZTwvcmVwbGFjZWFibGU+IDxsaXRlcmFsPlRPPC9s aXRlcmFsPgogICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmVuZF90aW1lPC9y ZXBsYWNlYWJsZT4uCiAgICAgICBPdGhlcndpc2UgeW91IG11c3QgdXNlCiAgICAgICA8bGl0ZXJh bD4oPC9saXRlcmFsPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leHByZXNzaW9uPC9y ZXBsYWNlYWJsZT48bGl0ZXJhbD4pPC9saXRlcmFsPgogICAgICAgd2hlcmUgdGhlIGV4cHJlc3Np b24geWllbGRzIGEgdmFsdWUgb2YgdGhlIHNhbWUgdHlwZSBhcwotICAgICAgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPi4KKyAgICAgIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9vcl9wZXJpb2RfbmFtZTwvcmVwbGFjZWFi bGU+LgogICAgICA8L3BhcmE+CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgpA QCAtMTg2LDggKzE4Nyw4IEBAIERFTEVURSBGUk9NIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqCiAgICAgPGxpc3RpdGVt PgogICAgICA8cGFyYT4KICAgICAgIFRoZSBlYXJsaWVzdCB0aW1lIChpbmNsdXNpdmUpIHRvIGNo YW5nZSBpbiBhIHRlbXBvcmFsIGRlbGV0ZS4KLSAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1h dGNoaW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIGZyb20KLSAgICAgIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4uIEEKKyAgICAgIFRo aXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIG9y IHBlcmlvZCBmcm9tCisgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vf b3JfcGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPi4gQQogICAgICAgPGxpdGVyYWw+TlVMTDwvbGl0 ZXJhbD4gaGVyZSBpbmRpY2F0ZXMgYSBkZWxldGUgd2hvc2UgYmVnaW5uaW5nIGlzCiAgICAgICB1 bmJvdW5kZWQgKGFzIHdpdGggcmFuZ2UgdHlwZXMpLgogICAgICA8L3BhcmE+CkBAIC0xOTksOCAr MjAwLDggQEAgREVMRVRFIEZST00gWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICoKICAgICA8bGlzdGl0ZW0+CiAgICAgIDxw YXJhPgogICAgICAgVGhlIGxhdGVzdCB0aW1lIChleGNsdXNpdmUpIHRvIGNoYW5nZSBpbiBhIHRl bXBvcmFsIGRlbGV0ZS4KLSAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBi YXNlIHR5cGUgb2YgdGhlIHJhbmdlIGZyb20KLSAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4uIEEKKyAgICAgIFRoaXMgbXVzdCBiZSBh IHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIG9yIHBlcmlvZCBmcm9t CisgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vfb3JfcGVyaW9kX25h bWU8L3JlcGxhY2VhYmxlPi4gQQogICAgICAgPGxpdGVyYWw+TlVMTDwvbGl0ZXJhbD4gaGVyZSBp bmRpY2F0ZXMgYSBkZWxldGUgd2hvc2UgZW5kIGlzIHVuYm91bmRlZAogICAgICAgKGFzIHdpdGgg cmFuZ2UgdHlwZXMpLgogICAgICA8L3BhcmE+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVm L3VwZGF0ZS5zZ21sIGIvZG9jL3NyYy9zZ21sL3JlZi91cGRhdGUuc2dtbAppbmRleCBhZDMyMjRj MmRmMi4uZmMyMmRlNWI0OGIgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvdXBkYXRlLnNn bWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi91cGRhdGUuc2dtbApAQCAtMjMsNyArMjMsNyBAQCBQ b3N0Z3JlU1FMIGRvY3VtZW50YXRpb24KIDxzeW5vcHNpcz4KIFsgV0lUSCBbIFJFQ1VSU0lWRSBd IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj53aXRoX3F1ZXJ5PC9yZXBsYWNlYWJsZT4g WywgLi4uXSBdCiBVUERBVEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICogXQotICAgIFsgRk9SIFBPUlRJT04gT0YgPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPiA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Zm9yX3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNl YWJsZT4gXQorICAgIFsgRk9SIFBPUlRJT04gT0YgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnJhbmdlX29yX3BlcmlvZF9uYW1lPC9yZXBsYWNlYWJsZT4gPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmZvcl9wb3J0aW9uX29mX3RhcmdldDwvcmVwbGFjZWFibGU+IF0KICAgICBb IFsgQVMgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+YWxpYXM8L3JlcGxhY2VhYmxl PiBdCiAgICAgU0VUIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1l PC9yZXBsYWNlYWJsZT4gPSB7IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leHByZXNz aW9uPC9yZXBsYWNlYWJsZT4gfCBERUZBVUxUIH0gfAogICAgICAgICAgICggPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uXSApID0g WyBST1cgXSAoIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248L3Jl cGxhY2VhYmxlPiB8IERFRkFVTFQgfSBbLCAuLi5dICkgfApAQCAtNTUsNyArNTUsOCBAQCBVUERB VEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3Jl cGxhY2VhYmxlPiBbICogXQogICA8L3BhcmE+CiAKICAgPHBhcmE+Ci0gICBJZiB0aGUgdGFibGUg aGFzIGEgcmFuZ2Ugb3IgbXVsdGlyYW5nZSBjb2x1bW4sCisgICBJZiB0aGUgdGFibGUgaGFzIGEg cmFuZ2Ugb3IgbXVsdGlyYW5nZSBjb2x1bW4sIG9yIGEKKyAgIDxsaW5rIGxpbmtlbmQ9ImRkbC1w ZXJpb2RzIj48bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+PC9saW5rPiwKICAgIHlvdSBtYXkgc3Vw cGx5IGEgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGNsYXVzZSwgYW5kIHlvdXIg dXBkYXRlIHdpbGwKICAgIG9ubHkgYWZmZWN0IHJvd3MgdGhhdCBvdmVybGFwIHRoZSBnaXZlbiBp bnRlcnZhbC4gRnVydGhlcm1vcmUsIGlmIGEgcm93J3MgaGlzdG9yeQogICAgZXh0ZW5kcyBvdXRz aWRlIHRoZSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gYm91bmRzLCB0aGVuIHlv dXIgdXBkYXRlCkBAIC0xNTgsMTAgKzE1OSwxMCBAQCBVUERBVEUgWyBPTkxZIF0gPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICogXQogICAg PC92YXJsaXN0ZW50cnk+CiAKICAgIDx2YXJsaXN0ZW50cnk+Ci0gICAgPHRlcm0+PHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPjwvdGVybT4KKyAg ICA8dGVybT48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vfb3JfcGVyaW9kX25h bWU8L3JlcGxhY2VhYmxlPjwvdGVybT4KICAgICA8bGlzdGl0ZW0+CiAgICAgIDxwYXJhPgotICAg ICAgVGhlIHJhbmdlIG9yIG11bHRpcmFuZ2UgY29sdW1uIHRvIHVzZSB3aGVuIHBlcmZvcm1pbmcg YSB0ZW1wb3JhbCB1cGRhdGUuCisgICAgICBUaGUgcmFuZ2Ugb3IgbXVsdGlyYW5nZSBjb2x1bW4g b3IgcGVyaW9kIHRvIHVzZSB3aGVuIHBlcmZvcm1pbmcgYSB0ZW1wb3JhbCB1cGRhdGUuCiAgICAg IDwvcGFyYT4KICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CkBAIC0xNzAsMTQg KzE3MSwxNCBAQCBVUERBVEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICogXQogICAgIDx0ZXJtPjxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxhY2VhYmxlPjwvdGVy bT4KICAgICA8bGlzdGl0ZW0+CiAgICAgIDxwYXJhPgotICAgICAgVGhlIGludGVydmFsIHRvIHVw ZGF0ZS4gSWYgeW91IGFyZSB0YXJnZXRpbmcgYSByYW5nZSBjb2x1bW4sCisgICAgICBUaGUgaW50 ZXJ2YWwgdG8gdXBkYXRlLiBJZiB5b3UgYXJlIHRhcmdldGluZyBhIHJhbmdlIGNvbHVtbiBvciA8 bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+LAogICAgICAgeW91IG1heSBnaXZlIHRoaXMgaW4gdGhl IGZvcm0gPGxpdGVyYWw+RlJPTTwvbGl0ZXJhbD4KICAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5zdGFydF90aW1lPC9yZXBsYWNlYWJsZT4gPGxpdGVyYWw+VE88L2xpdGVyYWw+ CiAgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5kX3RpbWU8L3JlcGxhY2Vh YmxlPi4KICAgICAgIE90aGVyd2lzZSB5b3UgbXVzdCB1c2UKICAgICAgIDxsaXRlcmFsPig8L2xp dGVyYWw+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248L3JlcGxhY2Vh YmxlPjxsaXRlcmFsPik8L2xpdGVyYWw+CiAgICAgICB3aGVyZSB0aGUgZXhwcmVzc2lvbiB5aWVs ZHMgYSB2YWx1ZSBvZiB0aGUgc2FtZSB0eXBlIGFzCi0gICAgICA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+LgorICAgICAgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX29yX3BlcmlvZF9uYW1lPC9yZXBsYWNlYWJsZT4uCiAg ICAgIDwvcGFyYT4KICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CkBAIC0xODcs OCArMTg4LDggQEAgVVBEQVRFIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqIF0KICAgICA8bGlzdGl0ZW0+CiAgICAgIDxw YXJhPgogICAgICAgVGhlIGVhcmxpZXN0IHRpbWUgKGluY2x1c2l2ZSkgdG8gY2hhbmdlIGluIGEg dGVtcG9yYWwgdXBkYXRlLgotICAgICAgVGhpcyBtdXN0IGJlIGEgdmFsdWUgbWF0Y2hpbmcgdGhl IGJhc2UgdHlwZSBvZiB0aGUgcmFuZ2UgZnJvbQotICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPi4gQQorICAgICAgVGhpcyBtdXN0IGJl IGEgdmFsdWUgbWF0Y2hpbmcgdGhlIGJhc2UgdHlwZSBvZiB0aGUgcmFuZ2Ugb3IgcGVyaW9kIGZy b20KKyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9vcl9wZXJpb2Rf bmFtZTwvcmVwbGFjZWFibGU+LiBBCiAgICAgICA8bGl0ZXJhbD5OVUxMPC9saXRlcmFsPiBoZXJl IGluZGljYXRlcyBhbiB1cGRhdGUgd2hvc2UgYmVnaW5uaW5nIGlzCiAgICAgICB1bmJvdW5kZWQg KGFzIHdpdGggcmFuZ2UgdHlwZXMpLgogICAgICA8L3BhcmE+CkBAIC0yMDAsOCArMjAxLDggQEAg VVBEQVRFIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9uYW1l PC9yZXBsYWNlYWJsZT4gWyAqIF0KICAgICA8bGlzdGl0ZW0+CiAgICAgIDxwYXJhPgogICAgICAg VGhlIGxhdGVzdCB0aW1lIChleGNsdXNpdmUpIHRvIGNoYW5nZSBpbiBhIHRlbXBvcmFsIHVwZGF0 ZS4KLSAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2Yg dGhlIHJhbmdlIGZyb20KLSAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5n ZV9uYW1lPC9yZXBsYWNlYWJsZT4uIEEKKyAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNo aW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIG9yIHBlcmlvZCBmcm9tCisgICAgICA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vfb3JfcGVyaW9kX25hbWU8L3JlcGxhY2Vh YmxlPi4gQQogICAgICAgPGxpdGVyYWw+TlVMTDwvbGl0ZXJhbD4gaGVyZSBpbmRpY2F0ZXMgYW4g dXBkYXRlIHdob3NlIGVuZCBpcyB1bmJvdW5kZWQKICAgICAgIChhcyB3aXRoIHJhbmdlIHR5cGVz KS4KICAgICAgPC9wYXJhPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbCBi L2RvYy9zcmMvc2dtbC90cmlnZ2VyLnNnbWwKaW5kZXggMDA0NGE5N2EzZmQuLmRhOWFlMGZmZWZk IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sCisrKyBiL2RvYy9zcmMvc2dt bC90cmlnZ2VyLnNnbWwKQEAgLTg2MCwxNiArODYwLDIxIEBAIHR5cGVkZWYgc3RydWN0IEZvclBv cnRpb25PZlN0YXRlCiAKICAgICBjaGFyICAgICAgICpmcF9yYW5nZU5hbWU7ICAgLyogdGhlIGNv bHVtbiBuYW1lZCBpbiBGT1IgUE9SVElPTiBPRiAqLwogICAgIE9pZCAgICAgICAgIGZwX3Jhbmdl VHlwZTsgICAvKiB0aGUgdHlwZSBvZiB0aGUgRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbiAqLwot ICAgIGludCAgICAgICAgIGZwX3JhbmdlQXR0bm87ICAvKiB0aGUgYXR0bm8gb2YgdGhlIHJhbmdl IGNvbHVtbiAqLworICAgIGludCAgICAgICAgIGZwX3JhbmdlQXR0bm87ICAvKiB0aGUgYXR0bm8g b2YgdGhlIHJhbmdlIGNvbHVtbiAob3IgMCBmb3IgYSBQRVJJT0QpICovCisgICAgaW50ICAgICAg ICAgZnBfcGVyaW9kU3RhcnRBdHRubzsgICAgLyogdGhlIGF0dG5vIG9mIHRoZSBQRVJJT0Qgc3Rh cnQgY29sdW1uIChvciAwIGZvciBhIHJhbmdlKSAqLworICAgIGludCAgICAgICAgIGZwX3Blcmlv ZEVuZEF0dG5vOyAgICAgIC8qIHRoZSBhdHRubyBvZiB0aGUgUEVSSU9EIGVuZCBjb2x1bW4gKG9y IDAgZm9yIGEgcmFuZ2UpICovCiAgICAgRGF0dW0gICAgICAgZnBfdGFyZ2V0UmFuZ2U7IC8qIHRo ZSByYW5nZS9tdWx0aXJhbmdlIGZyb20gRk9SIFBPUlRJT04gT0YgKi8KICAgICBUeXBlQ2FjaGVF bnRyeSAqZnBfbGVmdG92ZXJzdHlwY2FjaGU7ICAgLyogdHlwZSBjYWNoZSBlbnRyeSBvZiB0aGUg cmFuZ2UgKi8KIH0gRm9yUG9ydGlvbk9mU3RhdGU7CiA8L3Byb2dyYW1saXN0aW5nPgogCi0gICAg ICAgd2hlcmUgPHN0cnVjdGZpZWxkPmZwX3JhbmdlTmFtZTwvc3RydWN0ZmllbGQ+IGlzIHRoZSBy YW5nZQorICAgICAgIHdoZXJlIDxzdHJ1Y3RmaWVsZD5mcF9yYW5nZU5hbWU8L3N0cnVjdGZpZWxk PiBpcyB0aGUgcGVyaW9kIG9yIHJhbmdlCiAgICAgICAgY29sdW1uIG5hbWVkIGluIHRoZSA8bGl0 ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gY2xhdXNlLAogICAgICAgIDxzdHJ1Y3RmaWVs ZD5mcF9yYW5nZVR5cGU8L3N0cnVjdGZpZWxkPiBpcyBpdHMgcmFuZ2UgdHlwZSwKICAgICAgICA8 c3RydWN0ZmllbGQ+ZnBfcmFuZ2VBdHRubzwvc3RydWN0ZmllbGQ+IGlzIGl0cyBhdHRyaWJ1dGUg bnVtYmVyLAorICAgICAgIDxzdHJ1Y3RmaWVsZD5mcF9wZXJpb2RTdGFydEF0dG5vPC9zdHJ1Y3Rm aWVsZD4gYW5kCisgICAgICAgPHN0cnVjdGZpZWxkPmZwX3BlcmlvZEVuZEF0dG5vPC9zdHJ1Y3Rm aWVsZD4gYXJlIHRoZSBhdHRub3Mgb2YgdGhlIHBlcmlvZCdzCisgICAgICAgc3RhcnQgYW5kIGVu ZCBjb2x1bW5zIChvciA8c3ltYm9sPjA8L3N5bWJvbD4gaWYgYSByYW5nZSBjb2x1bW4gd2FzIHVz ZWQpLAogICAgICAgIGFuZCA8c3RydWN0ZmllbGQ+ZnBfdGFyZ2V0UmFuZ2U8L3N0cnVjdGZpZWxk PiBpcyBhIHJhbmdldHlwZSB2YWx1ZSBjcmVhdGVkCiAgICAgICAgYnkgZXZhbHVhdGluZyB0aGUg PGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGJvdW5kcy4KICAgICAgICA8L3BhcmE+ CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL01ha2VmaWxlIGIvc3JjL2JhY2tlbmQv Y2F0YWxvZy9NYWtlZmlsZQppbmRleCBjMDkwMDk0ZWQwOC4uNTNlYjY3MDM0ZjMgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvTWFrZWZpbGUKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxv Zy9NYWtlZmlsZQpAQCAtMzksNiArMzksNyBAQCBPQkpTID0gXAogCXBnX25hbWVzcGFjZS5vIFwK IAlwZ19vcGVyYXRvci5vIFwKIAlwZ19wYXJhbWV0ZXJfYWNsLm8gXAorCXBnX3BlcmlvZC5vIFwK IAlwZ19wcm9jLm8gXAogCXBnX3B1YmxpY2F0aW9uLm8gXAogCXBnX3JhbmdlLm8gXApkaWZmIC0t Z2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9hY2xjaGsuYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cv YWNsY2hrLmMKaW5kZXggY2QxMzliZDY1YTYuLjhkMDA2YTgzMGQ2IDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC9jYXRhbG9nL2FjbGNoay5jCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvYWNsY2hr LmMKQEAgLTI3NzQsNiArMjc3NCw3IEBAIGFjbGNoZWNrX2Vycm9yKEFjbFJlc3VsdCBhY2xlcnIs IE9iamVjdFR5cGUgb2JqdHlwZSwKIAkJCQkJY2FzZSBPQkpFQ1RfREVGQVVMVDoKIAkJCQkJY2Fz ZSBPQkpFQ1RfREVGQUNMOgogCQkJCQljYXNlIE9CSkVDVF9ET01DT05TVFJBSU5UOgorCQkJCQlj YXNlIE9CSkVDVF9QRVJJT0Q6CiAJCQkJCWNhc2UgT0JKRUNUX1BVQkxJQ0FUSU9OX05BTUVTUEFD RToKIAkJCQkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT05fUkVMOgogCQkJCQljYXNlIE9CSkVDVF9S T0xFOgpAQCAtMjkxNSw2ICsyOTE2LDcgQEAgYWNsY2hlY2tfZXJyb3IoQWNsUmVzdWx0IGFjbGVy ciwgT2JqZWN0VHlwZSBvYmp0eXBlLAogCQkJCQljYXNlIE9CSkVDVF9ERUZBQ0w6CiAJCQkJCWNh c2UgT0JKRUNUX0RPTUNPTlNUUkFJTlQ6CiAJCQkJCWNhc2UgT0JKRUNUX1BBUkFNRVRFUl9BQ0w6 CisJCQkJCWNhc2UgT0JKRUNUX1BFUklPRDoKIAkJCQkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT05f TkFNRVNQQUNFOgogCQkJCQljYXNlIE9CSkVDVF9QVUJMSUNBVElPTl9SRUw6CiAJCQkJCWNhc2Ug T0JKRUNUX1JPTEU6CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2RlcGVuZGVuY3ku YyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvZGVwZW5kZW5jeS5jCmluZGV4IDdkZGVkNjM0ZWI4Li4w MTExZGY2MDgxZCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9kZXBlbmRlbmN5LmMK KysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9kZXBlbmRlbmN5LmMKQEAgLTQ4LDYgKzQ4LDcgQEAK ICNpbmNsdWRlICJjYXRhbG9nL3BnX29wZXJhdG9yLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19v cGZhbWlseS5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfcGFyYW1ldGVyX2FjbC5oIgorI2luY2x1 ZGUgImNhdGFsb2cvcGdfcGVyaW9kLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19wb2xpY3kuaCIK ICNpbmNsdWRlICJjYXRhbG9nL3BnX3Byb2MuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3B1Ymxp Y2F0aW9uLmgiCkBAIC02MjIsNiArNjIzLDE0IEBAIGZpbmREZXBlbmRlbnRPYmplY3RzKGNvbnN0 IE9iamVjdEFkZHJlc3MgKm9iamVjdCwKIAkJCQkJCXJldHVybjsKIAkJCQkJfQogCisJCQkJCS8q CisJCQkJCSAqIElmIGEgdGFibGUgYXR0cmlidXRlIGlzIGFuIGludGVybmFsIHBhcnQgb2Ygc29t ZXRoaW5nCisJCQkJCSAqIGVsc2UgKGUuZy4gdGhlIEdFTkVSQVRFRCBjb2x1bW4gdXNlZCBieSBh IFBFUklPRCksIGFuZAorCQkJCQkgKiB3ZSBhcmUgZGVsZXRpbmcgdGhlIHdob2xlIHRhYmxlLCB0 aGVuIGl0J3Mgb2theS4KKwkJCQkJICovCisJCQkJCWlmIChmb3VuZERlcC0+b2Jqc3ViaWQgJiYg IW9iamVjdC0+b2JqZWN0U3ViSWQpCisJCQkJCQlicmVhazsKKwogCQkJCQkvKgogCQkJCQkgKiBX ZSBwb3N0cG9uZSBhY3R1YWxseSBpc3N1aW5nIHRoZSBlcnJvciBtZXNzYWdlIHVudGlsCiAJCQkJ CSAqIGFmdGVyIHRoaXMgbG9vcCwgc28gdGhhdCB3ZSBjYW4gbWFrZSB0aGUgYmVoYXZpb3IKQEAg LTE0MDAsNiArMTQwOSwxMCBAQCBkb0RlbGV0aW9uKGNvbnN0IE9iamVjdEFkZHJlc3MgKm9iamVj dCwgaW50IGZsYWdzKQogCQkJUmVtb3ZlQXR0ckRlZmF1bHRCeUlkKG9iamVjdC0+b2JqZWN0SWQp OwogCQkJYnJlYWs7CiAKKwkJY2FzZSBQZXJpb2RSZWxhdGlvbklkOgorCQkJUmVtb3ZlUGVyaW9k QnlJZChvYmplY3QtPm9iamVjdElkKTsKKwkJCWJyZWFrOworCiAJCWNhc2UgTGFyZ2VPYmplY3RS ZWxhdGlvbklkOgogCQkJTGFyZ2VPYmplY3REcm9wKG9iamVjdC0+b2JqZWN0SWQpOwogCQkJYnJl YWs7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2hlYXAuYyBiL3NyYy9iYWNrZW5k L2NhdGFsb2cvaGVhcC5jCmluZGV4IGZkNjUzNzU2N2VhLi45OWNkYTgwOWQwMiAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9oZWFwLmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9o ZWFwLmMKQEAgLTQ5LDYgKzQ5LDcgQEAKICNpbmNsdWRlICJjYXRhbG9nL3BnX25hbWVzcGFjZS5o IgogI2luY2x1ZGUgImNhdGFsb2cvcGdfb3BjbGFzcy5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdf cGFydGl0aW9uZWRfdGFibGUuaCIKKyNpbmNsdWRlICJjYXRhbG9nL3BnX3BlcmlvZC5oIgogI2lu Y2x1ZGUgImNhdGFsb2cvcGdfc3RhdGlzdGljLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19zdWJz Y3JpcHRpb25fcmVsLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ190YWJsZXNwYWNlLmgiCkBAIC0y MTM1LDYgKzIxMzYsODAgQEAgU2V0QXR0ck1pc3NpbmcoT2lkIHJlbGlkLCBjaGFyICphdHRuYW1l LCBjaGFyICp2YWx1ZSkKIAl0YWJsZV9jbG9zZSh0YWJsZXJlbCwgQWNjZXNzRXhjbHVzaXZlTG9j ayk7CiB9CiAKKy8qCisgKiBTdG9yZSBhIHBlcmlvZCBvZiByZWxhdGlvbiByZWwuCisgKgorICog UmV0dXJucyB0aGUgT0lEIG9mIHRoZSBuZXcgcGdfcGVyaW9kIHR1cGxlLgorICovCitPaWQKK1N0 b3JlUGVyaW9kKFJlbGF0aW9uIHJlbCwgY29uc3QgY2hhciAqcGVyaW9kbmFtZSwgQXR0ck51bWJl ciBzdGFydG51bSwKKwkJCUF0dHJOdW1iZXIgZW5kbnVtLCBBdHRyTnVtYmVyIHJhbmdlbnVtLCBP aWQgY29ub2lkKQoreworCURhdHVtCQl2YWx1ZXNbTmF0dHNfcGdfcGVyaW9kXTsKKwlib29sCQlu dWxsc1tOYXR0c19wZ19wZXJpb2RdOworCVJlbGF0aW9uCXBnX3BlcmlvZDsKKwlIZWFwVHVwbGUJ dHVwbGU7CisJT2lkCQkJb2lkOworCU5hbWVEYXRhCXBlcm5hbWU7CisJT2JqZWN0QWRkcmVzcyBt eXNlbGYsCisJCQkJcmVmZXJlbmNlZDsKKworCUFzc2VydChyYW5nZW51bSAhPSBJbnZhbGlkQXR0 ck51bWJlcik7CisKKwluYW1lc3RyY3B5KCZwZXJuYW1lLCBwZXJpb2RuYW1lKTsKKworCU1lbVNl dCh2YWx1ZXMsIDAsIHNpemVvZih2YWx1ZXMpKTsKKwlNZW1TZXQobnVsbHMsIGZhbHNlLCBzaXpl b2YobnVsbHMpKTsKKworCXBnX3BlcmlvZCA9IHRhYmxlX29wZW4oUGVyaW9kUmVsYXRpb25JZCwg Um93RXhjbHVzaXZlTG9jayk7CisKKwlvaWQgPSBHZXROZXdPaWRXaXRoSW5kZXgocGdfcGVyaW9k LCBBdHRyRGVmYXVsdE9pZEluZGV4SWQsIEFudW1fcGdfcGVyaW9kX29pZCk7CisJdmFsdWVzW0Fu dW1fcGdfcGVyaW9kX29pZCAtIDFdID0gT2JqZWN0SWRHZXREYXR1bShvaWQpOworCXZhbHVlc1tB bnVtX3BnX3BlcmlvZF9wZXJuYW1lIC0gMV0gPSBOYW1lR2V0RGF0dW0oJnBlcm5hbWUpOworCXZh bHVlc1tBbnVtX3BnX3BlcmlvZF9wZXJyZWxpZCAtIDFdID0gUmVsYXRpb25HZXRSZWxpZChyZWwp OworCXZhbHVlc1tBbnVtX3BnX3BlcmlvZF9wZXJzdGFydCAtIDFdID0gc3RhcnRudW07CisJdmFs dWVzW0FudW1fcGdfcGVyaW9kX3BlcmVuZCAtIDFdID0gZW5kbnVtOworCXZhbHVlc1tBbnVtX3Bn X3BlcmlvZF9wZXJyYW5nZSAtIDFdID0gcmFuZ2VudW07CisJdmFsdWVzW0FudW1fcGdfcGVyaW9k X3BlcmNvbnN0cmFpbnQgLSAxXSA9IGNvbm9pZDsKKworCXR1cGxlID0gaGVhcF9mb3JtX3R1cGxl KFJlbGF0aW9uR2V0RGVzY3IocGdfcGVyaW9kKSwgdmFsdWVzLCBudWxscyk7CisJQ2F0YWxvZ1R1 cGxlSW5zZXJ0KHBnX3BlcmlvZCwgdHVwbGUpOworCisJT2JqZWN0QWRkcmVzc1NldChteXNlbGYs IFBlcmlvZFJlbGF0aW9uSWQsIG9pZCk7CisKKwkvKiBEcm9wIHRoZSBwZXJpb2Qgd2hlbiB0aGUg dGFibGUgaXMgZHJvcHBlZC4gKi8KKwlPYmplY3RBZGRyZXNzU2V0KHJlZmVyZW5jZWQsIFJlbGF0 aW9uUmVsYXRpb25JZCwgUmVsYXRpb25HZXRSZWxpZChyZWwpKTsKKwlyZWNvcmREZXBlbmRlbmN5 T24oJm15c2VsZiwgJnJlZmVyZW5jZWQsIERFUEVOREVOQ1lfQVVUTyk7CisKKwkvKiBGb3JiaWQg ZHJvcHBpbmcgdGhlIGNvbHVtbnMgb2YgdGhlIHBlcmlvZC4gKi8KKwlPYmplY3RBZGRyZXNzU3Vi U2V0KHJlZmVyZW5jZWQsIFJlbGF0aW9uUmVsYXRpb25JZCwgUmVsYXRpb25HZXRSZWxpZChyZWwp LCBzdGFydG51bSk7CisJcmVjb3JkRGVwZW5kZW5jeU9uKCZteXNlbGYsICZyZWZlcmVuY2VkLCBE RVBFTkRFTkNZX05PUk1BTCk7CisJT2JqZWN0QWRkcmVzc1N1YlNldChyZWZlcmVuY2VkLCBSZWxh dGlvblJlbGF0aW9uSWQsIFJlbGF0aW9uR2V0UmVsaWQocmVsKSwgZW5kbnVtKTsKKwlyZWNvcmRE ZXBlbmRlbmN5T24oJm15c2VsZiwgJnJlZmVyZW5jZWQsIERFUEVOREVOQ1lfTk9STUFMKTsKKwor CS8qCisJICogVGhlIHJhbmdlIGNvbHVtbiBpcyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWwsIGJ1 dCB3ZSBjYW4ndCB1c2UKKwkgKiBERVBFTkRFTkNZX0lOVEVSTkFMIGJlY2F1c2UgZHJvcHBpbmcg dGhlIHRhYmxlIHdpbGwgY2hlY2sgZm9yCisJICogZGVwZW5kZW5jaWVzIG9uIGFsbCBzdWJvYmpl Y3RzIHRvbyAoaW4gZmluZERlcGVuZGVudE9iamVjdHMpLiBCdXQgaWYgd2UKKwkgKiBtYWtlIGFu IEFVVE8gZGVwZW5kZW5jeSBvbmUgd2F5IHdlIHdpbGwgYXV0by1kcm9wIHRoZSBjb2x1bW4gd2hl biB3ZQorCSAqIGRyb3AgdGhlIFBFUklPRCwgYW5kIGEgTk9STUFMIGRlcGVuZGVuY3kgdGhlIG90 aGVyIHdheSB3ZSB3aWxsIGZvcmJpZAorCSAqIGRyb3BwaW5nIHRoZSBjb2x1bW4gZGlyZWN0bHku CisJICovCisJT2JqZWN0QWRkcmVzc1N1YlNldChyZWZlcmVuY2VkLCBSZWxhdGlvblJlbGF0aW9u SWQsIFJlbGF0aW9uR2V0UmVsaWQocmVsKSwgcmFuZ2VudW0pOworCXJlY29yZERlcGVuZGVuY3lP bigmcmVmZXJlbmNlZCwgJm15c2VsZiwgREVQRU5ERU5DWV9JTlRFUk5BTCk7CisKKwkvKgorCSAq IFRoZSBjb25zdHJhaW50IGlzIGFuIGltcGxlbWVudGF0aW9uIGRldGFpbCwgc28gd2UgbWFyayBp dCBhcyBzdWNoLgorCSAqIChOb3RlIHRoYXQgbXlzZWxmIGFuZCByZWZlcmVuY2VkIGFyZSByZXZl cnNlZCBmb3IgdGhpcyBvbmUuKQorCSAqLworCU9iamVjdEFkZHJlc3NTZXQocmVmZXJlbmNlZCwg Q29uc3RyYWludFJlbGF0aW9uSWQsIGNvbm9pZCk7CisJcmVjb3JkRGVwZW5kZW5jeU9uKCZyZWZl cmVuY2VkLCAmbXlzZWxmLCBERVBFTkRFTkNZX0lOVEVSTkFMKTsKKworCXRhYmxlX2Nsb3NlKHBn X3BlcmlvZCwgUm93RXhjbHVzaXZlTG9jayk7CisKKwlyZXR1cm4gb2lkOworfQorCiAvKgogICog U3RvcmUgYSBjaGVjay1jb25zdHJhaW50IGV4cHJlc3Npb24gZm9yIHRoZSBnaXZlbiByZWxhdGlv bi4KICAqCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2luZm9ybWF0aW9uX3NjaGVt YS5zcWwgYi9zcmMvYmFja2VuZC9jYXRhbG9nL2luZm9ybWF0aW9uX3NjaGVtYS5zcWwKaW5kZXgg YTdiZmZjYTkzZDEuLjI4MmVhZDZlZDRjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9n L2luZm9ybWF0aW9uX3NjaGVtYS5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9pbmZvcm1h dGlvbl9zY2hlbWEuc3FsCkBAIC0xMjA3LDcgKzEyMDcsMjggQEAgR1JBTlQgU0VMRUNUIE9OIHBh cmFtZXRlcnMgVE8gUFVCTElDOwogICogUEVSSU9EUyB2aWV3CiAgKi8KIAotLS0gZmVhdHVyZSBu b3Qgc3VwcG9ydGVkCitDUkVBVEUgVklFVyBwZXJpb2RzIEFTCisgICAgU0VMRUNUIGN1cnJlbnRf ZGF0YWJhc2UoKTo6aW5mb3JtYXRpb25fc2NoZW1hLnNxbF9pZGVudGlmaWVyIEFTIHRhYmxlX2Nh dGFsb2csCisgICAgICAgICAgIG5jLm5zcG5hbWU6OmluZm9ybWF0aW9uX3NjaGVtYS5zcWxfaWRl bnRpZmllciBBUyB0YWJsZV9zY2hlbWEsCisgICAgICAgICAgIGMucmVsbmFtZTo6aW5mb3JtYXRp b25fc2NoZW1hLnNxbF9pZGVudGlmaWVyIEFTIHRhYmxlX25hbWUsCisgICAgICAgICAgIHAucGVy bmFtZTo6aW5mb3JtYXRpb25fc2NoZW1hLnNxbF9pZGVudGlmaWVyIEFTIHBlcmlvZF9uYW1lLAor ICAgICAgICAgICBDQVNFIFdIRU4gcGdfaGFzX3JvbGUoYy5yZWxvd25lciwgJ1VTQUdFJykKKyAg ICAgICAgICAgICAgICAgIE9SIGhhc19jb2x1bW5fcHJpdmlsZWdlKHNhLmF0dHJlbGlkLCBzYS5h dHRudW0sICdTRUxFQ1QsIElOU0VSVCwgVVBEQVRFLCBSRUZFUkVOQ0VTJykKKyAgICAgICAgICAg ICAgICBUSEVOIHNhLmF0dG5hbWU6OmluZm9ybWF0aW9uX3NjaGVtYS5zcWxfaWRlbnRpZmllcgor ICAgICAgICAgICBFTkQgQVMgc3RhcnRfY29sdW1uX25hbWUsCisgICAgICAgICAgIENBU0UgV0hF TiBwZ19oYXNfcm9sZShjLnJlbG93bmVyLCAnVVNBR0UnKQorICAgICAgICAgICAgICAgICAgT1Ig aGFzX2NvbHVtbl9wcml2aWxlZ2UoZWEuYXR0cmVsaWQsIGVhLmF0dG51bSwgJ1NFTEVDVCwgSU5T RVJULCBVUERBVEUsIFJFRkVSRU5DRVMnKQorICAgICAgICAgICAgICAgIFRIRU4gZWEuYXR0bmFt ZTo6aW5mb3JtYXRpb25fc2NoZW1hLnNxbF9pZGVudGlmaWVyCisgICAgICAgICAgIEVORCBBUyBl bmRfY29sdW1uX25hbWUKKyAgICBGUk9NIHBnX3BlcmlvZCBBUyBwCisgICAgSk9JTiBwZ19jbGFz cyBBUyBjIE9OIGMub2lkID0gcC5wZXJyZWxpZAorICAgIEpPSU4gcGdfbmFtZXNwYWNlIEFTIG5j IE9OIG5jLm9pZCA9IGMucmVsbmFtZXNwYWNlCisgICAgSk9JTiBwZ19hdHRyaWJ1dGUgQVMgc2Eg T04gKHNhLmF0dHJlbGlkLCBzYS5hdHRudW0pID0gKHAucGVycmVsaWQsIHAucGVyc3RhcnQpCisg ICAgSk9JTiBwZ19hdHRyaWJ1dGUgQVMgZWEgT04gKGVhLmF0dHJlbGlkLCBlYS5hdHRudW0pID0g KHAucGVycmVsaWQsIHAucGVyZW5kKQorICAgIFdIRVJFIE5PVCBwZ19pc19vdGhlcl90ZW1wX3Nj aGVtYShuYy5vaWQpCisgICAgICBBTkQgYy5yZWxraW5kIElOICgncicsICd2Jyk7CisKK0dSQU5U IFNFTEVDVCBPTiBwZXJpb2RzIFRPIFBVQkxJQzsKIAogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2Jh Y2tlbmQvY2F0YWxvZy9tZXNvbi5idWlsZCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvbWVzb24uYnVp bGQKaW5kZXggMTk1OGVhOTIzOGEuLjZjZGY4OWQwZTkzIDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9jYXRhbG9nL21lc29uLmJ1aWxkCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvbWVzb24uYnVp bGQKQEAgLTI2LDYgKzI2LDcgQEAgYmFja2VuZF9zb3VyY2VzICs9IGZpbGVzKAogICAncGdfbmFt ZXNwYWNlLmMnLAogICAncGdfb3BlcmF0b3IuYycsCiAgICdwZ19wYXJhbWV0ZXJfYWNsLmMnLAor ICAncGdfcGVyaW9kLmMnLAogICAncGdfcHJvYy5jJywKICAgJ3BnX3B1YmxpY2F0aW9uLmMnLAog ICAncGdfcmFuZ2UuYycsCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL29iamVjdGFk ZHJlc3MuYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvb2JqZWN0YWRkcmVzcy5jCmluZGV4IGM3NWI3 MTMxZWQ3Li5lMmIwOTllMjM2MCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9vYmpl Y3RhZGRyZXNzLmMKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9vYmplY3RhZGRyZXNzLmMKQEAg LTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlICJjYXRhbG9nL3BnX29wZXJhdG9yLmgiCiAjaW5jbHVk ZSAiY2F0YWxvZy9wZ19vcGZhbWlseS5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfcGFyYW1ldGVy X2FjbC5oIgorI2luY2x1ZGUgImNhdGFsb2cvcGdfcGVyaW9kLmgiCiAjaW5jbHVkZSAiY2F0YWxv Zy9wZ19wb2xpY3kuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3Byb2MuaCIKICNpbmNsdWRlICJj YXRhbG9nL3BnX3B1YmxpY2F0aW9uLmgiCkBAIC03MjYsNiArNzI3LDkgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBvYmplY3RfdHlwZV9tYXAKIAl7CiAJCSJkb21haW4gY29uc3RyYWludCIsIE9CSkVD VF9ET01DT05TVFJBSU5UCiAJfSwKKwl7CisJCSJwZXJpb2QiLCBPQkpFQ1RfUEVSSU9ECisJfSwK IAl7CiAJCSJjb252ZXJzaW9uIiwgT0JKRUNUX0NPTlZFUlNJT04KIAl9LApAQCAtOTcwLDYgKzk3 NCw3IEBAIGdldF9vYmplY3RfYWRkcmVzcyhPYmplY3RUeXBlIG9ianR5cGUsIE5vZGUgKm9iamVj dCwKIAkJCWNhc2UgT0JKRUNUX1RSSUdHRVI6CiAJCQljYXNlIE9CSkVDVF9UQUJDT05TVFJBSU5U OgogCQkJY2FzZSBPQkpFQ1RfUE9MSUNZOgorCQkJY2FzZSBPQkpFQ1RfUEVSSU9EOgogCQkJCWFk ZHJlc3MgPSBnZXRfb2JqZWN0X2FkZHJlc3NfcmVsb2JqZWN0KG9ianR5cGUsIGNhc3ROb2RlKExp c3QsIG9iamVjdCksCiAJCQkJCQkJCQkJCQkJICAgJnJlbGF0aW9uLCBtaXNzaW5nX29rKTsKIAkJ CQlicmVhazsKQEAgLTE0NzIsNiArMTQ3NywxMyBAQCBnZXRfb2JqZWN0X2FkZHJlc3NfcmVsb2Jq ZWN0KE9iamVjdFR5cGUgb2JqdHlwZSwgTGlzdCAqb2JqZWN0LAogCQkJCUludmFsaWRPaWQ7CiAJ CQlhZGRyZXNzLm9iamVjdFN1YklkID0gMDsKIAkJCWJyZWFrOworCQljYXNlIE9CSkVDVF9QRVJJ T0Q6CisJCQlhZGRyZXNzLmNsYXNzSWQgPSBQZXJpb2RSZWxhdGlvbklkOworCQkJYWRkcmVzcy5v YmplY3RJZCA9IHJlbGF0aW9uID8KKwkJCQlnZXRfcmVsYXRpb25fcGVyaW9kX29pZChyZWxvaWQs IGRlcG5hbWUsIG1pc3Npbmdfb2spIDoKKwkJCQlJbnZhbGlkT2lkOworCQkJYWRkcmVzcy5vYmpl Y3RTdWJJZCA9IDA7CisJCQlicmVhazsKIAkJZGVmYXVsdDoKIAkJCWVsb2coRVJST1IsICJ1bnJl Y29nbml6ZWQgb2JqZWN0IHR5cGU6ICVkIiwgKGludCkgb2JqdHlwZSk7CiAJfQpAQCAtMjI5Myw2 ICsyMzA1LDcgQEAgcGdfZ2V0X29iamVjdF9hZGRyZXNzKFBHX0ZVTkNUSU9OX0FSR1MpCiAJCWNh c2UgT0JKRUNUX1JVTEU6CiAJCWNhc2UgT0JKRUNUX1RSSUdHRVI6CiAJCWNhc2UgT0JKRUNUX1RB QkNPTlNUUkFJTlQ6CisJCWNhc2UgT0JKRUNUX1BFUklPRDoKIAkJY2FzZSBPQkpFQ1RfT1BDTEFT UzoKIAkJY2FzZSBPQkpFQ1RfT1BGQU1JTFk6CiAJCQlvYmpub2RlID0gKE5vZGUgKikgbmFtZTsK QEAgLTI0MDMsNiArMjQxNiw3IEBAIGNoZWNrX29iamVjdF9vd25lcnNoaXAoT2lkIHJvbGVpZCwg T2JqZWN0VHlwZSBvYmp0eXBlLCBPYmplY3RBZGRyZXNzIGFkZHJlc3MsCiAJCWNhc2UgT0JKRUNU X1RSSUdHRVI6CiAJCWNhc2UgT0JKRUNUX1BPTElDWToKIAkJY2FzZSBPQkpFQ1RfVEFCQ09OU1RS QUlOVDoKKwkJY2FzZSBPQkpFQ1RfUEVSSU9EOgogCQkJaWYgKCFvYmplY3Rfb3duZXJjaGVjayhS ZWxhdGlvblJlbGF0aW9uSWQsIFJlbGF0aW9uR2V0UmVsaWQocmVsYXRpb24pLCByb2xlaWQpKQog CQkJCWFjbGNoZWNrX2Vycm9yKEFDTENIRUNLX05PVF9PV05FUiwgb2JqdHlwZSwKIAkJCQkJCQkg ICBSZWxhdGlvbkdldFJlbGF0aW9uTmFtZShyZWxhdGlvbikpOwpAQCAtMzA3Niw2ICszMDkwLDM4 IEBAIGdldE9iamVjdERlc2NyaXB0aW9uKGNvbnN0IE9iamVjdEFkZHJlc3MgKm9iamVjdCwgYm9v bCBtaXNzaW5nX29rKQogCQkJCWJyZWFrOwogCQkJfQogCisJCWNhc2UgUGVyaW9kUmVsYXRpb25J ZDoKKwkJCXsKKwkJCQlIZWFwVHVwbGUJcGVyVHVwOworCQkJCUZvcm1fcGdfcGVyaW9kIHBlcjsK KworCQkJCXBlclR1cCA9IFNlYXJjaFN5c0NhY2hlMShQRVJJT0RPSUQsCisJCQkJCQkJCQkJIE9i amVjdElkR2V0RGF0dW0ob2JqZWN0LT5vYmplY3RJZCkpOworCQkJCWlmICghSGVhcFR1cGxlSXNW YWxpZChwZXJUdXApKQorCQkJCQllbG9nKEVSUk9SLCAiY2FjaGUgbG9va3VwIGZhaWxlZCBmb3Ig cGVyaW9kICV1IiwKKwkJCQkJCSBvYmplY3QtPm9iamVjdElkKTsKKwkJCQlwZXIgPSAoRm9ybV9w Z19wZXJpb2QpIEdFVFNUUlVDVChwZXJUdXApOworCisJCQkJaWYgKE9pZElzVmFsaWQocGVyLT5w ZXJyZWxpZCkpCisJCQkJeworCQkJCQlTdHJpbmdJbmZvRGF0YSByZWw7CisKKwkJCQkJaW5pdFN0 cmluZ0luZm8oJnJlbCk7CisJCQkJCWdldFJlbGF0aW9uRGVzY3JpcHRpb24oJnJlbCwgcGVyLT5w ZXJyZWxpZCwgZmFsc2UpOworCQkJCQlhcHBlbmRTdHJpbmdJbmZvKCZidWZmZXIsIF8oInBlcmlv ZCAlcyBvbiAlcyIpLAorCQkJCQkJCQkJIE5hbWVTdHIocGVyLT5wZXJuYW1lKSwgcmVsLmRhdGEp OworCQkJCQlwZnJlZShyZWwuZGF0YSk7CisJCQkJfQorCQkJCWVsc2UKKwkJCQl7CisJCQkJCWFw cGVuZFN0cmluZ0luZm8oJmJ1ZmZlciwgXygicGVyaW9kICVzIiksCisJCQkJCQkJCQkgTmFtZVN0 cihwZXItPnBlcm5hbWUpKTsKKwkJCQl9CisKKwkJCQlSZWxlYXNlU3lzQ2FjaGUocGVyVHVwKTsK KwkJCQlicmVhazsKKwkJCX0KKwogCQljYXNlIENvbnZlcnNpb25SZWxhdGlvbklkOgogCQkJewog CQkJCUhlYXBUdXBsZQljb25UdXA7CkBAIC00NTI5LDYgKzQ1NzUsMTAgQEAgZ2V0T2JqZWN0VHlw ZURlc2NyaXB0aW9uKGNvbnN0IE9iamVjdEFkZHJlc3MgKm9iamVjdCwgYm9vbCBtaXNzaW5nX29r KQogCQkJCQkJCQkJCSBtaXNzaW5nX29rKTsKIAkJCWJyZWFrOwogCisJCWNhc2UgUGVyaW9kUmVs YXRpb25JZDoKKwkJCWFwcGVuZFN0cmluZ0luZm9TdHJpbmcoJmJ1ZmZlciwgInBlcmlvZCIpOwor CQkJYnJlYWs7CisKIAkJY2FzZSBDb252ZXJzaW9uUmVsYXRpb25JZDoKIAkJCWFwcGVuZFN0cmlu Z0luZm9TdHJpbmcoJmJ1ZmZlciwgImNvbnZlcnNpb24iKTsKIAkJCWJyZWFrOwpAQCAtNTAzNCw2 ICs1MDg0LDI4IEBAIGdldE9iamVjdElkZW50aXR5UGFydHMoY29uc3QgT2JqZWN0QWRkcmVzcyAq b2JqZWN0LAogCQkJCWJyZWFrOwogCQkJfQogCisJCWNhc2UgUGVyaW9kUmVsYXRpb25JZDoKKwkJ CXsKKwkJCQlIZWFwVHVwbGUJcGVyVHVwOworCQkJCUZvcm1fcGdfcGVyaW9kIHBlcjsKKworCQkJ CXBlclR1cCA9IFNlYXJjaFN5c0NhY2hlMShQRVJJT0RPSUQsCisJCQkJCQkJCQkJIE9iamVjdElk R2V0RGF0dW0ob2JqZWN0LT5vYmplY3RJZCkpOworCQkJCWlmICghSGVhcFR1cGxlSXNWYWxpZChw ZXJUdXApKQorCQkJCQllbG9nKEVSUk9SLCAiY2FjaGUgbG9va3VwIGZhaWxlZCBmb3IgcGVyaW9k ICV1IiwKKwkJCQkJCSBvYmplY3QtPm9iamVjdElkKTsKKwkJCQlwZXIgPSAoRm9ybV9wZ19wZXJp b2QpIEdFVFNUUlVDVChwZXJUdXApOworCisJCQkJYXBwZW5kU3RyaW5nSW5mbygmYnVmZmVyLCAi JXMgb24gIiwKKwkJCQkJCQkJIHF1b3RlX2lkZW50aWZpZXIoTmFtZVN0cihwZXItPnBlcm5hbWUp KSk7CisJCQkJZ2V0UmVsYXRpb25JZGVudGl0eSgmYnVmZmVyLCBwZXItPnBlcnJlbGlkLCBvYmpu YW1lLCBmYWxzZSk7CisJCQkJaWYgKG9iam5hbWUpCisJCQkJCSpvYmpuYW1lID0gbGFwcGVuZCgq b2JqbmFtZSwgcHN0cmR1cChOYW1lU3RyKHBlci0+cGVybmFtZSkpKTsKKworCQkJCVJlbGVhc2VT eXNDYWNoZShwZXJUdXApOworCQkJCWJyZWFrOworCQkJfQorCiAJCWNhc2UgQ29udmVyc2lvblJl bGF0aW9uSWQ6CiAJCQl7CiAJCQkJSGVhcFR1cGxlCWNvblR1cDsKZGlmZiAtLWdpdCBhL3NyYy9i YWNrZW5kL2NhdGFsb2cvcGdfY29uc3RyYWludC5jIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19j b25zdHJhaW50LmMKaW5kZXggNzcxNTIyNTJlYTEuLjJjMDQ1MWQ2OTMwIDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuYworKysgYi9zcmMvYmFja2VuZC9jYXRh bG9nL3BnX2NvbnN0cmFpbnQuYwpAQCAtODEyLDkgKzgxMiwxNCBAQCBBZGp1c3ROb3ROdWxsSW5o ZXJpdGFuY2UoT2lkIHJlbGlkLCBBdHRyTnVtYmVyIGF0dG51bSwKICAqIFRoaXMgaXMgc2VsZG9t IG5lZWRlZCwgc28gd2UganVzdCBzY2FuIHBnX2NvbnN0cmFpbnQgZWFjaCB0aW1lLgogICoKICAq ICdpbmNsdWRlX25vaW5oJyBkZXRlcm1pbmVzIHdoZXRoZXIgdG8gaW5jbHVkZSBOTyBJTkhFUklU IGNvbnN0cmFpbnRzIG9yIG5vdC4KKyAqCisgKiAnZXhjbHVkZXMnIGNvbnRhaW5zIGEgbGlzdCBv ZiBhdHRub3Mgd2hvc2UgY29uc3RyYWludHMgd2Ugc2hvdWxkIGV4Y2x1ZGUsCisgKiBmb3IgZXhh bXBsZSBjb25zdHJhaW50cyBvbiBQRVJJT0RzJyBoaWRkZW4gR0VORVJBVEVEIGNvbHVtbnMgKHNp bmNlIHRob3NlCisgKiBhcmVuJ3QgZXhwb3NlZCB0byB1c2VycykuCiAgKi8KIExpc3QgKgotUmVs YXRpb25HZXROb3ROdWxsQ29uc3RyYWludHMoT2lkIHJlbGlkLCBib29sIGNvb2tlZCwgYm9vbCBp bmNsdWRlX25vaW5oKQorUmVsYXRpb25HZXROb3ROdWxsQ29uc3RyYWludHMoT2lkIHJlbGlkLCBi b29sIGNvb2tlZCwgYm9vbCBpbmNsdWRlX25vaW5oLAorCQkJCQkJCSAgQml0bWFwc2V0ICpleGNs dWRlcykKIHsKIAlMaXN0CSAgICpub3RudWxscyA9IE5JTDsKIAlSZWxhdGlvbgljb25zdHJSZWw7 CkBAIC04NDIsNiArODQ3LDkgQEAgUmVsYXRpb25HZXROb3ROdWxsQ29uc3RyYWludHMoT2lkIHJl bGlkLCBib29sIGNvb2tlZCwgYm9vbCBpbmNsdWRlX25vaW5oKQogCiAJCWNvbG51bSA9IGV4dHJh Y3ROb3ROdWxsQ29sdW1uKGh0dXApOwogCisJCWlmIChibXNfaXNfbWVtYmVyKGNvbG51bSwgZXhj bHVkZXMpKQorCQkJY29udGludWU7CisKIAkJaWYgKGNvb2tlZCkKIAkJewogCQkJQ29va2VkQ29u c3RyYWludCAqY29va2VkOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19wZXJp b2QuYyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcGVyaW9kLmMKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMDAwMDAuLjI0YjE5Mzg1MzJiCi0tLSAvZGV2L251bGwKKysrIGIvc3Jj L2JhY2tlbmQvY2F0YWxvZy9wZ19wZXJpb2QuYwpAQCAtMCwwICsxLDEzMiBAQAorLyotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisgKgorICogcGdfcGVyaW9kLmMKKyAqCSAgcm91dGluZXMgdG8gc3VwcG9ydCBt YW5pcHVsYXRpb24gb2YgdGhlIHBnX3BlcmlvZCByZWxhdGlvbgorICoKKyAqIFBvcnRpb25zIENv cHlyaWdodCAoYykgMTk5Ni0yMDIxLCBQb3N0Z3JlU1FMIEdsb2JhbCBEZXZlbG9wbWVudCBHcm91 cAorICoKKyAqCisgKiBJREVOVElGSUNBVElPTgorICoJICBzcmMvYmFja2VuZC9jYXRhbG9nL3Bn X3BlcmlvZC5jCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKi8KKyNpbmNsdWRlICJwb3N0Z3Jl cy5oIgorCisjaW5jbHVkZSAiYWNjZXNzL2dlbmFtLmgiCisjaW5jbHVkZSAiYWNjZXNzL2hlYXBh bS5oIgorI2luY2x1ZGUgImFjY2Vzcy9odHVwX2RldGFpbHMuaCIKKyNpbmNsdWRlICJjYXRhbG9n L2luZGV4aW5nLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19wZXJpb2QuaCIKKyNpbmNsdWRlICJ1 dGlscy9mbWdyb2lkcy5oIgorI2luY2x1ZGUgInV0aWxzL2xzeXNjYWNoZS5oIgorI2luY2x1ZGUg InV0aWxzL3JlbC5oIgorI2luY2x1ZGUgInV0aWxzL3N5c2NhY2hlLmgiCisKKworLyoKKyAqIERl bGV0ZSBhIHNpbmdsZSBwZXJpb2QgcmVjb3JkLgorICovCit2b2lkCitSZW1vdmVQZXJpb2RCeUlk KE9pZCBwZXJpb2RJZCkKK3sKKwlSZWxhdGlvbglwZ19wZXJpb2Q7CisJSGVhcFR1cGxlCXR1cDsK KworCXBnX3BlcmlvZCA9IHRhYmxlX29wZW4oUGVyaW9kUmVsYXRpb25JZCwgUm93RXhjbHVzaXZl TG9jayk7CisKKwl0dXAgPSBTZWFyY2hTeXNDYWNoZTEoUEVSSU9ET0lELCBPYmplY3RJZEdldERh dHVtKHBlcmlvZElkKSk7CisJaWYgKCFIZWFwVHVwbGVJc1ZhbGlkKHR1cCkpIC8qIHNob3VsZCBu b3QgaGFwcGVuICovCisJCWVsb2coRVJST1IsICJjYWNoZSBsb29rdXAgZmFpbGVkIGZvciBwZXJp b2QgJXUiLCBwZXJpb2RJZCk7CisKKwkvKiBGcnkgdGhlIHBlcmlvZCBpdHNlbGYgKi8KKwlDYXRh bG9nVHVwbGVEZWxldGUocGdfcGVyaW9kLCAmdHVwLT50X3NlbGYpOworCisJLyogQ2xlYW4gdXAg Ki8KKwlSZWxlYXNlU3lzQ2FjaGUodHVwKTsKKwl0YWJsZV9jbG9zZShwZ19wZXJpb2QsIFJvd0V4 Y2x1c2l2ZUxvY2spOworfQorCisvKgorICogZ2V0X3JlbGF0aW9uX3BlcmlvZF9vaWQKKyAqCQlG aW5kIGEgcGVyaW9kIG9uIHRoZSBzcGVjaWZpZWQgcmVsYXRpb24gd2l0aCB0aGUgc3BlY2lmaWVk IG5hbWUuCisgKgkJUmV0dXJucyBwZXJpb2QncyBPSUQuCisgKi8KK09pZAorZ2V0X3JlbGF0aW9u X3BlcmlvZF9vaWQoT2lkIHJlbGlkLCBjb25zdCBjaGFyICpwZXJuYW1lLCBib29sIG1pc3Npbmdf b2spCit7CisJUmVsYXRpb24JcGdfcGVyaW9kOworCUhlYXBUdXBsZQl0dXBsZTsKKwlTeXNTY2Fu RGVzYyBzY2FuOworCVNjYW5LZXlEYXRhIHNrZXlbMl07CisJT2lkCQkJcGVyT2lkID0gSW52YWxp ZE9pZDsKKworCS8qIEZldGNoIHRoZSBwZXJpb2QgdHVwbGUgZnJvbSBwZ19wZXJpb2QuICovCisJ cGdfcGVyaW9kID0gdGFibGVfb3BlbihQZXJpb2RSZWxhdGlvbklkLCBBY2Nlc3NTaGFyZUxvY2sp OworCisJU2NhbktleUluaXQoJnNrZXlbMF0sCisJCQkJQW51bV9wZ19wZXJpb2RfcGVycmVsaWQs CisJCQkJQlRFcXVhbFN0cmF0ZWd5TnVtYmVyLCBGX09JREVRLAorCQkJCU9iamVjdElkR2V0RGF0 dW0ocmVsaWQpKTsKKwlTY2FuS2V5SW5pdCgmc2tleVsxXSwKKwkJCQlBbnVtX3BnX3BlcmlvZF9w ZXJuYW1lLAorCQkJCUJURXF1YWxTdHJhdGVneU51bWJlciwgRl9OQU1FRVEsCisJCQkJQ1N0cmlu Z0dldERhdHVtKHBlcm5hbWUpKTsKKworCXNjYW4gPSBzeXN0YWJsZV9iZWdpbnNjYW4ocGdfcGVy aW9kLCBQZXJpb2RSZWxpZE5hbWVJbmRleElkLCB0cnVlLAorCQkJCQkJCSAgTlVMTCwgMiwgc2tl eSk7CisKKwkvKiBUaGVyZSBjYW4gYmUgYXQgbW9zdCBvbmUgbWF0Y2hpbmcgcm93ICovCisJaWYg KEhlYXBUdXBsZUlzVmFsaWQodHVwbGUgPSBzeXN0YWJsZV9nZXRuZXh0KHNjYW4pKSkKKwkJcGVy T2lkID0gKChGb3JtX3BnX3BlcmlvZCkgR0VUU1RSVUNUKHR1cGxlKSktPm9pZDsKKworCXN5c3Rh YmxlX2VuZHNjYW4oc2Nhbik7CisKKwkvKiBJZiBubyBzdWNoIHBlcmlvZCBleGlzdHMsIGNvbXBs YWluICovCisJaWYgKCFPaWRJc1ZhbGlkKHBlck9pZCkgJiYgIW1pc3Npbmdfb2spCisJCWVyZXBv cnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9VTkRFRklORURfT0JKRUNUKSwKKwkJCQkg ZXJybXNnKCJwZXJpb2QgXCIlc1wiIGZvciB0YWJsZSBcIiVzXCIgZG9lcyBub3QgZXhpc3QiLAor CQkJCQkJcGVybmFtZSwgZ2V0X3JlbF9uYW1lKHJlbGlkKSkpKTsKKworCXRhYmxlX2Nsb3NlKHBn X3BlcmlvZCwgQWNjZXNzU2hhcmVMb2NrKTsKKworCXJldHVybiBwZXJPaWQ7Cit9CisKKy8qCisg KiBnZXRfcGVyaW9kX2F0dG5vcworICoJCUdldCB0aGUgYXR0bm8gb2YgdGhlIEdFTkVSQVRFRCBy YW5nZXR5cGUgY29sdW1uCisgKgkJZm9yIGFsbCBQRVJJT0RzIGluIHRoaXMgdGFibGUuCisgKi8K K2V4dGVybiBCaXRtYXBzZXQgKgorZ2V0X3BlcmlvZF9hdHRub3MoT2lkIHJlbGlkKQoreworCUJp dG1hcHNldCAgKmF0dG5vcyA9IE5VTEw7CisJUmVsYXRpb24JcGdfcGVyaW9kOworCUhlYXBUdXBs ZQl0dXBsZTsKKwlTeXNTY2FuRGVzYyBzY2FuOworCVNjYW5LZXlEYXRhIHNrZXlbMV07CisKKwlw Z19wZXJpb2QgPSB0YWJsZV9vcGVuKFBlcmlvZFJlbGF0aW9uSWQsIEFjY2Vzc1NoYXJlTG9jayk7 CisKKwlTY2FuS2V5SW5pdCgmc2tleVswXSwKKwkJCQlBbnVtX3BnX3BlcmlvZF9wZXJyZWxpZCwK KwkJCQlCVEVxdWFsU3RyYXRlZ3lOdW1iZXIsIEZfT0lERVEsCisJCQkJT2JqZWN0SWRHZXREYXR1 bShyZWxpZCkpOworCisJc2NhbiA9IHN5c3RhYmxlX2JlZ2luc2NhbihwZ19wZXJpb2QsIFBlcmlv ZFJlbGlkTmFtZUluZGV4SWQsIHRydWUsCisJCQkJCQkJICBOVUxMLCAxLCBza2V5KTsKKworCXdo aWxlIChIZWFwVHVwbGVJc1ZhbGlkKHR1cGxlID0gc3lzdGFibGVfZ2V0bmV4dChzY2FuKSkpCisJ eworCQlGb3JtX3BnX3BlcmlvZCBwZXJpb2QgPSAoRm9ybV9wZ19wZXJpb2QpIEdFVFNUUlVDVCh0 dXBsZSk7CisKKwkJYXR0bm9zID0gYm1zX2FkZF9tZW1iZXIoYXR0bm9zLCBwZXJpb2QtPnBlcnJh bmdlKTsKKwl9CisKKwlzeXN0YWJsZV9lbmRzY2FuKHNjYW4pOworCXRhYmxlX2Nsb3NlKHBnX3Bl cmlvZCwgQWNjZXNzU2hhcmVMb2NrKTsKKworCXJldHVybiBhdHRub3M7Cit9CmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9jYXRhbG9nL3NxbF9mZWF0dXJlcy50eHQgYi9zcmMvYmFja2VuZC9jYXRh bG9nL3NxbF9mZWF0dXJlcy50eHQKaW5kZXggM2E4YWQyMDE2MDcuLjAxNmI2N2JjZjFjIDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL3NxbF9mZWF0dXJlcy50eHQKKysrIGIvc3JjL2Jh Y2tlbmQvY2F0YWxvZy9zcWxfZmVhdHVyZXMudHh0CkBAIC00NDgsNyArNDQ4LDcgQEAgVDE3NglT ZXF1ZW5jZSBnZW5lcmF0b3Igc3VwcG9ydAkJCU5PCXN1cHBvcnRlZCBleGNlcHQgZm9yIE5FWFQg VkFMVUUgRk9SCiBUMTc3CVNlcXVlbmNlIGdlbmVyYXRvciBzdXBwb3J0OiBzaW1wbGUgcmVzdGFy dCBvcHRpb24JCQlZRVMJCiBUMTc4CUlkZW50aXR5IGNvbHVtbnM6IHNpbXBsZSByZXN0YXJ0IG9w dGlvbgkJCVlFUwkKIFQxODAJU3lzdGVtLXZlcnNpb25lZCB0YWJsZXMJCQlOTwkKLVQxODEJQXBw bGljYXRpb24tdGltZSBwZXJpb2QgdGFibGVzCQkJTk8JCitUMTgxCUFwcGxpY2F0aW9uLXRpbWUg cGVyaW9kIHRhYmxlcwkJCVlFUwkKIFQxOTEJUmVmZXJlbnRpYWwgYWN0aW9uIFJFU1RSSUNUCQkJ WUVTCQogVDIwMAlUcmlnZ2VyIERETAkJCU5PCXNpbWlsYXIgYnV0IG5vdCBmdWxseSBjb21wYXRp YmxlCiBUMjAxCUNvbXBhcmFibGUgZGF0YSB0eXBlcyBmb3IgcmVmZXJlbnRpYWwgY29uc3RyYWlu dHMJCQlZRVMJCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy9jb21tZW50LmMgYi9z cmMvYmFja2VuZC9jb21tYW5kcy9jb21tZW50LmMKaW5kZXggNWM3ODNjYzYxZjEuLjM2MzA2YzYx OGIyIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9jb21tZW50LmMKKysrIGIvc3Jj L2JhY2tlbmQvY29tbWFuZHMvY29tbWVudC5jCkBAIC0xMDIsNiArMTAyLDE2IEBAIENvbW1lbnRP YmplY3QoQ29tbWVudFN0bXQgKnN0bXQpCiAJCQkJCQkJCVJlbGF0aW9uR2V0UmVsYXRpb25OYW1l KHJlbGF0aW9uKSksCiAJCQkJCQkgZXJyZGV0YWlsX3JlbGtpbmRfbm90X3N1cHBvcnRlZChyZWxh dGlvbi0+cmRfcmVsLT5yZWxraW5kKSkpOwogCQkJYnJlYWs7CisKKwkJY2FzZSBPQkpFQ1RfUEVS SU9EOgorCQkJLyogUGVyaW9kcyBjYW4gb25seSBnbyBvbiB0YWJsZXMgKi8KKwkJCWlmIChyZWxh dGlvbi0+cmRfcmVsLT5yZWxraW5kICE9IFJFTEtJTkRfUkVMQVRJT04pCisJCQkJZXJlcG9ydChF UlJPUiwKKwkJCQkJCShlcnJjb2RlKEVSUkNPREVfV1JPTkdfT0JKRUNUX1RZUEUpLAorCQkJCQkJ IGVycm1zZygiXCIlc1wiIGlzIG5vdCBhIHRhYmxlIiwKKwkJCQkJCQkJUmVsYXRpb25HZXRSZWxh dGlvbk5hbWUocmVsYXRpb24pKSkpOworCQkJYnJlYWs7CisKIAkJZGVmYXVsdDoKIAkJCWJyZWFr OwogCX0KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2Ryb3BjbWRzLmMgYi9zcmMv YmFja2VuZC9jb21tYW5kcy9kcm9wY21kcy5jCmluZGV4IGNlYjlhMjI5YjYzLi41MjZjM2ZmNTE0 MiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvZHJvcGNtZHMuYworKysgYi9zcmMv YmFja2VuZC9jb21tYW5kcy9kcm9wY21kcy5jCkBAIC01MDQsNiArNTA0LDcgQEAgZG9lc19ub3Rf ZXhpc3Rfc2tpcHBpbmcoT2JqZWN0VHlwZSBvYmp0eXBlLCBOb2RlICpvYmplY3QpCiAJCWNhc2Ug T0JKRUNUX0RPTUNPTlNUUkFJTlQ6CiAJCWNhc2UgT0JKRUNUX0xBUkdFT0JKRUNUOgogCQljYXNl IE9CSkVDVF9QQVJBTUVURVJfQUNMOgorCQljYXNlIE9CSkVDVF9QRVJJT0Q6CiAJCWNhc2UgT0JK RUNUX1BVQkxJQ0FUSU9OX05BTUVTUEFDRToKIAkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT05fUkVM OgogCQljYXNlIE9CSkVDVF9UQUJDT05TVFJBSU5UOgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv Y29tbWFuZHMvZXZlbnRfdHJpZ2dlci5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvZXZlbnRfdHJp Z2dlci5jCmluZGV4IGYzNDg2OGRhNWFiLi41MTRkYTA0YmU3NyAxMDA2NDQKLS0tIGEvc3JjL2Jh Y2tlbmQvY29tbWFuZHMvZXZlbnRfdHJpZ2dlci5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRz L2V2ZW50X3RyaWdnZXIuYwpAQCAtMjMwMSw2ICsyMzAxLDcgQEAgc3RyaW5naWZ5X2dyYW50X29i anR5cGUoT2JqZWN0VHlwZSBvYmp0eXBlKQogCQljYXNlIE9CSkVDVF9PUENMQVNTOgogCQljYXNl IE9CSkVDVF9PUEVSQVRPUjoKIAkJY2FzZSBPQkpFQ1RfT1BGQU1JTFk6CisJCWNhc2UgT0JKRUNU X1BFUklPRDoKIAkJY2FzZSBPQkpFQ1RfUE9MSUNZOgogCQljYXNlIE9CSkVDVF9QVUJMSUNBVElP TjoKIAkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT05fTkFNRVNQQUNFOgpAQCAtMjM4NSw2ICsyMzg2 LDcgQEAgc3RyaW5naWZ5X2FkZWZwcml2c19vYmp0eXBlKE9iamVjdFR5cGUgb2JqdHlwZSkKIAkJ Y2FzZSBPQkpFQ1RfT1BFUkFUT1I6CiAJCWNhc2UgT0JKRUNUX09QRkFNSUxZOgogCQljYXNlIE9C SkVDVF9QQVJBTUVURVJfQUNMOgorCQljYXNlIE9CSkVDVF9QRVJJT0Q6CiAJCWNhc2UgT0JKRUNU X1BPTElDWToKIAkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT046CiAJCWNhc2UgT0JKRUNUX1BVQkxJ Q0FUSU9OX05BTUVTUEFDRToKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3NlY2xh YmVsLmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9zZWNsYWJlbC5jCmluZGV4IGNlZTVkN2JiYjlj Li5mODY1MGViNGZlNCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvc2VjbGFiZWwu YworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9zZWNsYWJlbC5jCkBAIC03OSw2ICs3OSw3IEBA IFNlY0xhYmVsU3VwcG9ydHNPYmplY3RUeXBlKE9iamVjdFR5cGUgb2JqdHlwZSkKIAkJY2FzZSBP QkpFQ1RfT1BFUkFUT1I6CiAJCWNhc2UgT0JKRUNUX09QRkFNSUxZOgogCQljYXNlIE9CSkVDVF9Q QVJBTUVURVJfQUNMOgorCQljYXNlIE9CSkVDVF9QRVJJT0Q6CiAJCWNhc2UgT0JKRUNUX1BPTElD WToKIAkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT05fTkFNRVNQQUNFOgogCQljYXNlIE9CSkVDVF9Q VUJMSUNBVElPTl9SRUw6CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNt ZHMuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCmluZGV4IGNlNGVmZGViODU0 Li4wYTEzMDM0ODliZSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRz LmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKQEAgLTQ1LDYgKzQ1LDcg QEAKICNpbmNsdWRlICJjYXRhbG9nL3BnX2xhcmdlb2JqZWN0X21ldGFkYXRhLmgiCiAjaW5jbHVk ZSAiY2F0YWxvZy9wZ19uYW1lc3BhY2UuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX29wY2xhc3Mu aCIKKyNpbmNsdWRlICJjYXRhbG9nL3BnX3BlcmlvZC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdf cG9saWN5LmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19wcm9jLmgiCiAjaW5jbHVkZSAiY2F0YWxv Zy9wZ19wdWJsaWNhdGlvbl9yZWwuaCIKQEAgLTE1Niw2ICsxNTcsMTMgQEAgdHlwZWRlZiBlbnVt IEFsdGVyVGFibGVQYXNzCiAJQVRfUEFTU19PTERfSU5ERVgsCQkJLyogcmUtYWRkIGV4aXN0aW5n IGluZGV4ZXMgKi8KIAlBVF9QQVNTX09MRF9DT05TVFIsCQkJLyogcmUtYWRkIGV4aXN0aW5nIGNv bnN0cmFpbnRzICovCiAJLyogV2UgY291bGQgc3VwcG9ydCBhIFJFTkFNRSBDT0xVTU4gcGFzcyBo ZXJlLCBidXQgbm90IGN1cnJlbnRseSB1c2VkICovCisKKwkvKgorCSAqIFdlIG11c3QgYWRkIFBF UklPRHMgYWZ0ZXIgY29sdW1ucywgaW4gY2FzZSB0aGV5IHJlZmVyZW5jZSBhIG5ld2x5LWFkZGVk CisJICogY29sdW1uLCBhbmQgYmVmb3JlIGNvbnN0cmFpbnRzLCBpbiBjYXNlIGEgbmV3bHktYWRk ZWQgUEsvRksgcmVmZXJlbmNlcworCSAqIHRoZW0uCisJICovCisJQVRfUEFTU19BRERfUEVSSU9E LAkJCS8qIEFERCBQRVJJT0QgKi8KIAlBVF9QQVNTX0FERF9DT05TVFIsCQkJLyogQUREIGNvbnN0 cmFpbnRzIChpbml0aWFsIGV4YW1pbmF0aW9uKSAqLwogCUFUX1BBU1NfQ09MX0FUVFJTLAkJCS8q IHNldCBjb2x1bW4gYXR0cmlidXRlcywgZWcgTk9UIE5VTEwgKi8KIAlBVF9QQVNTX0FERF9JTkRF WENPTlNUUiwJLyogQUREIGluZGV4LWJhc2VkIGNvbnN0cmFpbnRzICovCkBAIC0zNzUsNiArMzgz LDcgQEAgc3RhdGljIExpc3QgKk1lcmdlQXR0cmlidXRlcyhMaXN0ICpjb2x1bW5zLCBjb25zdCBM aXN0ICpzdXBlcnMsIGNoYXIgcmVscGVyc2lzdGUKIAkJCQkJCQkgYm9vbCBpc19wYXJ0aXRpb24s IExpc3QgKipzdXBjb25zdHIsCiAJCQkJCQkJIExpc3QgKipzdXBub3RudWxscyk7CiBzdGF0aWMg TGlzdCAqTWVyZ2VDaGVja0NvbnN0cmFpbnQoTGlzdCAqY29uc3RyYWludHMsIGNvbnN0IGNoYXIg Km5hbWUsIE5vZGUgKmV4cHIsIGJvb2wgaXNfZW5mb3JjZWQpOworc3RhdGljIExpc3QgKk1lcmdl UGVyaW9kcyhjaGFyICpyZWxuYW1lLCBMaXN0ICpwZXJpb2RzLCBMaXN0ICp0YWJsZUVsdHMsIExp c3QgKnN1cGVycyk7CiBzdGF0aWMgdm9pZCBNZXJnZUNoaWxkQXR0cmlidXRlKExpc3QgKmluaF9j b2x1bW5zLCBpbnQgZXhpc3RfYXR0bm8sIGludCBuZXdjb2xfYXR0bm8sIGNvbnN0IENvbHVtbkRl ZiAqbmV3ZGVmKTsKIHN0YXRpYyBDb2x1bW5EZWYgKk1lcmdlSW5oZXJpdGVkQXR0cmlidXRlKExp c3QgKmluaF9jb2x1bW5zLCBpbnQgZXhpc3RfYXR0bm8sIGNvbnN0IENvbHVtbkRlZiAqbmV3ZGVm KTsKIHN0YXRpYyB2b2lkIE1lcmdlQXR0cmlidXRlc0ludG9FeGlzdGluZyhSZWxhdGlvbiBjaGls ZF9yZWwsIFJlbGF0aW9uIHBhcmVudF9yZWwsIGJvb2wgaXNwYXJ0aXRpb24pOwpAQCAtNDk3LDYg KzUwNiw4IEBAIHN0YXRpYyBPYmplY3RBZGRyZXNzIEFURXhlY0FkZENvbHVtbihMaXN0ICoqd3F1 ZXVlLCBBbHRlcmVkVGFibGVJbmZvICp0YWIsCiAJCQkJCQkJCQkgQWx0ZXJUYWJsZVV0aWxpdHlD b250ZXh0ICpjb250ZXh0KTsKIHN0YXRpYyBib29sIGNoZWNrX2Zvcl9jb2x1bW5fbmFtZV9jb2xs aXNpb24oUmVsYXRpb24gcmVsLCBjb25zdCBjaGFyICpjb2xuYW1lLAogCQkJCQkJCQkJCQlib29s IGlmX25vdF9leGlzdHMpOworc3RhdGljIGJvb2wgY2hlY2tfZm9yX3BlcmlvZF9uYW1lX2NvbGxp c2lvbihSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKnBlcm5hbWUsCisJCQkJCQkJCQkJCWJvb2wg Y29sZXhpc3RzLCBib29sIGlmX25vdF9leGlzdHMpOwogc3RhdGljIHZvaWQgYWRkX2NvbHVtbl9k YXRhdHlwZV9kZXBlbmRlbmN5KE9pZCByZWxpZCwgaW50MzIgYXR0bnVtLCBPaWQgdHlwaWQpOwog c3RhdGljIHZvaWQgYWRkX2NvbHVtbl9jb2xsYXRpb25fZGVwZW5kZW5jeShPaWQgcmVsaWQsIGlu dDMyIGF0dG51bSwgT2lkIGNvbGxpZCk7CiBzdGF0aWMgT2JqZWN0QWRkcmVzcyBBVEV4ZWNEcm9w Tm90TnVsbChSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKmNvbE5hbWUsIGJvb2wgcmVjdXJzZSwK QEAgLTUxNCw2ICs1MjUsMTUgQEAgc3RhdGljIE9iamVjdEFkZHJlc3MgQVRFeGVjQ29sdW1uRGVm YXVsdChSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKmNvbE5hbWUsCiAJCQkJCQkJCQkJIE5vZGUg Km5ld0RlZmF1bHQsIExPQ0tNT0RFIGxvY2ttb2RlKTsKIHN0YXRpYyBPYmplY3RBZGRyZXNzIEFU RXhlY0Nvb2tlZENvbHVtbkRlZmF1bHQoUmVsYXRpb24gcmVsLCBBdHRyTnVtYmVyIGF0dG51bSwK IAkJCQkJCQkJCQkJICAgTm9kZSAqbmV3RGVmYXVsdCk7CitzdGF0aWMgdm9pZCBBVFByZXBBZGRQ ZXJpb2QoTGlzdCAqKndxdWV1ZSwgUmVsYXRpb24gcmVsLCBBbHRlclRhYmxlQ21kICpjbWQsCisJ CQkJCQkJTE9DS01PREUgbG9ja21vZGUsIEFsdGVyVGFibGVVdGlsaXR5Q29udGV4dCAqY29udGV4 dCk7CitzdGF0aWMgT2JqZWN0QWRkcmVzcyBBVEV4ZWNBZGRQZXJpb2QoTGlzdCAqKndxdWV1ZSwg QWx0ZXJlZFRhYmxlSW5mbyAqdGFiLAorCQkJCQkJCQkJIFJlbGF0aW9uIHJlbCwgUGVyaW9kRGVm ICpwZXJpb2QsCisJCQkJCQkJCQkgTE9DS01PREUgbG9ja21vZGUsIEFsdGVyVGFibGVVdGlsaXR5 Q29udGV4dCAqY29udGV4dCk7CitzdGF0aWMgdm9pZCBBVEV4ZWNEcm9wUGVyaW9kKFJlbGF0aW9u IHJlbCwgY29uc3QgY2hhciAqcGVyaW9kTmFtZSwKKwkJCQkJCQkgRHJvcEJlaGF2aW9yIGJlaGF2 aW9yLAorCQkJCQkJCSBib29sIHJlY3Vyc2UsIGJvb2wgcmVjdXJzaW5nLAorCQkJCQkJCSBib29s IG1pc3Npbmdfb2spOwogc3RhdGljIE9iamVjdEFkZHJlc3MgQVRFeGVjQWRkSWRlbnRpdHkoUmVs YXRpb24gcmVsLCBjb25zdCBjaGFyICpjb2xOYW1lLAogCQkJCQkJCQkJICAgTm9kZSAqZGVmLCBM T0NLTU9ERSBsb2NrbW9kZSwgYm9vbCByZWN1cnNlLCBib29sIHJlY3Vyc2luZyk7CiBzdGF0aWMg T2JqZWN0QWRkcmVzcyBBVEV4ZWNTZXRJZGVudGl0eShSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIg KmNvbE5hbWUsCkBAIC03MzksNiArNzU5LDEwIEBAIHN0YXRpYyBMaXN0ICpHZXRQYXJlbnRlZEZv cmVpZ25LZXlSZWZzKFJlbGF0aW9uIHBhcnRpdGlvbik7CiBzdGF0aWMgdm9pZCBBVERldGFjaENo ZWNrTm9Gb3JlaWduS2V5UmVmcyhSZWxhdGlvbiBwYXJ0aXRpb24pOwogc3RhdGljIGNoYXIgR2V0 QXR0cmlidXRlQ29tcHJlc3Npb24oT2lkIGF0dHR5cGlkLCBjb25zdCBjaGFyICpjb21wcmVzc2lv bik7CiBzdGF0aWMgY2hhciBHZXRBdHRyaWJ1dGVTdG9yYWdlKE9pZCBhdHR0eXBpZCwgY29uc3Qg Y2hhciAqc3RvcmFnZW1vZGUpOworc3RhdGljIHZvaWQgQWRkUmVsYXRpb25OZXdQZXJpb2QoUmVs YXRpb24gcmVsLCBQZXJpb2REZWYgKnBlcmlvZCk7CitzdGF0aWMgdm9pZCBWYWxpZGF0ZVBlcmlv ZChSZWxhdGlvbiByZWwsIFBlcmlvZERlZiAqcGVyaW9kKTsKK3N0YXRpYyBDb25zdHJhaW50ICpt YWtlX2NvbnN0cmFpbnRfZm9yX3BlcmlvZChSZWxhdGlvbiByZWwsIFBlcmlvZERlZiAqcGVyaW9k KTsKK3N0YXRpYyBDb2x1bW5EZWYgKm1ha2VfcmFuZ2VfY29sdW1uX2Zvcl9wZXJpb2QoUGVyaW9k RGVmICpwZXJpb2QpOwogCiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTk2OCw2ICs5OTIsOTUgQEAgRGVmaW5l UmVsYXRpb24oQ3JlYXRlU3RtdCAqc3RtdCwgY2hhciByZWxraW5kLCBPaWQgb3duZXJJZCwKIAkJ CQkJCXN0bXQtPnBhcnRib3VuZCAhPSBOVUxMLAogCQkJCQkJJm9sZF9jb25zdHJhaW50cywgJm9s ZF9ub3RudWxscyk7CiAKKwkvKgorCSAqIFVzaW5nIHRoZSBjb2x1bW4gbGlzdCAoaW5jbHVkaW5n IGluaGVyaXRlZCBjb2x1bW5zKSwgZmluZCB0aGUgc3RhcnQvZW5kCisJICogY29sdW1ucyBmb3Ig ZWFjaCBwZXJpb2QuIFBFUklPRHMgc2hvdWxkIGJlIGluaGVyaXRlZCB0b28gKGJ1dCBhcmVuJ3QK KwkgKiB5ZXQpLgorCSAqLworCXN0bXQtPnBlcmlvZHMgPSBNZXJnZVBlcmlvZHMocmVsbmFtZSwg c3RtdC0+cGVyaW9kcywgc3RtdC0+dGFibGVFbHRzLCBpbmhlcml0T2lkcyk7CisKKwkvKgorCSAq IEZvciBlYWNoIFBFUklPRCB3ZSBuZWVkIGEgR0VORVJBVEVEIGNvbHVtbi4gVXN1YWxseSB3ZSBt dXN0IGNyZWF0ZQorCSAqIHRoaXMsIHNvIHdlIGFkZCBpdCB0byB0YWJsZUVsdHMuIElmIHRoZSB1 c2VyIHNheXMgdGhlIGNvbHVtbiBhbHJlYWR5CisJICogZXhpc3RzLCBtYWtlIHN1cmUgaXQgaXMg c2Vuc2libGUuIFRoZXNlIGNvbHVtbnMgYXJlIG5vdCBpbmhlcml0ZWQsIHNvCisJICogd2UgZG9u J3Qgd29ycnkgYWJvdXQgY29uZmxpY3RzIGluIHRhYmxlRWx0cy4KKwkgKgorCSAqIFdlIGFsbG93 IHRoaXMgY29sZXhpc3RzIG9wdGlvbiB0byBzdXBwb3J0IHBnX3VwZ3JhZGUsIHNvIHdlIGhhdmUg bW9yZQorCSAqIGNvbnRyb2wgb3ZlciB0aGUgR0VORVJBVEVEIGNvbHVtbiAod2hvc2UgYXR0bnVt IG11c3QgbWF0Y2ggdGhlIG9sZAorCSAqIHZhbHVlKS4KKwkgKgorCSAqIFNpbmNlIHRoZSBHRU5F UkFURUQgY29sdW1uIG11c3QgYmUgTk9UIE5VTEwsIHdlIGFkZCBhIGNvbnN0cmFpbnQgdG8KKwkg KiBubmNvbnN0cmFpbnRzLgorCSAqLworCWZvcmVhY2gobGlzdHB0ciwgc3RtdC0+cGVyaW9kcykK Kwl7CisJCVBlcmlvZERlZiAgKnBlcmlvZCA9IChQZXJpb2REZWYgKikgbGZpcnN0KGxpc3RwdHIp OworCisJCWlmIChwZXJpb2QtPmNvbGV4aXN0cykKKwkJeworCQkJTGlzdENlbGwgICAqY2VsbDsK KwkJCWJvb2wJCWZvdW5kID0gZmFsc2U7CisKKwkJCS8qIEZpbmQgdGhlIGV4aXN0aW5nIGNvbHVt biB0byB1c2UgKi8KKwkJCWZvcmVhY2goY2VsbCwgc3RtdC0+dGFibGVFbHRzKQorCQkJeworCQkJ CUNvbHVtbkRlZiAgKmNvbERlZiA9IGxmaXJzdChjZWxsKTsKKworCQkJCWlmIChzdHJjbXAocGVy aW9kLT5wZXJpb2RuYW1lLCBjb2xEZWYtPmNvbG5hbWUpID09IDApCisJCQkJeworCQkJCQkvKgor CQkJCQkgKiBNYWtlIHN1cmUgdGhlIGV4aXN0aW5nIGNvbHVtbiBtYXRjaGVzIHdoYXQgd2Ugd291 bGQgaGF2ZQorCQkJCQkgKiBjcmVhdGVkLiBGaXJzdCBhbGwsIGl0IG11c3QgYmUgR0VORVJBVEVE LgorCQkJCQkgKi8KKwkJCQkJaWYgKGNvbERlZi0+Z2VuZXJhdGVkID09ICdcMCcpCisJCQkJCQll cmVwb3J0KEVSUk9SLCAoZXJybXNnKCJQZXJpb2QgJXMgdXNlcyBhIG5vbi1nZW5lcmF0ZWQgY29s dW1uIiwKKwkJCQkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJCQkJLyogVGhlIEdF TkVSQVRFRCBjb2x1bW4gbXVzdCBiZSBTVE9SRUQuICovCisJCQkJCWlmIChjb2xEZWYtPmdlbmVy YXRlZCAhPSBBVFRSSUJVVEVfR0VORVJBVEVEX1NUT1JFRCkKKwkJCQkJCWVyZXBvcnQoRVJST1Is IChlcnJtc2coIlBlcmlvZCAlcyB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGF0IGlzIG5vdCBT VE9SRUQiLAorCQkJCQkJCQkJCXBlcmlvZC0+cGVyaW9kbmFtZSkpKTsKKworCQkJCQkvKiBUaGUg R0VORVJBVEVEIGNvbHVtbiBtdXN0IG5vdCBhbGxvdyBudWxscy4gKi8KKwkJCQkJaWYgKCFjb2xE ZWYtPmlzX25vdF9udWxsICYmICFJc0JpbmFyeVVwZ3JhZGUpCisJCQkJCQllcmVwb3J0KEVSUk9S LCAoZXJybXNnKCJQZXJpb2QgJXMgdXNlcyBhIGdlbmVyYXRlZCBjb2x1bW4gdGhhdCBhbGxvd3Mg bnVsbHMiLAorCQkJCQkJCQkJCXBlcmlvZC0+cGVyaW9kbmFtZSkpKTsKKworCQkJCQkvKiBUaGUg R0VORVJBVEVEIGNvbHVtbiBtdXN0IG1hdGNoIG91ciByYW5nZXR5cGUuICovCisJCQkJCWlmIChw ZXJpb2QtPnJuZ3R5cGlkICE9IHR5cGVuYW1lVHlwZUlkKE5VTEwsIGNvbERlZi0+dHlwZU5hbWUp KQorCQkJCQkJZXJlcG9ydChFUlJPUiwgKGVycm1zZygiUGVyaW9kICVzIHVzZXMgYSBnZW5lcmF0 ZWQgY29sdW1uIHdpdGggdGhlIHdyb25nIHR5cGUiLAorCQkJCQkJCQkJCXBlcmlvZC0+cGVyaW9k bmFtZSkpKTsKKworCQkJCQkvKgorCQkJCQkgKiBUaGUgR0VORVJBVEVEIGNvbHVtbiBtdXN0IG5v dCBiZSBpbmhlcml0ZWQuCisJCQkJCSAqIFhYWDogSWYgdGhlIFBFUklPRCBpcyBpbmhlcml0ZWQs IHRoZXkgbXVzdCBjb21lIGZyb20gdGhlCisJCQkJCSAqIHNhbWUgcGFyZW50LgorCQkJCQkgKi8K KwkJCQkJaWYgKCFjb2xEZWYtPmlzX2xvY2FsKQorCQkJCQkJZXJlcG9ydChFUlJPUiwgKGVycm1z ZygiUGVyaW9kICVzIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHRoYXQgaXMgaW5oZXJpdGVkIiwK KwkJCQkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisJCQkJCS8qCisJCQkJCSAqIFhYWDog V2Ugc2hvdWxkIGNoZWNrIHRoZSBHRU5FUkFURUQgZXhwcmVzc2lvbiBhbHNvLCBidXQKKwkJCQkJ ICogdGhhdCBpcyBoYXJkIHRvIGRvIGJlY2F1c2Ugb25lIGlzIGNvb2tlZCBhbmQgb25lIGlzIHJh dy4KKwkJCQkJICovCisKKwkJCQkJZm91bmQgPSB0cnVlOworCQkJCX0KKwkJCX0KKworCQkJaWYg KCFmb3VuZCkKKwkJCQllcmVwb3J0KEVSUk9SLCAoZXJybXNnKCJObyBjb2x1bW4gZm91bmQgd2l0 aCBuYW1lICVzIiwgcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCQl9CisJCWVsc2UKKwkJeworCQkJ Q29sdW1uRGVmICAqY29sID0gbWFrZV9yYW5nZV9jb2x1bW5fZm9yX3BlcmlvZChwZXJpb2QpOwor CQkJQ29uc3RyYWludCAqY29uc3RyID0gbWFrZU5vdE51bGxDb25zdHJhaW50KG1ha2VTdHJpbmco Y29sLT5jb2xuYW1lKSk7CisKKwkJCXN0bXQtPnRhYmxlRWx0cyA9IGxhcHBlbmQoc3RtdC0+dGFi bGVFbHRzLCBjb2wpOworCQkJc3RtdC0+bm5jb25zdHJhaW50cyA9IGxhcHBlbmQoc3RtdC0+bm5j b25zdHJhaW50cywgY29uc3RyKTsKKwkJfQorCX0KKwogCS8qCiAJICogQ3JlYXRlIGEgdHVwbGUg ZGVzY3JpcHRvciBmcm9tIHRoZSByZWxhdGlvbiBzY2hlbWEuICBOb3RlIHRoYXQgdGhpcwogCSAq IGRlYWxzIHdpdGggY29sdW1uIG5hbWVzLCB0eXBlcywgYW5kIGluLWRlc2NyaXB0b3IgTk9UIE5V TEwgZmxhZ3MsIGJ1dApAQCAtMTMzNiw3ICsxNDQ5LDcgQEAgRGVmaW5lUmVsYXRpb24oQ3JlYXRl U3RtdCAqc3RtdCwgY2hhciByZWxraW5kLCBPaWQgb3duZXJJZCwKIAkJCQkJCQkJICB0cnVlLCB0 cnVlLCBmYWxzZSwgcXVlcnlTdHJpbmcpOwogCiAJLyoKLQkgKiBGaW5hbGx5LCBtZXJnZSB0aGUg bm90LW51bGwgY29uc3RyYWludHMgdGhhdCBhcmUgZGVjbGFyZWQgZGlyZWN0bHkgd2l0aAorCSAq IE5vdyBtZXJnZSB0aGUgbm90LW51bGwgY29uc3RyYWludHMgdGhhdCBhcmUgZGVjbGFyZWQgZGly ZWN0bHkgd2l0aAogCSAqIHRob3NlIHRoYXQgY29tZSBmcm9tIHBhcmVudCByZWxhdGlvbnMgKG1h a2luZyBzdXJlIHRvIGNvdW50IGluaGVyaXRhbmNlCiAJICogYXBwcm9wcmlhdGVseSBmb3IgZWFj aCksIGNyZWF0ZSB0aGVtLCBhbmQgc2V0IHRoZSBhdHRub3RudWxsIGZsYWcgb24KIAkgKiBjb2x1 bW5zIHRoYXQgZG9uJ3QgeWV0IGhhdmUgaXQuCkBAIC0xMzQ2LDYgKzE0NTksMjEgQEAgRGVmaW5l UmVsYXRpb24oQ3JlYXRlU3RtdCAqc3RtdCwgY2hhciByZWxraW5kLCBPaWQgb3duZXJJZCwKIAlm b3JlYWNoX2ludChhdHRybnVtLCBubmNvbHMpCiAJCXNldF9hdHRub3RudWxsKE5VTEwsIHJlbCwg YXR0cm51bSwgdHJ1ZSwgZmFsc2UpOwogCisJLyoKKwkgKiBGaW5hbGx5LCBjcmVhdGUgcGVyaW9k cyBmb3IgdGhlIHRhYmxlLiBUaGlzIG11c3QgY29tZSBhZnRlciB3ZSBjcmVhdGUKKwkgKiBjb2x1 bW5zIGFuZCBiZWZvcmUgd2UgY3JlYXRlIGluZGV4IGNvbnN0cmFpbnRzLiBJdCB3aWxsIGF1dG9t YXRpY2FsbHkKKwkgKiBjcmVhdGUgYSBDSEVDSyBjb25zdHJhaW50IGZvciB0aGUgcGVyaW9kLgor CSAqLworCWZvcmVhY2gobGlzdHB0ciwgc3RtdC0+cGVyaW9kcykKKwl7CisJCVBlcmlvZERlZiAg KnBlcmlvZCA9IChQZXJpb2REZWYgKikgbGZpcnN0KGxpc3RwdHIpOworCisJCS8qIERvbid0IHVw ZGF0ZSB0aGUgY291bnQgb2YgY2hlY2sgY29uc3RyYWludHMgdHdpY2UgKi8KKwkJQ29tbWFuZENv dW50ZXJJbmNyZW1lbnQoKTsKKworCQlBZGRSZWxhdGlvbk5ld1BlcmlvZChyZWwsIHBlcmlvZCk7 CisJfQorCiAJT2JqZWN0QWRkcmVzc1NldChhZGRyZXNzLCBSZWxhdGlvblJlbGF0aW9uSWQsIHJl bGF0aW9uSWQpOwogCiAJLyoKQEAgLTE0NDUsNiArMTU3MywzMzYgQEAgQnVpbGREZXNjRm9yUmVs YXRpb24oY29uc3QgTGlzdCAqY29sdW1ucykKIAlyZXR1cm4gZGVzYzsKIH0KIAorLyoKKyAqIG1h a2VfY29uc3RyYWludF9mb3JfcGVyaW9kCisgKgorICogQnVpbGRzIGEgQ0hFQ0sgQ29uc3RyYWlu dCB0byBlbnN1cmUgc3RhcnQgPCBlbmQuCisgKiBSZXR1cm5zIHRoZSBDSEVDSyBDb25zdHJhaW50 LgorICogQWxzbyBmaWxscyBpbiBwZXJpb2QtPmNvbnN0cmFpbnRuYW1lIGlmIG5lZWRlZC4KKyAq CisgKiBJZiBlaXRoZXIgYm91bmQgaXMgTlVMTCwgdGhlIGNvbnN0cmFpbnQgcGFzc2VzCisgKiAo c2luY2UgdGhhdCBpbmRpY2F0ZXMgYW4gdW5ib3VuZGVkIHJhbmdlKS4KKyAqLworc3RhdGljIENv bnN0cmFpbnQgKgorbWFrZV9jb25zdHJhaW50X2Zvcl9wZXJpb2QoUmVsYXRpb24gcmVsLCBQZXJp b2REZWYgKnBlcmlvZCkKK3sKKwlDb2x1bW5SZWYgICpzY29sLAorCQkJICAgKmVjb2w7CisJQ29u c3RyYWludCAqY29uc3RyOworCVR5cGVDYWNoZUVudHJ5ICp0eXBlOworCisJaWYgKHBlcmlvZC0+ Y29uc3RyYWludG5hbWUgPT0gTlVMTCkKKwkJcGVyaW9kLT5jb25zdHJhaW50bmFtZSA9IENob29z ZUNvbnN0cmFpbnROYW1lKFJlbGF0aW9uR2V0UmVsYXRpb25OYW1lKHJlbCksCisJCQkJCQkJCQkJ CQkJICBwZXJpb2QtPnBlcmlvZG5hbWUsCisJCQkJCQkJCQkJCQkJICAiY2hlY2siLAorCQkJCQkJ CQkJCQkJCSAgUmVsYXRpb25HZXROYW1lc3BhY2UocmVsKSwKKwkJCQkJCQkJCQkJCQkgIE5JTCk7 CisJc2NvbCA9IG1ha2VOb2RlKENvbHVtblJlZik7CisJc2NvbC0+ZmllbGRzID0gbGlzdF9tYWtl MShtYWtlU3RyaW5nKHBzdHJkdXAocGVyaW9kLT5zdGFydGNvbG5hbWUpKSk7CisJc2NvbC0+bG9j YXRpb24gPSAwOworCisJZWNvbCA9IG1ha2VOb2RlKENvbHVtblJlZik7CisJZWNvbC0+ZmllbGRz ID0gbGlzdF9tYWtlMShtYWtlU3RyaW5nKHBzdHJkdXAocGVyaW9kLT5lbmRjb2xuYW1lKSkpOwor CWVjb2wtPmxvY2F0aW9uID0gMDsKKworCXR5cGUgPSBsb29rdXBfdHlwZV9jYWNoZShwZXJpb2Qt PmNvbHR5cGlkLCBUWVBFQ0FDSEVfTFRfT1BSKTsKKwlpZiAodHlwZS0+bHRfb3ByID09IEludmFs aWRPaWQpCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05P VF9TVVBQT1JURUQpLAorCQkJCSBlcnJtc2coImNvbHVtbiBcIiVzXCIgY2Fubm90IGJlIHVzZWQg aW4gYSBQRVJJT0QgYmVjYXVzZSBpdHMgdHlwZSAlcyBoYXMgbm8gbGVzcyB0aGFuIG9wZXJhdG9y IiwKKwkJCQkJCXBlcmlvZC0+c3RhcnRjb2xuYW1lLCBmb3JtYXRfdHlwZV9iZShwZXJpb2QtPmNv bHR5cGlkKSkpKTsKKworCWNvbnN0ciA9IG1ha2VOb2RlKENvbnN0cmFpbnQpOworCWNvbnN0ci0+ Y29udHlwZSA9IENPTlNUUl9DSEVDSzsKKwljb25zdHItPmNvbm5hbWUgPSBwZXJpb2QtPmNvbnN0 cmFpbnRuYW1lOworCWNvbnN0ci0+ZGVmZXJyYWJsZSA9IGZhbHNlOworCWNvbnN0ci0+aW5pdGRl ZmVycmVkID0gZmFsc2U7CisJY29uc3RyLT5sb2NhdGlvbiA9IC0xOworCWNvbnN0ci0+aXNfbm9f aW5oZXJpdCA9IGZhbHNlOworCWNvbnN0ci0+cmF3X2V4cHIgPSAoTm9kZSAqKSBtYWtlU2ltcGxl QV9FeHByKEFFWFBSX09QLAorCQkJCQkJCQkJCQkJIGdldF9vcG5hbWUodHlwZS0+bHRfb3ByKSwK KwkJCQkJCQkJCQkJCSAoTm9kZSAqKSBzY29sLAorCQkJCQkJCQkJCQkJIChOb2RlICopIGVjb2ws CisJCQkJCQkJCQkJCQkgMCk7CisJY29uc3RyLT5jb29rZWRfZXhwciA9IE5VTEw7CisJY29uc3Ry LT5za2lwX3ZhbGlkYXRpb24gPSBmYWxzZTsKKwljb25zdHItPmlzX2VuZm9yY2VkID0gdHJ1ZTsK Kwljb25zdHItPmluaXRpYWxseV92YWxpZCA9IHRydWU7CisKKwlyZXR1cm4gY29uc3RyOworfQor CisvKgorICogbWFrZV9yYW5nZV9jb2x1bW5fZm9yX3BlcmlvZAorICoKKyAqIEJ1aWxkcyBhIEdF TkVSQVRFRCBBTFdBWVMgcmFuZ2UgY29sdW1uIGJhc2VkIG9uIHRoZSBQRVJJT0QKKyAqIHN0YXJ0 L2VuZCBjb2x1bW5zLiBSZXR1cm5zIHRoZSBDb2x1bW5EZWYuCisgKi8KK0NvbHVtbkRlZiAqCitt YWtlX3JhbmdlX2NvbHVtbl9mb3JfcGVyaW9kKFBlcmlvZERlZiAqcGVyaW9kKQoreworCWNoYXIJ ICAgKnJhbmdlX3R5cGVfbmFtZXNwYWNlOworCWNoYXIJICAgKnJhbmdlX3R5cGVfbmFtZTsKKwlD b2x1bW5EZWYgICpjb2wgPSBtYWtlTm9kZShDb2x1bW5EZWYpOworCUNvbHVtblJlZiAgKnN0YXJ0 dmFyLAorCQkJICAgKmVuZHZhcjsKKwlFeHByCSAgICpyYW5nZUNvbnN0cnVjdG9yOworCisJaWYg KCFnZXRfdHlwbmFtZV9hbmRfbmFtZXNwYWNlKHBlcmlvZC0+cm5ndHlwaWQsICZyYW5nZV90eXBl X25hbWUsCisJCQkJCQkJCSAgICZyYW5nZV90eXBlX25hbWVzcGFjZSkpCisJCWVsb2coRVJST1Is ICJtaXNzaW5nIHJhbmdlIHR5cGUgJWQiLCBwZXJpb2QtPnJuZ3R5cGlkKTsKKworCXN0YXJ0dmFy ID0gbWFrZU5vZGUoQ29sdW1uUmVmKTsKKwlzdGFydHZhci0+ZmllbGRzID0gbGlzdF9tYWtlMSht YWtlU3RyaW5nKHBzdHJkdXAocGVyaW9kLT5zdGFydGNvbG5hbWUpKSk7CisJZW5kdmFyID0gbWFr ZU5vZGUoQ29sdW1uUmVmKTsKKwllbmR2YXItPmZpZWxkcyA9IGxpc3RfbWFrZTEobWFrZVN0cmlu Zyhwc3RyZHVwKHBlcmlvZC0+ZW5kY29sbmFtZSkpKTsKKwlyYW5nZUNvbnN0cnVjdG9yID0gKEV4 cHIgKikgbWFrZUZ1bmNDYWxsKAorCQkJCQkJCQkJCQkgbGlzdF9tYWtlMihtYWtlU3RyaW5nKHJh bmdlX3R5cGVfbmFtZXNwYWNlKSwgbWFrZVN0cmluZyhyYW5nZV90eXBlX25hbWUpKSwKKwkJCQkJ CQkJCQkJIGxpc3RfbWFrZTIoc3RhcnR2YXIsIGVuZHZhciksCisJCQkJCQkJCQkJCSBDT0VSQ0Vf RVhQTElDSVRfQ0FMTCwKKwkJCQkJCQkJCQkJIHBlcmlvZC0+bG9jYXRpb24pOworCisJY29sLT5j b2xuYW1lID0gcHN0cmR1cChwZXJpb2QtPnBlcmlvZG5hbWUpOworCWNvbC0+dHlwZU5hbWUgPSBt YWtlVHlwZU5hbWUocmFuZ2VfdHlwZV9uYW1lKTsKKwljb2wtPmNvbXByZXNzaW9uID0gTlVMTDsK Kwljb2wtPmluaGNvdW50ID0gMDsKKwljb2wtPmlzX2xvY2FsID0gdHJ1ZTsKKwljb2wtPmlzX25v dF9udWxsID0gdHJ1ZTsKKwljb2wtPmlzX2Zyb21fdHlwZSA9IGZhbHNlOworCWNvbC0+c3RvcmFn ZSA9IDA7CisJY29sLT5zdG9yYWdlX25hbWUgPSBOVUxMOworCWNvbC0+cmF3X2RlZmF1bHQgPSAo Tm9kZSAqKSByYW5nZUNvbnN0cnVjdG9yOworCWNvbC0+Y29va2VkX2RlZmF1bHQgPSBOVUxMOwor CWNvbC0+aWRlbnRpdHkgPSAwOworCWNvbC0+Z2VuZXJhdGVkID0gQVRUUklCVVRFX0dFTkVSQVRF RF9TVE9SRUQ7CisJY29sLT5jb2xsQ2xhdXNlID0gTlVMTDsKKwljb2wtPmNvbGxPaWQgPSBJbnZh bGlkT2lkOworCWNvbC0+ZmR3b3B0aW9ucyA9IE5JTDsKKwljb2wtPmxvY2F0aW9uID0gcGVyaW9k LT5sb2NhdGlvbjsKKworCXJldHVybiBjb2w7Cit9CisKKy8qCisgKiBWYWxpZGF0ZVBlcmlvZAor ICoKKyAqIExvb2sgdXAgdGhlIGF0dHJpYnV0ZXMgdXNlZCBieSB0aGUgUEVSSU9ELAorICogbWFr ZSBzdXJlIHRoZXkgZXhpc3QsIGFyZSBub3Qgc3lzdGVtIGNvbHVtbnMsCisgKiBhbmQgaGF2ZSB0 aGUgc2FtZSB0eXBlIGFuZCBjb2xsYXRpb24uCisgKgorICogQWRkIG91ciBmaW5kaW5ncyB0byB0 aGVzZSBQZXJpb2REZWYgZmllbGRzOgorICoKKyAqIGNvbHR5cGlkIC0gdGhlIHR5cGUgb2YgUEVS SU9EIGNvbHVtbnMuCisgKiBzdGFydGF0dG51bSAtIHRoZSBhdHRudW0gb2YgdGhlIHN0YXJ0IGNv bHVtbi4KKyAqIGVuZGF0dG51bSAtIHRoZSBhdHRudW0gb2YgdGhlIGVuZCBjb2x1bW4uCisgKiBy bmd0eXBpZCAtIHRoZSByYW5nZSB0eXBlIHRvIHVzZS4KKyAqIHJuZ2F0dG51bSAtIHRoZSBhdHRu dW0gb2YgYSBwcmUtZXhpc3RpbmcgcmFuZ2UgY29sdW1uLCBvciBJbnZhbGlkLgorICovCitzdGF0 aWMgdm9pZAorVmFsaWRhdGVQZXJpb2QoUmVsYXRpb24gcmVsLCBQZXJpb2REZWYgKnBlcmlvZCkK K3sKKwlIZWFwVHVwbGUJc3RhcnR0dXBsZTsKKwlIZWFwVHVwbGUJZW5kdHVwbGU7CisJRm9ybV9w Z19hdHRyaWJ1dGUgYXR0dHVwbGU7CisJT2lkCQkJYXR0Y29sbGF0aW9uOworCU9pZAkJCWVuZHR5 cGlkOworCU9pZAkJCWVuZGNvbGxhdGlvbjsKKworCS8qIEZpbmQgdGhlIHN0YXJ0IGNvbHVtbiAq LworCXN0YXJ0dHVwbGUgPSBTZWFyY2hTeXNDYWNoZUF0dE5hbWUoUmVsYXRpb25HZXRSZWxpZChy ZWwpLCBwZXJpb2QtPnN0YXJ0Y29sbmFtZSk7CisJaWYgKCFIZWFwVHVwbGVJc1ZhbGlkKHN0YXJ0 dHVwbGUpKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfVU5ERUZJTkVE X0NPTFVNTiksCisJCQkJIGVycm1zZygiY29sdW1uIFwiJXNcIiBvZiByZWxhdGlvbiBcIiVzXCIg ZG9lcyBub3QgZXhpc3QiLAorCQkJCQkJcGVyaW9kLT5zdGFydGNvbG5hbWUsIFJlbGF0aW9uR2V0 UmVsYXRpb25OYW1lKHJlbCkpKSk7CisJYXR0dHVwbGUgPSAoRm9ybV9wZ19hdHRyaWJ1dGUpIEdF VFNUUlVDVChzdGFydHR1cGxlKTsKKwlwZXJpb2QtPmNvbHR5cGlkID0gYXR0dHVwbGUtPmF0dHR5 cGlkOworCWF0dGNvbGxhdGlvbiA9IGF0dHR1cGxlLT5hdHRjb2xsYXRpb247CisJcGVyaW9kLT5z dGFydGF0dG51bSA9IGF0dHR1cGxlLT5hdHRudW07CisJUmVsZWFzZVN5c0NhY2hlKHN0YXJ0dHVw bGUpOworCisJLyogTWFrZSBzdXJlIGl0J3Mgbm90IGEgc3lzdGVtIGNvbHVtbiAqLworCWlmIChw ZXJpb2QtPnN0YXJ0YXR0bnVtIDw9IDApCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUo RVJSQ09ERV9JTlZBTElEX09CSkVDVF9ERUZJTklUSU9OKSwKKwkJCQkgZXJybXNnKCJjYW5ub3Qg dXNlIHN5c3RlbSBjb2x1bW4gXCIlc1wiIGluIHBlcmlvZCIsCisJCQkJCQlwZXJpb2QtPnN0YXJ0 Y29sbmFtZSkpKTsKKworCS8qIEZpbmQgdGhlIGVuZCBjb2x1bW4gKi8KKwllbmR0dXBsZSA9IFNl YXJjaFN5c0NhY2hlQXR0TmFtZShSZWxhdGlvbkdldFJlbGlkKHJlbCksIHBlcmlvZC0+ZW5kY29s bmFtZSk7CisJaWYgKCFIZWFwVHVwbGVJc1ZhbGlkKGVuZHR1cGxlKSkKKwkJZXJlcG9ydChFUlJP UiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX1VOREVGSU5FRF9DT0xVTU4pLAorCQkJCSBlcnJtc2co ImNvbHVtbiBcIiVzXCIgb2YgcmVsYXRpb24gXCIlc1wiIGRvZXMgbm90IGV4aXN0IiwKKwkJCQkJ CXBlcmlvZC0+ZW5kY29sbmFtZSwgUmVsYXRpb25HZXRSZWxhdGlvbk5hbWUocmVsKSkpKTsKKwlh dHR0dXBsZSA9IChGb3JtX3BnX2F0dHJpYnV0ZSkgR0VUU1RSVUNUKGVuZHR1cGxlKTsKKwllbmR0 eXBpZCA9IGF0dHR1cGxlLT5hdHR0eXBpZDsKKwllbmRjb2xsYXRpb24gPSBhdHR0dXBsZS0+YXR0 Y29sbGF0aW9uOworCXBlcmlvZC0+ZW5kYXR0bnVtID0gYXR0dHVwbGUtPmF0dG51bTsKKwlSZWxl YXNlU3lzQ2FjaGUoZW5kdHVwbGUpOworCisJLyogTWFrZSBzdXJlIGl0J3Mgbm90IGEgc3lzdGVt IGNvbHVtbiAqLworCWlmIChwZXJpb2QtPmVuZGF0dG51bSA8PSAwKQorCQllcmVwb3J0KEVSUk9S LAorCQkJCShlcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9PQkpFQ1RfREVGSU5JVElPTiksCisJCQkJ IGVycm1zZygiY2Fubm90IHVzZSBzeXN0ZW0gY29sdW1uIFwiJXNcIiBpbiBwZXJpb2QiLAorCQkJ CQkJcGVyaW9kLT5lbmRjb2xuYW1lKSkpOworCisJLyogQm90aCBjb2x1bW5zIG11c3QgYmUgb2Yg c2FtZSB0eXBlICovCisJaWYgKHBlcmlvZC0+Y29sdHlwaWQgIT0gZW5kdHlwaWQpCisJCWVyZXBv cnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9EQVRBVFlQRV9NSVNNQVRDSCksCisJCQkJ IGVycm1zZygic3RhcnQgYW5kIGVuZCBjb2x1bW5zIG9mIHBlcmlvZCBtdXN0IGJlIG9mIHNhbWUg dHlwZSIpKSk7CisKKwkvKiBCb3RoIGNvbHVtbnMgbXVzdCBoYXZlIHRoZSBzYW1lIGNvbGxhdGlv biAqLworCWlmIChhdHRjb2xsYXRpb24gIT0gZW5kY29sbGF0aW9uKQorCQllcmVwb3J0KEVSUk9S LAorCQkJCShlcnJjb2RlKEVSUkNPREVfQ09MTEFUSU9OX01JU01BVENIKSwKKwkJCQkgZXJybXNn KCJzdGFydCBhbmQgZW5kIGNvbHVtbnMgb2YgcGVyaW9kIG11c3QgaGF2ZSBzYW1lIGNvbGxhdGlv biIpKSk7CisKKwkvKiBHZXQgdGhlIHJhbmdlIHR5cGUgYmFzZWQgb24gdGhlIHN0YXJ0L2VuZCBj b2xzIG9yIHRoZSB1c2VyJ3MgY2hvaWNlICovCisJcGVyaW9kLT5ybmd0eXBpZCA9IGNob29zZV9y YW5nZXR5cGVfZm9yX3BlcmlvZChwZXJpb2QpOworCisJLyoKKwkgKiBJZiB0aGUgR0VORVJBVEVE IGNvbHVtbnMgc2hvdWxkIGFscmVhZHkgZXhpc3QsIG1ha2Ugc3VyZSBpdCBpcworCSAqIHNlbnNp YmxlLgorCSAqLworCWlmIChwZXJpb2QtPmNvbGV4aXN0cykKKwl7CisJCUhlYXBUdXBsZQlybmd0 dXBsZSA9IFNlYXJjaFN5c0NhY2hlQXR0TmFtZShSZWxhdGlvbkdldFJlbGlkKHJlbCksCisJCQkJ CQkJCQkJCQkJIHBlcmlvZC0+cGVyaW9kbmFtZSk7CisKKwkJaWYgKCFIZWFwVHVwbGVJc1ZhbGlk KHJuZ3R1cGxlKSkKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVSUkNPREVfVU5E RUZJTkVEX0NPTFVNTiksCisJCQkJCSBlcnJtc2coImNvbHVtbiBcIiVzXCIgb2YgcmVsYXRpb24g XCIlc1wiIGRvZXMgbm90IGV4aXN0IiwKKwkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUsIFJlbGF0 aW9uR2V0UmVsYXRpb25OYW1lKHJlbCkpKSk7CisJCWF0dHR1cGxlID0gKEZvcm1fcGdfYXR0cmli dXRlKSBHRVRTVFJVQ1Qocm5ndHVwbGUpOworCisJCS8qCisJCSAqIE1ha2Ugc3VyZSB0aGUgZXhp c3RpbmcgY29sdW1uIG1hdGNoZXMgd2hhdCB3ZSB3b3VsZCBoYXZlIGNyZWF0ZWQuCisJCSAqIEZp cnN0IG9mIGFsbCwgaXQgbXVzdCBiZSBHRU5FUkFURUQuCisJCSAqLworCQlpZiAoYXR0dHVwbGUt PmF0dGdlbmVyYXRlZCA9PSAnXDAnKQorCQkJZXJlcG9ydChFUlJPUiwgKGVycm1zZygiUGVyaW9k ICVzIHVzZXMgYSBub24tZ2VuZXJhdGVkIGNvbHVtbiIsCisJCQkJCQkJcGVyaW9kLT5wZXJpb2Ru YW1lKSkpOworCisJCS8qIFRoZSBHRU5FUkFURUQgY29sdW1uIG11c3QgYmUgU1RPUkVELiAqLwor CQlpZiAoYXR0dHVwbGUtPmF0dGdlbmVyYXRlZCAhPSBBVFRSSUJVVEVfR0VORVJBVEVEX1NUT1JF RCkKKwkJCWVyZXBvcnQoRVJST1IsIChlcnJtc2coIlBlcmlvZCAlcyB1c2VzIGEgZ2VuZXJhdGVk IGNvbHVtbiB0aGF0IGlzIG5vdCBTVE9SRUQiLAorCQkJCQkJCXBlcmlvZC0+cGVyaW9kbmFtZSkp KTsKKworCQkvKiBUaGUgR0VORVJBVEVEIGNvbHVtbiBtdXN0IG5vdCBhbGxvdyBudWxscy4gKi8K KwkJaWYgKCFhdHR0dXBsZS0+YXR0bm90bnVsbCAmJiAhSXNCaW5hcnlVcGdyYWRlKQorCQkJZXJl cG9ydChFUlJPUiwgKGVycm1zZygiUGVyaW9kICVzIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHRo YXQgYWxsb3dzIG51bGxzIiwKKwkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJLyog VGhlIEdFTkVSQVRFRCBjb2x1bW4gbXVzdCBtYXRjaCBvdXIgcmFuZ2V0eXBlLiAqLworCQlpZiAo cGVyaW9kLT5ybmd0eXBpZCAhPSBhdHR0dXBsZS0+YXR0dHlwaWQpCisJCQllcmVwb3J0KEVSUk9S LCAoZXJybXNnKCJQZXJpb2QgJXMgdXNlcyBhIGdlbmVyYXRlZCBjb2x1bW4gd2l0aCB0aGUgd3Jv bmcgdHlwZSIsCisJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCisJCS8qCisJCSAqIFRo ZSBHRU5FUkFURUQgY29sdW1uIG11c3Qgbm90IGJlIGluaGVyaXRlZC4KKwkJICogWFhYOiBJZiB0 aGUgUEVSSU9EIGlzIGluaGVyaXRlZCwgdGhleSBtdXN0IGNvbWUgZnJvbSB0aGUgc2FtZSBwYXJl bnQuCisJCSAqLworCQlpZiAoIWF0dHR1cGxlLT5hdHRpc2xvY2FsKQorCQkJZXJlcG9ydChFUlJP UiwgKGVycm1zZygiUGVyaW9kICVzIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHRoYXQgaXMgaW5o ZXJpdGVkIiwKKwkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJLyoKKwkJICogWFhY OiBXZSBzaG91bGQgY2hlY2sgdGhlIEdFTkVSQVRFRCBleHByZXNzaW9uIGFsc28sIGJ1dCB0aGF0 IGlzCisJCSAqIGhhcmQgdG8gZG8gYmVjYXVzZSBvbmUgaXMgY29va2VkIGFuZCBvbmUgaXMgcmF3 LgorCQkgKi8KKworCQlwZXJpb2QtPnJuZ2F0dG51bSA9IGF0dHR1cGxlLT5hdHRudW07CisKKwkJ UmVsZWFzZVN5c0NhY2hlKHJuZ3R1cGxlKTsKKwl9Cit9CisKKy8qCisgKiBjaG9vc2VfcmFuZ2V0 eXBlX2Zvcl9wZXJpb2QKKyAqCisgKiBGaW5kIGEgc3VpdGFibGUgcmFuZ2UgdHlwZSBmb3Igb3Bl cmF0aW9ucyBpbnZvbHZpbmcgdGhpcyBwZXJpb2QuCisgKiBVc2UgdGhlIHJhbmdldHlwZSBvcHRp b24gaWYgcHJvdmlkZWQsIG90aGVyd2lzZSB0cnkgdG8gZmluZCBhCisgKiBub24tYW1iaWd1b3Vz IGV4aXN0aW5nIHR5cGUuCisgKi8KK09pZAorY2hvb3NlX3JhbmdldHlwZV9mb3JfcGVyaW9kKFBl cmlvZERlZiAqcGVyaW9kKQoreworCU9pZAkJCXJuZ3R5cGlkOworCisJaWYgKHBlcmlvZC0+cmFu Z2V0eXBlbmFtZSAhPSBOVUxMKQorCXsKKwkJLyogTWFrZSBzdXJlIGl0IGV4aXN0cyAqLworCQly bmd0eXBpZCA9IFR5cGVuYW1lR2V0VHlwaWRFeHRlbmRlZChwZXJpb2QtPnJhbmdldHlwZW5hbWUs IGZhbHNlKTsKKwkJaWYgKHJuZ3R5cGlkID09IEludmFsaWRPaWQpCisJCQllcmVwb3J0KEVSUk9S LCAoZXJyY29kZShFUlJDT0RFX1VOREVGSU5FRF9PQkpFQ1QpLAorCQkJCQkJCWVycm1zZygiUmFu Z2UgdHlwZSAlcyBub3QgZm91bmQiLAorCQkJCQkJCQkgICBwZXJpb2QtPnJhbmdldHlwZW5hbWUp KSk7CisKKwkJLyogTWFrZSBzdXJlIGl0IGlzIGEgcmFuZ2UgdHlwZSAqLworCQlpZiAoIXR5cGVf aXNfcmFuZ2Uocm5ndHlwaWQpKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJS Q09ERV9EQVRBVFlQRV9NSVNNQVRDSCksCisJCQkJCSBlcnJtc2coIlR5cGUgJXMgaXMgbm90IGEg cmFuZ2UgdHlwZSIsCisJCQkJCQkJcGVyaW9kLT5yYW5nZXR5cGVuYW1lKSkpOworCisJCS8qIE1h a2Ugc3VyZSBpdCBtYXRjaGVzIHRoZSBjb2x1bW4gdHlwZSAqLworCQlpZiAoZ2V0X3JhbmdlX3N1 YnR5cGUocm5ndHlwaWQpICE9IHBlcmlvZC0+Y29sdHlwaWQpCisJCQllcmVwb3J0KEVSUk9SLAor CQkJCQkoZXJyY29kZShFUlJDT0RFX0RBVEFUWVBFX01JU01BVENIKSwKKwkJCQkJIGVycm1zZygi UmFuZ2UgdHlwZSAlcyBkb2VzIG5vdCBtYXRjaCBjb2x1bW4gdHlwZSAlcyIsCisJCQkJCQkJcGVy aW9kLT5yYW5nZXR5cGVuYW1lLAorCQkJCQkJCWZvcm1hdF90eXBlX2JlKHBlcmlvZC0+Y29sdHlw aWQpKSkpOworCX0KKwllbHNlCisJeworCQlybmd0eXBpZCA9IGdldF9zdWJ0eXBlX3JhbmdlKHBl cmlvZC0+Y29sdHlwaWQpOworCQlpZiAocm5ndHlwaWQgPT0gSW52YWxpZE9pZCkKKwkJCWVyZXBv cnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVSUkNPREVfVU5ERUZJTkVEX09CSkVDVCksCisJCQkJ CSBlcnJtc2coIm5vIHJhbmdlIHR5cGUgZm9yICVzIGZvdW5kIGZvciBwZXJpb2QgJXMiLAorCQkJ CQkJCWZvcm1hdF90eXBlX2JlKHBlcmlvZC0+Y29sdHlwaWQpLAorCQkJCQkJCXBlcmlvZC0+cGVy aW9kbmFtZSksCisJCQkJCSBlcnJoaW50KCJZb3UgY2FuIGRlZmluZSBhIGN1c3RvbSByYW5nZSB0 eXBlIHdpdGggQ1JFQVRFIFRZUEUiKSkpOworCisJfQorCisJcmV0dXJuIHJuZ3R5cGlkOworfQor CitzdGF0aWMgdm9pZAorQWRkUmVsYXRpb25OZXdQZXJpb2QoUmVsYXRpb24gcmVsLCBQZXJpb2RE ZWYgKnBlcmlvZCkKK3sKKwlSZWxhdGlvbglhdHRyZWxhdGlvbjsKKwlPaWQJCQljb25vaWQ7CisJ Q29uc3RyYWludCAqY29uc3RyOworCUxpc3QJICAgKm5ld2NvbnN0cnM7CisKKwlhdHRyZWxhdGlv biA9IHRhYmxlX29wZW4oQXR0cmlidXRlUmVsYXRpb25JZCwgUm93RXhjbHVzaXZlTG9jayk7CisK KwkvKiBGaW5kIHRoZSBHRU5FUkFURUQgcmFuZ2UgY29sdW1uICovCisKKwlwZXJpb2QtPnJuZ2F0 dG51bSA9IGdldF9hdHRudW0oUmVsYXRpb25HZXRSZWxpZChyZWwpLCBwZXJpb2QtPnBlcmlvZG5h bWUpOworCWlmIChwZXJpb2QtPnJuZ2F0dG51bSA9PSBJbnZhbGlkQXR0ck51bWJlcikKKwkJZWxv ZyhFUlJPUiwgIm1pc3NpbmcgYXR0cmlidXRlICVzIiwgcGVyaW9kLT5wZXJpb2RuYW1lKTsKKwor CS8qIFRoZSBwYXJzZXIgaGFzIGFscmVhZHkgZm91bmQgcGVyaW9kLT5jb2x0eXBpZCAqLworCisJ Y29uc3RyID0gbWFrZV9jb25zdHJhaW50X2Zvcl9wZXJpb2QocmVsLCBwZXJpb2QpOworCW5ld2Nv bnN0cnMgPSBBZGRSZWxhdGlvbk5ld0NvbnN0cmFpbnRzKHJlbCwgTklMLCBsaXN0X21ha2UxKGNv bnN0ciksIGZhbHNlLAorCQkJCQkJCQkJCSAgIHRydWUsIHRydWUsIE5VTEwpOworCWNvbm9pZCA9 ICgoQ29va2VkQ29uc3RyYWludCAqKSBsaW5pdGlhbChuZXdjb25zdHJzKSktPmNvbm9pZDsKKwor CS8qIFNhdmUgaXQgKi8KKwlTdG9yZVBlcmlvZChyZWwsIHBlcmlvZC0+cGVyaW9kbmFtZSwgcGVy aW9kLT5zdGFydGF0dG51bSwgcGVyaW9kLT5lbmRhdHRudW0sCisJCQkJcGVyaW9kLT5ybmdhdHRu dW0sIGNvbm9pZCk7CisKKwl0YWJsZV9jbG9zZShhdHRyZWxhdGlvbiwgUm93RXhjbHVzaXZlTG9j ayk7Cit9CisKIC8qCiAgKiBFbWl0IHRoZSByaWdodCBlcnJvciBvciB3YXJuaW5nIG1lc3NhZ2Ug Zm9yIGEgIkRST1AiIGNvbW1hbmQgaXNzdWVkIG9uIGEKICAqIG5vbi1leGlzdGVudCByZWxhdGlv bgpAQCAtMjc0Nyw3ICszMjA1LDcgQEAgTWVyZ2VBdHRyaWJ1dGVzKExpc3QgKmNvbHVtbnMsIGNv bnN0IExpc3QgKnN1cGVycywgY2hhciByZWxwZXJzaXN0ZW5jZSwKIAkJICogdGhhdCdzIG5vdCBt YXJrZWQgTk8gSU5IRVJJVCAoZXZlbiBpZiBub3QgdmFsaWQpLgogCQkgKi8KIAkJbm5jb25zdHJz ID0gUmVsYXRpb25HZXROb3ROdWxsQ29uc3RyYWludHMoUmVsYXRpb25HZXRSZWxpZChyZWxhdGlv biksCi0JCQkJCQkJCQkJCQkgIHRydWUsIGZhbHNlKTsKKwkJCQkJCQkJCQkJCSAgdHJ1ZSwgZmFs c2UsIE5VTEwpOwogCQlmb3JlYWNoX3B0cihDb29rZWRDb25zdHJhaW50LCBjYywgbm5jb25zdHJz KQogCQkJbm5jb2xzID0gYm1zX2FkZF9tZW1iZXIobm5jb2xzLCBjYy0+YXR0bnVtKTsKIApAQCAt MzE0MCw2ICszNTk4LDE3MiBAQCBNZXJnZUF0dHJpYnV0ZXMoTGlzdCAqY29sdW1ucywgY29uc3Qg TGlzdCAqc3VwZXJzLCBjaGFyIHJlbHBlcnNpc3RlbmNlLAogfQogCiAKKy8qLS0tLS0tLS0tLQor ICogTWVyZ2VQZXJpb2RzCisgKgkJUmV0dXJucyBuZXcgcGVyaW9kIGxpc3QgZ2l2ZW4gaW5pdGlh bCBwZXJpb2RzIGFuZCBzdXBlcmNsYXNzZXMuCisgKgorICogRm9yIG5vdyB3ZSBkb24ndCBzdXBw b3J0IGluaGVyaXRlbmNlIHdpdGggUEVSSU9EcywKKyAqIGJ1dCB3ZSBtaWdodCBtYWtlIGl0IHdv cmsgZXZlbnR1YWxseS4KKyAqCisgKiBXZSBjYW4gb21pdCBsb3RzIG9mIGNoZWNrcyBoZXJlIGFu ZCBhc3N1bWUgTWVyZ2VBdHRyaWJ1dGVzIGFscmVhZHkgZGlkIHRoZW0sCisgKiBmb3IgZXhhbXBs ZSB0aGF0IGNoaWxkICYgcGFyZW50cyBhcmUgbm90IGEgbWl4IG9mIHBlcm1hbmVudCBhbmQgdGVt cC4KKyAqLworc3RhdGljIExpc3QgKgorTWVyZ2VQZXJpb2RzKGNoYXIgKnJlbG5hbWUsIExpc3Qg KnBlcmlvZHMsIExpc3QgKnRhYmxlRWx0cywgTGlzdCAqc3VwZXJzKQoreworCUxpc3RDZWxsICAg KmVudHJ5OworCisJLyogSWYgd2UgaGF2ZSBhIFBFUklPRCB0aGVuIHN1cGVycyBtdXN0IGJlIGVt cHR5LiAqLworCisJaWYgKGxpc3RfbGVuZ3RoKHBlcmlvZHMpID4gMCAmJiBsaXN0X2xlbmd0aChz dXBlcnMpID4gMCkKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX0ZFQVRV UkVfTk9UX1NVUFBPUlRFRCksCisJCQkJIGVycm1zZygiSW5oZXJpdGluZyBpcyBub3Qgc3VwcG9y dGVkIHdoZW4gYSB0YWJsZSBoYXMgYSBQRVJJT0QiKSkpOworCisJLyogSWYgYW55IHBhcmVudCB0 YWJsZSBoYXMgYSBQRVJJT0QsIHRoZW4gZmFpbC4gKi8KKworCWZvcmVhY2goZW50cnksIHN1cGVy cykKKwl7CisJCU9pZAkJCXBhcmVudCA9IGxmaXJzdF9vaWQoZW50cnkpOworCQlSZWxhdGlvbgly ZWxhdGlvbjsKKwkJUmVsYXRpb24JcGdfcGVyaW9kOworCQlTeXNTY2FuRGVzYyBzY2FuOworCQlT Y2FuS2V5RGF0YSBza2V5WzFdOworCQlIZWFwVHVwbGUJdHVwbGU7CisKKwkJLyogY2FsbGVyIGFs cmVhZHkgZ290IGxvY2sgKi8KKwkJcmVsYXRpb24gPSB0YWJsZV9vcGVuKHBhcmVudCwgTm9Mb2Nr KTsKKwkJcGdfcGVyaW9kID0gdGFibGVfb3BlbihQZXJpb2RSZWxhdGlvbklkLCBBY2Nlc3NTaGFy ZUxvY2spOworCisJCVNjYW5LZXlJbml0KCZza2V5WzBdLAorCQkJCQlBbnVtX3BnX3BlcmlvZF9w ZXJyZWxpZCwKKwkJCQkJQlRFcXVhbFN0cmF0ZWd5TnVtYmVyLCBGX09JREVRLAorCQkJCQlPYmpl Y3RJZEdldERhdHVtKHBhcmVudCkpOworCisJCXNjYW4gPSBzeXN0YWJsZV9iZWdpbnNjYW4ocGdf cGVyaW9kLCBQZXJpb2RSZWxpZE5hbWVJbmRleElkLCB0cnVlLAorCQkJCQkJCQkgIE5VTEwsIDEs IHNrZXkpOworCisJCWlmIChIZWFwVHVwbGVJc1ZhbGlkKHR1cGxlID0gc3lzdGFibGVfZ2V0bmV4 dChzY2FuKSkpCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJDT0RFX0ZFQVRV UkVfTk9UX1NVUFBPUlRFRCksCisJCQkJCSBlcnJtc2coIkluaGVyaXRpbmcgZnJvbSBhIHRhYmxl IHdpdGggYSBQRVJJT0QgaXMgbm90IHN1cHBvcnRlZCIpKSk7CisKKwkJc3lzdGFibGVfZW5kc2Nh bihzY2FuKTsKKwkJdGFibGVfY2xvc2UocGdfcGVyaW9kLCBBY2Nlc3NTaGFyZUxvY2spOworCQl0 YWJsZV9jbG9zZShyZWxhdGlvbiwgTm9Mb2NrKTsKKwl9CisKKwkvKgorCSAqIEZpbmQgdGhlIHN0 YXJ0ICYgZW5kIGNvbHVtbnMgYW5kIGdldCB0aGVpciBhdHRubyBhbmQgdHlwZS4gSW4gdGhlIHNh bWUKKwkgKiBwYXNzLCBtYWtlIHN1cmUgdGhlIHBlcmlvZCBkb2Vzbid0IGNvbmZsaWN0IHdpdGgg YW55IGNvbHVtbiBuYW1lcy4gQWxzbworCSAqIG1ha2Ugc3VyZSB0aGUgc2FtZSBwZXJpb2QgbmFt ZSBpc24ndCB1c2VkIG1vcmUgdGhhbiBvbmNlLgorCSAqLworCWZvcmVhY2goZW50cnksIHBlcmlv ZHMpCisJeworCQlQZXJpb2REZWYgICpwZXJpb2QgPSBsZmlyc3QoZW50cnkpOworCQlMaXN0Q2Vs bCAgICplbnRyeTI7CisJCWludAkJCWkgPSAxOworCQlPaWQJCQlzdGFydGNvbHR5cGlkID0gSW52 YWxpZE9pZDsKKwkJT2lkCQkJZW5kY29sdHlwaWQgPSBJbnZhbGlkT2lkOworCQlPaWQJCQlzdGFy dGNvbGNvbGxhdGlvbiA9IEludmFsaWRPaWQ7CisJCU9pZAkJCWVuZGNvbGNvbGxhdGlvbiA9IElu dmFsaWRPaWQ7CisKKwkJcGVyaW9kLT5zdGFydGF0dG51bSA9IEludmFsaWRBdHRyTnVtYmVyOwor CQlwZXJpb2QtPmVuZGF0dG51bSA9IEludmFsaWRBdHRyTnVtYmVyOworCisJCWlmIChTeXN0ZW1B dHRyaWJ1dGVCeU5hbWUocGVyaW9kLT5wZXJpb2RuYW1lKSAhPSBOVUxMKQorCQkJZXJlcG9ydChF UlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9EVVBMSUNBVEVfQ09MVU1OKSwKKwkJCQkJIGVy cm1zZygicGVyaW9kIG5hbWUgXCIlc1wiIGNvbmZsaWN0cyB3aXRoIGEgc3lzdGVtIGNvbHVtbiBu YW1lIiwKKwkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJZm9yZWFjaChlbnRyeTIs IHBlcmlvZHMpCisJCXsKKwkJCVBlcmlvZERlZiAgKnBlcmlvZDIgPSBsZmlyc3QoZW50cnkyKTsK KworCQkJaWYgKHBlcmlvZCAhPSBwZXJpb2QyICYmIHN0cmNtcChwZXJpb2QtPnBlcmlvZG5hbWUs IHBlcmlvZDItPnBlcmlvZG5hbWUpID09IDApCisJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCShl cnJjb2RlKEVSUkNPREVfRFVQTElDQVRFX09CSkVDVCksCisJCQkJCQkgZXJybXNnKCJwZXJpb2Qg bmFtZSBcIiVzXCIgc3BlY2lmaWVkIG1vcmUgdGhhbiBvbmNlIiwKKwkJCQkJCQkJcGVyaW9kLT5w ZXJpb2RuYW1lKSkpOworCQl9CisKKwkJZm9yZWFjaChlbnRyeTIsIHRhYmxlRWx0cykKKwkJewor CQkJQ29sdW1uRGVmICAqY29sID0gbGZpcnN0KGVudHJ5Mik7CisJCQlpbnQzMgkJYXR0dHlwbW9k OworCQkJQWNsUmVzdWx0CWFjbHJlc3VsdDsKKworCQkJaWYgKCFwZXJpb2QtPmNvbGV4aXN0cyAm JiBzdHJjbXAocGVyaW9kLT5wZXJpb2RuYW1lLCBjb2wtPmNvbG5hbWUpID09IDApCisJCQkJZXJl cG9ydChFUlJPUiwKKwkJCQkJCShlcnJjb2RlKEVSUkNPREVfRFVQTElDQVRFX0NPTFVNTiksCisJ CQkJCQkgZXJybXNnKCJwZXJpb2QgbmFtZSBcIiVzXCIgY29uZmxpY3RzIHdpdGggYSBjb2x1bW4g bmFtZSIsCisJCQkJCQkJCXBlcmlvZC0+cGVyaW9kbmFtZSkpKTsKKworCQkJaWYgKHN0cmNtcChw ZXJpb2QtPnN0YXJ0Y29sbmFtZSwgY29sLT5jb2xuYW1lKSA9PSAwKQorCQkJeworCQkJCXBlcmlv ZC0+c3RhcnRhdHRudW0gPSBpOworCisJCQkJdHlwZW5hbWVUeXBlSWRBbmRNb2QoTlVMTCwgY29s LT50eXBlTmFtZSwgJnN0YXJ0Y29sdHlwaWQsCisJCQkJCQkJCQkgJmF0dHR5cG1vZCk7CisKKwkJ CQlhY2xyZXN1bHQgPSBvYmplY3RfYWNsY2hlY2soVHlwZVJlbGF0aW9uSWQsIHN0YXJ0Y29sdHlw aWQsCisJCQkJCQkJCQkJCUdldFVzZXJJZCgpLCBBQ0xfVVNBR0UpOworCQkJCWlmIChhY2xyZXN1 bHQgIT0gQUNMQ0hFQ0tfT0spCisJCQkJCWFjbGNoZWNrX2Vycm9yX3R5cGUoYWNscmVzdWx0LCBz dGFydGNvbHR5cGlkKTsKKworCQkJCXN0YXJ0Y29sY29sbGF0aW9uID0gR2V0Q29sdW1uRGVmQ29s bGF0aW9uKE5VTEwsIGNvbCwgc3RhcnRjb2x0eXBpZCk7CisJCQl9CisKKwkJCWlmIChzdHJjbXAo cGVyaW9kLT5lbmRjb2xuYW1lLCBjb2wtPmNvbG5hbWUpID09IDApCisJCQl7CisJCQkJcGVyaW9k LT5lbmRhdHRudW0gPSBpOworCisJCQkJdHlwZW5hbWVUeXBlSWRBbmRNb2QoTlVMTCwgY29sLT50 eXBlTmFtZSwgJmVuZGNvbHR5cGlkLAorCQkJCQkJCQkJICZhdHR0eXBtb2QpOworCisJCQkJYWNs cmVzdWx0ID0gb2JqZWN0X2FjbGNoZWNrKFR5cGVSZWxhdGlvbklkLCBlbmRjb2x0eXBpZCwKKwkJ CQkJCQkJCQkJR2V0VXNlcklkKCksIEFDTF9VU0FHRSk7CisJCQkJaWYgKGFjbHJlc3VsdCAhPSBB Q0xDSEVDS19PSykKKwkJCQkJYWNsY2hlY2tfZXJyb3JfdHlwZShhY2xyZXN1bHQsIGVuZGNvbHR5 cGlkKTsKKworCQkJCWVuZGNvbGNvbGxhdGlvbiA9IEdldENvbHVtbkRlZkNvbGxhdGlvbihOVUxM LCBjb2wsIGVuZGNvbHR5cGlkKTsKKwkJCX0KKworCQkJaSsrOworCQl9CisKKwkJLyogRGlkIHdl IGZpbmQgdGhlIGNvbHVtbnM/ICovCisJCWlmIChwZXJpb2QtPnN0YXJ0YXR0bnVtID09IEludmFs aWRBdHRyTnVtYmVyKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9V TkRFRklORURfQ09MVU1OKSwKKwkJCQkJIGVycm1zZygiY29sdW1uIFwiJXNcIiBvZiByZWxhdGlv biBcIiVzXCIgZG9lcyBub3QgZXhpc3QiLAorCQkJCQkJCXBlcmlvZC0+c3RhcnRjb2xuYW1lLCBy ZWxuYW1lKSkpOworCQlpZiAocGVyaW9kLT5lbmRhdHRudW0gPT0gSW52YWxpZEF0dHJOdW1iZXIp CisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJDT0RFX1VOREVGSU5FRF9DT0xV TU4pLAorCQkJCQkgZXJybXNnKCJjb2x1bW4gXCIlc1wiIG9mIHJlbGF0aW9uIFwiJXNcIiBkb2Vz IG5vdCBleGlzdCIsCisJCQkJCQkJcGVyaW9kLT5lbmRjb2xuYW1lLCByZWxuYW1lKSkpOworCisJ CS8qIEJvdGggY29sdW1ucyBtdXN0IGJlIG9mIHNhbWUgdHlwZSAqLworCQlpZiAoc3RhcnRjb2x0 eXBpZCAhPSBlbmRjb2x0eXBpZCkKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVS UkNPREVfREFUQVRZUEVfTUlTTUFUQ0gpLAorCQkJCQkgZXJybXNnKCJzdGFydCBhbmQgZW5kIGNv bHVtbnMgb2YgcGVyaW9kIG11c3QgYmUgb2Ygc2FtZSB0eXBlIikpKTsKKworCQkvKiBCb3RoIGNv bHVtbnMgbXVzdCBoYXZlIHRoZSBzYW1lIGNvbGxhdGlvbiAqLworCQlpZiAoc3RhcnRjb2xjb2xs YXRpb24gIT0gZW5kY29sY29sbGF0aW9uKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNv ZGUoRVJSQ09ERV9DT0xMQVRJT05fTUlTTUFUQ0gpLAorCQkJCQkgZXJybXNnKCJzdGFydCBhbmQg ZW5kIGNvbHVtbnMgb2YgcGVyaW9kIG11c3QgaGF2ZSBzYW1lIGNvbGxhdGlvbiIpKSk7CisKKwkJ cGVyaW9kLT5jb2x0eXBpZCA9IHN0YXJ0Y29sdHlwaWQ7CisJCXBlcmlvZC0+cm5ndHlwaWQgPSBj aG9vc2VfcmFuZ2V0eXBlX2Zvcl9wZXJpb2QocGVyaW9kKTsKKwl9CisKKwlyZXR1cm4gcGVyaW9k czsKK30KKwogLyoKICAqIE1lcmdlQ2hlY2tDb25zdHJhaW50CiAgKgkJVHJ5IHRvIG1lcmdlIGFu IGluaGVyaXRlZCBDSEVDSyBjb25zdHJhaW50IHdpdGggcHJldmlvdXMgb25lcwpAQCAtNDU0Nywx MiArNTE3MSwxMiBAQCBBbHRlclRhYmxlKEFsdGVyVGFibGVTdG10ICpzdG10LCBMT0NLTU9ERSBs b2NrbW9kZSwKICAqIGV4aXN0aW5nIHF1ZXJ5IHBsYW5zLiAgT24gdGhlIGFzc3VtcHRpb24gaXQn cyBub3QgdXNlZCBmb3Igc3VjaCwgd2UKICAqIGRvbid0IGhhdmUgdG8gcmVqZWN0IHBlbmRpbmcg QUZURVIgdHJpZ2dlcnMsIGVpdGhlci4KICAqCi0gKiBBbHNvLCBzaW5jZSB3ZSBkb24ndCBoYXZl IGFuIEFsdGVyVGFibGVVdGlsaXR5Q29udGV4dCwgdGhpcyBjYW5ub3QgYmUKKyAqIEFsc28sIGlm IHlvdSBkb24ndCBwYXNzIGFuIEFsdGVyVGFibGVVdGlsaXR5Q29udGV4dCwgdGhpcyBjYW5ub3Qg YmUKICAqIHVzZWQgZm9yIGFueSBzdWJjb21tYW5kIHR5cGVzIHRoYXQgcmVxdWlyZSBwYXJzZSB0 cmFuc2Zvcm1hdGlvbiBvcgogICogY291bGQgZ2VuZXJhdGUgc3ViY29tbWFuZHMgdGhhdCBoYXZl IHRvIGJlIHBhc3NlZCB0byBQcm9jZXNzVXRpbGl0eS4KICAqLwogdm9pZAotQWx0ZXJUYWJsZUlu dGVybmFsKE9pZCByZWxpZCwgTGlzdCAqY21kcywgYm9vbCByZWN1cnNlKQorQWx0ZXJUYWJsZUlu dGVybmFsKE9pZCByZWxpZCwgTGlzdCAqY21kcywgYm9vbCByZWN1cnNlLCBBbHRlclRhYmxlVXRp bGl0eUNvbnRleHQgKmNvbnRleHQpCiB7CiAJUmVsYXRpb24JcmVsOwogCUxPQ0tNT0RFCWxvY2tt b2RlID0gQWx0ZXJUYWJsZUdldExvY2tMZXZlbChjbWRzKTsKQEAgLTQ1NjEsNyArNTE4NSw3IEBA IEFsdGVyVGFibGVJbnRlcm5hbChPaWQgcmVsaWQsIExpc3QgKmNtZHMsIGJvb2wgcmVjdXJzZSkK IAogCUV2ZW50VHJpZ2dlckFsdGVyVGFibGVSZWxpZChyZWxpZCk7CiAKLQlBVENvbnRyb2xsZXIo TlVMTCwgcmVsLCBjbWRzLCByZWN1cnNlLCBsb2NrbW9kZSwgTlVMTCk7CisJQVRDb250cm9sbGVy KE5VTEwsIHJlbCwgY21kcywgcmVjdXJzZSwgbG9ja21vZGUsIGNvbnRleHQpOwogfQogCiAvKgpA QCAtNDY1NCw2ICs1Mjc4LDkgQEAgQWx0ZXJUYWJsZUdldExvY2tMZXZlbChMaXN0ICpjbWRzKQog CQkJY2FzZSBBVF9FbmFibGVSZXBsaWNhUnVsZToJLyogbWF5IGNoYW5nZSBTRUxFQ1QgcnVsZXMg Ki8KIAkJCWNhc2UgQVRfRW5hYmxlUnVsZTogLyogbWF5IGNoYW5nZSBTRUxFQ1QgcnVsZXMgKi8K IAkJCWNhc2UgQVRfRGlzYWJsZVJ1bGU6CS8qIG1heSBjaGFuZ2UgU0VMRUNUIHJ1bGVzICovCisJ CQljYXNlIEFUX0FkZFBlcmlvZDoJLyogc2hhcmVzIG5hbWVzcGFjZSB3aXRoIGNvbHVtbnMsIGFk ZHMKKwkJCQkJCQkJICogY29uc3RyYWludCAqLworCQkJY2FzZSBBVF9Ecm9wUGVyaW9kOgogCQkJ CWNtZF9sb2NrbW9kZSA9IEFjY2Vzc0V4Y2x1c2l2ZUxvY2s7CiAJCQkJYnJlYWs7CiAKQEAgLTQ5 NzMsNiArNTYwMCwxNyBAQCBBVFByZXBDbWQoTGlzdCAqKndxdWV1ZSwgUmVsYXRpb24gcmVsLCBB bHRlclRhYmxlQ21kICpjbWQsCiAJCQkvKiBUaGlzIGNvbW1hbmQgbmV2ZXIgcmVjdXJzZXMgKi8K IAkJCXBhc3MgPSBBVF9QQVNTX0FERF9PVEhFUkNPTlNUUjsKIAkJCWJyZWFrOworCQljYXNlIEFU X0FkZFBlcmlvZDoJCS8qIEFMVEVSIFRBQkxFIC4uLiBBREQgUEVSSU9EIEZPUiBuYW1lIChzdGFy dCwKKwkJCQkJCQkJICogZW5kKSAqLworCQkJQVRTaW1wbGVQZXJtaXNzaW9ucyhjbWQtPnN1YnR5 cGUsIHJlbCwgQVRUX1RBQkxFKTsKKwkJCUFUUHJlcEFkZFBlcmlvZCh3cXVldWUsIHJlbCwgY21k LCBsb2NrbW9kZSwgY29udGV4dCk7CisJCQkvKiBObyByZWN1cnNpb246IGluaGVyaXRhbmNlIG5v dCBzdXBwb3J0ZWQgd2l0aCBQRVJJT0RzICovCisJCQlwYXNzID0gQVRfUEFTU19BRERfUEVSSU9E OworCQkJYnJlYWs7CisJCWNhc2UgQVRfRHJvcFBlcmlvZDoJCS8qIEFMVEVSIFRBQkxFIC4uLiBE Uk9QIFBFUklPRCBGT1IgbmFtZSAqLworCQkJQVRTaW1wbGVQZXJtaXNzaW9ucyhjbWQtPnN1YnR5 cGUsIHJlbCwgQVRUX1RBQkxFKTsKKwkJCXBhc3MgPSBBVF9QQVNTX0RST1A7CisJCQlicmVhazsK IAkJY2FzZSBBVF9BZGRJZGVudGl0eToKIAkJCUFUU2ltcGxlUGVybWlzc2lvbnMoY21kLT5zdWJ0 eXBlLCByZWwsCiAJCQkJCQkJCUFUVF9UQUJMRSB8IEFUVF9QQVJUSVRJT05FRF9UQUJMRSB8IEFU VF9WSUVXIHwKQEAgLTUzODYsNiArNjAyNCwxNCBAQCBBVEV4ZWNDbWQoTGlzdCAqKndxdWV1ZSwg QWx0ZXJlZFRhYmxlSW5mbyAqdGFiLAogCQljYXNlIEFUX0Nvb2tlZENvbHVtbkRlZmF1bHQ6CS8q IGFkZCBhIHByZS1jb29rZWQgZGVmYXVsdCAqLwogCQkJYWRkcmVzcyA9IEFURXhlY0Nvb2tlZENv bHVtbkRlZmF1bHQocmVsLCBjbWQtPm51bSwgY21kLT5kZWYpOwogCQkJYnJlYWs7CisJCWNhc2Ug QVRfQWRkUGVyaW9kOgorCQkJYWRkcmVzcyA9IEFURXhlY0FkZFBlcmlvZCh3cXVldWUsIHRhYiwg cmVsLCAoUGVyaW9kRGVmICopIGNtZC0+ZGVmLAorCQkJCQkJCQkJICBsb2NrbW9kZSwgY29udGV4 dCk7CisJCQlicmVhazsKKwkJY2FzZSBBVF9Ecm9wUGVyaW9kOgorCQkJQVRFeGVjRHJvcFBlcmlv ZChyZWwsIGNtZC0+bmFtZSwgY21kLT5iZWhhdmlvciwgZmFsc2UsIGZhbHNlLAorCQkJCQkJCSBj bWQtPm1pc3Npbmdfb2spOworCQkJYnJlYWs7CiAJCWNhc2UgQVRfQWRkSWRlbnRpdHk6CiAJCQlj bWQgPSBBVFBhcnNlVHJhbnNmb3JtQ21kKHdxdWV1ZSwgdGFiLCByZWwsIGNtZCwgZmFsc2UsIGxv Y2ttb2RlLAogCQkJCQkJCQkJICBjdXJfcGFzcywgY29udGV4dCk7CkBAIC02NTkyLDYgKzcyMzgs OCBAQCBhbHRlcl90YWJsZV90eXBlX3RvX3N0cmluZyhBbHRlclRhYmxlVHlwZSBjbWR0eXBlKQog CQljYXNlIEFUX0FkZENvbHVtbjoKIAkJY2FzZSBBVF9BZGRDb2x1bW5Ub1ZpZXc6CiAJCQlyZXR1 cm4gIkFERCBDT0xVTU4iOworCQljYXNlIEFUX0FkZFBlcmlvZDoKKwkJCXJldHVybiAiQUREIFBF UklPRCI7CiAJCWNhc2UgQVRfQ29sdW1uRGVmYXVsdDoKIAkJY2FzZSBBVF9Db29rZWRDb2x1bW5E ZWZhdWx0OgogCQkJcmV0dXJuICJBTFRFUiBDT0xVTU4gLi4uIFNFVCBERUZBVUxUIjsKQEAgLTY2 MTUsNiArNzI2Myw4IEBAIGFsdGVyX3RhYmxlX3R5cGVfdG9fc3RyaW5nKEFsdGVyVGFibGVUeXBl IGNtZHR5cGUpCiAJCQlyZXR1cm4gIkFMVEVSIENPTFVNTiAuLi4gU0VUIENPTVBSRVNTSU9OIjsK IAkJY2FzZSBBVF9Ecm9wQ29sdW1uOgogCQkJcmV0dXJuICJEUk9QIENPTFVNTiI7CisJCWNhc2Ug QVRfRHJvcFBlcmlvZDoKKwkJCXJldHVybiAiRFJPUCBQRVJJT0QiOwogCQljYXNlIEFUX0FkZElu ZGV4OgogCQljYXNlIEFUX1JlQWRkSW5kZXg6CiAJCQlyZXR1cm4gTlVMTDsJCS8qIG5vdCByZWFs IGdyYW1tYXIgKi8KQEAgLTc2MzMsMTQgKzgyODMsMzAgQEAgQVRFeGVjQWRkQ29sdW1uKExpc3Qg Kip3cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogLyoKICAqIElm IGEgbmV3IG9yIHJlbmFtZWQgY29sdW1uIHdpbGwgY29sbGlkZSB3aXRoIHRoZSBuYW1lIG9mIGFu IGV4aXN0aW5nCiAgKiBjb2x1bW4gYW5kIGlmX25vdF9leGlzdHMgaXMgZmFsc2UgdGhlbiBlcnJv ciBvdXQsIGVsc2UgZG8gbm90aGluZy4KKyAqCisgKiBTZWUgYWxzbyBjaGVja19mb3JfcGVyaW9k X25hbWVfY29sbGlzaW9uLgogICovCiBzdGF0aWMgYm9vbAogY2hlY2tfZm9yX2NvbHVtbl9uYW1l X2NvbGxpc2lvbihSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKmNvbG5hbWUsCiAJCQkJCQkJCWJv b2wgaWZfbm90X2V4aXN0cykKIHsKLQlIZWFwVHVwbGUJYXR0VHVwbGU7CisJSGVhcFR1cGxlCWF0 dFR1cGxlLAorCQkJCXBlclR1cGxlOwogCWludAkJCWF0dG51bTsKIAorCS8qIElmIHRoZSBuYW1l IGV4aXN0cyBhcyBhIHBlcmlvZCwgd2UncmUgZG9uZS4gKi8KKwlwZXJUdXBsZSA9IFNlYXJjaFN5 c0NhY2hlMihQRVJJT0ROQU1FLAorCQkJCQkJCSAgIE9iamVjdElkR2V0RGF0dW0oUmVsYXRpb25H ZXRSZWxpZChyZWwpKSwKKwkJCQkJCQkgICBQb2ludGVyR2V0RGF0dW0oY29sbmFtZSkpOworCWlm IChIZWFwVHVwbGVJc1ZhbGlkKHBlclR1cGxlKSkKKwl7CisJCVJlbGVhc2VTeXNDYWNoZShwZXJU dXBsZSk7CisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9EVVBMSUNBVEVf Q09MVU1OKSwKKwkJCQkgZXJybXNnKCJjb2x1bW4gbmFtZSBcIiVzXCIgY29uZmxpY3RzIHdpdGgg YSBwZXJpb2QgbmFtZSIsCisJCQkJCQljb2xuYW1lKSkpOworCX0KKwogCS8qCiAJICogdGhpcyB0 ZXN0IGlzIGRlbGliZXJhdGVseSBub3QgYXR0aXNkcm9wcGVkLWF3YXJlLCBzaW5jZSBpZiBvbmUg dHJpZXMgdG8KIAkgKiBhZGQgYSBjb2x1bW4gbWF0Y2hpbmcgYSBkcm9wcGVkIGNvbHVtbiBuYW1l LCBpdCdzIGdvbm5hIGZhaWwgYW55d2F5LgpAQCAtNzY4NCw2ICs4MzUwLDc4IEBAIGNoZWNrX2Zv cl9jb2x1bW5fbmFtZV9jb2xsaXNpb24oUmVsYXRpb24gcmVsLCBjb25zdCBjaGFyICpjb2xuYW1l LAogCXJldHVybiB0cnVlOwogfQogCisvKgorICogSWYgYSBuZXcgcGVyaW9kIG5hbWUgd2lsbCBj b2xsaWRlIHdpdGggdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgY29sdW1uIG9yCisgKiBwZXJpb2Qg W2FuZCBpZl9ub3RfZXhpc3RzIGlzIGZhbHNlXSB0aGVuIGVycm9yIG91dCwgZWxzZSBkbyBub3Ro aW5nLgorICoKKyAqIFNlZSBhbHNvIGNoZWNrX2Zvcl9jb2x1bW5fbmFtZV9jb2xsaXNpb24uCisg Ki8KK3N0YXRpYyBib29sCitjaGVja19mb3JfcGVyaW9kX25hbWVfY29sbGlzaW9uKFJlbGF0aW9u IHJlbCwgY29uc3QgY2hhciAqcGVybmFtZSwKKwkJCQkJCQkJYm9vbCBjb2xleGlzdHMsIGJvb2wg aWZfbm90X2V4aXN0cykKK3sKKwlIZWFwVHVwbGUJYXR0VHVwbGUsCisJCQkJcGVyVHVwbGU7CisJ aW50CQkJYXR0bnVtOworCisJLyogWFhYOiBpbXBsZW1lbnQgSUYgW05PVF0gRVhJU1RTIGZvciBw ZXJpb2RzICovCisJQXNzZXJ0KCFpZl9ub3RfZXhpc3RzKTsKKworCS8qIElmIHRoZXJlIGlzIGFs cmVhZHkgYSBwZXJpb2Qgd2l0aCB0aGlzIG5hbWUsIHRoZW4gd2UncmUgZG9uZS4gKi8KKwlwZXJU dXBsZSA9IFNlYXJjaFN5c0NhY2hlMihQRVJJT0ROQU1FLAorCQkJCQkJCSAgIE9iamVjdElkR2V0 RGF0dW0oUmVsYXRpb25HZXRSZWxpZChyZWwpKSwKKwkJCQkJCQkgICBQb2ludGVyR2V0RGF0dW0o cGVybmFtZSkpOworCWlmIChIZWFwVHVwbGVJc1ZhbGlkKHBlclR1cGxlKSkKKwl7CisJCWlmIChp Zl9ub3RfZXhpc3RzKQorCQl7CisJCQlSZWxlYXNlU3lzQ2FjaGUocGVyVHVwbGUpOworCisJCQll cmVwb3J0KE5PVElDRSwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9EVVBMSUNBVEVfQ09MVU1OKSwK KwkJCQkJIGVycm1zZygicGVyaW9kIFwiJXNcIiBvZiByZWxhdGlvbiBcIiVzXCIgYWxyZWFkeSBl eGlzdHMsIHNraXBwaW5nIiwKKwkJCQkJCQlwZXJuYW1lLCBSZWxhdGlvbkdldFJlbGF0aW9uTmFt ZShyZWwpKSkpOworCQkJcmV0dXJuIGZhbHNlOworCQl9CisKKwkJZXJlcG9ydChFUlJPUiwKKwkJ CQkoZXJyY29kZShFUlJDT0RFX0RVUExJQ0FURV9DT0xVTU4pLAorCQkJCSBlcnJtc2coInBlcmlv ZCBcIiVzXCIgb2YgcmVsYXRpb24gXCIlc1wiIGFscmVhZHkgZXhpc3RzIiwKKwkJCQkJCXBlcm5h bWUsIFJlbGF0aW9uR2V0UmVsYXRpb25OYW1lKHJlbCkpKSk7CisJfQorCisJLyoKKwkgKiB0aGlz IHRlc3QgaXMgZGVsaWJlcmF0ZWx5IG5vdCBhdHRpc2Ryb3BwZWQtYXdhcmUsIHNpbmNlIGlmIG9u ZSB0cmllcyB0bworCSAqIGFkZCBhIGNvbHVtbiBtYXRjaGluZyBhIGRyb3BwZWQgY29sdW1uIG5h bWUsIGl0J3MgZ29ubmEgZmFpbCBhbnl3YXkuCisJICovCisJYXR0VHVwbGUgPSBTZWFyY2hTeXND YWNoZTIoQVRUTkFNRSwKKwkJCQkJCQkgICBPYmplY3RJZEdldERhdHVtKFJlbGF0aW9uR2V0UmVs aWQocmVsKSksCisJCQkJCQkJICAgUG9pbnRlckdldERhdHVtKHBlcm5hbWUpKTsKKwlpZiAoSGVh cFR1cGxlSXNWYWxpZChhdHRUdXBsZSkpCisJeworCQlhdHRudW0gPSAoKEZvcm1fcGdfYXR0cmli dXRlKSBHRVRTVFJVQ1QoYXR0VHVwbGUpKS0+YXR0bnVtOworCQlSZWxlYXNlU3lzQ2FjaGUoYXR0 VHVwbGUpOworCisJCS8qCisJCSAqIFdlIHRocm93IGEgZGlmZmVyZW50IGVycm9yIG1lc3NhZ2Ug Zm9yIGNvbmZsaWN0cyB3aXRoIHN5c3RlbSBjb2x1bW4KKwkJICogbmFtZXMsIHNpbmNlIHRoZXkg YXJlIG5vcm1hbGx5IG5vdCBzaG93biBhbmQgdGhlIHVzZXIgbWlnaHQKKwkJICogb3RoZXJ3aXNl IGJlIGNvbmZ1c2VkIGFib3V0IHRoZSByZWFzb24gZm9yIHRoZSBjb25mbGljdC4KKwkJICovCisJ CWlmIChhdHRudW0gPD0gMCkKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVSUkNP REVfRFVQTElDQVRFX0NPTFVNTiksCisJCQkJCSBlcnJtc2coInBlcmlvZCBuYW1lIFwiJXNcIiBj b25mbGljdHMgd2l0aCBhIHN5c3RlbSBjb2x1bW4gbmFtZSIsCisJCQkJCQkJcGVybmFtZSkpKTsK KwkJaWYgKCFjb2xleGlzdHMpCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJD T0RFX0RVUExJQ0FURV9DT0xVTU4pLAorCQkJCQkgZXJybXNnKCJwZXJpb2QgbmFtZSBcIiVzXCIg Y29uZmxpY3RzIHdpdGggYSBjb2x1bW4gbmFtZSIsCisJCQkJCQkJcGVybmFtZSkpKTsKKwl9CisK KwlyZXR1cm4gdHJ1ZTsKK30KKwogLyoKICAqIEluc3RhbGwgYSBjb2x1bW4ncyBkZXBlbmRlbmN5 IG9uIGl0cyBkYXRhdHlwZS4KICAqLwpAQCAtODIyMyw2ICs4OTYxLDIwOSBAQCBBVEV4ZWNDb29r ZWRDb2x1bW5EZWZhdWx0KFJlbGF0aW9uIHJlbCwgQXR0ck51bWJlciBhdHRudW0sCiAJcmV0dXJu IGFkZHJlc3M7CiB9CiAKKy8qCisgKiBQcmVwYXJlIHRvIGFkZCBhIFBFUklPRCB0byBhIHRhYmxl LCBieSBhZGRpbmcgYWxsIGl0cyBjb25zdGl0dWVudCBvYmplY3RzLgorICoKKyAqIFdlIG5lZWQg YSBDSEVDSyBjb25zdHJhaW50IGVuZm9yY2luZyB3ZSBzdGFydCBiZWZvcmUgd2UgZW5kLgorICoK KyAqIFVzdWFsbHkgd2UgYWxzbyBjcmVhdGUgYSBHRU5FUkFURUQgY29sdW1uIHdpdGggYSBOT1Qg TlVMTCBjb25zdHJhaW50LAorICogdW5sZXNzIHRoZSBjb21tYW5kIGluZGljYXRlcyB3ZSBoYXZl IG9uZSBhbHJlYWR5LgorICoKKyAqIFBFUklPRHMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gaW5oZXJp dGFuY2UgaGllcmFyY2hpZXMsIHNvIHdlIGRvbid0IG5lZWQKKyAqIHRvIHdvcnJ5IGFib3V0IHJl Y3Vyc2lvbi4KKyAqCisgKiBBVEV4ZWNBZGRQZXJpb2Qgd2lsbCBuZWVkIHRoZSBvaWQgb2YgdGhl IENIRUNLIGNvbnN0cmFpbnQgYW5kIHRoZSBhdHRudW0KKyAqIG9mIHRoZSByYW5nZSBjb2x1bW4g KHdoZXRoZXIgbmV3IG9yIG5vdCkgdG8gcmVjb3JkIHRoZSBkZXBlbmRlbmN5LgorICovCitzdGF0 aWMgdm9pZAorQVRQcmVwQWRkUGVyaW9kKExpc3QgKip3cXVldWUsIFJlbGF0aW9uIHJlbCwgQWx0 ZXJUYWJsZUNtZCAqY21kLAorCQkJCUxPQ0tNT0RFIGxvY2ttb2RlLCBBbHRlclRhYmxlVXRpbGl0 eUNvbnRleHQgKmNvbnRleHQpCit7CisJUGVyaW9kRGVmICAqcGVyaW9kID0gKFBlcmlvZERlZiAq KSBjbWQtPmRlZjsKKworCS8qCisJICogUEVSSU9EIEZPUiBTWVNURU1fVElNRSBpcyBub3QgeWV0 IGltcGxlbWVudGVkLCBidXQgbWFrZSBzdXJlIG5vIG9uZQorCSAqIHVzZXMgdGhlIG5hbWUuCisJ ICovCisJaWYgKHN0cmNtcChwZXJpb2QtPnBlcmlvZG5hbWUsICJzeXN0ZW1fdGltZSIpID09IDAp CisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQ T1JURUQpLAorCQkJCSBlcnJtc2coIlBFUklPRCBGT1IgU1lTVEVNX1RJTUUgaXMgbm90IHN1cHBv cnRlZCIpKSk7CisKKwlpZiAoc3RyY21wKHBlcmlvZC0+c3RhcnRjb2xuYW1lLCBwZXJpb2QtPmVu ZGNvbG5hbWUpID09IDApCisJCWVyZXBvcnQoRVJST1IsIChlcnJtc2coImNvbHVtbiBcIiVzXCIg Y2FuJ3QgYmUgdGhlIHN0YXJ0IGFuZCBlbmQgY29sdW1uIGZvciBwZXJpb2QgXCIlc1wiIiwKKwkJ CQkJCQkgICBwZXJpb2QtPnN0YXJ0Y29sbmFtZSwgcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCisJ LyogUGFyc2Ugb3B0aW9ucyAqLworCXRyYW5zZm9ybVBlcmlvZE9wdGlvbnMocGVyaW9kKTsKK30K KworLyoKKyAqIEFMVEVSIFRBQkxFIEFERCBQRVJJT0QKKyAqCisgKiBSZXR1cm4gdGhlIGFkZHJl c3Mgb2YgdGhlIHBlcmlvZC4KKyAqLworc3RhdGljIE9iamVjdEFkZHJlc3MKK0FURXhlY0FkZFBl cmlvZChMaXN0ICoqd3F1ZXVlLCBBbHRlcmVkVGFibGVJbmZvICp0YWIsIFJlbGF0aW9uIHJlbCwK KwkJCQlQZXJpb2REZWYgKnBlcmlvZCwgTE9DS01PREUgbG9ja21vZGUsCisJCQkJQWx0ZXJUYWJs ZVV0aWxpdHlDb250ZXh0ICpjb250ZXh0KQoreworCVJlbGF0aW9uCWF0dHJlbGF0aW9uOworCU9i amVjdEFkZHJlc3MgYWRkcmVzcyA9IEludmFsaWRPYmplY3RBZGRyZXNzOworCUNvbnN0cmFpbnQg KmNvbnN0cjsKKwlDb2x1bW5EZWYgICpyYW5nZWNvbDsKKwlPaWQJCQljb25vaWQsCisJCQkJcGVy aW9kb2lkOworCUxpc3QJICAgKmNtZHMgPSBOSUw7CisJQWx0ZXJUYWJsZUNtZCAqY21kOworCisJ LyoKKwkgKiBUaGUgcGVyaW9kIG5hbWUgbXVzdCBub3QgYWxyZWFkeSBleGlzdC4gV2UgY2FuJ3Qg Y2hlY2sgdGhpcyBpbgorCSAqIEFUUHJlcEFkZFBlcmlvZCBiZWNhdXNlIHRoZSBzYW1lIEFMVEVS IFRBQkxFIGNvbW1hbmQgbWlnaHQgZG8gYSBEUk9QCisJICogUEVSSU9EIGFzIHdlbGwuCisJICov CisJKHZvaWQpIGNoZWNrX2Zvcl9wZXJpb2RfbmFtZV9jb2xsaXNpb24ocmVsLCBwZXJpb2QtPnBl cmlvZG5hbWUsCisJCQkJCQkJCQkJICAgcGVyaW9kLT5jb2xleGlzdHMsIGZhbHNlKTsKKworCWF0 dHJlbGF0aW9uID0gdGFibGVfb3BlbihBdHRyaWJ1dGVSZWxhdGlvbklkLCBSb3dFeGNsdXNpdmVM b2NrKTsKKwlWYWxpZGF0ZVBlcmlvZChyZWwsIHBlcmlvZCk7CisKKwkvKiBNYWtlIHRoZSBDSEVD SyBjb25zdHJhaW50ICovCisJY29uc3RyID0gbWFrZV9jb25zdHJhaW50X2Zvcl9wZXJpb2QocmVs LCBwZXJpb2QpOworCWNtZCA9IG1ha2VOb2RlKEFsdGVyVGFibGVDbWQpOworCWNtZC0+c3VidHlw ZSA9IEFUX0FkZENvbnN0cmFpbnQ7CisJY21kLT5kZWYgPSAoTm9kZSAqKSBjb25zdHI7CisJY21k cyA9IGxhcHBlbmQoY21kcywgY21kKTsKKwlBbHRlclRhYmxlSW50ZXJuYWwoUmVsYXRpb25HZXRS ZWxpZChyZWwpLCBjbWRzLCB0cnVlLCBjb250ZXh0KTsKKwljb25vaWQgPSBnZXRfcmVsYXRpb25f Y29uc3RyYWludF9vaWQoUmVsYXRpb25HZXRSZWxpZChyZWwpLAorCQkJCQkJCQkJCSBwZXJpb2Qt PmNvbnN0cmFpbnRuYW1lLCBmYWxzZSk7CisKKworCWlmICghcGVyaW9kLT5jb2xleGlzdHMpCisJ eworCQljbWRzID0gTklMOworCisJCS8qCisJCSAqIE1ha2UgdGhlIHJhbmdlIGNvbHVtbi4KKwkJ ICoKKwkJICogV2UgaGF2ZSBhbHJlYWR5IHBhc3NlZCB0aGUgYWRkLWNvbHVtbiBwYXNzLCBzbyB3 ZSBoYXZlIHRvIGNyZWF0ZSBpdAorCQkgKiBvdXJzZWxmLgorCQkgKi8KKwkJcmFuZ2Vjb2wgPSBt YWtlX3JhbmdlX2NvbHVtbl9mb3JfcGVyaW9kKHBlcmlvZCk7CisJCWNtZCA9IG1ha2VOb2RlKEFs dGVyVGFibGVDbWQpOworCQljbWQtPnN1YnR5cGUgPSBBVF9BZGRDb2x1bW47CisJCWNtZC0+ZGVm ID0gKE5vZGUgKikgcmFuZ2Vjb2w7CisJCWNtZC0+bmFtZSA9IHBlcmlvZC0+cGVyaW9kbmFtZTsK KwkJY21kLT5yZWN1cnNlID0gZmFsc2U7CS8qIE5vLCBsZXQgdGhlIFBFUklPRCByZWN1cnNlIGlu c3RlYWQuICovCisJCUFURXhlY0FkZENvbHVtbih3cXVldWUsIHRhYiwgcmVsLCAmY21kLCBmYWxz ZSwgZmFsc2UsIGxvY2ttb2RlLAorCQkJCQkJQVRfUEFTU19BRERfUEVSSU9ELCBjb250ZXh0KTsK KworCQkvKiBUaGUgcmFuZ2UgY29sdW1uIHNob3VsZCBiZSBOT1QgTlVMTC4gKi8KKwkJY21kID0g bWFrZU5vZGUoQWx0ZXJUYWJsZUNtZCk7CisJCWNtZC0+c3VidHlwZSA9IEFUX0FkZENvbnN0cmFp bnQ7CisJCWNtZC0+ZGVmID0gKE5vZGUgKikgbWFrZU5vdE51bGxDb25zdHJhaW50KG1ha2VTdHJp bmcocGVyaW9kLT5wZXJpb2RuYW1lKSk7CisJCWNtZC0+cmVjdXJzZSA9IGZhbHNlOwkvKiBObywg bGV0IHRoZSBQRVJJT0QgcmVjdXJzZSBpbnN0ZWFkLiAqLworCQlBVFByZXBDbWQod3F1ZXVlLCBy ZWwsIGNtZCwgZmFsc2UsIGZhbHNlLCBsb2NrbW9kZSwgY29udGV4dCk7CisKKwkJLyogTG9vayB1 cCB0aGUgR0VORVJBVEVEIGF0dG51bSAqLworCQlwZXJpb2QtPnJuZ2F0dG51bSA9IGdldF9hdHRu dW0oUmVsYXRpb25HZXRSZWxpZChyZWwpLCBwZXJpb2QtPnBlcmlvZG5hbWUpOworCQlpZiAocGVy aW9kLT5ybmdhdHRudW0gPT0gSW52YWxpZEF0dHJOdW1iZXIpCisJCQllbG9nKEVSUk9SLCAibWlz c2luZyBhdHRyaWJ1dGUgJXMiLCBwZXJpb2QtPnBlcmlvZG5hbWUpOworCX0KKworCS8qIFNhdmUg dGhlIFBlcmlvZCAqLworCXBlcmlvZG9pZCA9IFN0b3JlUGVyaW9kKHJlbCwgcGVyaW9kLT5wZXJp b2RuYW1lLCBwZXJpb2QtPnN0YXJ0YXR0bnVtLAorCQkJCQkJCXBlcmlvZC0+ZW5kYXR0bnVtLCBw ZXJpb2QtPnJuZ2F0dG51bSwgY29ub2lkKTsKKworCU9iamVjdEFkZHJlc3NTZXQoYWRkcmVzcywg UGVyaW9kUmVsYXRpb25JZCwgcGVyaW9kb2lkKTsKKworCXRhYmxlX2Nsb3NlKGF0dHJlbGF0aW9u LCBSb3dFeGNsdXNpdmVMb2NrKTsKKworCXJldHVybiBhZGRyZXNzOworfQorCisvKgorICogQUxU RVIgVEFCTEUgRFJPUCBQRVJJT0QKKyAqCisgKiBMaWtlIERST1AgQ09MVU1OLCB3ZSBjYW4ndCB1 c2UgdGhlIG5vcm1hbCBBTFRFUiBUQUJMRSByZWN1cnNpb24gbWVjaGFuaXNtLgorICovCitzdGF0 aWMgdm9pZAorQVRFeGVjRHJvcFBlcmlvZChSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKnBlcmlv ZE5hbWUsCisJCQkJIERyb3BCZWhhdmlvciBiZWhhdmlvciwKKwkJCQkgYm9vbCByZWN1cnNlLCBi b29sIHJlY3Vyc2luZywKKwkJCQkgYm9vbCBtaXNzaW5nX29rKQoreworCVJlbGF0aW9uCXBnX3Bl cmlvZDsKKwlGb3JtX3BnX3BlcmlvZCBwZXJpb2Q7CisJU3lzU2NhbkRlc2Mgc2NhbjsKKwlTY2Fu S2V5RGF0YSBrZXk7CisJSGVhcFR1cGxlCXR1cGxlOworCWJvb2wJCWZvdW5kID0gZmFsc2U7CisK KwkvKiBBdCB0b3AgbGV2ZWwsIHBlcm1pc3Npb24gY2hlY2sgd2FzIGRvbmUgaW4gQVRQcmVwQ21k LCBlbHNlIGRvIGl0ICovCisJaWYgKHJlY3Vyc2luZykKKwkJQVRTaW1wbGVQZXJtaXNzaW9ucyhB VF9Ecm9wUGVyaW9kLCByZWwsIEFUVF9UQUJMRSk7CisKKwlwZ19wZXJpb2QgPSB0YWJsZV9vcGVu KFBlcmlvZFJlbGF0aW9uSWQsIFJvd0V4Y2x1c2l2ZUxvY2spOworCisJLyoKKwkgKiBGaW5kIGFu ZCBkcm9wIHRoZSB0YXJnZXQgcGVyaW9kCisJICovCisJU2NhbktleUluaXQoJmtleSwKKwkJCQlB bnVtX3BnX3BlcmlvZF9wZXJyZWxpZCwKKwkJCQlCVEVxdWFsU3RyYXRlZ3lOdW1iZXIsIEZfT0lE RVEsCisJCQkJT2JqZWN0SWRHZXREYXR1bShSZWxhdGlvbkdldFJlbGlkKHJlbCkpKTsKKwlzY2Fu ID0gc3lzdGFibGVfYmVnaW5zY2FuKHBnX3BlcmlvZCwgUGVyaW9kUmVsaWROYW1lSW5kZXhJZCwK KwkJCQkJCQkgIHRydWUsIE5VTEwsIDEsICZrZXkpOworCisJd2hpbGUgKEhlYXBUdXBsZUlzVmFs aWQodHVwbGUgPSBzeXN0YWJsZV9nZXRuZXh0KHNjYW4pKSkKKwl7CisJCU9iamVjdEFkZHJlc3Mg cGVyb2JqOworCisJCXBlcmlvZCA9IChGb3JtX3BnX3BlcmlvZCkgR0VUU1RSVUNUKHR1cGxlKTsK KworCQlpZiAoc3RyY21wKE5hbWVTdHIocGVyaW9kLT5wZXJuYW1lKSwgcGVyaW9kTmFtZSkgIT0g MCkKKwkJCWNvbnRpbnVlOworCisJCS8qCisJCSAqIFBlcmZvcm0gdGhlIGFjdHVhbCBwZXJpb2Qg ZGVsZXRpb24KKwkJICovCisJCXBlcm9iai5jbGFzc0lkID0gUGVyaW9kUmVsYXRpb25JZDsKKwkJ cGVyb2JqLm9iamVjdElkID0gcGVyaW9kLT5vaWQ7CisJCXBlcm9iai5vYmplY3RTdWJJZCA9IDA7 CisKKwkJcGVyZm9ybURlbGV0aW9uKCZwZXJvYmosIGJlaGF2aW9yLCAwKTsKKworCQlmb3VuZCA9 IHRydWU7CisKKwkJLyogcGVyaW9kIGZvdW5kIGFuZCBkcm9wcGVkIC0tIG5vIG5lZWQgdG8ga2Vl cCBsb29waW5nICovCisJCWJyZWFrOworCX0KKworCXN5c3RhYmxlX2VuZHNjYW4oc2Nhbik7CisK KwlpZiAoIWZvdW5kKQorCXsKKwkJaWYgKCFtaXNzaW5nX29rKQorCQl7CisJCQllcmVwb3J0KEVS Uk9SLAorCQkJCQkoZXJyY29kZShFUlJDT0RFX1VOREVGSU5FRF9PQkpFQ1QpLAorCQkJCQkgZXJy bXNnKCJwZXJpb2QgXCIlc1wiIG9uIHJlbGF0aW9uIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIsCisJ CQkJCQkJcGVyaW9kTmFtZSwgUmVsYXRpb25HZXRSZWxhdGlvbk5hbWUocmVsKSkpKTsKKwkJfQor CQllbHNlCisJCXsKKwkJCWVyZXBvcnQoTk9USUNFLAorCQkJCQkoZXJybXNnKCJwZXJpb2QgXCIl c1wiIG9uIHJlbGF0aW9uIFwiJXNcIiBkb2VzIG5vdCBleGlzdCwgc2tpcHBpbmciLAorCQkJCQkJ CXBlcmlvZE5hbWUsIFJlbGF0aW9uR2V0UmVsYXRpb25OYW1lKHJlbCkpKSk7CisJCQl0YWJsZV9j bG9zZShwZ19wZXJpb2QsIFJvd0V4Y2x1c2l2ZUxvY2spOworCQkJcmV0dXJuOworCQl9CisJfQor CisJdGFibGVfY2xvc2UocGdfcGVyaW9kLCBSb3dFeGNsdXNpdmVMb2NrKTsKK30KKwogLyoKICAq IEFMVEVSIFRBQkxFIEFMVEVSIENPTFVNTiBBREQgSURFTlRJVFkKICAqCkBAIC0xMDIzNSw4ICsx MTE3Niw5IEBAIEFUQWRkRm9yZWlnbktleUNvbnN0cmFpbnQoTGlzdCAqKndxdWV1ZSwgQWx0ZXJl ZFRhYmxlSW5mbyAqdGFiLCBSZWxhdGlvbiByZWwsCiAJZm9yIChpID0gMDsgaSA8IG51bWZrczsg aSsrKQogCXsKIAkJY2hhcgkJYXR0Z2VuZXJhdGVkID0gVHVwbGVEZXNjQXR0cihSZWxhdGlvbkdl dERlc2NyKHJlbCksIGZrYXR0bnVtW2ldIC0gMSktPmF0dGdlbmVyYXRlZDsKKwkJQml0bWFwc2V0 ICAqcGVyaW9kcyA9IGdldF9wZXJpb2RfYXR0bm9zKFJlbGF0aW9uR2V0UmVsaWQocmVsKSk7CiAK LQkJaWYgKGF0dGdlbmVyYXRlZCkKKwkJaWYgKGF0dGdlbmVyYXRlZCAmJiAhYm1zX2lzX21lbWJl cihma2F0dG51bVtpXSwgcGVyaW9kcykpCiAJCXsKIAkJCS8qCiAJCQkgKiBDaGVjayByZXN0cmlj dGlvbnMgb24gVVBEQVRFL0RFTEVURSBhY3Rpb25zLCBwZXIgU1FMIHN0YW5kYXJkCkBAIC0xNTEz Myw2ICsxNjA3NSwxNiBAQCBSZW1lbWJlckFsbERlcGVuZGVudEZvclJlYnVpbGRpbmcoQWx0ZXJl ZFRhYmxlSW5mbyAqdGFiLCBBbHRlclRhYmxlVHlwZSBzdWJ0eXBlLAogCQkJCVJlbWVtYmVyQ29u c3RyYWludEZvclJlYnVpbGRpbmcoZm91bmRPYmplY3Qub2JqZWN0SWQsIHRhYik7CiAJCQkJYnJl YWs7CiAKKwkJCWNhc2UgUGVyaW9kUmVsYXRpb25JZDoKKwkJCQlpZiAoc3VidHlwZSA9PSBBVF9B bHRlckNvbHVtblR5cGUpCisJCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkJKGVycmNvZGUoRVJS Q09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAorCQkJCQkJCSBlcnJtc2coImNhbm5vdCBhbHRl ciB0eXBlIG9mIGEgY29sdW1uIHVzZWQgYnkgYSBwZXJpb2QiKSwKKwkJCQkJCQkgZXJyZGV0YWls KCIlcyBkZXBlbmRzIG9uIGNvbHVtbiBcIiVzXCIiLAorCQkJCQkJCQkJICAgZ2V0T2JqZWN0RGVz Y3JpcHRpb24oJmZvdW5kT2JqZWN0LCBmYWxzZSksCisJCQkJCQkJCQkgICBjb2xOYW1lKSkpOwor CQkJCWJyZWFrOworCiAJCQljYXNlIFByb2NlZHVyZVJlbGF0aW9uSWQ6CiAKIAkJCQkvKgpAQCAt MTUyMjIsNiArMTYxNzQsMTYgQEAgUmVtZW1iZXJBbGxEZXBlbmRlbnRGb3JSZWJ1aWxkaW5nKEFs dGVyZWRUYWJsZUluZm8gKnRhYiwgQWx0ZXJUYWJsZVR5cGUgc3VidHlwZSwKIAkJCQkJfQogCQkJ CQllbHNlCiAJCQkJCXsKKwkJCQkJCS8qCisJCQkJCQkgKiBJZiB0aGlzIEdFTkVSQVRFRCBjb2x1 bW4gaXMgaW1wbGVtZW50aW5nIGEgUEVSSU9ELAorCQkJCQkJICoga2VlcCBnb2luZyBhbmQgd2Un bGwgZmFpbCBmcm9tIHRoZSBQRVJJT0QgaW5zdGVhZC4KKwkJCQkJCSAqIFRoaXMgZ2l2ZXMgYSBt b3JlIGNsZWFyIGVycm9yIG1lc3NhZ2UuCisJCQkJCQkgKi8KKwkJCQkJCUJpdG1hcHNldCAgKnBl cmlvZGF0dHMgPSBnZXRfcGVyaW9kX2F0dG5vcyhSZWxhdGlvbkdldFJlbGlkKHJlbCkpOworCisJ CQkJCQlpZiAoYm1zX2lzX21lbWJlcihjb2wub2JqZWN0U3ViSWQsIHBlcmlvZGF0dHMpKQorCQkJ CQkJCWJyZWFrOworCiAJCQkJCQkvKgogCQkJCQkJICogVGhpcyBtdXN0IGJlIGEgcmVmZXJlbmNl IGZyb20gdGhlIGV4cHJlc3Npb24gb2YgYQogCQkJCQkJICogZ2VuZXJhdGVkIGNvbHVtbiBlbHNl d2hlcmUgaW4gdGhlIHNhbWUgdGFibGUuCkBAIC0xNzE1OCw3ICsxODEyMCw3IEBAIEFsdGVyVGFi bGVNb3ZlQWxsKEFsdGVyVGFibGVNb3ZlQWxsU3RtdCAqc3RtdCkKIAogCQlFdmVudFRyaWdnZXJB bHRlclRhYmxlU3RhcnQoKE5vZGUgKikgc3RtdCk7CiAJCS8qIE9JRCBpcyBzZXQgYnkgQWx0ZXJU YWJsZUludGVybmFsICovCi0JCUFsdGVyVGFibGVJbnRlcm5hbChsZmlyc3Rfb2lkKGwpLCBjbWRz LCBmYWxzZSk7CisJCUFsdGVyVGFibGVJbnRlcm5hbChsZmlyc3Rfb2lkKGwpLCBjbWRzLCBmYWxz ZSwgTlVMTCk7CiAJCUV2ZW50VHJpZ2dlckFsdGVyVGFibGVFbmQoKTsKIAl9CiAKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RyaWdnZXIuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRz L3RyaWdnZXIuYwppbmRleCA0M2I5ZDgyZTYzYS4uOTY4YTkxZmQzNGIgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL2NvbW1hbmRzL3RyaWdnZXIuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy90 cmlnZ2VyLmMKQEAgLTYxNDMsNiArNjE0Myw4IEBAIENvcHlGb3JQb3J0aW9uT2ZTdGF0ZShGb3JQ b3J0aW9uT2ZTdGF0ZSAqc3JjKQogCQlkc3QtPmZwX3JhbmdlTmFtZSA9IHBzdHJkdXAoc3JjLT5m cF9yYW5nZU5hbWUpOwogCQlkc3QtPmZwX3JhbmdlVHlwZSA9IHNyYy0+ZnBfcmFuZ2VUeXBlOwog CQlkc3QtPmZwX3JhbmdlQXR0bm8gPSBzcmMtPmZwX3JhbmdlQXR0bm87CisJCWRzdC0+ZnBfcGVy aW9kU3RhcnRBdHRubyA9IHNyYy0+ZnBfcGVyaW9kU3RhcnRBdHRubzsKKwkJZHN0LT5mcF9wZXJp b2RFbmRBdHRubyA9IHNyYy0+ZnBfcGVyaW9kRW5kQXR0bm87CiAKIAkJciA9IERhdHVtR2V0UmFu Z2VUeXBlUChzcmMtPmZwX3RhcmdldFJhbmdlKTsKIAkJdHlwY2FjaGUgPSBsb29rdXBfdHlwZV9j YWNoZShSYW5nZVR5cGVHZXRPaWQociksIFRZUEVDQUNIRV9SQU5HRV9JTkZPKTsKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3ZpZXcuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3Zp ZXcuYwppbmRleCA2ZjAzMDE1NTVlMC4uYzcyNzY4MzYyMjAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL2NvbW1hbmRzL3ZpZXcuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy92aWV3LmMKQEAg LTE2Myw3ICsxNjMsNyBAQCBEZWZpbmVWaXJ0dWFsUmVsYXRpb24oUmFuZ2VWYXIgKnJlbGF0aW9u LCBMaXN0ICp0bGlzdCwgYm9vbCByZXBsYWNlLAogCQkJfQogCiAJCQkvKiBFdmVudFRyaWdnZXJB bHRlclRhYmxlU3RhcnQgY2FsbGVkIGJ5IFByb2Nlc3NVdGlsaXR5U2xvdyAqLwotCQkJQWx0ZXJU YWJsZUludGVybmFsKHZpZXdPaWQsIGF0Y21kcywgdHJ1ZSk7CisJCQlBbHRlclRhYmxlSW50ZXJu YWwodmlld09pZCwgYXRjbWRzLCB0cnVlLCBOVUxMKTsKIAogCQkJLyogTWFrZSB0aGUgbmV3IHZp ZXcgY29sdW1ucyB2aXNpYmxlICovCiAJCQlDb21tYW5kQ291bnRlckluY3JlbWVudCgpOwpAQCAt MTk1LDcgKzE5NSw3IEBAIERlZmluZVZpcnR1YWxSZWxhdGlvbihSYW5nZVZhciAqcmVsYXRpb24s IExpc3QgKnRsaXN0LCBib29sIHJlcGxhY2UsCiAJCWF0Y21kcyA9IGxpc3RfbWFrZTEoYXRjbWQp OwogCiAJCS8qIEV2ZW50VHJpZ2dlckFsdGVyVGFibGVTdGFydCBjYWxsZWQgYnkgUHJvY2Vzc1V0 aWxpdHlTbG93ICovCi0JCUFsdGVyVGFibGVJbnRlcm5hbCh2aWV3T2lkLCBhdGNtZHMsIHRydWUp OworCQlBbHRlclRhYmxlSW50ZXJuYWwodmlld09pZCwgYXRjbWRzLCB0cnVlLCBOVUxMKTsKIAog CQkvKgogCQkgKiBUaGVyZSBpcyB2ZXJ5IGxpdHRsZSB0byBkbyBoZXJlIHRvIHVwZGF0ZSB0aGUg dmlldydzIGRlcGVuZGVuY2llcy4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25v ZGVNb2RpZnlUYWJsZS5jIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMK aW5kZXggODU3MTM5ZWM1OGIuLjg0NjYyNzBjNDZiIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9l eGVjdXRvci9ub2RlTW9kaWZ5VGFibGUuYworKysgYi9zcmMvYmFja2VuZC9leGVjdXRvci9ub2Rl TW9kaWZ5VGFibGUuYwpAQCAtMTM5MCw2ICsxMzkwLDcgQEAgRXhlY0ZvclBvcnRpb25PZkxlZnRv dmVycyhNb2RpZnlUYWJsZUNvbnRleHQgKmNvbnRleHQsCiAJVHJhbnNpdGlvbkNhcHR1cmVTdGF0 ZSAqb2xkVGNzOwogCUZtZ3JJbmZvCWZsaW5mbzsKIAlSZXR1cm5TZXRJbmZvIHJzaTsKKwlib29s CQloYXNQZXJpb2QgPSBmYWxzZTsKIAlib29sCQlkaWRJbml0ID0gZmFsc2U7CiAJYm9vbAkJc2hv dWxkRnJlZSA9IGZhbHNlOwogCkBAIC0xNTA0LDYgKzE1MDUsOCBAQCBFeGVjRm9yUG9ydGlvbk9m TGVmdG92ZXJzKE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwKIAkJCQlFeGVjRm9yY2VTdG9y ZUhlYXBUdXBsZShvbGR0dXBsZSwgbGVmdG92ZXJTbG90LCBmYWxzZSk7CiAJCQl9CiAKKwkJCWhh c1BlcmlvZCA9IGZvclBvcnRpb25PZi0+c3RhcnRWYXI7CisKIAkJCS8qCiAJCQkgKiBTYXZlIHNv bWUgbXRzdGF0ZSB0aGluZ3Mgc28gd2UgY2FuIHJlc3RvcmUgdGhlbSBiZWxvdy4gWFhYOgogCQkJ ICogU2hvdWxkIHdlIGNyZWF0ZSBvdXIgb3duIE1vZGlmeVRhYmxlU3RhdGUgaW5zdGVhZD8KQEAg LTE1MTUsOCArMTUxOCw0MiBAQCBFeGVjRm9yUG9ydGlvbk9mTGVmdG92ZXJzKE1vZGlmeVRhYmxl Q29udGV4dCAqY29udGV4dCwKIAkJCWRpZEluaXQgPSB0cnVlOwogCQl9CiAKLQkJbGVmdG92ZXJT bG90LT50dHNfdmFsdWVzW2ZvclBvcnRpb25PZi0+cmFuZ2VWYXItPnZhcmF0dG5vIC0gMV0gPSBs ZWZ0b3ZlcjsKLQkJbGVmdG92ZXJTbG90LT50dHNfaXNudWxsW2ZvclBvcnRpb25PZi0+cmFuZ2VW YXItPnZhcmF0dG5vIC0gMV0gPSBmYWxzZTsKKwkJaWYgKGhhc1BlcmlvZCkKKwkJeworCQkJUmFu Z2VUeXBlICAqbGVmdG92ZXJSYW5nZTsKKwkJCVJhbmdlQm91bmQJbGVmdG92ZXJMb3dlcjsKKwkJ CVJhbmdlQm91bmQJbGVmdG92ZXJVcHBlcjsKKwkJCWJvb2wJCWxlZnRvdmVyRW1wdHk7CisJCQlB dHRyTnVtYmVyCXN0YXJ0QXR0bm87CisJCQlBdHRyTnVtYmVyCWVuZEF0dG5vOworCisJCQlsZWZ0 b3ZlclJhbmdlID0gRGF0dW1HZXRSYW5nZVR5cGVQKGxlZnRvdmVyKTsKKwkJCXJhbmdlX2Rlc2Vy aWFsaXplKHR5cGNhY2hlLCBsZWZ0b3ZlclJhbmdlLCAmbGVmdG92ZXJMb3dlciwgJmxlZnRvdmVy VXBwZXIsICZsZWZ0b3ZlckVtcHR5KTsKKworCQkJc3RhcnRBdHRubyA9IGZvclBvcnRpb25PZi0+ c3RhcnRWYXItPnZhcmF0dG5vOworCQkJZW5kQXR0bm8gPSBmb3JQb3J0aW9uT2YtPmVuZFZhci0+ dmFyYXR0bm87CisKKwkJCWlmIChsZWZ0b3Zlckxvd2VyLmluZmluaXRlKQorCQkJCWxlZnRvdmVy U2xvdC0+dHRzX2lzbnVsbFtzdGFydEF0dG5vIC0gMV0gPSB0cnVlOworCQkJZWxzZQorCQkJewor CQkJCWxlZnRvdmVyU2xvdC0+dHRzX2lzbnVsbFtzdGFydEF0dG5vIC0gMV0gPSBmYWxzZTsKKwkJ CQlsZWZ0b3ZlclNsb3QtPnR0c192YWx1ZXNbc3RhcnRBdHRubyAtIDFdID0gbGVmdG92ZXJMb3dl ci52YWw7CisJCQl9CisKKwkJCWlmIChsZWZ0b3ZlclVwcGVyLmluZmluaXRlKQorCQkJCWxlZnRv dmVyU2xvdC0+dHRzX2lzbnVsbFtlbmRBdHRubyAtIDFdID0gdHJ1ZTsKKwkJCWVsc2UKKwkJCXsK KwkJCQlsZWZ0b3ZlclNsb3QtPnR0c19pc251bGxbZW5kQXR0bm8gLSAxXSA9IGZhbHNlOworCQkJ CWxlZnRvdmVyU2xvdC0+dHRzX3ZhbHVlc1tlbmRBdHRubyAtIDFdID0gbGVmdG92ZXJVcHBlci52 YWw7CisJCQl9CisJCX0KKwkJZWxzZQorCQl7CisJCQlsZWZ0b3ZlclNsb3QtPnR0c192YWx1ZXNb Zm9yUG9ydGlvbk9mLT5yYW5nZVZhci0+dmFyYXR0bm8gLSAxXSA9IGxlZnRvdmVyOworCQkJbGVm dG92ZXJTbG90LT50dHNfaXNudWxsW2ZvclBvcnRpb25PZi0+cmFuZ2VWYXItPnZhcmF0dG5vIC0g MV0gPSBmYWxzZTsKKwkJfQogCQlFeGVjTWF0ZXJpYWxpemVTbG90KGxlZnRvdmVyU2xvdCk7CiAK IAkJLyoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL25vZGVzL25vZGVGdW5jcy5jIGIvc3JjL2Jh Y2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMKaW5kZXggZTQwZThlZWNmNzMuLjhkMmM3ZGI0YjI3IDEw MDY0NAotLS0gYS9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVuY3MuYworKysgYi9zcmMvYmFja2Vu ZC9ub2Rlcy9ub2RlRnVuY3MuYwpAQCAtMTcyOSw2ICsxNzI5LDkgQEAgZXhwckxvY2F0aW9uKGNv bnN0IE5vZGUgKmV4cHIpCiAJCWNhc2UgVF9Db25zdHJhaW50OgogCQkJbG9jID0gKChjb25zdCBD b25zdHJhaW50ICopIGV4cHIpLT5sb2NhdGlvbjsKIAkJCWJyZWFrOworCQljYXNlIFRfUGVyaW9k RGVmOgorCQkJbG9jID0gKChjb25zdCBQZXJpb2REZWYgKikgZXhwciktPmxvY2F0aW9uOworCQkJ YnJlYWs7CiAJCWNhc2UgVF9GdW5jdGlvblBhcmFtZXRlcjoKIAkJCWxvYyA9ICgoY29uc3QgRnVu Y3Rpb25QYXJhbWV0ZXIgKikgZXhwciktPmxvY2F0aW9uOwogCQkJYnJlYWs7CmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6ZS5jIGIvc3JjL2JhY2tlbmQvcGFyc2VyL2FuYWx5 emUuYwppbmRleCBhNTQyYzgxYjQ1Zi4uMWEwODdhZWNhZTMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL3BhcnNlci9hbmFseXplLmMKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL2FuYWx5emUuYwpA QCAtMjQsMTAgKzI0LDEyIEBACiAKICNpbmNsdWRlICJwb3N0Z3Jlcy5oIgogCisjaW5jbHVkZSAi YWNjZXNzL2h0dXBfZGV0YWlscy5oIgogI2luY2x1ZGUgImFjY2Vzcy9zdHJhdG51bS5oIgogI2lu Y2x1ZGUgImFjY2Vzcy9zeXNhdHRyLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19hbS5oIgogI2lu Y2x1ZGUgImNhdGFsb2cvcGdfb3BlcmF0b3IuaCIKKyNpbmNsdWRlICJjYXRhbG9nL3BnX3Blcmlv ZC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfcHJvYy5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdf dHlwZS5oIgogI2luY2x1ZGUgImNvbW1hbmRzL2RlZnJlbS5oIgpAQCAtNTAsNiArNTIsNyBAQAog I2luY2x1ZGUgInBhcnNlci9wYXJzZV9yZWxhdGlvbi5oIgogI2luY2x1ZGUgInBhcnNlci9wYXJz ZV90YXJnZXQuaCIKICNpbmNsdWRlICJwYXJzZXIvcGFyc2VfdHlwZS5oIgorI2luY2x1ZGUgInBh cnNlci9wYXJzZXIuaCIKICNpbmNsdWRlICJwYXJzZXIvcGFyc2V0cmVlLmgiCiAjaW5jbHVkZSAi dXRpbHMvYmFja2VuZF9zdGF0dXMuaCIKICNpbmNsdWRlICJ1dGlscy9idWlsdGlucy5oIgpAQCAt MTMyMSw2ICsxMzI0LDEwIEBAIHRyYW5zZm9ybUZvclBvcnRpb25PZkNsYXVzZShQYXJzZVN0YXRl ICpwc3RhdGUsCiAJY2hhcgkgICAqcmFuZ2VfdHlwZV9uYW1lc3BhY2UgPSBOVUxMOwogCWNoYXIJ ICAgKnJhbmdlX3R5cGVfbmFtZSA9IE5VTEw7CiAJaW50CQkJcmFuZ2VfYXR0bm8gPSBJbnZhbGlk QXR0ck51bWJlcjsKKwlBdHRyTnVtYmVyCXN0YXJ0X2F0dG5vID0gSW52YWxpZEF0dHJOdW1iZXI7 CisJQXR0ck51bWJlcgllbmRfYXR0bm8gPSBJbnZhbGlkQXR0ck51bWJlcjsKKwljaGFyCSAgICpz dGFydGNvbG5hbWUgPSBOVUxMOworCWNoYXIJICAgKmVuZGNvbG5hbWUgPSBOVUxMOwogCUZvcm1f cGdfYXR0cmlidXRlIGF0dHI7CiAJT2lkCQkJb3BjbGFzczsKIAlPaWQJCQlvcGZhbWlseTsKQEAg LTEzNjQsNiArMTM3MSw1NCBAQCB0cmFuc2Zvcm1Gb3JQb3J0aW9uT2ZDbGF1c2UoUGFyc2VTdGF0 ZSAqcHN0YXRlLAogCWlmICghZ2V0X3R5cG5hbWVfYW5kX25hbWVzcGFjZShhdHRyLT5hdHR0eXBp ZCwgJnJhbmdlX3R5cGVfbmFtZSwgJnJhbmdlX3R5cGVfbmFtZXNwYWNlKSkKIAkJZWxvZyhFUlJP UiwgImNhY2hlIGxvb2t1cCBmYWlsZWQgZm9yIHR5cGUgJXUiLCBhdHRyLT5hdHR0eXBpZCk7CiAK KwkvKgorCSAqIElmIHdlIGFyZSB1c2luZyBhIFBFUklPRCwgd2UgbmVlZCB0aGUgc3RhcnQgJiBl bmQgY29sdW1ucy4gSWYgdGhlCisJICogYXR0cmlidXRlIGl0IG5vdCBhIEdFTkVSQVRFRCBjb2x1 bW4sIHdlIG5lZWRuJ3QgcXVlcnkgcGdfcGVyaW9kLgorCSAqLworCWlmIChhdHRyLT5hdHRnZW5l cmF0ZWQgPT0gQVRUUklCVVRFX0dFTkVSQVRFRF9TVE9SRUQpCisJeworCQlIZWFwVHVwbGUJcGVy VHVwbGUgPSBTZWFyY2hTeXNDYWNoZTIoUEVSSU9ETkFNRSwKKwkJCQkJCQkJCQkJICAgT2JqZWN0 SWRHZXREYXR1bShSZWxhdGlvbkdldFJlbGlkKHRhcmdldHJlbCkpLAorCQkJCQkJCQkJCQkgICBQ b2ludGVyR2V0RGF0dW0ocmFuZ2VfbmFtZSkpOworCisJCWlmIChIZWFwVHVwbGVJc1ZhbGlkKHBl clR1cGxlKSkKKwkJeworCQkJRm9ybV9wZ19wZXJpb2QgcGVyID0gKEZvcm1fcGdfcGVyaW9kKSBH RVRTVFJVQ1QocGVyVHVwbGUpOworCQkJRm9ybV9wZ19hdHRyaWJ1dGUgcGVyYXR0cjsKKworCQkJ c3RhcnRfYXR0bm8gPSBwZXItPnBlcnN0YXJ0OworCQkJZW5kX2F0dG5vID0gcGVyLT5wZXJlbmQ7 CisKKwkJCXBlcmF0dHIgPSBUdXBsZURlc2NBdHRyKHRhcmdldHJlbC0+cmRfYXR0LCBzdGFydF9h dHRubyAtIDEpOworCQkJc3RhcnRjb2xuYW1lID0gTmFtZVN0cihwZXJhdHRyLT5hdHRuYW1lKTsK KworCQkJcmVzdWx0LT5zdGFydFZhciA9IG1ha2VWYXIoCisJCQkJCQkJCQkgICBydGluZGV4LAor CQkJCQkJCQkJICAgc3RhcnRfYXR0bm8sCisJCQkJCQkJCQkgICBwZXJhdHRyLT5hdHR0eXBpZCwK KwkJCQkJCQkJCSAgIHBlcmF0dHItPmF0dHR5cG1vZCwKKwkJCQkJCQkJCSAgIHBlcmF0dHItPmF0 dGNvbGxhdGlvbiwKKwkJCQkJCQkJCSAgIDApOworCisJCQlwZXJhdHRyID0gVHVwbGVEZXNjQXR0 cih0YXJnZXRyZWwtPnJkX2F0dCwgZW5kX2F0dG5vIC0gMSk7CisJCQllbmRjb2xuYW1lID0gTmFt ZVN0cihwZXJhdHRyLT5hdHRuYW1lKTsKKwkJCXJlc3VsdC0+ZW5kVmFyID0gbWFrZVZhcigKKwkJ CQkJCQkJCSBydGluZGV4LAorCQkJCQkJCQkJIGVuZF9hdHRubywKKwkJCQkJCQkJCSBwZXJhdHRy LT5hdHR0eXBpZCwKKwkJCQkJCQkJCSBwZXJhdHRyLT5hdHR0eXBtb2QsCisJCQkJCQkJCQkgcGVy YXR0ci0+YXR0Y29sbGF0aW9uLAorCQkJCQkJCQkJIDApOworCisJCQlSZWxlYXNlU3lzQ2FjaGUo cGVyVHVwbGUpOworCQl9CisJfQorCisJaWYgKHN0YXJ0X2F0dG5vID09IEludmFsaWRBdHRyTnVt YmVyKQorCXsKKwkJcmVzdWx0LT5zdGFydFZhciA9IE5VTEw7CisJCXJlc3VsdC0+ZW5kVmFyID0g TlVMTDsKKwl9CiAKIAlpZiAoZm9yUG9ydGlvbk9mLT50YXJnZXQpCiAKQEAgLTE0MzUsNyArMTQ5 MCwxMCBAQCB0cmFuc2Zvcm1Gb3JQb3J0aW9uT2ZDbGF1c2UoUGFyc2VTdGF0ZSAqcHN0YXRlLAog CXsKIAkJLyoKIAkJICogTm93IG1ha2Ugc3VyZSB3ZSB1cGRhdGUgdGhlIHN0YXJ0L2VuZCB0aW1l IG9mIHRoZSByZWNvcmQuIEZvciBhCi0JCSAqIHJhbmdlIGNvbCAocikgdGhpcyBpcyBgciA9IHIg KiB0YXJnZXRSYW5nZWAuCisJCSAqIHJhbmdlIGNvbCAocikgdGhpcyBpcyBgciA9IHIgKiB0YXJn ZXRSYW5nZWAuIEZvciBhIFBFUklPRCB3aXRoIGNvbHMKKwkJICogKHMsIGUpIHRoaXMgaXMgYHMg PSBsb3dlcih0c3JhbmdlKHMsIGUpICogdGFyZ2V0UmFuZ2UpYCBhbmQgYGUgPQorCQkgKiB1cHBl cih0c3JhbmdlKHMsIGUpICogdGFyZ2V0UmFuZ2VgIChvZiBjb3Vyc2Ugbm90IG5lY2Vzc2FyaWx5 IHdpdGgKKwkJICogdHNyYW5nZSwgYnV0IHdpdGggd2hhdGV2ZXIgcmFuZ2UgdHlwZSBpcyB1c2Vk IHRoZXJlKS4KIAkJICovCiAJCU9pZAkJCWludGVyc2VjdG9wZXJvaWQ7CiAJCUxpc3QJICAgKmZ1 bmNBcmdzID0gTklMOwpAQCAtMTQ3MCwxNCArMTUyOCw3MiBAQCB0cmFuc2Zvcm1Gb3JQb3J0aW9u T2ZDbGF1c2UoUGFyc2VTdGF0ZSAqcHN0YXRlLAogCQlyYW5nZVRMRUV4cHIgPSBtYWtlRnVuY0V4 cHIoZnVuY2lkLCBhdHRyLT5hdHR0eXBpZCwgZnVuY0FyZ3MsCiAJCQkJCQkJCQlJbnZhbGlkT2lk LCBJbnZhbGlkT2lkLCBDT0VSQ0VfRVhQTElDSVRfQ0FMTCk7CiAKLQkJLyogTWFrZSBhIFRMRSB0 byBzZXQgdGhlIHJhbmdlIGNvbHVtbiAqLworCQkvKiBNYWtlIGEgVExFIHRvIHNldCB0aGUgcmFu Z2UgY29sdW1uIG9yIHN0YXJ0L2VuZCBjb2x1bW5zICovCiAJCXJlc3VsdC0+cmFuZ2VUYXJnZXRM aXN0ID0gTklMOwotCQl0bGUgPSBtYWtlVGFyZ2V0RW50cnkoKEV4cHIgKikgcmFuZ2VUTEVFeHBy LCByYW5nZV9hdHRubywgcmFuZ2VfbmFtZSwgZmFsc2UpOwotCQlyZXN1bHQtPnJhbmdlVGFyZ2V0 TGlzdCA9IGxhcHBlbmQocmVzdWx0LT5yYW5nZVRhcmdldExpc3QsIHRsZSk7CiAKLQkJLyogTWFy ayB0aGUgcmFuZ2UgY29sdW1uIGFzIHJlcXVpcmluZyB1cGRhdGUgcGVybWlzc2lvbnMgKi8KLQkJ dGFyZ2V0X3Blcm1pbmZvLT51cGRhdGVkQ29scyA9IGJtc19hZGRfbWVtYmVyKHRhcmdldF9wZXJt aW5mby0+dXBkYXRlZENvbHMsCi0JCQkJCQkJCQkJCQkJICByYW5nZV9hdHRubyAtIEZpcnN0TG93 SW52YWxpZEhlYXBBdHRyaWJ1dGVOdW1iZXIpOworCQlpZiAocmVzdWx0LT5zdGFydFZhcikKKwkJ eworCQkJRnVuY0V4cHIgICAqYm91bmRUTEVFeHByOworCQkJT2lkCQkJYXJnX3R5cGVzWzFdID0g e0FOWVJBTkdFT0lEfTsKKwkJCUZ1bmNEZXRhaWxDb2RlIGZkcmVzdWx0OworCQkJaW50CQkJZmdj X2ZsYWdzOworCQkJT2lkCQkJcmV0dHlwZTsKKwkJCWJvb2wJCXJldHNldDsKKwkJCWludAkJCW52 YXJnczsKKwkJCU9pZAkJCXZhdHlwZTsKKwkJCU9pZAkJICAgKmRlY2xhcmVkX2FyZ190eXBlczsK KwkJCU9pZAkJCWVsZW10eXBpZCA9IGdldF9yYW5nZV9zdWJ0eXBlKGF0dHItPmF0dHR5cGlkKTsK KworCQkJLyogc2V0IHRoZSBzdGFydCBjb2x1bW4gKi8KKwkJCWZkcmVzdWx0ID0gZnVuY19nZXRf ZGV0YWlsKFN5c3RlbUZ1bmNOYW1lKCJsb3dlciIpLCBOSUwsIE5JTCwgMSwKKwkJCQkJCQkJCSAg IGFyZ190eXBlcywKKwkJCQkJCQkJCSAgIGZhbHNlLCBmYWxzZSwgZmFsc2UsICZmZ2NfZmxhZ3Ms CisJCQkJCQkJCQkgICAmZnVuY2lkLCAmcmV0dHlwZSwgJnJldHNldCwKKwkJCQkJCQkJCSAgICZu dmFyZ3MsICZ2YXR5cGUsCisJCQkJCQkJCQkgICAmZGVjbGFyZWRfYXJnX3R5cGVzLCBOVUxMKTsK KwkJCWlmIChmZHJlc3VsdCAhPSBGVU5DREVUQUlMX05PUk1BTCkKKwkJCQllbG9nKEVSUk9SLCAi ZmFpbGVkIHRvIGZpbmQgbG93ZXIoYW55cmFuZ2UpIGZ1bmN0aW9uIik7CisJCQlib3VuZFRMRUV4 cHIgPSBtYWtlRnVuY0V4cHIoZnVuY2lkLAorCQkJCQkJCQkJCWVsZW10eXBpZCwKKwkJCQkJCQkJ CQlsaXN0X21ha2UxKHJhbmdlVExFRXhwciksCisJCQkJCQkJCQkJSW52YWxpZE9pZCwgSW52YWxp ZE9pZCwgQ09FUkNFX0VYUExJQ0lUX0NBTEwpOworCQkJdGxlID0gbWFrZVRhcmdldEVudHJ5KChF eHByICopIGJvdW5kVExFRXhwciwgc3RhcnRfYXR0bm8sIHN0YXJ0Y29sbmFtZSwgZmFsc2UpOwor CQkJcmVzdWx0LT5yYW5nZVRhcmdldExpc3QgPSBsYXBwZW5kKHJlc3VsdC0+cmFuZ2VUYXJnZXRM aXN0LCB0bGUpOworCisJCQkvKiBzZXQgdGhlIGVuZCBjb2x1bW4gKi8KKwkJCWZkcmVzdWx0ID0g ZnVuY19nZXRfZGV0YWlsKFN5c3RlbUZ1bmNOYW1lKCJ1cHBlciIpLCBOSUwsIE5JTCwgMSwKKwkJ CQkJCQkJCSAgIGFyZ190eXBlcywKKwkJCQkJCQkJCSAgIGZhbHNlLCBmYWxzZSwgZmFsc2UsICZm Z2NfZmxhZ3MsCisJCQkJCQkJCQkgICAmZnVuY2lkLCAmcmV0dHlwZSwgJnJldHNldCwKKwkJCQkJ CQkJCSAgICZudmFyZ3MsICZ2YXR5cGUsCisJCQkJCQkJCQkgICAmZGVjbGFyZWRfYXJnX3R5cGVz LCBOVUxMKTsKKwkJCWlmIChmZHJlc3VsdCAhPSBGVU5DREVUQUlMX05PUk1BTCkKKwkJCQllbG9n KEVSUk9SLCAiZmFpbGVkIHRvIGZpbmQgdXBwZXIoYW55cmFuZ2UpIGZ1bmN0aW9uIik7CisJCQli b3VuZFRMRUV4cHIgPSBtYWtlRnVuY0V4cHIoZnVuY2lkLAorCQkJCQkJCQkJCWVsZW10eXBpZCwK KwkJCQkJCQkJCQlsaXN0X21ha2UxKHJhbmdlVExFRXhwciksCisJCQkJCQkJCQkJSW52YWxpZE9p ZCwgSW52YWxpZE9pZCwgQ09FUkNFX0VYUExJQ0lUX0NBTEwpOworCQkJdGxlID0gbWFrZVRhcmdl dEVudHJ5KChFeHByICopIGJvdW5kVExFRXhwciwgZW5kX2F0dG5vLCBlbmRjb2xuYW1lLCBmYWxz ZSk7CisJCQlyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCA9IGxhcHBlbmQocmVzdWx0LT5yYW5nZVRh cmdldExpc3QsIHRsZSk7CisKKwkJCS8qCisJCQkgKiBNYXJrIHRoZSBzdGFydC9lbmQgY29sdW1u cyBhcyByZXF1aXJpbmcgdXBkYXRlIHBlcm1pc3Npb25zLiBBcworCQkJICogdXN1YWwsIHdlIGRv bid0IGNoZWNrIHBlcm1pc3Npb25zIGZvciB0aGUgR0VORVJBVEVEIGNvbHVtbi4KKwkJCSAqLwor CQkJdGFyZ2V0X3Blcm1pbmZvLT51cGRhdGVkQ29scyA9IGJtc19hZGRfbWVtYmVyKHRhcmdldF9w ZXJtaW5mby0+dXBkYXRlZENvbHMsCisJCQkJCQkJCQkJCQkJCSAgc3RhcnRfYXR0bm8gLSBGaXJz dExvd0ludmFsaWRIZWFwQXR0cmlidXRlTnVtYmVyKTsKKwkJCXRhcmdldF9wZXJtaW5mby0+dXBk YXRlZENvbHMgPSBibXNfYWRkX21lbWJlcih0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRDb2xzLAor CQkJCQkJCQkJCQkJCQkgIGVuZF9hdHRubyAtIEZpcnN0TG93SW52YWxpZEhlYXBBdHRyaWJ1dGVO dW1iZXIpOworCQl9CisJCWVsc2UKKwkJeworCQkJdGxlID0gbWFrZVRhcmdldEVudHJ5KChFeHBy ICopIHJhbmdlVExFRXhwciwgcmFuZ2VfYXR0bm8sIHJhbmdlX25hbWUsIGZhbHNlKTsKKwkJCXJl c3VsdC0+cmFuZ2VUYXJnZXRMaXN0ID0gbGFwcGVuZChyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCwg dGxlKTsKKworCQkJLyogTWFyayB0aGUgcmFuZ2UgY29sdW1uIGFzIHJlcXVpcmluZyB1cGRhdGUg cGVybWlzc2lvbnMgKi8KKwkJCXRhcmdldF9wZXJtaW5mby0+dXBkYXRlZENvbHMgPSBibXNfYWRk X21lbWJlcih0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRDb2xzLAorCQkJCQkJCQkJCQkJCQkgIHJh bmdlX2F0dG5vIC0gRmlyc3RMb3dJbnZhbGlkSGVhcEF0dHJpYnV0ZU51bWJlcik7CisJCX0KIAl9 CiAJZWxzZQogCQlyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCA9IE5JTDsKZGlmZiAtLWdpdCBhL3Ny Yy9iYWNrZW5kL3BhcnNlci9ncmFtLnkgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CmluZGV4 IGZlOTg3ODQyYjA2Li45MzBjOTJmZGY5NSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2Vy L2dyYW0ueQorKysgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CkBAIC01OTksNyArNTk5LDcg QEAgc3RhdGljIE5vZGUgKm1ha2VSZWN1cnNpdmVWaWV3U2VsZWN0KGNoYXIgKnJlbG5hbWUsIExp c3QgKmFsaWFzZXMsIE5vZGUgKnF1ZXJ5KTsKICV0eXBlIDxrZXl3b3JkPiBjb2xfbmFtZV9rZXl3 b3JkIHJlc2VydmVkX2tleXdvcmQKICV0eXBlIDxrZXl3b3JkPiBiYXJlX2xhYmVsX2tleXdvcmQK IAotJXR5cGUgPG5vZGU+CURvbWFpbkNvbnN0cmFpbnQgVGFibGVDb25zdHJhaW50IFRhYmxlTGlr ZUNsYXVzZQorJXR5cGUgPG5vZGU+CURvbWFpbkNvbnN0cmFpbnQgVGFibGVDb25zdHJhaW50IFRh YmxlTGlrZUNsYXVzZSBUYWJsZVBlcmlvZAogJXR5cGUgPGl2YWw+CVRhYmxlTGlrZU9wdGlvbkxp c3QgVGFibGVMaWtlT3B0aW9uCiAldHlwZSA8c3RyPgkJY29sdW1uX2NvbXByZXNzaW9uIG9wdF9j b2x1bW5fY29tcHJlc3Npb24gY29sdW1uX3N0b3JhZ2Ugb3B0X2NvbHVtbl9zdG9yYWdlCiAldHlw ZSA8bGlzdD4JQ29sUXVhbExpc3QKQEAgLTI2OTIsNiArMjY5MiwyNCBAQCBhbHRlcl90YWJsZV9j bWQ6CiAJCQkJCW4tPmRlZiA9IChOb2RlICopICQ0OwogCQkJCQkkJCA9IChOb2RlICopIG47CiAJ CQkJfQorCQkJLyogQUxURVIgVEFCTEUgPG5hbWU+IEFERCBQRVJJT0QgRk9SIDxuYW1lPiAoPG5h bWU+LCA8bmFtZT4pICovCisJCQl8IEFERF9QIFRhYmxlUGVyaW9kCisJCQkJeworCQkJCQlBbHRl clRhYmxlQ21kICpuID0gbWFrZU5vZGUoQWx0ZXJUYWJsZUNtZCk7CisJCQkJCW4tPnN1YnR5cGUg PSBBVF9BZGRQZXJpb2Q7CisJCQkJCW4tPmRlZiA9ICQyOworCQkJCQkkJCA9IChOb2RlICopbjsK KwkJCQl9CisJCQkvKiBBTFRFUiBUQUJMRSA8bmFtZT4gRFJPUCBQRVJJT0QgRk9SIDxuYW1lPiBb UkVTVFJJQ1R8Q0FTQ0FERV0gKi8KKwkJCXwgRFJPUCBQRVJJT0QgRk9SIG5hbWUgb3B0X2Ryb3Bf YmVoYXZpb3IKKwkJCQl7CisJCQkJCUFsdGVyVGFibGVDbWQgKm4gPSBtYWtlTm9kZShBbHRlclRh YmxlQ21kKTsKKwkJCQkJbi0+c3VidHlwZSA9IEFUX0Ryb3BQZXJpb2Q7CisJCQkJCW4tPm5hbWUg PSAkNDsKKwkJCQkJbi0+YmVoYXZpb3IgPSAkNTsKKwkJCQkJbi0+bWlzc2luZ19vayA9IGZhbHNl OworCQkJCQkkJCA9IChOb2RlICopbjsKKwkJCQl9CiAJCQkvKiBBTFRFUiBUQUJMRSA8bmFtZT4g QUREIENPTlNUUkFJTlQgLi4uICovCiAJCQl8IEFERF9QIFRhYmxlQ29uc3RyYWludAogCQkJCXsK QEAgLTM4NTQsOCArMzg3MiwxMCBAQCBUYWJsZUVsZW1lbnQ6CiAJCQljb2x1bW5EZWYJCQkJCQkJ eyAkJCA9ICQxOyB9CiAJCQl8IFRhYmxlTGlrZUNsYXVzZQkJCQkJeyAkJCA9ICQxOyB9CiAJCQl8 IFRhYmxlQ29uc3RyYWludAkJCQkJeyAkJCA9ICQxOyB9CisJCQl8IFRhYmxlUGVyaW9kCQkJCQkJ eyAkJCA9ICQxOyB9CiAJCTsKIAorCiBUeXBlZFRhYmxlRWxlbWVudDoKIAkJCWNvbHVtbk9wdGlv bnMJCQkJCQl7ICQkID0gJDE7IH0KIAkJCXwgVGFibGVDb25zdHJhaW50CQkJCQl7ICQkID0gJDE7 IH0KQEAgLTQyMzMsNiArNDI1MywxOSBAQCBUYWJsZUxpa2VPcHRpb246CiAJCTsKIAogCitUYWJs ZVBlcmlvZDoKKwkJCVBFUklPRCBGT1IgbmFtZSAnKCcgbmFtZSAnLCcgbmFtZSAnKScgb3B0X2Rl ZmluaXRpb24KKwkJCQl7CisJCQkJCVBlcmlvZERlZiAqbiA9IG1ha2VOb2RlKFBlcmlvZERlZik7 CisJCQkJCW4tPnBlcmlvZG5hbWUgPSAkMzsKKwkJCQkJbi0+c3RhcnRjb2xuYW1lID0gJDU7CisJ CQkJCW4tPmVuZGNvbG5hbWUgPSAkNzsKKwkJCQkJbi0+b3B0aW9ucyA9ICQ5OworCQkJCQluLT5s b2NhdGlvbiA9IEAxOworCQkJCQkkJCA9IChOb2RlICopIG47CisJCQkJfQorCQk7CisKIC8qIENv bnN0cmFpbnRFbGVtIHNwZWNpZmllcyBjb25zdHJhaW50IHN5bnRheCB3aGljaCBpcyBub3QgZW1i ZWRkZWQgaW50bwogICoJYSBjb2x1bW4gZGVmaW5pdGlvbi4gQ29sQ29uc3RyYWludEVsZW0gc3Bl Y2lmaWVzIHRoZSBlbWJlZGRlZCBmb3JtLgogICogLSB0aG9tYXMgMTk5Ny0xMi0wMwpAQCAtNzM2 Nyw2ICs3NDAwLDE0IEBAIENvbW1lbnRTdG10OgogCQkJCQluLT5jb21tZW50ID0gJDk7CiAJCQkJ CSQkID0gKE5vZGUgKikgbjsKIAkJCQl9CisJCQl8IENPTU1FTlQgT04gUEVSSU9EIGFueV9uYW1l IElTIGNvbW1lbnRfdGV4dAorCQkJCXsKKwkJCQkJQ29tbWVudFN0bXQgKm4gPSBtYWtlTm9kZShD b21tZW50U3RtdCk7CisJCQkJCW4tPm9ianR5cGUgPSBPQkpFQ1RfUEVSSU9EOworCQkJCQluLT5v YmplY3QgPSAoTm9kZSAqKSAkNDsKKwkJCQkJbi0+Y29tbWVudCA9ICQ2OworCQkJCQkkJCA9IChO b2RlICopIG47CisJCQkJfQogCQkJfCBDT01NRU5UIE9OIExBUkdFX1AgT0JKRUNUX1AgTnVtZXJp Y09ubHkgSVMgY29tbWVudF90ZXh0CiAJCQkJewogCQkJCQlDb21tZW50U3RtdCAqbiA9IG1ha2VO b2RlKENvbW1lbnRTdG10KTsKQEAgLTE4MDg2LDcgKzE4MTI3LDYgQEAgdW5yZXNlcnZlZF9rZXl3 b3JkOgogCQkJfCBQQVNTSU5HCiAJCQl8IFBBU1NXT1JECiAJCQl8IFBBVEgKLQkJCXwgUEVSSU9E CiAJCQl8IFBMQU4KIAkJCXwgUExBTlMKIAkJCXwgUE9MSUNZCkBAIC0xODM5Miw2ICsxODQzMiw3 IEBAIHJlc2VydmVkX2tleXdvcmQ6CiAJCQl8IE9OTFkKIAkJCXwgT1IKIAkJCXwgT1JERVIKKwkJ CXwgUEVSSU9ECiAJCQl8IFBMQUNJTkcKIAkJCXwgUFJJTUFSWQogCQkJfCBSRUZFUkVOQ0VTCmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfcmVsYXRpb24uYyBiL3NyYy9iYWNr ZW5kL3BhcnNlci9wYXJzZV9yZWxhdGlvbi5jCmluZGV4IDNjODBiZjFiOWNlLi5lYjFkMDY0M2Iw OSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3JlbGF0aW9uLmMKKysrIGIv c3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3JlbGF0aW9uLmMKQEAgLTIyLDYgKzIyLDcgQEAKICNp bmNsdWRlICJhY2Nlc3MvdGFibGUuaCIKICNpbmNsdWRlICJjYXRhbG9nL2hlYXAuaCIKICNpbmNs dWRlICJjYXRhbG9nL25hbWVzcGFjZS5oIgorI2luY2x1ZGUgImNhdGFsb2cvcGdfcGVyaW9kLmgi CiAjaW5jbHVkZSAiY2F0YWxvZy9wZ190eXBlLmgiCiAjaW5jbHVkZSAiZnVuY2FwaS5oIgogI2lu Y2x1ZGUgIm5vZGVzL21ha2VmdW5jcy5oIgpAQCAtMzI5Myw2ICszMjk0LDcgQEAgZXhwYW5kTlNJ dGVtQXR0cnMoUGFyc2VTdGF0ZSAqcHN0YXRlLCBQYXJzZU5hbWVzcGFjZUl0ZW0gKm5zaXRlbSwK IAkJCQkgIGludCBzdWJsZXZlbHNfdXAsIGJvb2wgcmVxdWlyZV9jb2xfcHJpdnMsIGludCBsb2Nh dGlvbikKIHsKIAlSYW5nZVRibEVudHJ5ICpydGUgPSBuc2l0ZW0tPnBfcnRlOworCUJpdG1hcHNl dCAgKnBlcmlvZGF0dHMgPSBOVUxMOwogCVJURVBlcm1pc3Npb25JbmZvICpwZXJtaW5mbyA9IG5z aXRlbS0+cF9wZXJtaW5mbzsKIAlMaXN0CSAgICpuYW1lcywKIAkJCSAgICp2YXJzOwpAQCAtMzMx NiwxMiArMzMxOCwyMCBAQCBleHBhbmROU0l0ZW1BdHRycyhQYXJzZVN0YXRlICpwc3RhdGUsIFBh cnNlTmFtZXNwYWNlSXRlbSAqbnNpdGVtLAogCQlwZXJtaW5mby0+cmVxdWlyZWRQZXJtcyB8PSBB Q0xfU0VMRUNUOwogCX0KIAorCS8qIEdldCBQRVJJT0QgY29sdW1ucyB0byBleGNsdWRlICovCisJ aWYgKHJ0ZS0+cnRla2luZCA9PSBSVEVfUkVMQVRJT04pCisJCXBlcmlvZGF0dHMgPSBnZXRfcGVy aW9kX2F0dG5vcyhydGUtPnJlbGlkKTsKKwogCWZvcmJvdGgobmFtZSwgbmFtZXMsIHZhciwgdmFy cykKIAl7CiAJCWNoYXIJICAgKmxhYmVsID0gc3RyVmFsKGxmaXJzdChuYW1lKSk7CiAJCVZhcgkJ ICAgKnZhcm5vZGUgPSAoVmFyICopIGxmaXJzdCh2YXIpOwogCQlUYXJnZXRFbnRyeSAqdGU7CiAK KwkJLyogSWYgdGhpcyBjb2x1bW4gaXMgZnJvbSBhIFBFUklPRCwgc2tpcCBpdCAqLworCQlpZiAo Ym1zX2lzX21lbWJlcih2YXJub2RlLT52YXJhdHRubywgcGVyaW9kYXR0cykpCisJCQljb250aW51 ZTsKKwogCQl0ZSA9IG1ha2VUYXJnZXRFbnRyeSgoRXhwciAqKSB2YXJub2RlLAogCQkJCQkJCSAo QXR0ck51bWJlcikgcHN0YXRlLT5wX25leHRfcmVzbm8rKywKIAkJCQkJCQkgbGFiZWwsCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5jIGIvc3JjL2JhY2tlbmQv cGFyc2VyL3BhcnNlX3V0aWxjbWQuYwppbmRleCBlOTZiMzhhNTlkNS4uNjdlMzZhYzEzODMgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMKKysrIGIvc3JjL2Jh Y2tlbmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYwpAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1ZGUg ImNhdGFsb2cvcGdfY29uc3RyYWludC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfb3BjbGFzcy5o IgogI2luY2x1ZGUgImNhdGFsb2cvcGdfb3BlcmF0b3IuaCIKKyNpbmNsdWRlICJjYXRhbG9nL3Bn X3BlcmlvZC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfc3RhdGlzdGljX2V4dC5oIgogI2luY2x1 ZGUgImNhdGFsb2cvcGdfdHlwZS5oIgogI2luY2x1ZGUgImNvbW1hbmRzL2NvbW1lbnQuaCIKQEAg LTgwLDYgKzgxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QKIAlib29sCQlpc2ZvcmVpZ247CQkvKiB0cnVl IGlmIENSRUFURS9BTFRFUiBGT1JFSUdOIFRBQkxFICovCiAJYm9vbAkJaXNhbHRlcjsJCS8qIHRy dWUgaWYgYWx0ZXJpbmcgZXhpc3RpbmcgdGFibGUgKi8KIAlMaXN0CSAgICpjb2x1bW5zOwkJLyog Q29sdW1uRGVmIGl0ZW1zICovCisJTGlzdAkgICAqcGVyaW9kczsJCS8qIFBlcmlvZERlZiBpdGVt cyAqLwogCUxpc3QJICAgKmNrY29uc3RyYWludHM7CS8qIENIRUNLIGNvbnN0cmFpbnRzICovCiAJ TGlzdAkgICAqbm5jb25zdHJhaW50czsJLyogTk9UIE5VTEwgY29uc3RyYWludHMgKi8KIAlMaXN0 CSAgICpma2NvbnN0cmFpbnRzOwkvKiBGT1JFSUdOIEtFWSBjb25zdHJhaW50cyAqLwpAQCAtMTEw LDYgKzExMiw4IEBAIHR5cGVkZWYgc3RydWN0CiAKIHN0YXRpYyB2b2lkIHRyYW5zZm9ybUNvbHVt bkRlZmluaXRpb24oQ3JlYXRlU3RtdENvbnRleHQgKmN4dCwKIAkJCQkJCQkJCSAgQ29sdW1uRGVm ICpjb2x1bW4pOworc3RhdGljIHZvaWQgdHJhbnNmb3JtVGFibGVQZXJpb2QoQ3JlYXRlU3RtdENv bnRleHQgKmN4dCwKKwkJCQkJCQkJIFBlcmlvZERlZiAqcGVyaW9kKTsKIHN0YXRpYyB2b2lkIHRy YW5zZm9ybVRhYmxlQ29uc3RyYWludChDcmVhdGVTdG10Q29udGV4dCAqY3h0LAogCQkJCQkJCQkJ IENvbnN0cmFpbnQgKmNvbnN0cmFpbnQpOwogc3RhdGljIHZvaWQgdHJhbnNmb3JtVGFibGVMaWtl Q2xhdXNlKENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsCkBAIC0yNDAsNiArMjQ0LDcgQEAgdHJhbnNm b3JtQ3JlYXRlU3RtdChDcmVhdGVTdG10ICpzdG10LCBjb25zdCBjaGFyICpxdWVyeVN0cmluZykK IAljeHQuaW5oUmVsYXRpb25zID0gc3RtdC0+aW5oUmVsYXRpb25zOwogCWN4dC5pc2FsdGVyID0g ZmFsc2U7CiAJY3h0LmNvbHVtbnMgPSBOSUw7CisJY3h0LnBlcmlvZHMgPSBOSUw7CiAJY3h0LmNr Y29uc3RyYWludHMgPSBOSUw7CiAJY3h0Lm5uY29uc3RyYWludHMgPSBOSUw7CiAJY3h0LmZrY29u c3RyYWludHMgPSBOSUw7CkBAIC0yNzksNiArMjg0LDEwIEBAIHRyYW5zZm9ybUNyZWF0ZVN0bXQo Q3JlYXRlU3RtdCAqc3RtdCwgY29uc3QgY2hhciAqcXVlcnlTdHJpbmcpCiAJCQkJdHJhbnNmb3Jt Q29sdW1uRGVmaW5pdGlvbigmY3h0LCAoQ29sdW1uRGVmICopIGVsZW1lbnQpOwogCQkJCWJyZWFr OwogCisJCQljYXNlIFRfUGVyaW9kRGVmOgorCQkJCXRyYW5zZm9ybVRhYmxlUGVyaW9kKCZjeHQs IChQZXJpb2REZWYgKikgZWxlbWVudCk7CisJCQkJYnJlYWs7CisKIAkJCWNhc2UgVF9Db25zdHJh aW50OgogCQkJCXRyYW5zZm9ybVRhYmxlQ29uc3RyYWludCgmY3h0LCAoQ29uc3RyYWludCAqKSBl bGVtZW50KTsKIAkJCQlicmVhazsKQEAgLTM2Nyw2ICszNzYsNyBAQCB0cmFuc2Zvcm1DcmVhdGVT dG10KENyZWF0ZVN0bXQgKnN0bXQsIGNvbnN0IGNoYXIgKnF1ZXJ5U3RyaW5nKQogCSAqIE91dHB1 dCByZXN1bHRzLgogCSAqLwogCXN0bXQtPnRhYmxlRWx0cyA9IGN4dC5jb2x1bW5zOworCXN0bXQt PnBlcmlvZHMgPSBjeHQucGVyaW9kczsKIAlzdG10LT5jb25zdHJhaW50cyA9IGN4dC5ja2NvbnN0 cmFpbnRzOwogCXN0bXQtPm5uY29uc3RyYWludHMgPSBjeHQubm5jb25zdHJhaW50czsKIApAQCAt MTAyNyw2ICsxMDM3LDkyIEBAIHRyYW5zZm9ybUNvbHVtbkRlZmluaXRpb24oQ3JlYXRlU3RtdENv bnRleHQgKmN4dCwgQ29sdW1uRGVmICpjb2x1bW4pCiAJfQogfQogCit2b2lkCit0cmFuc2Zvcm1Q ZXJpb2RPcHRpb25zKFBlcmlvZERlZiAqcGVyaW9kKQoreworCUxpc3RDZWxsICAgKm9wdGlvbjsK KwlEZWZFbGVtICAgICpkY29uc3RyYWludG5hbWUgPSBOVUxMOworCURlZkVsZW0gICAgKmRyYW5n ZXR5cGVuYW1lID0gTlVMTDsKKwlEZWZFbGVtICAgICpkY29sZXhpc3RzID0gTlVMTDsKKworCWZv cmVhY2gob3B0aW9uLCBwZXJpb2QtPm9wdGlvbnMpCisJeworCQlEZWZFbGVtICAgICpkZWZlbCA9 IChEZWZFbGVtICopIGxmaXJzdChvcHRpb24pOworCisJCWlmIChzdHJjbXAoZGVmZWwtPmRlZm5h bWUsICJjaGVja19jb25zdHJhaW50X25hbWUiKSA9PSAwKQorCQl7CisJCQlpZiAoZGNvbnN0cmFp bnRuYW1lKQorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29kZShFUlJDT0RFX1NZTlRB WF9FUlJPUiksCisJCQkJCQkgZXJybXNnKCJjb25mbGljdGluZyBvciByZWR1bmRhbnQgb3B0aW9u cyIpKSk7CisJCQlkY29uc3RyYWludG5hbWUgPSBkZWZlbDsKKwkJfQorCQllbHNlIGlmIChzdHJj bXAoZGVmZWwtPmRlZm5hbWUsICJyYW5nZXR5cGUiKSA9PSAwKQorCQl7CisJCQlpZiAoZHJhbmdl dHlwZW5hbWUpCisJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCShlcnJjb2RlKEVSUkNPREVfU1lO VEFYX0VSUk9SKSwKKwkJCQkJCSBlcnJtc2coImNvbmZsaWN0aW5nIG9yIHJlZHVuZGFudCBvcHRp b25zIikpKTsKKwkJCWRyYW5nZXR5cGVuYW1lID0gZGVmZWw7CisJCX0KKwkJZWxzZSBpZiAoc3Ry Y21wKGRlZmVsLT5kZWZuYW1lLCAiY29sZXhpc3RzIikgPT0gMCkKKwkJeworCQkJaWYgKGRjb2xl eGlzdHMpCisJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCShlcnJjb2RlKEVSUkNPREVfU1lOVEFY X0VSUk9SKSwKKwkJCQkJCSBlcnJtc2coImNvbmZsaWN0aW5nIG9yIHJlZHVuZGFudCBvcHRpb25z IikpKTsKKwkJCWRjb2xleGlzdHMgPSBkZWZlbDsKKwkJfQorCQllbHNlCisJCQllcmVwb3J0KEVS Uk9SLAorCQkJCQkoZXJyY29kZShFUlJDT0RFX1NZTlRBWF9FUlJPUiksCisJCQkJCSBlcnJtc2co Im9wdGlvbiBcIiVzXCIgbm90IHJlY29nbml6ZWQiLCBkZWZlbC0+ZGVmbmFtZSkpKTsKKwl9CisK KwlpZiAoZGNvbnN0cmFpbnRuYW1lICE9IE5VTEwpCisJCXBlcmlvZC0+Y29uc3RyYWludG5hbWUg PSBkZWZHZXRTdHJpbmcoZGNvbnN0cmFpbnRuYW1lKTsKKwllbHNlCisJCXBlcmlvZC0+Y29uc3Ry YWludG5hbWUgPSBOVUxMOworCisJaWYgKGRyYW5nZXR5cGVuYW1lICE9IE5VTEwpCisJCXBlcmlv ZC0+cmFuZ2V0eXBlbmFtZSA9IGRlZkdldFN0cmluZyhkcmFuZ2V0eXBlbmFtZSk7CisJZWxzZQor CQlwZXJpb2QtPnJhbmdldHlwZW5hbWUgPSBOVUxMOworCisJaWYgKGRjb2xleGlzdHMgIT0gTlVM TCkKKwkJcGVyaW9kLT5jb2xleGlzdHMgPSBkZWZHZXRCb29sZWFuKGRjb2xleGlzdHMpOworCWVs c2UKKwkJcGVyaW9kLT5jb2xleGlzdHMgPSBmYWxzZTsKK30KKworLyoKKyAqIHRyYW5zZm9ybVRh YmxlUGVyaW9kCisgKgkJdHJhbnNmb3JtIGEgUGVyaW9kRGVmIG5vZGUgd2l0aGluIENSRUFURSBU QUJMRQorICovCitzdGF0aWMgdm9pZAordHJhbnNmb3JtVGFibGVQZXJpb2QoQ3JlYXRlU3RtdENv bnRleHQgKmN4dCwgUGVyaW9kRGVmICpwZXJpb2QpCit7CisJaWYgKHN0cmNtcChwZXJpb2QtPnBl cmlvZG5hbWUsICJzeXN0ZW1fdGltZSIpID09IDApCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVy cmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAorCQkJCSBlcnJtc2coIlBFUklP RCBGT1IgU1lTVEVNX1RJTUUgaXMgbm90IHN1cHBvcnRlZCIpLAorCQkJCSBwYXJzZXJfZXJycG9z aXRpb24oY3h0LT5wc3RhdGUsCisJCQkJCQkJCQlwZXJpb2QtPmxvY2F0aW9uKSkpOworCisJaWYg KHN0cmNtcChwZXJpb2QtPnN0YXJ0Y29sbmFtZSwgcGVyaW9kLT5lbmRjb2xuYW1lKSA9PSAwKQor CQllcmVwb3J0KEVSUk9SLCAoZXJybXNnKCJjb2x1bW4gXCIlc1wiIGNhbid0IGJlIHRoZSBzdGFy dCBhbmQgZW5kIGNvbHVtbiBmb3IgcGVyaW9kIFwiJXNcIiIsCisJCQkJCQkJICAgcGVyaW9kLT5z dGFydGNvbG5hbWUsIHBlcmlvZC0+cGVyaW9kbmFtZSkpKTsKKworCS8qCisJICogRGV0ZXJtaW5l IHRoZSBjb2x1bW4gaW5mbyBhbmQgcmFuZ2UgdHlwZSBzbyB0aGF0CisJICogdHJhbnNmb3JtSW5k ZXhDb25zdHJhaW50cyBrbm93cyBob3cgdG8gY3JlYXRlIFBSSU1BUlkgS0VZL1VOSVFVRQorCSAq IGNvbnN0cmFpbnRzIHVzaW5nIHRoaXMgUEVSSU9ELgorCSAqLworCXRyYW5zZm9ybVBlcmlvZE9w dGlvbnMocGVyaW9kKTsKKworCWN4dC0+cGVyaW9kcyA9IGxhcHBlbmQoY3h0LT5wZXJpb2RzLCBw ZXJpb2QpOworfQorCiAvKgogICogdHJhbnNmb3JtVGFibGVDb25zdHJhaW50CiAgKgkJdHJhbnNm b3JtIGEgQ29uc3RyYWludCBub2RlIHdpdGhpbiBDUkVBVEUgVEFCTEUgb3IgQUxURVIgVEFCTEUK QEAgLTExMjgsNiArMTIyNCw3IEBAIHRyYW5zZm9ybVRhYmxlTGlrZUNsYXVzZShDcmVhdGVTdG10 Q29udGV4dCAqY3h0LCBUYWJsZUxpa2VDbGF1c2UgKnRhYmxlX2xpa2VfY2xhCiAJQXR0ck51bWJl cglwYXJlbnRfYXR0bm87CiAJUmVsYXRpb24JcmVsYXRpb247CiAJVHVwbGVEZXNjCXR1cGxlRGVz YzsKKwlCaXRtYXBzZXQgICpwZXJpb2RhdHRzOwogCUFjbFJlc3VsdAlhY2xyZXN1bHQ7CiAJY2hh cgkgICAqY29tbWVudDsKIAlQYXJzZUNhbGxiYWNrU3RhdGUgcGNic3RhdGU7CkBAIC0xMTczLDYg KzEyNzAsNyBAQCB0cmFuc2Zvcm1UYWJsZUxpa2VDbGF1c2UoQ3JlYXRlU3RtdENvbnRleHQgKmN4 dCwgVGFibGVMaWtlQ2xhdXNlICp0YWJsZV9saWtlX2NsYQogCX0KIAogCXR1cGxlRGVzYyA9IFJl bGF0aW9uR2V0RGVzY3IocmVsYXRpb24pOworCXBlcmlvZGF0dHMgPSBnZXRfcGVyaW9kX2F0dG5v cyhSZWxhdGlvbkdldFJlbGlkKHJlbGF0aW9uKSk7CiAKIAkvKgogCSAqIEluc2VydCB0aGUgY29w aWVkIGF0dHJpYnV0ZXMgaW50byB0aGUgY3h0IGZvciB0aGUgbmV3IHRhYmxlIGRlZmluaXRpb24u CkBAIC0xMTgyLDEwICsxMjgwLDE4IEBAIHRyYW5zZm9ybVRhYmxlTGlrZUNsYXVzZShDcmVhdGVT dG10Q29udGV4dCAqY3h0LCBUYWJsZUxpa2VDbGF1c2UgKnRhYmxlX2xpa2VfY2xhCiAJZm9yIChw YXJlbnRfYXR0bm8gPSAxOyBwYXJlbnRfYXR0bm8gPD0gdHVwbGVEZXNjLT5uYXR0czsKIAkJIHBh cmVudF9hdHRubysrKQogCXsKLQkJRm9ybV9wZ19hdHRyaWJ1dGUgYXR0cmlidXRlID0gVHVwbGVE ZXNjQXR0cih0dXBsZURlc2MsCi0JCQkJCQkJCQkJCQkJcGFyZW50X2F0dG5vIC0gMSk7CisJCUZv cm1fcGdfYXR0cmlidXRlIGF0dHJpYnV0ZTsKIAkJQ29sdW1uRGVmICAqZGVmOwogCisJCS8qCisJ CSAqIElmIHRoaXMgY29sdW1uIGlzIGZyb20gYSBQRVJJT0QsIHNraXAgaXQgKHNpbmNlIExJS0Ug bmV2ZXIgY29waWVzCisJCSAqIFBFUklPRHMpLgorCQkgKi8KKwkJaWYgKGJtc19pc19tZW1iZXIo cGFyZW50X2F0dG5vLCBwZXJpb2RhdHRzKSkKKwkJCWNvbnRpbnVlOworCisJCWF0dHJpYnV0ZSA9 IFR1cGxlRGVzY0F0dHIodHVwbGVEZXNjLCBwYXJlbnRfYXR0bm8gLSAxKTsKKwogCQkvKgogCQkg KiBJZ25vcmUgZHJvcHBlZCBjb2x1bW5zIGluIHRoZSBwYXJlbnQuCiAJCSAqLwpAQCAtMTI3MSwx MyArMTM3NywxNiBAQCB0cmFuc2Zvcm1UYWJsZUxpa2VDbGF1c2UoQ3JlYXRlU3RtdENvbnRleHQg KmN4dCwgVGFibGVMaWtlQ2xhdXNlICp0YWJsZV9saWtlX2NsYQogCS8qCiAJICogUmVwcm9kdWNl IG5vdC1udWxsIGNvbnN0cmFpbnRzLCBpZiBhbnksIGJ5IGNvcHlpbmcgdGhlbS4gIFdlIGRvIHRo aXMKIAkgKiByZWdhcmRsZXNzIG9mIG9wdGlvbnMgZ2l2ZW4uCisJICoKKwkgKiBTaW5jZSB3ZSBz a2lwcGVkIFBFUklPRHMnIEdFTkVSQVRFRCBjb2x1bW5zIGFib3ZlLCB3ZSBtdXN0IHNraXAgdGhl aXIKKwkgKiBub3QtbnVsbCBjb25zdHJhaW50cyBoZXJlLgogCSAqLwogCWlmICh0dXBsZURlc2Mt PmNvbnN0ciAmJiB0dXBsZURlc2MtPmNvbnN0ci0+aGFzX25vdF9udWxsKQogCXsKIAkJTGlzdAkg ICAqbHN0OwogCiAJCWxzdCA9IFJlbGF0aW9uR2V0Tm90TnVsbENvbnN0cmFpbnRzKFJlbGF0aW9u R2V0UmVsaWQocmVsYXRpb24pLCBmYWxzZSwKLQkJCQkJCQkJCQkJdHJ1ZSk7CisJCQkJCQkJCQkJ CXRydWUsIHBlcmlvZGF0dHMpOwogCQljeHQtPm5uY29uc3RyYWludHMgPSBsaXN0X2NvbmNhdChj eHQtPm5uY29uc3RyYWludHMsIGxzdCk7CiAKIAkJLyogQ29weSBjb21tZW50cyBvbiBub3QtbnVs bCBjb25zdHJhaW50cyAqLwpAQCAtMjYwOSw2ICsyNzE4LDcgQEAgdHJhbnNmb3JtSW5kZXhDb25z dHJhaW50KENvbnN0cmFpbnQgKmNvbnN0cmFpbnQsIENyZWF0ZVN0bXRDb250ZXh0ICpjeHQpCiAJ CXsKIAkJCWNoYXIJICAgKmtleSA9IHN0clZhbChsZmlyc3QobGMpKTsKIAkJCWJvb2wJCWZvdW5k ID0gZmFsc2U7CisJCQlib29sCQloYXNwZXJpb2QgPSBmYWxzZTsKIAkJCUNvbHVtbkRlZiAgKmNv bHVtbiA9IE5VTEw7CiAJCQlMaXN0Q2VsbCAgICpjb2x1bW5zOwogCQkJSW5kZXhFbGVtICAqaXBh cmFtOwpAQCAtMjYyNyw2ICsyNzM3LDI0IEBAIHRyYW5zZm9ybUluZGV4Q29uc3RyYWludChDb25z dHJhaW50ICpjb25zdHJhaW50LCBDcmVhdGVTdG10Q29udGV4dCAqY3h0KQogCQkJaWYgKCFmb3Vu ZCkKIAkJCQljb2x1bW4gPSBOVUxMOwogCisJCQkvKiBJZiB0aGUga2V5IGlzIFdJVEhPVVQgT1ZF UkxBUFMsIGEgUEVSSU9EIHdpbGwgd29yayB0b28uICovCisJCQlpZiAoIWZvdW5kICYmIGNvbnN0 cmFpbnQtPndpdGhvdXRfb3ZlcmxhcHMgJiYKKwkJCQlsYyA9PSBsaXN0X2xhc3RfY2VsbChjb25z dHJhaW50LT5rZXlzKSkKKwkJCXsKKwkJCQlQZXJpb2REZWYgICpwZXJpb2QgPSBOVUxMOworCisJ CQkJZm9yZWFjaChjb2x1bW5zLCBjeHQtPnBlcmlvZHMpCisJCQkJeworCQkJCQlwZXJpb2QgPSBs Zmlyc3Rfbm9kZShQZXJpb2REZWYsIGNvbHVtbnMpOworCQkJCQlpZiAoc3RyY21wKHBlcmlvZC0+ cGVyaW9kbmFtZSwga2V5KSA9PSAwKQorCQkJCQl7CisJCQkJCQlmb3VuZCA9IHRydWU7CisJCQkJ CQloYXNwZXJpb2QgPSB0cnVlOworCQkJCQkJYnJlYWs7CisJCQkJCX0KKwkJCQl9CisJCQl9CisK IAkJCWlmIChmb3VuZCkKIAkJCXsKIAkJCQkvKgpAQCAtMjY0MywyNCArMjc3MSwzNyBAQCB0cmFu c2Zvcm1JbmRleENvbnN0cmFpbnQoQ29uc3RyYWludCAqY29uc3RyYWludCwgQ3JlYXRlU3RtdENv bnRleHQgKmN4dCkKIAkJCQlpZiAoY29uc3RyYWludC0+Y29udHlwZSA9PSBDT05TVFJfUFJJTUFS WSAmJgogCQkJCQkhY3h0LT5pc2FsdGVyKQogCQkJCXsKLQkJCQkJaWYgKGNvbHVtbi0+aXNfbm90 X251bGwpCisJCQkJCWlmIChjb2x1bW4pCiAJCQkJCXsKLQkJCQkJCWZvcmVhY2hfbm9kZShDb25z dHJhaW50LCBubiwgY3h0LT5ubmNvbnN0cmFpbnRzKQorCQkJCQkJaWYgKGNvbHVtbi0+aXNfbm90 X251bGwpCiAJCQkJCQl7Ci0JCQkJCQkJaWYgKHN0cmNtcChzdHJWYWwobGluaXRpYWwobm4tPmtl eXMpKSwga2V5KSA9PSAwKQorCQkJCQkJCWZvcmVhY2hfbm9kZShDb25zdHJhaW50LCBubiwgY3h0 LT5ubmNvbnN0cmFpbnRzKQogCQkJCQkJCXsKLQkJCQkJCQkJaWYgKG5uLT5pc19ub19pbmhlcml0 KQotCQkJCQkJCQkJZXJlcG9ydChFUlJPUiwKLQkJCQkJCQkJCQkJZXJyY29kZShFUlJDT0RFX1NZ TlRBWF9FUlJPUiksCi0JCQkJCQkJCQkJCWVycm1zZygiY29uZmxpY3RpbmcgTk8gSU5IRVJJVCBk ZWNsYXJhdGlvbiBmb3Igbm90LW51bGwgY29uc3RyYWludCBvbiBjb2x1bW4gXCIlc1wiIiwKLQkJ CQkJCQkJCQkJCSAgIGtleSkpOwotCQkJCQkJCQlicmVhazsKKwkJCQkJCQkJaWYgKHN0cmNtcChz dHJWYWwobGluaXRpYWwobm4tPmtleXMpKSwga2V5KSA9PSAwKQorCQkJCQkJCQl7CisJCQkJCQkJ CQlpZiAobm4tPmlzX25vX2luaGVyaXQpCisJCQkJCQkJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJ CQkJCQkJCWVycmNvZGUoRVJSQ09ERV9TWU5UQVhfRVJST1IpLAorCQkJCQkJCQkJCQkJZXJybXNn KCJjb25mbGljdGluZyBOTyBJTkhFUklUIGRlY2xhcmF0aW9uIGZvciBub3QtbnVsbCBjb25zdHJh aW50IG9uIGNvbHVtbiBcIiVzXCIiLAorCQkJCQkJCQkJCQkJCSAgIGtleSkpOworCQkJCQkJCQkJ YnJlYWs7CisJCQkJCQkJCX0KIAkJCQkJCQl9CiAJCQkJCQl9CisJCQkJCQllbHNlCisJCQkJCQl7 CisJCQkJCQkJY29sdW1uLT5pc19ub3RfbnVsbCA9IHRydWU7CisJCQkJCQkJY3h0LT5ubmNvbnN0 cmFpbnRzID0KKwkJCQkJCQkJbGFwcGVuZChjeHQtPm5uY29uc3RyYWludHMsCisJCQkJCQkJCQkJ bWFrZU5vdE51bGxDb25zdHJhaW50KG1ha2VTdHJpbmcoa2V5KSkpOworCQkJCQkJfQogCQkJCQl9 Ci0JCQkJCWVsc2UKKwkJCQkJZWxzZSBpZiAoaGFzcGVyaW9kKQogCQkJCQl7Ci0JCQkJCQljb2x1 bW4tPmlzX25vdF9udWxsID0gdHJ1ZTsKKwkJCQkJCS8qCisJCQkJCQkgKiBJZiB3ZSdyZSB1c2lu ZyBhIFBFUklPRCwgd2UgYmV0dGVyIG1ha2Ugc3VyZSBpdCBpcworCQkJCQkJICogTk9UIE5VTEwK KwkJCQkJCSAqLwogCQkJCQkJY3h0LT5ubmNvbnN0cmFpbnRzID0KIAkJCQkJCQlsYXBwZW5kKGN4 dC0+bm5jb25zdHJhaW50cywKIAkJCQkJCQkJCW1ha2VOb3ROdWxsQ29uc3RyYWludChtYWtlU3Ry aW5nKGtleSkpKTsKQEAgLTI3ODcsNyArMjkyOCwxMyBAQCB0cmFuc2Zvcm1JbmRleENvbnN0cmFp bnQoQ29uc3RyYWludCAqY29uc3RyYWludCwgQ3JlYXRlU3RtdENvbnRleHQgKmN4dCkKIAkJCQkJ CX0KIAkJCQkJfQogCQkJCX0KLQkJCQlpZiAoZm91bmQpCisKKwkJCQkvKgorCQkJCSAqIEluIENS RUFURSBUQUJMRSB3ZSBkb24ndCBrbm93IFBFUklPRHMnIHJhbmdldHlwZSB5ZXQsIGJ1dAorCQkJ CSAqIHdlIGtub3cgaXQgd2lsbCBiZSBhIHJhbmdlL211bHRpcmFuZ2UuIFNvIGlmIHdlIGhhdmUg YQorCQkJCSAqIFBFUklPRCB0aGVuIHdlJ3JlIHNhZmUuCisJCQkJICovCisJCQkJaWYgKGZvdW5k ICYmICFoYXNwZXJpb2QpCiAJCQkJewogCQkJCQlpZiAoIU9pZElzVmFsaWQodHlwaWQpICYmIGNv bHVtbikKIAkJCQkJCXR5cGlkID0gdHlwZW5hbWVUeXBlSWQoTlVMTCwgY29sdW1uLT50eXBlTmFt ZSk7CkBAIC0zMTEzLDYgKzMyNjAsMTAgQEAgdHJhbnNmb3JtSW5kZXhTdG10KE9pZCByZWxpZCwg SW5kZXhTdG10ICpzdG10LCBjb25zdCBjaGFyICpxdWVyeVN0cmluZykKIAkJfQogCX0KIAorCS8q IHRha2UgY2FyZSBvZiB0aGUgcGVyaW9kICovCisJaWYgKHN0bXQtPnBlcmlvZCkKKwkJc3RtdC0+ cGVyaW9kLT5vaWQgPSBnZXRfcGVyaW9kX29pZChyZWxpZCwgc3RtdC0+cGVyaW9kLT5wZXJpb2Ru YW1lLCBmYWxzZSk7CisKIAkvKgogCSAqIENoZWNrIHRoYXQgb25seSB0aGUgYmFzZSByZWwgaXMg bWVudGlvbmVkLiAgKFRoaXMgc2hvdWxkIGJlIGRlYWQgY29kZQogCSAqIG5vdyB0aGF0IGFkZF9t aXNzaW5nX2Zyb20gaXMgaGlzdG9yeS4pCkBAIC0zNTcwLDYgKzM3MjEsNyBAQCB0cmFuc2Zvcm1B bHRlclRhYmxlU3RtdChPaWQgcmVsaWQsIEFsdGVyVGFibGVTdG10ICpzdG10LAogCWN4dC5pbmhS ZWxhdGlvbnMgPSBOSUw7CiAJY3h0LmlzYWx0ZXIgPSB0cnVlOwogCWN4dC5jb2x1bW5zID0gTklM OworCWN4dC5wZXJpb2RzID0gTklMOwogCWN4dC5ja2NvbnN0cmFpbnRzID0gTklMOwogCWN4dC5u bmNvbnN0cmFpbnRzID0gTklMOwogCWN4dC5ma2NvbnN0cmFpbnRzID0gTklMOwpkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L01ha2VmaWxlIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0 L01ha2VmaWxlCmluZGV4IGNjNjhhYzU0NWE1Li41ZDhjYjM1MzAxMiAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L01ha2VmaWxlCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9N YWtlZmlsZQpAQCAtODAsNiArODAsNyBAQCBPQkpTID0gXAogCW9yYWNsZV9jb21wYXQubyBcCiAJ b3JkZXJlZHNldGFnZ3MubyBcCiAJcGFydGl0aW9uZnVuY3MubyBcCisJcGVyaW9kLm8gXAogCXBn X2xvY2FsZS5vIFwKIAlwZ19sb2NhbGVfYnVpbHRpbi5vIFwKIAlwZ19sb2NhbGVfaWN1Lm8gXApk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3BlcmlvZC5jIGIvc3JjL2JhY2tlbmQv dXRpbHMvYWR0L3BlcmlvZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw Li42Zjg5OTA2OGQwMwotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9w ZXJpb2QuYwpAQCAtMCwwICsxLDU4IEBACisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBwZXJp b2QuYworICoJICBGdW5jdGlvbnMgdG8gc3VwcG9ydCBwZXJpb2RzLgorICoKKyAqCisgKiBQb3J0 aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMiwgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1l bnQgR3JvdXAKKyAqIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5NCwgUmVnZW50cyBvZiB0aGUg VW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisgKgorICoKKyAqIElERU5USUZJQ0FUSU9OCisgKgkg IHNyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZXJpb2QuYworICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor ICovCisjaW5jbHVkZSAicG9zdGdyZXMuaCIKKworI2luY2x1ZGUgImV4ZWN1dG9yL3R1cHRhYmxl LmgiCisjaW5jbHVkZSAiZm1nci5oIgorI2luY2x1ZGUgIm5vZGVzL3ByaW1ub2Rlcy5oIgorI2lu Y2x1ZGUgInV0aWxzL2ZtZ3Jwcm90b3MuaCIKKyNpbmNsdWRlICJ1dGlscy9wZXJpb2QuaCIKKyNp bmNsdWRlICJ1dGlscy9yYW5nZXR5cGVzLmgiCisKK0RhdHVtCitwZXJpb2RfdG9fcmFuZ2UoVHVw bGVUYWJsZVNsb3QgKnNsb3QsIGludCBzdGFydGF0dG5vLCBpbnQgZW5kYXR0bm8sIE9pZCByYW5n ZXR5cGUpCit7CisJRGF0dW0JCXN0YXJ0dmFsdWU7CisJRGF0dW0JCWVuZHZhbHVlOworCURhdHVt CQlyZXN1bHQ7CisJYm9vbAkJc3RhcnRpc251bGw7CisJYm9vbAkJZW5kaXNudWxsOworCisJTE9D QUxfRkNJTkZPKGZjaW5mbywgMik7CisJRm1nckluZm8JZmxpbmZvOworCUZ1bmNFeHByICAgKmY7 CisKKwlJbml0RnVuY3Rpb25DYWxsSW5mb0RhdGEoKmZjaW5mbywgJmZsaW5mbywgMiwgSW52YWxp ZE9pZCwgTlVMTCwgTlVMTCk7CisJZiA9IG1ha2VOb2RlKEZ1bmNFeHByKTsKKwlmLT5mdW5jcmVz dWx0dHlwZSA9IHJhbmdldHlwZTsKKwlmbGluZm8uZm5fZXhwciA9IChOb2RlICopIGY7CisJZmxp bmZvLmZuX2V4dHJhID0gTlVMTDsKKworCS8qIGNvbXB1dGUgb2xkdmFsdWUgKi8KKwlzdGFydHZh bHVlID0gc2xvdF9nZXRhdHRyKHNsb3QsIHN0YXJ0YXR0bm8sICZzdGFydGlzbnVsbCk7CisJZW5k dmFsdWUgPSBzbG90X2dldGF0dHIoc2xvdCwgZW5kYXR0bm8sICZlbmRpc251bGwpOworCisJZmNp bmZvLT5hcmdzWzBdLnZhbHVlID0gc3RhcnR2YWx1ZTsKKwlmY2luZm8tPmFyZ3NbMF0uaXNudWxs ID0gc3RhcnRpc251bGw7CisJZmNpbmZvLT5hcmdzWzFdLnZhbHVlID0gZW5kdmFsdWU7CisJZmNp bmZvLT5hcmdzWzFdLmlzbnVsbCA9IGVuZGlzbnVsbDsKKworCXJlc3VsdCA9IHJhbmdlX2NvbnN0 cnVjdG9yMihmY2luZm8pOworCWlmIChmY2luZm8tPmlzbnVsbCkKKwkJZWxvZyhFUlJPUiwgImZ1 bmN0aW9uICV1IHJldHVybmVkIE5VTEwiLCBmbGluZm8uZm5fb2lkKTsKKworCXJldHVybiByZXN1 bHQ7Cit9CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9jYWNoZS9sc3lzY2FjaGUuYyBi L3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hlL2xzeXNjYWNoZS5jCmluZGV4IDQzMTU4YWZhYzE1Li4z NGM5ODE4OGIwZCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvY2FjaGUvbHN5c2NhY2hl LmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvY2FjaGUvbHN5c2NhY2hlLmMKQEAgLTMzLDYgKzMz LDcgQEAKICNpbmNsdWRlICJjYXRhbG9nL3BnX29wY2xhc3MuaCIKICNpbmNsdWRlICJjYXRhbG9n L3BnX29wZmFtaWx5LmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19vcGVyYXRvci5oIgorI2luY2x1 ZGUgImNhdGFsb2cvcGdfcGVyaW9kLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19wcm9jLmgiCiAj aW5jbHVkZSAiY2F0YWxvZy9wZ19wdWJsaWNhdGlvbi5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdf cmFuZ2UuaCIKQEAgLTEwODgsNiArMTA4OSw2OCBAQCBnZXRfYXR0b3B0aW9ucyhPaWQgcmVsaWQs IGludDE2IGF0dG51bSkKIAlyZXR1cm4gcmVzdWx0OwogfQogCisvKgkJCQktLS0tLS0tLS0tIFBH X1BFUklPRCBDQUNIRSAtLS0tLS0tLS0tCQkJCSAqLworCisvKgorICogZ2V0X3BlcmlvZG5hbWUg LSBnaXZlbiBpdHMgT0lELCBsb29rIHVwIGEgcGVyaW9kCisgKgorICogSWYgbWlzc2luZ19vayBp cyBmYWxzZSwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIHBlcmlvZCBpcyBub3QgZm91bmQuCisgKiBJ ZiB0cnVlLCBqdXN0IHJldHVybiBJbnZhbGlkT2lkLgorICovCitjaGFyICoKK2dldF9wZXJpb2Ru YW1lKE9pZCBwZXJpb2RpZCwgYm9vbCBtaXNzaW5nX29rKQoreworCUhlYXBUdXBsZQl0cDsKKwor CXRwID0gU2VhcmNoU3lzQ2FjaGUxKFBFUklPRE9JRCwKKwkJCQkJCSBPYmplY3RJZEdldERhdHVt KHBlcmlvZGlkKSk7CisJaWYgKEhlYXBUdXBsZUlzVmFsaWQodHApKQorCXsKKwkJRm9ybV9wZ19w ZXJpb2QgcGVyaW9kX3R1cCA9IChGb3JtX3BnX3BlcmlvZCkgR0VUU1RSVUNUKHRwKTsKKwkJY2hh cgkgICAqcmVzdWx0OworCisJCXJlc3VsdCA9IHBzdHJkdXAoTmFtZVN0cihwZXJpb2RfdHVwLT5w ZXJuYW1lKSk7CisJCVJlbGVhc2VTeXNDYWNoZSh0cCk7CisJCXJldHVybiByZXN1bHQ7CisJfQor CisJaWYgKCFtaXNzaW5nX29rKQorCQllbG9nKEVSUk9SLCAiY2FjaGUgbG9va3VwIGZhaWxlZCBm b3IgcGVyaW9kICVkIiwKKwkJCSBwZXJpb2RpZCk7CisJcmV0dXJuIE5VTEw7Cit9CisKKy8qCisg KiBnZXRfcGVyaW9kX29pZCAtIGdldHMgaXRzIHJlbGF0aW9uIGFuZCBuYW1lLCBsb29rIHVwIGEg cGVyaW9kCisgKgorICogSWYgbWlzc2luZ19vayBpcyBmYWxzZSwgdGhyb3cgYW4gZXJyb3IgaWYg dGhlIGNhc3QgaXMgbm90IGZvdW5kLiAgSWYKKyAqIHRydWUsIGp1c3QgcmV0dXJuIEludmFsaWRP aWQuCisgKi8KK09pZAorZ2V0X3BlcmlvZF9vaWQoT2lkIHJlbGlkLCBjb25zdCBjaGFyICpwZXJp b2RuYW1lLCBib29sIG1pc3Npbmdfb2spCit7CisJSGVhcFR1cGxlCXRwOworCisJdHAgPSBTZWFy Y2hTeXNDYWNoZTIoUEVSSU9ETkFNRSwKKwkJCQkJCSBPYmplY3RJZEdldERhdHVtKHJlbGlkKSwK KwkJCQkJCSBQb2ludGVyR2V0RGF0dW0ocGVyaW9kbmFtZSkpOworCisJaWYgKEhlYXBUdXBsZUlz VmFsaWQodHApKQorCXsKKwkJRm9ybV9wZ19wZXJpb2QgcGVyaW9kX3R1cCA9IChGb3JtX3BnX3Bl cmlvZCkgR0VUU1RSVUNUKHRwKTsKKwkJT2lkCQkJcmVzdWx0OworCisJCXJlc3VsdCA9IHBlcmlv ZF90dXAtPm9pZDsKKwkJUmVsZWFzZVN5c0NhY2hlKHRwKTsKKwkJcmV0dXJuIHJlc3VsdDsKKwl9 CisKKwlpZiAoIW1pc3Npbmdfb2spCisJCWVsb2coRVJST1IsICJjYWNoZSBsb29rdXAgZmFpbGVk IGZvciBwZXJpb2QgJXMiLAorCQkJIHBlcmlvZG5hbWUpOworCXJldHVybiBJbnZhbGlkT2lkOwor fQorCiAvKgkJCQktLS0tLS0tLS0tIFBHX0NBU1QgQ0FDSEUgLS0tLS0tLS0tLQkJCQkJICovCiAK IC8qCkBAIC0zNjkyLDYgKzM3NTUsMzEgQEAgZ2V0X211bHRpcmFuZ2VfcmFuZ2UoT2lkIG11bHRp cmFuZ2VPaWQpCiAJCXJldHVybiBJbnZhbGlkT2lkOwogfQogCitPaWQKK2dldF9zdWJ0eXBlX3Jh bmdlKE9pZCBzdWJ0eXBlT2lkKQoreworCUNhdENMaXN0ICAgKmNhdGxpc3Q7CisJT2lkCQkJcmVz dWx0ID0gSW52YWxpZE9pZDsKKworCWNhdGxpc3QgPSBTZWFyY2hTeXNDYWNoZUxpc3QxKFJBTkdF U1VCVFlQRSwgT2JqZWN0SWRHZXREYXR1bShzdWJ0eXBlT2lkKSk7CisKKwlpZiAoY2F0bGlzdC0+ bl9tZW1iZXJzID09IDEpCisJeworCQlIZWFwVHVwbGUJdHVwbGUgPSAmY2F0bGlzdC0+bWVtYmVy c1swXS0+dHVwbGU7CisJCUZvcm1fcGdfcmFuZ2Ugcm5ndHVwID0gKEZvcm1fcGdfcmFuZ2UpIEdF VFNUUlVDVCh0dXBsZSk7CisKKwkJcmVzdWx0ID0gcm5ndHVwLT5ybmd0eXBpZDsKKwkJUmVsZWFz ZUNhdENhY2hlTGlzdChjYXRsaXN0KTsKKwl9CisJZWxzZSBpZiAoY2F0bGlzdC0+bl9tZW1iZXJz ID4gMSkKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX0lOREVURVJNSU5B VEVfREFUQVRZUEUpLAorCQkJCSBlcnJtc2coImFtYmlndW91cyByYW5nZSBmb3IgdHlwZSAlcyIs CisJCQkJCQlmb3JtYXRfdHlwZV9iZShzdWJ0eXBlT2lkKSkpKTsKKworCXJldHVybiByZXN1bHQ7 Cit9CisKIC8qCQkJCS0tLS0tLS0tLS0gUEdfSU5ERVggQ0FDSEUgLS0tLS0tLS0tLQkJCQkgKi8K IAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfZHVtcC9wZ19iYWNrdXBfYXJjaGl2ZXIuYyBi L3NyYy9iaW4vcGdfZHVtcC9wZ19iYWNrdXBfYXJjaGl2ZXIuYwppbmRleCA1OWVhZWNiNGVkNy4u ODIwZTg5ZTRmZDUgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9wZ19iYWNrdXBfYXJjaGl2 ZXIuYworKysgYi9zcmMvYmluL3BnX2R1bXAvcGdfYmFja3VwX2FyY2hpdmVyLmMKQEAgLTM4NzMs NiArMzg3Myw3IEBAIF9nZXRPYmplY3REZXNjcmlwdGlvbihQUUV4cEJ1ZmZlciBidWYsIGNvbnN0 IFRvY0VudHJ5ICp0ZSkKIAkJCSBzdHJjbXAodHlwZSwgIkRBVEFCQVNFIFBST1BFUlRJRVMiKSA9 PSAwIHx8CiAJCQkgc3RyY21wKHR5cGUsICJERUZBVUxUIikgPT0gMCB8fAogCQkJIHN0cmNtcCh0 eXBlLCAiRksgQ09OU1RSQUlOVCIpID09IDAgfHwKKwkJCSBzdHJjbXAodHlwZSwgIlBFUklPRCIp ID09IDAgfHwKIAkJCSBzdHJjbXAodHlwZSwgIklOREVYIikgPT0gMCB8fAogCQkJIHN0cmNtcCh0 eXBlLCAiUlVMRSIpID09IDAgfHwKIAkJCSBzdHJjbXAodHlwZSwgIlRSSUdHRVIiKSA9PSAwIHx8 CmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5jIGIvc3JjL2Jpbi9wZ19kdW1w L3BnX2R1bXAuYwppbmRleCA0NzkxMzE3OGE5My4uOGMzNjA1NDc4MzIgMTAwNjQ0Ci0tLSBhL3Ny Yy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMKKysrIGIvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYwpA QCAtNzE4NCw2ICs3MTg0LDcgQEAgZ2V0VGFibGVzKEFyY2hpdmUgKmZvdXQsIGludCAqbnVtVGFi bGVzKQogCWludAkJCWlfcmVsdHlwZTsKIAlpbnQJCQlpX3JlbG93bmVyOwogCWludAkJCWlfcmVs Y2hlY2tzOworCWludAkJCWlfbnBlcmlvZDsKIAlpbnQJCQlpX3JlbGhhc2luZGV4OwogCWludAkJ CWlfcmVsaGFzcnVsZXM7CiAJaW50CQkJaV9yZWxwYWdlczsKQEAgLTcyNzEsNiArNzI3MiwxNCBA QCBnZXRUYWJsZXMoQXJjaGl2ZSAqZm91dCwgaW50ICpudW1UYWJsZXMpCiAJCWFwcGVuZFBRRXhw QnVmZmVyU3RyKHF1ZXJ5LAogCQkJCQkJCSAiYy5yZWxoYXNvaWRzLCAiKTsKIAorCS8qIEluIFBH MTkgdXB3YXJkcyB3ZSBoYXZlIFBFUklPRHMuICovCisJaWYgKGZvdXQtPnJlbW90ZVZlcnNpb24g Pj0gMTkwMDAwKQorCQlhcHBlbmRQUUV4cEJ1ZmZlclN0cihxdWVyeSwKKwkJCQkJCQkgIihTRUxF Q1QgY291bnQoKikgRlJPTSBwZ19wZXJpb2QgV0hFUkUgcGVycmVsaWQgPSBjLm9pZCkgQVMgbnBl cmlvZHMsICIpOworCWVsc2UKKwkJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVlcnksCisJCQkJCQkJ ICIwIEFTIG5wZXJpb2RzLCAiKTsKKwogCWlmIChmb3V0LT5yZW1vdGVWZXJzaW9uID49IDkwMzAw KQogCQlhcHBlbmRQUUV4cEJ1ZmZlclN0cihxdWVyeSwKIAkJCQkJCQkgImMucmVsaXNwb3B1bGF0 ZWQsICIpOwpAQCAtNzQwOCw2ICs3NDE3LDcgQEAgZ2V0VGFibGVzKEFyY2hpdmUgKmZvdXQsIGlu dCAqbnVtVGFibGVzKQogCWlfcmVsdHlwZSA9IFBRZm51bWJlcihyZXMsICJyZWx0eXBlIik7CiAJ aV9yZWxvd25lciA9IFBRZm51bWJlcihyZXMsICJyZWxvd25lciIpOwogCWlfcmVsY2hlY2tzID0g UFFmbnVtYmVyKHJlcywgInJlbGNoZWNrcyIpOworCWlfbnBlcmlvZCA9IFBRZm51bWJlcihyZXMs ICJucGVyaW9kcyIpOwogCWlfcmVsaGFzaW5kZXggPSBQUWZudW1iZXIocmVzLCAicmVsaGFzaW5k ZXgiKTsKIAlpX3JlbGhhc3J1bGVzID0gUFFmbnVtYmVyKHJlcywgInJlbGhhc3J1bGVzIik7CiAJ aV9yZWxwYWdlcyA9IFBRZm51bWJlcihyZXMsICJyZWxwYWdlcyIpOwpAQCAtNzQ5Nyw2ICs3NTA3 LDcgQEAgZ2V0VGFibGVzKEFyY2hpdmUgKmZvdXQsIGludCAqbnVtVGFibGVzKQogCQl9CiAJCXRi bGluZm9baV0ucmVsdGFibGVzcGFjZSA9IHBnX3N0cmR1cChQUWdldHZhbHVlKHJlcywgaSwgaV9y ZWx0YWJsZXNwYWNlKSk7CiAJCXRibGluZm9baV0uaGFzb2lkcyA9IChzdHJjbXAoUFFnZXR2YWx1 ZShyZXMsIGksIGlfcmVsaGFzb2lkcyksICJ0IikgPT0gMCk7CisJCXRibGluZm9baV0ubnBlcmlv ZCA9IGF0b2koUFFnZXR2YWx1ZShyZXMsIGksIGlfbnBlcmlvZCkpOwogCQl0YmxpbmZvW2ldLmhh c3RyaWdnZXJzID0gKHN0cmNtcChQUWdldHZhbHVlKHJlcywgaSwgaV9yZWxoYXN0cmlnZ2Vycyks ICJ0IikgPT0gMCk7CiAJCXRibGluZm9baV0ucmVscGVyc2lzdGVuY2UgPSAqKFBRZ2V0dmFsdWUo cmVzLCBpLCBpX3JlbHBlcnNpc3RlbmNlKSk7CiAJCXRibGluZm9baV0ucmVsaXNwb3B1bGF0ZWQg PSAoc3RyY21wKFBRZ2V0dmFsdWUocmVzLCBpLCBpX3JlbGlzcG9wdWxhdGVkKSwgInQiKSA9PSAw KTsKQEAgLTc5NTUsNyArNzk2Niw3IEBAIGdldEluZGV4ZXMoQXJjaGl2ZSAqZm91dCwgVGFibGVJ bmZvIHRibGluZm9bXSwgaW50IG51bVRhYmxlcykKIAkJYXBwZW5kUFFFeHBCdWZmZXJTdHIocXVl cnksCiAJCQkJCQkJICJmYWxzZSBBUyBpbmRudWxsc25vdGRpc3RpbmN0LCAiKTsKIAotCWlmIChm b3V0LT5yZW1vdGVWZXJzaW9uID49IDE4MDAwMCkKKwlpZiAoZm91dC0+cmVtb3RlVmVyc2lvbiA+ PSAxOTAwMDApCiAJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LAogCQkJCQkJCSAiYy5jb25w ZXJpb2QgIik7CiAJZWxzZQpAQCAtOTIxMiw3ICs5MjIzLDcgQEAgZ2V0VHJhbnNmb3JtcyhBcmNo aXZlICpmb3V0KQogLyoKICAqIGdldFRhYmxlQXR0cnMgLQogICoJICBmb3IgZWFjaCBpbnRlcmVz dGluZyB0YWJsZSwgcmVhZCBpbmZvIGFib3V0IGl0cyBhdHRyaWJ1dGVzCi0gKgkgIChuYW1lcywg dHlwZXMsIGRlZmF1bHQgdmFsdWVzLCBDSEVDSyBjb25zdHJhaW50cywgZXRjKQorICoJICAobmFt ZXMsIHR5cGVzLCBkZWZhdWx0IHZhbHVlcywgQ0hFQ0sgY29uc3RyYWludHMsIFBFUklPRHMsIGV0 YykKICAqCiAgKgltb2RpZmllcyB0YmxpbmZvCiAgKi8KQEAgLTkyNjcsNiArOTI3OCw4IEBAIGdl dFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0YmxpbmZvLCBpbnQgbnVtVGFi bGVzKQogCWZvciAoaW50IGkgPSAwOyBpIDwgbnVtVGFibGVzOyBpKyspCiAJewogCQlUYWJsZUlu Zm8gICp0YmluZm8gPSAmdGJsaW5mb1tpXTsKKwkJaW50CQkJbmR1bXBhYmxlY2hlY2tzOwkvKiBu dW1iZXIgb2YgQ0hFQ0sgY29uc3RyYWludHMgdGhhdCBkbworCQkJCQkJCQkJCSAqIG5vdCBiZWxv bmcgdG8gYSBwZXJpb2QgKi8KIAogCQkvKiBEb24ndCBib3RoZXIgdG8gY29sbGVjdCBpbmZvIGZv ciBzZXF1ZW5jZXMgKi8KIAkJaWYgKHRiaW5mby0+cmVsa2luZCA9PSBSRUxLSU5EX1NFUVVFTkNF KQpAQCAtOTI5Myw3ICs5MzA2LDggQEAgZ2V0VGFibGVBdHRycyhBcmNoaXZlICpmb3V0LCBUYWJs ZUluZm8gKnRibGluZm8sIGludCBudW1UYWJsZXMpCiAJCQlhcHBlbmRQUUV4cEJ1ZmZlckNoYXIo dGJsb2lkcywgJywnKTsKIAkJYXBwZW5kUFFFeHBCdWZmZXIodGJsb2lkcywgIiV1IiwgdGJpbmZv LT5kb2JqLmNhdElkLm9pZCk7CiAKLQkJaWYgKHRiaW5mby0+bmNoZWNrID4gMCkKKwkJbmR1bXBh YmxlY2hlY2tzID0gdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJpb2Q7CisJCWlmIChuZHVt cGFibGVjaGVja3MgPiAwKQogCQl7CiAJCQkvKiBBbHNvIG1ha2UgYSBsaXN0IG9mIHRoZSBvbmVz IHdpdGggY2hlY2sgY29uc3RyYWludHMgKi8KIAkJCWlmIChjaGVja29pZHMtPmxlbiA+IDEpIC8q IGRvIHdlIGhhdmUgbW9yZSB0aGFuIHRoZSAneyc/ICovCkBAIC05ODI4LDE1ICs5ODQyLDM2IEBA IGdldFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0YmxpbmZvLCBpbnQgbnVt VGFibGVzKQogCQlwZ19sb2dfaW5mbygiZmluZGluZyB0YWJsZSBjaGVjayBjb25zdHJhaW50cyIp OwogCiAJCXJlc2V0UFFFeHBCdWZmZXIocSk7Ci0JCWFwcGVuZFBRRXhwQnVmZmVyKHEsCi0JCQkJ CQkgICJTRUxFQ1QgYy50YWJsZW9pZCwgYy5vaWQsIGNvbnJlbGlkLCBjb25uYW1lLCAiCi0JCQkJ CQkgICJwZ19jYXRhbG9nLnBnX2dldF9jb25zdHJhaW50ZGVmKGMub2lkKSBBUyBjb25zcmMsICIK LQkJCQkJCSAgImNvbmlzbG9jYWwsIGNvbnZhbGlkYXRlZCAiCi0JCQkJCQkgICJGUk9NIHVubmVz dCgnJXMnOjpwZ19jYXRhbG9nLm9pZFtdKSBBUyBzcmModGJsb2lkKVxuIgotCQkJCQkJICAiSk9J TiBwZ19jYXRhbG9nLnBnX2NvbnN0cmFpbnQgYyBPTiAoc3JjLnRibG9pZCA9IGMuY29ucmVsaWQp XG4iCi0JCQkJCQkgICJXSEVSRSBjb250eXBlID0gJ2MnICIKLQkJCQkJCSAgIk9SREVSIEJZIGMu Y29ucmVsaWQsIGMuY29ubmFtZSIsCi0JCQkJCQkgIGNoZWNrb2lkcy0+ZGF0YSk7CisJCWlmIChm b3V0LT5yZW1vdGVWZXJzaW9uID49IDE5MDAwMCkKKwkJeworCQkJLyoKKwkJCSAqIFBFUklPRHMg d2VyZSBhZGRlZCBpbiB2MTkgYW5kIHdlIGRvbid0IGR1bXAgQ0hFQ0sgY29uc3RyYWludHMKKwkJ CSAqIGZvciB0aGVtLgorCQkJICovCisJCQlhcHBlbmRQUUV4cEJ1ZmZlcihxLAorCQkJCQkJCSAg IlNFTEVDVCBjLnRhYmxlb2lkLCBjLm9pZCwgY29ucmVsaWQsIGNvbm5hbWUsICIKKwkJCQkJCQkg ICJwZ19jYXRhbG9nLnBnX2dldF9jb25zdHJhaW50ZGVmKGMub2lkKSBBUyBjb25zcmMsICIKKwkJ CQkJCQkgICJjb25pc2xvY2FsLCBjb252YWxpZGF0ZWQgIgorCQkJCQkJCSAgIkZST00gdW5uZXN0 KCclcyc6OnBnX2NhdGFsb2cub2lkW10pIEFTIHNyYyh0YmxvaWQpXG4iCisJCQkJCQkJICAiSk9J TiBwZ19jYXRhbG9nLnBnX2NvbnN0cmFpbnQgYyBPTiAoc3JjLnRibG9pZCA9IGMuY29ucmVsaWQp XG4iCisJCQkJCQkJICAiV0hFUkUgY29udHlwZSA9ICdjJyAiCisJCQkJCQkJICAiICAgQU5EIE5P VCBFWElTVFMgKFNFTEVDVCBGUk9NIHBnX3BlcmlvZCAiCisJCQkJCQkJICAiICAgICAgICAgICAg ICAgICAgIFdIRVJFIChwZXJyZWxpZCwgcGVyY29uc3RyYWludCkgPSAoY29ucmVsaWQsIGMub2lk KSkgIgorCQkJCQkJCSAgIk9SREVSIEJZIGMuY29ucmVsaWQsIGMuY29ubmFtZSIsCisJCQkJCQkJ ICBjaGVja29pZHMtPmRhdGEpOworCQl9CisJCWVsc2UKKwkJeworCQkJYXBwZW5kUFFFeHBCdWZm ZXIocSwKKwkJCQkJCQkgICJTRUxFQ1QgYy50YWJsZW9pZCwgYy5vaWQsIGNvbnJlbGlkLCBjb25u YW1lLCAiCisJCQkJCQkJICAicGdfY2F0YWxvZy5wZ19nZXRfY29uc3RyYWludGRlZihjLm9pZCkg QVMgY29uc3JjLCAiCisJCQkJCQkJICAiY29uaXNsb2NhbCwgY29udmFsaWRhdGVkICIKKwkJCQkJ CQkgICJGUk9NIHVubmVzdCgnJXMnOjpwZ19jYXRhbG9nLm9pZFtdKSBBUyBzcmModGJsb2lkKVxu IgorCQkJCQkJCSAgIkpPSU4gcGdfY2F0YWxvZy5wZ19jb25zdHJhaW50IGMgT04gKHNyYy50Ymxv aWQgPSBjLmNvbnJlbGlkKVxuIgorCQkJCQkJCSAgIldIRVJFIGNvbnR5cGUgPSAnYycgIgorCQkJ CQkJCSAgIk9SREVSIEJZIGMuY29ucmVsaWQsIGMuY29ubmFtZSIsCisJCQkJCQkJICBjaGVja29p ZHMtPmRhdGEpOworCQl9CiAKIAkJcmVzID0gRXhlY3V0ZVNxbFF1ZXJ5KGZvdXQsIHEtPmRhdGEs IFBHUkVTX1RVUExFU19PSyk7CiAKQEAgLTk4NTgsNiArOTg5Myw3IEBAIGdldFRhYmxlQXR0cnMo QXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0YmxpbmZvLCBpbnQgbnVtVGFibGVzKQogCQkJT2lk CQkJY29ucmVsaWQgPSBhdG9vaWQoUFFnZXR2YWx1ZShyZXMsIGosIGlfY29ucmVsaWQpKTsKIAkJ CVRhYmxlSW5mbyAgKnRiaW5mbyA9IE5VTEw7CiAJCQlpbnQJCQludW1jb25zOworCQkJaW50CQkJ bmR1bXBhYmxlY2hlY2tzOwogCiAJCQkvKiBDb3VudCByb3dzIGZvciB0aGlzIHRhYmxlICovCiAJ CQlmb3IgKG51bWNvbnMgPSAxOyBudW1jb25zIDwgbnVtQ29uc3RycyAtIGo7IG51bWNvbnMrKykK QEAgLTk4NzcsMTIgKzk5MTMsMTMgQEAgZ2V0VGFibGVBdHRycyhBcmNoaXZlICpmb3V0LCBUYWJs ZUluZm8gKnRibGluZm8sIGludCBudW1UYWJsZXMpCiAJCQlpZiAoY3VydGJsaW5keCA+PSBudW1U YWJsZXMpCiAJCQkJcGdfZmF0YWwoInVucmVjb2duaXplZCB0YWJsZSBPSUQgJXUiLCBjb25yZWxp ZCk7CiAKLQkJCWlmIChudW1jb25zICE9IHRiaW5mby0+bmNoZWNrKQorCQkJbmR1bXBhYmxlY2hl Y2tzID0gdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJpb2Q7CisJCQlpZiAobnVtY29ucyAh PSBuZHVtcGFibGVjaGVja3MpCiAJCQl7CiAJCQkJcGdfbG9nX2Vycm9yKG5nZXR0ZXh0KCJleHBl Y3RlZCAlZCBjaGVjayBjb25zdHJhaW50IG9uIHRhYmxlIFwiJXNcIiBidXQgZm91bmQgJWQiLAog CQkJCQkJCQkJICAiZXhwZWN0ZWQgJWQgY2hlY2sgY29uc3RyYWludHMgb24gdGFibGUgXCIlc1wi IGJ1dCBmb3VuZCAlZCIsCi0JCQkJCQkJCQkgIHRiaW5mby0+bmNoZWNrKSwKLQkJCQkJCQkgdGJp bmZvLT5uY2hlY2ssIHRiaW5mby0+ZG9iai5uYW1lLCBudW1jb25zKTsKKwkJCQkJCQkJCSAgbmR1 bXBhYmxlY2hlY2tzKSwKKwkJCQkJCQkgbmR1bXBhYmxlY2hlY2tzLCB0YmluZm8tPmRvYmoubmFt ZSwgbnVtY29ucyk7CiAJCQkJcGdfbG9nX2Vycm9yX2hpbnQoIlRoZSBzeXN0ZW0gY2F0YWxvZ3Mg bWlnaHQgYmUgY29ycnVwdGVkLiIpOwogCQkJCWV4aXRfbmljZWx5KDEpOwogCQkJfQpAQCAtOTk0 MSw2ICs5OTc4LDgwIEBAIGdldFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0 YmxpbmZvLCBpbnQgbnVtVGFibGVzKQogCQlQUWNsZWFyKHJlcyk7CiAJfQogCisJZm9yIChpbnQg aSA9IDA7IGkgPCBudW1UYWJsZXM7IGkrKykKKwl7CisJCVRhYmxlSW5mbyAgKnRiaW5mbyA9ICZ0 YmxpbmZvW2ldOworCisJCS8qCisJCSAqIEdldCBpbmZvIGFib3V0IFBFUklPRCBkZWZpbml0aW9u cworCQkgKi8KKwkJaWYgKHRiaW5mby0+bnBlcmlvZCA+IDApCisJCXsKKwkJCVBlcmlvZEluZm8g KnBlcmlvZHM7CisJCQlpbnQJCQludW1QZXJpb2RzOworCQkJaW50CQkJajsKKworCQkJLyogV2Ug c2hvdWxkbid0IGhhdmUgYW55IHBlcmlvZHMgYmVmb3JlIHYxOSAqLworCQkJQXNzZXJ0KGZvdXQt PnJlbW90ZVZlcnNpb24gPj0gMTkwMDAwKTsKKworCQkJcGdfbG9nX2luZm8oImZpbmRpbmcgcGVy aW9kcyBmb3IgdGFibGUgXCIlcy4lc1wiIiwKKwkJCQkJCXRiaW5mby0+ZG9iai5uYW1lc3BhY2Ut PmRvYmoubmFtZSwKKwkJCQkJCXRiaW5mby0+ZG9iai5uYW1lKTsKKworCQkJcmVzZXRQUUV4cEJ1 ZmZlcihxKTsKKwkJCWFwcGVuZFBRRXhwQnVmZmVyKHEsCisJCQkJCQkJICAiU0VMRUNUIHAudGFi bGVvaWQsIHAub2lkLCBwLnBlcm5hbWUsICIKKwkJCQkJCQkgICIgICAgICAgc2EuYXR0bmFtZSBB UyBwZXJzdGFydCwgZWEuYXR0bmFtZSBBUyBwZXJlbmQsICIKKwkJCQkJCQkgICIgICAgICAgci50 eXBuYW1lIEFTIHJuZ3R5cGUsICIKKwkJCQkJCQkgICIgICAgICAgYy5jb25uYW1lIEFTIGNvbm5h bWUgIgorCQkJCQkJCSAgIkZST00gcGdfY2F0YWxvZy5wZ19wZXJpb2QgQVMgcCAiCisJCQkJCQkJ ICAiSk9JTiBwZ19jYXRhbG9nLnBnX2F0dHJpYnV0ZSBBUyBzYSBPTiAoc2EuYXR0cmVsaWQsIHNh LmF0dG51bSkgPSAocC5wZXJyZWxpZCwgcC5wZXJzdGFydCkgIgorCQkJCQkJCSAgIkpPSU4gcGdf Y2F0YWxvZy5wZ19hdHRyaWJ1dGUgQVMgZWEgT04gKGVhLmF0dHJlbGlkLCBlYS5hdHRudW0pID0g KHAucGVycmVsaWQsIHAucGVyZW5kKSAiCisJCQkJCQkJICAiSk9JTiBwZ19jYXRhbG9nLnBnX2F0 dHJpYnV0ZSBBUyByYSBPTiAocmEuYXR0cmVsaWQsIHJhLmF0dG51bSkgPSAocC5wZXJyZWxpZCwg cC5wZXJyYW5nZSkgIgorCQkJCQkJCSAgIkpPSU4gcGdfY2F0YWxvZy5wZ190eXBlIEFTIHIgT04g ci5vaWQgPSByYS5hdHR0eXBpZCAiCisJCQkJCQkJICAiSk9JTiBwZ19jYXRhbG9nLnBnX2NvbnN0 cmFpbnQgQVMgYyBPTiBjLm9pZCA9IHAucGVyY29uc3RyYWludCAiCisJCQkJCQkJICAiV0hFUkUg cC5wZXJyZWxpZCA9ICcldSc6OnBnX2NhdGFsb2cub2lkICIKKwkJCQkJCQkgICJPUkRFUiBCWSBw LnBlcm5hbWUiLAorCQkJCQkJCSAgdGJpbmZvLT5kb2JqLmNhdElkLm9pZCk7CisKKwkJCXJlcyA9 IEV4ZWN1dGVTcWxRdWVyeShmb3V0LCBxLT5kYXRhLCBQR1JFU19UVVBMRVNfT0spOworCisJCQkv KgorCQkJICogSWYgd2UgZGlkbid0IGdldCB0aGUgbnVtYmVyIG9mIHJvd3Mgd2UgdGhvdWdodCB3 ZSB3ZXJlIGdvaW5nCisJCQkgKiB0bywgdGhlbiB0aG9zZSBKT0lOcyBkaWRuJ3Qgd29yay4KKwkJ CSAqLworCQkJbnVtUGVyaW9kcyA9IFBRbnR1cGxlcyhyZXMpOworCQkJaWYgKG51bVBlcmlvZHMg IT0gdGJpbmZvLT5ucGVyaW9kKQorCQkJeworCQkJCXBnX2xvZ19pbmZvKG5nZXR0ZXh0KCJleHBl Y3RlZCAlZCBwZXJpb2Qgb24gdGFibGUgXCIlc1wiIGJ1dCBmb3VuZCAlZCIsCisJCQkJCQkJCQkg ImV4cGVjdGVkICVkIHBlcmlvZHMgb24gdGFibGUgXCIlc1wiIGJ1dCBmb3VuZCAlZCIsCisJCQkJ CQkJCQkgdGJpbmZvLT5ucGVyaW9kKSwKKwkJCQkJCQl0YmluZm8tPm5wZXJpb2QsIHRiaW5mby0+ ZG9iai5uYW1lLCBudW1QZXJpb2RzKTsKKwkJCQlwZ19sb2dfaW5mbygiKFRoZSBzeXN0ZW0gY2F0 YWxvZ3MgbWlnaHQgYmUgY29ycnVwdGVkLikiKTsKKwkJCQlleGl0X25pY2VseSgxKTsKKwkJCX0K KworCQkJcGVyaW9kcyA9IChQZXJpb2RJbmZvICopIHBnX21hbGxvYyhudW1QZXJpb2RzICogc2l6 ZW9mKFBlcmlvZEluZm8pKTsKKwkJCXRiaW5mby0+cGVyaW9kcyA9IHBlcmlvZHM7CisKKwkJCWZv ciAoaiA9IDA7IGogPCBudW1QZXJpb2RzOyBqKyspCisJCQl7CisJCQkJcGVyaW9kc1tqXS5kb2Jq Lm9ialR5cGUgPSBET19QRVJJT0Q7CisJCQkJcGVyaW9kc1tqXS5kb2JqLmNhdElkLnRhYmxlb2lk ID0gYXRvb2lkKFBRZ2V0dmFsdWUocmVzLCBqLCAwKSk7CisJCQkJcGVyaW9kc1tqXS5kb2JqLmNh dElkLm9pZCA9IGF0b29pZChQUWdldHZhbHVlKHJlcywgaiwgMSkpOworCQkJCUFzc2lnbkR1bXBJ ZCgmcGVyaW9kc1tqXS5kb2JqKTsKKwkJCQlwZXJpb2RzW2pdLmRvYmoubmFtZSA9IHBnX3N0cmR1 cChQUWdldHZhbHVlKHJlcywgaiwgMikpOworCQkJCXBlcmlvZHNbal0uZG9iai5uYW1lc3BhY2Ug PSB0YmluZm8tPmRvYmoubmFtZXNwYWNlOworCQkJCXBlcmlvZHNbal0ucGVydGFibGUgPSB0Ymlu Zm87CisJCQkJcGVyaW9kc1tqXS5wZXJzdGFydCA9IHBnX3N0cmR1cChQUWdldHZhbHVlKHJlcywg aiwgMykpOworCQkJCXBlcmlvZHNbal0ucGVyZW5kID0gcGdfc3RyZHVwKFBRZ2V0dmFsdWUocmVz LCBqLCA0KSk7CisJCQkJcGVyaW9kc1tqXS5ybmd0eXBlID0gcGdfc3RyZHVwKFBRZ2V0dmFsdWUo cmVzLCBqLCA1KSk7CisJCQkJcGVyaW9kc1tqXS5jb25uYW1lID0gcGdfc3RyZHVwKFBRZ2V0dmFs dWUocmVzLCBqLCA2KSk7CisJCQl9CisJCQlQUWNsZWFyKHJlcyk7CisJCX0KKwl9CisKIAlkZXN0 cm95UFFFeHBCdWZmZXIocSk7CiAJZGVzdHJveVBRRXhwQnVmZmVyKHRibG9pZHMpOwogCWRlc3Ry b3lQUUV4cEJ1ZmZlcihjaGVja29pZHMpOwpAQCAtMTE3MzEsNiArMTE4NDIsOCBAQCBkdW1wRHVt cGFibGVPYmplY3QoQXJjaGl2ZSAqZm91dCwgRHVtcGFibGVPYmplY3QgKmRvYmopCiAJCWNhc2Ug RE9fRktfQ09OU1RSQUlOVDoKIAkJCWR1bXBDb25zdHJhaW50KGZvdXQsIChjb25zdCBDb25zdHJh aW50SW5mbyAqKSBkb2JqKTsKIAkJCWJyZWFrOworCQljYXNlIERPX1BFUklPRDoKKwkJCWJyZWFr OwogCQljYXNlIERPX1BST0NMQU5HOgogCQkJZHVtcFByb2NMYW5nKGZvdXQsIChjb25zdCBQcm9j TGFuZ0luZm8gKikgZG9iaik7CiAJCQlicmVhazsKQEAgLTE3Mzg4LDYgKzE3NTAxLDM2IEBAIGR1 bXBUYWJsZVNjaGVtYShBcmNoaXZlICpmb3V0LCBjb25zdCBUYWJsZUluZm8gKnRiaW5mbykKIAkJ CQl9CiAJCQl9CiAKKwkJCS8qCisJCQkgKiBBZGQgbm9uLWluaGVyaXRlZCBQRVJJT0QgZGVmaW5p dGlvbnMsIGlmIGFueS4KKwkJCSAqLworCQkJZm9yIChqID0gMDsgaiA8IHRiaW5mby0+bnBlcmlv ZDsgaisrKQorCQkJeworCQkJCVBlcmlvZEluZm8gKnBlcmlvZCA9ICYodGJpbmZvLT5wZXJpb2Rz W2pdKTsKKworCQkJCWNoYXIJICAgKm5hbWUgPSBwZ19zdHJkdXAoZm10SWQocGVyaW9kLT5kb2Jq Lm5hbWUpKTsKKwkJCQljaGFyCSAgICpzdGFydCA9IHBnX3N0cmR1cChmbXRJZChwZXJpb2QtPnBl cnN0YXJ0KSk7CisJCQkJY2hhcgkgICAqZW5kID0gcGdfc3RyZHVwKGZtdElkKHBlcmlvZC0+cGVy ZW5kKSk7CisJCQkJY2hhcgkgICAqcm5ndHlwZSA9IHBnX3N0cmR1cChmbXRJZChwZXJpb2QtPnJu Z3R5cGUpKTsKKwkJCQljaGFyCSAgICpjb25uYW1lID0gcGdfc3RyZHVwKGZtdElkKHBlcmlvZC0+ Y29ubmFtZSkpOworCisJCQkJaWYgKGFjdHVhbF9hdHRzID09IDApCisJCQkJCWFwcGVuZFBRRXhw QnVmZmVyU3RyKHEsICIgKFxuICAgICIpOworCQkJCWVsc2UKKwkJCQkJYXBwZW5kUFFFeHBCdWZm ZXJTdHIocSwgIixcbiAgICAiKTsKKworCQkJCS8qCisJCQkJICogQWx3YXlzIHNheSBjb2xleGlz dHMgc28gd2UgY2FuIGp1c3QgcHJpbnQgdGhlIEdFTkVSQVRFRAorCQkJCSAqIGNvbHVtbgorCQkJ CSAqLworCQkJCWFwcGVuZFBRRXhwQnVmZmVyKHEsICJQRVJJT0QgRk9SICVzICglcywgJXMpICIK KwkJCQkJCQkJICAiV0lUSCAocmFuZ2V0eXBlID0gJXMsIGNoZWNrX2NvbnN0cmFpbnRfbmFtZSA9 ICVzLCBjb2xleGlzdHMgPSB0cnVlKSIsCisJCQkJCQkJCSAgbmFtZSwgc3RhcnQsIGVuZCwKKwkJ CQkJCQkJICBybmd0eXBlLCBjb25uYW1lKTsKKworCQkJCWFjdHVhbF9hdHRzKys7CisJCQl9CisK IAkJCS8qCiAJCQkgKiBBZGQgbm9uLWluaGVyaXRlZCBDSEVDSyBjb25zdHJhaW50cywgaWYgYW55 LgogCQkJICoKQEAgLTE3Mzk2LDcgKzE3NTM5LDcgQEAgZHVtcFRhYmxlU2NoZW1hKEFyY2hpdmUg KmZvdXQsIGNvbnN0IFRhYmxlSW5mbyAqdGJpbmZvKQogCQkJICogUEFSVElUSU9OIHRoYXQgd2Un bGwgZW1pdCBsYXRlciBleHBlY3RzIHRoZSBjb25zdHJhaW50IHRvIGJlCiAJCQkgKiB0aGVyZS4g IChObyBuZWVkIHRvIGZpeCBjb25pc2xvY2FsOiBBVFRBQ0ggUEFSVElUSU9OIGRvZXMgdGhhdCkK IAkJCSAqLwotCQkJZm9yIChqID0gMDsgaiA8IHRiaW5mby0+bmNoZWNrOyBqKyspCisJCQlmb3Ig KGogPSAwOyBqIDwgdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJpb2Q7IGorKykKIAkJCXsK IAkJCQlDb25zdHJhaW50SW5mbyAqY29uc3RyID0gJih0YmluZm8tPmNoZWNrZXhwcnNbal0pOwog CkBAIC0xNzcwOCw3ICsxNzg1MSw3IEBAIGR1bXBUYWJsZVNjaGVtYShBcmNoaXZlICpmb3V0LCBj b25zdCBUYWJsZUluZm8gKnRiaW5mbykKIAkJCSAqLwogCQkJcmVzZXRQUUV4cEJ1ZmZlcihleHRy YSk7CiAJCQlmaXJzdGl0ZW0gPSB0cnVlOwotCQkJZm9yIChrID0gMDsgayA8IHRiaW5mby0+bmNo ZWNrOyBrKyspCisJCQlmb3IgKGsgPSAwOyBrIDwgdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5w ZXJpb2Q7IGsrKykKIAkJCXsKIAkJCQlDb25zdHJhaW50SW5mbyAqY29uc3RyID0gJih0YmluZm8t PmNoZWNrZXhwcnNba10pOwogCkBAIC0xODA1Miw3ICsxODE5NSw3IEBAIGR1bXBUYWJsZVNjaGVt YShBcmNoaXZlICpmb3V0LCBjb25zdCBUYWJsZUluZm8gKnRiaW5mbykKIAl9CiAKIAkvKiBEdW1w IGNvbW1lbnRzIG9uIGlubGluZWQgdGFibGUgY29uc3RyYWludHMgKi8KLQlmb3IgKGogPSAwOyBq IDwgdGJpbmZvLT5uY2hlY2s7IGorKykKKwlmb3IgKGogPSAwOyBqIDwgdGJpbmZvLT5uY2hlY2sg LSB0YmluZm8tPm5wZXJpb2Q7IGorKykKIAl7CiAJCUNvbnN0cmFpbnRJbmZvICpjb25zdHIgPSAm KHRiaW5mby0+Y2hlY2tleHByc1tqXSk7CiAKQEAgLTIwMTc2LDYgKzIwMzE5LDcgQEAgYWRkQm91 bmRhcnlEZXBlbmRlbmNpZXMoRHVtcGFibGVPYmplY3QgKipkb2JqcywgaW50IG51bU9ianMsCiAJ CQljYXNlIERPX1RSSUdHRVI6CiAJCQljYXNlIERPX0VWRU5UX1RSSUdHRVI6CiAJCQljYXNlIERP X0RFRkFVTFRfQUNMOgorCQkJY2FzZSBET19QRVJJT0Q6CiAJCQljYXNlIERPX1BPTElDWToKIAkJ CWNhc2UgRE9fUFVCTElDQVRJT046CiAJCQljYXNlIERPX1BVQkxJQ0FUSU9OX1JFTDoKZGlmZiAt LWdpdCBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmggYi9zcmMvYmluL3BnX2R1bXAvcGdfZHVt cC5oCmluZGV4IDcyYTAwZTFiYzIwLi5kMzc2Yzg3Y2QwNyAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9w Z19kdW1wL3BnX2R1bXAuaAorKysgYi9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5oCkBAIC02MCw2 ICs2MCw3IEBAIHR5cGVkZWYgZW51bQogCURPX1RSSUdHRVIsCiAJRE9fQ09OU1RSQUlOVCwKIAlE T19GS19DT05TVFJBSU5ULAkJCS8qIHNlZSBub3RlIGZvciBDb25zdHJhaW50SW5mbyAqLworCURP X1BFUklPRCwKIAlET19QUk9DTEFORywKIAlET19DQVNULAogCURPX1RBQkxFX0RBVEEsCkBAIC0z MjIsMTIgKzMyMywxNCBAQCB0eXBlZGVmIHN0cnVjdCBfdGFibGVJbmZvCiAJYm9vbAkJcm93c2Vj OwkJCS8qIGlzIHJvdyBzZWN1cml0eSBlbmFibGVkPyAqLwogCWJvb2wJCWZvcmNlcm93c2VjOwkv KiBpcyByb3cgc2VjdXJpdHkgZm9yY2VkPyAqLwogCWJvb2wJCWhhc29pZHM7CQkvKiBkb2VzIGl0 IGhhdmUgT0lEcz8gKi8KKwlib29sCQloYXNwZXJpb2RzOwkJLyogZG9lcyBpdCBoYXZlIGFueSBw ZXJpb2RzPyAqLwogCXVpbnQzMgkJZnJvemVueGlkOwkJLyogdGFibGUncyByZWxmcm96ZW54aWQg Ki8KIAl1aW50MzIJCW1pbm14aWQ7CQkvKiB0YWJsZSdzIHJlbG1pbm14aWQgKi8KIAlPaWQJCQl0 b2FzdF9vaWQ7CQkvKiB0b2FzdCB0YWJsZSdzIE9JRCwgb3IgMCBpZiBub25lICovCiAJdWludDMy CQl0b2FzdF9mcm96ZW54aWQ7CS8qIHRvYXN0IHRhYmxlJ3MgcmVsZnJvemVueGlkLCBpZiBhbnkg Ki8KIAl1aW50MzIJCXRvYXN0X21pbm14aWQ7CS8qIHRvYXN0IHRhYmxlJ3MgcmVsbWlubXhpZCAq LwogCWludAkJCW5jaGVjazsJCQkvKiAjIG9mIENIRUNLIGV4cHJlc3Npb25zICovCisJaW50CQkJ bnBlcmlvZDsJCS8qICMgb2YgUEVSSU9EIGRlZmluaXRpb25zICovCiAJT2lkCQkJcmVsdHlwZTsJ CS8qIE9JRCBvZiB0YWJsZSdzIGNvbXBvc2l0ZSB0eXBlLCBpZiBhbnkgKi8KIAlPaWQJCQlyZWxv ZnR5cGU7CQkvKiB1bmRlcmx5aW5nIHR5cGUgZm9yIHR5cGVkIHRhYmxlICovCiAJT2lkCQkJZm9y ZWlnbl9zZXJ2ZXI7IC8qIGZvcmVpZ24gc2VydmVyIG9pZCwgaWYgYXBwbGljYWJsZSAqLwpAQCAt MzU4LDYgKzM2MSw3IEBAIHR5cGVkZWYgc3RydWN0IF90YWJsZUluZm8KIAljaGFyCSAgICphdHRz dG9yYWdlOwkJLyogYXR0cmlidXRlIHN0b3JhZ2Ugc2NoZW1lICovCiAJY2hhcgkgICAqdHlwc3Rv cmFnZTsJCS8qIHR5cGUgc3RvcmFnZSBzY2hlbWUgKi8KIAlib29sCSAgICphdHRpc2Ryb3BwZWQ7 CS8qIHRydWUgaWYgYXR0ciBpcyBkcm9wcGVkOyBkb24ndCBkdW1wIGl0ICovCisJYm9vbAkgICAq YXR0aXNwZXJpb2Q7CS8qIHRydWUgaWYgYXR0ciBpcyBhIFBFUklPRDsgZG9uJ3QgZHVtcCBpdCAq LwogCWNoYXIJICAgKmF0dGlkZW50aXR5OwogCWNoYXIJICAgKmF0dGdlbmVyYXRlZDsKIAlpbnQJ CSAgICphdHRsZW47CQkJLyogYXR0cmlidXRlIGxlbmd0aCwgdXNlZCBieSBiaW5hcnlfdXBncmFk ZSAqLwpAQCAtMzc5LDYgKzM4Myw3IEBAIHR5cGVkZWYgc3RydWN0IF90YWJsZUluZm8KIAlzdHJ1 Y3QgX2F0dHJEZWZJbmZvICoqYXR0cmRlZnM7IC8qIERFRkFVTFQgZXhwcmVzc2lvbnMgKi8KIAlz dHJ1Y3QgX2NvbnN0cmFpbnRJbmZvICpjaGVja2V4cHJzOyAvKiBDSEVDSyBjb25zdHJhaW50cyAq LwogCXN0cnVjdCBfcmVsU3RhdHNJbmZvICpzdGF0czsJLyogb25seSBzZXQgZm9yIG1hdHZpZXdz ICovCisJc3RydWN0IF9wZXJpb2RJbmZvICpwZXJpb2RzOwkvKiBQRVJJT0QgZGVmaW5pdGlvbnMg Ki8KIAlib29sCQluZWVkc19vdmVycmlkZTsgLyogaGFzIEdFTkVSQVRFRCBBTFdBWVMgQVMgSURF TlRJVFkgKi8KIAljaGFyCSAgICphbW5hbWU7CQkJLyogcmVsYXRpb24gYWNjZXNzIG1ldGhvZCAq LwogCkBAIC01MjgsNiArNTMzLDE2IEBAIHR5cGVkZWYgc3RydWN0IF9jb25zdHJhaW50SW5mbwog CWJvb2wJCXNlcGFyYXRlOwkJLyogdHJ1ZSBpZiBtdXN0IGR1bXAgYXMgc2VwYXJhdGUgaXRlbSAq LwogfSBDb25zdHJhaW50SW5mbzsKIAordHlwZWRlZiBzdHJ1Y3QgX3BlcmlvZEluZm8KK3sKKwlE dW1wYWJsZU9iamVjdCBkb2JqOworCVRhYmxlSW5mbyAgKnBlcnRhYmxlOworCWNoYXIJICAgKnBl cnN0YXJ0OwkJLyogdGhlIG5hbWUgb2YgdGhlIHN0YXJ0IGNvbHVtbiAqLworCWNoYXIJICAgKnBl cmVuZDsJCQkvKiB0aGUgbmFtZSBvZiB0aGUgZW5kIGNvbHVtbiAqLworCWNoYXIJICAgKnJuZ3R5 cGU7CQkvKiB0aGUgbmFtZSBvZiB0aGUgcmFuZ2UgdHlwZSAqLworCWNoYXIJICAgKmNvbm5hbWU7 CQkvKiB0aGUgbmFtZSBvZiB0aGUgQ0hFQ0sgY29uc3RyYWludCAqLworfSBQZXJpb2RJbmZvOwor CiB0eXBlZGVmIHN0cnVjdCBfcHJvY0xhbmdJbmZvCiB7CiAJRHVtcGFibGVPYmplY3QgZG9iajsK ZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wX3NvcnQuYyBiL3NyYy9iaW4vcGdf ZHVtcC9wZ19kdW1wX3NvcnQuYwppbmRleCAxNjRjNzZlMDg2NC4uZWJjMjBhMjI2YzcgMTAwNjQ0 Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wX3NvcnQuYworKysgYi9zcmMvYmluL3BnX2R1 bXAvcGdfZHVtcF9zb3J0LmMKQEAgLTg2LDYgKzg2LDcgQEAgZW51bSBkYk9iamVjdFR5cGVQcmlv cml0aWVzCiAJUFJJT19DT05TVFJBSU5ULAogCVBSSU9fSU5ERVgsCiAJUFJJT19JTkRFWF9BVFRB Q0gsCisJUFJJT19QRVJJT0QsCiAJUFJJT19TVEFUU0VYVCwKIAlQUklPX1JVTEUsCiAJUFJJT19U UklHR0VSLApAQCAtMTIxLDYgKzEyMiw3IEBAIHN0YXRpYyBjb25zdCBpbnQgZGJPYmplY3RUeXBl UHJpb3JpdHlbXSA9CiAJW0RPX0FUVFJERUZdID0gUFJJT19BVFRSREVGLAogCVtET19JTkRFWF0g PSBQUklPX0lOREVYLAogCVtET19JTkRFWF9BVFRBQ0hdID0gUFJJT19JTkRFWF9BVFRBQ0gsCisJ W0RPX1BFUklPRF0gPSBQUklPX1BFUklPRCwKIAlbRE9fU1RBVFNFWFRdID0gUFJJT19TVEFUU0VY VCwKIAlbRE9fUlVMRV0gPSBQUklPX1JVTEUsCiAJW0RPX1RSSUdHRVJdID0gUFJJT19UUklHR0VS LApAQCAtNDU0LDYgKzQ1NiwyMyBAQCBET1R5cGVOYW1lQ29tcGFyZShjb25zdCB2b2lkICpwMSwg Y29uc3Qgdm9pZCAqcDIpCiAJCWlmIChjbXB2YWwgIT0gMCkKIAkJCXJldHVybiBjbXB2YWw7CiAJ fQorCWVsc2UgaWYgKG9iajEtPm9ialR5cGUgPT0gRE9fUEVSSU9EKQorCXsKKwkJUGVyaW9kSW5m byAqcG9iajEgPSAqKFBlcmlvZEluZm8gKmNvbnN0ICopIHAxOworCQlQZXJpb2RJbmZvICpwb2Jq MiA9ICooUGVyaW9kSW5mbyAqY29uc3QgKikgcDI7CisKKwkJLyogU29ydCBieSB0YWJsZSBuYW1l c3BhY2UgLiAuIC4gKi8KKwkJY21wdmFsID0gc3RyY21wKHBvYmoxLT5wZXJ0YWJsZS0+ZG9iai5u YW1lc3BhY2UtPmRvYmoubmFtZSwKKwkJCQkJCXBvYmoyLT5wZXJ0YWJsZS0+ZG9iai5uYW1lc3Bh Y2UtPmRvYmoubmFtZSk7CisJCWlmIChjbXB2YWwgIT0gMCkKKwkJCXJldHVybiBjbXB2YWw7CisK KwkJLyogLiAuIC4gYW5kIHRhYmxlIG5hbWUgKi8KKwkJY21wdmFsID0gc3RyY21wKHBvYmoxLT5w ZXJ0YWJsZS0+ZG9iai5uYW1lLAorCQkJCQkJcG9iajItPnBlcnRhYmxlLT5kb2JqLm5hbWUpOwor CQlpZiAoY21wdmFsICE9IDApCisJCQlyZXR1cm4gY21wdmFsOworCX0KIAogCS8qCiAJICogU2hv dWxkbid0IGdldCBoZXJlIGV4Y2VwdCBhZnRlciBjYXRhbG9nIGNvcnJ1cHRpb24sIGJ1dCBpZiB3 ZSBkbywgc29ydApAQCAtMTYyNiw2ICsxNjQ1LDExIEBAIGRlc2NyaWJlRHVtcGFibGVPYmplY3Qo RHVtcGFibGVPYmplY3QgKm9iaiwgY2hhciAqYnVmLCBpbnQgYnVmc2l6ZSkKIAkJCQkJICJGSyBD T05TVFJBSU5UICVzICAoSUQgJWQgT0lEICV1KSIsCiAJCQkJCSBvYmotPm5hbWUsIG9iai0+ZHVt cElkLCBvYmotPmNhdElkLm9pZCk7CiAJCQlyZXR1cm47CisJCWNhc2UgRE9fUEVSSU9EOgorCQkJ c25wcmludGYoYnVmLCBidWZzaXplLAorCQkJCQkgIlBFUklPRCAlcyAgKElEICVkIE9JRCAldSki LAorCQkJCQkgb2JqLT5uYW1lLCBvYmotPmR1bXBJZCwgb2JqLT5jYXRJZC5vaWQpOworCQkJcmV0 dXJuOwogCQljYXNlIERPX1BST0NMQU5HOgogCQkJc25wcmludGYoYnVmLCBidWZzaXplLAogCQkJ CQkgIlBST0NFRFVSQUwgTEFOR1VBR0UgJXMgIChJRCAlZCBPSUQgJXUpIiwKZGlmZiAtLWdpdCBh L3NyYy9iaW4vcHNxbC9kZXNjcmliZS5jIGIvc3JjL2Jpbi9wc3FsL2Rlc2NyaWJlLmMKaW5kZXgg MzZmMjQ1MDI4NDIuLmYzNWIwYTllMzY3IDEwMDY0NAotLS0gYS9zcmMvYmluL3BzcWwvZGVzY3Jp YmUuYworKysgYi9zcmMvYmluL3BzcWwvZGVzY3JpYmUuYwpAQCAtMjAyNCw2ICsyMDI0LDggQEAg ZGVzY3JpYmVPbmVUYWJsZURldGFpbHMoY29uc3QgY2hhciAqc2NoZW1hbmFtZSwKIAogCWFwcGVu ZFBRRXhwQnVmZmVyU3RyKCZidWYsICJcbkZST00gcGdfY2F0YWxvZy5wZ19hdHRyaWJ1dGUgYSIp OwogCWFwcGVuZFBRRXhwQnVmZmVyKCZidWYsICJcbldIRVJFIGEuYXR0cmVsaWQgPSAnJXMnIEFO RCBhLmF0dG51bSA+IDAgQU5EIE5PVCBhLmF0dGlzZHJvcHBlZCIsIG9pZCk7CisJaWYgKHBzZXQu c3ZlcnNpb24gPj0gMTgwMDAwKQorCQlhcHBlbmRQUUV4cEJ1ZmZlcigmYnVmLCAiXG5BTkQgTk9U IEVYSVNUUyAoU0VMRUNUIDEgRlJPTSBwZ19jYXRhbG9nLnBnX3BlcmlvZCBwIFdIRVJFIHAucGVy cmVsaWQgPSBhLmF0dHJlbGlkIEFORCBwLnBlcnJhbmdlID0gYS5hdHRudW0pIik7CiAJYXBwZW5k UFFFeHBCdWZmZXJTdHIoJmJ1ZiwgIlxuT1JERVIgQlkgYS5hdHRudW07Iik7CiAKIAlyZXMgPSBQ U1FMZXhlYyhidWYuZGF0YSk7CkBAIC0yNDUyLDYgKzI0NTQsNDAgQEAgZGVzY3JpYmVPbmVUYWJs ZURldGFpbHMoY29uc3QgY2hhciAqc2NoZW1hbmFtZSwKIAkJUEdyZXN1bHQgICAqcmVzdWx0ID0g TlVMTDsKIAkJaW50CQkJdHVwbGVzID0gMDsKIAorCQkvKiBwcmludCBwZXJpb2RzICovCisJCWlm IChwc2V0LnN2ZXJzaW9uID49IDE4MDAwMCkKKwkJeworCQkJcHJpbnRmUFFFeHBCdWZmZXIoJmJ1 ZiwKKwkJCQkJCQkgICJTRUxFQ1QgcXVvdGVfaWRlbnQocC5wZXJuYW1lKSwgcXVvdGVfaWRlbnQo cy5hdHRuYW1lKSBBUyBzdGFydGF0dCwgcXVvdGVfaWRlbnQoZS5hdHRuYW1lKSBBUyBlbmRhdHRc biIKKwkJCQkJCQkgICJGUk9NIHBnX3BlcmlvZCBBUyBwXG4iCisJCQkJCQkJICAiSk9JTiBwZ19h dHRyaWJ1dGUgQVMgcyBPTiAocy5hdHRyZWxpZCwgcy5hdHRudW0pID0gKHAucGVycmVsaWQsIHAu cGVyc3RhcnQpXG4iCisJCQkJCQkJICAiSk9JTiBwZ19hdHRyaWJ1dGUgQVMgZSBPTiAoZS5hdHRy ZWxpZCwgZS5hdHRudW0pID0gKHAucGVycmVsaWQsIHAucGVyZW5kKVxuIgorCQkJCQkJCSAgIldI RVJFIHAucGVycmVsaWQgPSAnJXMnXG4iCisJCQkJCQkJICAiT1JERVIgQlkgMTsiLAorCQkJCQkJ CSAgb2lkKTsKKwkJCXJlc3VsdCA9IFBTUUxleGVjKGJ1Zi5kYXRhKTsKKwkJCWlmICghcmVzdWx0 KQorCQkJCWdvdG8gZXJyb3JfcmV0dXJuOworCQkJZWxzZQorCQkJCXR1cGxlcyA9IFBRbnR1cGxl cyhyZXN1bHQpOworCisJCQlpZiAodHVwbGVzID4gMCkKKwkJCXsKKwkJCQlwcmludFRhYmxlQWRk Rm9vdGVyKCZjb250LCBfKCJQZXJpb2RzOiIpKTsKKwkJCQlmb3IgKGkgPSAwOyBpIDwgdHVwbGVz OyBpKyspCisJCQkJeworCQkJCQkvKiB1bnRyYW5zbGF0ZWQgY29uc3RyYWludCBuYW1lIGFuZCBk ZWYgKi8KKwkJCQkJcHJpbnRmUFFFeHBCdWZmZXIoJmJ1ZiwgIiAgICAlcyAoJXMsICVzKSIsCisJ CQkJCQkJCQkgIFBRZ2V0dmFsdWUocmVzdWx0LCBpLCAwKSwKKwkJCQkJCQkJCSAgUFFnZXR2YWx1 ZShyZXN1bHQsIGksIDEpLAorCQkJCQkJCQkJICBQUWdldHZhbHVlKHJlc3VsdCwgaSwgMikpOwor CisJCQkJCXByaW50VGFibGVBZGRGb290ZXIoJmNvbnQsIGJ1Zi5kYXRhKTsKKwkJCQl9CisJCQl9 CisJCQlQUWNsZWFyKHJlc3VsdCk7CisJCX0KKwogCQkvKiBwcmludCBpbmRleGVzICovCiAJCWlm ICh0YWJsZWluZm8uaGFzaW5kZXgpCiAJCXsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFs b2cvTWFrZWZpbGUgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL01ha2VmaWxlCmluZGV4IDJiYmM3ODA1 ZmUzLi5iOWFlZTJjYTQ5ZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9NYWtlZmls ZQorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL01ha2VmaWxlCkBAIC02NSw2ICs2NSw3IEBAIENB VEFMT0dfSEVBREVSUyA6PSBcCiAJcGdfZm9yZWlnbl9zZXJ2ZXIuaCBcCiAJcGdfdXNlcl9tYXBw aW5nLmggXAogCXBnX2ZvcmVpZ25fdGFibGUuaCBcCisJcGdfcGVyaW9kLmggXAogCXBnX3BvbGlj eS5oIFwKIAlwZ19yZXBsaWNhdGlvbl9vcmlnaW4uaCBcCiAJcGdfZGVmYXVsdF9hY2wuaCBcCmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL2hlYXAuaCBiL3NyYy9pbmNsdWRlL2NhdGFs b2cvaGVhcC5oCmluZGV4IGRiZDMzOWU5ZGY0Li4zZWM1YTU4M2Q3OCAxMDA2NDQKLS0tIGEvc3Jj L2luY2x1ZGUvY2F0YWxvZy9oZWFwLmgKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9oZWFwLmgK QEAgLTEyNSw2ICsxMjUsMTAgQEAgZXh0ZXJuIHZvaWQgU3RvcmVBdHRyTWlzc2luZ1ZhbChSZWxh dGlvbiByZWwsIEF0dHJOdW1iZXIgYXR0bnVtLAogCQkJCQkJCQlEYXR1bSBtaXNzaW5ndmFsKTsK IGV4dGVybiB2b2lkIFNldEF0dHJNaXNzaW5nKE9pZCByZWxpZCwgY2hhciAqYXR0bmFtZSwgY2hh ciAqdmFsdWUpOwogCitleHRlcm4gT2lkCVN0b3JlUGVyaW9kKFJlbGF0aW9uIHJlbCwgY29uc3Qg Y2hhciAqcGVyaW9kLAorCQkJCQkJQXR0ck51bWJlciBzdGFydG51bSwgQXR0ck51bWJlciBlbmRu dW0sCisJCQkJCQlBdHRyTnVtYmVyIHJhbmdlbnVtLCBPaWQgY29ub2lkKTsKKwogZXh0ZXJuIE5v ZGUgKmNvb2tEZWZhdWx0KFBhcnNlU3RhdGUgKnBzdGF0ZSwKIAkJCQkJCSBOb2RlICpyYXdfZGVm YXVsdCwKIAkJCQkJCSBPaWQgYXR0dHlwaWQsCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRh bG9nL21lc29uLmJ1aWxkIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9tZXNvbi5idWlsZAppbmRleCBl YzFjZjQ2N2Y2Zi4uODdjYjRjZTMzMDAgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cv bWVzb24uYnVpbGQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9tZXNvbi5idWlsZApAQCAtNjEs NiArNjEsNyBAQCBjYXRhbG9nX2hlYWRlcnMgPSBbCiAgICdwZ19jb2xsYXRpb24uaCcsCiAgICdw Z19wYXJhbWV0ZXJfYWNsLmgnLAogICAncGdfcGFydGl0aW9uZWRfdGFibGUuaCcsCisgICdwZ19w ZXJpb2QuaCcsCiAgICdwZ19yYW5nZS5oJywKICAgJ3BnX3RyYW5zZm9ybS5oJywKICAgJ3BnX3Nl cXVlbmNlLmgnLApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19jb25zdHJhaW50 LmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuaAppbmRleCBmOGEwMWQ4OTYx Ny4uMmY3ZjlhNTRjMmUgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3Ry YWludC5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3RyYWludC5oCkBAIC0yNjYs NyArMjY2LDggQEAgZXh0ZXJuIEF0dHJOdW1iZXIgZXh0cmFjdE5vdE51bGxDb2x1bW4oSGVhcFR1 cGxlIGNvbnN0clR1cCk7CiBleHRlcm4gYm9vbCBBZGp1c3ROb3ROdWxsSW5oZXJpdGFuY2UoT2lk IHJlbGlkLCBBdHRyTnVtYmVyIGF0dG51bSwKIAkJCQkJCQkJCSBib29sIGlzX2xvY2FsLCBib29s IGlzX25vX2luaGVyaXQsIGJvb2wgaXNfbm90dmFsaWQpOwogZXh0ZXJuIExpc3QgKlJlbGF0aW9u R2V0Tm90TnVsbENvbnN0cmFpbnRzKE9pZCByZWxpZCwgYm9vbCBjb29rZWQsCi0JCQkJCQkJCQkJ ICAgYm9vbCBpbmNsdWRlX25vaW5oKTsKKwkJCQkJCQkJCQkgICBib29sIGluY2x1ZGVfbm9pbmgs CisJCQkJCQkJCQkJICAgQml0bWFwc2V0ICpleGNsdWRlcyk7CiAKIGV4dGVybiB2b2lkIFJlbW92 ZUNvbnN0cmFpbnRCeUlkKE9pZCBjb25JZCk7CiBleHRlcm4gdm9pZCBSZW5hbWVDb25zdHJhaW50 QnlJZChPaWQgY29uSWQsIGNvbnN0IGNoYXIgKm5ld25hbWUpOwpkaWZmIC0tZ2l0IGEvc3JjL2lu Y2x1ZGUvY2F0YWxvZy9wZ19pbmRleC5oIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19pbmRleC5o CmluZGV4IDczMWQzOTM4MTY5Li44OTBmZjU1MTE3NiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19pbmRleC5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfaW5kZXguaApA QCAtNDgsNyArNDgsNiBAQCBDQVRBTE9HKHBnX2luZGV4LDI2MTAsSW5kZXhSZWxhdGlvbklkKSBC S0lfU0NIRU1BX01BQ1JPCiAJLyogdmFyaWFibGUtbGVuZ3RoIGZpZWxkcyBzdGFydCBoZXJlLCBi dXQgd2UgYWxsb3cgZGlyZWN0IGFjY2VzcyB0byBpbmRrZXkgKi8KIAlpbnQydmVjdG9yCWluZGtl eSBCS0lfRk9SQ0VfTk9UX05VTEw7CS8qIGNvbHVtbiBudW1iZXJzIG9mIGluZGV4ZWQgY29scywK IAkJCQkJCQkJCQkJICogb3IgMCAqLwotCiAjaWZkZWYgQ0FUQUxPR19WQVJMRU4KIAlvaWR2ZWN0 b3IJaW5kY29sbGF0aW9uIEJLSV9MT09LVVBfT1BUKHBnX2NvbGxhdGlvbikgQktJX0ZPUkNFX05P VF9OVUxMOwkvKiBjb2xsYXRpb24gaWRlbnRpZmllcnMgKi8KIAlvaWR2ZWN0b3IJaW5kY2xhc3Mg QktJX0xPT0tVUChwZ19vcGNsYXNzKSBCS0lfRk9SQ0VfTk9UX05VTEw7IC8qIG9wY2xhc3MgaWRl bnRpZmllcnMgKi8KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcGVyaW9kLmgg Yi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3BlcmlvZC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi42NWE3NGRmYTE4YgotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9pbmNs dWRlL2NhdGFsb2cvcGdfcGVyaW9kLmgKQEAgLTAsMCArMSw1OCBAQAorLyotLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgKgorICogcGdfcGVyaW9kLmgKKyAqCSAgZGVmaW5pdGlvbiBvZiB0aGUgInBlcmlvZCIg c3lzdGVtIGNhdGFsb2cgKHBnX3BlcmlvZCkKKyAqCisgKgorICogUG9ydGlvbnMgQ29weXJpZ2h0 IChjKSAxOTk2LTIwMjEsIFBvc3RncmVTUUwgR2xvYmFsIERldmVsb3BtZW50IEdyb3VwCisgKgor ICogc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wZXJpb2QuaAorICoKKyAqIE5PVEVTCisgKgkgIFRo ZSBDYXRhbG9nLnBtIG1vZHVsZSByZWFkcyB0aGlzIGZpbGUgYW5kIGRlcml2ZXMgc2NoZW1hCisg KgkgIGluZm9ybWF0aW9uLgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICovCisjaWZuZGVmIFBH X1BFUklPRF9ICisjZGVmaW5lIFBHX1BFUklPRF9ICisKKyNpbmNsdWRlICJjYXRhbG9nL2dlbmJr aS5oIgorI2luY2x1ZGUgImNhdGFsb2cvcGdfcGVyaW9kX2QuaCIKKyNpbmNsdWRlICJub2Rlcy9i aXRtYXBzZXQuaCIKKworLyogLS0tLS0tLS0tLS0tLS0tLQorICoJCXBnX3BlcmlvZCBkZWZpbml0 aW9uLiAgY3BwIHR1cm5zIHRoaXMgaW50bworICoJCXR5cGVkZWYgc3RydWN0IEZvcm1EYXRhX3Bn X3BlcmlvZAorICogLS0tLS0tLS0tLS0tLS0tLQorICovCitDQVRBTE9HKHBnX3BlcmlvZCw4MDAw LFBlcmlvZFJlbGF0aW9uSWQpCit7CisJT2lkCQkJb2lkOwkJCS8qIE9JRCBvZiB0aGUgcGVyaW9k ICovCisJTmFtZURhdGEJcGVybmFtZTsJCS8qIG5hbWUgb2YgcGVyaW9kICovCisJT2lkCQkJcGVy cmVsaWQ7CQkvKiBPSUQgb2YgcmVsYXRpb24gY29udGFpbmluZyB0aGlzIHBlcmlvZCAqLworCWlu dDE2CQlwZXJzdGFydDsJCS8qIGNvbHVtbiBmb3Igc3RhcnQgdmFsdWUgKi8KKwlpbnQxNgkJcGVy ZW5kOwkJCS8qIGNvbHVtbiBmb3IgZW5kIHZhbHVlICovCisJaW50MTYJCXBlcnJhbmdlOwkJLyog Y29sdW1uIGZvciByYW5nZSB2YWx1ZSAqLworCU9pZAkJCXBlcmNvbnN0cmFpbnQ7CS8qIE9JRCBv ZiAoc3RhcnQgPCBlbmQpIGNvbnN0cmFpbnQgKi8KK30gRm9ybURhdGFfcGdfcGVyaW9kOworCisv KiAtLS0tLS0tLS0tLS0tLS0tCisgKgkJRm9ybV9wZ19wZXJpb2QgY29ycmVzcG9uZHMgdG8gYSBw b2ludGVyIHRvIGEgdHVwbGUgd2l0aAorICoJCXRoZSBmb3JtYXQgb2YgcGdfcGVyaW9kIHJlbGF0 aW9uLgorICogLS0tLS0tLS0tLS0tLS0tLQorICovCit0eXBlZGVmIEZvcm1EYXRhX3BnX3Blcmlv ZCAqRm9ybV9wZ19wZXJpb2Q7CisKK0RFQ0xBUkVfVU5JUVVFX0lOREVYX1BLRVkocGdfcGVyaW9k X29pZF9pbmRleCwgODAwMSwgUGVyaW9kT2JqZWN0SW5kZXhJZCwgcGdfcGVyaW9kLCBidHJlZShv aWQgb2lkX29wcykpOworREVDTEFSRV9VTklRVUVfSU5ERVgocGdfcGVyaW9kX3BlcnJlbGlkX3Bl cm5hbWVfaW5kZXgsIDgwMDIsIFBlcmlvZFJlbGlkTmFtZUluZGV4SWQsIHBnX3BlcmlvZCwgYnRy ZWUocGVycmVsaWQgb2lkX29wcywgcGVybmFtZSBuYW1lX29wcykpOworCitNQUtFX1NZU0NBQ0hF KFBFUklPRE9JRCwgcGdfcGVyaW9kX29pZF9pbmRleCwgMzIpOworTUFLRV9TWVNDQUNIRShQRVJJ T0ROQU1FLCBwZ19wZXJpb2RfcGVycmVsaWRfcGVybmFtZV9pbmRleCwgMzIpOworCitleHRlcm4g dm9pZCBSZW1vdmVQZXJpb2RCeUlkKE9pZCBwZXJpb2RJZCk7CisKK2V4dGVybiBPaWQJZ2V0X3Jl bGF0aW9uX3BlcmlvZF9vaWQoT2lkIHJlbGlkLCBjb25zdCBjaGFyICpwZXJuYW1lLCBib29sIG1p c3Npbmdfb2spOworZXh0ZXJuIEJpdG1hcHNldCAqZ2V0X3BlcmlvZF9hdHRub3MoT2lkIHJlbGlk KTsKKworI2VuZGlmCQkJCQkJCS8qIFBHX1BFUklPRF9IICovCmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS9jYXRhbG9nL3BnX3JhbmdlLmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3JhbmdlLmgK aW5kZXggM2JiYTYxNjI3ODIuLjg5ZTYwZDZjYmYxIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9j YXRhbG9nL3BnX3JhbmdlLmgKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19yYW5nZS5oCkBA IC01OSw4ICs1OSwxMCBAQCB0eXBlZGVmIEZvcm1EYXRhX3BnX3JhbmdlICpGb3JtX3BnX3Jhbmdl OwogCiBERUNMQVJFX1VOSVFVRV9JTkRFWF9QS0VZKHBnX3JhbmdlX3JuZ3R5cGlkX2luZGV4LCAz NTQyLCBSYW5nZVR5cGlkSW5kZXhJZCwgcGdfcmFuZ2UsIGJ0cmVlKHJuZ3R5cGlkIG9pZF9vcHMp KTsKIERFQ0xBUkVfVU5JUVVFX0lOREVYKHBnX3JhbmdlX3JuZ211bHRpdHlwaWRfaW5kZXgsIDIy MjgsIFJhbmdlTXVsdGlyYW5nZVR5cGlkSW5kZXhJZCwgcGdfcmFuZ2UsIGJ0cmVlKHJuZ211bHRp dHlwaWQgb2lkX29wcykpOworREVDTEFSRV9VTklRVUVfSU5ERVgocGdfcmFuZ2Vfcm5nc3VidHlw ZV9ybmd0eXBpZF9pbmRleCwgODAwMywgUmFuZ2VTdWJUeXBpZFR5cGlkSW5kZXhJZCwgcGdfcmFu Z2UsIGJ0cmVlKHJuZ3N1YnR5cGUgb2lkX29wcywgcm5ndHlwaWQgb2lkX29wcykpOwogCiBNQUtF X1NZU0NBQ0hFKFJBTkdFVFlQRSwgcGdfcmFuZ2Vfcm5ndHlwaWRfaW5kZXgsIDQpOworTUFLRV9T WVNDQUNIRShSQU5HRVNVQlRZUEUsIHBnX3JhbmdlX3JuZ3N1YnR5cGVfcm5ndHlwaWRfaW5kZXgs IDQpOwogTUFLRV9TWVNDQUNIRShSQU5HRU1VTFRJUkFOR0UsIHBnX3JhbmdlX3JuZ211bHRpdHlw aWRfaW5kZXgsIDQpOwogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvdGFi bGVjbWRzLmggYi9zcmMvaW5jbHVkZS9jb21tYW5kcy90YWJsZWNtZHMuaAppbmRleCBlOWIwZmFi MDc2Ny4uYmY4ZDZlMzMxODMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3RhYmxl Y21kcy5oCisrKyBiL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3RhYmxlY21kcy5oCkBAIC00MSw3ICs0 MSw4IEBAIGV4dGVybiBMT0NLTU9ERSBBbHRlclRhYmxlR2V0TG9ja0xldmVsKExpc3QgKmNtZHMp OwogCiBleHRlcm4gdm9pZCBBVEV4ZWNDaGFuZ2VPd25lcihPaWQgcmVsYXRpb25PaWQsIE9pZCBu ZXdPd25lcklkLCBib29sIHJlY3Vyc2luZywgTE9DS01PREUgbG9ja21vZGUpOwogCi1leHRlcm4g dm9pZCBBbHRlclRhYmxlSW50ZXJuYWwoT2lkIHJlbGlkLCBMaXN0ICpjbWRzLCBib29sIHJlY3Vy c2UpOworZXh0ZXJuIHZvaWQgQWx0ZXJUYWJsZUludGVybmFsKE9pZCByZWxpZCwgTGlzdCAqY21k cywgYm9vbCByZWN1cnNlLAorCQkJCQkJCSAgIHN0cnVjdCBBbHRlclRhYmxlVXRpbGl0eUNvbnRl eHQgKmNvbnRleHQpOwogCiBleHRlcm4gT2lkCUFsdGVyVGFibGVNb3ZlQWxsKEFsdGVyVGFibGVN b3ZlQWxsU3RtdCAqc3RtdCk7CiAKQEAgLTEwNyw1ICsxMDgsNiBAQCBleHRlcm4gdm9pZCBSYW5n ZVZhckNhbGxiYWNrT3duc1JlbGF0aW9uKGNvbnN0IFJhbmdlVmFyICpyZWxhdGlvbiwKIAkJCQkJ CQkJCQkgT2lkIHJlbElkLCBPaWQgb2xkUmVsSWQsIHZvaWQgKmFyZyk7CiBleHRlcm4gYm9vbCBQ YXJ0Q29uc3RyYWludEltcGxpZWRCeVJlbENvbnN0cmFpbnQoUmVsYXRpb24gc2NhbnJlbCwKIAkJ CQkJCQkJCQkJCSBMaXN0ICpwYXJ0Q29uc3RyYWludCk7CitleHRlcm4gT2lkCWNob29zZV9yYW5n ZXR5cGVfZm9yX3BlcmlvZChQZXJpb2REZWYgKnBlcmlvZCk7CiAKICNlbmRpZgkJCQkJCQkvKiBU QUJMRUNNRFNfSCAqLwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMvZXhlY25vZGVzLmgg Yi9zcmMvaW5jbHVkZS9ub2Rlcy9leGVjbm9kZXMuaAppbmRleCBhY2IzZDU0NThhMi4uZDNhNTk4 ZmJjZTMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL2V4ZWNub2Rlcy5oCisrKyBiL3Ny Yy9pbmNsdWRlL25vZGVzL2V4ZWNub2Rlcy5oCkBAIC00NjUsNiArNDY1LDEwIEBAIHR5cGVkZWYg c3RydWN0IEZvclBvcnRpb25PZlN0YXRlCiAJY2hhcgkgICAqZnBfcmFuZ2VOYW1lOwkvKiB0aGUg Y29sdW1uIG5hbWVkIGluIEZPUiBQT1JUSU9OIE9GICovCiAJT2lkCQkJZnBfcmFuZ2VUeXBlOwkv KiB0aGUgdHlwZSBvZiB0aGUgRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbiAqLwogCWludAkJCWZw X3JhbmdlQXR0bm87CS8qIHRoZSBhdHRubyBvZiB0aGUgcmFuZ2UgY29sdW1uICovCisJaW50CQkJ ZnBfcGVyaW9kU3RhcnRBdHRubzsJLyogdGhlIGF0dG5vIG9mIHRoZSBQRVJJT0Qgc3RhcnQKKwkJ CQkJCQkJCQkgKiBjb2x1bW4gKG9yIDAgZm9yIGEgcmFuZ2UpICovCisJaW50CQkJZnBfcGVyaW9k RW5kQXR0bm87CS8qIHRoZSBhdHRubyBvZiB0aGUgUEVSSU9EIGVuZCBjb2x1bW4gKG9yCisJCQkJ CQkJCQkgKiAwIGZvciBhIHJhbmdlKSAqLwogCURhdHVtCQlmcF90YXJnZXRSYW5nZTsgLyogdGhl IHJhbmdlL211bHRpcmFuZ2UgZnJvbSBGT1IgUE9SVElPTiBPRiAqLwogCVR5cGVDYWNoZUVudHJ5 ICpmcF9sZWZ0b3ZlcnN0eXBjYWNoZTsJLyogdHlwZSBjYWNoZSBlbnRyeSBvZiB0aGUgcmFuZ2Ug Ki8KIAlUdXBsZVRhYmxlU2xvdCAqZnBfRXhpc3Rpbmc7CS8qIHNsb3QgdG8gc3RvcmUgb2xkIHR1 cGxlICovCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmggYi9zcmMv aW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmgKaW5kZXggYTA5ZTlkOWJhNmEuLjM3ODViZTZmODVk IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmgKKysrIGIvc3JjL2lu Y2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oCkBAIC0yMzcwLDYgKzIzNzAsNyBAQCB0eXBlZGVmIGVu dW0gT2JqZWN0VHlwZQogCU9CSkVDVF9PUEVSQVRPUiwKIAlPQkpFQ1RfT1BGQU1JTFksCiAJT0JK RUNUX1BBUkFNRVRFUl9BQ0wsCisJT0JKRUNUX1BFUklPRCwKIAlPQkpFQ1RfUE9MSUNZLAogCU9C SkVDVF9QUk9DRURVUkUsCiAJT0JKRUNUX1BVQkxJQ0FUSU9OLApAQCAtMjQ1Nyw2ICsyNDU4LDgg QEAgdHlwZWRlZiBlbnVtIEFsdGVyVGFibGVUeXBlCiAJQVRfVmFsaWRhdGVDb25zdHJhaW50LAkJ LyogdmFsaWRhdGUgY29uc3RyYWludCAqLwogCUFUX0FkZEluZGV4Q29uc3RyYWludCwJCS8qIGFk ZCBjb25zdHJhaW50IHVzaW5nIGV4aXN0aW5nIGluZGV4ICovCiAJQVRfRHJvcENvbnN0cmFpbnQs CQkJLyogZHJvcCBjb25zdHJhaW50ICovCisJQVRfQWRkUGVyaW9kLAkJCQkvKiBBREQgUEVSSU9E ICovCisJQVRfRHJvcFBlcmlvZCwJCQkJLyogRFJPUCBQRVJJT0QgKi8KIAlBVF9SZUFkZENvbW1l bnQsCQkJLyogaW50ZXJuYWwgdG8gY29tbWFuZHMvdGFibGVjbWRzLmMgKi8KIAlBVF9BbHRlckNv bHVtblR5cGUsCQkJLyogYWx0ZXIgY29sdW1uIHR5cGUgKi8KIAlBVF9BbHRlckNvbHVtbkdlbmVy aWNPcHRpb25zLAkvKiBhbHRlciBjb2x1bW4gT1BUSU9OUyAoLi4uKSAqLwpAQCAtMjc1NiwxMSAr Mjc1OSwxMiBAQCB0eXBlZGVmIHN0cnVjdCBWYXJpYWJsZVNob3dTdG10CiAvKiAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiAgKgkJQ3JlYXRlIFRhYmxlIFN0YXRlbWVudAogICoKLSAqIE5PVEU6IGlu IHRoZSByYXcgZ3JhbS55IG91dHB1dCwgQ29sdW1uRGVmIGFuZCBDb25zdHJhaW50IG5vZGVzIGFy ZQotICogaW50ZXJtaXhlZCBpbiB0YWJsZUVsdHMsIGFuZCBjb25zdHJhaW50cyBhbmQgbm5jb25z dHJhaW50cyBhcmUgTklMLiAgQWZ0ZXIKKyAqIE5PVEU6IGluIHRoZSByYXcgZ3JhbS55IG91dHB1 dCwgQ29sdW1uRGVmLCBQZXJpb2REZWYsIGFuZCBDb25zdHJhaW50IG5vZGVzIGFyZQorICogaW50 ZXJtaXhlZCBpbiB0YWJsZUVsdHM7IGNvbnN0cmFpbnRzLCBubmNvbnN0cmFpbnRzLCBhbmQgcGVy aW9kcyBhcmUgTklMLiAgQWZ0ZXIKICAqIHBhcnNlIGFuYWx5c2lzLCB0YWJsZUVsdHMgY29udGFp bnMganVzdCBDb2x1bW5EZWZzLCBubmNvbnN0cmFpbnRzIGNvbnRhaW5zCi0gKiBDb25zdHJhaW50 IG5vZGVzIG9mIENPTlNUUl9OT1ROVUxMIHR5cGUgZnJvbSB2YXJpb3VzIHNvdXJjZXMsIGFuZAot ICogY29uc3RyYWludHMgY29udGFpbnMganVzdCBDT05TVFJfQ0hFQ0sgQ29uc3RyYWludCBub2Rl cy4KKyAqIENvbnN0cmFpbnQgbm9kZXMgb2YgQ09OU1RSX05PVE5VTEwgdHlwZSBmcm9tIHZhcmlv dXMgc291cmNlcywgY29uc3RyYWludHMKKyAqIGNvbnRhaW5zIGp1c3QgQ09OU1RSX0NIRUNLIENv bnN0cmFpbnQgbm9kZXMsIGFuZCBwZXJpb2RzIGNvbnRhaW5zIGp1c3QKKyAqIFBlcmlvZERlZnMu CiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgKi8KIApAQCAtMjc2OSw2ICsyNzczLDcgQEAg dHlwZWRlZiBzdHJ1Y3QgQ3JlYXRlU3RtdAogCU5vZGVUYWcJCXR5cGU7CiAJUmFuZ2VWYXIgICAq cmVsYXRpb247CQkvKiByZWxhdGlvbiB0byBjcmVhdGUgKi8KIAlMaXN0CSAgICp0YWJsZUVsdHM7 CQkvKiBjb2x1bW4gZGVmaW5pdGlvbnMgKGxpc3Qgb2YgQ29sdW1uRGVmKSAqLworCUxpc3QJICAg KnBlcmlvZHM7CQkvKiBwZXJpb2RzIChsaXN0IG9mIFBlcmlvZERlZiBub2RlcykgKi8KIAlMaXN0 CSAgICppbmhSZWxhdGlvbnM7CS8qIHJlbGF0aW9ucyB0byBpbmhlcml0IGZyb20gKGxpc3Qgb2YK IAkJCQkJCQkJICogUmFuZ2VWYXIpICovCiAJUGFydGl0aW9uQm91bmRTcGVjICpwYXJ0Ym91bmQ7 CS8qIEZPUiBWQUxVRVMgY2xhdXNlICovCkBAIC0yNzgzLDYgKzI3ODgsMzEgQEAgdHlwZWRlZiBz dHJ1Y3QgQ3JlYXRlU3RtdAogCWJvb2wJCWlmX25vdF9leGlzdHM7CS8qIGp1c3QgZG8gbm90aGlu ZyBpZiBpdCBhbHJlYWR5IGV4aXN0cz8gKi8KIH0gQ3JlYXRlU3RtdDsKIAorCisvKiAtLS0tLS0t LS0tCisgKiBEZWZpbml0aW9ucyBmb3IgcGVyaW9kcyBpbiBDcmVhdGVTdG10CisgKiAtLS0tLS0t LS0tCisgKi8KKwordHlwZWRlZiBzdHJ1Y3QgUGVyaW9kRGVmCit7CisJTm9kZVRhZwkJdHlwZTsK KwlPaWQJCQlvaWQ7CQkJLyogcGVyaW9kIG9pZCwgb25jZSBpdCdzIHRyYW5zZm9ybWVkICovCisJ Y2hhcgkgICAqcGVyaW9kbmFtZTsJCS8qIHBlcmlvZCBuYW1lICovCisJY2hhcgkgICAqc3RhcnRj b2xuYW1lOwkvKiBuYW1lIG9mIHN0YXJ0IGNvbHVtbiAqLworCWNoYXIJICAgKmVuZGNvbG5hbWU7 CQkvKiBuYW1lIG9mIGVuZCBjb2x1bW4gKi8KKwlBdHRyTnVtYmVyCXN0YXJ0YXR0bnVtOwkvKiBh dHRudW0gb2YgdGhlIHN0YXJ0IGNvbHVtbiAqLworCUF0dHJOdW1iZXIJZW5kYXR0bnVtOwkJLyog YXR0bnVtIG9mIHRoZSBlbmQgY29sdW1uICovCisJQXR0ck51bWJlcglybmdhdHRudW07CQkvKiBh dHRudW0gb2YgdGhlIEdFTkVSQVRFRCByYW5nZSBjb2x1bW4gKi8KKwlMaXN0CSAgICpvcHRpb25z OwkJLyogb3B0aW9ucyBmcm9tIFdJVEggY2xhdXNlICovCisJY2hhcgkgICAqY29uc3RyYWludG5h bWU7IC8qIG5hbWUgb2YgdGhlIENIRUNLIGNvbnN0cmFpbnQgKi8KKwljaGFyCSAgICpyYW5nZXR5 cGVuYW1lOwkvKiBuYW1lIG9mIHRoZSByYW5nZSB0eXBlICovCisJT2lkCQkJY29sdHlwaWQ7CQkv KiB0aGUgc3RhcnQvZW5kIGNvbCB0eXBlICovCisJT2lkCQkJcm5ndHlwaWQ7CQkvKiB0aGUgcmFu Z2UgdHlwZSB0byB1c2UgKi8KKwlib29sCQljb2xleGlzdHM7CQkvKiB1c2UgYW4gZXhpc3Rpbmcg R0VORVJBVEVEIGNvbHVtbiAqLworCWludAkJCWxvY2F0aW9uOwkJLyogdG9rZW4gbG9jYXRpb24s IG9yIC0xIGlmIHVua25vd24gKi8KK30gUGVyaW9kRGVmOworCiAvKiAtLS0tLS0tLS0tCiAgKiBE ZWZpbml0aW9ucyBmb3IgY29uc3RyYWludHMgaW4gQ3JlYXRlU3RtdAogICoKQEAgLTM1MDksNiAr MzUzOSw3IEBAIHR5cGVkZWYgc3RydWN0IEluZGV4U3RtdAogCUxpc3QJICAgKmluZGV4UGFyYW1z OwkvKiBjb2x1bW5zIHRvIGluZGV4OiBhIGxpc3Qgb2YgSW5kZXhFbGVtICovCiAJTGlzdAkgICAq aW5kZXhJbmNsdWRpbmdQYXJhbXM7CS8qIGFkZGl0aW9uYWwgY29sdW1ucyB0byBpbmRleDogYSBs aXN0CiAJCQkJCQkJCQkJICogb2YgSW5kZXhFbGVtICovCisJUGVyaW9kRGVmICAqcGVyaW9kOwkJ CS8qIFRoZSBwZXJpb2QgaW5jbHVkZWQgaW4gdGhlIGluZGV4ICovCiAJTGlzdAkgICAqb3B0aW9u czsJCS8qIFdJVEggY2xhdXNlIG9wdGlvbnM6IGEgbGlzdCBvZiBEZWZFbGVtICovCiAJTm9kZQkg ICAqd2hlcmVDbGF1c2U7CS8qIHF1YWxpZmljYXRpb24gKHBhcnRpYWwtaW5kZXggcHJlZGljYXRl KSAqLwogCUxpc3QJICAgKmV4Y2x1ZGVPcE5hbWVzOyAvKiBleGNsdXNpb24gb3BlcmF0b3IgbmFt ZXMsIG9yIE5JTCBpZiBub25lICovCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9ub2Rlcy9wcmlt bm9kZXMuaCBiL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCmluZGV4IGZiYmNkNzdkZDg0 Li45M2QwNmVmZTBjZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvbm9kZXMvcHJpbW5vZGVzLmgK KysrIGIvc3JjL2luY2x1ZGUvbm9kZXMvcHJpbW5vZGVzLmgKQEAgLTI0MDMsNiArMjQwMyw4IEBA IHR5cGVkZWYgc3RydWN0IEZvclBvcnRpb25PZkV4cHIKIHsKIAlOb2RlVGFnCQl0eXBlOwogCVZh cgkJICAgKnJhbmdlVmFyOwkJLyogUmFuZ2UgY29sdW1uICovCisJVmFyCQkgICAqc3RhcnRWYXI7 CQkvKiBTdGFydCBjb2x1bW4gaWYgUEVSSU9EICovCisJVmFyCQkgICAqZW5kVmFyOwkJCS8qIEVu ZCBjb2x1bW4gaWYgUEVSSU9EICovCiAJY2hhcgkgICAqcmFuZ2VfbmFtZTsJCS8qIFJhbmdlIG5h bWUgKi8KIAlOb2RlCSAgICp0YXJnZXRSYW5nZTsJLyogRk9SIFBPUlRJT04gT0YgYm91bmRzIGFz IGEgcmFuZ2UgKi8KIAlPaWQJCQlyYW5nZVR5cGU7CQkvKiB0eXBlIG9mIHRhcmdldFJhbmdlICov CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmggYi9zcmMvaW5jbHVkZS9w YXJzZXIva3dsaXN0LmgKaW5kZXggYThkZWYzYTM4NmMuLmNmYzJmNjhjYThhIDEwMDY0NAotLS0g YS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgKKysrIGIvc3JjL2luY2x1ZGUvcGFyc2VyL2t3 bGlzdC5oCkBAIC0zNDEsNyArMzQxLDcgQEAgUEdfS0VZV09SRCgicGFydGl0aW9uIiwgUEFSVElU SU9OLCBVTlJFU0VSVkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwpCiBQR19LRVlXT1JEKCJwYXNzaW5n IiwgUEFTU0lORywgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgi cGFzc3dvcmQiLCBQQVNTV09SRCwgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdf S0VZV09SRCgicGF0aCIsIFBBVEgsIFVOUkVTRVJWRURfS0VZV09SRCwgQkFSRV9MQUJFTCkKLVBH X0tFWVdPUkQoInBlcmlvZCIsIFBFUklPRCwgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVM KQorUEdfS0VZV09SRCgicGVyaW9kIiwgUEVSSU9ELCBSRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xB QkVMKQogUEdfS0VZV09SRCgicGxhY2luZyIsIFBMQUNJTkcsIFJFU0VSVkVEX0tFWVdPUkQsIEJB UkVfTEFCRUwpCiBQR19LRVlXT1JEKCJwbGFuIiwgUExBTiwgVU5SRVNFUlZFRF9LRVlXT1JELCBC QVJFX0xBQkVMKQogUEdfS0VZV09SRCgicGxhbnMiLCBQTEFOUywgVU5SRVNFUlZFRF9LRVlXT1JE LCBCQVJFX0xBQkVMKQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvcGFyc2VyL3BhcnNlX3V0aWxj bWQuaCBiL3NyYy9pbmNsdWRlL3BhcnNlci9wYXJzZV91dGlsY21kLmgKaW5kZXggNDk2NWZhYzQ0 OTUuLmQwZDIzYWYzZDQxIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2VfdXRp bGNtZC5oCisrKyBiL3NyYy9pbmNsdWRlL3BhcnNlci9wYXJzZV91dGlsY21kLmgKQEAgLTQwLDUg KzQwLDYgQEAgZXh0ZXJuIEluZGV4U3RtdCAqZ2VuZXJhdGVDbG9uZWRJbmRleFN0bXQoUmFuZ2VW YXIgKmhlYXBSZWwsCiAJCQkJCQkJCQkJICBSZWxhdGlvbiBzb3VyY2VfaWR4LAogCQkJCQkJCQkJ CSAgY29uc3QgQXR0ck1hcCAqYXR0bWFwLAogCQkJCQkJCQkJCSAgT2lkICpjb25zdHJhaW50T2lk KTsKK2V4dGVybiB2b2lkIHRyYW5zZm9ybVBlcmlvZE9wdGlvbnMoUGVyaW9kRGVmICpwZXJpb2Qp OwogCiAjZW5kaWYJCQkJCQkJLyogUEFSU0VfVVRJTENNRF9IICovCmRpZmYgLS1naXQgYS9zcmMv aW5jbHVkZS91dGlscy9sc3lzY2FjaGUuaCBiL3NyYy9pbmNsdWRlL3V0aWxzL2xzeXNjYWNoZS5o CmluZGV4IDViNTBlZjIzMGFiLi5lZGRjYTk5N2VmYiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv dXRpbHMvbHN5c2NhY2hlLmgKKysrIGIvc3JjL2luY2x1ZGUvdXRpbHMvbHN5c2NhY2hlLmgKQEAg LTk4LDYgKzk4LDggQEAgZXh0ZXJuIE9pZAlnZXRfYXR0dHlwZShPaWQgcmVsaWQsIEF0dHJOdW1i ZXIgYXR0bnVtKTsKIGV4dGVybiB2b2lkIGdldF9hdHR0eXBldHlwbW9kY29sbChPaWQgcmVsaWQs IEF0dHJOdW1iZXIgYXR0bnVtLAogCQkJCQkJCQkgIE9pZCAqdHlwaWQsIGludDMyICp0eXBtb2Qs IE9pZCAqY29sbGlkKTsKIGV4dGVybiBEYXR1bSBnZXRfYXR0b3B0aW9ucyhPaWQgcmVsaWQsIGlu dDE2IGF0dG51bSk7CitleHRlcm4gY2hhciAqZ2V0X3BlcmlvZG5hbWUoT2lkIHBlcmlvZGlkLCBi b29sIG1pc3Npbmdfb2spOworZXh0ZXJuIE9pZAlnZXRfcGVyaW9kX29pZChPaWQgcmVsaWQsIGNv bnN0IGNoYXIgKnBlcmlvZG5hbWUsIGJvb2wgbWlzc2luZ19vayk7CiBleHRlcm4gT2lkCWdldF9j YXN0X29pZChPaWQgc291cmNldHlwZWlkLCBPaWQgdGFyZ2V0dHlwZWlkLCBib29sIG1pc3Npbmdf b2spOwogZXh0ZXJuIGNoYXIgKmdldF9jb2xsYXRpb25fbmFtZShPaWQgY29sbG9pZCk7CiBleHRl cm4gYm9vbCBnZXRfY29sbGF0aW9uX2lzZGV0ZXJtaW5pc3RpYyhPaWQgY29sbG9pZCk7CkBAIC0y MDMsNiArMjA1LDcgQEAgZXh0ZXJuIE9pZAlnZXRfcmFuZ2Vfc3VidHlwZShPaWQgcmFuZ2VPaWQp OwogZXh0ZXJuIE9pZAlnZXRfcmFuZ2VfY29sbGF0aW9uKE9pZCByYW5nZU9pZCk7CiBleHRlcm4g T2lkCWdldF9yYW5nZV9tdWx0aXJhbmdlKE9pZCByYW5nZU9pZCk7CiBleHRlcm4gT2lkCWdldF9t dWx0aXJhbmdlX3JhbmdlKE9pZCBtdWx0aXJhbmdlT2lkKTsKK2V4dGVybiBPaWQJZ2V0X3N1YnR5 cGVfcmFuZ2UoT2lkIHN1YnR5cGVPaWQpOwogZXh0ZXJuIE9pZAlnZXRfaW5kZXhfY29sdW1uX29w Y2xhc3MoT2lkIGluZGV4X29pZCwgaW50IGF0dG5vKTsKIGV4dGVybiBib29sIGdldF9pbmRleF9p c3JlcGxpZGVudChPaWQgaW5kZXhfb2lkKTsKIGV4dGVybiBib29sIGdldF9pbmRleF9pc3ZhbGlk KE9pZCBpbmRleF9vaWQpOwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvdXRpbHMvcGVyaW9kLmgg Yi9zcmMvaW5jbHVkZS91dGlscy9wZXJpb2QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMC4uZDAyYzE3MDM2ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvaW5jbHVkZS91 dGlscy9wZXJpb2QuaApAQCAtMCwwICsxLDIxIEBACisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisg KiBwZXJpb2QuaAorICoJICBzdXBwb3J0IGZvciBQb3N0Z3JlcyBwZXJpb2RzLgorICoKKyAqCisg KiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMiwgUG9zdGdyZVNRTCBHbG9iYWwgRGV2 ZWxvcG1lbnQgR3JvdXAKKyAqIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5NCwgUmVnZW50cyBv ZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisgKgorICogc3JjL2luY2x1ZGUvdXRpbHMv cGVyaW9kLmgKKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqLworI2lmbmRlZiBQRVJJT0RfSAor I2RlZmluZSBQRVJJT0RfSAorCisjaW5jbHVkZSAiZXhlY3V0b3IvdHVwdGFibGUuaCIKKworZXh0 ZXJuIERhdHVtIHBlcmlvZF90b19yYW5nZShUdXBsZVRhYmxlU2xvdCAqc2xvdCwgaW50IHN0YXJ0 YXR0bm8sIGludCBlbmRhdHRubywgT2lkIHJhbmdldHlwZSk7CisKKyNlbmRpZgkJCQkJCQkvKiBQ RVJJT0RfSCAqLwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X2RkbF9kZXBhcnNl L3Rlc3RfZGRsX2RlcGFyc2UuYyBiL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS90 ZXN0X2RkbF9kZXBhcnNlLmMKaW5kZXggMTkzNjY5ZjJiYzEuLjllZDQyOWZkYWRkIDEwMDY0NAot LS0gYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvdGVzdF9kZGxfZGVwYXJzZS5j CisrKyBiL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS90ZXN0X2RkbF9kZXBhcnNl LmMKQEAgLTE3OSw2ICsxNzksMTIgQEAgZ2V0X2FsdGVydGFibGVfc3ViY21kaW5mbyhQR19GVU5D VElPTl9BUkdTKQogCQkJY2FzZSBBVF9Ecm9wQ29uc3RyYWludDoKIAkJCQlzdHJ0eXBlID0gIkRS T1AgQ09OU1RSQUlOVCI7CiAJCQkJYnJlYWs7CisJCQljYXNlIEFUX0FkZFBlcmlvZDoKKwkJCQlz dHJ0eXBlID0gIkFERCBQRVJJT0QiOworCQkJCWJyZWFrOworCQkJY2FzZSBBVF9Ecm9wUGVyaW9k OgorCQkJCXN0cnR5cGUgPSAiRFJPUCBQRVJJT0QiOworCQkJCWJyZWFrOwogCQkJY2FzZSBBVF9S ZUFkZENvbW1lbnQ6CiAJCQkJc3RydHlwZSA9ICIocmUpIEFERCBDT01NRU5UIjsKIAkJCQlicmVh azsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRpb25fb2Yu b3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQKaW5kZXgg NTJmYjA0NGQyZTUuLmMwZDBkZTdlODEwIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL2Zvcl9wb3J0aW9uX29mLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2Zvcl9wb3J0aW9uX29mLm91dApAQCAtMTEwMCw2ICsxMTAwLDY0IEBAIFNFTEVDVCAqIEZST00g Zm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwogIFszLDQpIHwge1sy MDE4LTAxLTAxLCl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8IHRocmVlCiAoNiByb3dzKQogCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9u X29mX3Rlc3QyOworLS0gVGVzdCB3aXRoIFBFUklPRHMKK0NSRUFURSBUQUJMRSBmb3JfcG9ydGlv bl9vZl90ZXN0MiAoCisgIGlkIGludDRyYW5nZSBOT1QgTlVMTCwKKyAgdmFsaWRfZnJvbSBkYXRl LAorICB2YWxpZF90aWwgZGF0ZSwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIGZvcl9wb3J0 aW9uX29mX3Rlc3QyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MgorVkFMVUVTCisoJ1sxLDIp JywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0wMycsICdvbmUnKSwKKygnWzEsMiknLCAnMjAxOC0w Mi0wNCcsICcyMDE4LTAzLTAzJywgJ29uZScpLAorKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIw MTgtMDQtMDQnLCAnb25lJyksCisoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wNS0wMScs ICd0d28nKSwKKygnWzMsNCknLCAnMjAxOC0wMS0wMScsIG51bGwsICd0aHJlZScpOworOworVVBE QVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCBuYW1lID0gJ29uZV4xJworV0hFUkUgaWQg PSAnWzEsMiknOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIKK0ZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMTUnIFRPICcyMDE4LTAyLTE1JworV0hFUkUgaWQg PSAnWzIsMyknOworLS0gU2V0dGluZyB0aGUgc3RhcnQgY29sdW1uIGZhaWxzOgorVVBEQVRFIGZv cl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAx LTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnCitXSEVS RSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIG11bHRpcGxlIGFzc2lnbm1lbnRzIHRvIHNhbWUgY29s dW1uICJ2YWxpZF9mcm9tIgorLS0gU2V0dGluZyB0aGUgZW5kIGNvbHVtbiBmYWlsczoKK1VQREFU RSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OC0wMS0xMCcgVE8gJzIwMTgtMDItMTAnCitTRVQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnCitX SEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIG11bHRpcGxlIGFzc2lnbm1lbnRzIHRvIHNhbWUg Y29sdW1uICJ2YWxpZF90aWwiCistLSBTZXR0aW5nIHRoZSBnZW5lcmF0ZWQgY29sdW1uIGZhaWxz OgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCB2YWxpZF9hdCA9ICdbMjAxOC0w Mi0wMSwyMDE4LTAyLTAzKScKK1dIRVJFIGlkID0gJ1sxLDIpJzsKK0VSUk9SOiAgY2FuJ3QgZGly ZWN0bHkgYXNzaWduIHRvICJ2YWxpZF9hdCIgaW4gYSBGT1IgUE9SVElPTiBPRiB1cGRhdGUKK0xJ TkUgMzogU0VUIHZhbGlkX2F0ID0gJ1syMDE4LTAyLTAxLDIwMTgtMDItMDMpJworICAgICAgICAg ICAgXgorU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0MiBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IG5hbWUgIAorLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IDIwMTgtMDEtMDIg fCAyMDE4LTAxLTEwIHwgb25lCisgWzEsMikgfCAyMDE4LTAxLTEwIHwgMjAxOC0wMi0wMyB8IG9u ZV4xCisgWzEsMikgfCAyMDE4LTAyLTA0IHwgMjAxOC0wMi0xMCB8IG9uZV4xCisgWzEsMikgfCAy MDE4LTAyLTEwIHwgMjAxOC0wMy0wMyB8IG9uZQorIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgt MDQtMDQgfCBvbmUKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTE1IHwgdHdvCisgWzIs MykgfCAyMDE4LTAyLTE1IHwgMjAxOC0wNS0wMSB8IHR3bworIFszLDQpIHwgMjAxOC0wMS0wMSB8 ICAgICAgICAgICAgfCB0aHJlZQorKDggcm93cykKKwogRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9v Zl90ZXN0MjsKIC0tIFRlc3Qgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBlCiBDUkVBVEUgVFlQRSBt eWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9wZXJpb2RzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv cGVyaW9kcy5vdXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmQ0Mjkw OTc2MDBhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wZXJp b2RzLm91dApAQCAtMCwwICsxLDMxOCBAQAorLyogU3lzdGVtIHBlcmlvZHMgYXJlIG5vdCBpbXBs ZW1lbnRlZCAqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRl LCBwZXJpb2QgZm9yIHN5c3RlbV90aW1lIChkcywgZGUpKTsKK0VSUk9SOiAgUEVSSU9EIEZPUiBT WVNURU1fVElNRSBpcyBub3Qgc3VwcG9ydGVkCitMSU5FIDI6IGNyZWF0ZSB0YWJsZSBwdCAoaWQg aW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBzeS4uLgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KKy8qIFBlcmlvZHMg bXVzdCBzcGVjaWZ5IGFjdHVhbCBjb2x1bW5zICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVn ZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoYm9ndXMsIGRlKSk7CitFUlJPUjog IGNvbHVtbiAiYm9ndXMiIG9mIHJlbGF0aW9uICJwdCIgZG9lcyBub3QgZXhpc3QKK2NyZWF0ZSB0 YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywg Ym9ndXMpKTsKK0VSUk9SOiAgY29sdW1uICJib2d1cyIgb2YgcmVsYXRpb24gInB0IiBkb2VzIG5v dCBleGlzdAorLyogRGF0YSB0eXBlcyBtdXN0IG1hdGNoIGV4YWN0bHkgKi8KK2NyZWF0ZSB0YWJs ZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgdGltZXN0YW1wLCBwZXJpb2QgZm9yIHAgKGRz LCBkZSkpOworRVJST1I6ICBzdGFydCBhbmQgZW5kIGNvbHVtbnMgb2YgcGVyaW9kIG11c3QgYmUg b2Ygc2FtZSB0eXBlCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIHRleHQgY29sbGF0 ZSAiQyIsIGRlIHRleHQgY29sbGF0ZSAiUE9TSVgiLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOwor RVJST1I6ICBzdGFydCBhbmQgZW5kIGNvbHVtbnMgb2YgcGVyaW9kIG11c3QgaGF2ZSBzYW1lIGNv bGxhdGlvbgorLyogUGVyaW9kcyBtdXN0IGhhdmUgYSBkZWZhdWx0IEJUcmVlIG9wZXJhdG9yIGNs YXNzICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIHhtbCwgZGUgeG1sLCBwZXJp b2QgZm9yIHAgKGRzLCBkZSkpOworRVJST1I6ICBubyByYW5nZSB0eXBlIGZvciB4bWwgZm91bmQg Zm9yIHBlcmlvZCBwCitISU5UOiAgWW91IGNhbiBkZWZpbmUgYSBjdXN0b20gcmFuZ2UgdHlwZSB3 aXRoIENSRUFURSBUWVBFCisvKiBQZXJpb2QgYW5kIGNvbHVtbiBuYW1lcyBhcmUgaW4gdGhlIHNh bWUgbmFtZXNwYWNlICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRl IGRhdGUsIHBlcmlvZCBmb3IgY3RpZCAoZHMsIGRlKSk7CitFUlJPUjogIHBlcmlvZCBuYW1lICJj dGlkIiBjb25mbGljdHMgd2l0aCBhIHN5c3RlbSBjb2x1bW4gbmFtZQorY3JlYXRlIHRhYmxlIHB0 IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIGlkIChkcywgZGUpKTsK K0VSUk9SOiAgcGVyaW9kIG5hbWUgImlkIiBjb25mbGljdHMgd2l0aCBhIGNvbHVtbiBuYW1lCisv KiBQZXJpb2QgbmFtZSBjYW4ndCBiZSBnaXZlbiBtb3JlIHRoYW4gb25jZSAqLworY3JlYXRlIHRh YmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBk ZSksIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitFUlJPUjogIHBlcmlvZCBuYW1lICJwIiBzcGVj aWZpZWQgbW9yZSB0aGFuIG9uY2UKKy8qIFBlcmlvZCBjYW4ndCB1c2UgdGhlIHNhbWUgY29sdW0g Zm9yIHN0YXJ0IGFuZCBlbmQqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRl LCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkcykpOworRVJST1I6ICBjb2x1bW4gImRzIiBj YW4ndCBiZSB0aGUgc3RhcnQgYW5kIGVuZCBjb2x1bW4gZm9yIHBlcmlvZCAicCIKKy8qIE5vdyBt YWtlIG9uZSB0aGF0IHdvcmtzICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIGRh dGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CisvKiBJdHMgZ2VuZXJhdGVkIGNv bHVtbiBsb29rcyBnb29kICovCitzZWxlY3QgYXR0bmFtZSwgYXR0dHlwaWQ6OnJlZ3R5cGUsIGF0 dG5vdG51bGwsIGF0dGdlbmVyYXRlZCBmcm9tIHBnX2F0dHJpYnV0ZSB3aGVyZSBhdHRyZWxpZCA9 ICdwdCc6OnJlZ2NsYXNzIGFuZCBhdHRuYW1lID0gJ3AnOworIGF0dG5hbWUgfCBhdHR0eXBpZCAg fCBhdHRub3RudWxsIHwgYXR0Z2VuZXJhdGVkIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLQorIHAgICAgICAgfCBkYXRlcmFuZ2UgfCB0ICAgICAgICAg IHwgcworKDEgcm93KQorCitzZWxlY3QgY29ubmFtZSwgY29udHlwZSBmcm9tIHBnX2NvbnN0cmFp bnQgd2hlcmUgY29ucmVsaWQgPSAncHQnOjpyZWdjbGFzcyBvcmRlciBieSBjb25uYW1lOworICAg IGNvbm5hbWUgICAgfCBjb250eXBlIAorLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLQorIHB0X3Bf Y2hlY2sgICAgfCBjCisgcHRfcF9ub3RfbnVsbCB8IG4KKygyIHJvd3MpCisKKy8qIEl0IGFwcGVh cnMgaW4gdGhlIGluZm9ybWF0aW9uX3NjaGVtYSAqLworc2VsZWN0ICogZnJvbSBpbmZvcm1hdGlv bl9zY2hlbWEucGVyaW9kczsKKyB0YWJsZV9jYXRhbG9nIHwgdGFibGVfc2NoZW1hIHwgdGFibGVf bmFtZSB8IHBlcmlvZF9uYW1lIHwgc3RhcnRfY29sdW1uX25hbWUgfCBlbmRfY29sdW1uX25hbWUg CistLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLQorIHJlZ3Jlc3Npb24gICAg fCBwdWJsaWMgICAgICAgfCBwdCAgICAgICAgIHwgcCAgICAgICAgICAgfCBkcyAgICAgICAgICAg ICAgICB8IGRlCisoMSByb3cpCisKKy8qIFNFTEVDVCAqIGV4Y2x1ZGVzIHRoZSBQRVJJT0QgKi8K K2luc2VydCBpbnRvIHB0IHZhbHVlcyAoMSwgJzIwMDAtMDEtMDEnLCAnMjAwMS0wMS0wMScpOwor c2VsZWN0ICogZnJvbSBwdDsKKyBpZCB8ICAgICBkcyAgICAgfCAgICAgZGUgICAgIAorLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgIDEgfCAwMS0wMS0yMDAwIHwgMDEtMDEtMjAwMQor KDEgcm93KQorCisvKiBZb3UgY2FuIGdldCBpdCBpZiB5b3Ugd2FudCAqLworc2VsZWN0ICosIHAg ZnJvbSBwdDsKKyBpZCB8ICAgICBkcyAgICAgfCAgICAgZGUgICAgIHwgICAgICAgICAgICBwICAg ICAgICAgICAgCistLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorICAxIHwgMDEtMDEtMjAwMCB8IDAxLTAxLTIwMDEgfCBbMDEtMDEtMjAwMCww MS0wMS0yMDAxKQorKDEgcm93KQorCisvKiBZb3UgY2FuIGNvbW1lbnQgb24gaXQgKi8KK2NvbW1l bnQgb24gcGVyaW9kIHB0LnAgaXMgJ3Rlc3QgY29tbWVudCc7CitzZWxlY3Qgb2JqX2Rlc2NyaXB0 aW9uKChzZWxlY3Qgb2lkIGZyb20gcGdfcGVyaW9kIHdoZXJlIHBlcnJlbGlkID0gJ3B0Jzo6cmVn Y2xhc3MgYW5kIHBlcm5hbWUgPSAncCcpLCAncGdfcGVyaW9kJyk7Cisgb2JqX2Rlc2NyaXB0aW9u IAorLS0tLS0tLS0tLS0tLS0tLS0KKyB0ZXN0IGNvbW1lbnQKKygxIHJvdykKKworLyogVHdvIGFy ZSBva2F5ICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRl LCBwZXJpb2QgZm9yIHAxIChkcywgZGUpLCBwZXJpb2QgZm9yIHAyIChkcywgZGUpKTsKK2Ryb3Ag dGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiB3b3JrcyAqLwor Y3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFu Z2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkpIHN0b3Jl ZCwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpKTsKK1xkIHB0 MgorICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMucHQyIgorIENvbHVtbiB8ICBUeXBlICAg fCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0tLSstLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgfCBpbnRlZ2VyIHwgICAgICAg ICAgIHwgICAgICAgICAgfCAKKyBkcyAgICAgfCBkYXRlICAgIHwgICAgICAgICAgIHwgICAgICAg ICAgfCAKKyBkZSAgICAgfCBkYXRlICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK1Blcmlv ZHM6CisgICAgcCAoZHMsIGRlKQorQ2hlY2sgY29uc3RyYWludHM6CisgICAgInB0Ml9wX2NoZWNr IiBDSEVDSyAoZHMgPCBkZSkKKworZHJvcCB0YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0aW5nIEdF TkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbCBpc24ndCB0aGVyZSAqLworY3Jl YXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBw IChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpKTsKK0VSUk9SOiAgTm8gY29sdW1uIGZv dW5kIHdpdGggbmFtZSBwCisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxz IGJlY2F1c2UgdGhlIG9wdGlvbiBoYXMgYW4gaW52YWxpZCB2YWx1ZSAqLworY3JlYXRlIHRhYmxl IHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywgZGUp IHdpdGggKGNvbGV4aXN0cyA9ICd3aGF0ZXZlcicpKTsKK0VSUk9SOiAgY29sZXhpc3RzIHJlcXVp cmVzIGEgQm9vbGVhbiB2YWx1ZQorLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBm YWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90IE5PVCBOVUxMICovCitjcmVhdGUgdGFibGUg cHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBnZW5lcmF0ZWQg YWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkLCBwZXJpb2QgZm9yIHAgKGRzLCBk ZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkpOworRVJST1I6ICBQZXJpb2QgcCB1c2VzIGEgZ2Vu ZXJhdGVkIGNvbHVtbiB0aGF0IGFsbG93cyBudWxscworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFU RUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90IEdFTkVSQVRFRCAqLwor Y3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFu Z2Ugbm90IG51bGwsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0cnVl KSk7CitFUlJPUjogIFBlcmlvZCBwIHVzZXMgYSBub24tZ2VuZXJhdGVkIGNvbHVtbgorLyogU2tp cCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMg R0VORVJBVEVEIGJ1dCB3aXRoIHRoZSB3cm9uZyBleHByZXNzaW9uICovCistLSBUT0RPOgorLS0g Y3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFu Z2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRlLCBkcykpIHN0b3Jl ZCwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpKTsKKy8qIFNr aXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUgY29sdW1uIGlz IHRoZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRl LCBkZSBkYXRlLCBwIHRzcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAodHNyYW5n ZShkcywgZGUpKSBzdG9yZWQsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMg PSB0cnVlKSk7CitFUlJPUjogIFBlcmlvZCBwIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHdpdGgg dGhlIHdyb25nIHR5cGUKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMg YmVjYXVzZSB0aGUgY29sdW1uIGlzIGluaGVyaXRlZCAqLworY3JlYXRlIHRhYmxlIHB0MnBhcmVu dCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwgZ2Vu ZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkpIHN0b3JlZCk7CitjcmVhdGUgdGFi bGUgcHQyIChwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkpIGlu aGVyaXRzIChwdDJwYXJlbnQpOworRVJST1I6ICBJbmhlcml0aW5nIGlzIG5vdCBzdXBwb3J0ZWQg d2hlbiBhIHRhYmxlIGhhcyBhIFBFUklPRAorZHJvcCB0YWJsZSBwdDJwYXJlbnQ7CisvKgorICog QUxURVIgVEFCTEUgdGVzdHMKKyAqLworYWx0ZXIgdGFibGUgcHQgZHJvcCBwZXJpb2QgZm9yIHA7 CithbHRlciB0YWJsZSBwdCBhZGQgcGVyaW9kIGZvciBzeXN0ZW1fdGltZSAoZHMsIGRlKTsKK0VS Uk9SOiAgUEVSSU9EIEZPUiBTWVNURU1fVElNRSBpcyBub3Qgc3VwcG9ydGVkCithbHRlciB0YWJs ZSBwdCBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpOworLyogSXRzIGdlbmVyYXRlZCBjb2x1bW4g bG9va3MgZ29vZCAqLworc2VsZWN0IGF0dG5hbWUsIGF0dHR5cGlkOjpyZWd0eXBlLCBhdHRub3Ru dWxsLCBhdHRnZW5lcmF0ZWQgZnJvbSBwZ19hdHRyaWJ1dGUgd2hlcmUgYXR0cmVsaWQgPSAncHQn OjpyZWdjbGFzcyBhbmQgYXR0bmFtZSA9ICdwJzsKKyBhdHRuYW1lIHwgYXR0dHlwaWQgIHwgYXR0 bm90bnVsbCB8IGF0dGdlbmVyYXRlZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0KKyBwICAgICAgIHwgZGF0ZXJhbmdlIHwgdCAgICAgICAgICB8IHMK KygxIHJvdykKKworc2VsZWN0IGNvbm5hbWUsIGNvbnR5cGUgZnJvbSBwZ19jb25zdHJhaW50IHdo ZXJlIGNvbnJlbGlkID0gJ3B0Jzo6cmVnY2xhc3Mgb3JkZXIgYnkgY29ubmFtZTsKKyAgICBjb25u YW1lICAgIHwgY29udHlwZSAKKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBwdF9wX2NoZWNr ICAgIHwgYworIHB0X3Bfbm90X251bGwgfCBuCisoMiByb3dzKQorCisvKiBBZGRpbmcgYSBzZWNv bmQgb25lICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRl LCBwZXJpb2QgZm9yIHAxIChkcywgZGUpKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZv ciBwMiAoZHMsIGRlKTsKK2Ryb3AgdGFibGUgcHQyOworLyogQ2FuJ3QgZHJvcCBpdHMgY29sdW1u cyAqLworYWx0ZXIgdGFibGUgcHQgZHJvcCBjb2x1bW4gZHM7CitFUlJPUjogIGNhbm5vdCBkcm9w IGNvbHVtbiBkcyBvZiB0YWJsZSBwdCBiZWNhdXNlIG90aGVyIG9iamVjdHMgZGVwZW5kIG9uIGl0 CitERVRBSUw6ICBwZXJpb2QgcCBvbiB0YWJsZSBwdCBkZXBlbmRzIG9uIGNvbHVtbiBkcyBvZiB0 YWJsZSBwdAorSElOVDogIFVzZSBEUk9QIC4uLiBDQVNDQURFIHRvIGRyb3AgdGhlIGRlcGVuZGVu dCBvYmplY3RzIHRvby4KK2FsdGVyIHRhYmxlIHB0IGRyb3AgY29sdW1uIGRlOworRVJST1I6ICBj YW5ub3QgZHJvcCBjb2x1bW4gZGUgb2YgdGFibGUgcHQgYmVjYXVzZSBvdGhlciBvYmplY3RzIGRl cGVuZCBvbiBpdAorREVUQUlMOiAgcGVyaW9kIHAgb24gdGFibGUgcHQgZGVwZW5kcyBvbiBjb2x1 bW4gZGUgb2YgdGFibGUgcHQKK0hJTlQ6ICBVc2UgRFJPUCAuLi4gQ0FTQ0FERSB0byBkcm9wIHRo ZSBkZXBlbmRlbnQgb2JqZWN0cyB0b28uCisvKiBDYW4ndCBjaGFuZ2UgdGhlIGRhdGEgdHlwZXMg Ki8KK2FsdGVyIHRhYmxlIHB0IGFsdGVyIGNvbHVtbiBkcyB0eXBlIHRpbWVzdGFtcDsKK0VSUk9S OiAgY2Fubm90IGFsdGVyIHR5cGUgb2YgYSBjb2x1bW4gdXNlZCBieSBhIHBlcmlvZAorREVUQUlM OiAgcGVyaW9kIHAgb24gdGFibGUgcHQgZGVwZW5kcyBvbiBjb2x1bW4gImRzIgorYWx0ZXIgdGFi bGUgcHQgYWx0ZXIgY29sdW1uIGRzIHR5cGUgdGltZXN0YW1wOworRVJST1I6ICBjYW5ub3QgYWx0 ZXIgdHlwZSBvZiBhIGNvbHVtbiB1c2VkIGJ5IGEgcGVyaW9kCitERVRBSUw6ICBwZXJpb2QgcCBv biB0YWJsZSBwdCBkZXBlbmRzIG9uIGNvbHVtbiAiZHMiCisvKiBjb2x1bW4vcGVyaW9kIG5hbWVz cGFjZSBjb25mbGljdHMgKi8KK2FsdGVyIHRhYmxlIHB0IGFkZCBjb2x1bW4gcCBpbnRlZ2VyOwor RVJST1I6ICBjb2x1bW4gbmFtZSAicCIgY29uZmxpY3RzIHdpdGggYSBwZXJpb2QgbmFtZQorYWx0 ZXIgdGFibGUgcHQgcmVuYW1lIGNvbHVtbiBpZCB0byBwOworRVJST1I6ICBjb2x1bW4gbmFtZSAi cCIgY29uZmxpY3RzIHdpdGggYSBwZXJpb2QgbmFtZQorYWx0ZXIgdGFibGUgcHQgYWRkIHBlcmlv ZCBmb3IgdGFibGVvaWQgKGRzLCBkZSk7CitFUlJPUjogIHBlcmlvZCBuYW1lICJ0YWJsZW9pZCIg Y29uZmxpY3RzIHdpdGggYSBzeXN0ZW0gY29sdW1uIG5hbWUKK2FsdGVyIHRhYmxlIHB0IGFkZCBw ZXJpb2QgZm9yICIuLi4uLi4uLnBnLmRyb3BwZWQuNC4uLi4uLi4uIiAoZHMsIGRlKTsKK0VSUk9S OiAgcGVyaW9kIG5hbWUgIi4uLi4uLi4ucGcuZHJvcHBlZC40Li4uLi4uLi4iIGNvbmZsaWN0cyB3 aXRoIGEgY29sdW1uIG5hbWUKKy8qIGFkZGluZyBjb2x1bW5zIGFuZCB0aGUgcGVyaW9kIGF0IHRo ZSBzYW1lIHRpbWUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIpOworYWx0ZXIgdGFi bGUgcHQyIGFkZCBjb2x1bW4gZHMgZGF0ZSwgYWRkIGNvbHVtbiBkZSBkYXRlLCBhZGQgcGVyaW9k IGZvciBwIChkcywgZGUpOworZHJvcCB0YWJsZSBwdDI7CisvKiBBbWJpZ3VvdXMgcmFuZ2UgdHlw ZXMgcmFpc2UgYW4gZXJyb3IgKi8KK2NyZWF0ZSB0eXBlIG15ZGF0ZXJhbmdlIGFzIHJhbmdlKHN1 YnR5cGU9ZGF0ZSk7CitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnQsIGRzIGRhdGUsIGRlIGRhdGUs IHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitFUlJPUjogIGFtYmlndW91cyByYW5nZSBmb3IgdHlw ZSBkYXRlCisvKiBZb3UgY2FuIGdpdmUgYW4gZXhwbGljaXQgcmFuZ2UgdHlwZSAqLworY3JlYXRl IHRhYmxlIHB0MiAoaWQgaW50LCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBk ZSkgd2l0aCAocmFuZ2V0eXBlID0gJ215ZGF0ZXJhbmdlJykpOworZHJvcCB0eXBlIG15ZGF0ZXJh bmdlOworRVJST1I6ICBjYW5ub3QgZHJvcCB0eXBlIG15ZGF0ZXJhbmdlIGJlY2F1c2Ugb3RoZXIg b2JqZWN0cyBkZXBlbmQgb24gaXQKK0RFVEFJTDogIHBlcmlvZCBwIG9uIHRhYmxlIHB0MiBkZXBl bmRzIG9uIHR5cGUgbXlkYXRlcmFuZ2UKK0hJTlQ6ICBVc2UgRFJPUCAuLi4gQ0FTQ0FERSB0byBk cm9wIHRoZSBkZXBlbmRlbnQgb2JqZWN0cyB0b28uCitkcm9wIHR5cGUgbXlkYXRlcmFuZ2UgY2Fz Y2FkZTsKK05PVElDRTogIGRyb3AgY2FzY2FkZXMgdG8gcGVyaW9kIHAgb24gdGFibGUgcHQyCitk cm9wIHRhYmxlIHB0MjsKK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludCwgZHMgZGF0ZSwgZGUgZGF0 ZSwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKHJhbmdldHlwZSA9ICdkYXRlcmFuZ2UnKSk7 CisvKiBSYW5nZSB0eXBlIGlzIG5vdCBmb3VuZCAqLworY3JlYXRlIHRhYmxlIHB0MyAoaWQgaW50 LCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAocmFuZ2V0eXBl ID0gJ25vdGFyYW5nZScpKTsKK0VSUk9SOiAgUmFuZ2UgdHlwZSBub3RhcmFuZ2Ugbm90IGZvdW5k CisvKiBSYW5nZSB0eXBlIGlzIHRoZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFibGUgcHQzIChp ZCBpbnQsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChyYW5n ZXR5cGUgPSAndHN0enJhbmdlJykpOworRVJST1I6ICBSYW5nZSB0eXBlIHRzdHpyYW5nZSBkb2Vz IG5vdCBtYXRjaCBjb2x1bW4gdHlwZSBkYXRlCitkcm9wIHRhYmxlIHB0MjsKKy8qIFBlcmlvZCBj YW4ndCB1c2UgdGhlIHNhbWUgY29sdW0gZm9yIHN0YXJ0IGFuZCBlbmQqLworY3JlYXRlIHRhYmxl IHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSk7CithbHRlciB0YWJsZSBwdDIgYWRk IHBlcmlvZCBmb3IgcCAoZHMsIGRzKTsKK0VSUk9SOiAgY29sdW1uICJkcyIgY2FuJ3QgYmUgdGhl IHN0YXJ0IGFuZCBlbmQgY29sdW1uIGZvciBwZXJpb2QgInAiCitkcm9wIHRhYmxlIHB0MjsKKy8q IFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogd29ya3MgKi8KK2NyZWF0ZSB0YWJsZSBw dDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAgZGF0ZXJhbmdlIG5vdCBudWxsIGdl bmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5nZShkcywgZGUpKSBzdG9yZWQpOworYWx0ZXIgdGFi bGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7 CitcZCBwdDIKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnB0MiIKKyBDb2x1bW4gfCAg VHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0rLS0tLS0t LS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgIHwgaW50ZWdlciB8 ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZHMgICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgCisgZGUgICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwg CitQZXJpb2RzOgorICAgIHAgKGRzLCBkZSkKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJwdDJf cF9jaGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVh dGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2wgaXNuJ3QgdGhlcmUg Ki8KK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUpOworYWx0 ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0g dHJ1ZSk7CitFUlJPUjogIGNvbHVtbiAicCIgb2YgcmVsYXRpb24gInB0MiIgZG9lcyBub3QgZXhp c3QKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBm YWlscyBiZWNhdXNlIHRoZSBvcHRpb24gaGFzIGFuIGludmFsaWQgdmFsdWUgKi8KK2NyZWF0ZSB0 YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAgZGF0ZXJhbmdlIG5vdCBu dWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5nZShkcywgZGUpKSBzdG9yZWQpOworYWx0 ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0g J3doYXRldmVyJyk7CitFUlJPUjogIGNvbGV4aXN0cyByZXF1aXJlcyBhIEJvb2xlYW4gdmFsdWUK K2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWls cyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90IE5PVCBOVUxMICovCitjcmVhdGUgdGFibGUgcHQy IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBnZW5lcmF0ZWQgYWx3 YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQg cGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpOworRVJST1I6ICBQ ZXJpb2QgcCB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGF0IGFsbG93cyBudWxscworZHJvcCB0 YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1 c2UgdGhlIGNvbHVtbiBpcyBub3QgR0VORVJBVEVEICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBp bnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBub3QgbnVsbCk7CithbHRlciB0 YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0cnVl KTsKK0VSUk9SOiAgUGVyaW9kIHAgdXNlcyBhIG5vbi1nZW5lcmF0ZWQgY29sdW1uCitkcm9wIHRh YmxlIHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVz ZSB0aGUgY29sdW1uIGlzIEdFTkVSQVRFRCBidXQgd2l0aCB0aGUgd3JvbmcgZXhwcmVzc2lvbiAq LworLS0gVE9ETzoKKy0tIGNyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRl IGRhdGUsIHAgZGF0ZXJhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5n ZShkZSwgZHMpKSBzdG9yZWQpOworLS0gYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAg KGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVS QVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyB0aGUgd3JvbmcgdHlwZSAq LworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCB0c3Jh bmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKHRzcmFuZ2UoZHMsIGRlKSkgc3RvcmVk KTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4 aXN0cyA9IHRydWUpOworRVJST1I6ICBQZXJpb2QgcCB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB3 aXRoIHRoZSB3cm9uZyB0eXBlCitkcm9wIHRhYmxlIHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VO RVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUgY29sdW1uIGlzIGluaGVyaXRlZCAqLwor Y3JlYXRlIHRhYmxlIHB0MnBhcmVudCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBk YXRlcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkp IHN0b3JlZCk7CitjcmVhdGUgdGFibGUgcHQyICgpIGluaGVyaXRzIChwdDJwYXJlbnQpOworYWx0 ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0g dHJ1ZSk7CitFUlJPUjogIFBlcmlvZCBwIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHRoYXQgaXMg aW5oZXJpdGVkCitkcm9wIHRhYmxlIHB0MjsKK2Ryb3AgdGFibGUgcHQycGFyZW50OworLyogQ1JF QVRFIFRBQkxFIChMSUtFIC4uLikgKi8KKy8qIFBlcmlvZHMgYXJlIG5vdCBjb3BpZWQgYnkgTElL RSwgc28gdGhlaXIgY29sdW1ucyBhcmVuJ3QgZWl0aGVyICovCitjcmVhdGUgdGFibGUgcHQyIChs aWtlIHB0KTsKK1xkIHB0MgorICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMucHQyIgorIENv bHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0t LSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgfCBp bnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyBkcyAgICAgfCBkYXRlICAgIHwgICAg ICAgICAgIHwgICAgICAgICAgfCAKKyBkZSAgICAgfCBkYXRlICAgIHwgICAgICAgICAgIHwgICAg ICAgICAgfCAKKworZHJvcCB0YWJsZSBwdDI7CisvKiBDYW4gYWRkIGEgcGVyaW9kIHJlZmVycmlu ZyB0byBMSUtFJ2QgY29sdW1ucyAqLworY3JlYXRlIHRhYmxlIG5vdF9wIChpZCBpbnRlZ2VyLCBk cyBkYXRlLCBkZSBkYXRlKTsKK2NyZWF0ZSB0YWJsZSBwdDIgKGxpa2Ugbm90X3AsIHBlcmlvZCBm b3IgcCAoZHMsIGRlKSk7CitcZCBwdDIKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnB0 MiIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAor LS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQg ICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZHMgICAgIHwgZGF0ZSAg ICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZGUgICAgIHwgZGF0ZSAgICB8ICAgICAgICAg ICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHAgKGRzLCBkZSkKK0NoZWNrIGNvbnN0cmFp bnRzOgorICAgICJwdDJfcF9jaGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisKK2Ryb3AgdGFibGUgcHQy OworLyogQ2FuIGFkZCBhIHBlcmlvZCB3aXRoIHRoZSBzYW1lIG5hbWUgKi8KK2NyZWF0ZSB0YWJs ZSBwdDIgKGxpa2UgcHQsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitcZCBwdDIKKyAgICAgICAg ICAgICAgICBUYWJsZSAicHVibGljLnB0MiIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9u IHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAg ICAgIHwgCisgZHMgICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZGUg ICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHAg KGRzLCBkZSkKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJwdDJfcF9jaGVjayIgQ0hFQ0sgKGRz IDwgZGUpCisKK2Ryb3AgdGFibGUgcHQyOworLyogQ2FuIGFkZCBhIHBlcmlvZCB3aXRoIGEgZGlm ZmVyZW50IG5hbWUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGxpa2UgcHQsIHBlcmlvZCBmb3IgcDIg KGRzLCBkZSkpOworXGQgcHQyCisgICAgICAgICAgICAgICAgVGFibGUgInB1YmxpYy5wdDIiCisg Q29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0t LS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICB8 IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIGRzICAgICB8IGRhdGUgICAgfCAg ICAgICAgICAgfCAgICAgICAgICB8IAorIGRlICAgICB8IGRhdGUgICAgfCAgICAgICAgICAgfCAg ICAgICAgICB8IAorUGVyaW9kczoKKyAgICBwMiAoZHMsIGRlKQorQ2hlY2sgY29uc3RyYWludHM6 CisgICAgInB0Ml9wMl9jaGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisKK2Ryb3AgdGFibGUgcHQyOwor LyogQ2FuJ3QgYWRkIGEgcGVyaW9kIHdob3NlIG5hbWUgY29uZmxpY3RzIHdpdGggYSBMSUtFJ2Qg Y29sdW1uICovCitjcmVhdGUgdGFibGUgcHQyIChsaWtlIHB0LCBwZXJpb2QgZm9yIGlkIChkcywg ZGUpKTsKK0VSUk9SOiAgcGVyaW9kIG5hbWUgImlkIiBjb25mbGljdHMgd2l0aCBhIGNvbHVtbiBu YW1lCisvKiBDUkVBVEUgVEFMQkUgSU5IRVJJVFMgKi8KKy8qIENhbid0IGluaGVyaXQgZnJvbSBh IHRhYmxlIHdpdGggYSBwZXJpb2QgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKG5hbWUgdGV4dCkgaW5o ZXJpdHMgKHB0KTsKK0VSUk9SOiAgSW5oZXJpdGluZyBmcm9tIGEgdGFibGUgd2l0aCBhIFBFUklP RCBpcyBub3Qgc3VwcG9ydGVkCisvKiBDYW4ndCBpbmhlcml0IHdpdGggYSBwZXJpb2QgKi8KK2Ny ZWF0ZSB0YWJsZSBwdDIgKGQycyBkYXRlLCBkMmUgZGF0ZSwgcGVyaW9kIGZvciBwIChkMnMsIGQy ZSkpIGluaGVyaXRzIChub3RfcCk7CitFUlJPUjogIEluaGVyaXRpbmcgaXMgbm90IHN1cHBvcnRl ZCB3aGVuIGEgdGFibGUgaGFzIGEgUEVSSU9ECitkcm9wIHRhYmxlIG5vdF9wOwpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wcml2aWxlZ2VzLm91dCBiL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdlcy5vdXQKaW5kZXggOWZmOGU3ZmIzNjMuLjRmNTc3MjE4 Y2RmIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ByaXZpbGVnZXMub3V0 CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdlcy5vdXQKQEAgLTExMzcs NiArMTEzNywzNSBAQCBTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2Vy MzsKIFVQREFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTAxJyBU TyAnMjAwMS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKIFNFVCBTRVNTSU9OIEFVVEhPUklaQVRJ T04gcmVncmVzc19wcml2X3VzZXIxOwogRFJPUCBUQUJMRSB0MTsKKy0tIHRlc3QgY29sdW1uLWxl dmVsIHByaXZpbGVnZXMgb24gdGhlIFBFUklPRCB1c2VkIGluIEZPUiBQT1JUSU9OIE9GCitTRVQg U0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsKK0NSRUFURSBUQUJMRSB0 MSAoCisgIGMxIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSB0aW1lc3RhbXAsCisgIHZhbGlkX3Rp bCB0aW1lc3RhbXAsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCksCisJQ09OU1RSQUlOVCB0MXBrIFBSSU1BUlkgS0VZIChjMSwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKKyk7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXIyOwor R1JBTlQgU0VMRUNUIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMzsKK0dSQU5UIFNFTEVDVCBP TiB0MSBUTyByZWdyZXNzX3ByaXZfdXNlcjQ7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVz c19wcml2X3VzZXI1OworR1JBTlQgVVBEQVRFIChjMSkgT04gdDEgVE8gcmVncmVzc19wcml2X3Vz ZXIyOworR1JBTlQgVVBEQVRFIChjMSwgdmFsaWRfYXQpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91 c2VyMzsKK0dSQU5UIFVQREFURSAoYzEsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgT04gdDEgVE8g cmVncmVzc19wcml2X3VzZXI0OworR1JBTlQgVVBEQVRFIChjMSwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCB2YWxpZF9hdCkgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXI1OworU0VUIFNFU1NJT04g QVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjI7CitVUERBVEUgdDEgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBjMSA9ICdb MiwzKSc7CitFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIGZvciB0YWJsZSB0MQorU0VUIFNFU1NJ T04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjM7CitVUERBVEUgdDEgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBjMSA9 ICdbMiwzKSc7CitFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIGZvciB0YWJsZSB0MQorU0VUIFNF U1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjQ7CitVUERBVEUgdDEgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBj MSA9ICdbMiwzKSc7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2Vy NTsKK1VQREFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTAxJyBU TyAnMjAwMS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJ T04gcmVncmVzc19wcml2X3VzZXIxOworRFJPUCBUQUJMRSB0MTsKIC0tIHRlc3QgY29sdW1uLWxl dmVsIHByaXZpbGVnZXMgd2hlbiBpbnZvbHZlZCB3aXRoIERFTEVURQogU0VUIFNFU1NJT04gQVVU SE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CiBBTFRFUiBUQUJMRSBhdGVzdDYgQUREIENP TFVNTiB0aHJlZSBpbnRlZ2VyOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3Rl ZC93aXRob3V0X292ZXJsYXBzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91 dF9vdmVybGFwcy5vdXQKaW5kZXggNGQ5ZjI1YWM0MDUuLmU1NDVkMGUzM2Q0IDEwMDY0NAotLS0g YS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMub3V0CisrKyBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9vdmVybGFwcy5vdXQKQEAgLTE1Myw2ICsx NTMsNzYgQEAgU0VMRUNUIHBnX2dldF9pbmRleGRlZihjb25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBw Z19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGUKICBDUkVBVEUgVU5JUVVFIElOREVYIHRl bXBvcmFsX3JuZzJfcGsgT04gdGVtcG9yYWxfcm5nMiBVU0lORyBnaXN0IChpZDEsIGlkMiwgdmFs aWRfYXQpCiAoMSByb3cpCiAKKy0tIFBLIHdpdGggb25lIGNvbHVtbiBwbHVzIGEgUEVSSU9EOgor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJv bSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xkIHRlbXBvcmFsX3Blcgor ICAgICAgICAgICAgICAgVGFibGUgInB1YmxpYy50ZW1wb3JhbF9wZXIiCisgICBDb2x1bW4gICB8 ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAg ICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2Zyb20gfCBk YXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlkX3RpbCAgfCBkYXRlICAg ICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfcGVyX3BrIiBQUklN QVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCitDaGVjayBjb25zdHJhaW50 czoKKyAgICAidGVtcG9yYWxfcGVyX3ZhbGlkX2F0X2NoZWNrIiBDSEVDSyAodmFsaWRfZnJvbSA8 IHZhbGlkX3RpbCkKKworU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVmKG9pZCkgRlJPTSBwZ19j b25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfcGVyX3BrJzsKKyAgICAgICAgICAg IHBnX2dldF9jb25zdHJhaW50ZGVmICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKQorKDEgcm93KQorCitTRUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlk LCAwLCB0cnVlKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9w ZXJfcGsnOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ19nZXRfaW5kZXhkZWYg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor IENSRUFURSBVTklRVUUgSU5ERVggdGVtcG9yYWxfcGVyX3BrIE9OIHRlbXBvcmFsX3BlciBVU0lO RyBnaXN0IChpZCwgdmFsaWRfYXQpCisoMSByb3cpCisKKy0tIFBLIHdpdGggdHdvIGNvbHVtbnMg cGx1cyBhIFBFUklPRDoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIyICgKKyAgaWQxIGludDRy YW5nZSwKKyAgaWQyIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwg ZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIyX3BrIFBSSU1BUlkgS0VZIChpZDEsIGlkMiwgdmFsaWRf YXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbF9wZXIyCisgICAgICAgICAgICAg IFRhYmxlICJwdWJsaWMudGVtcG9yYWxfcGVyMiIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwg Q29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQxICAgICAgICB8IGludDRyYW5n ZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgaWQyICAgICAgICB8IGludDRyYW5nZSB8ICAg ICAgICAgICB8IG5vdCBudWxsIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAg ICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAg ICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwp CitJbmRleGVzOgorICAgICJ0ZW1wb3JhbF9wZXIyX3BrIiBQUklNQVJZIEtFWSAoaWQxLCBpZDIs IHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCitDaGVjayBjb25zdHJhaW50czoKKyAgICAidGVt cG9yYWxfcGVyMl92YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwp CisKK1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBX SEVSRSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjJfcGsnOworICAgICAgICAgICAgICAgcGdfZ2V0 X2NvbnN0cmFpbnRkZWYgICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBQUklNQVJZIEtFWSAoaWQxLCBpZDIsIHZhbGlk X2F0IFdJVEhPVVQgT1ZFUkxBUFMpCisoMSByb3cpCisKK1NFTEVDVCBwZ19nZXRfaW5kZXhkZWYo Y29uaW5kaWQsIDAsIHRydWUpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3Rl bXBvcmFsX3BlcjJfcGsnOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGdf Z2V0X2luZGV4ZGVmICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCistLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBDUkVBVEUgVU5JUVVFIElOREVYIHRlbXBvcmFsX3Bl cjJfcGsgT04gdGVtcG9yYWxfcGVyMiBVU0lORyBnaXN0IChpZDEsIGlkMiwgdmFsaWRfYXQpCiso MSByb3cpCisKIC0tIFBLIHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZToKIENSRUFURSBUWVBFIHRl eHRyYW5nZTIgQVMgcmFuZ2UgKHN1YnR5cGU9dGV4dCwgY29sbGF0aW9uPSJDIik7CiBDUkVBVEUg VEFCTEUgdGVtcG9yYWxfcm5nMyAoCkBAIC0zMDAsNiArMzcwLDc4IEBAIFNFTEVDVCBwZ19nZXRf aW5kZXhkZWYoY29uaW5kaWQsIDAsIHRydWUpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25u YW1lID0gJ3RlCiAoMSByb3cpCiAKIERST1AgVEFCTEUgdGVtcG9yYWxfcm5nMzsKKy0tIFVOSVFV RSB3aXRoIG9uZSBjb2x1bW4gcGx1cyBhIFBFUklPRDoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9w ZXIzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBk YXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbF9wZXIzCisgICAgICAgICAgICAgIFRhYmxlICJwdWJs aWMudGVtcG9yYWxfcGVyMyIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwg TnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgICAgICB8IGludDRyYW5nZSB8ICAgICAgICAg ICB8ICAgICAgICAgIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAg ICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAg IHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCitJbmRl eGVzOgorICAgICJ0ZW1wb3JhbF9wZXIzX3VxIiBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKQorQ2hlY2sgY29uc3RyYWludHM6CisgICAgInRlbXBvcmFsX3BlcjNfdmFsaWRf YXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQorCitTRUxFQ1QgcGdfZ2V0 X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0 ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICBwZ19nZXRfY29uc3RyYWludGRlZiAgICAgICAg ICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBVTklRVUUgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKDEgcm93KQorCitTRUxFQ1QgcGdfZ2V0X2lu ZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFt ZSA9ICd0ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHBnX2dldF9pbmRleGRlZiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCisgQ1JFQVRFIFVOSVFVRSBJTkRFWCB0ZW1wb3JhbF9wZXIzX3Vx IE9OIHRlbXBvcmFsX3BlcjMgVVNJTkcgZ2lzdCAoaWQsIHZhbGlkX2F0KQorKDEgcm93KQorCitE Uk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CistLSBVTklRVUUgd2l0aCB0d28gY29sdW1ucyBwbHVz IGEgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjMgKAorICBpZDEgaW50NHJhbmdl LAorICBpZDIgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRl LAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05T VFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZDEsIGlkMiwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbF9wZXIzCisgICAgICAgICAgICAgIFRhYmxlICJw dWJsaWMudGVtcG9yYWxfcGVyMyIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9u IHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQxICAgICAgICB8IGludDRyYW5nZSB8ICAgICAg ICAgICB8ICAgICAgICAgIHwgCisgaWQyICAgICAgICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8 ICAgICAgICAgIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAg ICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwg CitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCitJbmRleGVz OgorICAgICJ0ZW1wb3JhbF9wZXIzX3VxIiBVTklRVUUgKGlkMSwgaWQyLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKQorQ2hlY2sgY29uc3RyYWludHM6CisgICAgInRlbXBvcmFsX3BlcjNfdmFs aWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQorCitTRUxFQ1QgcGdf Z2V0X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9 ICd0ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICAgICBwZ19nZXRfY29uc3RyYWludGRlZiAg ICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyBVTklRVUUgKGlkMSwgaWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKDEgcm93 KQorCitTRUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBnX2Nv bnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBnX2dldF9pbmRleGRlZiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgQ1JF QVRFIFVOSVFVRSBJTkRFWCB0ZW1wb3JhbF9wZXIzX3VxIE9OIHRlbXBvcmFsX3BlcjMgVVNJTkcg Z2lzdCAoaWQxLCBpZDIsIHZhbGlkX2F0KQorKDEgcm93KQorCitEUk9QIFRBQkxFIHRlbXBvcmFs X3BlcjM7CiAtLSBVTklRVUUgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBlOgogQ1JFQVRFIFRZUEUg dGV4dHJhbmdlMiBBUyByYW5nZSAoc3VidHlwZT10ZXh0LCBjb2xsYXRpb249IkMiKTsKIENSRUFU RSBUQUJMRSB0ZW1wb3JhbF9ybmczICgKQEAgLTM3Nyw2ICs1MTksMTA2IEBAIEFMVEVSIFRBQkxF IHRlbXBvcmFsMwogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfdXEKICAgVU5JUVVFIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CiBEUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIFBS SU1BUlkgS0VZIHdpdGggUEVSSU9EIGFscmVhZHkgdGhlcmUKK0NSRUFURSBUQUJMRSB0ZW1wb3Jh bDMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRh dGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKKyk7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbDMKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrCisgIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMK KyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsMyIKKyAgIENvbHVtbiAgIHwg ICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgICAg ICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgdmFsaWRfZnJvbSB8IGRh dGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAg ICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxp ZF9mcm9tLCB2YWxpZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3JhbDNfcGsiIFBSSU1BUlkg S0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgor ICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRf dGlsKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIFBSSU1BUlkgS0VZIHdpdGggUEVSSU9E IHRvbworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRf ZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMwor ICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrCisgIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVi bGljLnRlbXBvcmFsMyIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVs bGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgICAgICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8 IG5vdCBudWxsIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAg ICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwg CitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCitJbmRleGVz OgorICAgICJ0ZW1wb3JhbDNfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hl Y2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQorCitEUk9QIFRBQkxFIHRlbXBvcmFs MzsKKy0tIFVOSVFVRSB3aXRoIFBFUklPRCBhbHJlYWR5IHRoZXJlCitDUkVBVEUgVEFCTEUgdGVt cG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3Rp bCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCisp OworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsM191cQor ICBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKK1xkIHRlbXBvcmFsMwor ICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWwzIgorICAgQ29sdW1uICAgfCAg IFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAg IHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF9mcm9tIHwgZGF0 ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAg IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK1BlcmlvZHM6CisgICAgdmFsaWRfYXQgKHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6CisgICAgInRlbXBvcmFsM191cSIgVU5JUVVFIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0 ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQor CitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIFVOSVFVRSB3aXRoIFBFUklPRCB0b28KK0NSRUFU RSBUQUJMRSB0ZW1wb3JhbDMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwK KyAgdmFsaWRfdGlsIGRhdGUKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMKKyAgQUREIFBFUklP RCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsM191cQorICBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsK K1xkIHRlbXBvcmFsMworICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWwzIgor ICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQg CistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2 YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90 aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK1BlcmlvZHM6CisgICAg dmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6CisgICAgInRlbXBvcmFs M191cSIgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0 cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9t IDwgdmFsaWRfdGlsKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKIC0tCiAtLSByYW5nZSBQSzog dGVzdCB3aXRoIGV4aXN0aW5nIHJvd3MKIC0tCkBAIC04NzQsNiArMTExNiwyODQgQEAgU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9tbHRybmczIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKIAogRFJPUCBU QUJMRSB0ZW1wb3JhbF9tbHRybmczOwogLS0KKy0tIFBFUklPRCBQSzogdGVzdCB3aXRoIGV4aXN0 aW5nIHJvd3MKKy0tCitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIgRFJPUCBDT05TVFJBSU5UIHRl bXBvcmFsX3Blcl9wazsKKy0tIG9rYXk6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAx OC0wMi0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIw MTgtMDEtMDEnLCBOVUxMKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBBREQgQ09OU1RSQUlO VCB0ZW1wb3JhbF9wZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxf cGVyX3BrOworLS0gc2hvdWxkIGZhaWw6CitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAx LTAxJywgJzIwMTgtMDEtMDUnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX3Blcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpOworRVJST1I6ICBjb3VsZCBub3QgY3JlYXRlIGV4Y2x1c2lvbiBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9wZXJfcGsiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBb MjAxOC0wMS0wMiwyMDE4LTAyLTAzKSkgY29uZmxpY3RzIHdpdGgga2V5IChpZCwgdmFsaWRfYXQp PShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSkpLgorUk9MTEJBQ0s7CistLSByZWplY3Rz IGVtcHR5OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBEUk9QIFBFUklPRCBG T1IgdmFsaWRfYXQ7CisgIElOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAyMC0wMS0wMScsICcyMDIwLTAxLTAxJyk7 CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKTsKK0VSUk9SOiAgY2hlY2sgY29uc3RyYWludCAidGVtcG9yYWxf cGVyX3ZhbGlkX2F0X2NoZWNrIiBvZiByZWxhdGlvbiAidGVtcG9yYWxfcGVyIiBpcyB2aW9sYXRl ZCBieSBzb21lIHJvdworUk9MTEJBQ0s7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfcGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXI7CistLQorLS0gUEVSSU9EIFBL OiB0ZXN0IGluc2VydHMKKy0tCistLSBva2F5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAxLTAyJywg JzIwMTgtMDItMDMnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMy0wMycsICcyMDE4LTA0LTA0Jyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMyw0KScs ICcyMDE4LTAxLTAxJywgTlVMTCk7CistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAx OC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitFUlJPUjogIGNvbmZsaWN0aW5nIGtleSB2YWx1ZSB2 aW9sYXRlcyBleGNsdXNpb24gY29uc3RyYWludCAidGVtcG9yYWxfcGVyX3BrIgorREVUQUlMOiAg S2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSkpIGNvbmZs aWN0cyB3aXRoIGV4aXN0aW5nIGtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAy LDIwMTgtMDItMDMpKS4KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitF UlJPUjogIG51bGwgdmFsdWUgaW4gY29sdW1uICJpZCIgb2YgcmVsYXRpb24gInRlbXBvcmFsX3Bl ciIgdmlvbGF0ZXMgbm90LW51bGwgY29uc3RyYWludAorREVUQUlMOiAgRmFpbGluZyByb3cgY29u dGFpbnMgKG51bGwsIDIwMTgtMDEtMDEsIDIwMTgtMDEtMDUsIFsyMDE4LTAxLTAxLDIwMTgtMDEt MDUpKS4KKy0tIHJlamVjdHMgZW1wdHk6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIwMjAtMDEtMDEnLCAnMjAy MC0wMS0wMScpOworRVJST1I6ICBuZXcgcm93IGZvciByZWxhdGlvbiAidGVtcG9yYWxfcGVyIiB2 aW9sYXRlcyBjaGVjayBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXJfdmFsaWRfYXRfY2hlY2siCitE RVRBSUw6ICBGYWlsaW5nIHJvdyBjb250YWlucyAoWzMsNCksIDIwMjAtMDEtMDEsIDIwMjAtMDEt MDEsIGVtcHR5KS4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAorLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tCisgWzEsMikgfCAyMDE4LTAxLTAyIHwgMjAxOC0wMi0wMworIFsx LDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4 LTAxLTA1CisgWzMsNCkgfCAyMDE4LTAxLTAxIHwgCisoNCByb3dzKQorCistLQorLS0gUEVSSU9E IFBLOiB0ZXN0IHVwZGF0ZXMKKy0tCistLSB1cGRhdGUgdGhlIHNjYWxhciBwYXJ0CitVUERBVEUg IHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMTEsMTIpJworV0hFUkUgICBpZCA9ICdbMSwy KScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0gdXBkYXRlIHRo ZSBQRVJJT0QgYm91bmRzCitVUERBVEUgIHRlbXBvcmFsX3BlcgorU0VUICAgICB2YWxpZF9mcm9t ID0gJzIwMjAtMDEtMDEnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAyMS0wMS0wMScKK1dIRVJF ICAgaWQgPSAnWzExLDEyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRl OworLS0gdXBkYXRlIGJvdGggYXQgb25jZQorVVBEQVRFICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAg aWQgPSAnWzIxLDIyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMicsCisgICAg ICAgIHZhbGlkX3RpbCA9ICcyMDE4LTAyLTAzJworV0hFUkUgICBpZCA9ICdbMTEsMTIpJworQU5E ICAgICB2YWxpZF9hdCBAPiAnMjAyMC0wMS0xNSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICBpZCAgICB8IHZhbGlkX2Zyb20gfCB2 YWxpZF90aWwgIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSAg IHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMiwzKSAgIHwgMjAxOC0wMS0wMSB8IDIwMTgt MDEtMDUKKyBbMyw0KSAgIHwgMjAxOC0wMS0wMSB8IAorIFsyMSwyMikgfCAyMDE4LTAxLTAyIHwg MjAxOC0wMi0wMworKDQgcm93cykKKworLS0gc2hvdWxkIGZhaWw6CitVUERBVEUgIHRlbXBvcmFs X3BlcgorU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0w My0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTA1JworV0hFUkUgICBpZCA9ICdb MjEsMjIpJzsKK0VSUk9SOiAgY29uZmxpY3Rpbmcga2V5IHZhbHVlIHZpb2xhdGVzIGV4Y2x1c2lv biBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXJfcGsiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9h dCk9KFsxLDIpLCBbMjAxOC0wMy0wNSwyMDE4LTA1LTA1KSkgY29uZmxpY3RzIHdpdGggZXhpc3Rp bmcga2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCkpLgor LS0gc2V0IHRoZSBzY2FsYXIgcGFydCB0byBOVUxMCitVUERBVEUgIHRlbXBvcmFsX3BlcgorU0VU ICAgICBpZCA9IE5VTEwsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAg ICAgIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKK0VS Uk9SOiAgbnVsbCB2YWx1ZSBpbiBjb2x1bW4gImlkIiBvZiByZWxhdGlvbiAidGVtcG9yYWxfcGVy IiB2aW9sYXRlcyBub3QtbnVsbCBjb25zdHJhaW50CitERVRBSUw6ICBGYWlsaW5nIHJvdyBjb250 YWlucyAobnVsbCwgMjAxOC0wMy0wNSwgMjAxOC0wNS0wNSwgWzIwMTgtMDMtMDUsMjAxOC0wNS0w NSkpLgorLS0gc2V0IGEgUEVSSU9EIGJvdW5kIHRvIE5VTEwgKG9rYXkpCitVUERBVEUgIHRlbXBv cmFsX3BlcgorU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAx OC0wNC0wNCcsCisgICAgICAgIHZhbGlkX3RpbCA9IE5VTEwKK1dIRVJFICAgaWQgPSAnWzIxLDIy KSc7CistLSByZWplY3RzIGVtcHR5OgorVVBEQVRFICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAgaWQg PSAnWzIxLDIyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAyMC0wMS0wMScsCisgICAgICAg IHZhbGlkX3RpbCA9ICcyMDIwLTAxLTAxJworV0hFUkUgICBpZCA9ICdbMSwyKSc7CitFUlJPUjog IG5ldyByb3cgZm9yIHJlbGF0aW9uICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGNoZWNrIGNvbnN0 cmFpbnQgInRlbXBvcmFsX3Blcl92YWxpZF9hdF9jaGVjayIKK0RFVEFJTDogIEZhaWxpbmcgcm93 IGNvbnRhaW5zIChbMjEsMjIpLCAyMDIwLTAxLTAxLCAyMDIwLTAxLTAxLCBlbXB0eSkuCitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMSwyKSB8IDIwMTgtMDQtMDQg fCAKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTA1CisgWzMsNCkgfCAyMDE4LTAxLTAx IHwgCisoNCByb3dzKQorCistLQorLS0gUEVSSU9EIFVROiB0ZXN0IHdpdGggZXhpc3Rpbmcgcm93 cworLS0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIzICgKKyAgaWQgaW50NHJhbmdlLAorICB2 YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCispOworLS0gb2theToKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIw MTgtMDEtMDInLCAnMjAxOC0wMi0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMy0wMycsICcy MDE4LTA0LTA0Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDEnLCBOVUxMKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoTlVMTCwgJzIwMTgtMDEt MDEnLCAnMjAxOC0wMS0wNScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQgQ09OU1RS QUlOVCB0ZW1wb3JhbF9wZXIzX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxB UFMpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxf cGVyM191cTsKKy0tIHNob3VsZCBmYWlsOgorQkVHSU47CisgIElOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgt MDEtMDEnLCAnMjAxOC0wMS0wNScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIzIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUyk7CitFUlJPUjogIGNvdWxkIG5vdCBjcmVhdGUgZXhjbHVzaW9uIGNvbnN0cmFpbnQg InRlbXBvcmFsX3BlcjNfdXEiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBb MjAxOC0wMS0wMiwyMDE4LTAyLTAzKSkgY29uZmxpY3RzIHdpdGgga2V5IChpZCwgdmFsaWRfYXQp PShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSkpLgorUk9MTEJBQ0s7CistLSByZWplY3Rz IGVtcHR5OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BlcjMgRFJPUCBQRVJJT0Qg Rk9SIHZhbGlkX2F0OworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMyw0KScsICcyMDIwLTAxLTAxJywgJzIwMjAtMDEtMDEn KTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0VSUk9SOiAgY2hlY2sgY29uc3RyYWludCAidGVtcG9y YWxfcGVyM192YWxpZF9hdF9jaGVjayIgb2YgcmVsYXRpb24gInRlbXBvcmFsX3BlcjMiIGlzIHZp b2xhdGVkIGJ5IHNvbWUgcm93CitST0xMQkFDSzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlcjMg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjM7CistLQorLS0gUEVSSU9E IFVROiB0ZXN0IGluc2VydHMKKy0tCistLSBva2F5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0w MicsICcyMDE4LTAyLTAzJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQt MDQnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzMsNCknLCAnMjAxOC0wMS0wMScsIE5VTEwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAnMjAxOC0wMS0wMScsICcy MDE4LTAxLTA1Jyk7CistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDEn LCAnMjAxOC0wMS0wNScpOworRVJST1I6ICBjb25mbGljdGluZyBrZXkgdmFsdWUgdmlvbGF0ZXMg ZXhjbHVzaW9uIGNvbnN0cmFpbnQgInRlbXBvcmFsX3BlcjNfdXEiCitERVRBSUw6ICBLZXkgKGlk LCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMSwyMDE4LTAxLTA1KSkgY29uZmxpY3RzIHdp dGggZXhpc3Rpbmcga2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDIsMjAxOC0w Mi0wMykpLgorLS0gcmVqZWN0cyBlbXB0eToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIwMjAtMDEtMDEnLCAn MjAyMC0wMS0wMScpOworRVJST1I6ICBuZXcgcm93IGZvciByZWxhdGlvbiAidGVtcG9yYWxfcGVy MyIgdmlvbGF0ZXMgY2hlY2sgY29uc3RyYWludCAidGVtcG9yYWxfcGVyM192YWxpZF9hdF9jaGVj ayIKK0RFVEFJTDogIEZhaWxpbmcgcm93IGNvbnRhaW5zIChbMyw0KSwgMjAyMC0wMS0wMSwgMjAy MC0wMS0wMSwgZW1wdHkpLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIzIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAorLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEsMikgfCAyMDE4LTAxLTAyIHwgMjAxOC0wMi0w MworIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMiwzKSB8IDIwMTgtMDEtMDEg fCAyMDE4LTAxLTA1CisgWzMsNCkgfCAyMDE4LTAxLTAxIHwgCisgICAgICAgfCAyMDE4LTAxLTAx IHwgMjAxOC0wMS0wNQorKDUgcm93cykKKworLS0KKy0tIFBFUklPRCBVUTogdGVzdCB1cGRhdGVz CistLQorLS0gdXBkYXRlIHRoZSBzY2FsYXIgcGFydAorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitT RVQgICAgIGlkID0gJ1sxMSwxMiknCitXSEVSRSAgIGlkID0gJ1sxLDIpJworQU5EICAgICB2YWxp ZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSB1cGRhdGUgdGhlIFBFUklPRCBib3VuZHMK K1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICB2YWxpZF9mcm9tID0gJzIwMjAtMDEtMDEn LAorICAgICAgICB2YWxpZF90aWwgPSAnMjAyMS0wMS0wMScKK1dIRVJFICAgaWQgPSAnWzExLDEy KScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0gdXBkYXRlIGJv dGggYXQgb25jZQorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAgIGlkID0gJ1syMSwyMikn LAorICAgICAgICB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLAorICAgICAgICB2YWxpZF90aWwg PSAnMjAxOC0wMi0wMycKK1dIRVJFICAgaWQgPSAnWzExLDEyKScKK0FORCAgICAgdmFsaWRfYXQg QD4gJzIwMjAtMDEtMTUnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIzIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKyAgIGlkICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgCist LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpICAgfCAyMDE4LTAzLTAz IHwgMjAxOC0wNC0wNAorIFsyLDMpICAgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wNQorIFszLDQp ICAgfCAyMDE4LTAxLTAxIHwgCisgWzIxLDIyKSB8IDIwMTgtMDEtMDIgfCAyMDE4LTAyLTAzCisg ICAgICAgICB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTA1CisoNSByb3dzKQorCistLSBzaG91bGQg ZmFpbDoKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAg ICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4 LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKK0VSUk9SOiAgY29uZmxpY3Rpbmcga2V5 IHZhbHVlIHZpb2xhdGVzIGV4Y2x1c2lvbiBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXIzX3VxIgor REVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDMtMDUsMjAxOC0wNS0w NSkpIGNvbmZsaWN0cyB3aXRoIGV4aXN0aW5nIGtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsy MDE4LTAzLTAzLDIwMTgtMDQtMDQpKS4KKy0tIHNldCB0aGUgc2NhbGFyIHBhcnQgdG8gTlVMTCAo b2theSkKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9IE5VTEwsCisgICAgICAg IHZhbGlkX2Zyb20gPSAnMjAyMC0wMS0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDIxLTAx LTAxJworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCBhIFBFUklPRCBib3VuZCB0byBO VUxMIChva2F5KQorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAgIGlkID0gJ1sxLDIpJywK KyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDE4LTA0LTA0JywKKyAgICAgICAgdmFsaWRfdGlsID0g TlVMTAorV0hFUkUgICBpZCBJUyBOVUxMIEFORCB2YWxpZF9hdCBAPiAnMjAyMC0wNi0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMTgtMDMtMDMgfCAyMDE4LTA0LTA0CisgWzEsMikgfCAy MDE4LTA0LTA0IHwgCisgWzIsMykgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wNQorIFszLDQpIHwg MjAxOC0wMS0wMSB8IAorICAgICAgIHwgMjAxOC0wMS0wMSB8IDIwMTgtMDEtMDUKKyg1IHJvd3Mp CisKKy0tIHNob3VsZCBmYWlsOgorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAgIHZhbGlk X2Zyb20gPSAnMjAxOC0wMy0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTA1Jwor V0hFUkUgICBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX3RpbCBJUyBOVUxMOworRVJST1I6ICBjb25m bGljdGluZyBrZXkgdmFsdWUgdmlvbGF0ZXMgZXhjbHVzaW9uIGNvbnN0cmFpbnQgInRlbXBvcmFs X3BlcjNfdXEiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMy0w MSwyMDE4LTA1LTA1KSkgY29uZmxpY3RzIHdpdGggZXhpc3Rpbmcga2V5IChpZCwgdmFsaWRfYXQp PShbMSwyKSwgWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCkpLgorLS0gcmVqZWN0cyBlbXB0eToKK1VQ REFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICB2YWxpZF9mcm9tID0gJzIwMjAtMDEtMDEnLAor ICAgICAgICB2YWxpZF90aWwgPSAnMjAyMC0wMS0wMScKK1dIRVJFICAgaWQgPSAnWzEsMiknIEFO RCB2YWxpZF90aWwgSVMgTlVMTDsKK0VSUk9SOiAgbmV3IHJvdyBmb3IgcmVsYXRpb24gInRlbXBv cmFsX3BlcjMiIHZpb2xhdGVzIGNoZWNrIGNvbnN0cmFpbnQgInRlbXBvcmFsX3BlcjNfdmFsaWRf YXRfY2hlY2siCitERVRBSUw6ICBGYWlsaW5nIHJvdyBjb250YWlucyAoWzEsMiksIDIwMjAtMDEt MDEsIDIwMjAtMDEtMDEsIGVtcHR5KS4KKy0tIHN0aWxsIHJlamVjdHMgZW1wdHkgd2hlbiBzY2Fs YXIgcGFydCBpcyBOVUxMOgorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAgIGlkID0gTlVM TCwKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDIwLTAxLTAxJywKKyAgICAgICAgdmFsaWRfdGls ID0gJzIwMjAtMDEtMDEnCitXSEVSRSAgIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfdGlsIElTIE5V TEw7CitFUlJPUjogIG5ldyByb3cgZm9yIHJlbGF0aW9uICJ0ZW1wb3JhbF9wZXIzIiB2aW9sYXRl cyBjaGVjayBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXIzX3ZhbGlkX2F0X2NoZWNrIgorREVUQUlM OiAgRmFpbGluZyByb3cgY29udGFpbnMgKG51bGwsIDIwMjAtMDEtMDEsIDIwMjAtMDEtMDEsIGVt cHR5KS4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMSwyKSB8 IDIwMTgtMDQtMDQgfCAKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTA1CisgWzMsNCkg fCAyMDE4LTAxLTAxIHwgCisgICAgICAgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wNQorKDUgcm93 cykKKworRFJPUCBUQUJMRSB0ZW1wb3JhbF9wZXIzOworLS0KIC0tIHRlc3QgYSByYW5nZSB3aXRo IGJvdGggYSBQSyBhbmQgYSBVTklRVUUgY29uc3RyYWludAogLS0KIENSRUFURSBUQUJMRSB0ZW1w b3JhbDMgKApAQCAtOTMzLDYgKzE0NTMsOTEgQEAgRVJST1I6ICBjb2x1bW4gInZhbGlkX2F0IiBp cyBpbiBhIHByaW1hcnkga2V5CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgQUxURVIgQ09MVU1OIHZh bGlkX2F0IFRZUEUgdHN0enJhbmdlIFVTSU5HIHRzdHpyYW5nZShsb3dlcih2YWxpZF9hdCksIHVw cGVyKHZhbGlkX2F0KSk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgUkVOQU1FIENPTFVNTiB2YWxp ZF9hdCBUTyB2YWxpZF90aHJ1OwogQUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgQ09MVU1OIHZh bGlkX3RocnU7CitcZCB0ZW1wb3JhbDMKKyAgICAgICAgICAgICAgVGFibGUgInB1YmxpYy50ZW1w b3JhbDMiCisgQ29sdW1uIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZh dWx0IAorLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBpZCAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorCitEUk9Q IFRBQkxFIHRlbXBvcmFsMzsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbDMgKAorICBpZCBpbnQ0cmFu Z2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1Ig dmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWwz X3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitcZCB0 ZW1wb3JhbDMKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsMyIKKyAgIENv bHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisg aWQgICAgICAgICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgdmFsaWRf ZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8 IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlk X2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3JhbDNfcGsi IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0 cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9t IDwgdmFsaWRfdGlsKQorCitTRUxFQ1QgYXR0bm90bnVsbCBGUk9NIHBnX2F0dHJpYnV0ZSBXSEVS RSBhdHRyZWxpZCA9ICd0ZW1wb3JhbDMnOjpyZWdjbGFzcyBBTkQgYXR0bmFtZSA9ICd2YWxpZF9h dCc7CisgYXR0bm90bnVsbCAKKy0tLS0tLS0tLS0tLQorIHQKKygxIHJvdykKKworQUxURVIgVEFC TEUgdGVtcG9yYWwzIEFMVEVSIENPTFVNTiB2YWxpZF9hdCBEUk9QIE5PVCBOVUxMOworRVJST1I6 ICBjb2x1bW4gInZhbGlkX2F0IiBpcyBpbiBhIHByaW1hcnkga2V5CitBTFRFUiBUQUJMRSB0ZW1w b3JhbDMgQUxURVIgQ09MVU1OIHZhbGlkX2F0IFRZUEUgdHN0enJhbmdlIFVTSU5HIHRzdHpyYW5n ZShsb3dlcih2YWxpZF9hdCksIHVwcGVyKHZhbGlkX2F0KSk7CitFUlJPUjogIGNhbm5vdCBzcGVj aWZ5IFVTSU5HIHdoZW4gYWx0ZXJpbmcgdHlwZSBvZiBnZW5lcmF0ZWQgY29sdW1uCitMSU5FIDE6 IEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xVTU4gdmFsaWRfYXQgVFlQRSB0c3R6cmFu Z2UgVS4uLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KK0RF VEFJTDogIENvbHVtbiAidmFsaWRfYXQiIGlzIGEgZ2VuZXJhdGVkIGNvbHVtbi4KK0FMVEVSIFRB QkxFIHRlbXBvcmFsMyBEUk9QIENPTFVNTiB2YWxpZF9hdDsKK0VSUk9SOiAgY2Fubm90IGRyb3Ag Y29sdW1uIHZhbGlkX2F0IG9mIHRhYmxlIHRlbXBvcmFsMyBiZWNhdXNlIHBlcmlvZCB2YWxpZF9h dCBvbiB0YWJsZSB0ZW1wb3JhbDMgcmVxdWlyZXMgaXQKK0hJTlQ6ICBZb3UgY2FuIGRyb3AgcGVy aW9kIHZhbGlkX2F0IG9uIHRhYmxlIHRlbXBvcmFsMyBpbnN0ZWFkLgorQUxURVIgVEFCTEUgdGVt cG9yYWwzIERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdDsKK1xkIHRlbXBvcmFsMworICAgICAgICAg ICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWwzIgorICAgQ29sdW1uICAgfCAgIFR5cGUgICAg fCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAgIHwgaW50NHJh bmdlIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKKyB2YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwg ICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAgIHwgICAgICAg ICAgIHwgICAgICAgICAgfCAKKworRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CistLSBTYW1lIHJlc3Vs dHMgaWYgd2UgYWRkIHRoZSBQRVJJT0QgYW5kIFBLIGZyb20gQUxURVIgVEFCTEU6CitDUkVBVEUg VEFCTEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisg IHZhbGlkX3RpbCBkYXRlCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisgIEFERCBQRVJJT0Qg Rk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbDNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsK K1xkIHRlbXBvcmFsMworICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWwzIgor ICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQg CistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKKyB2 YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90 aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK1BlcmlvZHM6CisgICAg dmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6CisgICAgInRlbXBvcmFs M19wayIgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorQ2hlY2sg Y29uc3RyYWludHM6CisgICAgInRlbXBvcmFsM192YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlk X2Zyb20gPCB2YWxpZF90aWwpCisKK1NFTEVDVCBhdHRub3RudWxsIEZST00gcGdfYXR0cmlidXRl IFdIRVJFIGF0dHJlbGlkID0gJ3RlbXBvcmFsMyc6OnJlZ2NsYXNzIEFORCBhdHRuYW1lID0gJ3Zh bGlkX2F0JzsKKyBhdHRub3RudWxsIAorLS0tLS0tLS0tLS0tCisgdAorKDEgcm93KQorCitBTFRF UiBUQUJMRSB0ZW1wb3JhbDMgQUxURVIgQ09MVU1OIHZhbGlkX2F0IERST1AgTk9UIE5VTEw7CitF UlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIGlzIGluIGEgcHJpbWFyeSBrZXkKIERST1AgVEFCTEUg dGVtcG9yYWwzOwogLS0KIC0tIHRlc3QgUEFSVElUSU9OIEJZIGZvciByYW5nZXMKQEAgLTE0MTQs MzIgKzIwMTksMjM2IEBAIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfbWx0cm5nMyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CiAKIERST1AgVEFCTEUgdGVtcG9yYWxfbWx0cm5nMzsKIC0tCi0tLSB0ZXN0 IEZLIGRlcGVuZGVuY2llcwotLS0KLS0tIGNhbid0IGRyb3AgYSByYW5nZSByZWZlcmVuY2VkIGJ5 IGFuIEZLLCB1bmxlc3Mgd2l0aCBDQVNDQURFCi1DUkVBVEUgVEFCTEUgdGVtcG9yYWwzICgKLSAg aWQgaW50NHJhbmdlLAotICB2YWxpZF9hdCBkYXRlcmFuZ2UsCi0gIENPTlNUUkFJTlQgdGVtcG9y YWwzX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKLSk7Ci1D UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZyAoCi0gIGlkIGludDRyYW5nZSwKLSAgdmFs aWRfYXQgZGF0ZXJhbmdlLAotICBwYXJlbnRfaWQgaW50NHJhbmdlLAotICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKLSAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKLSAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsMyAo aWQsIFBFUklPRCB2YWxpZF9hdCkKLSk7Ci1BTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBDT0xV TU4gdmFsaWRfYXQ7Ci1FUlJPUjogIGNhbm5vdCBkcm9wIGNvbHVtbiB2YWxpZF9hdCBvZiB0YWJs ZSB0ZW1wb3JhbDMgYmVjYXVzZSBvdGhlciBvYmplY3RzIGRlcGVuZCBvbiBpdAotREVUQUlMOiAg Y29uc3RyYWludCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2ZrX3Ju ZzJybmcgZGVwZW5kcyBvbiBjb2x1bW4gdmFsaWRfYXQgb2YgdGFibGUgdGVtcG9yYWwzCi1ISU5U OiAgVXNlIERST1AgLi4uIENBU0NBREUgdG8gZHJvcCB0aGUgZGVwZW5kZW50IG9iamVjdHMgdG9v LgotQUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgQ09MVU1OIHZhbGlkX2F0IENBU0NBREU7Ci1O T1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIGNvbnN0cmFpbnQgdGVtcG9yYWxfZmtfcm5nMnJuZ19m ayBvbiB0YWJsZSB0ZW1wb3JhbF9ma19ybmcycm5nCi1EUk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3Ju ZzJybmc7Ci1EUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIE9OIENPTkZMSUNUOiBQRVJJT0RzCiAt LQotLS0gdGVzdCBGT1JFSUdOIEtFWSwgcmFuZ2UgcmVmZXJlbmNlcyByYW5nZQorVFJVTkNBVEUg dGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsK Ky0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEt MDEnKSBPTiBDT05GTElDVCBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQgbm8gY29uZmxp Y3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1Qg RE8gTk9USElORzsKKy0tIGRhdGUgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMykn LCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgRE8gTk9USElORzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKyBbMSwy KSB8IDIwMTAtMDEtMDEgfCAyMDIwLTAxLTAxCisgWzIsMykgfCAyMDA1LTAxLTAxIHwgMjAwNi0w MS0wMQorKDMgcm93cykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcy MDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwy KScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0 KSBETyBOT1RISU5HOworRVJST1I6ICB0aGVyZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNv bnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNUIHNwZWNpZmljYXRpb24KKy0tIGlkIG1h dGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0w MS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIE5PVEhJTkc7CitFUlJPUjogIHRo ZXJlIGlzIG5vIHVuaXF1ZSBvciBleGNsdXNpb24gY29uc3RyYWludCBtYXRjaGluZyB0aGUgT04g Q09ORkxJQ1Qgc3BlY2lmaWNhdGlvbgorLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQs IHZhbGlkX2F0KSBETyBOT1RISU5HOworRVJST1I6ICB0aGVyZSBpcyBubyB1bmlxdWUgb3IgZXhj bHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNUIHNwZWNpZmljYXRpb24K K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKygx IHJvdykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAx JywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1 LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFs X3Blcl9wayBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RS QUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gTk9USElORzsKKy0tIGRhdGUgbWF0Y2hlcyBidXQgbm8g Y29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09O RkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gTk9USElORzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7Cisg IGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKyBbMSwyKSB8IDIw MTAtMDEtMDEgfCAyMDIwLTAxLTAxCisgWzIsMykgfCAyMDA1LTAxLTAxIHwgMjAwNi0wMS0wMQor KDMgcm93cykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAx LTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcy MDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBV UERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzIsMyknOworRVJST1I6ICB0aGVyZSBpcyBu byB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNU IHNwZWNpZmljYXRpb24KKy0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIp JywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQp IERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMyw0KSc7CitFUlJPUjogIHRoZXJl IGlzIG5vIHVuaXF1ZSBvciBleGNsdXNpb24gY29uc3RyYWludCBtYXRjaGluZyB0aGUgT04gQ09O RkxJQ1Qgc3BlY2lmaWNhdGlvbgorLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZh bGlkX2F0KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzQsNSknOworRVJST1I6 ICB0aGVyZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhl IE9OIENPTkZMSUNUIHNwZWNpZmljYXRpb24KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9S REVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwg dmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwg MjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKygxIHJvdykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVy OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBj b25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05G TElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBVUERBVEUgU0VUIGlkID0gRVhD TFVERUQuaWQgKyAnWzIsMyknOworRVJST1I6ICBPTiBDT05GTElDVCBETyBVUERBVEUgbm90IHN1 cHBvcnRlZCB3aXRoIGV4Y2x1c2lvbiBjb25zdHJhaW50cworLS0gaWQgbWF0Y2hlcyBidXQgbm8g Y29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09O RkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gVVBEQVRFIFNFVCBpZCA9IEVY Q0xVREVELmlkICsgJ1szLDQpJzsKK0VSUk9SOiAgT04gQ09ORkxJQ1QgRE8gVVBEQVRFIG5vdCBz dXBwb3J0ZWQgd2l0aCBleGNsdXNpb24gY29uc3RyYWludHMKKy0tIGRhdGUgbWF0Y2hlcyBidXQg bm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04g Q09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gVVBEQVRFIFNFVCBpZCA9 IEVYQ0xVREVELmlkICsgJ1s0LDUpJzsKK0VSUk9SOiAgT04gQ09ORkxJQ1QgRE8gVVBEQVRFIG5v dCBzdXBwb3J0ZWQgd2l0aCBleGNsdXNpb24gY29uc3RyYWludHMKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7CisgIGlkICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKygxIHJvdykKKworLS0gd2l0aCBh IFVOSVFVRSBjb25zdHJhaW50OgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjMgKAorICBpZCBp bnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklP RCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVt cG9yYWxfcGVyM191cSBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsK K1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIw MTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0w MScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgRE8gTk9USElORzsKKy0tIGlkIG1hdGNoZXMg YnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDEwLTAxLTAxJywgJzIwMjAtMDEtMDEn KSBPTiBDT05GTElDVCBETyBOT1RISU5HOworLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGlj dAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1Qg RE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgCist LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMDAtMDEtMDEgfCAy MDEwLTAxLTAxCisgWzEsMikgfCAyMDEwLTAxLTAxIHwgMjAyMC0wMS0wMQorIFsyLDMpIHwgMjAw NS0wMS0wMSB8IDIwMDYtMDEtMDEKKygzIHJvd3MpCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBj b25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09O RkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gTk9USElORzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8gdW5p cXVlIG9yIGV4Y2x1c2lvbiBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBzcGVj aWZpY2F0aW9uCistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAn MjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8g Tk9USElORzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8gdW5pcXVlIG9yIGV4Y2x1c2lvbiBjb25zdHJh aW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBzcGVjaWZpY2F0aW9uCistLSBkYXRlIG1hdGNo ZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEt MDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5HOworRVJST1I6ICB0aGVy ZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENP TkZMSUNUIHNwZWNpZmljYXRpb24KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBC WSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMDAt MDEtMDEgfCAyMDEwLTAxLTAxCisoMSByb3cpCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25m bGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJ Q1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIE5PVEhJTkc7CistLSBpZCBtYXRj aGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAx LTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIE5PVEhJ Tkc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1 LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFs X3BlcjNfdXEgRE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBC WSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMDAt MDEtMDEgfCAyMDEwLTAxLTAxCisgWzEsMikgfCAyMDEwLTAxLTAxIHwgMjAyMC0wMS0wMQorIFsy LDMpIHwgMjAwNS0wMS0wMSB8IDIwMDYtMDEtMDEKKygzIHJvd3MpCisKK1RSVU5DQVRFIHRlbXBv cmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0t IHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAx JykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gVVBEQVRFIFNFVCBpZCA9IEVYQ0xVREVE LmlkICsgJ1syLDMpJzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8gdW5pcXVlIG9yIGV4Y2x1c2lvbiBj b25zdHJhaW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBzcGVjaWZpY2F0aW9uCistLSBpZCBt YXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIw LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gVVBEQVRFIFNFVCBpZCA9IEVY Q0xVREVELmlkICsgJ1szLDQpJzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8gdW5pcXVlIG9yIGV4Y2x1 c2lvbiBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBzcGVjaWZpY2F0aW9uCist LSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIz IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAx JywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBVUERBVEUgU0VU IGlkID0gRVhDTFVERUQuaWQgKyAnWzQsNSknOworRVJST1I6ICB0aGVyZSBpcyBubyB1bmlxdWUg b3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNUIHNwZWNpZmlj YXRpb24KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgCistLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMDAtMDEtMDEgfCAyMDEwLTAx LTAxCisoMSByb3cpCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcy MDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEs MiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlO VCB0ZW1wb3JhbF9wZXIzX3VxIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMiwz KSc7CitFUlJPUjogIE9OIENPTkZMSUNUIERPIFVQREFURSBub3Qgc3VwcG9ydGVkIHdpdGggZXhj bHVzaW9uIGNvbnN0cmFpbnRzCistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RS QUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdb Myw0KSc7CitFUlJPUjogIE9OIENPTkZMSUNUIERPIFVQREFURSBub3Qgc3VwcG9ydGVkIHdpdGgg ZXhjbHVzaW9uIGNvbnN0cmFpbnRzCistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBD T05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgRE8gVVBEQVRFIFNFVCBpZCA9IEVYQ0xVREVELmlk ICsgJ1s0LDUpJzsKK0VSUk9SOiAgT04gQ09ORkxJQ1QgRE8gVVBEQVRFIG5vdCBzdXBwb3J0ZWQg d2l0aCBleGNsdXNpb24gY29uc3RyYWludHMKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBP UkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8 IDIwMDAtMDEtMDEgfCAyMDEwLTAxLTAxCisoMSByb3cpCisKK0RST1AgVEFCTEUgdGVtcG9yYWxf cGVyMzsKKy0tCistLSB0ZXN0IEZLIGRlcGVuZGVuY2llcworLS0KKy0tIGNhbid0IGRyb3AgYSBy YW5nZSByZWZlcmVuY2VkIGJ5IGFuIEZLLCB1bmxlc3Mgd2l0aCBDQVNDQURFCitDUkVBVEUgVEFC TEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisg IENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZyAoCisgIGlk IGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdl LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcy cm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZF UkVOQ0VTIHRlbXBvcmFsMyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKKyk7CitBTFRFUiBUQUJMRSB0 ZW1wb3JhbDMgRFJPUCBDT0xVTU4gdmFsaWRfYXQ7CitFUlJPUjogIGNhbm5vdCBkcm9wIGNvbHVt biB2YWxpZF9hdCBvZiB0YWJsZSB0ZW1wb3JhbDMgYmVjYXVzZSBvdGhlciBvYmplY3RzIGRlcGVu ZCBvbiBpdAorREVUQUlMOiAgY29uc3RyYWludCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrIG9uIHRh YmxlIHRlbXBvcmFsX2ZrX3JuZzJybmcgZGVwZW5kcyBvbiBjb2x1bW4gdmFsaWRfYXQgb2YgdGFi bGUgdGVtcG9yYWwzCitISU5UOiAgVXNlIERST1AgLi4uIENBU0NBREUgdG8gZHJvcCB0aGUgZGVw ZW5kZW50IG9iamVjdHMgdG9vLgorQUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgQ09MVU1OIHZh bGlkX2F0IENBU0NBREU7CitOT1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIGNvbnN0cmFpbnQgdGVt cG9yYWxfZmtfcm5nMnJuZ19mayBvbiB0YWJsZSB0ZW1wb3JhbF9ma19ybmcycm5nCitEUk9QIFRB QkxFIHRlbXBvcmFsX2ZrX3JuZzJybmc7CitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIGNhbid0 IGRyb3AgYSBQRVJJT0QgcmVmZXJlbmNlZCBieSBhbiBGSywgdW5sZXNzIHdpdGggQ0FTQ0FERQor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBk YXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJv bSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfcGsgUFJJTUFSWSBLRVkgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlk X3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJw ZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsMyAoaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBQRVJJT0QgRk9SIHZhbGlkX2F0 OworRVJST1I6ICBjYW5ub3QgZHJvcCBwZXJpb2QgdmFsaWRfYXQgb24gdGFibGUgdGVtcG9yYWwz IGJlY2F1c2Ugb3RoZXIgb2JqZWN0cyBkZXBlbmQgb24gaXQKK0RFVEFJTDogIGNvbnN0cmFpbnQg dGVtcG9yYWxfZmtfcGVyMnBlcl9mayBvbiB0YWJsZSB0ZW1wb3JhbF9ma19wZXIycGVyIGRlcGVu ZHMgb24gY29sdW1uIHZhbGlkX2F0IG9mIHRhYmxlIHRlbXBvcmFsMworSElOVDogIFVzZSBEUk9Q IC4uLiBDQVNDQURFIHRvIGRyb3AgdGhlIGRlcGVuZGVudCBvYmplY3RzIHRvby4KK0FMVEVSIFRB QkxFIHRlbXBvcmFsMyBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQgQ0FTQ0FERTsKK05PVElDRTog IGRyb3AgY2FzY2FkZXMgdG8gY29uc3RyYWludCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIG9uIHRh YmxlIHRlbXBvcmFsX2ZrX3BlcjJwZXIKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcjsK K0RST1AgVEFCTEUgdGVtcG9yYWwzOworLS0KKy0tIHRlc3QgRk9SRUlHTiBLRVksIHJhbmdlIHJl ZmVyZW5jZXMgcmFuZ2UKIC0tCiAtLSB0ZXN0IHRhYmxlIHNldHVwCiBEUk9QIFRBQkxFIHRlbXBv cmFsX3JuZzsKQEAgLTE0NjcsNiArMjI3NiwxOCBAQCBDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtf cm5nMnJuZyAoCiAgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnJuZ19mayBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9y bmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCiApOworXGQgdGVtcG9yYWxfZmtfcm5nMnJuZworICAg ICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsX2ZrX3JuZzJybmciCisgIENvbHVtbiAgIHwg ICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAg fCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2F0ICB8IGRhdGVy YW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgcGFyZW50X2lkIHwgaW50NHJhbmdlIHwg ICAgICAgICAgIHwgICAgICAgICAgfCAKK0luZGV4ZXM6CisgICAgInRlbXBvcmFsX2ZrX3JuZzJy bmdfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0ZvcmVp Z24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19ybmcycm5nX2ZrIiBGT1JFSUdO IEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n KGlkLCBQRVJJT0QgdmFsaWRfYXQpCisKIERST1AgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZzsK IC0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29sdW1uczoKIC0tIChwYXJlbnRfaWQsIFBFUklP RCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlkX2F0KQpAQCAtMzU4NSw4MyArNDQwNiwz NTY2IEBAIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQg PSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsCiAgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAx LDIwMjEtMDEtMDEpfSB8IFs4LDkpICAgICAgfCBbOCw5KQogKDIgcm93cykKIAotLS0gRksgd2l0 aCBhIGN1c3RvbSByYW5nZSB0eXBlCi1DUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShz dWJ0eXBlPWRhdGUpOwotQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzMgKAorLS0KKy0tIHRlc3Qg Rk9SRUlHTiBLRVksIFBFUklPRCByZWZlcmVuY2VzIFBFUklPRAorLS0KKy0tIHRlc3QgdGFibGUg c2V0dXAKK0RST1AgVEFCTEUgdGVtcG9yYWxfcGVyOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3Bl ciAoCiAgIGlkIGludDRyYW5nZSwKLSAgdmFsaWRfYXQgbXlkYXRlcmFuZ2UsCi0gIENPTlNUUkFJ TlQgdGVtcG9yYWxfcm5nM19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZF UkxBUFMpCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBG T1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKICk7Ci1DUkVBVEUgVEFCTEUgdGVt cG9yYWxfZmszX3JuZzJybmcgKAorQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX3Blcl9waworICBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpOworLS0gQ2FuJ3QgY3JlYXRlIGEgRksgd2l0aCBhIG1pc21hdGNoZWQgcmFu Z2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAogICBpZCBpbnQ0cmFu Z2UsCi0gIHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAorICB2YWxpZF9mcm9tIGludCwKKyAgdmFsaWRf dGlsIGludCwKICAgcGFyZW50X2lkIGludDRyYW5nZSwKLSAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m azNfcm5nMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp LAotICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKLSAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzMgKGlk LCBQRVJJT0QgdmFsaWRfYXQpIE9OIERFTEVURSBDQVNDQURFCisgIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9E IHZhbGlkX2F0KQogKTsKLUlOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzMgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzgsOSknLCBteWRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykp OwotSU5TRVJUIElOVE8gdGVtcG9yYWxfZmszX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbNSw2KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSwgJ1s4LDkpJyk7Ci1ERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmczIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdb OCw5KSc7Ci1TRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrM19ybmcycm5nIFdIRVJFIGlkID0gJ1s1 LDYpJzsKLSAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAotLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCi0gWzUsNikgfCBbMjAx OC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs4LDkpCi0gWzUsNikgfCBbMjAyMC0wMS0wMSwyMDIxLTAx LTAxKSB8IFs4LDkpCi0oMiByb3dzKQorRVJST1I6ICBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0 ZW1wb3JhbF9ma19wZXIycGVyX2ZrIiBjYW5ub3QgYmUgaW1wbGVtZW50ZWQKK0RFVEFJTDogIEtl eSBjb2x1bW5zICJ2YWxpZF9hdCIgb2YgdGhlIHJlZmVyZW5jaW5nIHRhYmxlIGFuZCAidmFsaWRf YXQiIG9mIHRoZSByZWZlcmVuY2VkIHRhYmxlIGFyZSBvZiBpbmNvbXBhdGlibGUgdHlwZXM6IGlu dDRyYW5nZSBhbmQgZGF0ZXJhbmdlLgorLS0gd29ya3M6IFBFUklPRCBmb3IgYm90aCByZWZlcmVu Y2VkIGFuZCByZWZlcmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAor ICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisg IHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20s IHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklNQVJZ IEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsK K1xkIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgICAgICAgICAgVGFibGUgInB1YmxpYy50ZW1wb3Jh bF9ma19wZXIycGVyIgorICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxs YWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwg bm90IG51bGwgfCAKKyB2YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAg ICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAK KyBwYXJlbnRfaWQgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK1Blcmlv ZHM6CisgICAgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6CisgICAg InRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19wZXIycGVy X3ZhbGlkX2F0X2NoZWNrIiBDSEVDSyAodmFsaWRfZnJvbSA8IHZhbGlkX3RpbCkKK0ZvcmVpZ24t a2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIiBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyKGlk LCBQRVJJT0QgdmFsaWRfYXQpCiAKLURST1AgVEFCTEUgdGVtcG9yYWxfZmszX3JuZzJybmc7Ci1E Uk9QIFRBQkxFIHRlbXBvcmFsX3JuZzM7Ci1EUk9QIFRZUEUgbXlkYXRlcmFuZ2U7Ci0tLQotLS0g RksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcwotLS0KLUNSRUFURSBUQUJMRSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKAorRFJPUCBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVy OworLS0gd2l0aCBtaXNtYXRjaGVkIFBFUklPRCBjb2x1bW5zOgorLS0gKHBhcmVudF9pZCwgUEVS SU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgdmFsaWRfYXQpCistLSBSRUZFUkVOQ0VTIHBh cnQgc2hvdWxkIHNwZWNpZnkgUEVSSU9ECitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBl ciAoCiAgIGlkIGludDRyYW5nZSwKLSAgdmFsaWRfYXQgZGF0ZXJhbmdlLAotICBuYW1lIHRleHQs Ci0gIENPTlNUUkFJTlQgdGVtcG9yYWxfcGFyaXRpb25lZF9ybmdfcGsgUFJJTUFSWSBLRVkgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQotKSBQQVJUSVRJT04gQlkgTElTVCAoaWQpOwot Q1JFQVRFIFRBQkxFIHRwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZP UiBWQUxVRVMgSU4gKCdbMSwyKScsICdbMyw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCkn LCAnWzExLDEyKScsICdbMTMsMTQpJywgJ1sxNSwxNiknLCAnWzE3LDE4KScsICdbMTksMjApJywg J1syMSwyMiknLCAnWzIzLDI0KScpOwotQ1JFQVRFIFRBQkxFIHRwMiBQQVJUSVRJT04gT0YgdGVt cG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMCwxKScsICdbMiwzKScsICdb NCw1KScsICdbNiw3KScsICdbOCw5KScsICdbMTAsMTEpJywgJ1sxMiwxMyknLCAnWzE0LDE1KScs ICdbMTYsMTcpJywgJ1sxOCwxOSknLCAnWzIwLDIxKScsICdbMjIsMjMpJywgJ1syNCwyNSknKTsK LUlOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0LCBuYW1l KSBWQUxVRVMKLSAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAx JyksICdvbmUnKSwKLSAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAz LTAxJyksICdvbmUnKSwKLSAgKCdbMiwzKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEw LTAxLTAxJyksICd0d28nKTsKLUNSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19y bmcycm5nICgKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50 X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRf dGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9hdCkKKyk7CitFUlJPUjogIGZvcmVp Z24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2luZyB0YWJsZSBidXQgbm90IHRoZSBy ZWZlcmVuY2VkIHRhYmxlCistLSAocGFyZW50X2lkLCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQs IHZhbGlkX2F0KQorLS0gYm90aCBzaG91bGQgc3BlY2lmeSBQRVJJT0Q6CitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnBlciAoCiAgIGlkIGludDRyYW5nZSwKLSAgdmFsaWRfYXQgZGF0ZXJh bmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAogICBwYXJlbnRfaWQg aW50NHJhbmdlLAotICBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdf cGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKLSAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKLSAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BhcnRpdGlv bmVkX3JuZyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKLSkgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsK LUNSRUFURSBUQUJMRSB0ZmtwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcsOCkn LCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUsMTYpJywgJ1sxNywxOCknLCAn WzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKLUNSRUFURSBUQUJMRSB0ZmtwMiBQQVJU SVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgn WzAsMSknLCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScsICdb MTIsMTMpJywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywgJ1syMCwyMSknLCAnWzIy LDIzKScsICdbMjQsMjUpJyk7Ci0tLQotLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNpbmcgaW5z ZXJ0cwotLS0KLUlOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKLSAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAw MC0wMS0wMScsICcyMDAwLTAyLTE1JyksICdbMSwyKScpLAotICAoJ1sxLDIpJywgZGF0ZXJhbmdl KCcyMDAxLTAxLTAxJywgJzIwMDItMDEtMDEnKSwgJ1syLDMpJyksCi0gICgnWzIsMyknLCBkYXRl cmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAwMC0wMi0xNScpLCAnWzEsMiknKTsKLS0tIHNob3VsZCBm YWlsOgotSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUwotICAoJ1szLDQpJywgZGF0ZXJhbmdlKCcyMDEwLTAx LTAxJywgJzIwMTAtMDItMTUnKSwgJ1sxLDIpJyk7Ci1FUlJPUjogIGluc2VydCBvciB1cGRhdGUg b24gdGFibGUgInRma3AxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIgotREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZh bGlkX2F0KT0oWzEsMiksIFsyMDEwLTAxLTAxLDIwMTAtMDItMTUpKSBpcyBub3QgcHJlc2VudCBp biB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIi4KLUlOU0VSVCBJTlRPIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMK LSAgKCdbMyw0KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTE1JyksICdbMyw0 KScpOwotRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZmtwMSIgdmlvbGF0ZXMg Zm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19m ayIKLURFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFszLDQpLCBbMjAwMC0wMS0w MSwyMDAwLTAyLTE1KSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BhcnRpdGlv bmVkX3JuZyIuCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCks CisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZh bGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJw ZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9hdCkKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IG11c3Qg dXNlIFBFUklPRCB3aGVuIHJlZmVyZW5jaW5nIGEgcHJpbWFyeSBrZXkgdXNpbmcgV0lUSE9VVCBP VkVSTEFQUworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0Qg dmFsaWRfYXQpCistLSBGT1JFSUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlk X2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisg IFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIg KGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklP RCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQor LS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlH TiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlk X3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJw ZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZh bGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCispOworRVJST1I6ICBmb3JlaWdu IGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZl cmVuY2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VT IChpZCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50 NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3BlciAoaWQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklP RCBvbiB0aGUgcmVmZXJlbmNpbmcgdGFibGUgYnV0IG5vdCB0aGUgcmVmZXJlbmNlZCB0YWJsZQor LS0gKHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9t IGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFs aWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJl bmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gd2l0aCBpbmZlcnJl ZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVy MnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwg ZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3Br IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CitEUk9QIFRBQkxFIHRl bXBvcmFsX2ZrX3BlcjJwZXI7CistLSAocGFyZW50X2lkKSBSRUZFUkVOQ0VTIFtpbXBsaWNpdF0K K0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2 YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdl LAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBX SVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZP UkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CitF UlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlIGJ1 dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlCistLSBzaG91bGQgZmFpbCBiZWNhdXNlIG9mIGR1 cGxpY2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVy MnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwg ZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3Br IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg cGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9EIGlkKQor KTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgcmVmZXJlbmNlZC1jb2x1bW5zIGxpc3QgbXVzdCBub3Qg Y29udGFpbiBkdXBsaWNhdGVzCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFCTEUgdGVt cG9yYWxfcGVyMjsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIyICgKKyAgaWQxIGludDRyYW5n ZSwKKyAgaWQyIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0 ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9wZXIyX3BrIFBSSU1BUlkgS0VZIChpZDEsIGlkMiwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUs CisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVS SU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrIEZPUkVJR04g S0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRl bXBvcmFsX2ZrMl9wZXIycGVyCisgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsy X3BlcjJwZXIiCisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxl IHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tKy0tLS0tLS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3Qg bnVsbCB8IAorIHZhbGlkX2Zyb20gfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8 IAorIHZhbGlkX3RpbCAgfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBh cmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9p ZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxf ZmsyX3BlcjJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJfcGVyMnBlcl92YWxpZF9h dF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwpCitGb3JlaWduLWtleSBjb25z dHJhaW50czoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsiIEZPUkVJR04gS0VZIChwYXJl bnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxf cGVyMihpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorCitEUk9QIFRBQkxFIHRlbXBvcmFsX2Zr Ml9wZXIycGVyOwogLS0KLS0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0t IHRlc3QgQUxURVIgVEFCTEUgQUREIENPTlNUUkFJTlQKIC0tCi1VUERBVEUgdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyBTRVQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEn LCAnMjAwMC0wMi0xMycpIFdIRVJFIGlkID0gJ1syLDMpJzsKLS0tIG1vdmUgYSByb3cgZnJvbSB0 aGUgZmlyc3QgcGFydGl0aW9uIHRvIHRoZSBzZWNvbmQKLVVQREFURSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19ybmcycm5nIFNFVCBpZCA9ICdbNCw1KScgV0hFUkUgaWQgPSAnWzEsMiknOwotLS0g bW92ZSBhIHJvdyBmcm9tIHRoZSBzZWNvbmQgcGFydGl0aW9uIHRvIHRoZSBmaXJzdAotVVBEQVRF IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgU0VUIGlkID0gJ1sxLDIpJyBXSEVSRSBp ZCA9ICdbNCw1KSc7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlciAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50 X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRf dGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9S RUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BlciAoaWQsIFBFUklPRCB2YWxpZF9hdCk7CistLSBUd28gc2NhbGFyIGNvbHVtbnM6CitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZh bGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJhbmdl LAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9wayBQ UklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFC TEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Bl cjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2 YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZh bGlkX2F0KTsKK1xkIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgICAgICAgICAgIFRhYmxlICJwdWJs aWMudGVtcG9yYWxfZmsyX3BlcjJwZXIiCisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxh dGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0t LS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAg ICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2Zyb20gfCBkYXRlICAgICAgfCAgICAgICAg ICAgfCAgICAgICAgICB8IAorIHZhbGlkX3RpbCAgfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAg ICAgICAgICB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAg ICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAor UGVyaW9kczoKKyAgICB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoK KyAgICAidGVtcG9yYWxfZmsyX3BlcjJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJf cGVyMnBlcl92YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwpCitG b3JlaWduLWtleSBjb25zdHJhaW50czoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsiIEZP UkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVS RU5DRVMgdGVtcG9yYWxfcGVyMihpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorCistLSB3aXRo IGluZmVycmVkIFBLIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlLCBhbmQgd3JvbmcgY29sdW1uIHR5 cGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19wZXIycGVyX2ZrLAorICBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQsCisgIEFM VEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgdGltZXN0YW1wLAorICBBTFRFUiBDT0xVTU4gdmFs aWRfdGlsIFRZUEUgdGltZXN0YW1wLAorICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50 X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworRVJST1I6 ICBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIiBjYW5ub3Qg YmUgaW1wbGVtZW50ZWQKK0RFVEFJTDogIEtleSBjb2x1bW5zICJ2YWxpZF9hdCIgb2YgdGhlIHJl ZmVyZW5jaW5nIHRhYmxlIGFuZCAidmFsaWRfYXQiIG9mIHRoZSByZWZlcmVuY2VkIHRhYmxlIGFy ZSBvZiBpbmNvbXBhdGlibGUgdHlwZXM6IHRzcmFuZ2UgYW5kIGRhdGVyYW5nZS4KK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgRFJPUCBQRVJJT0QgRk9SIHZhbGlkX2F0LAorICBB TFRFUiBDT0xVTU4gdmFsaWRfZnJvbSBUWVBFIGRhdGUsCisgIEFMVEVSIENPTFVNTiB2YWxpZF90 aWwgVFlQRSBkYXRlLAorICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKTsKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJlZmVyZW5jZWQgdGFibGU6CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKy0tIHNob3VsZCBmYWlsIGJlY2F1c2Ugb2Yg ZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Bl cjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mazIKKyAgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHBhcmVudF9pZCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9wZXIgKGlkLCBQRVJJT0QgaWQpOworRVJST1I6ICBmb3JlaWduIGtleSByZWZlcmVuY2VkLWNv bHVtbnMgbGlzdCBtdXN0IG5vdCBjb250YWluIGR1cGxpY2F0ZXMKKy0tCistLSB0ZXN0IHdpdGgg cm93cyBhbHJlYWR5CistLQorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4 LTAyLTAzJyksCisgICgnWzEsMiknLCAnMjAxOC0wMy0wMycsICcyMDE4LTA0LTA0JyksCisgICgn WzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1JyksCisgICgnWzMsNCknLCAnMjAxOC0w MS0wMScsIE5VTEwpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mazsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr X3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgn WzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAxJywgJ1sxLDIpJyk7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJw ZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3BlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAg RFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wNC0wMScsICdbMSwyKScpOworLS0g c2hvdWxkIGZhaWw6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKK0VSUk9SOiAgaW5z ZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIgdmlvbGF0ZXMgZm9y ZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnBlcl9mayIKK0RFVEFJTDogIEtl eSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMiwyMDE4LTA0LTAxKSkg aXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCistLSBva2F5IGFnYWluOgor REVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr X3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JF SUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcGVyOworLS0KKy0tIHRlc3QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYKKy0tCitTRUxFQ1QgcGdf Z2V0X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9 ICd0ZW1wb3JhbF9ma19wZXIycGVyX2ZrJzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHBnX2dldF9jb25zdHJhaW50ZGVmICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcihpZCwgUEVSSU9EIHZh bGlkX2F0KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2luZyBpbnNlcnRzCist LQorSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDIt MDEnLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEsMiknKTsKK0VSUk9SOiAgaW5z ZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIgdmlvbGF0ZXMgZm9y ZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnBlcl9mayIKK0RFVEFJTDogIEtl eSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMiwyMDE4LTA0LTAxKSkg aXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCistLSBub3cgaXQgc2hvdWxk IHdvcms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDItMDMnLCAnMjAxOC0wMy0wMycpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEs MiknKTsKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0tCistLSBzbGlkZSB0 aGUgZWRnZSBhY3Jvc3MgYSByZWZlcmVuY2VkIHRyYW5zaXRpb246CitVUERBVEUgdGVtcG9yYWxf ZmtfcGVyMnBlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAyJywgdmFsaWRfdGlsID0gJzIw MTgtMDItMjAnIFdIRVJFIGlkID0gJ1sxLDIpJzsKKy0tIHNob3VsZCBmYWlsOgorVVBEQVRFIHRl bXBvcmFsX2ZrX3BlcjJwZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMicsIHZhbGlkX3Rp bCA9ICcyMDE4LTA1LTAxJyBXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIGluc2VydCBvciB1 cGRhdGUgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5 IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVu dF9pZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDIsMjAxOC0wNS0wMSkpIGlzIG5vdCBw cmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9wZXIiLgorVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJw ZXIgU0VUIHBhcmVudF9pZCA9ICdbOCw5KScgV0hFUkUgaWQgPSAnWzEsMiknOworRVJST1I6ICBp bnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIiB2aW9sYXRlcyBm b3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIgorREVUQUlMOiAg S2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzgsOSksIFsyMDE4LTAxLTAyLDIwMTgtMDItMjAp KSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGVyIi4KKy0tIEFMVEVSIEZLIERF RkVSUkFCTEUKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAgICgnWzUsNiknLCAnMjAxOC0wMS0wMScsICcyMDE4 LTAyLTAxJyksCisgICAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywgJzIwMTgtMDMtMDEnKTsKKyAg SU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0w MS0xMCcsICdbNSw2KScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgICAg QUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgICAgREVGRVJSQUJMRSBJ TklUSUFMTFkgREVGRVJSRUQ7CisgIERFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9 ICdbNSw2KSc7IC0tc2hvdWxkIG5vdCBmYWlsIHlldC4KK0NPTU1JVDsgLS0gc2hvdWxkIGZhaWwg aGVyZS4KK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcGVyIiB2 aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIiBv biB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0 KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZy b20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiLgorLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNl ZCB1cGRhdGVzIE5PIEFDVElPTgorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxf ZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgRFJPUCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19w ZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3BlcgorICBPTiBVUERBVEUgTk8gQUNUSU9OOworLS0gYSBQSyB1cGRhdGUgdGhhdCBzdWNjZWVk cyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s1LDYpJywg JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFs aWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnIFdIRVJFIGlk ID0gJ1s1LDYpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhl IG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNSw2KSc7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1s1LDYpJywg JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpLAorICAoJ1s1LDYpJywgJzIwMTgtMDItMDEnLCAn MjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMyw0KScsICcyMDE4LTAx LTA1JywgJzIwMTgtMDEtMTAnLCAnWzUsNiknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZh bGlkX2Zyb20gPSAnMjAxNi0wMi0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAzLTAxJworV0hFUkUg aWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnIEFORCB2YWxpZF90aWwg PSAnMjAxOC0wMy0wMSc7CistLSBBIFBLIHVwZGF0ZSBzbGlkaW5nIHRoZSBlZGdlIGJldHdlZW4g dHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDE4 LTAyLTAxJyksCisgICgnWzYsNyknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBw YXJlbnRfaWQpIFZBTFVFUworICAoJ1s0LDUpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0xNScs ICdbNiw3KScpOworVVBEQVRFIHRlbXBvcmFsX3BlcgorU0VUIHZhbGlkX2Zyb20gPSBDQVNFIFdI RU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBUSEVOICcyMDE4LTAxLTAxJworICAgICAgICAg ICAgICAgICAgICAgIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBUSEVOICcyMDE4LTAx LTA1JyBFTkQ6OmRhdGUsCisgICAgdmFsaWRfdGlsID0gIENBU0UgV0hFTiB2YWxpZF9mcm9tID0g JzIwMTgtMDEtMDEnIFRIRU4gJzIwMTgtMDEtMDUnCisgICAgICAgICAgICAgICAgICAgICAgV0hF TiB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnIFRIRU4gJzIwMTgtMDMtMDEnIEVORDo6ZGF0ZQor V0hFUkUgaWQgPSAnWzYsNyknOworLS0gYSBQSyB1cGRhdGUgc2hyaW5raW5nIHRoZSByZWZlcmVu Y2VkIHJhbmdlIGJ1dCBzdGlsbCB2YWxpZDoKKy0tIFRoZXJlIGFyZSB0d28gcmVmZXJlbmNlczog b25lIGZ1bGZpbGxlZCBieSB0aGUgZmlyc3QgcGsgcm93LAorLS0gdGhlIG90aGVyIGZ1bGZpbGxl ZCBieSBib3RoIHBrIHJvd3MgY29tYmluZWQuCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1sxLDIpJywgJzIwMTgtMDEtMDEn LCAnMjAxOC0wMy0wMScpLAorICAoJ1sxLDIpJywgJzIwMTgtMDMtMDEnLCAnMjAxOC0wNi0wMScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTE1JywgJzIwMTgt MDItMDEnLCAnWzEsMiknKSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDUtMDEn LCAnWzEsMiknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0w MS0xNScsIHZhbGlkX3RpbCA9ICcyMDE4LTAzLTAxJworV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSBhIFBLIHVwZGF0ZSBncm93aW5nIHRo ZSByZWZlcmVuY2VkIHJhbmdlIGlzIGZpbmU6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxp ZF9mcm9tID0gJzIwMTgtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxOC0wMy0wMScKK1dIRVJFIGlk ID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMjUnOjpkYXRlOworLS0gYSBQSyB1 cGRhdGUgc2hyaW5raW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGFuZCBjaGFuZ2luZyB0aGUgaWQg aW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQg PSAnWzIsMyknLCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxpZF90aWwgPSAnMjAxOC0w My0wMScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpk YXRlOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZp b2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9u IHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQp PShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMy0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJv bSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIuCistLSBhIFBLIHVwZGF0ZSBjaGFuZ2luZyBv bmx5IHRoZSBpZCBpbnZhbGlkYXRlcyB0aGUgd2hvbGUgcmFuZ2U6CitVUERBVEUgdGVtcG9yYWxf cGVyIFNFVCBpZCA9ICdbMiwzKScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTgtMDEtMTUnOjpkYXRlOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0 ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2Zr X3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgorREVUQUlMOiAgS2V5 IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMy0wMSkpIGlzIHN0aWxs IHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIuCistLSBhIFBLIHVw ZGF0ZSB0aGF0IGxvc2VzIHRpbWUgZnJvbSBib3RoIGVuZHMsIGJ1dCBpcyBzdGlsbCB2YWxpZDoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTCisgICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQpIFZBTFVFUworICAoJ1s1LDYpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0wMScsICdbMiwz KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1Jywg dmFsaWRfdGlsID0gJzIwMTgtMDItMTUnCitXSEVSRSBpZCA9ICdbMiwzKSc7CistLSBhIFBLIHVw ZGF0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZDoKK1VQREFURSB0ZW1w b3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2 LTAyLTAxJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEn IEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUg b24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAi dGVtcG9yYWxfZmtfcGVyMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiCitE RVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAx KSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIi4K Ky0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkLCBi dXQgbm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Bl cjJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgICBE RUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQg dmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnCisgIFdI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAxOC0wMi0wMScpOworQ09NTUlUOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxl ICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFs X2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgorREVUQUlMOiAg S2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0 aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIuCistLSBjaGFu Z2luZyB0aGUgc2NhbGFyIHBhcnQgZmFpbHM6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9 ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAx JyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRl IG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQg InRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgor REVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0w MSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIu CistLSBjaGFuZ2luZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorVVBEQVRFIHRlbXBv cmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wMicgVE8gJzIw MTgtMDEtMDMnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBjaGFu Z2luZyBqdXN0IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9wZXIKK0ZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDUnIFRPICcyMDE4LTAxLTEwJworU0VUIGlkID0g J1s3LDgpJworV0hFUkUgaWQgPSAnWzUsNiknOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9u IHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRl bXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgorREVU QUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSkp IGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIuCitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAg CistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbNSw2KSB8IDIwMTYtMDItMDEg fCAyMDE2LTAzLTAxCisgWzUsNikgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wMgorIFs1LDYpIHwg MjAxOC0wMS0wMyB8IDIwMTgtMDItMDEKKyBbNyw4KSB8IDIwMTgtMDEtMDIgfCAyMDE4LTAxLTAz CisoNCByb3dzKQorCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQg aW4gKCdbMyw0KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tCisgWzMsNCkgfCAyMDE4LTAxLTA1IHwgMjAxOC0wMS0xMCB8IFs1LDYp CisoMSByb3cpCisKKy0tIHRoZW4gZGVsZXRlIHRoZSBvYmplY3RpbmcgRksgcmVjb3JkIGFuZCB0 aGUgc2FtZSBQSyB1cGRhdGUgc3VjY2VlZHM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19wZXIy cGVyIFdIRVJFIGlkID0gJ1szLDQpJzsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zy b20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAyLTAxJworV0hFUkUgaWQgPSAn WzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAx OC0wMi0wMSc7CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgUkVTVFJJQ1QKKy0t CitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3BlcjJwZXI7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIy cGVyX2ZrOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklP RCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyAgT04gVVBEQVRFIFJFU1RS SUNUOworRVJST1I6ICB1bnN1cHBvcnRlZCBPTiBVUERBVEUgYWN0aW9uIGZvciBmb3JlaWduIGtl eSBjb25zdHJhaW50IHVzaW5nIFBFUklPRAorLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxl dGVzIE5PIEFDVElPTgorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVy MnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworLS0gYSBQSyBkZWxldGUgdGhh dCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0IHJlZmVyZW5jZWQ6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgZGVsZXRlIHRoYXQgc3VjY2VlZHMg ZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5n ZSBpc24ndDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTCisgICgnWzUsNiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisg ICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0xMCcsICdbNSw2KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9 ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnOworLS0gYSBQSyBkZWxl dGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQ6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEt MDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxl dGUgb24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWlu dCAidGVtcG9yYWxfZmtfcGVyMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIi CitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAy LTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVy Ii4KKy0tIGEgUEsgZGVsZXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2Vk LCBidXQgbm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr X3BlcjJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAg ICBERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgREVMRVRFIEZST00gdGVtcG9yYWxf cGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9u IHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRl bXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgorREVU QUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkp IGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIuCist LSBkZWxldGluZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorREVMRVRFIEZST00gdGVt cG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAn MjAxOC0wMS0wMycKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0 IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAxOC0wMS0xMCcKK1dIRVJFIGlkID0gJ1s1LDYpJzsK K0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRl cyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIiBvbiB0YWJs ZSAidGVtcG9yYWxfZmtfcGVyMnBlciIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUs NiksIFsyMDE4LTAxLTAzLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFi bGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIgV0hF UkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQg ICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tCisgWzUsNikgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wMgorIFs1LDYpIHwgMjAxOC0w MS0wMyB8IDIwMTgtMDItMDEKKygyIHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cGVyMnBlciBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBp ZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8IDIwMTgtMDEtMDUgfCAy MDE4LTAxLTEwIHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGlu ZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9N IHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVt cG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAx JyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNl ZCBkZWxldGVzIFJFU1RSSUNUCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9m a19wZXIycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBEUk9QIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Bl cjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdO IEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cGVyCisgIE9OIERFTEVURSBSRVNUUklDVDsKK0VSUk9SOiAgdW5zdXBwb3J0ZWQgT04gREVMRVRF IGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKKy0tCistLSBw ZXIycGVyIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCistLQorLS0gVE9DOgorLS0gcmVm ZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCist LSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQg TlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVuY2VkIGRl bGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0d28gc2Nh bGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xz KQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLSBy ZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQpCist LSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tIHJl ZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJl bmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1 YnNldCkKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFCistLQorVFJV TkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJw ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwx MDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENB U0NBREU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEn IFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5 LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs3LDgpCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIw MjEtMDEtMDEgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwg cGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzcsOCkKKyBbMTAw LDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs3LDgpCisgWzEwMCwxMDEpIHwgMjAy MC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNyw4KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdb OCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVu dF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs5LDEwKQorIFsyMDAsMjAx KSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxf cGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBh cmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpCisgWzEwMCwx MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KQorKDIgcm93cykKKworLS0gbm9u LUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworIGlkIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCB8 IHBhcmVudF9pZCAKKy0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCiso MCByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSkn LCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMjAtMDEtMDEn LCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9w ZXIgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5 KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwK Ky0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3BlcjJwZXI7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2 LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMg KCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVM TDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3BlciBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEp IHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEt MDEgfCAyMDIwLTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEg fCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxf cGVyIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lk IAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsx MDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAxOS0w MS0wMSB8IDIwMjAtMDEtMDEgfCAKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0w MSB8IAorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIw LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBd JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFs X3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBX SEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAg fCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAx IHwgMjAyMC0wMS0wMSB8IAorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwg WzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQg TlVMTAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBX SEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hF UkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg dmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8 IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAx IHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KQorKDMgcm93 cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUg aWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlk ID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlk X2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5 LTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAKKyBbMTAw LDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IAorKDMgcm93cykKKworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAy MC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWws IHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAs MjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0w MSB8IDIwMjEtMDEtMDEgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJl bmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1w b3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcp JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQgU0VUIERF RkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9m aywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICAgIEZPUkVJR04g S0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3BlcgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9 ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19w ZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAg IGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIw MTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwg MjAyMC0wMS0wMSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFs X3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9p ZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBb MTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFstMSwwKQorIFsxMDAsMTAxKSB8 IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0w MSB8IDIwMjEtMDEtMDEgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSkn KTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgs OSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIw MCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCAy MDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBG SyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9w ZXIsIHRlbXBvcmFsX2ZrX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwtMV0nLCBudWxsLCBudWxsKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBX SEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hF UkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg dmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8 IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAx IHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KQor KDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEg fCAyMDE5LTAxLTAxIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEt MDEgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFstMSww KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4 LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywg JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpk YXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAs MjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2 YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwg Wy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KQorKDIg cm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBz Y2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVy MnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJf cGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAg ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQor ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQ REFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9y YWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAy MC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBw YXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEg fCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0w MSB8IDIwMjAtMDEtMDEgfCBbNyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDIwLTAx LTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9u LUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t CisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNyw4KSAgICAgIHwgWzYs NykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs3LDgpICAgICAgfCBb Niw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzcsOCkgICAgICB8 IFs2LDcpCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFs X3BlcjIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJw ZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgWzksMTApICAg ICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAg ICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRl cyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwg dGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlk MiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxV RVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2 LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFs X3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAt MDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9w ZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAg IGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9p ZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcp ICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYs NykgICAgICB8IFs2LDcpCisoMiByb3dzKQorCistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgaWQgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tCisoMCByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVt cG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0g J1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zy b20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAw LDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDEg cm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBz Y2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVy MnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJf cGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAg ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQor ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBV UERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1w b3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcy MDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8 IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0w MSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAx LTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAx IHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQ TyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBp ZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxp ZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisg WzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCAgICAgICAgICAgIHwgCisgWzEw MCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgCisgWzEwMCwx MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAgICAgICAgICAgIHwgCisoMyByb3dzKQor CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdb OSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6 ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIw MCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAx KSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsyMDAsMjAxKSB8 IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIg Y29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVyMnBlcjsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBv biBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEp IHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3Mp CisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBp ZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxp ZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisg WzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCAgICAgICAgICAgIHwgCisgWzEw MCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgCisgWzEwMCwx MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAgICAgICAgICAgIHwgCisoMyByb3dzKQor CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBp ZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAx IHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCAKKyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwg MjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxM IHN1YnNldCkKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVyMnBl cjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGZhaWxzIGJl Y2F1c2UgeW91IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9m aywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAgICBGT1JFSUdO IEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVS RU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAodmFsaWRfYXQpIE9O IFVQREFURSBTRVQgTlVMTDsKK0VSUk9SOiAgY29sdW1uICJ2YWxpZF9hdCIgcmVmZXJlbmNlZCBp biBPTiBERUxFVEUgU0VUIGFjdGlvbiBjYW5ub3QgYmUgUEVSSU9ECistLSBvazoKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJf cGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAg ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQor ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAocGFy ZW50X2lkMSkgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8 IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0w MSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAx LTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAt MDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBu b24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgICAgICAgICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgWzYsNykKKyBbMTAw LDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8ICAgICAgICAgICAgfCBbNiw3KQorKDMg cm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb OCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVu dF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIg V0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRf dGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAx OC0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgWzgsOSkKKyBbMjAwLDIwMSkgfCAy MDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFy IGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCBudWxsLCBudWxsKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBh cmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr Ml9wZXIycGVyCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFd JywKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDIgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBh cmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIK KyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVm dG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdb Nyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRf aWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5 LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIw MjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8 IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8g dXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdb Nyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3Bl cjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAg aWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lk MiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWy0xLDAp ICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0x LDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwg Wy0xLDApICAgICB8IFstMSwwKQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVu Y2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIw MjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAn MjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAs MjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQ REFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJywgaWQyID0gJ1s5LDEwKScgV0hF UkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGls ICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0w MS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAy MC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0t CistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBj b2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9wZXIycGVyOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRl czoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwg IHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAx LTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTkt MDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIw MjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCist LSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAn WzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJv bSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsx MDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQor IFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSww KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWws IHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFs X3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpk YXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAw LDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwg dmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEp IHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzIwMCwy MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJv d3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdv IHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorVFJVTkNBVEUgdGVtcG9yYWxf cGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChp ZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s2LDcp JywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdb MTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7 CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnBlcgorICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBT RVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVy MnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAgICBG T1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAodmFs aWRfYXQpIE9OIFVQREFURSBTRVQgREVGQVVMVDsKK0VSUk9SOiAgY29sdW1uICJ2YWxpZF9hdCIg cmVmZXJlbmNlZCBpbiBPTiBERUxFVEUgU0VUIGFjdGlvbiBjYW5ub3QgYmUgUEVSSU9ECistLSBv azoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIEFMVEVSIENPTFVNTiBwYXJl bnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrMl9wZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9m aworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBERUZB VUxUIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2 YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkg fCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAx KSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJv d3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t CisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbLTEsMCkgICAgIHwgWzYs NykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBb Niw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWy0xLDApICAgICB8 IFs2LDcpCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s4LDkpJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBX SEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90 aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4 LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IDIw MjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQorCist LQorLS0gdGVzdCBGT1JFSUdOIEtFWSwgcmFuZ2UgcmVmZXJlbmNlcyBQRVJJT0QKKy0tCistLSB0 ZXN0IHRhYmxlIHNldHVwCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlciBDQVNDQURFOworTk9USUNF OiAgZHJvcCBjYXNjYWRlcyB0byBjb25zdHJhaW50IHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgb24g dGFibGUgdGVtcG9yYWxfZmtfcGVyMnBlcgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlciAoCisg IGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAg UEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX3BlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsKKyAgUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKKy0tIENhbid0IGNyZWF0 ZSBhIEZLIHdpdGggYSBtaXNtYXRjaGVkIHJhbmdlIHR5cGUKK0NSRUFURSBUQUJMRSB0ZW1wb3Jh bF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBpbnQ0cmFuZ2UsCisg IHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9w ayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9EIHZhbGlk X2F0KQorKTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5n MnBlcl9mayIgY2Fubm90IGJlIGltcGxlbWVudGVkCitERVRBSUw6ICBLZXkgY29sdW1ucyAidmFs aWRfYXQiIG9mIHRoZSByZWZlcmVuY2luZyB0YWJsZSBhbmQgInZhbGlkX2F0IiBvZiB0aGUgcmVm ZXJlbmNlZCB0YWJsZSBhcmUgb2YgaW5jb21wYXRpYmxlIHR5cGVzOiBpbnQ0cmFuZ2UgYW5kIGRh dGVyYW5nZS4KKy0tIHdvcmtzOiBQRVJJT0QgZm9yIHJlZmVyZW5jZWQsIHJhbmdlIGZvciByZWZl cmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFu Z2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworXGQgdGVtcG9yYWxfZmtfcm5n MnBlcgorICAgICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsX2ZrX3JuZzJwZXIiCisgIENv bHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBp ZCAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2F0 ICB8IGRhdGVyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgcGFyZW50X2lkIHwgaW50 NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK0luZGV4ZXM6CisgICAgInRlbXBvcmFs X2ZrX3JuZzJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19ybmcycGVyX2Zr IiBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtf cm5nMnBlcjsKKy0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29sdW1uczoKKy0tIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlkX2F0KQorLS0gUkVGRVJF TkNFUyBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2Zr X3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFy ZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9hdCkKKyk7CitF UlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2luZyB0YWJsZSBi dXQgbm90IHRoZSByZWZlcmVuY2VkIHRhYmxlCistLSAocGFyZW50X2lkLCB2YWxpZF9hdCkgUkVG RVJFTkNFUyAoaWQsIHZhbGlkX2F0KQorLS0gYm90aCBzaG91bGQgc3BlY2lmeSBQRVJJT0Q6CitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFs aWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSBtdXN0IHVzZSBQRVJJT0Qgd2hlbiBy ZWZlcmVuY2luZyBhIHByaW1hcnkga2V5IHVzaW5nIFdJVEhPVVQgT1ZFUkxBUFMKKy0tIChwYXJl bnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorLS0gRk9S RUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3Jh bF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisg IHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9w ayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisp OworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJs ZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQp IFJFRkVSRU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lm eSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJh bmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9wZXIKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVu Y2VkIHRhYmxlIGJ1dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlCistLSAocGFyZW50X2lkLCBQ RVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkKQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2Zr X3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFy ZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkKQorKTsKK0VSUk9SOiAgZm9y ZWlnbiBrZXkgdXNlcyBQRVJJT0Qgb24gdGhlIHJlZmVyZW5jaW5nIHRhYmxlIGJ1dCBub3QgdGhl IHJlZmVyZW5jZWQgdGFibGUKKy0tIChwYXJlbnRfaWQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0Qg dmFsaWRfYXQpCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2Zr IEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlk LCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBv biB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0g d2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUgdGVt cG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdl LAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJw ZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorKTsKK0RST1AgVEFC TEUgdGVtcG9yYWxfZmtfcm5nMnBlcjsKKy0tIChwYXJlbnRfaWQpIFJFRkVSRU5DRVMgW2ltcGxp Y2l0XQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2Us CisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JF SUdOIEtFWSAocGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCispOworRVJS T1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQg bm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gc2hvdWxkIGZhaWwgYmVjYXVzZSBvZiBkdXBs aWNhdGUgcmVmZXJlbmNlZCBjb2x1bW5zOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lk IGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkg S0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9y YWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgcGFyZW50X2lk KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9EIGlkKQorKTsKK0VSUk9S OiAgZm9yZWlnbiBrZXkgcmVmZXJlbmNlZC1jb2x1bW5zIGxpc3QgbXVzdCBub3QgY29udGFpbiBk dXBsaWNhdGVzCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFCTEUgdGVtcG9yYWxfcGVy MiBDQVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0byBjb25zdHJhaW50IHRlbXBvcmFs X2ZrMl9wZXIycGVyX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2ZrMl9wZXIycGVyCitDUkVBVEUgVEFC TEUgdGVtcG9yYWxfcGVyMiAoCisgIGlkMSBpbnQ0cmFuZ2UsCisgIGlkMiBpbnQ0cmFuZ2UsCisg IHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyMl9w ayBQUklNQVJZIEtFWSAoaWQxLCBpZDIsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOwor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2 YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQy IGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9wayBQUklNQVJZ IEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQ RVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwg UEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgICAgICAgICAg IFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3JuZzJwZXIiCisgICBDb2x1bW4gICB8ICAgVHlw ZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAgICAgfCBp bnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2F0ICAgfCBkYXRlcmFu Z2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAg ICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAg ICAgfCAgICAgICAgICB8IAorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3JuZzJwZXJfcGsi IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0ZvcmVpZ24ta2V5 IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJfcm5nMnBlcl9mayIgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXIyKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisKK0RST1AgVEFCTEUgdGVtcG9y YWxfZmsyX3JuZzJwZXI7CistLQorLS0gdGVzdCBBTFRFUiBUQUJMRSBBREQgQ09OU1RSQUlOVAor LS0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBREQg Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJ T0QgdmFsaWRfYXQpOworLS0gVHdvIHNjYWxhciBjb2x1bW5zOgorQ1JFQVRFIFRBQkxFIHRlbXBv cmFsX2ZrMl9ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2Us CisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIK KyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsKK1xkIHRlbXBvcmFsX2Zr Ml9ybmcycGVyCisgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3JuZzJwZXIi CisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVs dCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAor IHZhbGlkX2F0ICAgfCBkYXRlcmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHBhcmVu dF9pZDEgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIg fCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorSW5kZXhlczoKKyAgICAidGVt cG9yYWxfZmsyX3JuZzJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJfcm5n MnBlcl9mayIgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxp ZF9hdCkgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRfYXQp CisKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJlZmVyZW5jZWQgdGFibGUsIGFuZCB3cm9u ZyBjb2x1bW4gdHlwZToKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgRFJPUCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmssCisgIEFMVEVSIENPTFVNTiB2YWxpZF9h dCBUWVBFIHRzcmFuZ2UgVVNJTkcgdHNyYW5nZShsb3dlcih2YWxpZF9hdCksIHVwcGVyKHZhbGlk X2F0KSk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKK0VSUk9SOiAgZm9yZWlnbiBr ZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgY2Fubm90IGJlIGltcGxlbWVu dGVkCitERVRBSUw6ICBLZXkgY29sdW1ucyAidmFsaWRfYXQiIG9mIHRoZSByZWZlcmVuY2luZyB0 YWJsZSBhbmQgInZhbGlkX2F0IiBvZiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBhcmUgb2YgaW5jb21w YXRpYmxlIHR5cGVzOiB0c3JhbmdlIGFuZCBkYXRlcmFuZ2UuCitBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9ma19ybmcycGVyCisgIEFMVEVSIENPTFVNTiB2YWxpZF9hdCBUWVBFIGRhdGVyYW5nZSBVU0lO RyBkYXRlcmFuZ2UobG93ZXIodmFsaWRfYXQpOjpkYXRlLCB1cHBlcih2YWxpZF9hdCk6OmRhdGUp OworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5n MnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcGVyOworLS0gc2hvdWxkIGZhaWwgYmVjYXVzZSBvZiBkdXBsaWNh dGUgcmVmZXJlbmNlZCBjb2x1bW5zOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgor ICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrMgorICBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgcGFyZW50X2lkKQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAo aWQsIFBFUklPRCBpZCk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHJlZmVyZW5jZWQtY29sdW1ucyBs aXN0IG11c3Qgbm90IGNvbnRhaW4gZHVwbGljYXRlcworLS0KKy0tIHRlc3Qgd2l0aCByb3dzIGFs cmVhZHkKKy0tCitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyOworREVMRVRFIEZST00g dGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDItMDMn KSwKKyAgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKSwKKyAgKCdbMiwzKScs ICcyMDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKSwKKyAgKCdbMyw0KScsICcyMDE4LTAxLTAxJywg TlVMTCk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIERST1AgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBl ciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIpJywgJ1syMDE4LTAxLTAy LDIwMTgtMDItMDEpJywgJ1sxLDIpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVy CisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsK K0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3JuZzJwZXJfZms7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMyknLCAnWzIwMTgtMDEtMDIsMjAxOC0w NC0wMSknLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorQUxURVIgVEFCTEUgdGVtcG9yYWxf Zmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXI7CitFUlJPUjogIGluc2VydCBvciB1cGRhdGUgb24gdGFibGUgInRlbXBvcmFsX2Zr X3JuZzJwZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3Ju ZzJwZXJfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVudF9pZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIw MTgtMDEtMDIsMjAxOC0wNC0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9w ZXIiLgorLS0gb2theSBhZ2FpbjoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKy0tCistLSB0ZXN0IHBnX2dldF9jb25zdHJh aW50ZGVmCistLQorU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVmKG9pZCkgRlJPTSBwZ19jb25z dHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfZmtfcm5nMnBlcl9mayc7CisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBwZ19nZXRfY29uc3RyYWludGRlZiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor IEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXIoaWQsIFBFUklPRCB2YWxpZF9hdCkKKygxIHJvdykKKworLS0KKy0tIHRlc3QgRksg cmVmZXJlbmNpbmcgaW5zZXJ0cworLS0KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMSwyKScsICdbMjAxOC0wMS0wMiwy MDE4LTAyLTAxKScsICdbMSwyKScpOworLS0gc2hvdWxkIGZhaWw6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMykn LCAnWzIwMTgtMDEtMDIsMjAxOC0wNC0wMSknLCAnWzEsMiknKTsKK0VSUk9SOiAgaW5zZXJ0IG9y IHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIgdmlvbGF0ZXMgZm9yZWlnbiBr ZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIKK0RFVEFJTDogIEtleSAocGFy ZW50X2lkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMiwyMDE4LTA0LTAxKSkgaXMgbm90 IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCistLSBub3cgaXQgc2hvdWxkIHdvcms6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1sxLDIpJywgJzIwMTgtMDItMDMnLCAnMjAxOC0wMy0wMycpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sy LDMpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDQtMDEpJywgJ1sxLDIpJyk7CistLQorLS0gdGVzdCBG SyByZWZlcmVuY2luZyB1cGRhdGVzCistLQorLS0gc2xpZGUgdGhlIGVkZ2UgYWNyb3NzIGEgcmVm ZXJlbmNlZCB0cmFuc2l0aW9uOgorVVBEQVRFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgU0VUIHZhbGlk X2F0ID0gJ1syMDE4LTAxLTAyLDIwMTgtMDItMjApJyBXSEVSRSBpZCA9ICdbMSwyKSc7CistLSBz aG91bGQgZmFpbDoKK1VQREFURSB0ZW1wb3JhbF9ma19ybmcycGVyIFNFVCB2YWxpZF9hdCA9ICdb MjAxOC0wMS0wMiwyMDE4LTA1LTAxKScgV0hFUkUgaWQgPSAnWzEsMiknOworRVJST1I6ICBpbnNl cnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIiB2aW9sYXRlcyBmb3Jl aWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIgorREVUQUlMOiAgS2V5 IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAyLDIwMTgtMDUtMDEpKSBp cyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGVyIi4KK1VQREFURSB0ZW1wb3JhbF9m a19ybmcycGVyIFNFVCBwYXJlbnRfaWQgPSAnWzgsOSknIFdIRVJFIGlkID0gJ1sxLDIpJzsKK0VS Uk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIgdmlv bGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIKK0RF VEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFs4LDkpLCBbMjAxOC0wMS0wMiwyMDE4 LTAyLTIwKSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCistLSBBTFRF UiBGSyBERUZFUlJBQkxFCitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgICAoJ1s1LDYpJywgJzIwMTgtMDEtMDEn LCAnMjAxOC0wMi0wMScpLAorICAgICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAx Jyk7CisgIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJ1syMDE4LTAxLTA1LDIwMTgtMDEtMTApJywg J1s1LDYpJyk7CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgICBBTFRFUiBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxM WSBERUZFUlJFRDsKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYp JzsgLS1zaG91bGQgbm90IGZhaWwgeWV0LgorQ09NTUlUOyAtLSBzaG91bGQgZmFpbCBoZXJlLgor RVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVz IGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsiIG9uIHRhYmxl ICJ0ZW1wb3JhbF9ma19ybmcycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2 KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJs ZSAidGVtcG9yYWxfZmtfcm5nMnBlciIuCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgTk8gQUNUSU9OCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcy cGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIK KyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisg IE9OIFVQREFURSBOTyBBQ1RJT047CistLSBhIFBLIHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGJlY2F1 c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzUsNiknLCAnMjAxOC0w MS0wMScsICcyMDE4LTAyLTAxJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9t ID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMi0wMScgV0hFUkUgaWQgPSAnWzUs NiknOworLS0gYSBQSyB1cGRhdGUgdGhhdCBzdWNjZWVkcyBldmVuIHRob3VnaCB0aGUgbnVtZXJp YyBpZCBpcyByZWZlcmVuY2VkIGJlY2F1c2UgdGhlIHJhbmdlIGlzbid0OgorREVMRVRFIEZST00g dGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzUsNiknLCAnMjAxOC0w MS0wMScsICcyMDE4LTAyLTAxJyksCisgICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAz LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZCkgVkFMVUVTCisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDUsMjAxOC0wMS0xMCknLCAn WzUsNiknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMi0w MScsIHZhbGlkX3RpbCA9ICcyMDE2LTAzLTAxJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxp ZF9mcm9tID0gJzIwMTgtMDItMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMy0wMSc7CistLSBB IFBLIHVwZGF0ZSBzbGlkaW5nIHRoZSBlZGdlIGJldHdlZW4gdHdvIHJlZmVyZW5jZWQgcm93czoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTCisgICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisgICgnWzYsNykn LCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19y bmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzQsNSknLCAnWzIw MTgtMDEtMTUsMjAxOC0wMi0xNSknLCAnWzYsNyknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIKK1NF VCB2YWxpZF9mcm9tID0gQ0FTRSBXSEVOIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMScgVEhFTiAn MjAxOC0wMS0wMScKKyAgICAgICAgICAgICAgICAgICAgICBXSEVOIHZhbGlkX2Zyb20gPSAnMjAx OC0wMi0wMScgVEhFTiAnMjAxOC0wMS0wNScgRU5EOjpkYXRlLAorICAgIHZhbGlkX3RpbCA9ICBD QVNFIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBUSEVOICcyMDE4LTAxLTA1JworICAg ICAgICAgICAgICAgICAgICAgIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBUSEVOICcy MDE4LTAzLTAxJyBFTkQ6OmRhdGUKK1dIRVJFIGlkID0gJ1s2LDcpJzsKKy0tIGEgUEsgdXBkYXRl IHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBidXQgc3RpbGwgdmFsaWQ6CistLSBUaGVy ZSBhcmUgdHdvIHJlZmVyZW5jZXM6IG9uZSBmdWxmaWxsZWQgYnkgdGhlIGZpcnN0IHBrIHJvdywK Ky0tIHRoZSBvdGhlciBmdWxmaWxsZWQgYnkgYm90aCBwayByb3dzIGNvbWJpbmVkLgorSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAg KCdbMSwyKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDMtMDEnKSwKKyAgKCdbMSwyKScsICcyMDE4 LTAzLTAxJywgJzIwMTgtMDYtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAxOC0wMS0x NSwyMDE4LTAyLTAxKScsICdbMSwyKScpLAorICAoJ1syLDMpJywgJ1syMDE4LTAxLTE1LDIwMTgt MDUtMDEpJywgJ1sxLDIpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0g JzIwMTgtMDEtMTUnLCB2YWxpZF90aWwgPSAnMjAxOC0wMy0wMScKK1dIRVJFIGlkID0gJ1sxLDIp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgZ3Jv d2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBpcyBmaW5lOgorVVBEQVRFIHRlbXBvcmFsX3BlciBT RVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnCitX SEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTI1Jzo6ZGF0ZTsKKy0t IGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBhbmQgY2hhbmdpbmcg dGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9sZSByYW5nZToKK1VQREFURSB0ZW1wb3JhbF9wZXIg U0VUIGlkID0gJ1syLDMpJywgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1JywgdmFsaWRfdGlsID0g JzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAx LTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxf cGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19ybmcycGVy X2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIKK0RFVEFJTDogIEtleSAoaWQsIHZh bGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMtMDEpKSBpcyBzdGlsbCByZWZlcmVu Y2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiLgorLS0gYSBQSyB1cGRhdGUgY2hh bmdpbmcgb25seSB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBEQVRFIHRl bXBvcmFsX3BlciBTRVQgaWQgPSAnWzIsMyknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlk X2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0 YWJsZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1w b3JhbF9ma19ybmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIKK0RFVEFJ TDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMtMDEpKSBp cyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiLgorLS0g YSBQSyB1cGRhdGUgdGhhdCBsb3NlcyB0aW1lIGZyb20gYm90aCBlbmRzLCBidXQgaXMgc3RpbGwg dmFsaWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUworICAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMy0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZB TFVFUworICAoJ1s1LDYpJywgJ1syMDE4LTAxLTE1LDIwMTgtMDItMDEpJywgJ1syLDMpJyk7CitV UERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxpZF90 aWwgPSAnMjAxOC0wMi0xNScKK1dIRVJFIGlkID0gJ1syLDMpJzsKKy0tIGEgUEsgdXBkYXRlIHRo YXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkOgorVVBEQVRFIHRlbXBvcmFsX3Bl ciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEn CitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMScgQU5EIHZh bGlkX3RpbCA9ICcyMDE4LTAyLTAxJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJs ZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3Jh bF9ma19ybmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIKK0RFVEFJTDog IEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIwMTgtMDItMDEpKSBpcyBz dGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiLgorLS0gYSBQ SyB1cGRhdGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQsIGJ1dCBub3Qg J3RpbCBjb21taXQ6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgor ICAgIEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICAgIERFRkVSUkFC TEUgSU5JVElBTExZIERFRkVSUkVEOworICBVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9m cm9tID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMi0wMScKKyAgV0hFUkUgaWQg PSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAy LTAxJyk7CitDT01NSVQ7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBv cmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5n MnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiCitERVRBSUw6ICBLZXkgKGlk LCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVm ZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIi4KKy0tIGNoYW5naW5nIHRo ZSBzY2FsYXIgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1s3LDgp JworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2 YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFi bGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9y YWxfZmtfcm5nMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiCitERVRBSUw6 ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMg c3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIi4KKy0tIGNo YW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitVUERBVEUgdGVtcG9yYWxfcGVy CitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0w MycKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGNoYW5naW5nIGp1 c3QgYSBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCitTRVQgaWQgPSAnWzcsOCkn CitXSEVSRSBpZCA9ICdbNSw2KSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUg InRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxf Zmtfcm5nMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiCitERVRBSUw6ICBL ZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMywyMDE4LTAyLTAxKSkgaXMgc3Rp bGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIi4KK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkIGluICgnWzUsNiknLCAnWzcsOCknKSBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFs1LDYpIHwgMjAxNi0wMi0wMSB8IDIwMTYt MDMtMDEKKyBbNSw2KSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTAyCisgWzUsNikgfCAyMDE4LTAx LTAzIHwgMjAxOC0wMi0wMQorIFs3LDgpIHwgMjAxOC0wMS0wMiB8IDIwMTgtMDEtMDMKKyg0IHJv d3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCBpbiAoJ1sz LDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAxLTA1LDIwMTgtMDEtMTApIHwgWzUsNikKKygxIHJv dykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1l IFBLIHVwZGF0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzMsNCknOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcy MDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnCitXSEVSRSBpZCA9ICdbNSw2KScg QU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAxLDIwMTgtMDItMDEpJzsKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgdXBkYXRlcyBSRVNUUklDVAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3Blciwg dGVtcG9yYWxfZmtfcm5nMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAg RFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZms7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsK KyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgUkVTVFJJQ1Q7CitFUlJPUjogIHVuc3VwcG9ydGVk IE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9E CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgTk8gQUNUSU9OCistLQorVFJVTkNB VEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUgdGVtcG9y YWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisg IEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXI7CistLSBhIFBLIGRlbGV0ZSB0aGF0IHN1Y2NlZWRzIGJlY2F1c2UgdGhlIG51 bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzUsNiknLCAnMjAxOC0wMS0wMScsICcy MDE4LTAyLTAxJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNikn OworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBldmVuIHRob3VnaCB0aGUgbnVtZXJpYyBp ZCBpcyByZWZlcmVuY2VkIGJlY2F1c2UgdGhlIHJhbmdlIGlzbid0OgorSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbNSw2KScs ICcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKSwKKyAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywg JzIwMTgtMDMtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMyw0KScsICdbMjAxOC0wMS0wNSwyMDE4LTAxLTEw KScsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYp JyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDMt MDEnOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5j ZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxp ZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJP UjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9y ZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgb24gdGFibGUgInRl bXBvcmFsX2ZrX3JuZzJwZXIiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBb MjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0 ZW1wb3JhbF9ma19ybmcycGVyIi4KKy0tIGEgUEsgZGVsZXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBi b3RoIGFyZSByZWZlcmVuY2VkLCBidXQgbm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVS IFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3JuZzJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworRVJST1I6ICB1 cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24g a2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3Jh bF9ma19ybmcycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgt MDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9y YWxfZmtfcm5nMnBlciIuCistLSBkZWxldGluZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5 OgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRl bGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyCitGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAxOC0wMS0xMCcKK1dI RVJFIGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVt cG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19y bmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIKK0RFVEFJTDogIEtleSAo aWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAzLDIwMTgtMDItMDEpKSBpcyBzdGlsbCBy ZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiLgorU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAorLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzUsNikgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0w MgorIFs1LDYpIHwgMjAxOC0wMS0wMyB8IDIwMTgtMDItMDEKKygyIHJvd3MpCisKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRf aWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0 KSB8IFsyMDE4LTAxLTA1LDIwMTgtMDEtMTApIHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBk ZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNj ZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzMsNCkn OworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRf ZnJvbSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOworLS0KKy0t IHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFJFU1RSSUNUCistLQorVFJVTkNBVEUgdGVtcG9y YWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5n MnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5n MnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgIE9OIERFTEVURSBSRVNUUklDVDsKK0VSUk9SOiAgdW5z dXBwb3J0ZWQgT04gREVMRVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2lu ZyBQRVJJT0QKKy0tCistLSBybmcycGVyIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCist LQorLS0gVE9DOgorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQg ZGVsZXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVy ZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxU CistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRl cyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FE RSAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28g c2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIg Y29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBT RVQgTlVMTCBzdWJzZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBz Y2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxh ciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNv bHMsIFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRl cyBDQVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVy OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5n MnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAg ICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFU RSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxf cGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAx LTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9p ZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBb MTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwg WzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4KQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBE QVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs3LDgpCisg WzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4KQorIFsxMDAsMTAxKSB8 IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzcsOCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9z cyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAt MDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFM VUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitV UERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAx KSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzksMTApCisgWzIwMCwyMDEpIHwgWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVm ZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBv cmFsX2ZrX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3 KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9w ZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEt MDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBl ciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0w MS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSkgfCBbNiw3KQorKDIgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworIGlkIHwgdmFsaWRfYXQgfCBwYXJlbnRfaWQgCistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0t LS0KKygwIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb OCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAx LDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUg aWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBw YXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDEgcm93 KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tCitUUlVO Q0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBl ciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0w MS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5n MnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maywKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9O IERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90 aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0g J1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEt MDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFsx MDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisKKy0t IG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdI RVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwy MDE5LTAxLTAxKSB8IAorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisg WzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAKKygzIHJvd3MpCisKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywg JzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkp Jyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4 LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lk IAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsy MDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzIwMCwyMDEpIHwgWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVm ZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1w b3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYs NyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxf cGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAx LTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJw ZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgt MDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAt MDEtMDEpIHwgCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KQor KDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAx LDIwMTktMDEtMDEpIHwgCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAK KyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IAorKDMgcm93cykKKworLS0g RksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEn LCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgs OSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZh bGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cm5nMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBb MjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEt MDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBk YXRlcyBTRVQgREVGQVVMVAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtf cm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEt MDEsMjAyMS0wMS0wMSknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZCBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERS T1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIFNF VCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNp ZGVzOgorVVBEQVRFIHRlbXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkg fCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApCisg WzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KQorKDMgcm93cykKKwor LS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAx LDIwMTktMDEtMDEpIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0w MSkgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFstMSww KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4 LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1s5 LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwy MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0 ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkgfCBb LTEsMCkKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpCisoMiBy b3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0t CitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwt MV0nLCBudWxsLCBudWxsKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s2 LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFs X3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0w MS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcy cGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4 LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIw LTAxLTAxKSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwg WzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5n MnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBp ZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAx OC0wMS0wMSwyMDE5LTAxLTAxKSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIw MjAtMDEtMDEpIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkg fCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAn MjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcy cGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4 LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIg V0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkK KyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBj b2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0w MS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcy cGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maywKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50 X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcGVyMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVm dG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdb Nyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3Ju ZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAg aWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lk MiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykg ICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4 KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2 LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgt MDEtMDEsMjAxOS0wMS0wMSkgfCBbNyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSB8IFs3LDgpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsy MDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzcsOCkgICAgICB8IFs2LDcpCisoMyByb3dzKQorCist LSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl cjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4 LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAn WzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxV RVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgs OSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEg PSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFy ZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwy MDIwLTAxLTAxKSB8IFs5LDEwKSAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RS VU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYs NyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00g dGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBU TyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwg cGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEp IHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0w MSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygyIHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyBpZCB8IHZhbGlkX2F0IHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorKDAgcm93cykKKwor LS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdb OCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFM VUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJywgJ1s4 LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5E IHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf ZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFy ZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwg WzgsOSkgICAgICB8IFs4LDkpCisoMSByb3cpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQg dXBkYXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFs X3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAo aWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNykn LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJf cm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdb MTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsK K0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9mazJfcm5nMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJw ZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZh bGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQg TlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQ REFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwg WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkg fCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBb MjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKwor LS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgp JyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBl ciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAgICAgICAgICAg IHwgCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwg CisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAgICAgICAgICAgIHwgCiso MyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJl bnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAn WzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTAp JyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAg ICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBb MjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMjAwLDIwMSkgfCBbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMp CistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAx KScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTkt MDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVu dF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAx OS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxl dGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAg IHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0w MS0wMSwyMDE5LTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0w MSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwy MDIxLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28g cmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0w MScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScs ICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJF IGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBb MjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpICAgICAgfCBbOCw5KQor KDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9w ZXIyLCB0ZW1wb3JhbF9mazJfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlk MSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywg JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3Ju ZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEw MCwxMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s2LDcpJywgJ1s2LDcpJyk7Cist LSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsy X3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkK KyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgKHZh bGlkX2F0KSBPTiBVUERBVEUgU0VUIE5VTEw7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJl ZmVyZW5jZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcy cGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VU IE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBi b3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwx MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0 ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8 IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEp IHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwgWzYsNykKKyBbMTAwLDEw MSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93 cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJF IGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8ICAgICAgICAgICAgfCBbNiw3 KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgICAgICAgICAgICB8IFs2 LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAgICAgICAgICAgIHwg WzYsNykKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAx LTAxKScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVS RSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAg IHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0w MS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IFsyMDIw LTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQorCistLQor LS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29s cykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcm5nMnBlcjsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYs NyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgIEFMVEVS IENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgQUxURVIgQ09MVU1O IHBhcmVudF9pZDIgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcy cGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VU IERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4 KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJw ZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAg ICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkg ICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3 KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRl bXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAn WzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsx MDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApICAgICB8IFstMSwwKQor IFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWy0xLDApICAgICB8IFstMSww KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEp JywgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s5 LDEwKScsIGlkMiA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIg V0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApICAgICB8 IFstMSwwKQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAg ICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIy LCB0ZW1wb3JhbF9mazJfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwg aWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScs IG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIw MTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBv biBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEw MCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygz IHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBX SEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBX SEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAg fCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbLTEsMCkgICAgIHwg Wy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAg IHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbLTEsMCkg ICAgIHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93 czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAx LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bl cjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRl OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwg WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzIwMCwyMDEp IHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3Mp CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNj YWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVy MiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEs IGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s2LDcpJywg bnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVjYXVz ZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmsyX3JuZzJwZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwt MV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZhbGlkX2F0KSBPTiBVUERBVEUg U0VUIERFRkFVTFQ7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJlZmVyZW5jZWQgaW4gT04g REVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6CitBTFRFUiBUQUJMRSB0 ZW1wb3JhbF9mazJfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVM VCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maywK KyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtF WSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAocGFyZW50X2lkMSkg T04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTkt MDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVu dF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAx OS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBP IHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsy MDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWy0xLDApICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwg WzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkg fCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbNiw3KQorKDMgcm93cykK KworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScs ICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0x LC0xXScsICdbOCw5KScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3Ju ZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIw MCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJw ZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApICAg ICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KSAg ICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZPUkVJR04gS0VZLCBQRVJJT0Qg cmVmZXJlbmNlcyByYW5nZQorLS0KKy0tIHRlc3QgdGFibGUgc2V0dXAKK0RST1AgVEFCTEUgdGVt cG9yYWxfcm5nIENBU0NBREU7CitOT1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIGNvbnN0cmFpbnQg dGVtcG9yYWxfZmtfcm5nMnJuZ19mayBvbiB0YWJsZSB0ZW1wb3JhbF9ma19ybmcycm5nCitDUkVB VEUgVEFCTEUgdGVtcG9yYWxfcm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRl cmFuZ2UKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ybmcKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfcm5nX3BrCisgIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ Uyk7CistLSBDYW4ndCBjcmVhdGUgYSBGSyB3aXRoIGEgbWlzbWF0Y2hlZCByYW5nZSB0eXBlCitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFs aWRfZnJvbSBpbnQsCisgIHZhbGlkX3RpbCBpbnQsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisg IFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcm5nIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgY29u c3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIgY2Fubm90IGJlIGltcGxlbWVudGVkCitE RVRBSUw6ICBLZXkgY29sdW1ucyAidmFsaWRfYXQiIG9mIHRoZSByZWZlcmVuY2luZyB0YWJsZSBh bmQgInZhbGlkX2F0IiBvZiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBhcmUgb2YgaW5jb21wYXRpYmxl IHR5cGVzOiBpbnQ0cmFuZ2UgYW5kIGRhdGVyYW5nZS4KKy0tIHdvcmtzOiByYW5nZSBmb3IgcmVm ZXJlbmNlZCwgUEVSSU9EIGZvciByZWZlcmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2Zr X3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRf dGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQg KHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJu Z19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVS SU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwgUEVSSU9EIHZh bGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgICAgICAgICAgVGFibGUgInB1 YmxpYy50ZW1wb3JhbF9ma19wZXIycm5nIgorICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xs YXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwg ICAgICAgICAgIHwgbm90IG51bGwgfCAKKyB2YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAg ICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwg ICAgICAgICAgfCAKKyBwYXJlbnRfaWQgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAg ICAgfCAKK1BlcmlvZHM6CisgICAgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0lu ZGV4ZXM6CisgICAgInRlbXBvcmFsX2ZrX3BlcjJybmdfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3Jh bF9ma19wZXIycm5nX3ZhbGlkX2F0X2NoZWNrIiBDSEVDSyAodmFsaWRfZnJvbSA8IHZhbGlkX3Rp bCkKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19wZXIycm5nX2Zr IiBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVt cG9yYWxfcm5nKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtf cGVyMnJuZzsKKy0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29sdW1uczoKKy0tIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlkX2F0KQorLS0gUkVGRVJF TkNFUyBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2Zr X3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRf dGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQg KHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJu Z19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVS SU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQp CispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNpbmcg dGFibGUgYnV0IG5vdCB0aGUgcmVmZXJlbmNlZCB0YWJsZQorLS0gKHBhcmVudF9pZCwgdmFsaWRf YXQpIFJFRkVSRU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIGJvdGggc2hvdWxkIHNwZWNpZnkgUEVS SU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2Us CisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0 cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisg IENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlk X2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdf ZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IG11c3QgdXNl IFBFUklPRCB3aGVuIHJlZmVyZW5jaW5nIGEgcHJpbWFyeSBrZXkgdXNpbmcgV0lUSE9VVCBPVkVS TEFQUworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0QgdmFs aWRfYXQpCistLSBGT1JFSUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRF IFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zy b20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBF UklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBL RVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlk LCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBv biB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0g KHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlHTiBL RVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19w ZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3Rp bCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2 YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdf cGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlk X2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCispOworRVJST1I6ICBmb3JlaWduIGtl eSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVu Y2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChp ZCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJh bmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2Zr IEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3JuZyAoaWQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBv biB0aGUgcmVmZXJlbmNpbmcgdGFibGUgYnV0IG5vdCB0aGUgcmVmZXJlbmNlZCB0YWJsZQorLS0g KHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKK0NSRUFURSBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRh dGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0Qg Rk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChw YXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRf YXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNl ZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gd2l0aCBpbmZlcnJlZCBQ SyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9h dCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJu ZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0 ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnJuZ19mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKKyk7CitEUk9QIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJybmc7CistLSAocGFyZW50X2lkKSBSRUZFUkVOQ0VTIFtpbXBsaWNpdF0KK0NS RUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAor ICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKKyk7CitFUlJP UjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlIGJ1dCBu b3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlCistLSBzaG91bGQgZmFpbCBiZWNhdXNlIG9mIGR1cGxp Y2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJu ZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0 ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnJuZ19mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgcGFy ZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwgUEVSSU9EIGlkKQorKTsK K0VSUk9SOiAgZm9yZWlnbiBrZXkgcmVmZXJlbmNlZC1jb2x1bW5zIGxpc3QgbXVzdCBub3QgY29u dGFpbiBkdXBsaWNhdGVzCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFCTEUgdGVtcG9y YWxfcm5nMiBDQVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0byBjb25zdHJhaW50IHRl bXBvcmFsX2ZrMl9ybmcycm5nX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2ZrMl9ybmcycm5nCitDUkVB VEUgVEFCTEUgdGVtcG9yYWxfcm5nMiAoCisgIGlkMSBpbnQ0cmFuZ2UsCisgIGlkMiBpbnQ0cmFu Z2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ybmcyX3Br IFBSSU1BUlkgS0VZIChpZDEsIGlkMiwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZh bGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJhbmdl LAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19wayBQ UklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRf aWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyIChpZDEs IGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9wZXIycm5nCisgICAg ICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3BlcjJybmciCisgICBDb2x1bW4gICB8 ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAg ICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2Zyb20gfCBk YXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlkX3RpbCAgfCBkYXRlICAg ICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAg ICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAg ICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJybmdfcGsiIFBSSU1BUlkg S0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgor ICAgICJ0ZW1wb3JhbF9mazJfcGVyMnJuZ192YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zy b20gPCB2YWxpZF90aWwpCitGb3JlaWduLWtleSBjb25zdHJhaW50czoKKyAgICAidGVtcG9yYWxf ZmsyX3BlcjJybmdfZmsiIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJ T0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMihpZDEsIGlkMiwgUEVSSU9EIHZh bGlkX2F0KQorCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworLS0KKy0tIHRlc3Qg QUxURVIgVEFCTEUgQUREIENPTlNUUkFJTlQKKy0tCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtf cGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90 aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5n X3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQor ICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQsIFBFUklPRCB2YWxpZF9hdCk7CistLSBUd28g c2NhbGFyIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcgKAorICBp ZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBh cmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxB UFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcKKyAgQUREIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBh cmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyIChp ZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsKK1xkIHRlbXBvcmFsX2ZrMl9wZXIycm5nCisgICAg ICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3BlcjJybmciCisgICBDb2x1bW4gICB8 ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAg ICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2Zyb20gfCBk YXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlkX3RpbCAgfCBkYXRlICAg ICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAg ICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAg ICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJybmdfcGsiIFBSSU1BUlkg S0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgor ICAgICJ0ZW1wb3JhbF9mazJfcGVyMnJuZ192YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zy b20gPCB2YWxpZF90aWwpCitGb3JlaWduLWtleSBjb25zdHJhaW50czoKKyAgICAidGVtcG9yYWxf ZmsyX3BlcjJybmdfZmsiIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJ T0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMihpZDEsIGlkMiwgUEVSSU9EIHZh bGlkX2F0KQorCistLSB3aXRoIGluZmVycmVkIFBLIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlLCBh bmQgd3JvbmcgY29sdW1uIHR5cGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisg IERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrLAorICBEUk9QIFBFUklPRCBG T1IgdmFsaWRfYXQsCisgIEFMVEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgdGltZXN0YW1wLAor ICBBTFRFUiBDT0xVTU4gdmFsaWRfdGlsIFRZUEUgdGltZXN0YW1wLAorICBBREQgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcm5nOworRVJST1I6ICBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19w ZXIycm5nX2ZrIiBjYW5ub3QgYmUgaW1wbGVtZW50ZWQKK0RFVEFJTDogIEtleSBjb2x1bW5zICJ2 YWxpZF9hdCIgb2YgdGhlIHJlZmVyZW5jaW5nIHRhYmxlIGFuZCAidmFsaWRfYXQiIG9mIHRoZSBy ZWZlcmVuY2VkIHRhYmxlIGFyZSBvZiBpbmNvbXBhdGlibGUgdHlwZXM6IHRzcmFuZ2UgYW5kIGRh dGVyYW5nZS4KK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBQRVJJT0Qg Rk9SIHZhbGlkX2F0LAorICBBTFRFUiBDT0xVTU4gdmFsaWRfZnJvbSBUWVBFIGRhdGUsCisgIEFM VEVSIENPTFVNTiB2YWxpZF90aWwgVFlQRSBkYXRlLAorICBBREQgUEVSSU9EIEZPUiB2YWxpZF9h dCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJl ZmVyZW5jZWQgdGFibGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzsKKy0tIHNob3Vs ZCBmYWlsIGJlY2F1c2Ugb2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnJuZ19mazIKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHBhcmVudF9pZCkKKyAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgaWQpOworRVJST1I6ICBmb3JlaWdu IGtleSByZWZlcmVuY2VkLWNvbHVtbnMgbGlzdCBtdXN0IG5vdCBjb250YWluIGR1cGxpY2F0ZXMK Ky0tCistLSB0ZXN0IHdpdGggcm93cyBhbHJlYWR5CistLQorREVMRVRFIEZST00gdGVtcG9yYWxf ZmtfcGVyMnJuZzsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAxOC0wMS0wMiwy MDE4LTAyLTAzKScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJyksCisg ICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSknKSwKKyAgKCdbMyw0KScsICdbMjAx OC0wMS0wMSwpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1AgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MSwyKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDItMDEnLCAnWzEsMiknKTsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJu Z19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVS RU5DRVMgdGVtcG9yYWxfcm5nOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mazsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFM VUVTICgnWzIsMyknLCAnMjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywgJ1sxLDIpJyk7CistLSBz aG91bGQgZmFpbDoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nOworRVJST1I6ICBpbnNl cnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIiB2aW9sYXRlcyBmb3Jl aWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIgorREVUQUlMOiAgS2V5 IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAyLDIwMTgtMDQtMDEpKSBp cyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcm5nIi4KKy0tIG9rYXkgYWdhaW46CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtf cGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9ybmc7CistLQorLS0gdGVzdCBwZ19nZXRfY29uc3RyYWludGRlZgorLS0KK1NFTEVDVCBwZ19n ZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0g J3RlbXBvcmFsX2ZrX3BlcjJybmdfZmsnOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcGdfZ2V0X2NvbnN0cmFpbnRkZWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBGT1JFSUdOIEtFWSAocGFyZW50X2lk LCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nKGlkLCBQRVJJT0QgdmFs aWRfYXQpCisoMSByb3cpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIGluc2VydHMKKy0t CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0w MScsICdbMSwyKScpOworLS0gc2hvdWxkIGZhaWw6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19w ZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sy LDMpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wNC0wMScsICdbMSwyKScpOworRVJST1I6ICBpbnNl cnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIiB2aW9sYXRlcyBmb3Jl aWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIgorREVUQUlMOiAgS2V5 IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAyLDIwMTgtMDQtMDEpKSBp cyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcm5nIi4KKy0tIG5vdyBpdCBzaG91bGQg d29yazoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb MSwyKScsICdbMjAxOC0wMi0wMywyMDE4LTAzLTAzKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMg KCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEsMiknKTsKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0tCistLSBzbGlkZSB0aGUgZWRnZSBhY3Jvc3Mg YSByZWZlcmVuY2VkIHRyYW5zaXRpb246CitVUERBVEUgdGVtcG9yYWxfZmtfcGVyMnJuZyBTRVQg dmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAyJywgdmFsaWRfdGlsID0gJzIwMTgtMDItMjAnIFdIRVJF IGlkID0gJ1sxLDIpJzsKKy0tIHNob3VsZCBmYWlsOgorVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJy bmcgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMicsIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTAx JyBXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIGluc2VydCBvciB1cGRhdGUgb24gdGFibGUg InRlbXBvcmFsX2ZrX3BlcjJybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRl bXBvcmFsX2ZrX3BlcjJybmdfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVudF9pZCwgdmFsaWRfYXQp PShbMSwyKSwgWzIwMTgtMDEtMDIsMjAxOC0wNS0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxl ICJ0ZW1wb3JhbF9ybmciLgorVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJybmcgU0VUIHBhcmVudF9p ZCA9ICdbOCw5KScgV0hFUkUgaWQgPSAnWzEsMiknOworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRl IG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25z dHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQs IHZhbGlkX2F0KT0oWzgsOSksIFsyMDE4LTAxLTAyLDIwMTgtMDItMjApKSBpcyBub3QgcHJlc2Vu dCBpbiB0YWJsZSAidGVtcG9yYWxfcm5nIi4KKy0tIEFMVEVSIEZLIERFRkVSUkFCTEUKK0JFR0lO OworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICAg KCdbNSw2KScsICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKScpLAorICAgICgnWzUsNiknLCAnWzIw MTgtMDItMDEsMjAxOC0wMy0wMSknKTsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJu ZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1sz LDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0xMCcsICdbNSw2KScpOworICBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycm5nCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19w ZXIycm5nX2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisgIERFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7IC0tc2hvdWxkIG5vdCBmYWlsIHll dC4KK0NPTU1JVDsgLS0gc2hvdWxkIGZhaWwgaGVyZS4KK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0 ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIK K0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIwMTgtMDIt MDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmci LgorLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIE5PIEFDVElPTgorLS0KK1RSVU5D QVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZms7 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlk X2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBVUERBVEUgTk8gQUNUSU9OOwor LS0gYSBQSyB1cGRhdGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0 IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFM VUVTICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknKTsKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIHZhbGlkX2F0ID0gJ1syMDE2LTAxLTAxLDIwMTYtMDItMDEpJyBXSEVSRSBpZCA9 ICdbNSw2KSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGV2ZW4gdGhvdWdoIHRoZSBu dW1lcmljIGlkIGlzIHJlZmVyZW5jZWQgYmVjYXVzZSB0aGUgcmFuZ2UgaXNuJ3Q6CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAnWzUsNiknOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUworICAoJ1s1LDYpJywgJ1syMDE4LTAxLTAxLDIw MTgtMDItMDEpJyksCisgICgnWzUsNiknLCAnWzIwMTgtMDItMDEsMjAxOC0wMy0wMSknKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWws IHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzMsNCknLCAnMjAxOC0wMS0wNScsICcyMDE4LTAxLTEw JywgJ1s1LDYpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxNi0w Mi0wMSwyMDE2LTAzLTAxKScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIw MTgtMDItMDEsMjAxOC0wMy0wMSknOworLS0gQSBQSyB1cGRhdGUgc2xpZGluZyB0aGUgZWRnZSBi ZXR3ZWVuIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkn KSwKKyAgKCdbNiw3KScsICdbMjAxOC0wMi0wMSwyMDE4LTAzLTAxKScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lk KSBWQUxVRVMKKyAgKCdbNCw1KScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDItMTUnLCAnWzYsNykn KTsKK1VQREFURSB0ZW1wb3JhbF9ybmcKK1NFVCB2YWxpZF9hdCA9IENBU0UgV0hFTiBsb3dlcih2 YWxpZF9hdCkgPSAnMjAxOC0wMS0wMScgVEhFTiBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAx OC0wMS0wNScpCisgICAgICAgICAgICAgICAgICAgIFdIRU4gbG93ZXIodmFsaWRfYXQpID0gJzIw MTgtMDItMDEnIFRIRU4gZGF0ZXJhbmdlKCcyMDE4LTAxLTA1JywgJzIwMTgtMDMtMDEnKSBFTkQK K1dIRVJFIGlkID0gJ1s2LDcpJzsKKy0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJl bmNlZCByYW5nZSBidXQgc3RpbGwgdmFsaWQ6CistLSBUaGVyZSBhcmUgdHdvIHJlZmVyZW5jZXM6 IG9uZSBmdWxmaWxsZWQgYnkgdGhlIGZpcnN0IHBrIHJvdywKKy0tIHRoZSBvdGhlciBmdWxmaWxs ZWQgYnkgYm90aCBwayByb3dzIGNvbWJpbmVkLgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDMtMDEp JyksCisgICgnWzEsMiknLCAnWzIwMTgtMDMtMDEsMjAxOC0wNi0wMSknKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9p ZCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAxOC0wMS0xNScsICcyMDE4LTAyLTAxJywgJ1sxLDIp JyksCisgICgnWzIsMyknLCAnMjAxOC0wMS0xNScsICcyMDE4LTA1LTAxJywgJ1sxLDIpJyk7CitV UERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0xNSwyMDE4LTAzLTAx KScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRl OworLS0gYSBQSyB1cGRhdGUgZ3Jvd2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBpcyBmaW5lOgor VVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMy0w MSknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTI1Jzo6ZGF0 ZTsKKy0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBhbmQgY2hh bmdpbmcgdGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9sZSByYW5nZToKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIGlkID0gJ1syLDMpJywgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMTUsMjAxOC0wMy0w MSknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0 ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9s YXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0 YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0o WzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMtMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20g dGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciLgorLS0gYSBQSyB1cGRhdGUgY2hhbmdpbmcgb25s eSB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBEQVRFIHRlbXBvcmFsX3Ju ZyBTRVQgaWQgPSAnWzIsMyknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcy MDE4LTAxLTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVt cG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19w ZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIKK0RFVEFJTDogIEtleSAo aWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMtMDEpKSBpcyBzdGlsbCBy ZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciLgorLS0gYSBQSyB1cGRh dGUgdGhhdCBsb3NlcyB0aW1lIGZyb20gYm90aCBlbmRzLCBidXQgaXMgc3RpbGwgdmFsaWQ6CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzIsMykn LCAnWzIwMTgtMDEtMDEsMjAxOC0wMy0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3Bl cjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTCisgICgn WzUsNiknLCAnMjAxOC0wMS0xNScsICcyMDE4LTAyLTAxJywgJ1syLDMpJyk7CitVUERBVEUgdGVt cG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0xNSwyMDE4LTAyLTE1KScKK1dIRVJF IGlkID0gJ1syLDMpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFy ZSByZWZlcmVuY2VkOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTYt MDEtMDEsMjAxNi0wMi0wMSknCitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1sy MDE4LTAxLTAxLDIwMTgtMDItMDEpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJs ZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3Jh bF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIKK0RFVEFJTDog IEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIwMTgtMDItMDEpKSBpcyBz dGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciLgorLS0gYSBQ SyB1cGRhdGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQsIGJ1dCBub3Qg J3RpbCBjb21taXQ6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZwor ICAgIEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICAgIERFRkVSUkFC TEUgSU5JVElBTExZIERFRkVSUkVEOworICBVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9h dCA9ICdbMjAxNi0wMS0wMSwyMDE2LTAyLTAxKScKKyAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2 YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CitDT01NSVQ7 CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3JuZyIgdmlvbGF0 ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIgb24gdGFi bGUgInRlbXBvcmFsX2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1 LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRh YmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIi4KKy0tIGNoYW5naW5nIHRoZSBzY2FsYXIgcGFydCBm YWlsczoKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgpJworV0hFUkUgaWQgPSAn WzUsNiknIEFORCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSc7CitFUlJPUjog IHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3JuZyIgdmlvbGF0ZXMgZm9yZWln biBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIgb24gdGFibGUgInRlbXBv cmFsX2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAx OC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1w b3JhbF9ma19wZXIycm5nIi4KKy0tIGNoYW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9r YXk6CitVUERBVEUgdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0g J1s1LDYpJzsKKy0tIGNoYW5naW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFs X3JuZworRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgt MDEtMTAnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KSc7CitFUlJPUjogIHVw ZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3JuZyIgdmlvbGF0ZXMgZm9yZWlnbiBr ZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIgb24gdGFibGUgInRlbXBvcmFs X2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0w MS0wMywyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3Jh bF9ma19wZXIycm5nIi4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkIGluICgn WzUsNiknLCAnWzcsOCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAg dmFsaWRfYXQgICAgICAgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIFs1 LDYpIHwgWzIwMTYtMDItMDEsMjAxNi0wMy0wMSkKKyBbNSw2KSB8IFsyMDE4LTAxLTAxLDIwMTgt MDEtMDIpCisgWzUsNikgfCBbMjAxOC0wMS0wMywyMDE4LTAyLTAxKQorIFs3LDgpIHwgWzIwMTgt MDEtMDIsMjAxOC0wMS0wMykKKyg0IHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cGVyMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBp ZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8IDIwMTgtMDEtMDUgfCAy MDE4LTAxLTEwIHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGlu ZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIHVwZGF0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9N IHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzMsNCknOworVVBEQVRFIHRlbXBvcmFs X3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTYtMDEtMDEsMjAxNi0wMi0wMSknCitXSEVSRSBpZCA9 ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAxLDIwMTgtMDItMDEpJzsKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBSRVNUUklDVAorLS0KK1RSVU5DQVRFIHRlbXBv cmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Bl cjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZms7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Bl cjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBVUERBVEUgUkVTVFJJQ1Q7CitFUlJPUjogIHVu c3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNp bmcgUEVSSU9ECistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgTk8gQUNUSU9OCist LQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxURVIgVEFC TEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIy cm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9ybmc7CistLSBhIFBLIGRlbGV0ZSB0aGF0IHN1Y2NlZWRzIGJlY2F1 c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNSw2KScsICdbMjAxOC0wMS0wMSwyMDE4LTAy LTAxKScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0t IGEgUEsgZGVsZXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMg cmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbNSw2KScsICdbMjAxOC0wMS0wMSwyMDE4 LTAyLTAxKScpLAorICAoJ1s1LDYpJywgJ1syMDE4LTAyLTAxLDIwMTgtMDMtMDEpJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBw YXJlbnRfaWQpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0xMCcsICdb NSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQg dmFsaWRfYXQgPSAnWzIwMTgtMDItMDEsMjAxOC0wMy0wMSknOworLS0gYSBQSyBkZWxldGUgdGhh dCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9ybmcgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMSwyMDE4 LTAyLTAxKSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3Ju ZyIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19m ayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxp ZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNl ZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIi4KKy0tIGEgUEsgZGVsZXRlIHRoYXQg ZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkLCBidXQgbm90ICd0aWwgY29tbWl0Ogor QkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgICBBTFRFUiBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBE RUZFUlJFRDsKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBB TkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09N TUlUOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ybmciIHZp b2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJybmdfZmsiIG9u IHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQp PShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJv bSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIuCistLSBkZWxldGluZyBhbiB1bnJlZmVyZW5j ZWQgcGFydCBpcyBva2F5OgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1dIRVJFIGlkID0g J1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVt cG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAn MjAxOC0wMS0xMCcKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0 ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIK K0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAzLDIwMTgtMDIt MDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmci LgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4 KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgWzUsNikgfCBbMjAxOC0w MS0wMSwyMDE4LTAxLTAyKQorIFs1LDYpIHwgWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSkKKygyIHJv d3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCBpbiAoJ1sz LDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBbMyw0KSB8IDIwMTgtMDEtMDUgfCAyMDE4LTAxLTEwIHwgWzUsNikKKygxIHJv dykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1l IFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hF UkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1 LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknOworLS0KKy0tIHRl c3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFJFU1RSSUNUCistLQorVFJVTkNBVEUgdGVtcG9yYWxf cm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJu ZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mazsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJu Z19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVS RU5DRVMgdGVtcG9yYWxfcm5nCisgIE9OIERFTEVURSBSRVNUUklDVDsKK0VSUk9SOiAgdW5zdXBw b3J0ZWQgT04gREVMRVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQ RVJJT0QKKy0tCistLSBwZXIycm5nIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCistLQor LS0gVE9DOgorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVs ZXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCist LSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBD QVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAo dHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2Nh bGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29s cykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQg TlVMTCBzdWJzZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2Fs YXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBj b2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMs IFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBD QVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywg J1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIy cm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAs MTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJu Z19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBD QVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5n IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAx JyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAw LDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAx OS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbNyw4KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAy MDIxLTAxLTAxIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRF IHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8 IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs3LDgpCisgWzEw MCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbNyw4KQorIFsxMDAsMTAxKSB8IDIw MjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzcsOCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0 d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywg JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3Ju ZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcy MDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVS RSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAxIHwg MjAyMC0wMS0wMSB8IFs5LDEwKQorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBD QVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywg J1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIy cm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAs MTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVy cyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEg fCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygy IHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdI RVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyBpZCB8IHZhbGlkX2Zy b20gfCB2YWxpZF90aWwgfCBwYXJlbnRfaWQgCistLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LSstLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJv d3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Ju ZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQg PSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJl bnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t CisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KQorKDEgcm93KQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tCitUUlVOQ0FU RSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0w MS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJu ZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maywKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICAgIE9OIERF TEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBz aWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAx IHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IAorIFsxMDAs MTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5v bi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJF IGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxp ZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAx OS0wMS0wMSB8IAorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisgWzEw MCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAKKygzIHJvd3MpCisKKy0tIEZLIGFj cm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwg dmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAn WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJy bmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwy MDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworVVBEQVRFIHRlbXBv cmFsX3JuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJu ZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4LTAx LTAxIHwgMjAyMC0wMS0wMSB8IAorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgTlVMTAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScs ICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVy MnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAw LDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CistLSBsZWZ0b3Zl cnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAx IHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IAorIFsxMDAs MTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5v bi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFs aWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IAor IFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAy MC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzIwMjAtMDEtMDEs MjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90 aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisgWzIw MCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KQorKDIgcm93cykKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLQorVFJVTkNBVEUg dGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnKCwpJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzIwMTgtMDEt MDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmtfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFd JywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmssCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lk LCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKKyAgICBPTiBE RUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9u IGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJF IGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxp ZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAx OS0wMS0wMSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBb LTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpCisoMyBy b3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0g J1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3Bl cjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAg aWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAx OC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwg MjAyMC0wMS0wMSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScs ICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s5LDEwKScg V0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3Rp bCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkK KyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCitUUlVO Q0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICcoLCknKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0n LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxp ZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYs NykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKQorIFsxMDAs MTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5v bi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFs aWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFst MSwwKQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApCisgWzEw MCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0t IEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEp Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr X3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgn WzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRF IEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJF IGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZh bGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAy MDIwLTAxLTAxIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEg fCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENB U0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1w b3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0w MSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Bl cjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAg ICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBVUERB VEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFs X3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAt MDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFy ZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwg MjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEg fCAyMDIwLTAxLTAxIHwgWzcsOCkgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0w MSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1G UE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUg aWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFs aWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQor IFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzcsOCkgICAgICB8IFs2LDcp CisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbNyw4KSAgICAgIHwgWzYs NykKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs3LDgpICAgICAgfCBb Niw3KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg J1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVy MnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikg VkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScs ICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJF IGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAg fCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEt MDEgfCAyMDIwLTAxLTAxIHwgWzksMTApICAgICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgMjAyMC0w MS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCist LQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywg J1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScs ICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9p ZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTkt MDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAy MS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDIgcm93cykKKworLS0gbm9uLUZQTyBkZWxl dGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworIGlkIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCB8IHBhcmVu dF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVu Y2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4 LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVS RSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwg IHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDIwLTAx LTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDEgcm93KQorCistLQorLS0g dGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0t CitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAn WzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJl bnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywg J1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBh cmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIK KyAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJz IG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4KScg V0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAg IHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwg WzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3Ju ZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRf aWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5 LTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAx LTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgICAgICAgICAgICB8IAorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdb OSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6 ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIw MCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAx KSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsyMDAsMjAxKSB8 IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIg Y29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgn WzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAx IHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEt MDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEg fCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBP IGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIw MTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMTkt MDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMjAtMDEt MDEgfCAyMDIxLTAxLTAxIHwgICAgICAgICAgICB8IAorKDMgcm93cykKKworLS0gRksgYWNyb3Nz IHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAt MDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6 OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sy MDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIw MSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCAKKyBbMjAwLDIwMSkg fCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykK KworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFy IGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1w b3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0w MSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBi ZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdf ZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAgRk9SRUlH TiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgKHZhbGlkX2F0KSBP TiBVUERBVEUgU0VUIE5VTEw7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJlZmVyZW5jZWQg aW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsy X3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkK KyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgKHBh cmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVz OgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAg fCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEt MDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0w MS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDIw LTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0g bm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEw MSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8ICAgICAgICAgICAgfCBbNiw3KQorIFsxMDAs MTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IFs2LDcpCisgWzEw MCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAgICAgICAgICAgIHwgWzYsNykKKygz IHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5 KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n MiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAyMC0w MS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSkn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRf aWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAg ICAgICAgIHwgWzgsOSkKKyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4 LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1 cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9y YWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcy IChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsICcoLCkn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJf cGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScs CisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJP UCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJl bnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisg ICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcs OCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lk MSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0w MS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIw LTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAy MDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBPIHVw ZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcs OCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIy cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFstMSwwKSAg ICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSww KSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFst MSwwKSAgICAgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNl ZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5 KScsICdbOCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAn WzksMTApJywgaWQyID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQg QD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJu ZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAg IHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAg ICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRl cyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3Ju ZzIsIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQx LCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCAnKCwpJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2 LDcpJywgJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBh cmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8 IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAx IHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAx LTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9u LUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2 YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkg fCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEw MSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAw LDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygz IHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5 KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n MiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAyMC0w MS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSkn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRf aWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEs MCkgICAgIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBb OCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQg ZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQp CistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwt MV0nLCAnWzYsNyknLCAnKCwpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEt MDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBd JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gZmFp bHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUg dGVtcG9yYWxfZmsyX3BlcjJybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFV TFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmss CisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAgRk9SRUlHTiBL RVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZhbGlkX2F0KSBP TiBVUERBVEUgU0VUIERFRkFVTFQ7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJlZmVyZW5j ZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBT RVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVy MnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgICBG T1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAocGFy ZW50X2lkMSkgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGls ICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0w MS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5 LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIw MjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQorCist LSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJv bSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWy0xLDApICAgICB8IFs2LDcpCisgWzEw MCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWzYsNykKKyBb MTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFstMSwwKSAgICAgfCBbNiw3KQor KDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4 LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIw LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWzgsOSknLCAnKCwpJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5n MiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxp ZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAy MDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8 IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQor CistLSBGSyB3aXRoIGEgY3VzdG9tIHJhbmdlIHR5cGUKK0NSRUFURSBUWVBFIG15ZGF0ZXJhbmdl IEFTIHJhbmdlKHN1YnR5cGU9ZGF0ZSk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nMyAoCisg IGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgbXlkYXRlcmFuZ2UsCisgIENPTlNUUkFJTlQgdGVt cG9yYWxfcm5nM19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp CispOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcycm5nICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9hdCBteWRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazNfcm5nMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcycm5nX2Zr IEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3JuZzMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpIE9OIERFTEVURSBDQVNDQURFCisp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5 KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazNfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1s1LDYpJywgbXlkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSkn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzMgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s4LDkpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmszX3JuZzJybmcgV0hFUkUgaWQgPSAnWzUsNiknOworICBpZCAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNSw2KSB8IFsyMDE4LTAxLTAxLDIwMTkt MDEtMDEpIHwgWzgsOSkKKyBbNSw2KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkK KygyIHJvd3MpCisKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmszX3JuZzJybmc7CitEUk9QIFRBQkxF IHRlbXBvcmFsX3JuZzM7CitEUk9QIFRZUEUgbXlkYXRlcmFuZ2U7CistLQorLS0gRksgYmV0d2Vl biBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcworLS0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwK KyAgbmFtZSB0ZXh0LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3Bhcml0aW9uZWRfcm5nX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKykgUEFSVElUSU9OIEJZ IExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0cDEgUEFSVElUSU9OIE9GIHRlbXBvcmFsX3BhcnRp dGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcs OCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUsMTYpJywgJ1sxNywxOCkn LCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKK0NSRUFURSBUQUJMRSB0cDIgUEFS VElUSU9OIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzAsMSkn LCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScsICdbMTIsMTMp JywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywgJ1syMCwyMSknLCAnWzIyLDIzKScs ICdbMjQsMjUpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2 YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEn LCAnMjAwMC0wMi0wMScpLCAnb25lJyksCisgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDAtMDIt MDEnLCAnMjAwMC0wMy0wMScpLCAnb25lJyksCisgICgnWzIsMyknLCBkYXRlcmFuZ2UoJzIwMDAt MDEtMDEnLCAnMjAxMC0wMS0wMScpLCAndHdvJyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJh bmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2Zr IEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKKykgUEFSVElU SU9OIEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0ZmtwMSBQQVJUSVRJT04gT0YgdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCkn LCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUs MTYpJywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKK0NSRUFU RSBUQUJMRSB0ZmtwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJu ZyBGT1IgVkFMVUVTIElOICgnWzAsMSknLCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgs OSknLCAnWzEwLDExKScsICdbMTIsMTMpJywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkp JywgJ1syMCwyMSknLCAnWzIyLDIzKScsICdbMjQsMjUpJyk7CistLQorLS0gcGFydGl0aW9uZWQg RksgcmVmZXJlbmNpbmcgaW5zZXJ0cworLS0KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMSwy KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTE1JyksICdbMSwyKScpLAorICAo J1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAxLTAxLTAxJywgJzIwMDItMDEtMDEnKSwgJ1syLDMpJyks CisgICgnWzIsMyknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAwMC0wMi0xNScpLCAnWzEs MiknKTsKKy0tIHNob3VsZCBmYWlsOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRf Zmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1szLDQpJywg ZGF0ZXJhbmdlKCcyMDEwLTAxLTAxJywgJzIwMTAtMDItMTUnKSwgJ1sxLDIpJyk7CitFUlJPUjog IGluc2VydCBvciB1cGRhdGUgb24gdGFibGUgInRma3AxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBj b25zdHJhaW50ICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIgorREVUQUlMOiAg S2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDEwLTAxLTAxLDIwMTAtMDItMTUp KSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIi4KK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMyw0KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcy MDAwLTAyLTE1JyksICdbMyw0KScpOworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxl ICJ0ZmtwMSIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZ19mayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9 KFszLDQpLCBbMjAwMC0wMS0wMSwyMDAwLTAyLTE1KSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUg InRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyIuCistLQorLS0gcGFydGl0aW9uZWQgRksgcmVmZXJl bmNpbmcgdXBkYXRlcworLS0KK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n IFNFVCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTEzJykgV0hF UkUgaWQgPSAnWzIsMyknOworLS0gbW92ZSBhIHJvdyBmcm9tIHRoZSBmaXJzdCBwYXJ0aXRpb24g dG8gdGhlIHNlY29uZAorVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgU0VU IGlkID0gJ1s0LDUpJyBXSEVSRSBpZCA9ICdbMSwyKSc7CistLSBtb3ZlIGEgcm93IGZyb20gdGhl IHNlY29uZCBwYXJ0aXRpb24gdG8gdGhlIGZpcnN0CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfcm5nMnJuZyBTRVQgaWQgPSAnWzEsMiknIFdIRVJFIGlkID0gJ1s0LDUpJzsKIC0tIHNo b3VsZCBmYWlsOgogVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgU0VUIHZh bGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMDAtMDQtMDEnKSBXSEVSRSBpZCA9 ICdbMSwyKSc7CiBFUlJPUjogIGNvbmZsaWN0aW5nIGtleSB2YWx1ZSB2aW9sYXRlcyBleGNsdXNp b24gY29uc3RyYWludCAidGZrcDFfcGtleSIKQEAgLTQyMjAsNCArODUyNCwxOCBAQCBTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAn WzE1LDE2KSc7CiAKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1s dHJuZzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nOworLS0KKy0tIEZL IGJldHdlZW4gcGFydGl0aW9uZWQgdGFibGVzOiBQRVJJT0RzCistLQorQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3BlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBk YXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgbmFtZSB0ZXh0LAorICBQRVJJT0QgRk9SIHZhbGlk X2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3Bhcml0 aW9uZWRfcm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykK KykgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0cDEgUEFSVElUSU9OIE9G IHRlbXBvcmFsX3BhcnRpdGlvbmVkX3BlciBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCkn LCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUs MTYpJywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKK0VSUk9S OiAgSW5oZXJpdGluZyBmcm9tIGEgdGFibGUgd2l0aCBhIFBFUklPRCBpcyBub3Qgc3VwcG9ydGVk CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3BlcjsKIFJFU0VUIGRhdGVzdHlsZTsK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUgYi9zcmMvdGVz dC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCmluZGV4IDg0NDM1MDI2MjE3Li42MDMwOGQ0MmJi NyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVsZQorKysgYi9z cmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCkBAIC00Myw3ICs0Myw3IEBAIHRlc3Q6 IGNvcHkgY29weXNlbGVjdCBjb3B5ZG1sIGNvcHllbmNvZGluZyBpbnNlcnQgaW5zZXJ0X2NvbmZs aWN0CiAjIE5vdGU6IG1hbnkgb2YgdGhlIHRlc3RzIGluIGxhdGVyIGdyb3VwcyBkZXBlbmQgb24g Y3JlYXRlX2luZGV4CiAjIC0tLS0tLS0tLS0KIHRlc3Q6IGNyZWF0ZV9mdW5jdGlvbl9jIGNyZWF0 ZV9taXNjIGNyZWF0ZV9vcGVyYXRvciBjcmVhdGVfcHJvY2VkdXJlIGNyZWF0ZV90YWJsZSBjcmVh dGVfdHlwZSBjcmVhdGVfc2NoZW1hCi10ZXN0OiBjcmVhdGVfaW5kZXggY3JlYXRlX2luZGV4X3Nw Z2lzdCBjcmVhdGVfdmlldyBpbmRleF9pbmNsdWRpbmcgaW5kZXhfaW5jbHVkaW5nX2dpc3QKK3Rl c3Q6IGNyZWF0ZV9pbmRleCBjcmVhdGVfaW5kZXhfc3BnaXN0IGNyZWF0ZV92aWV3IGluZGV4X2lu Y2x1ZGluZyBpbmRleF9pbmNsdWRpbmdfZ2lzdCBwZXJpb2RzCiAKICMgLS0tLS0tLS0tLQogIyBB bm90aGVyIGdyb3VwIG9mIHBhcmFsbGVsIHRlc3RzCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9y dGlvbl9vZi5zcWwKaW5kZXggNzQ5M2NjNGMyMzMuLjBiMzM2MWExNDIwIDEwMDY0NAotLS0gYS9z cmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwKKysrIGIvc3JjL3Rlc3QvcmVn cmVzcy9zcWwvZm9yX3BvcnRpb25fb2Yuc3FsCkBAIC04MDEsNiArODAxLDU2IEBAIFNFTEVDVCAq IEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwogCiBEUk9Q IFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOwogCistLSBUZXN0IHdpdGggUEVSSU9EcworCitD UkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIgKAorICBpZCBpbnQ0cmFuZ2UgTk9UIE5V TEwsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIG5hbWUgdGV4dCBO T1QgTlVMTCwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwK KyAgQ09OU1RSQUlOVCBmb3JfcG9ydGlvbl9vZl90ZXN0Ml9wayBQUklNQVJZIEtFWSAoaWQsIHZh bGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworSU5TRVJUIElOVE8gZm9yX3BvcnRpb25fb2Zf dGVzdDIKK1ZBTFVFUworKCdbMSwyKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDItMDMnLCAnb25l JyksCisoJ1sxLDIpJywgJzIwMTgtMDItMDQnLCAnMjAxOC0wMy0wMycsICdvbmUnKSwKKygnWzEs MiknLCAnMjAxOC0wMy0wMycsICcyMDE4LTA0LTA0JywgJ29uZScpLAorKCdbMiwzKScsICcyMDE4 LTAxLTAxJywgJzIwMTgtMDUtMDEnLCAndHdvJyksCisoJ1szLDQpJywgJzIwMTgtMDEtMDEnLCBu dWxsLCAndGhyZWUnKTsKKzsKKworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCBu YW1lID0gJ29uZV4xJworV0hFUkUgaWQgPSAnWzEsMiknOworCitERUxFVEUgRlJPTSBmb3JfcG9y dGlvbl9vZl90ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xNScg VE8gJzIwMTgtMDItMTUnCitXSEVSRSBpZCA9ICdbMiwzKSc7CisKKy0tIFNldHRpbmcgdGhlIHN0 YXJ0IGNvbHVtbiBmYWlsczoKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xMCcgVE8gJzIwMTgtMDItMTAnCitTRVQgdmFs aWRfZnJvbSA9ICcyMDE4LTAyLTAxJworV0hFUkUgaWQgPSAnWzEsMiknOworCistLSBTZXR0aW5n IHRoZSBlbmQgY29sdW1uIGZhaWxzOgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NF VCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMScKK1dIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gU2V0 dGluZyB0aGUgZ2VuZXJhdGVkIGNvbHVtbiBmYWlsczoKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90 ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xMCcgVE8gJzIwMTgt MDItMTAnCitTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDItMDEsMjAxOC0wMi0wMyknCitXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOworCiAt LSBUZXN0IHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZQogCiBDUkVBVEUgVFlQRSBteWRhdGVyYW5n ZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9z cWwvcGVyaW9kcy5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wZXJpb2RzLnNxbApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMDRhMzAxMTBkZWMKLS0tIC9kZXYvbnVs bAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wZXJpb2RzLnNxbApAQCAtMCwwICsxLDE5OCBA QAorLyogU3lzdGVtIHBlcmlvZHMgYXJlIG5vdCBpbXBsZW1lbnRlZCAqLworY3JlYXRlIHRhYmxl IHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHN5c3RlbV90aW1l IChkcywgZGUpKTsKKworLyogUGVyaW9kcyBtdXN0IHNwZWNpZnkgYWN0dWFsIGNvbHVtbnMgKi8K K2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZv ciBwIChib2d1cywgZGUpKTsKK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwg ZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywgYm9ndXMpKTsKKworLyogRGF0YSB0eXBlcyBtdXN0 IG1hdGNoIGV4YWN0bHkgKi8KK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwg ZGUgdGltZXN0YW1wLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworY3JlYXRlIHRhYmxlIHB0IChp ZCBpbnRlZ2VyLCBkcyB0ZXh0IGNvbGxhdGUgIkMiLCBkZSB0ZXh0IGNvbGxhdGUgIlBPU0lYIiwg cGVyaW9kIGZvciBwIChkcywgZGUpKTsKKworLyogUGVyaW9kcyBtdXN0IGhhdmUgYSBkZWZhdWx0 IEJUcmVlIG9wZXJhdG9yIGNsYXNzICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRz IHhtbCwgZGUgeG1sLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworCisvKiBQZXJpb2QgYW5kIGNv bHVtbiBuYW1lcyBhcmUgaW4gdGhlIHNhbWUgbmFtZXNwYWNlICovCitjcmVhdGUgdGFibGUgcHQg KGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgY3RpZCAoZHMsIGRlKSk7 CitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBm b3IgaWQgKGRzLCBkZSkpOworCisvKiBQZXJpb2QgbmFtZSBjYW4ndCBiZSBnaXZlbiBtb3JlIHRo YW4gb25jZSAqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRl LCBwZXJpb2QgZm9yIHAgKGRzLCBkZSksIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CisKKy8qIFBl cmlvZCBjYW4ndCB1c2UgdGhlIHNhbWUgY29sdW0gZm9yIHN0YXJ0IGFuZCBlbmQqLworY3JlYXRl IHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRz LCBkcykpOworCisvKiBOb3cgbWFrZSBvbmUgdGhhdCB3b3JrcyAqLworY3JlYXRlIHRhYmxlIHB0 IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOwor LyogSXRzIGdlbmVyYXRlZCBjb2x1bW4gbG9va3MgZ29vZCAqLworc2VsZWN0IGF0dG5hbWUsIGF0 dHR5cGlkOjpyZWd0eXBlLCBhdHRub3RudWxsLCBhdHRnZW5lcmF0ZWQgZnJvbSBwZ19hdHRyaWJ1 dGUgd2hlcmUgYXR0cmVsaWQgPSAncHQnOjpyZWdjbGFzcyBhbmQgYXR0bmFtZSA9ICdwJzsKK3Nl bGVjdCBjb25uYW1lLCBjb250eXBlIGZyb20gcGdfY29uc3RyYWludCB3aGVyZSBjb25yZWxpZCA9 ICdwdCc6OnJlZ2NsYXNzIG9yZGVyIGJ5IGNvbm5hbWU7CisvKiBJdCBhcHBlYXJzIGluIHRoZSBp bmZvcm1hdGlvbl9zY2hlbWEgKi8KK3NlbGVjdCAqIGZyb20gaW5mb3JtYXRpb25fc2NoZW1hLnBl cmlvZHM7CisKKy8qIFNFTEVDVCAqIGV4Y2x1ZGVzIHRoZSBQRVJJT0QgKi8KK2luc2VydCBpbnRv IHB0IHZhbHVlcyAoMSwgJzIwMDAtMDEtMDEnLCAnMjAwMS0wMS0wMScpOworc2VsZWN0ICogZnJv bSBwdDsKKworLyogWW91IGNhbiBnZXQgaXQgaWYgeW91IHdhbnQgKi8KK3NlbGVjdCAqLCBwIGZy b20gcHQ7CisKKy8qIFlvdSBjYW4gY29tbWVudCBvbiBpdCAqLworY29tbWVudCBvbiBwZXJpb2Qg cHQucCBpcyAndGVzdCBjb21tZW50JzsKK3NlbGVjdCBvYmpfZGVzY3JpcHRpb24oKHNlbGVjdCBv aWQgZnJvbSBwZ19wZXJpb2Qgd2hlcmUgcGVycmVsaWQgPSAncHQnOjpyZWdjbGFzcyBhbmQgcGVy bmFtZSA9ICdwJyksICdwZ19wZXJpb2QnKTsKKworLyogVHdvIGFyZSBva2F5ICovCitjcmVhdGUg dGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAxIChk cywgZGUpLCBwZXJpb2QgZm9yIHAyIChkcywgZGUpKTsKK2Ryb3AgdGFibGUgcHQyOworCisvKiBT a2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IHdvcmtzICovCitjcmVhdGUgdGFibGUgcHQy IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBub3QgbnVsbCBnZW5l cmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkLCBwZXJpb2QgZm9yIHAg KGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkpOworXGQgcHQyCitkcm9wIHRhYmxlIHB0 MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUg Y29sIGlzbid0IHRoZXJlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRl LCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkp OworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBv cHRpb24gaGFzIGFuIGludmFsaWQgdmFsdWUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVn ZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlz dHMgPSAnd2hhdGV2ZXInKSk7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZh aWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgTk9UIE5VTEwgKi8KK2NyZWF0ZSB0YWJsZSBw dDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAgZGF0ZXJhbmdlIGdlbmVyYXRlZCBh bHdheXMgYXMgKGRhdGVyYW5nZShkcywgZGUpKSBzdG9yZWQsIHBlcmlvZCBmb3IgcCAoZHMsIGRl KSB3aXRoIChjb2xleGlzdHMgPSB0cnVlKSk7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBj b2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgR0VORVJBVEVEICovCitjcmVh dGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBu b3QgbnVsbCwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpKTsK Ky8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUgY29s dW1uIGlzIEdFTkVSQVRFRCBidXQgd2l0aCB0aGUgd3JvbmcgZXhwcmVzc2lvbiAqLworLS0gVE9E TzoKKy0tIGNyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAg ZGF0ZXJhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5nZShkZSwgZHMp KSBzdG9yZWQsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0cnVlKSk7 CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNv bHVtbiBpcyB0aGUgd3JvbmcgdHlwZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwg ZHMgZGF0ZSwgZGUgZGF0ZSwgcCB0c3JhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMg KHRzcmFuZ2UoZHMsIGRlKSkgc3RvcmVkLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29s ZXhpc3RzID0gdHJ1ZSkpOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWls cyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgaW5oZXJpdGVkICovCitjcmVhdGUgdGFibGUgcHQycGFy ZW50IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBub3QgbnVsbCBn ZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkKTsKK2NyZWF0ZSB0 YWJsZSBwdDIgKHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0cnVlKSkg aW5oZXJpdHMgKHB0MnBhcmVudCk7Citkcm9wIHRhYmxlIHB0MnBhcmVudDsKKworCisvKgorICog QUxURVIgVEFCTEUgdGVzdHMKKyAqLworYWx0ZXIgdGFibGUgcHQgZHJvcCBwZXJpb2QgZm9yIHA7 CithbHRlciB0YWJsZSBwdCBhZGQgcGVyaW9kIGZvciBzeXN0ZW1fdGltZSAoZHMsIGRlKTsKK2Fs dGVyIHRhYmxlIHB0IGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSk7CisvKiBJdHMgZ2VuZXJhdGVk IGNvbHVtbiBsb29rcyBnb29kICovCitzZWxlY3QgYXR0bmFtZSwgYXR0dHlwaWQ6OnJlZ3R5cGUs IGF0dG5vdG51bGwsIGF0dGdlbmVyYXRlZCBmcm9tIHBnX2F0dHJpYnV0ZSB3aGVyZSBhdHRyZWxp ZCA9ICdwdCc6OnJlZ2NsYXNzIGFuZCBhdHRuYW1lID0gJ3AnOworc2VsZWN0IGNvbm5hbWUsIGNv bnR5cGUgZnJvbSBwZ19jb25zdHJhaW50IHdoZXJlIGNvbnJlbGlkID0gJ3B0Jzo6cmVnY2xhc3Mg b3JkZXIgYnkgY29ubmFtZTsKKworLyogQWRkaW5nIGEgc2Vjb25kIG9uZSAqLworY3JlYXRlIHRh YmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwMSAoZHMs IGRlKSk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcDIgKGRzLCBkZSk7Citkcm9w IHRhYmxlIHB0MjsKKworLyogQ2FuJ3QgZHJvcCBpdHMgY29sdW1ucyAqLworYWx0ZXIgdGFibGUg cHQgZHJvcCBjb2x1bW4gZHM7CithbHRlciB0YWJsZSBwdCBkcm9wIGNvbHVtbiBkZTsKKworLyog Q2FuJ3QgY2hhbmdlIHRoZSBkYXRhIHR5cGVzICovCithbHRlciB0YWJsZSBwdCBhbHRlciBjb2x1 bW4gZHMgdHlwZSB0aW1lc3RhbXA7CithbHRlciB0YWJsZSBwdCBhbHRlciBjb2x1bW4gZHMgdHlw ZSB0aW1lc3RhbXA7CisKKy8qIGNvbHVtbi9wZXJpb2QgbmFtZXNwYWNlIGNvbmZsaWN0cyAqLwor YWx0ZXIgdGFibGUgcHQgYWRkIGNvbHVtbiBwIGludGVnZXI7CithbHRlciB0YWJsZSBwdCByZW5h bWUgY29sdW1uIGlkIHRvIHA7CithbHRlciB0YWJsZSBwdCBhZGQgcGVyaW9kIGZvciB0YWJsZW9p ZCAoZHMsIGRlKTsKK2FsdGVyIHRhYmxlIHB0IGFkZCBwZXJpb2QgZm9yICIuLi4uLi4uLnBnLmRy b3BwZWQuNC4uLi4uLi4uIiAoZHMsIGRlKTsKKworLyogYWRkaW5nIGNvbHVtbnMgYW5kIHRoZSBw ZXJpb2QgYXQgdGhlIHNhbWUgdGltZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlcik7 CithbHRlciB0YWJsZSBwdDIgYWRkIGNvbHVtbiBkcyBkYXRlLCBhZGQgY29sdW1uIGRlIGRhdGUs IGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSk7Citkcm9wIHRhYmxlIHB0MjsKKworLyogQW1iaWd1 b3VzIHJhbmdlIHR5cGVzIHJhaXNlIGFuIGVycm9yICovCitjcmVhdGUgdHlwZSBteWRhdGVyYW5n ZSBhcyByYW5nZShzdWJ0eXBlPWRhdGUpOworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50LCBkcyBk YXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworCisvKiBZb3UgY2FuIGdpdmUg YW4gZXhwbGljaXQgcmFuZ2UgdHlwZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50LCBkcyBk YXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAocmFuZ2V0eXBlID0gJ215 ZGF0ZXJhbmdlJykpOworZHJvcCB0eXBlIG15ZGF0ZXJhbmdlOworZHJvcCB0eXBlIG15ZGF0ZXJh bmdlIGNhc2NhZGU7Citkcm9wIHRhYmxlIHB0MjsKK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludCwg ZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKHJhbmdldHlwZSA9 ICdkYXRlcmFuZ2UnKSk7CisKKy8qIFJhbmdlIHR5cGUgaXMgbm90IGZvdW5kICovCitjcmVhdGUg dGFibGUgcHQzIChpZCBpbnQsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRl KSB3aXRoIChyYW5nZXR5cGUgPSAnbm90YXJhbmdlJykpOworCisvKiBSYW5nZSB0eXBlIGlzIHRo ZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFibGUgcHQzIChpZCBpbnQsIGRzIGRhdGUsIGRlIGRh dGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChyYW5nZXR5cGUgPSAndHN0enJhbmdlJykp OworZHJvcCB0YWJsZSBwdDI7CisKKy8qIFBlcmlvZCBjYW4ndCB1c2UgdGhlIHNhbWUgY29sdW0g Zm9yIHN0YXJ0IGFuZCBlbmQqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0 ZSwgZGUgZGF0ZSk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRzKTsK K2Ryb3AgdGFibGUgcHQyOworCisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IHdv cmtzICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBw IGRhdGVyYW5nZSBub3QgbnVsbCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRl KSkgc3RvcmVkKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpIHdp dGggKGNvbGV4aXN0cyA9IHRydWUpOworXGQgcHQyCitkcm9wIHRhYmxlIHB0MjsKKy8qIFNraXAg Y3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUgY29sIGlzbid0IHRo ZXJlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlKTsK K2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0 cyA9IHRydWUpOworZHJvcCB0YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBj b2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIG9wdGlvbiBoYXMgYW4gaW52YWxpZCB2YWx1ZSAqLwor Y3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFu Z2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkpIHN0b3Jl ZCk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xl eGlzdHMgPSAnd2hhdGV2ZXInKTsKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBH RU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90IE5PVCBOVUxM ICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRh dGVyYW5nZSBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkKTsK K2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0 cyA9IHRydWUpOworZHJvcCB0YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBj b2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgR0VORVJBVEVEICovCitjcmVh dGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBu b3QgbnVsbCk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRo IChjb2xleGlzdHMgPSB0cnVlKTsKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBH RU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgR0VORVJBVEVEIGJ1 dCB3aXRoIHRoZSB3cm9uZyBleHByZXNzaW9uICovCistLSBUT0RPOgorLS0gY3JlYXRlIHRhYmxl IHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwg Z2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRlLCBkcykpIHN0b3JlZCk7CistLSBhbHRl ciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0 cnVlKTsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0 aGUgY29sdW1uIGlzIHRoZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRl Z2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIHRzcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5 cyBhcyAodHNyYW5nZShkcywgZGUpKSBzdG9yZWQpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJp b2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7Citkcm9wIHRhYmxlIHB0 MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUg Y29sdW1uIGlzIGluaGVyaXRlZCAqLworY3JlYXRlIHRhYmxlIHB0MnBhcmVudCAoaWQgaW50ZWdl ciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5 cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkpIHN0b3JlZCk7CitjcmVhdGUgdGFibGUgcHQyICgpIGlu aGVyaXRzIChwdDJwYXJlbnQpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRz LCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7Citkcm9wIHRhYmxlIHB0MjsKK2Ryb3AgdGFi bGUgcHQycGFyZW50OworCisvKiBDUkVBVEUgVEFCTEUgKExJS0UgLi4uKSAqLworCisvKiBQZXJp b2RzIGFyZSBub3QgY29waWVkIGJ5IExJS0UsIHNvIHRoZWlyIGNvbHVtbnMgYXJlbid0IGVpdGhl ciAqLworY3JlYXRlIHRhYmxlIHB0MiAobGlrZSBwdCk7CitcZCBwdDIKK2Ryb3AgdGFibGUgcHQy OworCisvKiBDYW4gYWRkIGEgcGVyaW9kIHJlZmVycmluZyB0byBMSUtFJ2QgY29sdW1ucyAqLwor Y3JlYXRlIHRhYmxlIG5vdF9wIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlKTsKK2NyZWF0 ZSB0YWJsZSBwdDIgKGxpa2Ugbm90X3AsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitcZCBwdDIK K2Ryb3AgdGFibGUgcHQyOworCisvKiBDYW4gYWRkIGEgcGVyaW9kIHdpdGggdGhlIHNhbWUgbmFt ZSAqLworY3JlYXRlIHRhYmxlIHB0MiAobGlrZSBwdCwgcGVyaW9kIGZvciBwIChkcywgZGUpKTsK K1xkIHB0MgorZHJvcCB0YWJsZSBwdDI7CisKKy8qIENhbiBhZGQgYSBwZXJpb2Qgd2l0aCBhIGRp ZmZlcmVudCBuYW1lICovCitjcmVhdGUgdGFibGUgcHQyIChsaWtlIHB0LCBwZXJpb2QgZm9yIHAy IChkcywgZGUpKTsKK1xkIHB0MgorZHJvcCB0YWJsZSBwdDI7CisKKy8qIENhbid0IGFkZCBhIHBl cmlvZCB3aG9zZSBuYW1lIGNvbmZsaWN0cyB3aXRoIGEgTElLRSdkIGNvbHVtbiAqLworY3JlYXRl IHRhYmxlIHB0MiAobGlrZSBwdCwgcGVyaW9kIGZvciBpZCAoZHMsIGRlKSk7CisKKy8qIENSRUFU RSBUQUxCRSBJTkhFUklUUyAqLworCisvKiBDYW4ndCBpbmhlcml0IGZyb20gYSB0YWJsZSB3aXRo IGEgcGVyaW9kICovCitjcmVhdGUgdGFibGUgcHQyIChuYW1lIHRleHQpIGluaGVyaXRzIChwdCk7 CisKKy8qIENhbid0IGluaGVyaXQgd2l0aCBhIHBlcmlvZCAqLworY3JlYXRlIHRhYmxlIHB0MiAo ZDJzIGRhdGUsIGQyZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGQycywgZDJlKSkgaW5oZXJpdHMgKG5v dF9wKTsKKworZHJvcCB0YWJsZSBub3RfcDsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mv c3FsL3ByaXZpbGVnZXMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvcHJpdmlsZWdlcy5zcWwK aW5kZXggYWU1N2YyMzMzMTQuLmMzNmIxZDM0YWY1IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9wcml2aWxlZ2VzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wcml2aWxl Z2VzLnNxbApAQCAtNzgzLDYgKzc4MywzNCBAQCBVUERBVEUgdDEgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBjMSA9ICdbMgogU0VU IFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CiBEUk9QIFRBQkxFIHQx OwogCistLSB0ZXN0IGNvbHVtbi1sZXZlbCBwcml2aWxlZ2VzIG9uIHRoZSBQRVJJT0QgdXNlZCBp biBGT1IgUE9SVElPTiBPRgorU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZf dXNlcjE7CitDUkVBVEUgVEFCTEUgdDEgKAorICBjMSBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20g dGltZXN0YW1wLAorICB2YWxpZF90aWwgdGltZXN0YW1wLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorCUNPTlNUUkFJTlQgdDFwayBQUklNQVJZIEtFWSAo YzEsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworR1JBTlQgU0VMRUNUIE9OIHQxIFRP IHJlZ3Jlc3NfcHJpdl91c2VyMjsKK0dSQU5UIFNFTEVDVCBPTiB0MSBUTyByZWdyZXNzX3ByaXZf dXNlcjM7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXI0OworR1JBTlQg U0VMRUNUIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyNTsKK0dSQU5UIFVQREFURSAoYzEpIE9O IHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMjsKK0dSQU5UIFVQREFURSAoYzEsIHZhbGlkX2F0KSBP TiB0MSBUTyByZWdyZXNzX3ByaXZfdXNlcjM7CitHUkFOVCBVUERBVEUgKGMxLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyNDsKK0dSQU5UIFVQREFURSAo YzEsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgdmFsaWRfYXQpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJp dl91c2VyNTsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIyOwor VVBEQVRFIHQxIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDEtMDEnIFRPICcy MDAxLTAxLTAxJyBTRVQgYzEgPSAnWzIsMyknOworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiBy ZWdyZXNzX3ByaXZfdXNlcjM7CitVUERBVEUgdDEgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBjMSA9ICdbMiwzKSc7CitTRVQgU0VT U0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyNDsKK1VQREFURSB0MSBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMx ID0gJ1syLDMpJzsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXI1 OworVVBEQVRFIHQxIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDEtMDEnIFRP ICcyMDAxLTAxLTAxJyBTRVQgYzEgPSAnWzIsMyknOworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElP TiByZWdyZXNzX3ByaXZfdXNlcjE7CitEUk9QIFRBQkxFIHQxOworCiAtLSB0ZXN0IGNvbHVtbi1s ZXZlbCBwcml2aWxlZ2VzIHdoZW4gaW52b2x2ZWQgd2l0aCBERUxFVEUKIFNFVCBTRVNTSU9OIEFV VEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIxOwogQUxURVIgVEFCTEUgYXRlc3Q2IEFERCBD T0xVTU4gdGhyZWUgaW50ZWdlcjsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dp dGhvdXRfb3ZlcmxhcHMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvd2l0aG91dF9vdmVybGFw cy5zcWwKaW5kZXggMjI0ZGRlZjg0MzAuLjE4ODA0MWUxZDA3IDEwMDY0NAotLS0gYS9zcmMvdGVz dC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNz L3NxbC93aXRob3V0X292ZXJsYXBzLnNxbApAQCAtOTEsNiArOTEsMzEgQEAgQ1JFQVRFIFRBQkxF IHRlbXBvcmFsX3JuZzIgKAogU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVmKG9pZCkgRlJPTSBw Z19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfcm5nMl9wayc7CiBTRUxFQ1Qg cGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hF UkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9ybmcyX3BrJzsKIAorLS0gUEsgd2l0aCBvbmUgY29sdW1u IHBsdXMgYSBQRVJJT0Q6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGVyICgKKyAgaWQgaW50NHJh bmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFs X3Blcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOwor XGQgdGVtcG9yYWxfcGVyCitTRUxFQ1QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBn X2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXJfcGsnOworU0VMRUNUIHBn X2dldF9pbmRleGRlZihjb25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJF IGNvbm5hbWUgPSAndGVtcG9yYWxfcGVyX3BrJzsKKworLS0gUEsgd2l0aCB0d28gY29sdW1ucyBw bHVzIGEgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjIgKAorICBpZDEgaW50NHJh bmdlLAorICBpZDIgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBk YXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX3BlcjJfcGsgUFJJTUFSWSBLRVkgKGlkMSwgaWQyLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xkIHRlbXBvcmFsX3BlcjIKK1NFTEVDVCBwZ19nZXRf Y29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3Rl bXBvcmFsX3BlcjJfcGsnOworU0VMRUNUIHBnX2dldF9pbmRleGRlZihjb25pbmRpZCwgMCwgdHJ1 ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfcGVyMl9wayc7 CisKIC0tIFBLIHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZToKIENSRUFURSBUWVBFIHRleHRyYW5n ZTIgQVMgcmFuZ2UgKHN1YnR5cGU9dGV4dCwgY29sbGF0aW9uPSJDIik7CiBDUkVBVEUgVEFCTEUg dGVtcG9yYWxfcm5nMyAoCkBAIC0xNjksNiArMTk0LDMzIEBAIFNFTEVDVCBwZ19nZXRfY29uc3Ry YWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3RlbXBvcmFs X3JuCiBTRUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBnX2Nv bnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9ybmczX3VxJzsKIERST1AgVEFCTEUg dGVtcG9yYWxfcm5nMzsKIAorLS0gVU5JUVVFIHdpdGggb25lIGNvbHVtbiBwbHVzIGEgUEVSSU9E OgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlk X2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZh bGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBVTklR VUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xkIHRlbXBvcmFsX3BlcjMK K1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVS RSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjNfdXEnOworU0VMRUNUIHBnX2dldF9pbmRleGRlZihj b25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVt cG9yYWxfcGVyM191cSc7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CisKKy0tIFVOSVFVRSB3 aXRoIHR3byBjb2x1bW5zIHBsdXMgYSBQRVJJT0Q6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGVy MyAoCisgIGlkMSBpbnQ0cmFuZ2UsCisgIGlkMiBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0 ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20s IHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBVTklRVUUgKGlkMSwg aWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xkIHRlbXBvcmFsX3BlcjMKK1NF TEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBj b25uYW1lID0gJ3RlbXBvcmFsX3BlcjNfdXEnOworU0VMRUNUIHBnX2dldF9pbmRleGRlZihjb25p bmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9y YWxfcGVyM191cSc7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CisKIC0tIFVOSVFVRSB3aXRo IGEgY3VzdG9tIHJhbmdlIHR5cGU6CiBDUkVBVEUgVFlQRSB0ZXh0cmFuZ2UyIEFTIHJhbmdlIChz dWJ0eXBlPXRleHQsIGNvbGxhdGlvbj0iQyIpOwogQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzMg KApAQCAtMjQ1LDYgKzI5Nyw1OCBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMKICAgVU5JUVVFIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CiBEUk9QIFRBQkxFIHRlbXBvcmFsMzsKIAor LS0gUFJJTUFSWSBLRVkgd2l0aCBQRVJJT0QgYWxyZWFkeSB0aGVyZQorQ1JFQVRFIFRBQkxFIHRl bXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90 aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQor KTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfcGsK KyAgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKK1xkIHRlbXBv cmFsMworRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CisKKy0tIFBSSU1BUlkgS0VZIHdpdGggUEVSSU9E IHRvbworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRf ZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMwor ICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrCisgIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworCist LSBVTklRVUUgd2l0aCBQRVJJT0QgYWxyZWFkeSB0aGVyZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFs MyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0 ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorKTsKK0FM VEVSIFRBQkxFIHRlbXBvcmFsMworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfdXEKKyAgVU5J UVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMKK0RST1Ag VEFCTEUgdGVtcG9yYWwzOworCistLSBVTklRVUUgd2l0aCBQRVJJT0QgdG9vCitDUkVBVEUgVEFC TEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZh bGlkX3RpbCBkYXRlCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisgIEFERCBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbDNfdXEKKyAgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitcZCB0 ZW1wb3JhbDMKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworCiAtLQogLS0gcmFuZ2UgUEs6IHRlc3Qg d2l0aCBleGlzdGluZyByb3dzCiAtLQpAQCAtNjE1LDYgKzcxOSwyMTIgQEAgV0hFUkUgICBpZCA9 ICdbMSwyKScgQU5EIHZhbGlkX2F0IElTIE5VTEw7CiBTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX21s dHJuZzMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwogRFJPUCBUQUJMRSB0ZW1wb3JhbF9tbHRybmcz OwogCistLQorLS0gUEVSSU9EIFBLOiB0ZXN0IHdpdGggZXhpc3Rpbmcgcm93cworLS0KKworQUxU RVIgVEFCTEUgdGVtcG9yYWxfcGVyIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGs7CisK Ky0tIG9rYXk6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0wMycpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAx OC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDEnLCBOVUxM KTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJf cGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX3BlciBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyX3BrOworCistLSBz aG91bGQgZmFpbDoKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0w MS0wNScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIgQUREIENPTlNUUkFJTlQgdGVtcG9y YWxfcGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitS T0xMQkFDSzsKKy0tIHJlamVjdHMgZW1wdHk6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9y YWxfcGVyIERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdDsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMyw0KScsICcyMDIwLTAx LTAxJywgJzIwMjAtMDEtMDEnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyIEFERCBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpOworUk9MTEJBQ0s7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9wZXIgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyX3BrIFBSSU1B UlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXI7CisKKy0tCistLSBQRVJJT0QgUEs6IHRlc3QgaW5zZXJ0cworLS0KKworLS0gb2th eToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAzJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIp JywgJzIwMTgtMDMtMDMnLCAnMjAxOC0wNC0wNCcpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAx JywgJzIwMTgtMDEtMDUnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAxOC0wMS0wMScsIE5VTEwpOworCist LSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoTlVMTCwgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworLS0gcmVqZWN0cyBlbXB0 eToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzMsNCknLCAnMjAyMC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSBQRVJJT0Qg UEs6IHRlc3QgdXBkYXRlcworLS0KKworLS0gdXBkYXRlIHRoZSBzY2FsYXIgcGFydAorVVBEQVRF ICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAgaWQgPSAnWzExLDEyKScKK1dIRVJFICAgaWQgPSAnWzEs MiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKKy0tIHVwZGF0ZSB0 aGUgUEVSSU9EIGJvdW5kcworVVBEQVRFICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAgdmFsaWRfZnJv bSA9ICcyMDIwLTAxLTAxJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMjEtMDEtMDEnCitXSEVS RSAgIGlkID0gJ1sxMSwxMiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0 ZTsKKy0tIHVwZGF0ZSBib3RoIGF0IG9uY2UKK1VQREFURSAgdGVtcG9yYWxfcGVyCitTRVQgICAg IGlkID0gJ1syMSwyMiknLAorICAgICAgICB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLAorICAg ICAgICB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMycKK1dIRVJFICAgaWQgPSAnWzExLDEyKScKK0FO RCAgICAgdmFsaWRfYXQgQD4gJzIwMjAtMDEtMTUnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9wZXIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gc2hvdWxkIGZhaWw6CitVUERBVEUg IHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAgICAgIHZhbGlkX2Zyb20g PSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTA1JworV0hFUkUg ICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCB0aGUgc2NhbGFyIHBhcnQgdG8gTlVMTAorVVBEQVRF ICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAgaWQgPSBOVUxMLAorICAgICAgICB2YWxpZF9mcm9tID0g JzIwMTgtMDMtMDUnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAxOC0wNS0wNScKK1dIRVJFICAg aWQgPSAnWzIxLDIyKSc7CistLSBzZXQgYSBQRVJJT0QgYm91bmQgdG8gTlVMTCAob2theSkKK1VQ REFURSAgdGVtcG9yYWxfcGVyCitTRVQgICAgIGlkID0gJ1sxLDIpJywKKyAgICAgICAgdmFsaWRf ZnJvbSA9ICcyMDE4LTA0LTA0JywKKyAgICAgICAgdmFsaWRfdGlsID0gTlVMTAorV0hFUkUgICBp ZCA9ICdbMjEsMjIpJzsKKy0tIHJlamVjdHMgZW1wdHk6CitVUERBVEUgIHRlbXBvcmFsX3Blcgor U0VUICAgICBpZCA9ICdbMjEsMjIpJywKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDIwLTAxLTAx JywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMjAtMDEtMDEnCitXSEVSRSAgIGlkID0gJ1sxLDIp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKwor LS0KKy0tIFBFUklPRCBVUTogdGVzdCB3aXRoIGV4aXN0aW5nIHJvd3MKKy0tCisKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9wZXIzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpCispOworCistLSBva2F5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcy MDE4LTAyLTAzJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCkn LCAnMjAxOC0wMS0wMScsIE5VTEwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAnMjAxOC0wMS0wMScsICcyMDE4LTAx LTA1Jyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIzIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X3BlcjNfdXEgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9wZXIzIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxOworCist LSBzaG91bGQgZmFpbDoKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAxLTAxJywgJzIw MTgtMDEtMDUnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9wZXIzX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpOwor Uk9MTEJBQ0s7CistLSByZWplY3RzIGVtcHR5OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBv cmFsX3BlcjMgRFJPUCBQRVJJT0QgRk9SIHZhbGlkX2F0OworICBJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMyw0KScsICcyMDIw LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQg UEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK1JPTExCQUNLOwor QUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3Vx IFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpOworREVMRVRFIEZST00gdGVt cG9yYWxfcGVyMzsKKworLS0KKy0tIFBFUklPRCBVUTogdGVzdCBpbnNlcnRzCistLQorCistLSBv a2F5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAzJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb MSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgt MDEtMDEnLCAnMjAxOC0wMS0wNScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAxOC0wMS0wMScsIE5VTEwp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTIChOVUxMLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CisKKy0tIHNob3VsZCBm YWlsOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CistLSByZWpl Y3RzIGVtcHR5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAyMC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQor LS0gUEVSSU9EIFVROiB0ZXN0IHVwZGF0ZXMKKy0tCisKKy0tIHVwZGF0ZSB0aGUgc2NhbGFyIHBh cnQKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9ICdbMTEsMTIpJworV0hFUkUg ICBpZCA9ICdbMSwyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOwor LS0gdXBkYXRlIHRoZSBQRVJJT0QgYm91bmRzCitVUERBVEUgIHRlbXBvcmFsX3BlcjMKK1NFVCAg ICAgdmFsaWRfZnJvbSA9ICcyMDIwLTAxLTAxJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMjEt MDEtMDEnCitXSEVSRSAgIGlkID0gJ1sxMSwxMiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcyMDE4 LTAxLTE1Jzo6ZGF0ZTsKKy0tIHVwZGF0ZSBib3RoIGF0IG9uY2UKK1VQREFURSAgdGVtcG9yYWxf cGVyMworU0VUICAgICBpZCA9ICdbMjEsMjIpJywKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDE4 LTAxLTAyJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMTgtMDItMDMnCitXSEVSRSAgIGlkID0g J1sxMSwxMiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcyMDIwLTAxLTE1Jzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBzaG91bGQg ZmFpbDoKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAg ICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4 LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCB0aGUgc2NhbGFyIHBhcnQg dG8gTlVMTCAob2theSkKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9IE5VTEws CisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAyMC0wMS0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9 ICcyMDIxLTAxLTAxJworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCBhIFBFUklPRCBi b3VuZCB0byBOVUxMIChva2F5KQorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAgIGlkID0g J1sxLDIpJywKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDE4LTA0LTA0JywKKyAgICAgICAgdmFs aWRfdGlsID0gTlVMTAorV0hFUkUgICBpZCBJUyBOVUxMIEFORCB2YWxpZF9hdCBAPiAnMjAyMC0w Ni0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworLS0gc2hvdWxkIGZhaWw6CitVUERBVEUgIHRlbXBvcmFsX3BlcjMKK1NFVCAgICAg dmFsaWRfZnJvbSA9ICcyMDE4LTAzLTAxJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMTgtMDUt MDUnCitXSEVSRSAgIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfdGlsIElTIE5VTEw7CistLSByZWpl Y3RzIGVtcHR5OgorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAgIHZhbGlkX2Zyb20gPSAn MjAyMC0wMS0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDIwLTAxLTAxJworV0hFUkUgICBp ZCA9ICdbMSwyKScgQU5EIHZhbGlkX3RpbCBJUyBOVUxMOworLS0gc3RpbGwgcmVqZWN0cyBlbXB0 eSB3aGVuIHNjYWxhciBwYXJ0IGlzIE5VTEw6CitVUERBVEUgIHRlbXBvcmFsX3BlcjMKK1NFVCAg ICAgaWQgPSBOVUxMLAorICAgICAgICB2YWxpZF9mcm9tID0gJzIwMjAtMDEtMDEnLAorICAgICAg ICB2YWxpZF90aWwgPSAnMjAyMC0wMS0wMScKK1dIRVJFICAgaWQgPSAnWzEsMiknIEFORCB2YWxp ZF90aWwgSVMgTlVMTDsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CisKIC0tCiAtLSB0ZXN0IGEgcmFu Z2Ugd2l0aCBib3RoIGEgUEsgYW5kIGEgVU5JUVVFIGNvbnN0cmFpbnQKIC0tCkBAIC02NjIsNiAr OTcyLDM3IEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xVTU4gdmFsaWRfYXQgRFJP UCBOT1QgTlVMTDsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xVTU4gdmFsaWRfYXQg VFlQRSB0c3R6cmFuZ2UgVVNJTkcgdHN0enJhbmdlKGxvd2VyKHZhbGlkX2F0KSwgdXBwZXIodmFs aWRfYXQpKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBSRU5BTUUgQ09MVU1OIHZhbGlkX2F0IFRP IHZhbGlkX3RocnU7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBDT0xVTU4gdmFsaWRfdGhy dTsKK1xkIHRlbXBvcmFsMworRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CisKK0NSRUFURSBUQUJMRSB0 ZW1wb3JhbDMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRf dGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCks CisgIENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbDMKK1NFTEVDVCBhdHRub3RudWxsIEZST00g cGdfYXR0cmlidXRlIFdIRVJFIGF0dHJlbGlkID0gJ3RlbXBvcmFsMyc6OnJlZ2NsYXNzIEFORCBh dHRuYW1lID0gJ3ZhbGlkX2F0JzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xVTU4g dmFsaWRfYXQgRFJPUCBOT1QgTlVMTDsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xV TU4gdmFsaWRfYXQgVFlQRSB0c3R6cmFuZ2UgVVNJTkcgdHN0enJhbmdlKGxvd2VyKHZhbGlkX2F0 KSwgdXBwZXIodmFsaWRfYXQpKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIENPTFVNTiB2 YWxpZF9hdDsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQ7 CitcZCB0ZW1wb3JhbDMKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworCistLSBTYW1lIHJlc3VsdHMg aWYgd2UgYWRkIHRoZSBQRVJJT0QgYW5kIFBLIGZyb20gQUxURVIgVEFCTEU6CitDUkVBVEUgVEFC TEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZh bGlkX3RpbCBkYXRlCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisgIEFERCBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbDNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKK1xk IHRlbXBvcmFsMworU0VMRUNUIGF0dG5vdG51bGwgRlJPTSBwZ19hdHRyaWJ1dGUgV0hFUkUgYXR0 cmVsaWQgPSAndGVtcG9yYWwzJzo6cmVnY2xhc3MgQU5EIGF0dG5hbWUgPSAndmFsaWRfYXQnOwor QUxURVIgVEFCTEUgdGVtcG9yYWwzIEFMVEVSIENPTFVNTiB2YWxpZF9hdCBEUk9QIE5PVCBOVUxM OwogRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CiAKIC0tCkBAIC05NjMsNiArMTMwNCwxMjEgQEAgU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9tbHRybmczIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKIAogRFJP UCBUQUJMRSB0ZW1wb3JhbF9tbHRybmczOwogCistLQorLS0gT04gQ09ORkxJQ1Q6IFBFUklPRHMK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwMC0wMS0wMScs ICcyMDEwLTAxLTAxJyk7CistLSB3aXRoIGEgY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0w MS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgRE8gTk9USElORzsKKy0tIGlkIG1hdGNo ZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0w MScpIE9OIENPTkZMSUNUIERPIE5PVEhJTkc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZs aWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1syLDMpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZMSUNU IERPIE5PVEhJTkc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsOworCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXI7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIp JywgJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpOworLS0gd2l0aCBhIGNvbmZsaWN0CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1sxLDIpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFs aWRfYXQpIERPIE5PVEhJTkc7CistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb MSwyKScsICcyMDEwLTAxLTAxJywgJzIwMjAtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlk X2F0KSBETyBOT1RISU5HOworLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb MiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlk X2F0KSBETyBOT1RISU5HOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIgT1JERVIgQlkgaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbDsKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb MSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBD T05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQg bm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04g Q09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gTk9USElORzsKKy0tIGRh dGUgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcy MDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8g Tk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWw7CisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAn MjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyk7CistLSB3aXRoIGEgY29uZmxpY3QKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEs MiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9h dCkgRE8gVVBEQVRFIFNFVCBpZCA9IEVYQ0xVREVELmlkICsgJ1syLDMpJzsKKy0tIGlkIG1hdGNo ZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0w MScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURF RC5pZCArICdbMyw0KSc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sy LDMpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRf YXQpIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbNCw1KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworCitU UlVOQ0FURSB0ZW1wb3JhbF9wZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMDAtMDEtMDEnLCAnMjAxMC0w MS0wMScpOworLS0gd2l0aCBhIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMDUtMDEtMDEnLCAn MjAwNi0wMS0wMScpIE9OIENPTkZMSUNUIE9OIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyX3BrIERP IFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMiwzKSc7CistLSBpZCBtYXRjaGVzIGJ1 dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDEwLTAxLTAxJywgJzIwMjAtMDEtMDEnKSBP TiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBVUERBVEUgU0VUIGlk ID0gRVhDTFVERUQuaWQgKyAnWzMsNCknOworLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGlj dAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBP TiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQu aWQgKyAnWzQsNSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIgT1JERVIgQlkgaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbDsKKworLS0gd2l0aCBhIFVOSVFVRSBjb25zdHJhaW50OgorCitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfcGVyMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJv bSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIFVOSVFVRSAo aWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworVFJVTkNBVEUgdGVtcG9yYWxfcGVy MzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1sxLDIpJywgJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpOworLS0gd2l0aCBh IGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBD T05GTElDVCBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIERPIE5PVEhJ Tkc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1 LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBETyBOT1RISU5HOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9wZXIzIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7CisK K1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIw MTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0w MScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gTk9USElORzsK Ky0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIz IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDEwLTAxLTAx JywgJzIwMjAtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5HOwor LS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0w MScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gTk9USElORzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsOworCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIzOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwMC0w MS0wMScsICcyMDEwLTAxLTAxJyk7CistLSB3aXRoIGEgY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywg JzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZMSUNUIE9OIENPTlNUUkFJTlQgdGVt cG9yYWxfcGVyM191cSBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIE9O IENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBETyBOT1RISU5HOworLS0gZGF0ZSBtYXRjaGVz IGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAx JykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIE5PVEhJTkc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkgaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbDsKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyMzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMDAt MDEtMDEnLCAnMjAxMC0wMS0wMScpOworLS0gd2l0aCBhIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScs ICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBE TyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzIsMyknOworLS0gaWQgbWF0Y2hlcyBi dXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScp IE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5p ZCArICdbMyw0KSc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwz KScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0 KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzQsNSknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wZXIzIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7CisKK1RS VU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAt MDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScs ICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3Vx IERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMiwzKSc7CistLSBpZCBtYXRjaGVz IGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAx JykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIFVQREFURSBT RVQgaWQgPSBFWENMVURFRC5pZCArICdbMyw0KSc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNv bmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05G TElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgRE8gVVBEQVRFIFNFVCBpZCA9IEVY Q0xVREVELmlkICsgJ1s0LDUpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBC WSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7 CisKIC0tCiAtLSB0ZXN0IEZLIGRlcGVuZGVuY2llcwogLS0KQEAgLTk4Niw2ICsxNDQyLDI5IEBA IEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIENPTFVNTiB2YWxpZF9hdCBDQVNDQURFOwogRFJP UCBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nOwogRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CiAKKy0t IGNhbid0IGRyb3AgYSBQRVJJT0QgcmVmZXJlbmNlZCBieSBhbiBGSywgdW5sZXNzIHdpdGggQ0FT Q0FERQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRf ZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0NSRUFURSBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisg IHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZh bGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwK KyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsMyAoaWQsIFBFUklP RCB2YWxpZF9hdCkKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBQRVJJT0QgRk9SIHZh bGlkX2F0OworQUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdCBD QVNDQURFOworRFJPUCBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyOworRFJPUCBUQUJMRSB0ZW1w b3JhbDM7CisKIC0tCiAtLSB0ZXN0IEZPUkVJR04gS0VZLCByYW5nZSByZWZlcmVuY2VzIHJhbmdl CiAtLQpAQCAtMTAxNiw2ICsxNDk1LDcgQEAgQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJy bmcgKAogICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChp ZCwgUEVSSU9EIHZhbGlkX2F0KQogKTsKK1xkIHRlbXBvcmFsX2ZrX3JuZzJybmcKIERST1AgVEFC TEUgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIAogLS0gd2l0aCBtaXNtYXRjaGVkIFBFUklPRCBjb2x1 bW5zOgpAQCAtMjU2Nyw0NyArMzA0NywyNTU1IEBAIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBCiBE RUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlk X2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21s dHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CiAKLS0tIEZLIHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZQorLS0KKy0tIHRlc3QgRk9SRUlHTiBL RVksIFBFUklPRCByZWZlcmVuY2VzIFBFUklPRAorLS0KIAotQ1JFQVRFIFRZUEUgbXlkYXRlcmFu Z2UgQVMgcmFuZ2Uoc3VidHlwZT1kYXRlKTsKKy0tIHRlc3QgdGFibGUgc2V0dXAKK0RST1AgVEFC TEUgdGVtcG9yYWxfcGVyOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlciAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorKTsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX3BlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsKKyAgUFJJTUFSWSBLRVkg KGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKIAotQ1JFQVRFIFRBQkxFIHRlbXBvcmFs X3JuZzMgKAorLS0gQ2FuJ3QgY3JlYXRlIGEgRksgd2l0aCBhIG1pc21hdGNoZWQgcmFuZ2UgdHlw ZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAogICBpZCBpbnQ0cmFuZ2UsCi0g IHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAotICBDT05TVFJBSU5UIHRlbXBvcmFsX3JuZzNfcGsgUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorICB2YWxpZF9mcm9tIGlu dCwKKyAgdmFsaWRfdGlsIGludCwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlk LCBQRVJJT0QgdmFsaWRfYXQpCiApOwotQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcycm5n ICgKKworLS0gd29ya3M6IFBFUklPRCBmb3IgYm90aCByZWZlcmVuY2VkIGFuZCByZWZlcmVuY2lu ZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAogICBpZCBpbnQ0cmFuZ2UsCi0g IHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBk YXRlLAogICBwYXJlbnRfaWQgaW50NHJhbmdlLAotICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19y bmcycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCi0g IENPTlNUUkFJTlQgdGVtcG9yYWxfZmszX3JuZzJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZCwgUEVSSU9EIHZhbGlkX2F0KQotICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMyAoaWQsIFBF UklPRCB2YWxpZF9hdCkgT04gREVMRVRFIENBU0NBREUKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFs aWRfYXQpCiApOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbOCw5KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7Ci1J TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazNfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1s1LDYpJywgbXlkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp LCAnWzgsOSknKTsKLURFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzMgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s4LDkp JzsKLVNFTEVDVCAqIEZST00gdGVtcG9yYWxfZmszX3JuZzJybmcgV0hFUkUgaWQgPSAnWzUsNikn OworXGQgdGVtcG9yYWxfZmtfcGVyMnBlcgogCi1EUk9QIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcy cm5nOwotRFJPUCBUQUJMRSB0ZW1wb3JhbF9ybmczOwotRFJPUCBUWVBFIG15ZGF0ZXJhbmdlOwor RFJPUCBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyOwogCi0tLQotLS0gRksgYmV0d2VlbiBwYXJ0 aXRpb25lZCB0YWJsZXM6IHJhbmdlcwotLS0KKy0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29s dW1uczoKIAotQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoCistLSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIFJF RkVSRU5DRVMgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3Jh bF9ma19wZXIycGVyICgKICAgaWQgaW50NHJhbmdlLAotICB2YWxpZF9hdCBkYXRlcmFuZ2UsCi0g IG5hbWUgdGV4dCwKLSAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJpdGlvbmVkX3JuZ19wayBQUklN QVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCi0pIFBBUlRJVElPTiBCWSBM SVNUIChpZCk7Ci1DUkVBVEUgVEFCTEUgdHAxIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3LDgp JywgJ1s5LDEwKScsICdbMTEsMTIpJywgJ1sxMywxNCknLCAnWzE1LDE2KScsICdbMTcsMTgpJywg J1sxOSwyMCknLCAnWzIxLDIyKScsICdbMjMsMjQpJyk7Ci1DUkVBVEUgVEFCTEUgdHAyIFBBUlRJ VElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1swLDEpJywg J1syLDMpJywgJ1s0LDUpJywgJ1s2LDcpJywgJ1s4LDkpJywgJ1sxMCwxMSknLCAnWzEyLDEzKScs ICdbMTQsMTUpJywgJ1sxNiwxNyknLCAnWzE4LDE5KScsICdbMjAsMjEpJywgJ1syMiwyMyknLCAn WzI0LDI1KScpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFs aWRfYXQsIG5hbWUpIFZBTFVFUwotICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywg JzIwMDAtMDItMDEnKSwgJ29uZScpLAotICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAyLTAx JywgJzIwMDAtMDMtMDEnKSwgJ29uZScpLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3Rp bCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2 YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJf cGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklP RCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2F0KQor KTsKKy0tIChwYXJlbnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgdmFsaWRfYXQpCist LSBib3RoIHNob3VsZCBzcGVjaWZ5IFBFUklPRDoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19w ZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3Rp bCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2 YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJf cGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlk X2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfYXQpCispOworLS0g KHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCist LSBGT1JFSUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX2ZrX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwK KyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1Ig dmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxf ZmtfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0Qg dmFsaWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxp Y2l0XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9t IGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCispOwor LS0gKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCkKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9t IGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3Bl ciAoaWQpCispOworLS0gKHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxpZF9h dCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJh bmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2Zr IEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlk LCBQRVJJT0QgdmFsaWRfYXQpCispOworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJl bmNlZCB0YWJsZToKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBb aW1wbGljaXRdCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlciAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lk IGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGls KSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXI7 CistLSAocGFyZW50X2lkKSBSRUZFUkVOQ0VTIFtpbXBsaWNpdF0KK0NSRUFURSBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisg IHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZh bGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwK KyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRf aWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CisKKy0tIHNob3VsZCBmYWlsIGJl Y2F1c2Ugb2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0NSRUFURSBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisg IHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZh bGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwK KyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRf aWQsIFBFUklPRCBwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQ RVJJT0QgaWQpCispOworCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFCTEUgdGVtcG9y YWxfcGVyMjsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIyICgKKyAgaWQxIGludDRyYW5nZSwK KyAgaWQyIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwK KyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9wZXIyX3BrIFBSSU1BUlkgS0VZIChpZDEsIGlkMiwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKyk7CisKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnBlciAo CisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwK KyAgcGFyZW50X2lkMSBpbnQ0cmFuZ2UsCisgIHBhcmVudF9pZDIgaW50NHJhbmdlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrMl9wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsgRk9SRUlHTiBL RVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRfYXQpCispOworXGQgdGVt cG9yYWxfZmsyX3BlcjJwZXIKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CisKKy0t CistLSB0ZXN0IEFMVEVSIFRBQkxFIEFERCBDT05TVFJBSU5UCistLQorCitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRl LAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIFBFUklPRCB2YWxpZF9h dCk7CistLSBUd28gc2NhbGFyIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3Bl cjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGls IGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwK KyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIKKyAg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsKK1xkIHRlbXBvcmFsX2ZrMl9w ZXIycGVyCisKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJlZmVyZW5jZWQgdGFibGUsIGFu ZCB3cm9uZyBjb2x1bW4gdHlwZToKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAg RFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmssCisgIERST1AgUEVSSU9EIEZP UiB2YWxpZF9hdCwKKyAgQUxURVIgQ09MVU1OIHZhbGlkX2Zyb20gVFlQRSB0aW1lc3RhbXAsCisg IEFMVEVSIENPTFVNTiB2YWxpZF90aWwgVFlQRSB0aW1lc3RhbXAsCisgIEFERCBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgUEVSSU9E IEZPUiB2YWxpZF9hdCwKKyAgQUxURVIgQ09MVU1OIHZhbGlkX2Zyb20gVFlQRSBkYXRlLAorICBB TFRFUiBDT0xVTU4gdmFsaWRfdGlsIFRZUEUgZGF0ZSwKKyAgQUREIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCk7CisKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhl IHJlZmVyZW5jZWQgdGFibGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFE RCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKworLS0g c2hvdWxkIGZhaWwgYmVjYXVzZSBvZiBkdXBsaWNhdGUgcmVmZXJlbmNlZCBjb2x1bW5zOgorQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycGVyX2ZrMgorICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgcGFyZW50X2lk KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIFBFUklPRCBpZCk7CisKKy0tCistLSB0 ZXN0IHdpdGggcm93cyBhbHJlYWR5CistLQorCitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19wZXIy cGVyOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAx LTAyJywgJzIwMTgtMDItMDMnKSwKKyAgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQt MDQnKSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKSwKKyAgKCdbMyw0 KScsICcyMDE4LTAxLTAxJywgTlVMTCk7CisKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJw ZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0wMScsICdbMSwyKScp OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAn WzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBl cgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7 CistLSBva2F5IGFnYWluOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVS IFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworCistLQorLS0gdGVzdCBwZ19nZXRfY29uc3RyYWlu dGRlZgorLS0KKworU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVmKG9pZCkgRlJPTSBwZ19jb25z dHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfZmtfcGVyMnBlcl9mayc7CisKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jaW5nIGluc2VydHMKKy0tCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAxJywgJ1sxLDIpJyk7CistLSBzaG91 bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMyknLCAnMjAxOC0wMS0wMicsICcy MDE4LTA0LTAxJywgJ1sxLDIpJyk7CistLSBub3cgaXQgc2hvdWxkIHdvcms6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIp JywgJzIwMTgtMDItMDMnLCAnMjAxOC0wMy0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEsMiknKTsKKworLS0KKy0tIHRl c3QgRksgcmVmZXJlbmNpbmcgdXBkYXRlcworLS0KKworLS0gc2xpZGUgdGhlIGVkZ2UgYWNyb3Nz IGEgcmVmZXJlbmNlZCB0cmFuc2l0aW9uOgorVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgU0VU IHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMicsIHZhbGlkX3RpbCA9ICcyMDE4LTAyLTIwJyBXSEVS RSBpZCA9ICdbMSwyKSc7CistLSBzaG91bGQgZmFpbDoKK1VQREFURSB0ZW1wb3JhbF9ma19wZXIy cGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLCB2YWxpZF90aWwgPSAnMjAxOC0wNS0w MScgV0hFUkUgaWQgPSAnWzEsMiknOworVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgU0VUIHBh cmVudF9pZCA9ICdbOCw5KScgV0hFUkUgaWQgPSAnWzEsMiknOworCistLSBBTFRFUiBGSyBERUZF UlJBQkxFCisKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAgICgnWzUsNiknLCAnMjAxOC0wMS0wMScsICcyMDE4 LTAyLTAxJyksCisgICAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywgJzIwMTgtMDMtMDEnKTsKKyAg SU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0w MS0xMCcsICdbNSw2KScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgICAg QUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgICAgREVGRVJSQUJMRSBJ TklUSUFMTFkgREVGRVJSRUQ7CisKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlk ID0gJ1s1LDYpJzsgLS1zaG91bGQgbm90IGZhaWwgeWV0LgorQ09NTUlUOyAtLSBzaG91bGQgZmFp bCBoZXJlLgorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgTk8gQUNUSU9OCist LQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3BlcjJwZXI7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19w ZXIycGVyX2ZrOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBF UklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyAgT04gVVBEQVRFIE5P IEFDVElPTjsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2VlZHMgYmVjYXVzZSB0aGUgbnVtZXJp YyBpZCBpc24ndCByZWZlcmVuY2VkOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNSw2KScsICcyMDE4LTAxLTAxJywgJzIwMTgt MDItMDEnKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0w MScsIHZhbGlkX3RpbCA9ICcyMDE2LTAyLTAxJyBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBhIFBL IHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGV2ZW4gdGhvdWdoIHRoZSBudW1lcmljIGlkIGlzIHJlZmVy ZW5jZWQgYmVjYXVzZSB0aGUgcmFuZ2UgaXNuJ3Q6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIg V0hFUkUgaWQgPSAnWzUsNiknOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbNSw2KScsICcyMDE4LTAxLTAxJywgJzIwMTgt MDItMDEnKSwKKyAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywgJzIwMTgtMDMtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBh cmVudF9pZCkgVkFMVUVTCisgICgnWzMsNCknLCAnMjAxOC0wMS0wNScsICcyMDE4LTAxLTEwJywg J1s1LDYpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTYtMDIt MDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMy0wMScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFs aWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnOworLS0g QSBQSyB1cGRhdGUgc2xpZGluZyB0aGUgZWRnZSBiZXR3ZWVuIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUworICAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpLAorICAoJ1s2LDcp JywgJzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAg KCdbNCw1KScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDItMTUnLCAnWzYsNyknKTsKK1VQREFURSB0 ZW1wb3JhbF9wZXIKK1NFVCB2YWxpZF9mcm9tID0gQ0FTRSBXSEVOIHZhbGlkX2Zyb20gPSAnMjAx OC0wMS0wMScgVEhFTiAnMjAxOC0wMS0wMScKKyAgICAgICAgICAgICAgICAgICAgICBXSEVOIHZh bGlkX2Zyb20gPSAnMjAxOC0wMi0wMScgVEhFTiAnMjAxOC0wMS0wNScgRU5EOjpkYXRlLAorICAg IHZhbGlkX3RpbCA9ICBDQVNFIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBUSEVOICcy MDE4LTAxLTA1JworICAgICAgICAgICAgICAgICAgICAgIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4 LTAyLTAxJyBUSEVOICcyMDE4LTAzLTAxJyBFTkQ6OmRhdGUKK1dIRVJFIGlkID0gJ1s2LDcpJzsK Ky0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBidXQgc3RpbGwg dmFsaWQ6CistLSBUaGVyZSBhcmUgdHdvIHJlZmVyZW5jZXM6IG9uZSBmdWxmaWxsZWQgYnkgdGhl IGZpcnN0IHBrIHJvdywKKy0tIHRoZSBvdGhlciBmdWxmaWxsZWQgYnkgYm90aCBwayByb3dzIGNv bWJpbmVkLgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDMtMDEnKSwKKyAg KCdbMSwyKScsICcyMDE4LTAzLTAxJywgJzIwMTgtMDYtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFM VUVTCisgICgnWzEsMiknLCAnMjAxOC0wMS0xNScsICcyMDE4LTAyLTAxJywgJ1sxLDIpJyksCisg ICgnWzIsMyknLCAnMjAxOC0wMS0xNScsICcyMDE4LTA1LTAxJywgJ1sxLDIpJyk7CitVUERBVEUg dGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxpZF90aWwgPSAn MjAxOC0wMy0wMScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEt MTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgZ3Jvd2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBp cyBmaW5lOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAx JywgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlk X2F0IEA+ICcyMDE4LTAxLTI1Jzo6ZGF0ZTsKKy0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUg cmVmZXJlbmNlZCByYW5nZSBhbmQgY2hhbmdpbmcgdGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9s ZSByYW5nZToKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1syLDMpJywgdmFsaWRfZnJv bSA9ICcyMDE4LTAxLTE1JywgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdb MSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKKy0tIGEgUEsgdXBkYXRl IGNoYW5naW5nIG9ubHkgdGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9sZSByYW5nZToKK1VQREFU RSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1syLDMpJworV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGxvc2Vz IHRpbWUgZnJvbSBib3RoIGVuZHMsIGJ1dCBpcyBzdGlsbCB2YWxpZDoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzIsMykn LCAnMjAxOC0wMS0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19w ZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUworICAo J1s1LDYpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0wMScsICdbMiwzKScpOworVVBEQVRFIHRl bXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1JywgdmFsaWRfdGlsID0gJzIw MTgtMDItMTUnCitXSEVSRSBpZCA9ICdbMiwzKSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZhaWxz IGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZDoKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZh bGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAyLTAxJworV0hFUkUg aWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwg PSAnMjAxOC0wMi0wMSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBh cmUgcmVmZXJlbmNlZCwgYnV0IG5vdCAndGlsIGNvbW1pdDoKK0JFR0lOOworICBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycGVyCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19w ZXIycGVyX2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisKKyAgVVBEQVRF IHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0g JzIwMTYtMDItMDEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworLS0gY2hhbmdpbmcgdGhl IHNjYWxhciBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCkn CitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMScgQU5EIHZh bGlkX3RpbCA9ICcyMDE4LTAyLTAxJzsKKy0tIGNoYW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0 IGlzIG9rYXk6CitVUERBVEUgdGVtcG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJF IGlkID0gJ1s1LDYpJzsKKy0tIGNoYW5naW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorVVBEQVRFIHRl bXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8g JzIwMTgtMDEtMTAnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdI RVJFIGlkIGluICgnWzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0 ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRz OgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMyw0KSc7CitV UERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90 aWwgPSAnMjAxNi0wMi0wMScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcy MDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOworCistLQorLS0gdGVzdCBG SyByZWZlcmVuY2VkIHVwZGF0ZXMgUkVTVFJJQ1QKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3Bl ciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIK KyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7CitBTFRFUiBUQUJMRSB0 ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJf ZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgUkVTVFJJQ1Q7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBOTyBBQ1RJT04KKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3Bl ciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIK KyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOwor LS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0 IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgZGVs ZXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNl ZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzUsNiknLCAnMjAxOC0wMS0wMScs ICcyMDE4LTAyLTAxJyksCisgICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0x MCcsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYp JyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDMt MDEnOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5j ZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxp ZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CistLSBh IFBLIGRlbGV0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZCwgYnV0IG5v dCAndGlsIGNvbW1pdDoKK0JFR0lOOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVy CisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgICAgREVGRVJS QUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAxOC0wMi0wMScpOworQ09NTUlUOworLS0gZGVsZXRpbmcgYW4gdW5yZWZlcmVuY2VkIHBhcnQg aXMgb2theToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAxOC0wMS0wMicgVE8gJzIwMTgtMDEtMDMnCitXSEVSRSBpZCA9ICdbNSw2KSc7 CistLSBkZWxldGluZyBqdXN0IGEgcGFydCBmYWlsczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bl cgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEt MTAnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBXSEVS RSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkIGluICgnWzMsNCknKSBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBh bmQgdGhlIHNhbWUgUEsgZGVsZXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtf cGVyMnBlciBXSEVSRSBpZCA9ICdbMyw0KSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hF UkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90 aWwgPSAnMjAxOC0wMi0wMSc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBS RVNUUklDVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVy OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgIE9O IERFTEVURSBSRVNUUklDVDsKKworLS0KKy0tIHBlcjJwZXIgdGVzdCBPTiBVUERBVEUvREVMRVRF IG9wdGlvbnMKKy0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0g cmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVM TAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIHVwZGF0ZXMg U0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0gcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVs ZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAo dHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2Nh bGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVG QVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxU ICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3 byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorCistLQorLS0gdGVzdCBGSyByZWZl cmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1w b3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisg ICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUg aWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlk ID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6 CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJv d3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5 KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr X3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgn WzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworVVBEQVRF IHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZh bGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tCisKK1RSVU5DQVRF IHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBi b3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAxOC0w MS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUg aWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQg TlVMTAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkg VkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScp OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBl cl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUg U0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9w ZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEt MDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9 ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19w ZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0g RksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEn LCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTAp JyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxl dGVzIFNFVCBOVUxMCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3Bl cjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywg J1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBv cmFsX3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAy MC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19w ZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0g bm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb OCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdI RVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tCisKK1RSVU5DQVRFIHRlbXBv cmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsIG51bGwsIG51bGwp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9p ZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3 KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBTFRFUiBDT0xVTU4gcGFy ZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsK KyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9wZXIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNF VCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxf cGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAx LTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQg PSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0t IEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAx JywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1s5LDEw KScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVs ZXRlcyBTRVQgREVGQVVMVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9m a19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEw MF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIw MTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIw MjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdI RVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMg Q0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwg dGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlk MiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxV RVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2 LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnBlcgorICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxF VEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVz OgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERB VEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dz OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVt cG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29s cykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9wZXIycGVyOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9u IGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAw LDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRF IEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIy IFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBk YXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxf cGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChp ZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9w ZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQy KSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcp JywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnBlcgorICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9p ZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBP TiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJzIG9uIGJv dGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUg aWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0 ZToKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVu Y2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIw MjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAn MjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAs MjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQ REFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSkn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBz Y2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9w ZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBd JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVm dG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBp ZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRl OgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAn WzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVy ZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQp CistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVyMnBlcjsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGZhaWxzIGJlY2F1c2Ug eW91IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr Ml9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAo cGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAodmFsaWRfYXQpIE9OIFVQREFU RSBTRVQgTlVMTDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIKKyAg RFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlO VCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBw YXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIy CisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIE5VTEw7 CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEn IFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVy IFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQ TyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJv d3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVS RSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLQor CitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVyMnBlcjsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNykn LCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScsICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIK KyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBBTFRF UiBDT0xVTU4gcGFyZW50X2lkMiBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RS QUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxf ZmsyX3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERF TEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJywgaWQy ID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK Ky0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4 KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4 LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlk MSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxp ZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9w ZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCist LQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIg Y29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9wZXIycGVy OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgbnVsbCwgbnVsbCk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBz aWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScs ICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUg aWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNF VCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCisKK1RS VU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9wZXIycGVyOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn Wy0xLC0xXScsICdbNiw3KScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYs NyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m azJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50 X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdb Niw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJ T0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIKKyAgQUxURVIgQ09M VU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9w ZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklP RCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUg U0VUIERFRkFVTFQgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBvazoKK0FM VEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQx IFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9w ZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maworICAg IEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisg ICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIChw YXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBz aWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScs ICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0x LC0xXScsICdbOCw5KScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3Bl cjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIp IFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSkn LCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKworLS0KKy0tIHRlc3QgRk9SRUlHTiBLRVksIHJhbmdlIHJlZmVyZW5jZXMgUEVSSU9E CistLQorCistLSB0ZXN0IHRhYmxlIHNldHVwCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlciBDQVND QURFOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFs aWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlcgorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsKKyAgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKTsKKworLS0gQ2FuJ3QgY3JlYXRlIGEgRksgd2l0aCBhIG1pc21h dGNoZWQgcmFuZ2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBp ZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGludDRyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5n ZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5n MnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworCistLSB3b3Jr czogUEVSSU9EIGZvciByZWZlcmVuY2VkLCByYW5nZSBmb3IgcmVmZXJlbmNpbmcKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBk YXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxf Zmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwg UEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrX3JuZzJwZXIKK0RST1AgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlcjsKKworLS0gd2l0aCBtaXNtYXRjaGVkIFBFUklPRCBjb2x1bW5z OgorCistLSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCB2YWxp ZF9hdCkKKy0tIFJFRkVSRU5DRVMgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBk YXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxf Zmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCB2 YWxpZF9hdCkKKy0tIGJvdGggc2hvdWxkIHNwZWNpZnkgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5n ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcy cGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2F0KQorKTsK Ky0tIChwYXJlbnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgUEVSSU9EIHZhbGlkX2F0 KQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJM RSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRl cmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFs aWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0 XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJM RSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRl cmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CistLSAocGFyZW50 X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkKQorQ1JFQVRFIFRBQkxFIHRlbXBv cmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwK KyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVy X3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkKQorKTsKKy0tIChw YXJlbnRfaWQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJh bmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQp CisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOwor LS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJh bmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorKTsKK0RST1Ag VEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcjsKKy0tIChwYXJlbnRfaWQpIFJFRkVSRU5DRVMgW2lt cGxpY2l0XQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFu Z2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBG T1JFSUdOIEtFWSAocGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCispOwor CistLSBzaG91bGQgZmFpbCBiZWNhdXNlIG9mIGR1cGxpY2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6 CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAg dmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04g S0VZIChwYXJlbnRfaWQsIFBFUklPRCBwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9wZXIgKGlkLCBQRVJJT0QgaWQpCispOworCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1Ag VEFCTEUgdGVtcG9yYWxfcGVyMiBDQVNDQURFOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjIg KAorICBpZDEgaW50NHJhbmdlLAorICBpZDIgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjJfcGsgUFJJTUFSWSBLRVkgKGlk MSwgaWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKKworQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX2ZrMl9ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFu Z2UsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlk X2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVy X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQp CisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0 KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9ybmcycGVyCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrMl9y bmcycGVyOworCistLQorLS0gdGVzdCBBTFRFUiBUQUJMRSBBREQgQ09OU1RSQUlOVAorLS0KKwor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZh bGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIFBFUklPRCB2 YWxpZF9hdCk7CistLSBUd28gc2NhbGFyIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxf ZmsyX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAg cGFyZW50X2lkMSBpbnQ0cmFuZ2UsCisgIHBhcmVudF9pZDIgaW50NHJhbmdlLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BlcjIgKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRfYXQpOworXGQgdGVtcG9yYWxfZmsyX3Ju ZzJwZXIKKworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSwgYW5k IHdyb25nIGNvbHVtbiB0eXBlOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maywKKyAgQUxURVIgQ09MVU1OIHZh bGlkX2F0IFRZUEUgdHNyYW5nZSBVU0lORyB0c3JhbmdlKGxvd2VyKHZhbGlkX2F0KSwgdXBwZXIo dmFsaWRfYXQpKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4gdmFsaWRfYXQgVFlQRSBkYXRlcmFu Z2UgVVNJTkcgZGF0ZXJhbmdlKGxvd2VyKHZhbGlkX2F0KTo6ZGF0ZSwgdXBwZXIodmFsaWRfYXQp OjpkYXRlKTsKKworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToK K0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9y YWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRf YXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworCistLSBzaG91bGQgZmFpbCBiZWNhdXNl IG9mIGR1cGxpY2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsyCisgIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCBwYXJlbnRfaWQpCisgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyIChpZCwgUEVSSU9EIGlkKTsKKworLS0KKy0tIHRlc3Qgd2l0aCByb3dzIGFscmVh ZHkKKy0tCisKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9wZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUworICAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0wMycp LAorICAoJ1sxLDIpJywgJzIwMTgtMDMtMDMnLCAnMjAxOC0wNC0wNCcpLAorICAoJ1syLDMpJywg JzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpLAorICAoJ1szLDQpJywgJzIwMTgtMDEtMDEnLCBO VUxMKTsKKworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJw ZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMSwyKScsICdbMjAxOC0wMS0w MiwyMDE4LTAyLTAxKScsICdbMSwyKScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBl cgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19ybmcycGVyX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQs IHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJ1syMDE4LTAxLTAyLDIwMTgt MDQtMDEpJywgJ1sxLDIpJyk7CistLSBzaG91bGQgZmFpbDoKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyOworLS0gb2theSBhZ2FpbjoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJw ZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZh bGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKworLS0KKy0tIHRlc3QgcGdfZ2V0 X2NvbnN0cmFpbnRkZWYKKy0tCisKK1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZS T00gcGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3RlbXBvcmFsX2ZrX3JuZzJwZXJfZmsn OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2luZyBpbnNlcnRzCistLQorCitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgn WzEsMiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMSknLCAnWzEsMiknKTsKKy0tIHNob3VsZCBm YWlsOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDQtMDEpJywgJ1sxLDIp Jyk7CistLSBub3cgaXQgc2hvdWxkIHdvcms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDItMDMnLCAn MjAxOC0wMy0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDQtMDEp JywgJ1sxLDIpJyk7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0tCisK Ky0tIHNsaWRlIHRoZSBlZGdlIGFjcm9zcyBhIHJlZmVyZW5jZWQgdHJhbnNpdGlvbjoKK1VQREFU RSB0ZW1wb3JhbF9ma19ybmcycGVyIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMiwyMDE4LTAy LTIwKScgV0hFUkUgaWQgPSAnWzEsMiknOworLS0gc2hvdWxkIGZhaWw6CitVUERBVEUgdGVtcG9y YWxfZmtfcm5nMnBlciBTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDIsMjAxOC0wNS0wMSknIFdI RVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSB0ZW1wb3JhbF9ma19ybmcycGVyIFNFVCBwYXJlbnRf aWQgPSAnWzgsOSknIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gQUxURVIgRksgREVGRVJSQUJM RQorCitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMKKyAgICAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0w MScpLAorICAgICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7CisgIElOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxV RVMKKyAgICAoJ1szLDQpJywgJ1syMDE4LTAxLTA1LDIwMTgtMDEtMTApJywgJ1s1LDYpJyk7Cisg IEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsK KworICBERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknOyAtLXNob3Vs ZCBub3QgZmFpbCB5ZXQuCitDT01NSVQ7IC0tIHNob3VsZCBmYWlsIGhlcmUuCisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBOTyBBQ1RJT04KKy0tCisKK1RSVU5DQVRFIHRlbXBv cmFsX3BlciwgdGVtcG9yYWxfZmtfcm5nMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Ju ZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZms7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgTk8gQUNUSU9OOworLS0gYSBQSyB1 cGRhdGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0IHJlZmVyZW5j ZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworVVBEQVRFIHRl bXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIw MTYtMDItMDEnIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2Vl ZHMgZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSBy YW5nZSBpc24ndDoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNSw2KSc7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUworICAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpLAorICAoJ1s1LDYp JywgJzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1szLDQpJywgJ1sy MDE4LTAxLTA1LDIwMTgtMDEtMTApJywgJ1s1LDYpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNF VCB2YWxpZF9mcm9tID0gJzIwMTYtMDItMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMy0wMScKK1dI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRf dGlsID0gJzIwMTgtMDMtMDEnOworLS0gQSBQSyB1cGRhdGUgc2xpZGluZyB0aGUgZWRnZSBiZXR3 ZWVuIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAn MjAxOC0wMi0wMScpLAorICAoJ1s2LDcpJywgJzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQp IFZBTFVFUworICAoJ1s0LDUpJywgJ1syMDE4LTAxLTE1LDIwMTgtMDItMTUpJywgJ1s2LDcpJyk7 CitVUERBVEUgdGVtcG9yYWxfcGVyCitTRVQgdmFsaWRfZnJvbSA9IENBU0UgV0hFTiB2YWxpZF9m cm9tID0gJzIwMTgtMDEtMDEnIFRIRU4gJzIwMTgtMDEtMDEnCisgICAgICAgICAgICAgICAgICAg ICAgV0hFTiB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnIFRIRU4gJzIwMTgtMDEtMDUnIEVORDo6 ZGF0ZSwKKyAgICB2YWxpZF90aWwgPSAgQ0FTRSBXSEVOIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0w MScgVEhFTiAnMjAxOC0wMS0wNScKKyAgICAgICAgICAgICAgICAgICAgICBXSEVOIHZhbGlkX2Zy b20gPSAnMjAxOC0wMi0wMScgVEhFTiAnMjAxOC0wMy0wMScgRU5EOjpkYXRlCitXSEVSRSBpZCA9 ICdbNiw3KSc7CistLSBhIFBLIHVwZGF0ZSBzaHJpbmtpbmcgdGhlIHJlZmVyZW5jZWQgcmFuZ2Ug YnV0IHN0aWxsIHZhbGlkOgorLS0gVGhlcmUgYXJlIHR3byByZWZlcmVuY2VzOiBvbmUgZnVsZmls bGVkIGJ5IHRoZSBmaXJzdCBwayByb3csCistLSB0aGUgb3RoZXIgZnVsZmlsbGVkIGJ5IGJvdGgg cGsgcm93cyBjb21iaW5lZC4KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAz LTAxJyksCisgICgnWzEsMiknLCAnMjAxOC0wMy0wMScsICcyMDE4LTA2LTAxJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVT CisgICgnWzEsMiknLCAnWzIwMTgtMDEtMTUsMjAxOC0wMi0wMSknLCAnWzEsMiknKSwKKyAgKCdb MiwzKScsICdbMjAxOC0wMS0xNSwyMDE4LTA1LTAxKScsICdbMSwyKScpOworVVBEQVRFIHRlbXBv cmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1JywgdmFsaWRfdGlsID0gJzIwMTgt MDMtMDEnCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6 ZGF0ZTsKKy0tIGEgUEsgdXBkYXRlIGdyb3dpbmcgdGhlIHJlZmVyZW5jZWQgcmFuZ2UgaXMgZmlu ZToKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMScsIHZh bGlkX3RpbCA9ICcyMDE4LTAzLTAxJworV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCBA PiAnMjAxOC0wMS0yNSc6OmRhdGU7CistLSBhIFBLIHVwZGF0ZSBzaHJpbmtpbmcgdGhlIHJlZmVy ZW5jZWQgcmFuZ2UgYW5kIGNoYW5naW5nIHRoZSBpZCBpbnZhbGlkYXRlcyB0aGUgd2hvbGUgcmFu Z2U6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbMiwzKScsIHZhbGlkX2Zyb20gPSAn MjAxOC0wMS0xNScsIHZhbGlkX3RpbCA9ICcyMDE4LTAzLTAxJworV0hFUkUgaWQgPSAnWzEsMikn IEFORCB2YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSBhIFBLIHVwZGF0ZSBjaGFu Z2luZyBvbmx5IHRoZSBpZCBpbnZhbGlkYXRlcyB0aGUgd2hvbGUgcmFuZ2U6CitVUERBVEUgdGVt cG9yYWxfcGVyIFNFVCBpZCA9ICdbMiwzKScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgdGhhdCBsb3NlcyB0aW1l IGZyb20gYm90aCBlbmRzLCBidXQgaXMgc3RpbGwgdmFsaWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1syLDMpJywgJzIw MTgtMDEtMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBl ciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s1LDYpJywgJ1syMDE4LTAx LTE1LDIwMTgtMDItMDEpJywgJ1syLDMpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxp ZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxpZF90aWwgPSAnMjAxOC0wMi0xNScKK1dIRVJFIGlk ID0gJ1syLDMpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSBy ZWZlcmVuY2VkOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAx LTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnCitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZh bGlkX2Zyb20gPSAnMjAxOC0wMS0wMScgQU5EIHZhbGlkX3RpbCA9ICcyMDE4LTAyLTAxJzsKKy0t IGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkLCBidXQg bm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBERUZF UlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKworICBVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2 YWxpZF9mcm9tID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMi0wMScKKyAgV0hF UkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDE4LTAyLTAxJyk7CitDT01NSVQ7CistLSBjaGFuZ2luZyB0aGUgc2NhbGFyIHBhcnQgZmFpbHM6 CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYp JyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDIt MDEnOworLS0gY2hhbmdpbmcgYW4gdW5yZWZlcmVuY2VkIHBhcnQgaXMgb2theToKK1VQREFURSB0 ZW1wb3JhbF9wZXIKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDInIFRP ICcyMDE4LTAxLTAzJworU0VUIGlkID0gJ1s3LDgpJworV0hFUkUgaWQgPSAnWzUsNiknOworLS0g Y2hhbmdpbmcganVzdCBhIHBhcnQgZmFpbHM6CitVUERBVEUgdGVtcG9yYWxfcGVyCitGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAxOC0wMS0xMCcKK1NFVCBp ZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGVyIFdIRVJFIGlkIGluICgnWzUsNiknLCAnWzcsOCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgaW4gKCdbMyw0KScp IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIHRoZW4gZGVsZXRlIHRoZSBvYmplY3RpbmcgRksg cmVjb3JkIGFuZCB0aGUgc2FtZSBQSyB1cGRhdGUgc3VjY2VlZHM6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1szLDQpJzsKK1VQREFURSB0ZW1wb3JhbF9wZXIg U0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAyLTAxJwor V0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAx KSc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBSRVNUUklDVAorLS0KKwor VFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBl cl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgIE9OIFVQREFURSBSRVNUUklD VDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIE5PIEFDVElPTgorLS0KKwor VFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVy X2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9wZXI7CistLSBhIFBLIGRlbGV0ZSB0aGF0IHN1Y2NlZWRzIGJlY2F1c2Ug dGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzUsNiknLCAnMjAxOC0wMS0w MScsICcyMDE4LTAyLTAxJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAn WzUsNiknOworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBldmVuIHRob3VnaCB0aGUgbnVt ZXJpYyBpZCBpcyByZWZlcmVuY2VkIGJlY2F1c2UgdGhlIHJhbmdlIGlzbid0OgorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdb NSw2KScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKSwKKyAgKCdbNSw2KScsICcyMDE4LTAy LTAxJywgJzIwMTgtMDMtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMyw0KScsICdbMjAxOC0wMS0wNSwyMDE4 LTAxLTEwKScsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0g J1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIw MTgtMDMtMDEnOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJl ZmVyZW5jZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFO RCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7 CistLSBhIFBLIGRlbGV0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZCwg YnV0IG5vdCAndGlsIGNvbW1pdDoKK0JFR0lOOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19y bmcycGVyCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgICAg REVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisKKyAgREVMRVRFIEZST00gdGVtcG9yYWxf cGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworLS0gZGVsZXRpbmcgYW4gdW5yZWZlcmVuY2Vk IHBhcnQgaXMgb2theToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wMicgVE8gJzIwMTgtMDEtMDMnCitXSEVSRSBpZCA9ICdb NSw2KSc7CistLSBkZWxldGluZyBqdXN0IGEgcGFydCBmYWlsczoKK0RFTEVURSBGUk9NIHRlbXBv cmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIw MTgtMDEtMTAnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Bl ciBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkIGluICgnWzMsNCknKSBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJl Y29yZCBhbmQgdGhlIHNhbWUgUEsgZGVsZXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9y YWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMyw0KSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9w ZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2 YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVs ZXRlcyBSRVNUUklDVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19y bmcycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVy CisgIE9OIERFTEVURSBSRVNUUklDVDsKKworLS0KKy0tIHJuZzJwZXIgdGVzdCBPTiBVUERBVEUv REVMRVRFIG9wdGlvbnMKKy0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FE RQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBT RVQgTlVMTAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIHVw ZGF0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0g cmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQg TlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBT RVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBE RUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFV TFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorCistLQorLS0gdGVzdCBG SyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVy LCB0ZW1wb3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSkn LCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9OIERF TEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAw LDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRF IHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAy MC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVy IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAx LTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9 ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEn OjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1sy MDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVu Y2VkIGRlbGV0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3Jh bF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk KSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNykn KTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVy IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAx JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBP IGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywg JzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5n MnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVy IFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIE5VTEwKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcm5n MnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzEwMCwxMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s2LDcpJyk7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVM TDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3BlciBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1s3LDgp JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIw LTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScpOwor VVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScg QU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLQorCitU UlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywg JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5n MnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5n MnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywg JzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkp Jyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxp ZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3Ju ZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0t CistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVAorLS0KKworVFJVTkNB VEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgbnVs bCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScpOwor QUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4gcGFyZW50X2lk IFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZB VUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBT RVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcs OCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBl ciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFj cm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIw MjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkg VkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7 CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0t CisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcm5nMnBlcjsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0x LC0xXScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAn WzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIw LTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3Ju ZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBu b24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwx MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQg cm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4 LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf Zmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScs ICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpk YXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAs MjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2Vk IHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIy IChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3 KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr Ml9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScp OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5n MnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0Qg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIENB U0NBREUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQ REFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRl bXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0w MS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEg PSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0g J1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZl cmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUg dGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScs ICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZB TFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdb Niw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIw LTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0t IG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcy MDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywg JzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVt cG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0g J1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZl cmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRF IHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNykn LCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBW QUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAn WzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgIERST1AgQ09OU1RS QUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxf ZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERF TEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBz aWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9 ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgor VVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwx MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQg cm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIx LTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEt MDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIy IFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAn MjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdI RVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisK K1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJl bnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAn WzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZS T00gdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAx JyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hF UkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3Mg dHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQy LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgt MDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBp ZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAy MC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBl ciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIw MF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBX SEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRl c3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBO VUxMIHN1YnNldCkKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9y bmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEt MDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGZhaWxzIGJlY2F1c2UgeW91 IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9y bmcycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maywKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAodmFsaWRfYXQpIE9OIFVQREFURSBT RVQgTlVMTDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIKKyAgRFJP UCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJl bnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisg ICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIE5VTEw7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdI RVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBk ZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIw MjEtMDEtMDEpJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIy IFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBk YXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIy IChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1st MSwtMV0nLCBudWxsLCBudWxsKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQy LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBd JywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQg REVGQVVMVCAnWy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBERUZBVUxU ICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAor ICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQg REVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3Bl cjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEt MDEnIFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVt cG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcy MDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywg JzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFs X3BlcjIgU0VUIGlkMSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgs OSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQg KHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFs X2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgbnVsbCwgbnVs bCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwy MDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVt cG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK Ky0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAn WzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScs ICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZB TFVFUyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdb OCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFO RCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBz Y2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxf cGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChp ZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s2LDcp JywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdb MjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVj YXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9y YWxfZmsyX3JuZzJwZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1st MSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFE RCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRl bXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZhbGlkX2F0KSBPTiBVUERB VEUgU0VUIERFRkFVTFQ7CistLSBvazoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVy CisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJP UCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJl bnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisg ICAgT04gREVMRVRFIFNFVCBERUZBVUxUIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIERFRkFV TFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bl cjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEt MDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcy cGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9u LUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAt MDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAy MS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5KScsIG51bGwsIG51bGwpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEt MDEpJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJF IGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZPUkVJR04gS0VZLCBQRVJJT0QgcmVm ZXJlbmNlcyByYW5nZQorLS0KKworLS0gdGVzdCB0YWJsZSBzZXR1cAorRFJPUCBUQUJMRSB0ZW1w b3JhbF9ybmcgQ0FTQ0FERTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ybmcgKAorICBpZCBpbnQ0 cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3Ju ZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ybmdfcGsKKyAgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKKworLS0gQ2FuJ3QgY3JlYXRlIGEgRksgd2l0aCBh IG1pc21hdGNoZWQgcmFuZ2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gaW50LAorICB2YWxpZF90aWwgaW50LAor ICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9t LCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFS WSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9h dCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKKyk7 CisKKy0tIHdvcmtzOiByYW5nZSBmb3IgcmVmZXJlbmNlZCwgUEVSSU9EIGZvciByZWZlcmVuY2lu ZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisg IHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFu Z2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcm5nIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrX3Bl cjJybmcKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZzsKKworLS0gd2l0aCBtaXNtYXRj aGVkIFBFUklPRCBjb2x1bW5zOgorCistLSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJF RkVSRU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIFJFRkVSRU5DRVMgcGFydCBzaG91bGQgc3BlY2lm eSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJh bmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQg aW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwp LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIy cm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KQorKTsKKy0tIChwYXJlbnRfaWQsIHZh bGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgdmFsaWRfYXQpCistLSBib3RoIHNob3VsZCBzcGVjaWZ5 IFBFUklPRDoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJh bmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQg aW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwp LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIy cm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQp IFJFRkVSRU5DRVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCistLSBGT1JFSUdOIEtFWSBwYXJ0IHNo b3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAor ICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisg IHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20s IHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZ IEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworLS0gKHBh cmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlHTiBLRVkg cGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIy cm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBk YXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxp ZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsg UFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlkX2F0 KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCispOworLS0gKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIy cm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBk YXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxp ZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsg UFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQpCispOworLS0gKHBhcmVu dF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKK0NSRUFURSBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisg IHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZh bGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwK KyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRf aWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisp OworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFC TEUgdGVtcG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBk YXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9E IEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVS TEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mayBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcK Kyk7CitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmc7CistLSAocGFyZW50X2lkKSBSRUZF UkVOQ0VTIFtpbXBsaWNpdF0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAg aWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBw YXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcKKyk7CisKKy0tIHNob3VsZCBmYWlsIGJlY2F1c2Ugb2YgZHVwbGljYXRlIHJl ZmVyZW5jZWQgY29sdW1uczoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAg aWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBw YXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCBwYXJlbnRfaWQp CisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgaWQpCispOworCistLSBU d28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFCTEUgdGVtcG9yYWxfcm5nMiBDQVNDQURFOworQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX3JuZzIgKAorICBpZDEgaW50NHJhbmdlLAorICBpZDIgaW50NHJh bmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcm5nMl9w ayBQUklNQVJZIEtFWSAoaWQxLCBpZDIsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOwor CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisg IHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJh bmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19w ayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJl bnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyIChp ZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9wZXIycm5nCitE Uk9QIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworCistLQorLS0gdGVzdCBBTFRFUiBUQUJM RSBBREQgQ09OU1RSQUlOVAorLS0KKworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUs CisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zy b20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklN QVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5n X2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpOworLS0gVHdvIHNjYWxhciBj b2x1bW5zOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nICgKKyAgaWQgaW50NHJh bmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQx IGludDRyYW5nZSwKKyAgcGFyZW50X2lkMiBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Bl cjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsK K0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQy LCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIs IFBFUklPRCB2YWxpZF9hdCk7CitcZCB0ZW1wb3JhbF9mazJfcGVyMnJuZworCistLSB3aXRoIGlu ZmVycmVkIFBLIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlLCBhbmQgd3JvbmcgY29sdW1uIHR5cGU6 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycm5nX2ZrLAorICBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQsCisgIEFMVEVS IENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgdGltZXN0YW1wLAorICBBTFRFUiBDT0xVTU4gdmFsaWRf dGlsIFRZUEUgdGltZXN0YW1wLAorICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJv bSwgdmFsaWRfdGlsKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lk LCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nOworQUxURVIgVEFC TEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQsCisgIEFM VEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgZGF0ZSwKKyAgQUxURVIgQ09MVU1OIHZhbGlkX3Rp bCBUWVBFIGRhdGUsCisgIEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxp ZF90aWwpOworCistLSB3aXRoIGluZmVycmVkIFBLIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlOgor QUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9h dCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmc7CisKKy0tIHNob3VsZCBmYWlsIGJlY2F1c2Ug b2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr X3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mazIKKyAgRk9S RUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHBhcmVudF9pZCkKKyAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9ybmcgKGlkLCBQRVJJT0QgaWQpOworCistLQorLS0gdGVzdCB3aXRoIHJvd3MgYWxyZWFk eQorLS0KKworREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0RFTEVURSBGUk9NIHRl bXBvcmFsX3JuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMKKyAgKCdbMSwyKScsICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKScpLAorICAoJ1sxLDIpJywg J1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJyksCisgICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAx OC0wMS0wNSknKSwKKyAgKCdbMyw0KScsICdbMjAxOC0wMS0wMSwpJyk7CisKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJy bmdfZms7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAx OC0wMi0wMScsICdbMSwyKScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmc7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycm5nX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAy JywgJzIwMTgtMDQtMDEnLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5n X2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmc7CistLSBva2F5IGFnYWluOgorREVMRVRFIEZST00gdGVtcG9yYWxf ZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nOworCistLQorLS0gdGVz dCBwZ19nZXRfY29uc3RyYWludGRlZgorLS0KKworU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVm KG9pZCkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfZmtfcGVy MnJuZ19mayc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIGluc2VydHMKKy0tCisKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWws IHBhcmVudF9pZCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAxJywg J1sxLDIpJyk7CistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJy bmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMykn LCAnMjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywgJ1sxLDIpJyk7CistLSBub3cgaXQgc2hvdWxk IHdvcms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzEsMiknLCAnWzIwMTgtMDItMDMsMjAxOC0wMy0wMyknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzIsMyknLCAnMjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywgJ1sxLDIpJyk7CisKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0tCisKKy0tIHNsaWRlIHRoZSBlZGdlIGFj cm9zcyBhIHJlZmVyZW5jZWQgdHJhbnNpdGlvbjoKK1VQREFURSB0ZW1wb3JhbF9ma19wZXIycm5n IFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLCB2YWxpZF90aWwgPSAnMjAxOC0wMi0yMCcg V0hFUkUgaWQgPSAnWzEsMiknOworLS0gc2hvdWxkIGZhaWw6CitVUERBVEUgdGVtcG9yYWxfZmtf cGVyMnJuZyBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAyJywgdmFsaWRfdGlsID0gJzIwMTgt MDUtMDEnIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSB0ZW1wb3JhbF9ma19wZXIycm5nIFNF VCBwYXJlbnRfaWQgPSAnWzgsOSknIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gQUxURVIgRksg REVGRVJSQUJMRQorCitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFs aWRfYXQpIFZBTFVFUworICAgICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknKSwK KyAgICAoJ1s1LDYpJywgJ1syMDE4LTAyLTAxLDIwMTgtMDMtMDEpJyk7CisgIElOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9p ZCkgVkFMVUVTCisgICAgKCdbMyw0KScsICcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAnLCAnWzUs NiknKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICAgIEFMVEVSIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICAgIERFRkVSUkFCTEUgSU5JVElBTExZIERF RkVSUkVEOworCisgIERFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7 IC0tc2hvdWxkIG5vdCBmYWlsIHlldC4KK0NPTU1JVDsgLS0gc2hvdWxkIGZhaWwgaGVyZS4KKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIE5PIEFDVElPTgorLS0KKworVFJVTkNB VEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxURVIgVEFCTEUgdGVtcG9y YWxfZmtfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mazsK K0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9y YWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRf YXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCisgIE9OIFVQREFURSBOTyBBQ1RJT047Cist LSBhIFBLIHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGJlY2F1c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3Qg cmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbNSw2KScsICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKScpOworVVBEQVRFIHRlbXBvcmFs X3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTYtMDEtMDEsMjAxNi0wMi0wMSknIFdIRVJFIGlkID0g J1s1LDYpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhlIG51 bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAx OC0wMi0wMSknKSwKKyAgKCdbNSw2KScsICdbMjAxOC0wMi0wMSwyMDE4LTAzLTAxKScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwg cGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMyw0KScsICcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAn LCAnWzUsNiknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlkX2F0ID0gJ1syMDE2LTAy LTAxLDIwMTYtMDMtMDEpJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9ICdbMjAx OC0wMi0wMSwyMDE4LTAzLTAxKSc7CistLSBBIFBLIHVwZGF0ZSBzbGlkaW5nIHRoZSBlZGdlIGJl dHdlZW4gdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKScp LAorICAoJ1s2LDcpJywgJ1syMDE4LTAyLTAxLDIwMTgtMDMtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQp IFZBTFVFUworICAoJ1s0LDUpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0xNScsICdbNiw3KScp OworVVBEQVRFIHRlbXBvcmFsX3JuZworU0VUIHZhbGlkX2F0ID0gQ0FTRSBXSEVOIGxvd2VyKHZh bGlkX2F0KSA9ICcyMDE4LTAxLTAxJyBUSEVOIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4 LTAxLTA1JykKKyAgICAgICAgICAgICAgICAgICAgV0hFTiBsb3dlcih2YWxpZF9hdCkgPSAnMjAx OC0wMi0wMScgVEhFTiBkYXRlcmFuZ2UoJzIwMTgtMDEtMDUnLCAnMjAxOC0wMy0wMScpIEVORAor V0hFUkUgaWQgPSAnWzYsNyknOworLS0gYSBQSyB1cGRhdGUgc2hyaW5raW5nIHRoZSByZWZlcmVu Y2VkIHJhbmdlIGJ1dCBzdGlsbCB2YWxpZDoKKy0tIFRoZXJlIGFyZSB0d28gcmVmZXJlbmNlczog b25lIGZ1bGZpbGxlZCBieSB0aGUgZmlyc3QgcGsgcm93LAorLS0gdGhlIG90aGVyIGZ1bGZpbGxl ZCBieSBib3RoIHBrIHJvd3MgY29tYmluZWQuCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMy0wMSkn KSwKKyAgKCdbMSwyKScsICdbMjAxOC0wMy0wMSwyMDE4LTA2LTAxKScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lk KSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDItMDEnLCAnWzEsMikn KSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDUtMDEnLCAnWzEsMiknKTsKK1VQ REFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTE1LDIwMTgtMDMtMDEp JworV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7 CistLSBhIFBLIHVwZGF0ZSBncm93aW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGlzIGZpbmU6CitV UERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMSwyMDE4LTAzLTAx KScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMjUnOjpkYXRl OworLS0gYSBQSyB1cGRhdGUgc2hyaW5raW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGFuZCBjaGFu Z2luZyB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBEQVRFIHRlbXBvcmFs X3JuZyBTRVQgaWQgPSAnWzIsMyknLCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0xNSwyMDE4LTAzLTAx KScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRl OworLS0gYSBQSyB1cGRhdGUgY2hhbmdpbmcgb25seSB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdo b2xlIHJhbmdlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzIsMyknCitXSEVSRSBp ZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKKy0tIGEgUEsg dXBkYXRlIHRoYXQgbG9zZXMgdGltZSBmcm9tIGJvdGggZW5kcywgYnV0IGlzIHN0aWxsIHZhbGlk OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUworICAoJ1sy LDMpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDMtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUwor ICAoJ1s1LDYpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0wMScsICdbMiwzKScpOworVVBEQVRF IHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMTUsMjAxOC0wMi0xNSknCitX SEVSRSBpZCA9ICdbMiwzKSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90 aCBhcmUgcmVmZXJlbmNlZDoKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlkX2F0ID0gJ1sy MDE2LTAxLTAxLDIwMTYtMDItMDEpJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9 ICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZhaWxzIGJl Y2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZCwgYnV0IG5vdCAndGlsIGNvbW1pdDoKK0JFR0lOOwor ICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgICAgQUxURVIgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7 CisKKyAgVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTYtMDEtMDEsMjAx Ni0wMi0wMSknCisgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworLS0gY2hhbmdpbmcgdGhlIHNj YWxhciBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknCitX SEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAxLDIwMTgtMDItMDEp JzsKKy0tIGNoYW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitVUERBVEUgdGVt cG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAn MjAxOC0wMS0wMycKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGNo YW5naW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3JuZworRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCitTRVQgaWQg PSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Ju ZyBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkIGluICgnWzMsNCknKSBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJl Y29yZCBhbmQgdGhlIHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9y YWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNF VCB2YWxpZF9hdCA9ICdbMjAxNi0wMS0wMSwyMDE2LTAyLTAxKScKK1dIRVJFIGlkID0gJ1s1LDYp JyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknOworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgUkVTVFJJQ1QKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFs X3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJy bmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZms7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJy bmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBVUERBVEUgUkVTVFJJQ1Q7CisKKy0tCistLSB0ZXN0 IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBOTyBBQ1RJT04KKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFs X3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJy bmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n OworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlz bid0IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknKTsKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBhIFBLIGRlbGV0ZSB0aGF0IHN1 Y2NlZWRzIGV2ZW4gdGhvdWdoIHRoZSBudW1lcmljIGlkIGlzIHJlZmVyZW5jZWQgYmVjYXVzZSB0 aGUgcmFuZ2UgaXNuJ3Q6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTCisgICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknKSwKKyAgKCdbNSw2 KScsICdbMjAxOC0wMi0wMSwyMDE4LTAzLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb Myw0KScsICcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAnLCAnWzUsNiknKTsKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAy LTAxLDIwMTgtMDMtMDEpJzsKKy0tIGEgUEsgZGVsZXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3Ro IGFyZSByZWZlcmVuY2VkOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1 LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknOworLS0gYSBQSyBk ZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQsIGJ1dCBub3QgJ3Rp bCBjb21taXQ6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICAg IEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICAgIERFRkVSUkFCTEUg SU5JVElBTExZIERFRkVSUkVEOworCisgIERFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBp ZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMTgt MDItMDEnKTsKK0NPTU1JVDsKKy0tIGRlbGV0aW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9r YXk6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTgtMDEtMDInIFRPICcyMDE4LTAxLTAzJworV0hFUkUgaWQgPSAnWzUsNiknOworLS0g ZGVsZXRpbmcganVzdCBhIHBhcnQgZmFpbHM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcKK0ZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDUnIFRPICcyMDE4LTAxLTEwJwor V0hFUkUgaWQgPSAnWzUsNiknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQg aW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRo ZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJy bmcgV0hFUkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlk ID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknOworCist LQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgUkVTVFJJQ1QKKy0tCisKK1RSVU5DQVRF IHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZms7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBERUxFVEUgUkVTVFJJQ1Q7CisKKy0t CistLSBwZXIycm5nIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCistLQorLS0gVE9DOgor LS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVND QURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRl cyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVu Y2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0 d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxh ciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMp CistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJl ZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJz ZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykK Ky0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0g cmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZB VUxUIHN1YnNldCkKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0n LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsK KyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmcKKyAgICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FE RTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgp JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1sy MDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5n IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAw XScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBA PiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcg V0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorCitUUlVOQ0FURSB0ZW1wb3Jh bF9ybmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlk ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9 ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzIwMjAtMDEtMDEs MjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgU0VUIE5VTEwKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVy MnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdb Niw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMg KCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcm5nCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVM TDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgp JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1sy MDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5n IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAw XScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBA PiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcg V0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0 ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZS T00gdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEn IFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBp ZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQg PSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAx LDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRh dGVzIFNFVCBERUZBVUxUCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2Zr X3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVT ICgnWy0xLC0xXScsICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywg J1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFMVEVSIENPTFVN TiBwYXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJu Z19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERB VEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1w b3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIw MjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcm5nIFNF VCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0w MS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJyk7CitV UERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCisK K1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJygsKScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywg J1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIy cm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAs MTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVy cyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwy MDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSkn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlk X2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVy MnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3 KScsICdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5n CisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maywKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lk MSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cm5nMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92 ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4 KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24t RlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJF IGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwg dmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEt MDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIg U0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcy MDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hF UkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0 IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLQorCitU UlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYs NyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr Ml9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2 LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJF IGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwg dmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEt MDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxf cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAs MjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2Vk IHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBv cmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n MiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICdbMjAxOC0w MS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNykn KTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcGVyMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Bl cjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9E IHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBT RVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoK K1VQREFURSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTkt MDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRF IHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCAnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgs OSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr Ml9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4 LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s5LDEwKScg V0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxl dGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9y bmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlk MSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAw LDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdI RVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBk ZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAo J1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4 LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m azJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50 X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdb OCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAn WzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwg KHR3byBzY2FsYXIgY29scywgU0VUIE5VTEwgc3Vic2V0KQorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcy IChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJ1syMDE4LTAx LTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgn WzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScp OworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrMl9wZXIycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19m aworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxM ICh2YWxpZF9hdCkgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gb2s6CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdf ZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAgRk9SRUlH TiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgKHBhcmVudF9pZDEp IE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRF IEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAx LTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIg V0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwg aWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAy MC0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAn WzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVy ZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNB VEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0x XScsICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9h dCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9mazJfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAn Wy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBERUZBVUxUICdbLTEsLTFd JywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrLAorICBBREQgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBp ZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcm5n MiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dz OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsICdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdb OCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVu dF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAn WzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAnWzksMTAp JywgaWQyID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVS RSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLQor CitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScs ICdbLTEsLTFdJywgJygsKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIs IHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAx LTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQx ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQg PSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAn WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIy cm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBW QUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywg J1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScg QU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdv IHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorCitUUlVOQ0FURSB0ZW1wb3Jh bF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIg KGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbNiw3KScsICcoLCknKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgn WzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBz ZXQgdGhlIFBFUklPRCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZwor ICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1Ag Q09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50 X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAg IE9OIERFTEVURSBTRVQgREVGQVVMVCAodmFsaWRfYXQpIE9OIFVQREFURSBTRVQgREVGQVVMVDsK Ky0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcKKyAgQUxURVIgQ09MVU1O IHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIy cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VU IERFRkFVTFQgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVy cyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK0RF TEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAn WzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIw MjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwg aWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5KScsICcoLCknKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9y bmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0 ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwy MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tIEZLIHdpdGggYSBjdXN0b20gcmFuZ2Ug dHlwZQorCitDUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOwor CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRf YXQgbXlkYXRlcmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcm5nM19wayBQUklNQVJZIEtF WSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQ1JFQVRFIFRBQkxFIHRlbXBv cmFsX2ZrM19ybmcycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBteWRhdGVyYW5n ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazNfcm5n MnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzMgKGlkLCBQRVJJ T0QgdmFsaWRfYXQpIE9OIERFTEVURSBDQVNDQURFCispOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cm5nMyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazNfcm5nMnJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s1LDYpJywgbXlkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFs X3JuZzMgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAt MDEtMDEnIFdIRVJFIGlkID0gJ1s4LDkpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmszX3Ju ZzJybmcgV0hFUkUgaWQgPSAnWzUsNiknOworCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcy cm5nOworRFJPUCBUQUJMRSB0ZW1wb3JhbF9ybmczOworRFJPUCBUWVBFIG15ZGF0ZXJhbmdlOwor CistLQorLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcworLS0KKworQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoCisgIGlkIGludDRyYW5nZSwKKyAg dmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxf cGFyaXRpb25lZF9ybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKQorKSBQQVJUSVRJT04gQlkgTElTVCAoaWQpOworQ1JFQVRFIFRBQkxFIHRwMSBQQVJUSVRJ T04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMSwyKScsICdb Myw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCknLCAnWzExLDEyKScsICdbMTMsMTQpJywg J1sxNSwxNiknLCAnWzE3LDE4KScsICdbMTksMjApJywgJ1syMSwyMiknLCAnWzIzLDI0KScpOwor Q1JFQVRFIFRBQkxFIHRwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZP UiBWQUxVRVMgSU4gKCdbMCwxKScsICdbMiwzKScsICdbNCw1KScsICdbNiw3KScsICdbOCw5KScs ICdbMTAsMTEpJywgJ1sxMiwxMyknLCAnWzE0LDE1KScsICdbMTYsMTcpJywgJ1sxOCwxOSknLCAn WzIwLDIxKScsICdbMjIsMjMpJywgJ1syNCwyNSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsIGRh dGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAxJyksICdvbmUnKSwKKyAgKCdbMSwyKScs IGRhdGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAzLTAxJyksICdvbmUnKSwKICAgKCdbMiwz KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyksICd0d28nKTsKIAogQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKApAQCAtMzAwNyw0ICs1 OTk1LDE5IEBAIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1s dHJuZyBXSEVSRSBpZCA9ICdbMTUsMTYpJzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0 cm5nOwogCistLQorLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IFBFUklPRHMKKy0t CisKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9wZXIgKAorICBpZCBpbnQ0cmFu Z2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIG5hbWUgdGV4dCwK KyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9wYXJpdGlvbmVkX3JuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpCispIFBBUlRJVElPTiBCWSBMSVNUIChpZCk7CitDUkVBVEUgVEFC TEUgdHAxIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9wZXIgRk9SIFZBTFVFUyBJ TiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3LDgpJywgJ1s5LDEwKScsICdbMTEsMTIp JywgJ1sxMywxNCknLCAnWzE1LDE2KScsICdbMTcsMTgpJywgJ1sxOSwyMCknLCAnWzIxLDIyKScs ICdbMjMsMjQpJyk7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3BlcjsKKwogUkVT RVQgZGF0ZXN0eWxlOwpkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxp c3QgYi9zcmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlzdAppbmRleCBjMGE4MjUzNDE4Yy4u OTQ4MTRlZTkyMDggMTAwNjQ0Ci0tLSBhL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0 CisrKyBiL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0CkBAIC04ODcsNiArODg3LDcg QEAgRm9ybURhdGFfcGdfb3BjbGFzcwogRm9ybURhdGFfcGdfb3BlcmF0b3IKIEZvcm1EYXRhX3Bn X29wZmFtaWx5CiBGb3JtRGF0YV9wZ19wYXJ0aXRpb25lZF90YWJsZQorRm9ybURhdGFfcGdfcGVy aW9kCiBGb3JtRGF0YV9wZ19wb2xpY3kKIEZvcm1EYXRhX3BnX3Byb2MKIEZvcm1EYXRhX3BnX3B1 YmxpY2F0aW9uCkBAIC0yMTYyLDYgKzIxNjMsOCBAQCBQZW5kaW5nVW5saW5rRW50cnkKIFBlbmRp bmdXcml0ZQogUGVuZGluZ1dyaXRlYmFjawogUGVyTG9ja1RhZ0VudHJ5CitQZXJpb2REZWYKK1Bl cmlvZEluZm8KIFBlcmxJbnRlcnByZXRlcgogUGVybF9wcGFkZHJfdAogUGVybXV0YXRpb24KLS0g CjIuMzkuNQoK --000000000000b399200642c99eb2 Content-Type: text/x-patch; charset="US-ASCII"; name="v59-0010-Expose-FOR-PORTION-OF-to-plpgsql-triggers.patch" Content-Disposition: attachment; filename="v59-0010-Expose-FOR-PORTION-OF-to-plpgsql-triggers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mhkxvk4m9 RnJvbSA1ZTVmYjYwMjcwZjI4MGZhY2JkODg3ZGIxMWJlYmZiOWRmNjE4MDJiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMjQgMTg6NTQ6MzcgLTA3MDAKU3ViamVj dDogW1BBVENIIHY1OSAxMC8xMV0gRXhwb3NlIEZPUiBQT1JUSU9OIE9GIHRvIHBscGdzcWwgdHJp Z2dlcnMKCkl0IGlzIGhlbHBmdWwgZm9yIHRyaWdnZXJzIHRvIHNlZSB3aGF0IHRoZSBGT1IgUE9S VElPTiBPRiBjbGF1c2UKc3BlY2lmaWVkOiBib3RoIHRoZSBjb2x1bW4vcGVyaW9kIG5hbWUgYW5k IHRoZSB0YXJnZXRlZCBib3VuZHMuIE91ciBSSQp0cmlnZ2VycyByZXF1aXJlIHRoaXMgaW5mb3Jt YXRpb24sIGFuZCB3ZSBhcmUgcGFzc2luZyBpdCBhcyBwYXJ0IG9mIHRoZQpUcmlnZ2VyRGF0YSBz dHJ1Y3QuIFRoaXMgY29tbWl0IGFsbG93cyBwbHBnc3FsIHRyaWdnZXIgZnVuY3Rpb25zIHRvCmFj Y2VzcyB0aGUgc2FtZSBpbmZvcm1hdGlvbiwgdXNpbmcgdGhlIG5ldyBUR19QRVJJT0RfQ09MVU1O IGFuZApUR19QRVJJT0RfVEFSR0VUIHZhcmlhYmxlcy4KCkF1dGhvcjogUGF1bCBBLiBKdW5nd2ly dGggPHBqQGlsbHVtaW5hdGVkY29tcHV0aW5nLmNvbT4KLS0tCiBkb2Mvc3JjL3NnbWwvcGxwZ3Nx bC5zZ21sICAgICAgICAgICAgICAgICAgICB8IDI0ICsrKysrKysrKwogc3JjL3BsL3BscGdzcWwv c3JjL3BsX2NvbXAuYyAgICAgICAgICAgICAgICAgfCAyNiArKysrKysrKysKIHNyYy9wbC9wbHBn c3FsL3NyYy9wbF9leGVjLmMgICAgICAgICAgICAgICAgIHwgMzIgKysrKysrKysrKysrCiBzcmMv cGwvcGxwZ3NxbC9zcmMvcGxwZ3NxbC5oICAgICAgICAgICAgICAgICB8ICAyICsKIHNyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRpb25fb2Yub3V0IHwgNTUgKysrKysrKysrKystLS0t LS0tLS0KIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29mLnNxbCAgICAgIHwgIDkg KysrLQogNiBmaWxlcyBjaGFuZ2VkLCAxMjEgaW5zZXJ0aW9ucygrKSwgMjcgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3BscGdzcWwuc2dtbCBiL2RvYy9zcmMvc2dtbC9w bHBnc3FsLnNnbWwKaW5kZXggZTkzNzQ5MWU2YjguLmY1MTk5ODcyZTJlIDEwMDY0NAotLS0gYS9k b2Mvc3JjL3NnbWwvcGxwZ3NxbC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9wbHBnc3FsLnNnbWwK QEAgLTQyNDcsNiArNDI0NywzMCBAQCBBU1NFUlQgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPmNvbmRpdGlvbjwvcmVwbGFjZWFibGU+IDxvcHRpb25hbD4gLCA8cmVwbAogICAgICAgPC9w YXJhPgogICAgICA8L2xpc3RpdGVtPgogICAgIDwvdmFybGlzdGVudHJ5PgorCisgICAgPHZhcmxp c3RlbnRyeSBpZD0icGxwZ3NxbC1kbWwtdHJpZ2dlci10Zy10ZW1wb3JhbC1jb2x1bW4iPgorICAg ICA8dGVybT48dmFybmFtZT5UR19QRVJJT0RfTkFNRTwvdmFybmFtZT4gPHR5cGU+dGV4dDwvdHlw ZT48L3Rlcm0+CisgICAgIDxsaXN0aXRlbT4KKyAgICAgIDxwYXJhPgorICAgICAgIHRoZSBjb2x1 bW4gbmFtZSB1c2VkIGluIGEgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGNsYXVz ZSwKKyAgICAgICBvciBlbHNlIDxzeW1ib2w+TlVMTDwvc3ltYm9sPi4KKyAgICAgIDwvcGFyYT4K KyAgICAgPC9saXN0aXRlbT4KKyAgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgIDx2YXJsaXN0ZW50 cnkgaWQ9InBscGdzcWwtZG1sLXRyaWdnZXItdGctdGVtcG9yYWwtdGFyZ2V0Ij4KKyAgICAgPHRl cm0+PHZhcm5hbWU+VEdfUEVSSU9EX0JPVU5EUzwvdmFybmFtZT4gPHR5cGU+dGV4dDwvdHlwZT48 L3Rlcm0+CisgICAgIDxsaXN0aXRlbT4KKyAgICAgIDxwYXJhPgorICAgICAgIHRoZSByYW5nZS9t dWx0aXJhbmdlL2V0Yy4gZ2l2ZW4gYXMgdGhlIGJvdW5kcyBvZiBhCisgICAgICAgPGxpdGVyYWw+ Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGNsYXVzZSwgZWl0aGVyIGRpcmVjdGx5ICh3aXRoIHBh cmVucyBzeW50YXgpCisgICAgICAgb3IgY29tcHV0ZWQgZnJvbSB0aGUgPGxpdGVyYWw+RlJPTTwv bGl0ZXJhbD4gYW5kIDxsaXRlcmFsPlRPPC9saXRlcmFsPiBib3VuZHMuCisgICAgICAgPHN5bWJv bD5OVUxMPC9zeW1ib2w+IGlmIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiB3YXMg bm90IHVzZWQuCisgICAgICAgVGhpcyBpcyBhIHRleHQgdmFsdWUgYmFzZWQgb24gdGhlIHR5cGUn cyBvdXRwdXQgZnVuY3Rpb24sCisgICAgICAgc2luY2UgdGhlIHR5cGUgY2FuJ3QgYmUga25vd24g YXQgZnVuY3Rpb24gY3JlYXRpb24gdGltZS4KKyAgICAgIDwvcGFyYT4KKyAgICAgPC9saXN0aXRl bT4KKyAgICA8L3Zhcmxpc3RlbnRyeT4KICAgIDwvdmFyaWFibGVsaXN0PgogICA8L3BhcmE+CiAK ZGlmZiAtLWdpdCBhL3NyYy9wbC9wbHBnc3FsL3NyYy9wbF9jb21wLmMgYi9zcmMvcGwvcGxwZ3Nx bC9zcmMvcGxfY29tcC5jCmluZGV4IGY2OTc2Njg5YTY5Li41OTc3NjM1OGE2NSAxMDA2NDQKLS0t IGEvc3JjL3BsL3BscGdzcWwvc3JjL3BsX2NvbXAuYworKysgYi9zcmMvcGwvcGxwZ3NxbC9zcmMv cGxfY29tcC5jCkBAIC02MTcsNiArNjE3LDMyIEBAIHBscGdzcWxfY29tcGlsZV9jYWxsYmFjayhG dW5jdGlvbkNhbGxJbmZvIGZjaW5mbywKIAkJCXZhci0+ZHR5cGUgPSBQTFBHU1FMX0RUWVBFX1BS T01JU0U7CiAJCQkoKFBMcGdTUUxfdmFyICopIHZhciktPnByb21pc2UgPSBQTFBHU1FMX1BST01J U0VfVEdfQVJHVjsKIAorCQkJLyogQWRkIHRoZSB2YXJpYWJsZSB0Z19wZXJpb2RfbmFtZSAqLwor CQkJdmFyID0gcGxwZ3NxbF9idWlsZF92YXJpYWJsZSgidGdfcGVyaW9kX25hbWUiLCAwLAorCQkJ CQkJCQkJCSBwbHBnc3FsX2J1aWxkX2RhdGF0eXBlKFRFWFRPSUQsCisJCQkJCQkJCQkJCQkJCQkJ LTEsCisJCQkJCQkJCQkJCQkJCQkJZnVuY3Rpb24tPmZuX2lucHV0X2NvbGxhdGlvbiwKKwkJCQkJ CQkJCQkJCQkJCQlOVUxMKSwKKwkJCQkJCQkJCQkgdHJ1ZSk7CisJCQlBc3NlcnQodmFyLT5kdHlw ZSA9PSBQTFBHU1FMX0RUWVBFX1ZBUik7CisJCQl2YXItPmR0eXBlID0gUExQR1NRTF9EVFlQRV9Q Uk9NSVNFOworCQkJKChQTHBnU1FMX3ZhciAqKSB2YXIpLT5wcm9taXNlID0gUExQR1NRTF9QUk9N SVNFX1RHX1BFUklPRF9OQU1FOworCisJCQkvKgorCQkJICogQWRkIHRoZSB2YXJpYWJsZSB0byB0 Z19wZXJpb2RfYm91bmRzLiBUaGlzIGNvdWxkIGJlIGFueQorCQkJICogcmFuZ2V0eXBlIG9yIG11 bHRpcmFuZ2V0eXBlIG9yIHVzZXItc3VwcGxpZWQgdHlwZSwgc28gdGhlIGJlc3QKKwkJCSAqIHdl IGNhbiBvZmZlciBpcyBhIFRFWFQgdmFyaWFibGUuCisJCQkgKi8KKwkJCXZhciA9IHBscGdzcWxf YnVpbGRfdmFyaWFibGUoInRnX3BlcmlvZF9ib3VuZHMiLCAwLAorCQkJCQkJCQkJCSBwbHBnc3Fs X2J1aWxkX2RhdGF0eXBlKFRFWFRPSUQsCisJCQkJCQkJCQkJCQkJCQkJLTEsCisJCQkJCQkJCQkJ CQkJCQkJZnVuY3Rpb24tPmZuX2lucHV0X2NvbGxhdGlvbiwKKwkJCQkJCQkJCQkJCQkJCQlOVUxM KSwKKwkJCQkJCQkJCQkgdHJ1ZSk7CisJCQlBc3NlcnQodmFyLT5kdHlwZSA9PSBQTFBHU1FMX0RU WVBFX1ZBUik7CisJCQl2YXItPmR0eXBlID0gUExQR1NRTF9EVFlQRV9QUk9NSVNFOworCQkJKChQ THBnU1FMX3ZhciAqKSB2YXIpLT5wcm9taXNlID0gUExQR1NRTF9QUk9NSVNFX1RHX1BFUklPRF9C T1VORFM7CisKIAkJCWJyZWFrOwogCiAJCWNhc2UgUExQR1NRTF9FVkVOVF9UUklHR0VSOgpkaWZm IC0tZ2l0IGEvc3JjL3BsL3BscGdzcWwvc3JjL3BsX2V4ZWMuYyBiL3NyYy9wbC9wbHBnc3FsL3Ny Yy9wbF9leGVjLmMKaW5kZXggZDE5NDI1YjdhNzEuLjExZWI1YTYwYTc5IDEwMDY0NAotLS0gYS9z cmMvcGwvcGxwZ3NxbC9zcmMvcGxfZXhlYy5jCisrKyBiL3NyYy9wbC9wbHBnc3FsL3NyYy9wbF9l eGVjLmMKQEAgLTEzODUsNiArMTM4NSw3IEBAIHBscGdzcWxfZnVsZmlsbF9wcm9taXNlKFBMcGdT UUxfZXhlY3N0YXRlICplc3RhdGUsCiAJCQkJCQlQTHBnU1FMX3ZhciAqdmFyKQogewogCU1lbW9y eUNvbnRleHQgb2xkY29udGV4dDsKKwlGb3JQb3J0aW9uT2ZTdGF0ZSAqZnBvOwogCiAJaWYgKHZh ci0+cHJvbWlzZSA9PSBQTFBHU1FMX1BST01JU0VfTk9ORSkKIAkJcmV0dXJuOwkJCQkJLyogbm90 aGluZyB0byBkbyAqLwpAQCAtMTUxNiw2ICsxNTE3LDM3IEBAIHBscGdzcWxfZnVsZmlsbF9wcm9t aXNlKFBMcGdTUUxfZXhlY3N0YXRlICplc3RhdGUsCiAJCQl9CiAJCQlicmVhazsKIAorCQljYXNl IFBMUEdTUUxfUFJPTUlTRV9UR19QRVJJT0RfTkFNRToKKwkJCWlmIChlc3RhdGUtPnRyaWdkYXRh ID09IE5VTEwpCisJCQkJZWxvZyhFUlJPUiwgInRyaWdnZXIgcHJvbWlzZSBpcyBub3QgaW4gYSB0 cmlnZ2VyIGZ1bmN0aW9uIik7CisJCQlpZiAoZXN0YXRlLT50cmlnZGF0YS0+dGdfdGVtcG9yYWwp CisJCQkJYXNzaWduX3RleHRfdmFyKGVzdGF0ZSwgdmFyLCBlc3RhdGUtPnRyaWdkYXRhLT50Z190 ZW1wb3JhbC0+ZnBfcmFuZ2VOYW1lKTsKKwkJCWVsc2UKKwkJCQlhc3NpZ25fc2ltcGxlX3Zhcihl c3RhdGUsIHZhciwgKERhdHVtKSAwLCB0cnVlLCBmYWxzZSk7CisJCQlicmVhazsKKworCQljYXNl IFBMUEdTUUxfUFJPTUlTRV9UR19QRVJJT0RfQk9VTkRTOgorCQkJZnBvID0gZXN0YXRlLT50cmln ZGF0YS0+dGdfdGVtcG9yYWw7CisKKwkJCWlmIChlc3RhdGUtPnRyaWdkYXRhID09IE5VTEwpCisJ CQkJZWxvZyhFUlJPUiwgInRyaWdnZXIgcHJvbWlzZSBpcyBub3QgaW4gYSB0cmlnZ2VyIGZ1bmN0 aW9uIik7CisJCQlpZiAoZnBvKQorCQkJeworCisJCQkJT2lkCQkJZnVuY2lkOworCQkJCWJvb2wJ CXZhcmxlbmE7CisKKwkJCQlnZXRUeXBlT3V0cHV0SW5mbyhmcG8tPmZwX3JhbmdlVHlwZSwgJmZ1 bmNpZCwgJnZhcmxlbmEpOworCQkJCUFzc2VydChPaWRJc1ZhbGlkKGZ1bmNpZCkpOworCisJCQkJ YXNzaWduX3RleHRfdmFyKGVzdGF0ZSwgdmFyLAorCQkJCQkJCQlPaWRPdXRwdXRGdW5jdGlvbkNh bGwoZnVuY2lkLAorCQkJCQkJCQkJCQkJCSAgZnBvLT5mcF90YXJnZXRSYW5nZSkpOworCQkJfQor CQkJZWxzZQorCQkJCWFzc2lnbl9zaW1wbGVfdmFyKGVzdGF0ZSwgdmFyLCAoRGF0dW0pIDAsIHRy dWUsIGZhbHNlKTsKKwkJCWJyZWFrOworCiAJCWNhc2UgUExQR1NRTF9QUk9NSVNFX1RHX0VWRU5U OgogCQkJaWYgKGVzdGF0ZS0+ZXZ0cmlnZGF0YSA9PSBOVUxMKQogCQkJCWVsb2coRVJST1IsICJl dmVudCB0cmlnZ2VyIHByb21pc2UgaXMgbm90IGluIGFuIGV2ZW50IHRyaWdnZXIgZnVuY3Rpb24i KTsKZGlmZiAtLWdpdCBhL3NyYy9wbC9wbHBnc3FsL3NyYy9wbHBnc3FsLmggYi9zcmMvcGwvcGxw Z3NxbC9zcmMvcGxwZ3NxbC5oCmluZGV4IDVmMTkzYTM3MTgzLi44MDAwMTA0YmM4OSAxMDA2NDQK LS0tIGEvc3JjL3BsL3BscGdzcWwvc3JjL3BscGdzcWwuaAorKysgYi9zcmMvcGwvcGxwZ3NxbC9z cmMvcGxwZ3NxbC5oCkBAIC04NSw2ICs4NSw4IEBAIHR5cGVkZWYgZW51bSBQTHBnU1FMX3Byb21p c2VfdHlwZQogCVBMUEdTUUxfUFJPTUlTRV9UR19BUkdWLAogCVBMUEdTUUxfUFJPTUlTRV9UR19F VkVOVCwKIAlQTFBHU1FMX1BST01JU0VfVEdfVEFHLAorCVBMUEdTUUxfUFJPTUlTRV9UR19QRVJJ T0RfTkFNRSwKKwlQTFBHU1FMX1BST01JU0VfVEdfUEVSSU9EX0JPVU5EUywKIH0gUExwZ1NRTF9w cm9taXNlX3R5cGU7CiAKIC8qCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2Zvcl9wb3J0aW9uX29mLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRp b25fb2Yub3V0CmluZGV4IDkyODhiNDIyNGY3Li41MmZiMDQ0ZDJlNSAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQKKysrIGIvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQKQEAgLTYxMyw4ICs2MTMsMTMgQEAg Q1JFQVRFIEZVTkNUSU9OIGR1bXBfdHJpZ2dlcigpCiBSRVRVUk5TIFRSSUdHRVIgTEFOR1VBR0Ug cGxwZ3NxbCBBUwogJCQKIEJFR0lOCi0gIFJBSVNFIE5PVElDRSAnJTogJSAlICU6JywKLSAgICBU R19OQU1FLCBUR19XSEVOLCBUR19PUCwgVEdfTEVWRUw7CisgIElGIFRHX1BFUklPRF9OQU1FIElT IE5PVCBOVUxMIFRIRU4KKyAgICBSQUlTRSBOT1RJQ0UgJyU6ICUgJSBGT1IgUE9SVElPTiBPRiAl ICglKSAlOicsCisgICAgICBUR19OQU1FLCBUR19XSEVOLCBUR19PUCwgVEdfUEVSSU9EX05BTUUs IFRHX1BFUklPRF9CT1VORFMsIFRHX0xFVkVMOworICBFTFNFCisgICAgUkFJU0UgTk9USUNFICcl OiAlICUgJTonLAorICAgICAgVEdfTkFNRSwgVEdfV0hFTiwgVEdfT1AsIFRHX0xFVkVMOworICBF TkQgSUY7CiAKICAgSUYgVEdfQVJHVlswXSBUSEVOCiAgICAgUkFJU0UgTk9USUNFICcgIG9sZDog JScsIChTRUxFQ1Qgc3RyaW5nX2FnZyhvbGRfdGFibGU6OnRleHQsICdcbiAgICAgICAnKSBGUk9N IG9sZF90YWJsZSk7CkBAIC02NjQsMTAgKzY2OSwxMCBAQCBVUERBVEUgZm9yX3BvcnRpb25fb2Zf dGVzdAogICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDIxLTAxLTAxJyBUTyAnMjAy Mi0wMS0wMScKICAgU0VUIG5hbWUgPSAnZml2ZV4zJwogICBXSEVSRSBpZCA9ICdbNSw2KSc7Ci1O T1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBVUERBVEUgU1RBVEVNRU5UOgorTk9USUNF OiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IChbMjAyMS0wMS0wMSwyMDIyLTAxLTAxKSkgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxO VUxMPgogTk9USUNFOiAgICBuZXc6IDxOVUxMPgotTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJF Rk9SRSBVUERBVEUgUk9XOgorTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKFsyMDIxLTAxLTAxLDIwMjItMDEtMDEpKSBST1c6CiBO T1RJQ0U6ICAgIG9sZDogWzIwMTktMDEtMDEsMjAzMC0wMS0wMSkKIE5PVElDRTogICAgbmV3OiBb MjAyMS0wMS0wMSwyMDIyLTAxLTAxKQogTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUg SU5TRVJUIFNUQVRFTUVOVDoKQEAgLTY5NCwxOSArNjk5LDE5IEBAIE5PVElDRTogICAgbmV3OiBb MjAyMi0wMS0wMSwyMDMwLTAxLTAxKQogTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBB RlRFUiBJTlNFUlQgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAg ICBuZXc6IDxOVUxMPgotTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFU RSBST1c6CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3JvdzogQUZURVIgVVBEQVRFIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IChbMjAyMS0wMS0wMSwyMDIyLTAxLTAxKSkgUk9XOgogTk9USUNF OiAgICBvbGQ6IFsyMDE5LTAxLTAxLDIwMzAtMDEtMDEpCiBOT1RJQ0U6ICAgIG5ldzogWzIwMjEt MDEtMDEsMjAyMi0wMS0wMSkKLU5PVElDRTogIGZwb19hZnRlcl91cGRhdGVfc3RtdDogQUZURVIg VVBEQVRFIFNUQVRFTUVOVDoKK05PVElDRTogIGZwb19hZnRlcl91cGRhdGVfc3RtdDogQUZURVIg VVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChbMjAyMS0wMS0wMSwyMDIyLTAxLTAxKSkg U1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAgICBuZXc6IDxOVUxM PgogREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAogICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDIzLTAxLTAxJyBUTyAnMjAyNC0wMS0wMScKICAgV0hFUkUgaWQgPSAnWzUs NiknOwotTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgREVMRVRFIFNUQVRFTUVOVDoK K05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIERFTEVURSBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCAoWzIwMjMtMDEtMDEsMjAyNC0wMS0wMSkpIFNUQVRFTUVOVDoKIE5PVElDRTogICAg b2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3OiA8TlVMTD4KLU5PVElDRTogIGZwb19iZWZvcmVf cm93OiBCRUZPUkUgREVMRVRFIFJPVzoKK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUg REVMRVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChbMjAyMy0wMS0wMSwyMDI0LTAxLTAxKSkg Uk9XOgogTk9USUNFOiAgICBvbGQ6IFsyMDIyLTAxLTAxLDIwMzAtMDEtMDEpCiBOT1RJQ0U6ICAg IG5ldzogPE5VTEw+CiBOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBJTlNFUlQgU1RB VEVNRU5UOgpAQCAtNzMzLDEwICs3MzgsMTAgQEAgTk9USUNFOiAgICBuZXc6IFsyMDI0LTAxLTAx LDIwMzAtMDEtMDEpCiBOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVSIElOU0VS VCBTVEFURU1FTlQ6CiBOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CiBOT1RJQ0U6ICAgIG5ldzogPE5V TEw+Ci1OT1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIFJPVzoKK05P VElDRTogIGZwb19hZnRlcl9kZWxldGVfcm93OiBBRlRFUiBERUxFVEUgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgKFsyMDIzLTAxLTAxLDIwMjQtMDEtMDEpKSBST1c6CiBOT1RJQ0U6ICAgIG9sZDog WzIwMjItMDEtMDEsMjAzMC0wMS0wMSkKIE5PVElDRTogICAgbmV3OiA8TlVMTD4KLU5PVElDRTog IGZwb19hZnRlcl9kZWxldGVfc3RtdDogQUZURVIgREVMRVRFIFNUQVRFTUVOVDoKK05PVElDRTog IGZwb19hZnRlcl9kZWxldGVfc3RtdDogQUZURVIgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IChbMjAyMy0wMS0wMSwyMDI0LTAxLTAxKSkgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6 IDxOVUxMPgogTk9USUNFOiAgICBuZXc6IDxOVUxMPgogU0VMRUNUICogRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKQEAgLTgwMiwxMCArODA3LDEwIEBAIEJF R0lOOwogVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKICAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAxOC0wMS0xNScgVE8gJzIwMTktMDEtMDEnCiAgIFNFVCBuYW1lID0gJzIwMTgt MDEtMTVfdG9fMjAxOS0wMS0wMSc7Ci1OT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBV UERBVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgVVBEQVRF IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChbMjAxOC0wMS0xNSwyMDE5LTAxLTAxKSkgU1RBVEVN RU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAgICBuZXc6IDxOVUxMPgotTk9U SUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUgUk9XOgorTk9USUNFOiAgZnBvX2Jl Zm9yZV9yb3c6IEJFRk9SRSBVUERBVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKFsyMDE4LTAx LTE1LDIwMTktMDEtMDEpKSBST1c6CiBOT1RJQ0U6ICAgIG9sZDogWzIwMTgtMDEtMDEsMjAyMC0w MS0wMSkKIE5PVElDRTogICAgbmV3OiBbMjAxOC0wMS0xNSwyMDE5LTAxLTAxKQogTk9USUNFOiAg ZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVOVDoKQEAgLTgzMiwyMCArODM3 LDIwIEBAIE5PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTktMDEtMDEsMjAyMC0wMS0wMSki LG9uZSkKIE5PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfc3RtdDogQUZURVIgSU5TRVJUIFNUQVRF TUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3OiAoIlsxLDIpIiwi WzIwMTktMDEtMDEsMjAyMC0wMS0wMSkiLG9uZSkKLU5PVElDRTogIGZwb19hZnRlcl91cGRhdGVf cm93OiBBRlRFUiBVUERBVEUgUk9XOgorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFG VEVSIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoWzIwMTgtMDEtMTUsMjAxOS0wMS0w MSkpIFJPVzoKIE5PVElDRTogICAgb2xkOiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAyMC0wMS0w MSkiLG9uZSkKIE5PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTgtMDEtMTUsMjAxOS0wMS0w MSkiLDIwMTgtMDEtMTVfdG9fMjAxOS0wMS0wMSkKLU5PVElDRTogIGZwb19hZnRlcl91cGRhdGVf c3RtdDogQUZURVIgVVBEQVRFIFNUQVRFTUVOVDoKK05PVElDRTogIGZwb19hZnRlcl91cGRhdGVf c3RtdDogQUZURVIgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChbMjAxOC0wMS0xNSwy MDE5LTAxLTAxKSkgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6ICgiWzEsMikiLCJbMjAxOC0w MS0wMSwyMDIwLTAxLTAxKSIsb25lKQogTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0w MS0xNSwyMDE5LTAxLTAxKSIsMjAxOC0wMS0xNV90b18yMDE5LTAxLTAxKQogUk9MTEJBQ0s7CiBC RUdJTjsKIERFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKICAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAxLTIxJzsKLU5PVElDRTogIGZwb19iZWZvcmVf c3RtdDogQkVGT1JFIERFTEVURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6 IEJFRk9SRSBERUxFVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKCgsMjAxOC0wMS0yMSkpIFNU QVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3OiA8TlVMTD4K LU5PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgREVMRVRFIFJPVzoKK05PVElDRTogIGZw b19iZWZvcmVfcm93OiBCRUZPUkUgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0ICgoLDIw MTgtMDEtMjEpKSBST1c6CiBOT1RJQ0U6ICAgIG9sZDogWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkK IE5PVElDRTogICAgbmV3OiA8TlVMTD4KIE5PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JF IElOU0VSVCBTVEFURU1FTlQ6CkBAIC04NjAsMTAgKzg2NSwxMCBAQCBOT1RJQ0U6ICAgIG5ldzog KCJbMSwyKSIsIlsyMDE4LTAxLTIxLDIwMjAtMDEtMDEpIixvbmUpCiBOT1RJQ0U6ICBmcG9fYWZ0 ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVSIElOU0VSVCBTVEFURU1FTlQ6CiBOT1RJQ0U6ICAgIG9sZDog PE5VTEw+CiBOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTIxLDIwMjAtMDEtMDEp IixvbmUpCi1OT1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIFJPVzoK K05PVElDRTogIGZwb19hZnRlcl9kZWxldGVfcm93OiBBRlRFUiBERUxFVEUgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgKCgsMjAxOC0wMS0yMSkpIFJPVzoKIE5PVElDRTogICAgb2xkOiAoIlsxLDIp IiwiWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkiLG9uZSkKIE5PVElDRTogICAgbmV3OiA8TlVMTD4K LU5PVElDRTogIGZwb19hZnRlcl9kZWxldGVfc3RtdDogQUZURVIgREVMRVRFIFNUQVRFTUVOVDoK K05PVElDRTogIGZwb19hZnRlcl9kZWxldGVfc3RtdDogQUZURVIgREVMRVRFIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0ICgoLDIwMTgtMDEtMjEpKSBTVEFURU1FTlQ6CiBOT1RJQ0U6ICAgIG9sZDog KCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCiBOT1RJQ0U6ICAgIG5ldzog PE5VTEw+CiBST0xMQkFDSzsKQEAgLTg3MSwxMCArODc2LDEwIEBAIEJFR0lOOwogVVBEQVRFIGZv cl9wb3J0aW9uX29mX3Rlc3QKICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBOVUxMIFRP ICcyMDE4LTAxLTAyJwogICBTRVQgbmFtZSA9ICdOVUxMX3RvXzIwMTgtMDEtMDEnOwotTk9USUNF OiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgVVBEQVRFIFNUQVRFTUVOVDoKK05PVElDRTogIGZw b19iZWZvcmVfc3RtdDogQkVGT1JFIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoKCwy MDE4LTAxLTAyKSkgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAg ICBuZXc6IDxOVUxMPgotTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUgUk9X OgorTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgKCgsMjAxOC0wMS0wMikpIFJPVzoKIE5PVElDRTogICAgb2xkOiBbMjAxOC0wMS0w MSwyMDIwLTAxLTAxKQogTk9USUNFOiAgICBuZXc6IFsyMDE4LTAxLTAxLDIwMTgtMDEtMDIpCiBO T1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBJTlNFUlQgU1RBVEVNRU5UOgpAQCAtODg5 LDEwICs4OTQsMTAgQEAgTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0wMS0wMiwyMDIw LTAxLTAxKSIsb25lKQogTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBBRlRFUiBJTlNF UlQgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAgICBuZXc6ICgi WzEsMikiLCJbMjAxOC0wMS0wMiwyMDIwLTAxLTAxKSIsb25lKQotTk9USUNFOiAgZnBvX2FmdGVy X3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRl X3JvdzogQUZURVIgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0ICgoLDIwMTgtMDEtMDIp KSBST1c6CiBOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEp IixvbmUpCiBOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMTgtMDEtMDIp IixOVUxMX3RvXzIwMTgtMDEtMDEpCi1OT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6IEFG VEVSIFVQREFURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6IEFG VEVSIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoKCwyMDE4LTAxLTAyKSkgU1RBVEVN RU5UOgogTk9USUNFOiAgICBvbGQ6ICgiWzEsMikiLCJbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSIs b25lKQogTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKSIs TlVMTF90b18yMDE4LTAxLTAxKQogUk9MTEJBQ0s7CkBAIC05MjksNyArOTM0LDcgQEAgTk9USUNF OiAgICBuZXc6IFsyMDE4LTAxLTAxLDIwMTgtMDEtMTUpCiBOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5z ZXJ0X3JvdzogQUZURVIgSU5TRVJUIFJPVzoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElD RTogICAgbmV3OiBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKQotTk9USUNFOiAgZnBvX2FmdGVyX3Vw ZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3Jv dzogQUZURVIgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChbMjAxOC0wMS0xNSwyMDE5 LTAxLTAxKSkgUk9XOgogTk9USUNFOiAgICBvbGQ6IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpCiBO T1RJQ0U6ICAgIG5ldzogWzIwMTgtMDEtMTUsMjAxOS0wMS0wMSkKIEJFR0lOOwpAQCAtOTM5LDEw ICs5NDQsMTAgQEAgQ09NTUlUOwogTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9yb3c6IEFGVEVS IElOU0VSVCBST1c6CiBOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CiBOT1RJQ0U6ICAgIG5ldzogWzIw MTgtMDEtMjEsMjAxOS0wMS0wMSkKLU5PVElDRTogIGZwb19hZnRlcl9kZWxldGVfcm93OiBBRlRF UiBERUxFVEUgUk9XOgorTk9USUNFOiAgZnBvX2FmdGVyX2RlbGV0ZV9yb3c6IEFGVEVSIERFTEVU RSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoKCwyMDE4LTAxLTIxKSkgUk9XOgogTk9USUNFOiAg ICBvbGQ6IFsyMDE4LTAxLTE1LDIwMTktMDEtMDEpCiBOT1RJQ0U6ICAgIG5ldzogPE5VTEw+Ci1O T1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIFJPVzoKK05PVElDRTog IGZwb19hZnRlcl9kZWxldGVfcm93OiBBRlRFUiBERUxFVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgKCgsMjAxOC0wMS0yMSkpIFJPVzoKIE5PVElDRTogICAgb2xkOiBbMjAxOC0wMS0wMSwyMDE4 LTAxLTE1KQogTk9USUNFOiAgICBuZXc6IDxOVUxMPgogQkVHSU47CmRpZmYgLS1naXQgYS9zcmMv dGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9mb3JfcG9ydGlvbl9vZi5zcWwKaW5kZXggMGU2YzJkYjVhNzUuLjc0OTNjYzRjMjMzIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwKKysrIGIvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvZm9yX3BvcnRpb25fb2Yuc3FsCkBAIC00ODQsOCArNDg0LDEzIEBA IENSRUFURSBGVU5DVElPTiBkdW1wX3RyaWdnZXIoKQogUkVUVVJOUyBUUklHR0VSIExBTkdVQUdF IHBscGdzcWwgQVMKICQkCiBCRUdJTgotICBSQUlTRSBOT1RJQ0UgJyU6ICUgJSAlOicsCi0gICAg VEdfTkFNRSwgVEdfV0hFTiwgVEdfT1AsIFRHX0xFVkVMOworICBJRiBUR19QRVJJT0RfTkFNRSBJ UyBOT1QgTlVMTCBUSEVOCisgICAgUkFJU0UgTk9USUNFICclOiAlICUgRk9SIFBPUlRJT04gT0Yg JSAoJSkgJTonLAorICAgICAgVEdfTkFNRSwgVEdfV0hFTiwgVEdfT1AsIFRHX1BFUklPRF9OQU1F LCBUR19QRVJJT0RfQk9VTkRTLCBUR19MRVZFTDsKKyAgRUxTRQorICAgIFJBSVNFIE5PVElDRSAn JTogJSAlICU6JywKKyAgICAgIFRHX05BTUUsIFRHX1dIRU4sIFRHX09QLCBUR19MRVZFTDsKKyAg RU5EIElGOwogCiAgIElGIFRHX0FSR1ZbMF0gVEhFTgogICAgIFJBSVNFIE5PVElDRSAnICBvbGQ6 ICUnLCAoU0VMRUNUIHN0cmluZ19hZ2cob2xkX3RhYmxlOjp0ZXh0LCAnXG4gICAgICAgJykgRlJP TSBvbGRfdGFibGUpOwotLSAKMi4zOS41Cgo= --000000000000b399200642c99eb2--