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.96) (envelope-from ) id 1vo0Lu-00EbuZ-05 for pgsql-hackers@arkaria.postgresql.org; Thu, 05 Feb 2026 14:29:02 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vo0Ls-00H92Q-0M for pgsql-hackers@arkaria.postgresql.org; Thu, 05 Feb 2026 14:28:59 +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.96) (envelope-from ) id 1vo0Lr-00H92G-0C for pgsql-hackers@lists.postgresql.org; Thu, 05 Feb 2026 14:28:59 +0000 Received: from mail-pj1-x1036.google.com ([2607:f8b0:4864:20::1036]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vo0Lj-00000000gx7-1VTn for pgsql-hackers@postgresql.org; Thu, 05 Feb 2026 14:28:57 +0000 Received: by mail-pj1-x1036.google.com with SMTP id 98e67ed59e1d1-3530e7b3dc2so823666a91.3 for ; Thu, 05 Feb 2026 06:28:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770301730; cv=none; d=google.com; s=arc-20240605; b=hhSEX+649BFT/JG91uH2b1oJBJR//4B06ebto5O/mLPrzUpfy3Y/QD/B52fPwIWrob 9BFh7BOnhonjknKz11CLFLVhliRoIwrtq4aAYwP7+YdcoS1GlvYQ3vmCF9IiIB9BUK8O 3MCM/ipLlDg+uOTN3tDiOnK/SYkFA++N5nLP2TEx2t3OiRJHtnbZzVkpbL3A+m08jx5L 4cqRtgAANms6M9q2NsbijshFGvlVuDnzUovKTdtDyukcA2zVcb3DEkYqM/GduGDmQd/f uiQvJq2BN4smpxHmqYKNSPLCcLZ8TdcnPHctbnmyw/bnNrozO51lSPMplN3WAMoj7R0v r+Qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:dkim-signature; bh=oIwC3HIE6Jh1Xvm1X9Hft2f0yPseQGZVnefL8dtDn8s=; fh=p0FeeUsvUwr0RCeGsIMkpPv7KrrmsQChS7Y0E2YKbG0=; b=WFQMMph1JDRWAzckP6sGJz/U9brvuUP2TkS1Z53us5CkMfOOgzpMtvFMu2L17nCFLE 51i2uAIrLvWoPagn8mHgGT2vh4xKwZVAsidxkI7gyva7AySFNdTwkoCl/mhpr2tvK4Oy 0Rl8B6o30O6pJ9PKdlIbPPZLUlNbArMUwwo9RmPNWtEmdRnIVwVjTln8NXnFfGbPjK4g fxvE0NKhaKex4janPjx3A81AZAKUkZHuux+25pKQNofLiyvTxSgPW0+EOgaI9e5/DPxS p1TuLHS8TyECcnUNxP7B9BZJ4ZSnL2Lz0qWiLhUhQ06I0YEzfmcQ62Ax5NPBWAVOwNoG Kvlg==; darn=postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770301730; x=1770906530; darn=postgresql.org; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=oIwC3HIE6Jh1Xvm1X9Hft2f0yPseQGZVnefL8dtDn8s=; b=MxJEFdkHM0UD3sEG81Y/9DqBMnkYxQ5Rl1wCPKDK4TBVfucRyFKecn96gJUxs++Tr1 vXqJZGty0ycfqnDYXIVC9zmcihQRxu+Y6z6wLNvWLaiuyYAxeyudCyt/OxBixbz1c1Gr CkEh9UbL4lL5JxSENjvu6SCknX0W+GZbdDbnlKgxuj4iekESYTYdneb8huNETq0iPJDt fkgTNKdSN7fQ++UsKwkUPyphKiL111odljdDiSiPS0SbsyVRUkbweCxqKLUR+Ss7VTpD xRcuwDMus5QzzlKMyRpiN9n1zPP8FdDyvsSdvPd3y26MKkBXhQHcULzeZTVxtU/GBR99 Uc1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770301730; x=1770906530; h=cc:to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=oIwC3HIE6Jh1Xvm1X9Hft2f0yPseQGZVnefL8dtDn8s=; b=vLC0pb3CFW5ui8TBZslb4mmjs2Bz0XGStURIEGcaOryq/s2WERkbSPPA6OorXTOkv3 CFm4lC9aRmlIo6IxhYE6pMjM7KUc1qO5LbShnLyRXQKJl10TjRONpZS09UddffjBCk6h oycKqdMhCKQ3qLYQ1KzefXLrgoADJhpTLOFUax0BNpJD41KdNYiAMYG2amipMX1/0J+d CJ0I+XuJbNfHKKWR86BnfmGhMgW/uORFB/S4S6ltLlE6AKr7Pjur9NhfbLiL+D+lvKWz t+uUNwR0K45J6kE/8u1+dFrbxAWmg4ZF+QNtyTWsgTyOZEeYLHfSBhZyHN0aD7kip/x0 mUZA== X-Forwarded-Encrypted: i=1; AJvYcCVl0bbfNPMopZP9ZOjnZeni7AUbz3qyiiSqG5kY/PI77pItry0pRHrH44RubbbOGA2BBetxWoe/cRYnMbko@postgresql.org X-Gm-Message-State: AOJu0Yy8kA8rmSBvPYo+/TGBTmfDgGbl2dpMMjQRMrNYNNcFrt44SFTC 4QuaW9Lw7TtkTADC19pGBKEjVJXDPHmOSWLvS9YPxeNGt+dRIAhZ2bZpxfexN1UTNzaXLwstf4H E/TgaLKyZAI15AzmzhnRy8KP565Tfacs= X-Gm-Gg: AZuq6aL24G98PkVqpM8dXaypl0Y+tLqZyjODN9oo3qbhKesyZ7uvF4agnHmy03002Py NAa1Ege3dKNo5c3vFBTyrmNAZ0g8k0piZrqkvfXDcRIxtfIG4o9G4RBXl+/osSN8shuikYW5OtY e2p0NY5m28/B7Yun3h/04vcpjY9+IMKbyd6+z753FuBz3jE/kNfnksNDpTwtKkA0gn54jlXuxJ8 oEgYbRRzCThQYm7gCI2kRXNplRkSXHwK1TWgUO0DFlO1Rn4/BTqe2qZEzriaDR4pJa/bjh2yI2F WbqG81nBNfupxF2n+cwwa+eaXqur X-Received: by 2002:a17:90b:4f87:b0:34c:99d6:175d with SMTP id 98e67ed59e1d1-354870aadc4mr5677683a91.2.1770301730048; Thu, 05 Feb 2026 06:28:50 -0800 (PST) MIME-Version: 1.0 References: <20260204.192222.892684621512920290.ishii@postgresql.org> <20260205.102519.1298921431937419793.ishii@postgresql.org> In-Reply-To: <20260205.102519.1298921431937419793.ishii@postgresql.org> Reply-To: assam258@gmail.com From: Henson Choi Date: Thu, 5 Feb 2026 23:28:37 +0900 X-Gm-Features: AZwV_QgJE_4LONrYh4YyKpOAj7BRidgVov-oq2Zo5zv7wVpBubc3u8NC3-AyWXA Message-ID: Subject: Re: Row pattern recognition To: Tatsuo Ishii Cc: jacob.champion@enterprisedb.com, david.g.johnston@gmail.com, vik@postgresfriends.org, er@xs4all.nl, peter@eisentraut.org, pgsql-hackers@postgresql.org Content-Type: multipart/mixed; boundary="000000000000c3ee27064a147d9d" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000c3ee27064a147d9d Content-Type: multipart/alternative; boundary="000000000000c3ee26064a147d9b" --000000000000c3ee26064a147d9b Content-Type: text/plain; charset="UTF-8" Hi Tatsuo, > Done. Please see the attached patch. > > Looks good to me. > Thank you for reviewing. > I changed > DEFINE A AS v > COALESCE(PREV(v), 0) > to > DEFINE A AS v > PREV(v) OR PREV(v) IS NULL > and get following result. > > EXPLAIN (ANALYZE, BUFFERS OFF, COSTS OFF, TIMING OFF, SUMMARY OFF) > SELECT count(*) OVER w > FROM generate_series(1, 50) AS s(v) > WINDOW w AS ( > ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING > AFTER MATCH SKIP PAST LAST ROW > PATTERN (A{3,}) > DEFINE A AS v > PREV(v) OR PREV(v) IS NULL > ); > QUERY PLAN > ---------------------------------------------------------------------- > WindowAgg (actual rows=50.00 loops=1) > Window: w AS (ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) > Pattern: a{3,}" > Storage: Memory Maximum Storage: 18kB > NFA States: 3 peak, 99 total, 0 merged > NFA Contexts: 2 peak, 51 total, 0 pruned > NFA: 1 matched (len 50/50/50.0), 0 mismatched > NFA: 49 absorbed (len 1/1/1.0), 0 skipped > -> Function Scan on generate_series s (actual rows=50.00 loops=1) > (9 rows) > > Probably we can restore 11.3 test in v43? > Yes, I've already restored Test 11.3 with the original pattern: DEFINE A AS v > PREV(v) OR PREV(v) IS NULL Additionally, I've implemented cross-platform normalization for Storage memory values to address the platform differences (18kB vs 19kB, 23kB vs 24kB, etc.) observed between macOS and Rocky Linux 10. The attached patch includes: 1. Test 11.3 restoration with original PREV(v) IS NULL pattern 2. Cross-platform Storage normalization using rpr_explain_filter() PL/pgSQL function - Normalizes text format: "Maximum Storage: 18kB" -> "Maximum Storage: NkB" - Normalizes JSON format: "Maximum Storage": 17 -> "Maximum Storage": 0 - Normalizes XML format: 17 -> 0 - Preserves NFA statistics unchanged (they are test assertions) 3. All EXPLAIN statements wrapped with rpr_explain_filter() 4. Removed rpr_explain_1.out (no longer needed) 5. Added rpr_explain to parallel_schedule test suite Patch statistics: src/test/regress/expected/rpr_explain.out | 559 +++--- src/test/regress/expected/rpr_explain_1.out | 1803 ------------------- src/test/regress/parallel_schedule | 2 +- src/test/regress/sql/rpr_explain.sql | 294 ++- 4 files changed, 521 insertions(+), 2137 deletions(-) delete mode 100644 src/test/regress/expected/rpr_explain_1.out Best regards, Henson --000000000000c3ee26064a147d9b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Tatsuo,

> Done. Please see the attached patch.

Looks good to me.
=C2=A0
Thank you for revie= wing.
=C2=A0
I changed
=C2=A0 =C2=A0DEFINE A AS v > COALESCE(PREV(v), 0)
to
=C2=A0 =C2=A0DEFINE A AS v > PREV(v) OR PREV(v) IS NULL
=C2=A0and get following result.

EXPLAIN (ANALYZE, BUFFERS OFF, COSTS OFF, TIMING OFF, SUMMARY OFF)
SELECT count(*) OVER w
FROM generate_series(1, 50) AS s(v)
WINDOW w AS (
=C2=A0 =C2=A0 ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING
=C2=A0 =C2=A0 AFTER MATCH SKIP PAST LAST ROW
=C2=A0 =C2=A0 PATTERN (A{3,})
=C2=A0 =C2=A0 DEFINE A AS v > PREV(v) OR PREV(v) IS NULL
);
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 QUERY PLAN=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 <= br> ----------------------------------------------------------------------
=C2=A0WindowAgg (actual rows=3D50.00 loops=3D1)
=C2=A0 =C2=A0Window: w AS (ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING= )
=C2=A0 =C2=A0Pattern: a{3,}"
=C2=A0 =C2=A0Storage: Memory=C2=A0 Maximum Storage: 18kB
=C2=A0 =C2=A0NFA States: 3 peak, 99 total, 0 merged
=C2=A0 =C2=A0NFA Contexts: 2 peak, 51 total, 0 pruned
=C2=A0 =C2=A0NFA: 1 matched (len 50/50/50.0), 0 mismatched
=C2=A0 =C2=A0NFA: 49 absorbed (len 1/1/1.0), 0 skipped
=C2=A0 =C2=A0->=C2=A0 Function Scan on generate_series s (actual rows=3D= 50.00 loops=3D1)
(9 rows)

Probably we can restore 11.3 test in v43?

Yes, I've already restored Test 11.3 with the original pattern:
=C2=A0 DEFINE A AS v > PREV(v) OR PREV(v) IS NULL

Additionally,= I've implemented cross-platform normalization for Storage memory value= s
to address the platform differences (18kB vs 19kB, 23kB vs 24kB, etc.)= observed between
macOS and Rocky Linux 10.

The attached patch in= cludes:

1. Test 11.3 restoration with original PREV(v) IS NULL patte= rn
2. Cross-platform Storage normalization using rpr_explain_filter() PL= /pgSQL function
=C2=A0 =C2=A0- Normalizes text format: "Maximum Sto= rage: 18kB" -> "Maximum Storage: NkB"
=C2=A0 =C2=A0- N= ormalizes JSON format: "Maximum Storage": 17 -> "Maximum = Storage": 0
=C2=A0 =C2=A0- Normalizes XML format: <Maximum-Stora= ge>17</Maximum-Storage> -> <Maximum-Storage>0</Maximum= -Storage>
=C2=A0 =C2=A0- Preserves NFA statistics unchanged (they are= test assertions)
3. All EXPLAIN statements wrapped with rpr_explain_fil= ter()
4. Removed rpr_explain_1.out (no longer needed)
5. Added rpr_ex= plain to parallel_schedule test suite

Patch statistics:
=C2=A0src= /test/regress/expected/rpr_explain.out =C2=A0 | =C2=A0559 +++---
=C2=A0s= rc/test/regress/expected/rpr_explain_1.out | 1803 -------------------
= =C2=A0src/test/regress/parallel_schedule =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= | =C2=A0 =C2=A02 +-
=C2=A0src/test/regress/sql/rpr_explain.sql =C2=A0 = =C2=A0 =C2=A0 =C2=A0| =C2=A0294 ++-
=C2=A04 files changed, 521 insertion= s(+), 2137 deletions(-)
=C2=A0delete mode 100644 src/test/regress/expect= ed/rpr_explain_1.out

Best regards,
Henson=C2=A0
--000000000000c3ee26064a147d9b-- --000000000000c3ee27064a147d9d Content-Type: text/plain; charset="US-ASCII"; name="fixme-and-storage.txt" Content-Disposition: attachment; filename="fixme-and-storage.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_ml9j76k50 RnJvbSBmMzA5N2Y5YzgyYjI1Y2I1ZWQ2MGNhYTMyNDFlNTg5MzVlNzk3NTM1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIZW5zb24gQ2hvaSA8YXNzYW0yNThAZ21haWwuY29tPgpEYXRl OiBUaHUsIDUgRmViIDIwMjYgMjI6MzE6MTQgKzA5MDAKU3ViamVjdDogW1BBVENIXSBSZW1vdmUg RklYTUUgYW5kIG5vcm1hbGl6ZSBTdG9yYWdlIHZhbHVlcwoKLS0tCiBzcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3Jwcl9leHBsYWluLm91dCAgIHwgIDU1OSArKystLS0KIHNyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvcnByX2V4cGxhaW5fMS5vdXQgfCAxODAzIC0tLS0tLS0tLS0tLS0tLS0tLS0K IHNyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUgICAgICAgICAgfCAgICAyICstCiBz cmMvdGVzdC9yZWdyZXNzL3NxbC9ycHJfZXhwbGFpbi5zcWwgICAgICAgIHwgIDI5NCArKy0KIDQg ZmlsZXMgY2hhbmdlZCwgNTIxIGluc2VydGlvbnMoKyksIDIxMzcgZGVsZXRpb25zKC0pCiBkZWxl dGUgbW9kZSAxMDA2NDQgc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ycHJfZXhwbGFpbl8xLm91 dAoKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcnByX2V4cGxhaW4ub3V0 IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ycHJfZXhwbGFpbi5vdXQKaW5kZXggZDg4MDQ5 MTFjOTMuLmI1Y2VhYWU1M2I1IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L3Jwcl9leHBsYWluLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Jwcl9leHBs YWluLm91dApAQCAtNiw2ICs2LDM4IEBACiAtLSAtIE5GQSBDb250ZXh0czogcGVhaywgdG90YWws IGFic29yYmVkLCBza2lwcGVkCiAtLSAtIE5GQTogbWF0Y2hlZCAobGVuIG1pbi9tYXgvYXZnKSwg bWlzbWF0Y2hlZCAobGVuIG1pbi9tYXgvYXZnKQogLS0KKy0tIEZpbHRlciBmdW5jdGlvbiB0byBu b3JtYWxpemUgU3RvcmFnZSBtZW1vcnkgdmFsdWVzIG9ubHkgKG5vdCBORkEgc3RhdGlzdGljcykK Ky0tIFdvcmtzIGZvciB0ZXh0LCBKU09OLCBhbmQgWE1MIGZvcm1hdHMKK2NyZWF0ZSBmdW5jdGlv biBycHJfZXhwbGFpbl9maWx0ZXIodGV4dCkgcmV0dXJucyBzZXRvZiB0ZXh0CitsYW5ndWFnZSBw bHBnc3FsIGFzCiskJAorZGVjbGFyZQorICAgIGxuIHRleHQ7CitiZWdpbgorICAgIGZvciBsbiBp biBleGVjdXRlICQxCisgICAgbG9vcAorICAgICAgICAtLSBOb3JtYWxpemUgbWVtb3J5IHNpemUg aW4gU3RvcmFnZSBsaW5lIG9ubHkgKHBsYXRmb3JtLWRlcGVuZGVudCkKKyAgICAgICAgLS0gS2Vl cCBORkEgc3RhdGlzdGljcyBudW1iZXJzIHVuY2hhbmdlZCAodGhleSBhcmUgdGVzdCBhc3NlcnRp b25zKQorCisgICAgICAgIC0tIFRleHQgZm9ybWF0OiAiU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVt IFN0b3JhZ2U6IDE4a0IiCisgICAgICAgIGlmIGxuIH4gJ1N0b3JhZ2U6LipNYXhpbXVtIFN0b3Jh Z2U6JyB0aGVuCisgICAgICAgICAgICBsbiA6PSByZWdleHBfcmVwbGFjZShsbiwgJ1xtXGQra0In LCAnTmtCJywgJ2cnKTsKKyAgICAgICAgZW5kIGlmOworCisgICAgICAgIC0tIEpTT04gZm9ybWF0 OiAiTWF4aW11bSBTdG9yYWdlIjogMTcgKG51bWJlciBpbiBrQiB1bml0cykKKyAgICAgICAgaWYg bG4gfiAnIk1heGltdW0gU3RvcmFnZSI6JyB0aGVuCisgICAgICAgICAgICBsbiA6PSByZWdleHBf cmVwbGFjZShsbiwgJyJNYXhpbXVtIFN0b3JhZ2UiOiBcZCsnLCAnIk1heGltdW0gU3RvcmFnZSI6 IDAnLCAnZycpOworICAgICAgICBlbmQgaWY7CisKKyAgICAgICAgLS0gWE1MIGZvcm1hdDogPE1h eGltdW0tU3RvcmFnZT4xNzwvTWF4aW11bS1TdG9yYWdlPiAobnVtYmVyIGluIGtCIHVuaXRzKQor ICAgICAgICBpZiBsbiB+ICc8TWF4aW11bS1TdG9yYWdlPicgdGhlbgorICAgICAgICAgICAgbG4g Oj0gcmVnZXhwX3JlcGxhY2UobG4sICc8TWF4aW11bS1TdG9yYWdlPlxkKzwvTWF4aW11bS1TdG9y YWdlPicsICc8TWF4aW11bS1TdG9yYWdlPjA8L01heGltdW0tU3RvcmFnZT4nLCAnZycpOworICAg ICAgICBlbmQgaWY7CisKKyAgICAgICAgcmV0dXJuIG5leHQgbG47CisgICAgZW5kIGxvb3A7Citl bmQ7CiskJDsKIC0tIFNldHVwOiBDcmVhdGUgdGVzdCB0YWJsZXMKIENSRUFURSBURU1QIFRBQkxF IG5mYV90ZXN0ICgKICAgICBpZCBzZXJpYWwsCkBAIC00MSw2ICs3Myw3IEBAIFZBTFVFUwogLS0g U2VjdGlvbiAxOiBCYXNpYyBORkEgU3RhdGlzdGljcyBUZXN0cwogLS0KIC0tIFRlc3QgMS4xOiBT aW1wbGUgcGF0dGVybiAtIHNob3VsZCBzaG93IGJhc2ljIHN0YXRpc3RpY3MKK1NFTEVDVCBycHJf ZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9G RiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9N IG5mYV90ZXN0CkBAIC00OCwxNCArODEsMTQgQEAgV0lORE9XIHcgQVMgKAogICAgIFJPV1MgQkVU V0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwogICAgIEFGVEVSIE1BVENI IFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEgQikKLSAgICBERUZJTkUgQSBBUyBj YXQgPSAnQScsIEIgQVMgY2F0ID0gJ0InCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg IFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorICAgIERFRklORSBBIEFT IGNhdCA9ICcnQScnLCBCIEFTIGNhdCA9ICcnQicnCispJyk7CisgICAgICAgICAgICAgICAgICAg ICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzog dyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQog ICAgUGF0dGVybjogYSBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdr QgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRl czogMiBwZWFrLCAxMDEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywg MTAxIHRvdGFsLCA4MCBwcnVuZWQKICAgIE5GQTogMjAgbWF0Y2hlZCAobGVuIDIvMi8yLjApLCAw IG1pc21hdGNoZWQKQEAgLTYzLDYgKzk2LDcgQEAgV0lORE9XIHcgQVMgKAogKDggcm93cykKIAog LS0gVGVzdCAxLjI6IFBhdHRlcm4gd2l0aCBubyBtYXRjaGVzIC0gMCBtYXRjaGVkCitTRUxFQ1Qg cnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NU UyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwog RlJPTSBuZmFfdGVzdApAQCAtNzAsMTQgKzEwNCwxNCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgUk9X UyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCiAgICAgQUZURVIg TUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoWCBZIFopCi0gICAgREVGSU5F IFggQVMgY2F0ID0gJ1gnLCBZIEFTIGNhdCA9ICdZJywgWiBBUyBjYXQgPSAnWicKLSk7Ci0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgCisgICAgREVGSU5FIFggQVMgY2F0ID0gJydYJycsIFkgQVMgY2F0ID0gJydZJycsIFog QVMgY2F0ID0gJydaJycKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhwbGFp bl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdn IChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRX RUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogeCB5 IHoKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdl OiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAxIHBlYWssIDEw MSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMiBwZWFrLCAxMDEgdG90YWwsIDEw MCBwcnVuZWQKICAgIE5GQTogMCBtYXRjaGVkLCAwIG1pc21hdGNoZWQKQEAgLTg1LDYgKzExOSw3 IEBAIFdJTkRPVyB3IEFTICgKICg4IHJvd3MpCiAKIC0tIFRlc3QgMS4zOiBQYXR0ZXJuIG1hdGNo aW5nIGV2ZXJ5IHJvdyAtIGhpZ2ggbWF0Y2ggY291bnQKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0 ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9G RiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIG5mYV90ZXN0CkBA IC05MywxMyArMTI4LDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBB U1QgTEFTVCBST1cKICAgICBQQVRURVJOIChSKQogICAgIERFRklORSBSIEFTIFRSVUUKLSk7Ci0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgCispOycpOworICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmls dGVyICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0 dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IHIKLSAgIFN0 b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkg IE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAyIHBlYWssIDEwMSB0b3RhbCwg MCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMiBwZWFrLCAxMDEgdG90YWwsIDAgcHJ1bmVkCiAg ICBORkE6IDEwMCBtYXRjaGVkIChsZW4gMS8xLzEuMCksIDAgbWlzbWF0Y2hlZApAQCAtMTEwLDYg KzE0NSw3IEBAIFdJTkRPVyB3IEFTICgKIC0tIFNlY3Rpb24gMjogU3RhdGUgU3RhdGlzdGljcyBU ZXN0cyAocGVhaywgdG90YWwsIG1lcmdlZCkKIC0tCiAtLSBUZXN0IDIuMTogU2ltcGxlIHF1YW50 aWZpZXIgcGF0dGVybiAtIEErIHdpdGggc2hvcnQgbWF0Y2hlcyAobm8gbWVyZ2luZykKK1NFTEVD VCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENP U1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3 CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2KQpAQCAtMTE4LDEzICsxNTQsMTMg QEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAg IFBBVFRFUk4gKEErKQogICAgIERFRklORSBBIEFTIHYgJSAyID0gMQotKTsKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAg ICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1 YWwgcm93cz01MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VS UkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIKLSAgIFN0 b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkg IE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAzIHBlYWssIDc2IHRvdGFsLCAw IG1lcmdlZAogICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDUxIHRvdGFsLCAyNSBwcnVuZWQKICAg IE5GQTogMjUgbWF0Y2hlZCAobGVuIDEvMS8xLjApLCAwIG1pc21hdGNoZWQKQEAgLTEzMiw2ICsx NjgsNyBAQCBXSU5ET1cgdyBBUyAoCiAoOCByb3dzKQogCiAtLSBUZXN0IDIuMjogQWx0ZXJuYXRp b24gcGF0dGVybiAtIG11bHRpcGxlIHN0YXRlIGJyYW5jaGVzCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBuZmFfdGVz dApAQCAtMTQwLDE1ICsxNzcsMTUgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNL SVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKChBIHwgQiB8IEMpIChEIHwgRSkpCiAgICAg REVGSU5FCi0gICAgICAgIEEgQVMgY2F0ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQg PSAnQycsCi0gICAgICAgIEQgQVMgY2F0ID0gJ0QnLCBFIEFTIGNhdCA9ICdFJwotKTsKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAKKyAgICAgICAgQSBBUyBjYXQgPSAnJ0EnJywgQiBBUyBjYXQgPSAnJ0InJywgQyBBUyBj YXQgPSAnJ0MnJywKKyAgICAgICAgRCBBUyBjYXQgPSAnJ0QnJywgRSBBUyBjYXQgPSAnJ0UnJwor KTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAg ICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEw MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cg QU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiAoYSB8IGIgfCBjIGQgfCBlKQot ICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1l bW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDUgcGVhaywgMzYzIHRv dGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDEwMSB0b3RhbCwgNDAgcHJ1 bmVkCiAgICBORkE6IDIwIG1hdGNoZWQgKGxlbiAyLzIvMi4wKSwgNDAgbWlzbWF0Y2hlZCAobGVu IDIvMi8yLjApCkBAIC0xNTYsNiArMTkzLDcgQEAgV0lORE9XIHcgQVMgKAogKDggcm93cykKIAog LS0gVGVzdCAyLjM6IENvbXBsZXggcGF0dGVybiB3aXRoIGhpZ2ggc3RhdGUgY291bnQKK1NFTEVD VCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENP U1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3 CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikKQEAgLTE2NywxMyArMjA1LDEz IEBAIFdJTkRPVyB3IEFTICgKICAgICAgICAgQSBBUyB2ICUgMyA9IDEsCiAgICAgICAgIEIgQVMg diAlIDMgPSAyLAogICAgICAgICBDIEFTIHYgJSAzID0gMAotKTsKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisp OycpOworICAgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAg ICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwg cm93cz0xMDAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJF TlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogYSsiIGIqIGMrCi0g ICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVt b3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogNSBwZWFrLCAyMzUgdG90 YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgMTAxIHRvdGFsLCA2NyBwcnVu ZWQKICAgIE5GQTogMzMgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQKQEAgLTE4 MSw2ICsyMTksNyBAQCBXSU5ET1cgdyBBUyAoCiAoOCByb3dzKQogCiAtLSBUZXN0IDIuNDogR3Jv dXBlZCBwYXR0ZXJuIHdpdGggcXVhbnRpZmllciAtIHN0YXRlIG1lcmdpbmcKK1NFTEVDVCBycHJf ZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9G RiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9N IGdlbmVyYXRlX3NlcmllcygxLCA2MCkgQVMgcyh2KQpAQCAtMTg5LDEzICsyMjgsMTMgQEAgV0lO RE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRF Uk4gKChBIEIpKykKICAgICBERUZJTkUgQSBBUyB2ICUgMiA9IDEsIEIgQVMgdiAlIDIgPSAwCi0p OwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4 cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBX aW5kb3dBZ2cgKGFjdHVhbCByb3dzPTYwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJP V1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRl cm46IChhJyBiJykrIgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE4a0IK KyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6 IDMgcGVhaywgOTEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgNjEg dG90YWwsIDMwIHBydW5lZAogICAgTkZBOiAxIG1hdGNoZWQgKGxlbiA2MC82MC82MC4wKSwgMCBt aXNtYXRjaGVkCkBAIC0yMDUsNiArMjQ0LDcgQEAgV0lORE9XIHcgQVMgKAogCiAtLSBUZXN0IDIu NTogU3RhdGUgZXhwbG9zaW9uIHBhdHRlcm4gLSBtYW55IGFsdGVybmF0aW9ucwogLS0gUGF0dGVy biAoQXxCKShBfEIpKEF8QikoQXxCKSBjYW4gY3JlYXRlIG1hbnkgcGFyYWxsZWwgc3RhdGVzCitT RUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZG LCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9W RVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBAIC0yMTMsMTMgKzI1 MywxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9X CiAgICAgUEFUVEVSTiAoKEEgfCBCKSAoQSB8IEIpIChBIHwgQikgKEEgfCBCKSAoQSB8IEIpIChB IHwgQikgKEEgfCBCKSAoQSB8IEIpKQogICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2 ICUgMiA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBX aW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExP V0lORykKICAgIFBhdHRlcm46IChhIHwgYiBhIHwgYiBhIHwgYiBhIHwgYiBhIHwgYiBhIHwgYiBh IHwgYiBhIHwgYikKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisg ICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAx NyBwZWFrLCA2MzIgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDkgcGVhaywgMTAx IHRvdGFsLCAxIHBydW5lZAogICAgTkZBOiAxMiBtYXRjaGVkIChsZW4gOC84LzguMCksIDMgbWlz bWF0Y2hlZCAobGVuIDIvNC8zLjApCkBAIC0yMjgsNiArMjY4LDcgQEAgV0lORE9XIHcgQVMgKAog KDkgcm93cykKIAogLS0gVGVzdCAyLjY6IEhpZ2ggc3RhdGUgbWVyZ2luZyAtIGFsdGVybmF0aW9u IHdpdGggcGx1cyBxdWFudGlmaWVyCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExB SU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkg T0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAw KSBBUyBzKHYpCkBAIC0yMzYsMTMgKzI3NywxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIg TUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoKEEgfCBCIHwgQykrIEQpCiAg ICAgREVGSU5FIEEgQVMgdiAlIDQgPSAxLCBCIEFTIHYgJSA0ID0gMiwgQyBBUyB2ICUgNCA9IDMs IEQgQVMgdiAlIDQgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkg UExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAg ICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAg IAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEwMC4wMCBsb29wcz0x KQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRF RCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiAoYSB8IGIgfCBjKSsgZAotICAgU3RvcmFnZTogTWVt b3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBT dG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDE1IHBlYWssIDc1MyB0b3RhbCwgMCBtZXJnZWQK ICAgIE5GQSBDb250ZXh0czogNSBwZWFrLCAxMDEgdG90YWwsIDI1IHBydW5lZAogICAgTkZBOiAy NSBtYXRjaGVkIChsZW4gNC80LzQuMCksIDAgbWlzbWF0Y2hlZApAQCAtMjUxLDYgKzI5Miw3IEBA IFdJTkRPVyB3IEFTICgKICg5IHJvd3MpCiAKIC0tIFRlc3QgMi43OiBOZXN0ZWQgcXVhbnRpZmll cnMgY2F1c2luZyBzdGF0ZSBncm93dGgKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQ TEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFS WSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAx MDAwKSBBUyBzKHYpCkBAIC0yNTksMTMgKzMwMSwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZU RVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoKChBIHwgQikrKSspCiAg ICAgREVGSU5FIEEgQVMgdiAlIDMgPSAxLCBCIEFTIHYgJSAzID0gMgotKTsKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRl ciAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdn IChhY3R1YWwgcm93cz0xMDAwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVU V0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46ICgo YSB8IGIpKykrCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAg U3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMTYg cGVhaywgNzMzNCB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogNCBwZWFrLCAxMDAx IHRvdGFsLCAzMzMgcHJ1bmVkCiAgICBORkE6IDMzNCBtYXRjaGVkIChsZW4gMS8yLzIuMCksIDAg bWlzbWF0Y2hlZApAQCAtMjc3LDYgKzMxOSw3IEBAIFdJTkRPVyB3IEFTICgKIC0tIFNlY3Rpb24g MzogQ29udGV4dCBTdGF0aXN0aWNzIFRlc3RzIChwZWFrLCB0b3RhbCwgYWJzb3JiZWQsIHNraXBw ZWQpCiAtLQogLS0gVGVzdCAzLjE6IENvbnRleHQgYWJzb3JwdGlvbiB3aXRoIHVuYm91bmRlZCBx dWFudGlmaWVyIGF0IHN0YXJ0CitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFT IHModikKQEAgLTI4NSwxMyArMzI4LDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRD SCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCKQogICAgIERFRklORSBBIEFT IHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAg ICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTUwLjAw IGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQg VU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1v cnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0 b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBwZWFrLCA5MSB0b3RhbCwgMCBtZXJnZWQKICAg IE5GQSBDb250ZXh0czogMyBwZWFrLCA1MSB0b3RhbCwgMTAgcHJ1bmVkCiAgICBORkE6IDEwIG1h dGNoZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNtYXRjaGVkCkBAIC0zMDAsNiArMzQzLDcgQEAgV0lO RE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCAzLjI6IE5vIGFic29ycHRpb24gLSBib3Vu ZGVkIHF1YW50aWZpZXIKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5B TFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBT RUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2 KQpAQCAtMzA4LDEzICszNTIsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNL SVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEF7Miw0fSBCKQogICAgIERFRklORSBBIEFT IHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAg ICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTUwLjAw IGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQg VU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGF7Miw0fSBiCi0gICBTdG9yYWdlOiBN ZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVt IFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogNyBwZWFrLCAxMDEgdG90YWwsIDAgbWVyZ2Vk CiAgICBORkEgQ29udGV4dHM6IDYgcGVhaywgNTEgdG90YWwsIDEwIHBydW5lZAogICAgTkZBOiAx MCBtYXRjaGVkIChsZW4gNS81LzUuMCksIDEwIG1pc21hdGNoZWQgKGxlbiAyLzIvMi4wKQpAQCAt MzIzLDYgKzM2Nyw3IEBAIFdJTkRPVyB3IEFTICgKICg5IHJvd3MpCiAKIC0tIFRlc3QgMy4zOiBD b250ZXh0cyBza2lwcGVkIGJ5IFNLSVAgUEFTVCBMQVNUIFJPVworU0VMRUNUIHJwcl9leHBsYWlu X2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1J TkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJh dGVfc2VyaWVzKDEsIDEwMCkgQVMgcyh2KQpAQCAtMzMxLDEzICszNzYsMTMgQEAgV0lORE9XIHcg QVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEg QiBDKQogICAgIERFRklORSBBIEFTIHYgJSAxMCA9IDEsIEIgQVMgdiAlIDEwID0gMiwgQyBBUyB2 ICUgMTAgPSAzCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAg ICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEwMC4wMCBsb29wcz0xKQogICAg V2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xM T1dJTkcpCiAgICBQYXR0ZXJuOiBhIGIgYwotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0 b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAg IE5GQSBTdGF0ZXM6IDIgcGVhaywgMTAxIHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRz OiAzIHBlYWssIDEwMSB0b3RhbCwgOTAgcHJ1bmVkCiAgICBORkE6IDEwIG1hdGNoZWQgKGxlbiAz LzMvMy4wKSwgMCBtaXNtYXRjaGVkCkBAIC0zNDUsNiArMzkwLDcgQEAgV0lORE9XIHcgQVMgKAog KDggcm93cykKIAogLS0gVGVzdCAzLjQ6IEhpZ2ggY29udGV4dCBhYnNvcnB0aW9uIC0gdW5ib3Vu ZGVkIGdyb3VwCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNU IGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBA IC0zNTMsMTMgKzM5OSwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQ QVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoKEEgQikrIEMpCiAgICAgREVGSU5FIEEgQVMgdiAl IDMgPSAxLCBCIEFTIHYgJSAzID0gMiwgQyBBUyB2ICUgMyA9IDAKLSk7Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAg ICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0 dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IChhJyBiJykr IiBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFn ZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBwZWFrLCAx MzQgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgMTAxIHRvdGFsLCA2 NyBwcnVuZWQKICAgIE5GQTogMzMgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQK QEAgLTM3MCw2ICs0MTYsNyBAQCBXSU5ET1cgdyBBUyAoCiAtLSBTZWN0aW9uIDQ6IE1hdGNoIExl bmd0aCBTdGF0aXN0aWNzIFRlc3RzCiAtLQogLS0gVGVzdCA0LjE6IEZpeGVkIGxlbmd0aCBtYXRj aGVzIC0gYWxsIHNhbWUgbGVuZ3RoCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExB SU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkg T0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBuZmFfdGVzdApAQCAtMzc4LDE1ICs0 MjUsMTUgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJP VwogICAgIFBBVFRFUk4gKEEgQiBDIEQgRSkKICAgICBERUZJTkUKLSAgICAgICAgQSBBUyBjYXQg PSAnQScsIEIgQVMgY2F0ID0gJ0InLCBDIEFTIGNhdCA9ICdDJywKLSAgICAgICAgRCBBUyBjYXQg PSAnRCcsIEUgQVMgY2F0ID0gJ0UnCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFV RVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorICAgICAgICBBIEFTIGNhdCA9 ICcnQScnLCBCIEFTIGNhdCA9ICcnQicnLCBDIEFTIGNhdCA9ICcnQycnLAorICAgICAgICBEIEFT IGNhdCA9ICcnRCcnLCBFIEFTIGNhdCA9ICcnRScnCispOycpOworICAgICAgICAgICAgICAgICAg ICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6 IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykK ICAgIFBhdHRlcm46IGEgYiBjIGQgZQotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3Jh Z2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5G QSBTdGF0ZXM6IDIgcGVhaywgMTAxIHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiAz IHBlYWssIDEwMSB0b3RhbCwgODAgcHJ1bmVkCiAgICBORkE6IDIwIG1hdGNoZWQgKGxlbiA1LzUv NS4wKSwgMCBtaXNtYXRjaGVkCkBAIC0zOTQsNiArNDQxLDcgQEAgV0lORE9XIHcgQVMgKAogKDgg cm93cykKIAogLS0gVGVzdCA0LjI6IFZhcmlhYmxlIGxlbmd0aCBtYXRjaGVzIC0gbWluL21heC9h dmcgZGlmZmVyCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNU IGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBA IC00MDIsMTMgKzQ1MCwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQ QVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgMTAg PD4gMCwgQiBBUyB2ICUgMTAgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg UVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAg ICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAg ICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEwMC4wMCBs b29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVO Qk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVtb3J5 ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9y YWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgMTkxIHRvdGFsLCAwIG1lcmdlZAogICAg TkZBIENvbnRleHRzOiAzIHBlYWssIDEwMSB0b3RhbCwgMTAgcHJ1bmVkCiAgICBORkE6IDEwIG1h dGNoZWQgKGxlbiAxMC8xMC8xMC4wKSwgMCBtaXNtYXRjaGVkCkBAIC00MTcsNiArNDY1LDcgQEAg V0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCA0LjM6IFZlcnkgbG9uZyBtYXRjaGVz CitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMg T0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCop IE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMjAwKSBBUyBzKHYpCkBAIC00MjUsMTMg KzQ3NCwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1Qg Uk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2IDw9IDE5NSwgQiBBUyB2 ID4gMTk1Ci0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAg ICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTIwMC4wMCBsb29wcz0xKQogICAgV2lu ZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJ TkcpCiAgICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3Jh Z2U6IDIza0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5G QSBTdGF0ZXM6IDMgcGVhaywgMzk2IHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiAz IHBlYWssIDIwMSB0b3RhbCwgNSBwcnVuZWQKICAgIE5GQTogMSBtYXRjaGVkIChsZW4gMTk2LzE5 Ni8xOTYuMCksIDAgbWlzbWF0Y2hlZApAQCAtNDQwLDYgKzQ4OSw3IEBAIFdJTkRPVyB3IEFTICgK ICg5IHJvd3MpCiAKIC0tIFRlc3QgNC40OiBNaXggb2Ygc2hvcnQgYW5kIGxvbmcgbWF0Y2hlcwor U0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBP VkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMCkgQVMgcyh2KQpAQCAtNDUwLDEzICs1 MDAsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIERFRklORQogICAgICAgICBBIEFTICh2ICUgMjAg PD4gMCkgQU5EICh2ICUgMjAgPD0gMTAgT1IgdiAlIDIwID4gMTUpLAogICAgICAgICBCIEFTIHYg JSAyMCA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBX aW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExP V0lORykKICAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAg TkZBIFN0YXRlczogMyBwZWFrLCAxNzEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6 IDMgcGVhaywgMTAxIHRvdGFsLCAzMCBwcnVuZWQKICAgIE5GQTogNSBtYXRjaGVkIChsZW4gNS81 LzUuMCksIDUgbWlzbWF0Y2hlZCAobGVuIDExLzExLzExLjApCkBAIC00NjksMjggKzUxOSwyOSBA QCBXSU5ET1cgdyBBUyAoCiAtLQogLS0gVGVzdCA1LjE6IFBhdHRlcm4gdGhhdCBjYXVzZXMgbWlz bWF0Y2hlcyB3aXRoIGxlbmd0aCA+IDEKIC0tIE1pc21hdGNoIGhhcHBlbnMgd2hlbiBwYXJ0aWFs IG1hdGNoIGZhaWxzIGFmdGVyIHByb2Nlc3NpbmcgbXVsdGlwbGUgcm93cworU0VMRUNUIHJwcl9l eHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZG LCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00g KAogICAgIFNFTEVDVCB2LAotICAgICAgICAgICBDQVNFIFdIRU4gdiAlIDEwIElOICgxLDIsMykg VEhFTiAnQScKLSAgICAgICAgICAgICAgICBXSEVOIHYgJSAxMCBJTiAoNCw1KSBUSEVOICdCJwot ICAgICAgICAgICAgICAgIFdIRU4gdiAlIDEwID0gNiBUSEVOICdDJwotICAgICAgICAgICAgICAg IEVMU0UgJ1gnIEVORCBBUyBjYXQKKyAgICAgICAgICAgQ0FTRSBXSEVOIHYgJSAxMCBJTiAoMSwy LDMpIFRIRU4gJydBJycKKyAgICAgICAgICAgICAgICBXSEVOIHYgJSAxMCBJTiAoNCw1KSBUSEVO ICcnQicnCisgICAgICAgICAgICAgICAgV0hFTiB2ICUgMTAgPSA2IFRIRU4gJydDJycKKyAgICAg ICAgICAgICAgICBFTFNFICcnWCcnIEVORCBBUyBjYXQKICAgICBGUk9NIGdlbmVyYXRlX3Nlcmll cygxLCAxMDApIEFTIHModikKICkgdAogV0lORE9XIHcgQVMgKAogICAgIFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwogICAgIEFGVEVSIE1BVENIIFNLSVAg UEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEErIEIrIEMpCi0gICAgREVGSU5FIEEgQVMgY2F0 ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQgPSAnQycKLSk7Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAorICAgIERFRklORSBBIEFTIGNhdCA9ICcnQScnLCBCIEFTIGNhdCA9ICcnQicnLCBDIEFTIGNh dCA9ICcnQycnCispOycpOworICAgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhwbGFpbl9m aWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93 QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBC RVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjog YSsiIGIrIGMKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBT dG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAzIHBl YWssIDE1MSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAxMDEgdG90 YWwsIDcwIHBydW5lZAogICAgTkZBOiAxMCBtYXRjaGVkIChsZW4gNi82LzYuMCksIDAgbWlzbWF0 Y2hlZApAQCAtNDk5LDE4ICs1NTAsMTkgQEAgV0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0g VGVzdCA1LjI6IExvbmcgcGFydGlhbCBtYXRjaGVzIHRoYXQgZmFpbAorU0VMRUNUIHJwcl9leHBs YWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBU SU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gKAog ICAgIFNFTEVDVCBpIEFTIHYsCiAgICAgICAgICAgIENBU0UKLSAgICAgICAgICAgICAgIFdIRU4g aSA8PSAyMCBUSEVOICdBJwotICAgICAgICAgICAgICAgV0hFTiBpIDw9IDI1IFRIRU4gJ0InCi0g ICAgICAgICAgICAgICBXSEVOIGkgPSAyNiBUSEVOICdYJyAgLS0gYnJlYWtzIHRoZSBwYXR0ZXJu Ci0gICAgICAgICAgICAgICBXSEVOIGkgPD0gNTAgVEhFTiAnQScKLSAgICAgICAgICAgICAgIFdI RU4gaSA8PSA1NSBUSEVOICdCJwotICAgICAgICAgICAgICAgV0hFTiBpID0gNTYgVEhFTiAnQycg IC0tIGNvbXBsZXRlcyBwYXR0ZXJuCi0gICAgICAgICAgICAgICBFTFNFICdZJworICAgICAgICAg ICAgICAgV0hFTiBpIDw9IDIwIFRIRU4gJydBJycKKyAgICAgICAgICAgICAgIFdIRU4gaSA8PSAy NSBUSEVOICcnQicnCisgICAgICAgICAgICAgICBXSEVOIGkgPSAyNiBUSEVOICcnWCcnICAtLSBi cmVha3MgdGhlIHBhdHRlcm4KKyAgICAgICAgICAgICAgIFdIRU4gaSA8PSA1MCBUSEVOICcnQScn CisgICAgICAgICAgICAgICBXSEVOIGkgPD0gNTUgVEhFTiAnJ0InJworICAgICAgICAgICAgICAg V0hFTiBpID0gNTYgVEhFTiAnJ0MnJyAgLS0gY29tcGxldGVzIHBhdHRlcm4KKyAgICAgICAgICAg ICAgIEVMU0UgJydZJycKICAgICAgICAgICAgRU5EIEFTIGNhdAogICAgIEZST00gZ2VuZXJhdGVf c2VyaWVzKDEsIDYwKSBpCiApIHQKQEAgLTUxOCwxNCArNTcwLDE0IEBAIFdJTkRPVyB3IEFTICgK ICAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKICAg ICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCKyBDKQot ICAgIERFRklORSBBIEFTIGNhdCA9ICdBJywgQiBBUyBjYXQgPSAnQicsIEMgQVMgY2F0ID0gJ0Mn Ci0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAorICAgIERFRklORSBBIEFTIGNhdCA9ICcnQScnLCBCIEFTIGNh dCA9ICcnQicnLCBDIEFTIGNhdCA9ICcnQycnCispOycpOworICAgICAgICAgICAgICAgICAgICAg ICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NjAuMDAgbG9vcHM9MSkKICAgIFdpbmRv dzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5H KQogICAgUGF0dGVybjogYSsiIGIrIGMKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9y YWdlOiAxOGtCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBO RkEgU3RhdGVzOiAzIHBlYWssIDExNSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czog MyBwZWFrLCA2MSB0b3RhbCwgMTYgcHJ1bmVkCiAgICBORkE6IDEgbWF0Y2hlZCAobGVuIDMwLzMw LzMwLjApLCAxIG1pc21hdGNoZWQgKGxlbiAyNi8yNi8yNi4wKQpAQCAtNTM3LDYgKzU4OSw3IEBA IFdJTkRPVyB3IEFTICgKIC0tIFNlY3Rpb24gNjogSlNPTiBGb3JtYXQgVGVzdHMKIC0tCiAtLSBU ZXN0IDYuMTogSlNPTiBmb3JtYXQgb3V0cHV0IHdpdGggYWxsIHN0YXRpc3RpY3MKK1NFTEVDVCBy cHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RT IE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYsIEZPUk1BVCBKU09OKQogU0VMRUNUIGNvdW50 KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTU0NSw4 ICs1OTgsOCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1Qg Uk9XCiAgICAgUEFUVEVSTiAoQSsgQispCiAgICAgREVGSU5FIEEgQVMgdiAlIDMgPSAxLCBCIEFT IHYgJSAzID0gMgotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBM QU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyknKTsKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBbICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKICAgIHsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICsKQEAgLTU2MCw3ICs2MTMsNyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgICAgIldp bmRvdyI6ICJ3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xM T1dJTkcpIiwrCiAgICAgICAgIlBhdHRlcm4iOiAiYStcIiBiKyIsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgIlN0b3JhZ2UiOiAiTWVtb3J5 IiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAg ICAgIk1heGltdW0gU3RvcmFnZSI6IDE3LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICArCisgICAgICAgIk1heGltdW0gU3RvcmFnZSI6IDAsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgIk5GQSBTdGF0ZXMg UGVhayI6IDMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAr CiAgICAgICAgIk5GQSBTdGF0ZXMgVG90YWwiOiA4NSwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgIk5GQSBTdGF0ZXMgTWVyZ2VkIjogMCwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCkBAIC01OTUsNiArNjQ4 LDcgQEAgV0lORE9XIHcgQVMgKAogKDEgcm93KQogCiAtLSBUZXN0IDYuMjogSlNPTiBmb3JtYXQg d2l0aCBtYXRjaCBsZW5ndGggc3RhdGlzdGljcworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcign CiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBT VU1NQVJZIE9GRiwgRk9STUFUIEpTT04pCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdl bmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikKQEAgLTYwMyw4ICs2NTcsOCBAQCBXSU5ET1cg dyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAo QSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgMTAgPD4gMCwgQiBBUyB2ICUgMTAgPSAwCi0pOwot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAorKScpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy cHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwogICAgeyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwpAQCAt NjE4LDcgKzY3Miw3IEBAIFdJTkRPVyB3IEFTICgKICAgICAgICAiV2luZG93IjogIncgQVMgKFJP V1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykiLCsKICAgICAg ICAiUGF0dGVybiI6ICJhK1wiIGIiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICsKICAgICAgICAiU3RvcmFnZSI6ICJNZW1vcnkiLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICAiTWF4aW11bSBTdG9y YWdlIjogMTcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsK KyAgICAgICAiTWF4aW11bSBTdG9yYWdlIjogMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICsKICAgICAgICAiTkZBIFN0YXRlcyBQZWFrIjogMywgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKICAgICAgICAiTkZBIFN0 YXRlcyBUb3RhbCI6IDE5MSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICsKICAgICAgICAiTkZBIFN0YXRlcyBNZXJnZWQiOiAwLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICsKQEAgLTY1OSw2ICs3MTMsNyBAQCBXSU5ET1cgdyBB UyAoCiAtLSBTZWN0aW9uIDc6IFhNTCBGb3JtYXQgVGVzdHMKIC0tCiAtLSBUZXN0IDcuMTogWE1M IGZvcm1hdCBvdXRwdXQKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5B TFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYsIEZP Uk1BVCBYTUwpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3Nlcmllcygx LCAzMCkgQVMgcyh2KQpAQCAtNjY3LDggKzcyMiw4IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRF UiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBIEIpCiAgICAgREVGSU5F IEEgQVMgdiAlIDIgPSAxLCBCIEFTIHYgJSAyID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgCispJyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmls dGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KICA8ZXhwbGFpbiB4bWxucz0iaHR0cDovL3d3dy5wb3N0Z3Jlc3FsLm9yZy8yMDA5L2V4cGxh aW4iPiAgICAgICAgICAgICAgICAgICAgICArCiAgICA8UXVlcnk+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwpAQCAt NjgyLDcgKzczNyw3IEBAIFdJTkRPVyB3IEFTICgKICAgICAgICA8V2luZG93PncgQVMgKFJPV1Mg QkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORyk8L1dpbmRvdz4rCiAg ICAgICAgPFBhdHRlcm4+YSBiPC9QYXR0ZXJuPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKwogICAgICAgIDxTdG9yYWdlPk1lbW9yeTwvU3RvcmFnZT4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICA8 TWF4aW11bS1TdG9yYWdlPjE3PC9NYXhpbXVtLVN0b3JhZ2U+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICArCisgICAgICAgPE1heGltdW0tU3RvcmFnZT4wPC9NYXhpbXVtLVN0b3Jh Z2U+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwogICAgICAgIDxORkEtU3Rh dGVzLVBlYWs+MjwvTkZBLVN0YXRlcy1QZWFrPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICsKICAgICAgICA8TkZBLVN0YXRlcy1Ub3RhbD4zMTwvTkZBLVN0YXRlcy1Ub3RhbD4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCiAgICAgICAgPE5GQS1TdGF0ZXMtTWVy Z2VkPjA8L05GQS1TdGF0ZXMtTWVyZ2VkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KwpAQCAtNzIwLDYgKzc3NSw3IEBAIFdJTkRPVyB3IEFTICgKIC0tIFNlY3Rpb24gODogTXVsdGlw bGUgUGFydGl0aW9ucyBUZXN0cwogLS0KIC0tIFRlc3QgOC4xOiBTdGF0aXN0aWNzIGFjcm9zcyBt dWx0aXBsZSBwYXJ0aXRpb25zCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSAoCkBAIC03MzMsMTMgKzc4OSwxMyBAQCBX SU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFU VEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAot KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1 YWwgcm93cz05MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChQQVJUSVRJT04gQlkgcC5w IFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBh dHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgor ICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczog MyBwZWFrLCAxNjUgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgOTMg dG90YWwsIDE4IHBydW5lZAogICAgTkZBOiAxOCBtYXRjaGVkIChsZW4gNS81LzUuMCksIDAgbWlz bWF0Y2hlZApAQCAtNzUzLDYgKzgwOSw3IEBAIFdJTkRPVyB3IEFTICgKICgxNCByb3dzKQogCiAt LSBUZXN0IDguMjogRGlmZmVyZW50IHBhdHRlcm4gYmVoYXZpb3IgcGVyIHBhcnRpdGlvbgorU0VM RUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwg Q09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVS IHcKIEZST00gKApAQCAtNzY3LDEzICs4MjQsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVS IE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEErIEIpCiAgICAgREVGSU5F IEEgQVMgdmFsIDwgNSwgQiBBUyB2YWwgPj0gNQotKTsKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCispOycpOworICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWlu X2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQogICAg V2luZG93OiB3IEFTIChQQVJUSVRJT04gQlkgKENBU0UgV0hFTiAodi52IDw9IDI1KSBUSEVOIDEg RUxTRSAyIEVORCkgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9X SU5HKQogICAgUGF0dGVybjogYSsiIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9y YWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBO RkEgU3RhdGVzOiAzIHBlYWssIDc3IHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiAz IHBlYWssIDUyIHRvdGFsLCAyNiBwcnVuZWQKICAgIE5GQTogNSBtYXRjaGVkIChsZW4gNS82LzUu OCksIDAgbWlzbWF0Y2hlZApAQCAtNzg4LDYgKzg0NSw3IEBAIFdJTkRPVyB3IEFTICgKIC0tIFNl Y3Rpb24gOTogRWRnZSBDYXNlcwogLS0KIC0tIFRlc3QgOS4xOiBFbXB0eSByZXN1bHQgc2V0CitT RUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZG LCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9W RVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMCkgQVMgcyh2KQpAQCAtNzk2LDggKzg1NCw4 IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAg ICBQQVRURVJOIChBIEIpCiAgICAgREVGSU5FIEEgQVMgdiA9IDEsIEIgQVMgdiA9IDIKLSk7Ci0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5f ZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0Fn ZyAoYWN0dWFsIHJvd3M9MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCkBAIC04MDYsNiArODY0LDcg QEAgV0lORE9XIHcgQVMgKAogKDQgcm93cykKIAogLS0gVGVzdCA5LjI6IFNpbmdsZSByb3cKK1NF TEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYs IENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZF UiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxKSBBUyBzKHYpCkBAIC04MTQsMTMgKzg3Mywx MyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAg ICAgUEFUVEVSTiAoQSkKICAgICBERUZJTkUgQSBBUyBUUlVFCi0pOwotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisp OycpOworICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAg ICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dz PTEuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9X IEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogYQotICAgU3RvcmFnZTogTWVt b3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBT dG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDIgcGVhaywgMiB0b3RhbCwgMCBtZXJnZWQKICAg IE5GQSBDb250ZXh0czogMiBwZWFrLCAyIHRvdGFsLCAwIHBydW5lZAogICAgTkZBOiAxIG1hdGNo ZWQgKGxlbiAxLzEvMS4wKSwgMCBtaXNtYXRjaGVkCkBAIC04MjgsNiArODg3LDcgQEAgV0lORE9X IHcgQVMgKAogKDggcm93cykKIAogLS0gVGVzdCA5LjM6IFBhdHRlcm4gbG9uZ2VyIHRoYW4gZGF0 YQorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJT IE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgq KSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUpIEFTIHModikKQEAgLTgzOCwxMyAr ODk4LDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBERUZJTkUKICAgICAgICAgQSBBUyB2ID0gMSwg QiBBUyB2ID0gMiwgQyBBUyB2ID0gMywgRCBBUyB2ID0gNCwgRSBBUyB2ID0gNSwKICAgICAgICAg RiBBUyB2ID0gNiwgRyBBUyB2ID0gNywgSCBBUyB2ID0gOCwgSSBBUyB2ID0gOSwgSiBBUyB2ID0g MTAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgcnBy X2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQog IFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NS4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChS T1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0 ZXJuOiBhIGIgYyBkIGUgZiBnIGggaSBqCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAg TkZBIFN0YXRlczogMiBwZWFrLCA2IHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiAz IHBlYWssIDYgdG90YWwsIDQgcHJ1bmVkCiAgICBORkE6IDAgbWF0Y2hlZCwgMSBtaXNtYXRjaGVk IChsZW4gNS81LzUuMCkKQEAgLTg1Miw2ICs5MTIsNyBAQCBXSU5ET1cgdyBBUyAoCiAoOCByb3dz KQogCiAtLSBUZXN0IDkuNDogQWxsIHJvd3MgbWF0Y2ggYXMgc2luZ2xlIG1hdGNoCitTRUxFQ1Qg cnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NU UyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwog RlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTg2MCwxMyArOTIxLDEzIEBA IFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQ QVRURVJOIChBKykKICAgICBERUZJTkUgQSBBUyBUUlVFCi0pOwotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsn KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAg ICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dz PTUwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJP VyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGErIgotICAgU3RvcmFnZTog TWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE4a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11 bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgMTAxIHRvdGFsLCAwIG1lcmdl ZAogICAgTkZBIENvbnRleHRzOiAyIHBlYWssIDUxIHRvdGFsLCAwIHBydW5lZAogICAgTkZBOiAx IG1hdGNoZWQgKGxlbiA1MC81MC81MC4wKSwgMCBtaXNtYXRjaGVkCkBAIC04NzgsNiArOTM5LDcg QEAgV0lORE9XIHcgQVMgKAogLS0gU2VjdGlvbiAxMDogQ29tcGxleCBQYXR0ZXJuIFRlc3RzCiAt LQogLS0gVGVzdCAxMC4xOiBOZXN0ZWQgZ3JvdXBzCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVy KCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYs IFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJp ZXMoMSwgNjApIEFTIHModikKQEAgLTg4NiwxMyArOTQ4LDEzIEBAIFdJTkRPVyB3IEFTICgKICAg ICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoKEEgQikgQykr KQogICAgIERFRklORSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIsIEMgQVMgdiAlIDMg PSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg cnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTYwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcg QVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAg IFBhdHRlcm46IChhJyBiJyBjJykrIgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3Jh Z2U6IDE4a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5G QSBTdGF0ZXM6IDMgcGVhaywgODEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMg cGVhaywgNjEgdG90YWwsIDQwIHBydW5lZAogICAgTkZBOiAxIG1hdGNoZWQgKGxlbiA2MC82MC82 MC4wKSwgMCBtaXNtYXRjaGVkCkBAIC05MDEsNiArOTYzLDcgQEAgV0lORE9XIHcgQVMgKAogKDkg cm93cykKIAogLS0gVGVzdCAxMC4yOiBNdWx0aXBsZSBhbHRlcm5hdGlvbnMKK1NFTEVDVCBycHJf ZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9G RiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9N IG5mYV90ZXN0CkBAIC05MDksMTUgKzk3MiwxNSBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIg TUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoKEEgfCBCKSAoQyB8IEQgfCBF KSkKICAgICBERUZJTkUKLSAgICAgICAgQSBBUyBjYXQgPSAnQScsIEIgQVMgY2F0ID0gJ0InLCBD IEFTIGNhdCA9ICdDJywKLSAgICAgICAgRCBBUyBjYXQgPSAnRCcsIEUgQVMgY2F0ID0gJ0UnCi0p OwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgIAorICAgICAgICBBIEFTIGNhdCA9ICcnQScnLCBCIEFTIGNhdCA9ICcnQicn LCBDIEFTIGNhdCA9ICcnQycnLAorICAgICAgICBEIEFTIGNhdCA9ICcnRCcnLCBFIEFTIGNhdCA9 ICcnRScnCispOycpOworICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVy ICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFs IHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJS RU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IChhIHwgYiBjIHwg ZCB8IGUpCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3Rv cmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogNSBwZWFr LCAyODIgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgMTAxIHRvdGFs LCA2MCBwcnVuZWQKICAgIE5GQTogMjAgbWF0Y2hlZCAobGVuIDIvMi8yLjApLCAyMCBtaXNtYXRj aGVkIChsZW4gMi8yLzIuMCkKQEAgLTkyNSw2ICs5ODgsNyBAQCBXSU5ET1cgdyBBUyAoCiAoOCBy b3dzKQogCiAtLSBUZXN0IDEwLjM6IE9wdGlvbmFsIGVsZW1lbnRzCitTRUxFQ1QgcnByX2V4cGxh aW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJ TUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5l cmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTkzMywxMyArOTk3LDEzIEBAIFdJTkRPVyB3 IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChB IEI/IEMpCiAgICAgREVGSU5FIEEgQVMgdiAlIDQgPSAxLCBCIEFTIHYgJSA0ID0gMiwgQyBBUyB2 ICUgNCA9IDMKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgCispOycpOworICAgICAgICAgICAgICAgICAgICAg ICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKICAgIFdpbmRv dzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5H KQogICAgUGF0dGVybjogYSBiPyBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFn ZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZB IFN0YXRlczogMyBwZWFrLCA2NCB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBw ZWFrLCA1MSB0b3RhbCwgMzcgcHJ1bmVkCiAgICBORkE6IDEyIG1hdGNoZWQgKGxlbiAzLzMvMy4w KSwgMSBtaXNtYXRjaGVkIChsZW4gMi8yLzIuMCkKQEAgLTk0Nyw2ICsxMDExLDcgQEAgV0lORE9X IHcgQVMgKAogKDggcm93cykKIAogLS0gVGVzdCAxMC40OiBCb3VuZGVkIHF1YW50aWZpZXJzCitT RUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZG LCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9W RVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBAIC05NTUsMTMgKzEw MjAsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJP VwogICAgIFBBVFRFUk4gKEF7Miw1fSBCKQogICAgIERFRklORSBBIEFTIHYgJSAxMCA8PiAwLCBC IEFTIHYgJSAxMCA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQ TEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAg CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEp CiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVE IEZPTExPV0lORykKICAgIFBhdHRlcm46IGF7Miw1fSBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1h eGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6 IE5rQgogICAgTkZBIFN0YXRlczogOSBwZWFrLCAzMTEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEg Q29udGV4dHM6IDcgcGVhaywgMTAxIHRvdGFsLCAxMCBwcnVuZWQKICAgIE5GQTogMTAgbWF0Y2hl ZCAobGVuIDYvNi82LjApLCA1MCBtaXNtYXRjaGVkIChsZW4gMi82LzUuMikKQEAgLTk3MCw2ICsx MDM1LDcgQEAgV0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCAxMC41OiBTdGFyIHF1 YW50aWZpZXIKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwg QlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1Qg Y291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2KQpAQCAt OTc4LDEzICsxMDQ0LDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBB U1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBIEIqIEMpCiAgICAgREVGSU5FIEEgQVMgdiAlIDEw ID0gMSwgQiBBUyB2ICUgMTAgSU4gKDIsMyw0LDUsNiw3LDgpLCBDIEFTIHYgJSAxMCA9IDkKLSk7 Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgCispOycpOworICAgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhw bGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdp bmRvd0FnZyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9X UyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVy bjogYSBiKiBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAg U3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBw ZWFrLCA5MSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCA1MSB0b3Rh bCwgNDUgcHJ1bmVkCiAgICBORkE6IDUgbWF0Y2hlZCAobGVuIDkvOS85LjApLCAwIG1pc21hdGNo ZWQKQEAgLTk5NSw2ICsxMDYxLDcgQEAgV0lORE9XIHcgQVMgKAogLS0gU2VjdGlvbiAxMTogUmVh bC13b3JsZCBQYXR0ZXJuIEV4YW1wbGVzCiAtLQogLS0gVGVzdCAxMS4xOiBTdG9jayBwcmljZSBw YXR0ZXJuIC0gVi1zaGFwZSAoZG93biB0aGVuIHVwKQorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRl cignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZG LCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gbmZhX2NvbXBsZXgK QEAgLTEwMDIsMTQgKzEwNjksMTQgQEAgV0lORE9XIHcgQVMgKAogICAgIFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwogICAgIEFGVEVSIE1BVENIIFNLSVAg UEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEQrIFUrKQotICAgIERFRklORSBEIEFTIHRyZW5k ID0gJ0QnLCBVIEFTIHRyZW5kID0gJ1UnCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg IFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorICAgIERFRklORSBEIEFT IHRyZW5kID0gJydEJycsIFUgQVMgdHJlbmQgPSAnJ1UnJworKTsnKTsKKyAgICAgICAgICAgICAg ICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAKIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCiAgICBXaW5k b3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lO RykKICAgIFBhdHRlcm46IGQrIiB1KwotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3Jh Z2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5G QSBTdGF0ZXM6IDQgcGVhaywgNTggdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMg cGVhaywgMzEgdG90YWwsIDE3IHBydW5lZAogICAgTkZBOiAzIG1hdGNoZWQgKGxlbiAzLzE0Lzgu MCksIDEgbWlzbWF0Y2hlZCAobGVuIDMvMy8zLjApCkBAIC0xMDE4LDYgKzEwODUsNyBAQCBXSU5E T1cgdyBBUyAoCiAoOSByb3dzKQogCiAtLSBUZXN0IDExLjI6IFN0b2NrIHByaWNlIHBhdHRlcm4g LSBwZWFrICh1cCwgc3RhYmxlLCBkb3duKQorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBF WFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1N QVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gbmZhX2NvbXBsZXgKQEAgLTEw MjUsMTQgKzEwOTMsMTQgQEAgV0lORE9XIHcgQVMgKAogICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5U IFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBM QVNUIFJPVwogICAgIFBBVFRFUk4gKFUrIFMqIEQrKQotICAgIERFRklORSBVIEFTIHRyZW5kID0g J1UnLCBTIEFTIHRyZW5kID0gJ1MnLCBEIEFTIHRyZW5kID0gJ0QnCi0pOwotICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIAor ICAgIERFRklORSBVIEFTIHRyZW5kID0gJydVJycsIFMgQVMgdHJlbmQgPSAnJ1MnJywgRCBBUyB0 cmVuZCA9ICcnRCcnCispOycpOworICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5f ZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAo YWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVO IENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogdSsiIHMq IGQrCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFn ZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogNSBwZWFrLCA3 NiB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAzMSB0b3RhbCwgMTQg cHJ1bmVkCiAgICBORkE6IDQgbWF0Y2hlZCAobGVuIDMvMTEvNy4yKSwgMCBtaXNtYXRjaGVkCkBA IC0xMDQxLDEyICsxMTA5LDcgQEAgV0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCAx MS4zOiBDb25zZWN1dGl2ZSBpbmNyZWFzaW5nIHZhbHVlcyAodXNpbmcgUFJFVikKLS0tIEZJWE1F OiBUaGUgb3JpZ2luYWwgcGF0dGVybiB3YXM6Ci0tLSAgIERFRklORSBBIEFTIHYgPiBQUkVWKHYp IE9SIFBSRVYodikgSVMgTlVMTAotLS0gVGhpcyBjYXVzZXMgIkVSUk9SOiB1bnJlY29nbml6ZWQg bm9kZSB0eXBlOiAxNSIgKFRfRnVuY0V4cHIpIGJlY2F1c2UKLS0tIE51bGxUZXN0KEZ1bmNFeHBy KFBSRVYpKSBpcyBub3QgcHJvcGVybHkgaGFuZGxlZCBzb21ld2hlcmUgaW4gdGhlIHBsYW5uZXIu Ci0tLSBUaGUgZXhwcmVzc2lvbiB2ID4gUFJFVih2KSB3b3JrcyBmaW5lLCBidXQgUFJFVih2KSBJ UyBOVUxMIGZhaWxzLgotLS0gVXNpbmcgQ09BTEVTQ0UoUFJFVih2KSwgMCkgYXMgYSB3b3JrYXJv dW5kIHVudGlsIHRoZSBidWcgaXMgZml4ZWQuCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcK IEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNV TU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMo MSwgNTApIEFTIHModikKQEAgLTEwNTQsMTQgKzExMTcsMTQgQEAgV0lORE9XIHcgQVMgKAogICAg IFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwogICAgIEFG VEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEF7Myx9KQotICAgIERF RklORSBBIEFTIHYgPiBDT0FMRVNDRShQUkVWKHYpLCAwKQotKTsKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyAg ICBERUZJTkUgQSBBUyB2ID4gUFJFVih2KSBPUiBQUkVWKHYpIElTIE5VTEwKKyk7Jyk7CisgICAg ICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAg ICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBs b29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVO Qk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhezMsfSIKLSAgIFN0b3JhZ2U6IE1lbW9y eSAgTWF4aW11bSBTdG9yYWdlOiAxOGtCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAzIHBlYWssIDk5IHRvdGFsLCAwIG1lcmdlZAogICAg TkZBIENvbnRleHRzOiAyIHBlYWssIDUxIHRvdGFsLCAwIHBydW5lZAogICAgTkZBOiAxIG1hdGNo ZWQgKGxlbiA1MC81MC81MC4wKSwgMCBtaXNtYXRjaGVkCkBAIC0xMDczLDYgKzExMzYsNyBAQCBX SU5ET1cgdyBBUyAoCiAtLSBTZWN0aW9uIDEyOiBQZXJmb3JtYW5jZS1vcmllbnRlZCBUZXN0cwog LS0KIC0tIFRlc3QgMTIuMTogTGFyZ2UgZGF0YXNldCB3aXRoIHNpbXBsZSBwYXR0ZXJuCitTRUxF Q1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBD T1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIg dwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwMCkgQVMgcyh2KQpAQCAtMTA4MSwxMyArMTE0 NSwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9X CiAgICAgUEFUVEVSTiAoQSBCKQogICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2ICUg MiA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAg ICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwMC4wMCBsb29wcz0xKQogICAg V2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xM T1dJTkcpCiAgICBQYXR0ZXJuOiBhIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9y YWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBO RkEgU3RhdGVzOiAyIHBlYWssIDEwMDEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6 IDMgcGVhaywgMTAwMSB0b3RhbCwgNTAwIHBydW5lZAogICAgTkZBOiA1MDAgbWF0Y2hlZCAobGVu IDIvMi8yLjApLCAwIG1pc21hdGNoZWQKQEAgLTEwOTUsNiArMTE1OSw3IEBAIFdJTkRPVyB3IEFT ICgKICg4IHJvd3MpCiAKIC0tIFRlc3QgMTIuMjogTGFyZ2UgZGF0YXNldCB3aXRoIGFic29ycHRp b24KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVS UyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQo KikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDAwKSBBUyBzKHYpCkBAIC0xMTAz LDEzICsxMTY4LDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1Qg TEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCKQogICAgIERFRklORSBBIEFTIHYgJSAxMDAgPD4g MCwgQiBBUyB2ICUgMTAwID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBR VUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAg ICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAwLjAw IGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQg VU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1v cnkgIE1heGltdW0gU3RvcmFnZTogMjBrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0 b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBwZWFrLCAxOTkxIHRvdGFsLCAwIG1lcmdlZAog ICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDEwMDEgdG90YWwsIDEwIHBydW5lZAogICAgTkZBOiAx MCBtYXRjaGVkIChsZW4gMTAwLzEwMC8xMDAuMCksIDAgbWlzbWF0Y2hlZApAQCAtMTExOCw2ICsx MTgzLDcgQEAgV0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCAxMi4zOiBIaWdoIHN0 YXRlIG1lcmdlIHJhdGlvCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFO QUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQog U0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTAwKSBBUyBz KHYpCkBAIC0xMTI2LDEzICsxMTkyLDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRD SCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSB8IEIpKyBDKQogICAgIERFRklO RSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIsIEMgQVMgdiAlIDMgPSAwCi0pOwotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWlu X2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5k b3dBZ2cgKGFjdHVhbCByb3dzPTUwMC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dT IEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJu OiAoYSB8IGIpKyBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgor ICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczog OCBwZWFrLCAyMDA0IHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiA0IHBlYWssIDUw MSB0b3RhbCwgMTY3IHBydW5lZAogICAgTkZBOiAxNjYgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAx IG1pc21hdGNoZWQgKGxlbiAyLzIvMi4wKQpAQCAtMTE0NCw2ICsxMjEwLDcgQEAgV0lORE9XIHcg QVMgKAogLS0gU2VjdGlvbiAxMzogSU5JVElBTCB2cyBubyBJTklUSUFMIGNvbXBhcmlzb24KIC0t CiAtLSBUZXN0IDEzLjE6IFdpdGggSU5JVElBTCBrZXl3b3JkCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0 ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTExNTMsMTMgKzEyMjAsMTMgQEAgV0lORE9XIHcg QVMgKAogICAgIElOSVRJQUwKICAgICBQQVRURVJOIChBKyBCKQogICAgIERFRklORSBBIEFTIHYg JSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAg ICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTUwLjAwIGxv b3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5C T1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1vcnkg IE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3Jh Z2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBwZWFrLCA5MSB0b3RhbCwgMCBtZXJnZWQKICAgIE5G QSBDb250ZXh0czogMyBwZWFrLCA1MSB0b3RhbCwgMTAgcHJ1bmVkCiAgICBORkE6IDEwIG1hdGNo ZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNtYXRjaGVkCkBAIC0xMTY4LDYgKzEyMzUsNyBAQCBXSU5E T1cgdyBBUyAoCiAoOSByb3dzKQogCiAtLSBUZXN0IDEzLjI6IFdpdGhvdXQgSU5JVElBTCBrZXl3 b3JkIChzYW1lIGJlaGF2aW9yIGN1cnJlbnRseSkKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIo JwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwg U1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3Nlcmll cygxLCA1MCkgQVMgcyh2KQpAQCAtMTE3NiwxMyArMTI0NCwxMyBAQCBXSU5ET1cgdyBBUyAoCiAg ICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAg ICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAg ICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1 YWwgcm93cz01MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VS UkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIgYgotICAg U3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9y eSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgOTEgdG90YWws IDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgNTEgdG90YWwsIDEwIHBydW5lZAog ICAgTkZBOiAxMCBtYXRjaGVkIChsZW4gNS81LzUuMCksIDAgbWlzbWF0Y2hlZApAQCAtMTE5NCw2 ICsxMjYyLDcgQEAgV0lORE9XIHcgQVMgKAogLS0gU2VjdGlvbiAxNDogUXVhbnRpZmllciBWYXJp YXRpb25zCiAtLQogLS0gVGVzdCAxNC4xOiBQbHVzIHF1YW50aWZpZXIKK1NFTEVDVCBycHJfZXhw bGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwg VElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdl bmVyYXRlX3NlcmllcygxLCA0MCkgQVMgcyh2KQpAQCAtMTIwMiwxMyArMTI3MSwxMyBAQCBXSU5E T1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVS TiAoQSspCiAgICAgREVGSU5FIEEgQVMgdiAlIDQgPD4gMAotKTsKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7 Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAg ICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93 cz00MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBS T1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIKLSAgIFN0b3JhZ2U6 IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGlt dW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAzIHBlYWssIDcxIHRvdGFsLCAwIG1lcmdl ZAogICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDQxIHRvdGFsLCAxMCBwcnVuZWQKICAgIE5GQTog MTAgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQKQEAgLTEyMTcsNiArMTI4Niw3 IEBAIFdJTkRPVyB3IEFTICgKICg5IHJvd3MpCiAKIC0tIFRlc3QgMTQuMjogU3RhciBxdWFudGlm aWVyICh6ZXJvIG9yIG1vcmUpCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNDApIEFT IHModikKQEAgLTEyMjUsMTMgKzEyOTUsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1B VENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEqIEIpCiAgICAgREVGSU5FIEEg QVMgdiAlIDQgSU4gKDEsIDIpLCBCIEFTIHYgJSA0ID0gMwotKTsKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7 Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAg ICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93 cz00MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBS T1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKiIgYgotICAgU3RvcmFn ZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4 aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDQgcGVhaywgMTAyIHRvdGFsLCAwIG1l cmdlZAogICAgTkZBIENvbnRleHRzOiAyIHBlYWssIDQxIHRvdGFsLCAxMCBwcnVuZWQKICAgIE5G QTogMTAgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQKQEAgLTEyNDAsNiArMTMx MCw3IEBAIFdJTkRPVyB3IEFTICgKICg5IHJvd3MpCiAKIC0tIFRlc3QgMTQuMzogUXVlc3Rpb24g bWFyayAoemVybyBvciBvbmUpCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNDApIEFT IHModikKQEAgLTEyNDgsMTMgKzEzMTksMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1B VENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEE/IEIgQykKICAgICBERUZJTkUg QSBBUyB2ICUgNCA9IDEsIEIgQVMgdiAlIDQgPSAyLCBDIEFTIHYgJSA0ID0gMwotKTsKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2Zp bHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdn IChhY3R1YWwgcm93cz00MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhPyBi IGMKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdl OiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiA0IHBlYWssIDgy IHRvdGFsLCAwIG1lcmdlZAogICAgTkZBIENvbnRleHRzOiA0IHBlYWssIDQxIHRvdGFsLCAyMCBw cnVuZWQKICAgIE5GQTogMTAgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQKQEAg LTEyNjMsNiArMTMzNCw3IEBAIFdJTkRPVyB3IEFTICgKICg5IHJvd3MpCiAKIC0tIFRlc3QgMTQu NDogRXhhY3QgY291bnQge259CitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFT IHModikKQEAgLTEyNzEsMTMgKzEzNDMsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1B VENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEF7M30gQikKICAgICBERUZJTkUg QSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7 CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAg ICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz01 MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cg QU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhezN9IGIKLSAgIFN0b3JhZ2U6 IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGlt dW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiA0IHBlYWssIDUxIHRvdGFsLCAwIG1lcmdl ZAogICAgTkZBIENvbnRleHRzOiA1IHBlYWssIDUxIHRvdGFsLCAxMCBwcnVuZWQKICAgIE5GQTog MTAgbWF0Y2hlZCAobGVuIDQvNC80LjApLCAzMCBtaXNtYXRjaGVkIChsZW4gMi80LzMuMCkKQEAg LTEyODUsNiArMTM1Nyw3IEBAIFdJTkRPVyB3IEFTICgKICg4IHJvd3MpCiAKIC0tIFRlc3QgMTQu NTogUmFuZ2Uge24sbX0KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5B TFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBT RUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2 KQpAQCAtMTI5MywxMyArMTM2NiwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0gg U0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQXsyLDR9IEIpCiAgICAgREVGSU5FIEEg QVMgdiAlIDUgPD4gMCwgQiBBUyB2ICUgNSA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCispOycpOwor ICAgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAg ICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NTAu MDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFO RCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogYXsyLDR9IGIKLSAgIFN0b3JhZ2U6 IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGlt dW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiA3IHBlYWssIDEwMSB0b3RhbCwgMCBtZXJn ZWQKICAgIE5GQSBDb250ZXh0czogNiBwZWFrLCA1MSB0b3RhbCwgMTAgcHJ1bmVkCiAgICBORkE6 IDEwIG1hdGNoZWQgKGxlbiA1LzUvNS4wKSwgMTAgbWlzbWF0Y2hlZCAobGVuIDIvMi8yLjApCkBA IC0xMzA4LDYgKzEzODEsNyBAQCBXSU5ET1cgdyBBUyAoCiAoOSByb3dzKQogCiAtLSBUZXN0IDE0 LjY6IEF0IGxlYXN0IHtuLH0KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAo QU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYp CiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMg cyh2KQpAQCAtMTMxNiwxMyArMTM5MCwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFU Q0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQXszLH0gQikKICAgICBERUZJTkUg QSBBUyB2ICUgMTAgPD4gMCwgQiBBUyB2ICUgMTAgPSAwCi0pOwotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsn KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAg ICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dz PTUwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJP VyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGF7Myx9IiBiCi0gICBTdG9y YWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBN YXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBwZWFrLCA4NiB0b3RhbCwgMCBt ZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCA1MSB0b3RhbCwgNSBwcnVuZWQKICAgIE5G QTogNSBtYXRjaGVkIChsZW4gMTAvMTAvMTAuMCksIDAgbWlzbWF0Y2hlZApAQCAtMTMzNSw2ICsx NDA5LDcgQEAgV0lORE9XIHcgQVMgKAogLS0KIC0tIFRlc3QgMTUuMTogVmVyaWZ5IHN0YXRlIGNv dW50IGFjY3VyYWN5CiAtLSBQYXR0ZXJuIEErIEIgd2l0aCAyMCByb3dzIHNob3VsZCBzaG93IHBy ZWRpY3RhYmxlIHN0YXRlIGJlaGF2aW9yCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVY UExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1B UlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwg MjApIEFTIHModikKQEAgLTEzNDMsMTMgKzE0MTgsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFG VEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEErIEIpCiAgICAgREVG SU5FIEEgQVMgdiAlIDUgPD4gMCwgQiBBUyB2ICUgNSA9IDAKLSk7Ci0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisp OycpOworICAgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAg ICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJv d3M9MjAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQg Uk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogYSsiIGIKLSAgIFN0b3Jh Z2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1h eGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAzIHBlYWssIDM3IHRvdGFsLCAwIG1l cmdlZAogICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDIxIHRvdGFsLCA0IHBydW5lZAogICAgTkZB OiA0IG1hdGNoZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNtYXRjaGVkCkBAIC0xMzU4LDYgKzE0MzMs NyBAQCBXSU5ET1cgdyBBUyAoCiAoOSByb3dzKQogCiAtLSBUZXN0IDE1LjI6IFZlcmlmeSBjb250 ZXh0IGNvdW50IHdpdGgga25vd24gYWJzb3JwdGlvbgorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRl cignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZG LCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2Vy aWVzKDEsIDMwKSBBUyBzKHYpCkBAIC0xMzY2LDEzICsxNDQyLDEzIEBAIFdJTkRPVyB3IEFTICgK ICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCIEMp CiAgICAgREVGSU5FIEEgQVMgdiAlIDEwIElOICgxLDIsMyw0LDUsNiw3KSwgQiBBUyB2ICUgMTAg PSA4LCBDIEFTIHYgJSAxMCA9IDkKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBR VUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCispOycpOworICAgICAgICAg ICAgICAgICAgICAgICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAg ICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9 MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5E RUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogYSsiIGIgYwotICAgU3RvcmFnZTogTWVtb3J5ICBN YXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdl OiBOa0IKICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgNTIgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEg Q29udGV4dHM6IDMgcGVhaywgMzEgdG90YWwsIDkgcHJ1bmVkCiAgICBORkE6IDMgbWF0Y2hlZCAo bGVuIDkvOS85LjApLCAwIG1pc21hdGNoZWQKQEAgLTEzODEsNiArMTQ1Nyw3IEBAIFdJTkRPVyB3 IEFTICgKICg5IHJvd3MpCiAKIC0tIFRlc3QgMTUuMzogVmVyaWZ5IG1hdGNoIGxlbmd0aCB3aXRo IGZpeGVkLWxlbmd0aCBwYXR0ZXJuCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExB SU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkg T0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzAp IEFTIHModikKQEAgLTEzODksMTMgKzE0NjYsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVS IE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEgQiBDKQogICAgIERFRklO RSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIsIEMgQVMgdiAlIDMgPSAwCi0pOwotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5f ZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dB Z2cgKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVU V0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGEg YiBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFn ZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMiBwZWFrLCAz MSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAzMSB0b3RhbCwgMjAg cHJ1bmVkCiAgICBORkE6IDEwIG1hdGNoZWQgKGxlbiAzLzMvMy4wKSwgMCBtaXNtYXRjaGVkCkBA IC0xNDA2LDYgKzE0ODMsNyBAQCBXSU5ET1cgdyBBUyAoCiAtLSBTZWN0aW9uIDE2OiBBbHRlcm5h dGlvbiBQYXR0ZXJuIFRlc3RzCiAtLQogLS0gVGVzdCAxNi4xOiBTaW1wbGUgYWx0ZXJuYXRpb24K K1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBP RkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikg T1ZFUiB3CiBGUk9NIG5mYV90ZXN0CkBAIC0xNDEzLDE0ICsxNDkxLDE0IEBAIFdJTkRPVyB3IEFT ICgKICAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK ICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSB8IEIp IEMpCi0gICAgREVGSU5FIEEgQVMgY2F0ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQg PSAnQycKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgCisgICAgREVGSU5FIEEgQVMgY2F0ID0gJydBJycsIEIgQVMg Y2F0ID0gJydCJycsIEMgQVMgY2F0ID0gJydDJycKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAg ICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzog dyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQog ICAgUGF0dGVybjogKGEgfCBiKSBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFn ZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZB IFN0YXRlczogMyBwZWFrLCAyMDIgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMg cGVhaywgMTAxIHRvdGFsLCA2MCBwcnVuZWQKICAgIE5GQTogMjAgbWF0Y2hlZCAobGVuIDIvMi8y LjApLCAyMCBtaXNtYXRjaGVkIChsZW4gMi8yLzIuMCkKQEAgLTE0MjgsNiArMTUwNiw3IEBAIFdJ TkRPVyB3IEFTICgKICg4IHJvd3MpCiAKIC0tIFRlc3QgMTYuMjogTXVsdGlwbGUgaXRlbXMgaW4g YWx0ZXJuYXRpb24KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFla RSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxF Q1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIG5mYV90ZXN0CkBAIC0xNDM2LDE1ICsxNTE1LDE1IEBA IFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQ QVRURVJOICgoQSB8IEIgfCBDIHwgRCkgRSkKICAgICBERUZJTkUKLSAgICAgICAgQSBBUyBjYXQg PSAnQScsIEIgQVMgY2F0ID0gJ0InLCBDIEFTIGNhdCA9ICdDJywKLSAgICAgICAgRCBBUyBjYXQg PSAnRCcsIEUgQVMgY2F0ID0gJ0UnCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFV RVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorICAgICAgICBBIEFTIGNhdCA9 ICcnQScnLCBCIEFTIGNhdCA9ICcnQicnLCBDIEFTIGNhdCA9ICcnQycnLAorICAgICAgICBEIEFT IGNhdCA9ICcnRCcnLCBFIEFTIGNhdCA9ICcnRScnCispOycpOworICAgICAgICAgICAgICAgICAg ICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6 IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykK ICAgIFBhdHRlcm46IChhIHwgYiB8IGMgfCBkKSBlCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGlt dW0gU3RvcmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5r QgogICAgTkZBIFN0YXRlczogNSBwZWFrLCA0MDQgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29u dGV4dHM6IDMgcGVhaywgMTAxIHRvdGFsLCAyMCBwcnVuZWQKICAgIE5GQTogMjAgbWF0Y2hlZCAo bGVuIDIvMi8yLjApLCA2MCBtaXNtYXRjaGVkIChsZW4gMi8yLzIuMCkKQEAgLTE0NTIsNiArMTUz MSw3IEBAIFdJTkRPVyB3IEFTICgKICg4IHJvd3MpCiAKIC0tIFRlc3QgMTYuMzogQWx0ZXJuYXRp b24gd2l0aCBxdWFudGlmaWVycworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlO IChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9G RikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwKSBB UyBzKHYpCkBAIC0xNDYwLDEzICsxNTQwLDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBN QVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSB8IEIpKyBDKQogICAgIERF RklORSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIsIEMgQVMgdiAlIDMgPSAwCi0pOwot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxh aW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5k b3dBZ2cgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1Mg QkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46 IChhIHwgYikrIGMKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisg ICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiA4 IHBlYWssIDIwNCB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogNCBwZWFrLCA1MSB0 b3RhbCwgMTcgcHJ1bmVkCiAgICBORkE6IDE2IG1hdGNoZWQgKGxlbiAzLzMvMy4wKSwgMSBtaXNt YXRjaGVkIChsZW4gMi8yLzIuMCkKQEAgLTE0NzgsNiArMTU1OCw3IEBAIFdJTkRPVyB3IEFTICgK IC0tIFNlY3Rpb24gMTc6IEdyb3VwIFBhdHRlcm4gVGVzdHMKIC0tCiAtLSBUZXN0IDE3LjE6IFNp bXBsZSBncm91cAorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpF LCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVD VCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDQwKSBBUyBzKHYpCkBA IC0xNDg2LDEzICsxNTY3LDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQ IFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSBCKSspCiAgICAgREVGSU5FIEEgQVMgdiAl IDIgPSAxLCBCIEFTIHYgJSAyID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAg ICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAg ICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz00MC4wMCBsb29w cz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9V TkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiAoYScgYicpKyIKLSAgIFN0b3JhZ2U6IE1lbW9y eSAgTWF4aW11bSBTdG9yYWdlOiAxOGtCCisgICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAzIHBlYWssIDYxIHRvdGFsLCAwIG1lcmdlZAogICAg TkZBIENvbnRleHRzOiAzIHBlYWssIDQxIHRvdGFsLCAyMCBwcnVuZWQKICAgIE5GQTogMSBtYXRj aGVkIChsZW4gNDAvNDAvNDAuMCksIDAgbWlzbWF0Y2hlZApAQCAtMTUwMSw2ICsxNTgyLDcgQEAg V0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCAxNy4yOiBHcm91cCB3aXRoIGJvdW5k ZWQgcXVhbnRpZmllcgorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFM WVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNF TEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDQwKSBBUyBzKHYp CkBAIC0xNTA5LDEzICsxNTkxLDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBT S0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSBCKXsyLDR9KQogICAgIERFRklORSBB IEFTIHYgJSAyID0gMSwgQiBBUyB2ICUgMiA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCispOycpOwor ICAgICAgICAgICAgICAgICAgICAgICAgICBycHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAg ICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NDAu MDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFO RCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAgUGF0dGVybjogKGEgYil7Miw0fQotICAgU3RvcmFn ZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4 aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDcgcGVhaywgNjYgdG90YWwsIDAgbWVy Z2VkCiAgICBORkEgQ29udGV4dHM6IDYgcGVhaywgNDEgdG90YWwsIDIwIHBydW5lZAogICAgTkZB OiA1IG1hdGNoZWQgKGxlbiA4LzgvOC4wKSwgMCBtaXNtYXRjaGVkCkBAIC0xNTI0LDYgKzE2MDYs NyBAQCBXSU5ET1cgdyBBUyAoCiAoOSByb3dzKQogCiAtLSBUZXN0IDE3LjM6IE5lc3RlZCBncm91 cHMKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVS UyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQo KikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA2MCkgQVMgcyh2KQpAQCAtMTUzMiwx MyArMTYxNSwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExB U1QgUk9XCiAgICAgUEFUVEVSTiAoKChBIEIpezJ9KSspCiAgICAgREVGSU5FIEEgQVMgdiAlIDIg PSAxLCBCIEFTIHYgJSAyID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFV RVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAg ICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAg ICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz02MC4wMCBsb29wcz0x KQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRF RCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiAoKGEgYil7Mn0pKwotICAgU3RvcmFnZTogTWVtb3J5 ICBNYXhpbXVtIFN0b3JhZ2U6IDE4a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9y YWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDYwIHBlYWssIDI4NiB0b3RhbCwgMCBtZXJnZWQKICAg IE5GQSBDb250ZXh0czogMzIgcGVhaywgNjEgdG90YWwsIDMwIHBydW5lZAogICAgTkZBOiAxIG1h dGNoZWQgKGxlbiA2MC82MC82MC4wKSwgMSBtaXNtYXRjaGVkIChsZW4gMi8yLzIuMCkKQEAgLTE1 NTAsNiArMTYzMyw3IEBAIFdJTkRPVyB3IEFTICgKIC0tIFNlY3Rpb24gMTg6IFdpbmRvdyBGdW5j dGlvbiBDb21iaW5hdGlvbnMKIC0tCiAtLSBUZXN0IDE4LjE6IGNvdW50KCopIHdpdGggcGF0dGVy bgorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJT IE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgq KSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDMwKSBBUyBzKHYpCkBAIC0xNTU4LDEz ICsxNjQyLDEzIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFT VCBST1cKICAgICBQQVRURVJOIChBKyBCKQogICAgIERFRklORSBBIEFTIHYgJSA1IDw+IDAsIEIg QVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExB TiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCiAgICBX aW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExP V0lORykKICAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogMTdrQgorICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAg TkZBIFN0YXRlczogMyBwZWFrLCA1NSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czog MyBwZWFrLCAzMSB0b3RhbCwgNiBwcnVuZWQKICAgIE5GQTogNiBtYXRjaGVkIChsZW4gNS81LzUu MCksIDAgbWlzbWF0Y2hlZApAQCAtMTU3Myw2ICsxNjU3LDcgQEAgV0lORE9XIHcgQVMgKAogKDkg cm93cykKIAogLS0gVGVzdCAxOC4yOiBmaXJzdF92YWx1ZSB3aXRoIHBhdHRlcm4KK1NFTEVDVCBy cHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RT IE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgZmlyc3RfdmFsdWUodikgT1ZF UiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAzMCkgQVMgcyh2KQpAQCAtMTU4MSwxMyArMTY2 NiwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9X CiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYg JSA1ID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAg ICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz0zMC4wMCBsb29wcz0xKQogICAgV2luZG93 OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcp CiAgICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6 IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBT dGF0ZXM6IDMgcGVhaywgNTUgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVh aywgMzEgdG90YWwsIDYgcHJ1bmVkCiAgICBORkE6IDYgbWF0Y2hlZCAobGVuIDUvNS81LjApLCAw IG1pc21hdGNoZWQKQEAgLTE1OTYsNiArMTY4MSw3IEBAIFdJTkRPVyB3IEFTICgKICg5IHJvd3Mp CiAKIC0tIFRlc3QgMTguMzogbGFzdF92YWx1ZSB3aXRoIHBhdHRlcm4KK1NFTEVDVCBycHJfZXhw bGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwg VElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgbGFzdF92YWx1ZSh2KSBPVkVSIHcKIEZS T00gZ2VuZXJhdGVfc2VyaWVzKDEsIDMwKSBBUyBzKHYpCkBAIC0xNjA0LDEzICsxNjkwLDEzIEBA IFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQ QVRURVJOIChBKyBCKQogICAgIERFRklORSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAw Ci0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcnBy X2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAKIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K ICBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMg KFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKICAgIFBh dHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgor ICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczog MyBwZWFrLCA1NSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAzMSB0 b3RhbCwgNiBwcnVuZWQKICAgIE5GQTogNiBtYXRjaGVkIChsZW4gNS81LzUuMCksIDAgbWlzbWF0 Y2hlZApAQCAtMTYxOSw2ICsxNzA1LDcgQEAgV0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0g VGVzdCAxOC40OiBNdWx0aXBsZSB3aW5kb3cgZnVuY3Rpb25zCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUCiAgICAgY291bnQoKikgT1ZFUiB3LApAQCAtMTYz MCwxMyArMTcxNywxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNU IExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAw LCBCIEFTIHYgJSA1ID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZ IFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAg ICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAgICAgICAgICAgICAg CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz0zMC4wMCBsb29wcz0xKQog ICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBG T0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVt IFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IK ICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgNTUgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4 dHM6IDMgcGVhaywgMzEgdG90YWwsIDYgcHJ1bmVkCiAgICBORkE6IDYgbWF0Y2hlZCAobGVuIDUv NS81LjApLCAwIG1pc21hdGNoZWQKQEAgLTE2NDgsNiArMTczNSw3IEBAIFdJTkRPVyB3IEFTICgK IC0tIFNlY3Rpb24gMTk6IERFRklORSBFeHByZXNzaW9uIFZhcmlhdGlvbnMKIC0tCiAtLSBUZXN0 IDE5LjE6IENvbXBsZXggYm9vbGVhbiBleHByZXNzaW9ucworU0VMRUNUIHJwcl9leHBsYWluX2Zp bHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcg T0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVf c2VyaWVzKDEsIDUwKSBBUyBzKHYpCkBAIC0xNjU4LDEzICsxNzQ2LDEzIEBAIFdJTkRPVyB3IEFT ICgKICAgICBERUZJTkUKICAgICAgICAgQSBBUyAodiAlIDUgPD4gMCkgQU5EICh2ICUgMyA8PiAw KSwKICAgICAgICAgQiBBUyAodiAlIDUgPSAwKSBPUiAodiAlIDMgPSAwKQotKTsKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRl ciAgICAgICAgICAgICAgICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChh Y3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4g Q1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIgYgot ICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1l bW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgNzggdG90 YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgNTEgdG90YWwsIDIzIHBydW5l ZAogICAgTkZBOiAxNyBtYXRjaGVkIChsZW4gMi8zLzIuNiksIDAgbWlzbWF0Y2hlZApAQCAtMTY3 Myw2ICsxNzYxLDcgQEAgV0lORE9XIHcgQVMgKAogKDkgcm93cykKIAogLS0gVGVzdCAxOS4yOiBV c2luZyBQUkVWIGZ1bmN0aW9uCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFT IHModikKQEAgLTE2ODQsMTMgKzE3NzMsMTMgQEAgV0lORE9XIHcgQVMgKAogICAgICAgICBTIEFT IFRSVUUsCiAgICAgICAgIFUgQVMgdiA+IFBSRVYodiksCiAgICAgICAgIEQgQVMgdiA8IFBSRVYo dikKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgCispOycpOworICAgICAgICAgICAgICAgICAgICAgICAgICBy cHJfZXhwbGFpbl9maWx0ZXIgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9MSkKICAgIFdpbmRvdzogdyBB UyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQogICAg UGF0dGVybjogcyB1KyBkKwotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3 a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0 ZXM6IDYwIHBlYWssIDQ2NiB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMzEgcGVh aywgMzEgdG90YWwsIDEgcHJ1bmVkCiAgICBORkE6IDAgbWF0Y2hlZCwgMjkgbWlzbWF0Y2hlZCAo bGVuIDIvMzAvMTYuMCkKQEAgLTE2OTgsNiArMTc4Nyw3IEBAIFdJTkRPVyB3IEFTICgKICg4IHJv d3MpCiAKIC0tIFRlc3QgMTkuMzogVXNpbmcgTlVMTCBjb21wYXJpc29ucworU0VMRUNUIHJwcl9l eHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZG LCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00g KApAQCAtMTcwOSwxMyArMTc5OSwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0gg U0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2 IElTIE5PVCBOVUxMLCBCIEFTIHYgSVMgTlVMTAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyk7Jyk7Cisg ICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2ZpbHRlciAgICAgICAgICAgICAg ICAgICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgV2luZG93QWdnIChhY3R1YWwgcm93cz0zMC4w MCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5E IFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVt b3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBT dG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgNTUgdG90YWwsIDAgbWVyZ2VkCiAg ICBORkEgQ29udGV4dHM6IDMgcGVhaywgMzEgdG90YWwsIDYgcHJ1bmVkCiAgICBORkE6IDYgbWF0 Y2hlZCAobGVuIDUvNS81LjApLCAwIG1pc21hdGNoZWQKQEAgLTE3MjcsNiArMTgxNyw3IEBAIFdJ TkRPVyB3IEFTICgKIC0tIFNlY3Rpb24gMjA6IExhcmdlIFNjYWxlIFN0YXRpc3RpY3MgVmVyaWZp Y2F0aW9uCiAtLQogLS0gVGVzdCAyMC4xOiA1MDAgcm93cyAtIHZlcmlmeSBzdGF0aXN0aWNzIHNj YWxlIGNvcnJlY3RseQorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFM WVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNF TEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwMCkgQVMgcyh2 KQpAQCAtMTczNSwxMyArMTgyNiwxMyBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0gg U0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQiBDKQogICAgIERFRklORSBBIEFT IHYgJSAxMCA8IDcsIEIgQVMgdiAlIDEwID0gNywgQyBBUyB2ICUgMTAgPSA4Ci0pOwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2Zp bHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dB Z2cgKGFjdHVhbCByb3dzPTUwMC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJF VFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBh KyIgYiBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgorICAgU3Rv cmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IE5rQgogICAgTkZBIFN0YXRlczogMyBwZWFr LCA4NTEgdG90YWwsIDAgbWVyZ2VkCiAgICBORkEgQ29udGV4dHM6IDMgcGVhaywgNTAxIHRvdGFs LCAxNTEgcHJ1bmVkCiAgICBORkE6IDUwIG1hdGNoZWQgKGxlbiA4LzkvOS4wKSwgMCBtaXNtYXRj aGVkCkBAIC0xNzUwLDYgKzE4NDEsNyBAQCBXSU5ET1cgdyBBUyAoCiAoOSByb3dzKQogCiAtLSBU ZXN0IDIwLjI6IEhpZ2ggbWF0Y2ggY291bnQgc2NlbmFyaW8KK1NFTEVDVCBycHJfZXhwbGFpbl9m aWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5H IE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRl X3NlcmllcygxLCA1MDApIEFTIHModikKQEAgLTE3NTgsMTMgKzE4NTAsMTMgQEAgV0lORE9XIHcg QVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEg QikKICAgICBERUZJTkUgQSBBUyB2ICUgMiA9IDEsIEIgQVMgdiAlIDIgPSAwCi0pOwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKKyk7Jyk7CisgICAgICAgICAgICAgICAgICAgICAgICAgIHJwcl9leHBsYWluX2Zp bHRlciAgICAgICAgICAgICAgICAgICAgICAgICAgIAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICBXaW5kb3dB Z2cgKGFjdHVhbCByb3dzPTUwMC4wMCBsb29wcz0xKQogICAgV2luZG93OiB3IEFTIChST1dTIEJF VFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCiAgICBQYXR0ZXJuOiBh IGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCisgICBTdG9yYWdl OiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogTmtCCiAgICBORkEgU3RhdGVzOiAyIHBlYWssIDUw MSB0b3RhbCwgMCBtZXJnZWQKICAgIE5GQSBDb250ZXh0czogMyBwZWFrLCA1MDEgdG90YWwsIDI1 MCBwcnVuZWQKICAgIE5GQTogMjUwIG1hdGNoZWQgKGxlbiAyLzIvMi4wKSwgMCBtaXNtYXRjaGVk CkBAIC0xNzcyLDYgKzE4NjQsNyBAQCBXSU5ET1cgdyBBUyAoCiAoOCByb3dzKQogCiAtLSBUZXN0 IDIwLjM6IEhpZ2ggc2tpcCBjb3VudCBzY2VuYXJpbworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRl cignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZG LCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2Vy aWVzKDEsIDUwMCkgQVMgcyh2KQpAQCAtMTc4NSwxMyArMTg3OCwxMyBAQCBXSU5ET1cgdyBBUyAo CiAgICAgICAgIEMgQVMgdiAlIDEwMCA9IDMsCiAgICAgICAgIEQgQVMgdiAlIDEwMCA9IDQsCiAg ICAgICAgIEUgQVMgdiAlIDEwMCA9IDUKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorKTsnKTsKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgcnByX2V4cGxhaW5fZmlsdGVyICAgICAgICAgICAgICAgICAg ICAgICAgICAgCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NTAwLjAw IGxvb3BzPTEpCiAgICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQg VU5CT1VOREVEIEZPTExPV0lORykKICAgIFBhdHRlcm46IGEgYiBjIGQgZQotICAgU3RvcmFnZTog TWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKKyAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11 bSBTdG9yYWdlOiBOa0IKICAgIE5GQSBTdGF0ZXM6IDIgcGVhaywgNTAxIHRvdGFsLCAwIG1lcmdl ZAogICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDUwMSB0b3RhbCwgNDk1IHBydW5lZAogICAgTkZB OiA1IG1hdGNoZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNtYXRjaGVkCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL3Jwcl9leHBsYWluXzEub3V0IGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9ycHJfZXhwbGFpbl8xLm91dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMWMxYmJkYTQyYjIuLjAwMDAwMDAwMDAwCi0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0 ZWQvcnByX2V4cGxhaW5fMS5vdXQKKysrIC9kZXYvbnVsbApAQCAtMSwxODAzICswLDAgQEAKLS0t Ci0tLSBUZXN0OiBFWFBMQUlOIEFOQUxZWkUgb3V0cHV0IGZvciBSb3cgUGF0dGVybiBSZWNvZ25p dGlvbiBORkEgc3RhdGlzdGljcwotLS0KLS0tIFRoaXMgZmlsZSB0ZXN0cyB0aGUgTkZBIHN0YXRp c3RpY3Mgc2hvd24gaW4gRVhQTEFJTiBBTkFMWVpFIG91dHB1dDoKLS0tIC0gTkZBIFN0YXRlczog cGVhaywgdG90YWwsIG1lcmdlZAotLS0gLSBORkEgQ29udGV4dHM6IHBlYWssIHRvdGFsLCBhYnNv cmJlZCwgc2tpcHBlZAotLS0gLSBORkE6IG1hdGNoZWQgKGxlbiBtaW4vbWF4L2F2ZyksIG1pc21h dGNoZWQgKGxlbiBtaW4vbWF4L2F2ZykKLS0tCi0tLSBTZXR1cDogQ3JlYXRlIHRlc3QgdGFibGVz Ci1DUkVBVEUgVEVNUCBUQUJMRSBuZmFfdGVzdCAoCi0gICAgaWQgc2VyaWFsLAotICAgIHYgaW50 LAotICAgIGNhdCBjaGFyKDEpCi0pOwotLS0gSW5zZXJ0IHRlc3QgZGF0YTogMTAwIHJvd3Mgd2l0 aCBwcmVkaWN0YWJsZSBwYXR0ZXJuCi1JTlNFUlQgSU5UTyBuZmFfdGVzdCAodiwgY2F0KQotU0VM RUNUIGksCi0gICAgICAgQ0FTRQotICAgICAgICAgICBXSEVOIGkgJSA1ID0gMSBUSEVOICdBJwot ICAgICAgICAgICBXSEVOIGkgJSA1ID0gMiBUSEVOICdCJwotICAgICAgICAgICBXSEVOIGkgJSA1 ID0gMyBUSEVOICdDJwotICAgICAgICAgICBXSEVOIGkgJSA1ID0gNCBUSEVOICdEJwotICAgICAg ICAgICBFTFNFICdFJwotICAgICAgIEVORAotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBp OwotLS0gQWRkaXRpb25hbCB0ZXN0IHRhYmxlIHdpdGggbW9yZSBjb21wbGV4IHBhdHRlcm5zCi1D UkVBVEUgVEVNUCBUQUJMRSBuZmFfY29tcGxleCAoCi0gICAgaWQgc2VyaWFsLAotICAgIHByaWNl IGludCwKLSAgICB0cmVuZCBjaGFyKDEpICAtLSBVPXVwLCBEPWRvd24sIFM9c3RhYmxlCi0pOwot SU5TRVJUIElOVE8gbmZhX2NvbXBsZXggKHByaWNlLCB0cmVuZCkKLVZBTFVFUwotICAgICgxMDAs ICdTJyksICgxMDUsICdVJyksICgxMTAsICdVJyksICgxMDgsICdEJyksICgxMTIsICdVJyksCi0g ICAgKDExNSwgJ1UnKSwgKDExMywgJ0QnKSwgKDExMSwgJ0QnKSwgKDEwOSwgJ0QnKSwgKDExMCwg J1UnKSwKLSAgICAoMTIwLCAnVScpLCAoMTI1LCAnVScpLCAoMTMwLCAnVScpLCAoMTI4LCAnRCcp LCAoMTI2LCAnRCcpLAotICAgICgxMjQsICdEJyksICgxMjIsICdEJyksICgxMjAsICdEJyksICgx MTgsICdEJyksICgxMTksICdVJyksCi0gICAgKDEyMSwgJ1UnKSwgKDEyMywgJ1UnKSwgKDEyNSwg J1UnKSwgKDEyNywgJ1UnKSwgKDEyOSwgJ1UnKSwKLSAgICAoMTMxLCAnVScpLCAoMTMzLCAnVScp LCAoMTMwLCAnRCcpLCAoMTI3LCAnRCcpLCAoMTI0LCAnRCcpOwotLS0KLS0tIFNlY3Rpb24gMTog QmFzaWMgTkZBIFN0YXRpc3RpY3MgVGVzdHMKLS0tCi0tLSBUZXN0IDEuMTogU2ltcGxlIHBhdHRl cm4gLSBzaG91bGQgc2hvdyBiYXNpYyBzdGF0aXN0aWNzCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZG RVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3Vu dCgqKSBPVkVSIHcKLUZST00gbmZhX3Rlc3QKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBT S0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBIEIpCi0gICAgREVGSU5FIEEgQVMgY2F0 ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJwotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBR VUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5k b3dBZ2cgKGFjdHVhbCByb3dzPTEwMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChST1dT IEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJu OiBhIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEg U3RhdGVzOiAyIHBlYWssIDEwMSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBw ZWFrLCAxMDEgdG90YWwsIDgwIHBydW5lZAotICAgTkZBOiAyMCBtYXRjaGVkIChsZW4gMi8yLzIu MCksIDAgbWlzbWF0Y2hlZAotICAgLT4gIFNlcSBTY2FuIG9uIG5mYV90ZXN0IChhY3R1YWwgcm93 cz0xMDAuMDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgMS4yOiBQYXR0ZXJuIHdpdGgg bm8gbWF0Y2hlcyAtIDAgbWF0Y2hlZAotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENP U1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3 Ci1GUk9NIG5mYV90ZXN0Ci1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQg Uk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExB U1QgUk9XCi0gICAgUEFUVEVSTiAoWCBZIFopCi0gICAgREVGSU5FIFggQVMgY2F0ID0gJ1gnLCBZ IEFTIGNhdCA9ICdZJywgWiBBUyBjYXQgPSAnWicKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ci0gV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBB UyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAg UGF0dGVybjogeCB5IHoKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tC Ci0gICBORkEgU3RhdGVzOiAxIHBlYWssIDEwMSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250 ZXh0czogMiBwZWFrLCAxMDEgdG90YWwsIDEwMCBwcnVuZWQKLSAgIE5GQTogMCBtYXRjaGVkLCAw IG1pc21hdGNoZWQKLSAgIC0+ICBTZXEgU2NhbiBvbiBuZmFfdGVzdCAoYWN0dWFsIHJvd3M9MTAw LjAwIGxvb3BzPTEpCi0oOCByb3dzKQotCi0tLSBUZXN0IDEuMzogUGF0dGVybiBtYXRjaGluZyBl dmVyeSByb3cgLSBoaWdoIG1hdGNoIGNvdW50Ci1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBP VkVSIHcKLUZST00gbmZhX3Rlc3QKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VS UkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBB U1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChSKQotICAgIERFRklORSBSIEFTIFRSVUUKLSk7Ci0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9v cHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJP VU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogcgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhp bXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDIgcGVhaywgMTAxIHRvdGFsLCAwIG1l cmdlZAotICAgTkZBIENvbnRleHRzOiAyIHBlYWssIDEwMSB0b3RhbCwgMCBwcnVuZWQKLSAgIE5G QTogMTAwIG1hdGNoZWQgKGxlbiAxLzEvMS4wKSwgMCBtaXNtYXRjaGVkCi0gICAtPiAgU2VxIFNj YW4gb24gbmZhX3Rlc3QgKGFjdHVhbCByb3dzPTEwMC4wMCBsb29wcz0xKQotKDggcm93cykKLQot LS0KLS0tIFNlY3Rpb24gMjogU3RhdGUgU3RhdGlzdGljcyBUZXN0cyAocGVhaywgdG90YWwsIG1l cmdlZCkKLS0tCi0tLSBUZXN0IDIuMTogU2ltcGxlIHF1YW50aWZpZXIgcGF0dGVybiAtIEErIHdp dGggc2hvcnQgbWF0Y2hlcyAobm8gbWVyZ2luZykKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMg T0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCop IE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKLVdJTkRPVyB3IEFT ICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK LSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKykKLSAg ICBERUZJTkUgQSBBUyB2ICUgMiA9IDEKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ci0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFT IChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQ YXR0ZXJuOiBhKyIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0g ICBORkEgU3RhdGVzOiAzIHBlYWssIDc2IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRz OiAzIHBlYWssIDUxIHRvdGFsLCAyNSBwcnVuZWQKLSAgIE5GQTogMjUgbWF0Y2hlZCAobGVuIDEv MS8xLjApLCAwIG1pc21hdGNoZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3Nl cmllcyBzIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotKDggcm93cykKLQotLS0gVGVzdCAy LjI6IEFsdGVybmF0aW9uIHBhdHRlcm4gLSBtdWx0aXBsZSBzdGF0ZSBicmFuY2hlcwotRVhQTEFJ TiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBP RkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIG5mYV90ZXN0Ci1XSU5ET1cgdyBBUyAo Ci0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0g ICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoKEEgfCBCIHwg QykgKEQgfCBFKSkKLSAgICBERUZJTkUKLSAgICAgICAgQSBBUyBjYXQgPSAnQScsIEIgQVMgY2F0 ID0gJ0InLCBDIEFTIGNhdCA9ICdDJywKLSAgICAgICAgRCBBUyBjYXQgPSAnRCcsIEUgQVMgY2F0 ID0gJ0UnCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJv d3M9MTAwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5U IFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IChhIHwgYiB8IGMgZCB8 IGUpCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0 YXRlczogNSBwZWFrLCAzNjMgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVh aywgMTAxIHRvdGFsLCA0MCBwcnVuZWQKLSAgIE5GQTogMjAgbWF0Y2hlZCAobGVuIDIvMi8yLjAp LCA0MCBtaXNtYXRjaGVkIChsZW4gMi8yLzIuMCkKLSAgIC0+ICBTZXEgU2NhbiBvbiBuZmFfdGVz dCAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCi0oOCByb3dzKQotCi0tLSBUZXN0IDIuMzog Q29tcGxleCBwYXR0ZXJuIHdpdGggaGlnaCBzdGF0ZSBjb3VudAotRVhQTEFJTiAoQU5BTFlaRSwg QlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1Qg Y291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikKLVdJ TkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBG T0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJO IChBKyBCKiBDKykKLSAgICBERUZJTkUKLSAgICAgICAgQSBBUyB2ICUgMyA9IDEsCi0gICAgICAg IEIgQVMgdiAlIDMgPSAyLAotICAgICAgICBDIEFTIHYgJSAzID0gMAotKTsKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3Bz PTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VO REVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiKiBjKwotICAgU3RvcmFnZTogTWVtb3J5 ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDUgcGVhaywgMjM1IHRvdGFs LCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDEwMSB0b3RhbCwgNjcgcHJ1bmVk Ci0gICBORkE6IDMzIG1hdGNoZWQgKGxlbiAzLzMvMy4wKSwgMCBtaXNtYXRjaGVkCi0gICAtPiAg RnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxv b3BzPTEpCi0oOCByb3dzKQotCi0tLSBUZXN0IDIuNDogR3JvdXBlZCBwYXR0ZXJuIHdpdGggcXVh bnRpZmllciAtIHN0YXRlIG1lcmdpbmcKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBD T1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIg dwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNjApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAg ICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBB RlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOICgoQSBCKSspCi0gICAg REVGSU5FIEEgQVMgdiAlIDIgPSAxLCBCIEFTIHYgJSAyID0gMAotKTsKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTYwLjAwIGxvb3BzPTEpCi0g ICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZP TExPV0lORykKLSAgIFBhdHRlcm46IChhJyBiJykrIgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhp bXVtIFN0b3JhZ2U6IDE5a0IKLSAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgOTEgdG90YWwsIDAgbWVy Z2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgNjEgdG90YWwsIDMwIHBydW5lZAotICAgTkZB OiAxIG1hdGNoZWQgKGxlbiA2MC82MC82MC4wKSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDI5IGFi c29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24g Z2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTYwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQot Ci0tLSBUZXN0IDIuNTogU3RhdGUgZXhwbG9zaW9uIHBhdHRlcm4gLSBtYW55IGFsdGVybmF0aW9u cwotLS0gUGF0dGVybiAoQXxCKShBfEIpKEF8QikoQXxCKSBjYW4gY3JlYXRlIG1hbnkgcGFyYWxs ZWwgc3RhdGVzCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1J TkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJh dGVfc2VyaWVzKDEsIDEwMCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VF TiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNL SVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKChBIHwgQikgKEEgfCBCKSAoQSB8IEIpIChB IHwgQikgKEEgfCBCKSAoQSB8IEIpIChBIHwgQikgKEEgfCBCKSkKLSAgICBERUZJTkUgQSBBUyB2 ICUgMiA9IDEsIEIgQVMgdiAlIDIgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzog dyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQot ICAgUGF0dGVybjogKGEgfCBiIGEgfCBiIGEgfCBiIGEgfCBiIGEgfCBiIGEgfCBiIGEgfCBiIGEg fCBiKQotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBT dGF0ZXM6IDE3IHBlYWssIDYzMiB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogOSBw ZWFrLCAxMDEgdG90YWwsIDEgcHJ1bmVkCi0gICBORkE6IDEyIG1hdGNoZWQgKGxlbiA4LzgvOC4w KSwgMyBtaXNtYXRjaGVkIChsZW4gMi80LzMuMCkKLSAgIE5GQTogMCBhYnNvcmJlZCwgODQgc2tp cHBlZCAobGVuIDEvNy80LjApCi0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJp ZXMgcyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0IDIu NjogSGlnaCBzdGF0ZSBtZXJnaW5nIC0gYWx0ZXJuYXRpb24gd2l0aCBwbHVzIHF1YW50aWZpZXIK LUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNV TU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMo MSwgMTAwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQg Uk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExB U1QgUk9XCi0gICAgUEFUVEVSTiAoKEEgfCBCIHwgQykrIEQpCi0gICAgREVGSU5FIEEgQVMgdiAl IDQgPSAxLCBCIEFTIHYgJSA0ID0gMiwgQyBBUyB2ICUgNCA9IDMsIEQgQVMgdiAlIDQgPSAwCi0p OwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93 cz0xMDAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQg Uk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogKGEgfCBiIHwgYykrIGQK LSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVz OiAxNSBwZWFrLCA3NTMgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDUgcGVhaywg MTAxIHRvdGFsLCAyNSBwcnVuZWQKLSAgIE5GQTogMjUgbWF0Y2hlZCAobGVuIDQvNC80LjApLCAw IG1pc21hdGNoZWQKLSAgIE5GQTogMCBhYnNvcmJlZCwgNTAgc2tpcHBlZCAobGVuIDIvMy8yLjUp Ci0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9 MTAwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0IDIuNzogTmVzdGVkIHF1YW50aWZp ZXJzIGNhdXNpbmcgc3RhdGUgZ3Jvd3RoCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwg Q09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVS IHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMDApIEFTIHModikKLVdJTkRPVyB3IEFTICgK LSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAg ICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOICgoKEEgfCBCKSsp KykKLSAgICBERUZJTkUgQSBBUyB2ICUgMyA9IDEsIEIgQVMgdiAlIDMgPSAyCi0pOwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEwMDAu MDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFO RCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogKChhIHwgYikrKSsKLSAgIFN0b3Jh Z2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiAxNiBwZWFr LCA3MzM0IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiA0IHBlYWssIDEwMDEgdG90 YWwsIDMzMyBwcnVuZWQKLSAgIE5GQTogMzM0IG1hdGNoZWQgKGxlbiAxLzIvMi4wKSwgMCBtaXNt YXRjaGVkCi0gICBORkE6IDAgYWJzb3JiZWQsIDMzMyBza2lwcGVkIChsZW4gMi8yLzIuMCkKLSAg IC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0xMDAw LjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLQotLS0gU2VjdGlvbiAzOiBDb250ZXh0IFN0YXRp c3RpY3MgVGVzdHMgKHBlYWssIHRvdGFsLCBhYnNvcmJlZCwgc2tpcHBlZCkKLS0tCi0tLSBUZXN0 IDMuMTogQ29udGV4dCBhYnNvcnB0aW9uIHdpdGggdW5ib3VuZGVkIHF1YW50aWZpZXIgYXQgc3Rh cnQKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYs IFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJp ZXMoMSwgNTApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVO VCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1Qg TEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklORSBBIEFTIHYgJSA1IDw+IDAs IEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkg UExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRv d0FnZyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBC RVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjog YSsiIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEg U3RhdGVzOiAzIHBlYWssIDkxIHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBl YWssIDUxIHRvdGFsLCAxMCBwcnVuZWQKLSAgIE5GQTogMTAgbWF0Y2hlZCAobGVuIDUvNS81LjAp LCAwIG1pc21hdGNoZWQKLSAgIE5GQTogMzAgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwgMCBza2lw cGVkCi0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJv d3M9NTAuMDAgbG9vcHM9MSkKLSg5IHJvd3MpCi0KLS0tIFRlc3QgMy4yOiBObyBhYnNvcnB0aW9u IC0gYm91bmRlZCBxdWFudGlmaWVyCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09T VFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcK LUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAg Uk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZU RVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoQXsyLDR9IEIpCi0gICAg REVGSU5FIEEgQVMgdiAlIDUgPD4gMCwgQiBBUyB2ICUgNSA9IDAKLSk7Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQot ICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBG T0xMT1dJTkcpCi0gICBQYXR0ZXJuOiBhezIsNH0gYgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhp bXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDcgcGVhaywgMTAxIHRvdGFsLCAwIG1l cmdlZAotICAgTkZBIENvbnRleHRzOiA2IHBlYWssIDUxIHRvdGFsLCAxMCBwcnVuZWQKLSAgIE5G QTogMTAgbWF0Y2hlZCAobGVuIDUvNS81LjApLCAxMCBtaXNtYXRjaGVkIChsZW4gMi8yLzIuMCkK LSAgIE5GQTogMCBhYnNvcmJlZCwgMjAgc2tpcHBlZCAobGVuIDMvNC8zLjUpCi0gICAtPiAgRnVu Y3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9 MSkKLSg5IHJvd3MpCi0KLS0tIFRlc3QgMy4zOiBDb250ZXh0cyBza2lwcGVkIGJ5IFNLSVAgUEFT VCBMQVNUIFJPVwotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElN SU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVy YXRlX3NlcmllcygxLCAxMDApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBT S0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBIEIgQykKLSAgICBERUZJTkUgQSBBUyB2 ICUgMTAgPSAxLCBCIEFTIHYgJSAxMCA9IDIsIEMgQVMgdiAlIDEwID0gMwotKTsKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAwLjAwIGxv b3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5C T1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGEgYiBjCi0gICBTdG9yYWdlOiBNZW1vcnkg IE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMiBwZWFrLCAxMDEgdG90YWws IDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgMTAxIHRvdGFsLCA5MCBwcnVuZWQK LSAgIE5GQTogMTAgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQKLSAgIC0+ICBG dW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0xMDAuMDAgbG9v cHM9MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgMy40OiBIaWdoIGNvbnRleHQgYWJzb3JwdGlvbiAt IHVuYm91bmRlZCBncm91cAotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9G RiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9N IGdlbmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dT IEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBN QVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOICgoQSBCKSsgQykKLSAgICBERUZJ TkUgQSBBUyB2ICUgMyA9IDEsIEIgQVMgdiAlIDMgPSAyLCBDIEFTIHYgJSAzID0gMAotKTsKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAw LjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBB TkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IChhJyBiJykrIiBjCi0gICBTdG9y YWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMyBwZWFr LCAxMzQgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgMTAxIHRvdGFs LCA2NyBwcnVuZWQKLSAgIE5GQTogMzMgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNo ZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93 cz0xMDAuMDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tCi0tLSBTZWN0aW9uIDQ6IE1hdGNoIExl bmd0aCBTdGF0aXN0aWNzIFRlc3RzCi0tLQotLS0gVGVzdCA0LjE6IEZpeGVkIGxlbmd0aCBtYXRj aGVzIC0gYWxsIHNhbWUgbGVuZ3RoCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09T VFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcK LUZST00gbmZhX3Rlc3QKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBS T1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFT VCBST1cKLSAgICBQQVRURVJOIChBIEIgQyBEIEUpCi0gICAgREVGSU5FCi0gICAgICAgIEEgQVMg Y2F0ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQgPSAnQycsCi0gICAgICAgIEQgQVMg Y2F0ID0gJ0QnLCBFIEFTIGNhdCA9ICdFJwotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBX aW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEwMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChS T1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0 ZXJuOiBhIGIgYyBkIGUKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tC Ci0gICBORkEgU3RhdGVzOiAyIHBlYWssIDEwMSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250 ZXh0czogMyBwZWFrLCAxMDEgdG90YWwsIDgwIHBydW5lZAotICAgTkZBOiAyMCBtYXRjaGVkIChs ZW4gNS81LzUuMCksIDAgbWlzbWF0Y2hlZAotICAgLT4gIFNlcSBTY2FuIG9uIG5mYV90ZXN0IChh Y3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgNC4yOiBWYXJp YWJsZSBsZW5ndGggbWF0Y2hlcyAtIG1pbi9tYXgvYXZnIGRpZmZlcgotRVhQTEFJTiAoQU5BTFla RSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxF Q1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikK LVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRF RCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRU RVJOIChBKyBCKQotICAgIERFRklORSBBIEFTIHYgJSAxMCA8PiAwLCBCIEFTIHYgJSAxMCA9IDAK LSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCBy b3dzPTEwMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVO VCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiBhKyIgYgotICAgU3Rv cmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDMgcGVh aywgMTkxIHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDEwMSB0b3Rh bCwgMTAgcHJ1bmVkCi0gICBORkE6IDEwIG1hdGNoZWQgKGxlbiAxMC8xMC8xMC4wKSwgMCBtaXNt YXRjaGVkCi0gICBORkE6IDgwIGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAg LT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTEwMC4w MCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCA0LjM6IFZlcnkgbG9uZyBtYXRjaGVzCi1F WFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1N QVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEs IDIwMCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJP VyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNU IFJPVwotICAgIFBBVFRFUk4gKEErIEIpCi0gICAgREVGSU5FIEEgQVMgdiA8PSAxOTUsIEIgQVMg diA+IDE5NQotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAo YWN0dWFsIHJvd3M9MjAwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VF TiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBi Ci0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMjRrQgotICAgTkZBIFN0YXRl czogMyBwZWFrLCAzOTYgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywg MjAxIHRvdGFsLCA1IHBydW5lZAotICAgTkZBOiAxIG1hdGNoZWQgKGxlbiAxOTYvMTk2LzE5Ni4w KSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDE5NCBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNr aXBwZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwg cm93cz0yMDAuMDAgbG9vcHM9MSkKLSg5IHJvd3MpCi0KLS0tIFRlc3QgNC40OiBNaXggb2Ygc2hv cnQgYW5kIGxvbmcgbWF0Y2hlcwotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RT IE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1G Uk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBS T1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRF UiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklO RQotICAgICAgICBBIEFTICh2ICUgMjAgPD4gMCkgQU5EICh2ICUgMjAgPD0gMTAgT1IgdiAlIDIw ID4gMTUpLAotICAgICAgICBCIEFTIHYgJSAyMCA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTEwMC4wMCBsb29wcz0xKQotICAg V2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xM T1dJTkcpCi0gICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0 b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgMTcxIHRvdGFsLCAwIG1lcmdlZAot ICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDEwMSB0b3RhbCwgMzAgcHJ1bmVkCi0gICBORkE6IDUg bWF0Y2hlZCAobGVuIDUvNS81LjApLCA1IG1pc21hdGNoZWQgKGxlbiAxMS8xMS8xMS4wKQotICAg TkZBOiA2MCBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ICBGdW5jdGlv biBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkK LSg5IHJvd3MpCi0KLS0tCi0tLSBTZWN0aW9uIDU6IE1pc21hdGNoIExlbmd0aCBTdGF0aXN0aWNz IFRlc3RzCi0tLQotLS0gVGVzdCA1LjE6IFBhdHRlcm4gdGhhdCBjYXVzZXMgbWlzbWF0Y2hlcyB3 aXRoIGxlbmd0aCA+IDEKLS0tIE1pc21hdGNoIGhhcHBlbnMgd2hlbiBwYXJ0aWFsIG1hdGNoIGZh aWxzIGFmdGVyIHByb2Nlc3NpbmcgbXVsdGlwbGUgcm93cwotRVhQTEFJTiAoQU5BTFlaRSwgQlVG RkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291 bnQoKikgT1ZFUiB3Ci1GUk9NICgKLSAgICBTRUxFQ1QgdiwKLSAgICAgICAgICAgQ0FTRSBXSEVO IHYgJSAxMCBJTiAoMSwyLDMpIFRIRU4gJ0EnCi0gICAgICAgICAgICAgICAgV0hFTiB2ICUgMTAg SU4gKDQsNSkgVEhFTiAnQicKLSAgICAgICAgICAgICAgICBXSEVOIHYgJSAxMCA9IDYgVEhFTiAn QycKLSAgICAgICAgICAgICAgICBFTFNFICdYJyBFTkQgQVMgY2F0Ci0gICAgRlJPTSBnZW5lcmF0 ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCi0pIHQKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJF VFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRD SCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKyBDKQotICAgIERFRklORSBB IEFTIGNhdCA9ICdBJywgQiBBUyBjYXQgPSAnQicsIEMgQVMgY2F0ID0gJ0MnCi0pOwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAg bG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBV TkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogYSsiIGIrIGMKLSAgIFN0b3JhZ2U6IE1l bW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiAzIHBlYWssIDE1MSB0 b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAxMDEgdG90YWwsIDcwIHBy dW5lZAotICAgTkZBOiAxMCBtYXRjaGVkIChsZW4gNi82LzYuMCksIDAgbWlzbWF0Y2hlZAotICAg TkZBOiAyMCBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ICBGdW5jdGlv biBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkK LSg5IHJvd3MpCi0KLS0tIFRlc3QgNS4yOiBMb25nIHBhcnRpYWwgbWF0Y2hlcyB0aGF0IGZhaWwK LUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNV TU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSAoCi0gICAgU0VMRUNUIGkg QVMgdiwKLSAgICAgICAgICAgQ0FTRQotICAgICAgICAgICAgICAgV0hFTiBpIDw9IDIwIFRIRU4g J0EnCi0gICAgICAgICAgICAgICBXSEVOIGkgPD0gMjUgVEhFTiAnQicKLSAgICAgICAgICAgICAg IFdIRU4gaSA9IDI2IFRIRU4gJ1gnICAtLSBicmVha3MgdGhlIHBhdHRlcm4KLSAgICAgICAgICAg ICAgIFdIRU4gaSA8PSA1MCBUSEVOICdBJwotICAgICAgICAgICAgICAgV0hFTiBpIDw9IDU1IFRI RU4gJ0InCi0gICAgICAgICAgICAgICBXSEVOIGkgPSA1NiBUSEVOICdDJyAgLS0gY29tcGxldGVz IHBhdHRlcm4KLSAgICAgICAgICAgICAgIEVMU0UgJ1knCi0gICAgICAgICAgIEVORCBBUyBjYXQK LSAgICBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA2MCkgaQotKSB0Ci1XSU5ET1cgdyBBUyAoCi0g ICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAg QUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoQSsgQisgQykKLSAg ICBERUZJTkUgQSBBUyBjYXQgPSAnQScsIEIgQVMgY2F0ID0gJ0InLCBDIEFTIGNhdCA9ICdDJwot KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dz PTYwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJP VyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiKyBjCi0gICBTdG9y YWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMThrQgotICAgTkZBIFN0YXRlczogMyBwZWFr LCAxMTUgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgNjEgdG90YWws IDE2IHBydW5lZAotICAgTkZBOiAxIG1hdGNoZWQgKGxlbiAzMC8zMC8zMC4wKSwgMSBtaXNtYXRj aGVkIChsZW4gMjYvMjYvMjYuMCkKLSAgIE5GQTogNDIgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwg MCBza2lwcGVkCi0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgaSAoYWN0 dWFsIHJvd3M9NjAuMDAgbG9vcHM9MSkKLSg5IHJvd3MpCi0KLS0tCi0tLSBTZWN0aW9uIDY6IEpT T04gRm9ybWF0IFRlc3RzCi0tLQotLS0gVGVzdCA2LjE6IEpTT04gZm9ybWF0IG91dHB1dCB3aXRo IGFsbCBzdGF0aXN0aWNzCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZG LCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRiwgRk9STUFUIEpTT04pCi1TRUxFQ1QgY291bnQoKikg T1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2KQotV0lORE9XIHcgQVMg KAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwot ICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEErIEIrKQot ICAgIERFRklORSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIKLSk7Ci0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gWyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICB7 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICArCi0gICAgICJQbGFuIjogeyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5vZGUgVHlwZSI6 ICJXaW5kb3dBZ2ciLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAr Ci0gICAgICAgIlBhcmFsbGVsIEF3YXJlIjogZmFsc2UsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIkFzeW5jIENhcGFibGUiOiBmYWxzZSwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIkFjdHVh bCBSb3dzIjogNTAuMDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICArCi0gICAgICAgIkFjdHVhbCBMb29wcyI6IDEsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIkRpc2FibGVkIjogZmFsc2UsICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAg IldpbmRvdyI6ICJ3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBG T0xMT1dJTkcpIiwrCi0gICAgICAgIlBhdHRlcm4iOiAiYStcIiBiKyIsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIlN0b3JhZ2UiOiAiTWVt b3J5IiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0g ICAgICAgIk1heGltdW0gU3RvcmFnZSI6IDE3LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBTdGF0ZXMgUGVhayI6IDMsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBTdGF0 ZXMgVG90YWwiOiA4NSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICArCi0gICAgICAgIk5GQSBTdGF0ZXMgTWVyZ2VkIjogMCwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBDb250ZXh0cyBQZWFrIjogMywg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5G QSBDb250ZXh0cyBUb3RhbCI6IDUxLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICArCi0gICAgICAgIk5GQSBDb250ZXh0cyBBYnNvcmJlZCI6IDAsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBDb250ZXh0cyBTa2lw cGVkIjogMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAg ICAgIk5GQSBDb250ZXh0cyBQcnVuZWQiOiAzMywgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBNYXRjaGVkIjogMTcsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBNaXNtYXRj aGVkIjogMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAr Ci0gICAgICAgIk5GQSBNYXRjaCBMZW5ndGggTWluIjogMiwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBNYXRjaCBMZW5ndGggTWF4IjogMiwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgIk5GQSBN YXRjaCBMZW5ndGggQXZnIjogMi4wLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICArCi0gICAgICAgIlBsYW5zIjogWyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICB7ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAg ICAgICJOb2RlIFR5cGUiOiAiRnVuY3Rpb24gU2NhbiIsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICArCi0gICAgICAgICAgICJQYXJlbnQgUmVsYXRpb25zaGlwIjogIk91dGVyIiwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICAgICJQYXJhbGxlbCBB d2FyZSI6IGZhbHNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0g ICAgICAgICAgICJBc3luYyBDYXBhYmxlIjogZmFsc2UsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICArCi0gICAgICAgICAgICJGdW5jdGlvbiBOYW1lIjogImdlbmVyYXRl X3NlcmllcyIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICAgICJBbGlh cyI6ICJzIiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICArCi0gICAgICAgICAgICJBY3R1YWwgUm93cyI6IDUwLjAwLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICAgICJBY3R1YWwgTG9vcHMiOiAxLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICAg ICJEaXNhYmxlZCI6IGZhbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICArCi0gICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgXSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAg IH0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICArCi0gICAgICJUcmlnZ2VycyI6IFsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgIF0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAr Ci0gICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCi0gXQotKDEgcm93KQotCi0tLSBUZXN0IDYuMjogSlNPTiBm b3JtYXQgd2l0aCBtYXRjaCBsZW5ndGggc3RhdGlzdGljcwotRVhQTEFJTiAoQU5BTFlaRSwgQlVG RkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYsIEZPUk1BVCBKU09O KQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBB UyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBV TkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0g ICAgUEFUVEVSTiAoQSsgQikKLSAgICBERUZJTkUgQSBBUyB2ICUgMTAgPD4gMCwgQiBBUyB2ICUg MTAgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKwotICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAiUGxhbiI6IHsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KwotICAgICAgICJOb2RlIFR5cGUiOiAiV2luZG93QWdnIiwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJQYXJhbGxlbCBBd2FyZSI6IGZhbHNlLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJBc3lu YyBDYXBhYmxlIjogZmFsc2UsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKwotICAgICAgICJBY3R1YWwgUm93cyI6IDEwMC4wMCwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJBY3R1YWwgTG9vcHMiOiAxLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAg ICJEaXNhYmxlZCI6IGZhbHNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKwotICAgICAgICJXaW5kb3ciOiAidyBBUyAoUk9XUyBCRVRXRUVOIENVUlJF TlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKSIsKwotICAgICAgICJQYXR0ZXJuIjogImEr XCIgYiIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwot ICAgICAgICJTdG9yYWdlIjogIk1lbW9yeSIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKwotICAgICAgICJNYXhpbXVtIFN0b3JhZ2UiOiAxNywgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgU3Rh dGVzIFBlYWsiOiAzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKwotICAgICAgICJORkEgU3RhdGVzIFRvdGFsIjogMTkxLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgU3RhdGVzIE1lcmdlZCI6IDAs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJO RkEgQ29udGV4dHMgUGVhayI6IDMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKwotICAgICAgICJORkEgQ29udGV4dHMgVG90YWwiOiAxMDEsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgQ29udGV4dHMgQWJz b3JiZWQiOiA4MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAg ICAgICJORkEgQ29udGV4dHMgU2tpcHBlZCI6IDAsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgQ29udGV4dHMgUHJ1bmVkIjogMTAsICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgTWF0Y2hl ZCI6IDEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KwotICAgICAgICJORkEgTWlzbWF0Y2hlZCI6IDAsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgTWF0Y2ggTGVuZ3RoIE1pbiI6IDEw LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEg TWF0Y2ggTGVuZ3RoIE1heCI6IDEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKwotICAgICAgICJORkEgTWF0Y2ggTGVuZ3RoIEF2ZyI6IDEwLjAsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJORkEgQWJzb3JiZWQgTGVuZ3Ro IE1pbiI6IDEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAg ICJORkEgQWJzb3JiZWQgTGVuZ3RoIE1heCI6IDEsICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKwotICAgICAgICJORkEgQWJzb3JiZWQgTGVuZ3RoIEF2ZyI6IDEuMCwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICJQbGFucyI6IFsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwot ICAgICAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgICAiTm9kZSBUeXBlIjogIkZ1bmN0aW9uIFNj YW4iLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgICAiUGFy ZW50IFJlbGF0aW9uc2hpcCI6ICJPdXRlciIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKwotICAgICAgICAgICAiUGFyYWxsZWwgQXdhcmUiOiBmYWxzZSwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgICAiQXN5bmMgQ2FwYWJsZSI6IGZh bHNlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICAg ICAiRnVuY3Rpb24gTmFtZSI6ICJnZW5lcmF0ZV9zZXJpZXMiLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKwotICAgICAgICAgICAiQWxpYXMiOiAicyIsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgICAiQWN0dWFsIFJvd3Mi OiAxMDAuMDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAg ICAgICAgICAiQWN0dWFsIExvb3BzIjogMSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKwotICAgICAgICAgICAiRGlzYWJsZWQiOiBmYWxzZSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgfSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KwotICAgICAgIF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKwotICAgICB9LCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAiVHJpZ2dl cnMiOiBbICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKwotICAgICBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgfSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotIF0KLSgx IHJvdykKLQotLS0KLS0tIFNlY3Rpb24gNzogWE1MIEZvcm1hdCBUZXN0cwotLS0KLS0tIFRlc3Qg Ny4xOiBYTUwgZm9ybWF0IG91dHB1dAotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENP U1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYsIEZPUk1BVCBYTUwpCi1TRUxFQ1QgY291 bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCAzMCkgQVMgcyh2KQotV0lORE9X IHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExP V0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEEg QikKLSAgICBERUZJTkUgQSBBUyB2ICUgMiA9IDEsIEIgQVMgdiAlIDIgPSAwCi0pOwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gPGV4cGxhaW4geG1s bnM9Imh0dHA6Ly93d3cucG9zdGdyZXNxbC5vcmcvMjAwOS9leHBsYWluIj4gICAgICAgICAgICAg ICAgICAgICAgKwotICAgPFF1ZXJ5PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgPFBsYW4+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICArCi0gICAgICAgPE5vZGUtVHlwZT5XaW5kb3dBZ2c8L05vZGUtVHlwZT4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgIDxQYXJhbGxlbC1Bd2FyZT5mYWxz ZTwvUGFyYWxsZWwtQXdhcmU+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAg ICAgICA8QXN5bmMtQ2FwYWJsZT5mYWxzZTwvQXN5bmMtQ2FwYWJsZT4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgPEFjdHVhbC1Sb3dzPjMwLjAwPC9BY3R1YWwt Um93cz4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgIDxB Y3R1YWwtTG9vcHM+MTwvQWN0dWFsLUxvb3BzPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICsKLSAgICAgICA8RGlzYWJsZWQ+ZmFsc2U8L0Rpc2FibGVkPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgPFdpbmRvdz53 IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpPC9X aW5kb3c+KwotICAgICAgIDxQYXR0ZXJuPmEgYjwvUGF0dGVybj4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICA8U3RvcmFnZT5NZW1vcnk8 L1N0b3JhZ2U+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAr Ci0gICAgICAgPE1heGltdW0tU3RvcmFnZT4xNzwvTWF4aW11bS1TdG9yYWdlPiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgIDxORkEtU3RhdGVzLVBlYWs+MjwvTkZB LVN0YXRlcy1QZWFrPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAg ICA8TkZBLVN0YXRlcy1Ub3RhbD4zMTwvTkZBLVN0YXRlcy1Ub3RhbD4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICArCi0gICAgICAgPE5GQS1TdGF0ZXMtTWVyZ2VkPjA8L05GQS1TdGF0 ZXMtTWVyZ2VkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgIDxORkEt Q29udGV4dHMtUGVhaz4zPC9ORkEtQ29udGV4dHMtUGVhaz4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICsKLSAgICAgICA8TkZBLUNvbnRleHRzLVRvdGFsPjMxPC9ORkEtQ29udGV4dHMt VG90YWw+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgPE5GQS1Db250ZXh0 cy1BYnNvcmJlZD4wPC9ORkEtQ29udGV4dHMtQWJzb3JiZWQ+ICAgICAgICAgICAgICAgICAgICAg ICAgKwotICAgICAgIDxORkEtQ29udGV4dHMtU2tpcHBlZD4wPC9ORkEtQ29udGV4dHMtU2tpcHBl ZD4gICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICA8TkZBLUNvbnRleHRzLVBydW5l ZD4xNTwvTkZBLUNvbnRleHRzLVBydW5lZD4gICAgICAgICAgICAgICAgICAgICAgICAgICArCi0g ICAgICAgPE5GQS1NYXRjaGVkPjE1PC9ORkEtTWF0Y2hlZD4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgIDxORkEtTWlzbWF0Y2hlZD4wPC9ORkEtTWlz bWF0Y2hlZD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICA8 TkZBLU1hdGNoLUxlbmd0aC1NaW4+MjwvTkZBLU1hdGNoLUxlbmd0aC1NaW4+ICAgICAgICAgICAg ICAgICAgICAgICAgICArCi0gICAgICAgPE5GQS1NYXRjaC1MZW5ndGgtTWF4PjI8L05GQS1NYXRj aC1MZW5ndGgtTWF4PiAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgIDxORkEtTWF0 Y2gtTGVuZ3RoLUF2Zz4yLjA8L05GQS1NYXRjaC1MZW5ndGgtQXZnPiAgICAgICAgICAgICAgICAg ICAgICAgICsKLSAgICAgICA8UGxhbnM+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICA8UGxhbj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KwotICAgICAgICAgICA8Tm9kZS1UeXBlPkZ1bmN0aW9uIFNjYW48L05vZGUtVHlwZT4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICAgICAgPFBhcmVudC1SZWxhdGlvbnNo aXA+T3V0ZXI8L1BhcmVudC1SZWxhdGlvbnNoaXA+ICAgICAgICAgICAgICAgICAgICArCi0gICAg ICAgICAgIDxQYXJhbGxlbC1Bd2FyZT5mYWxzZTwvUGFyYWxsZWwtQXdhcmU+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgICA8QXN5bmMtQ2FwYWJsZT5mYWxzZTwvQXN5 bmMtQ2FwYWJsZT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICAgICAg PEZ1bmN0aW9uLU5hbWU+Z2VuZXJhdGVfc2VyaWVzPC9GdW5jdGlvbi1OYW1lPiAgICAgICAgICAg ICAgICAgICAgICArCi0gICAgICAgICAgIDxBbGlhcz5zPC9BbGlhcz4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotICAgICAgICAgICA8QWN0dWFs LVJvd3M+MzAuMDA8L0FjdHVhbC1Sb3dzPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICsKLSAgICAgICAgICAgPEFjdHVhbC1Mb29wcz4xPC9BY3R1YWwtTG9vcHM+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgICAgICAgIDxEaXNhYmxlZD5mYWxz ZTwvRGlzYWJsZWQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwot ICAgICAgICAgPC9QbGFuPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgICA8L1BsYW5zPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArCi0gICAgIDwv UGxhbj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKwotICAgICA8VHJpZ2dlcnM+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsKLSAgICAgPC9UcmlnZ2Vy cz4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICArCi0gICA8L1F1ZXJ5PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKwotIDwvZXhwbGFpbj4KLSgxIHJvdykK LQotLS0KLS0tIFNlY3Rpb24gODogTXVsdGlwbGUgUGFydGl0aW9ucyBUZXN0cwotLS0KLS0tIFRl c3QgOC4xOiBTdGF0aXN0aWNzIGFjcm9zcyBtdWx0aXBsZSBwYXJ0aXRpb25zCi1FWFBMQUlOIChB TkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikK LVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gKAotICAgIFNFTEVDVCBwLCB2Ci0gICAgRlJP TSBnZW5lcmF0ZV9zZXJpZXMoMSwgMykgcCwKLSAgICAgICAgIGdlbmVyYXRlX3NlcmllcygxLCAz MCkgdgotKSB0Ci1XSU5ET1cgdyBBUyAoCi0gICAgUEFSVElUSU9OIEJZIHAKLSAgICBST1dTIEJF VFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRD SCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklORSBBIEFT IHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dz PTkwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFBBUlRJVElPTiBCWSBwLnAgUk9XUyBC RVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjog YSsiIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEg U3RhdGVzOiAzIHBlYWssIDE2NSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBw ZWFrLCA5MyB0b3RhbCwgMTggcHJ1bmVkCi0gICBORkE6IDE4IG1hdGNoZWQgKGxlbiA1LzUvNS4w KSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDU0IGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tp cHBlZAotICAgLT4gIFNvcnQgKGFjdHVhbCByb3dzPTkwLjAwIGxvb3BzPTEpCi0gICAgICAgICBT b3J0IEtleTogcC5wCi0gICAgICAgICBTb3J0IE1ldGhvZDogcXVpY2tzb3J0ICBNZW1vcnk6IDI3 a0IKLSAgICAgICAgIC0+ICBOZXN0ZWQgTG9vcCAoYWN0dWFsIHJvd3M9OTAuMDAgbG9vcHM9MSkK LSAgICAgICAgICAgICAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBwIChh Y3R1YWwgcm93cz0zLjAwIGxvb3BzPTEpCi0gICAgICAgICAgICAgICAtPiAgRnVuY3Rpb24gU2Nh biBvbiBnZW5lcmF0ZV9zZXJpZXMgdiAoYWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9MykKLSgxNCBy b3dzKQotCi0tLSBUZXN0IDguMjogRGlmZmVyZW50IHBhdHRlcm4gYmVoYXZpb3IgcGVyIHBhcnRp dGlvbgotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9G RiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NICgKLSAgICBTRUxF Q1QKLSAgICAgICAgQ0FTRSBXSEVOIHYgPD0gMjUgVEhFTiAxIEVMU0UgMiBFTkQgQVMgcCwKLSAg ICAgICAgdiAlIDEwIEFTIHZhbAotICAgIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwKSB2Ci0p IHQKLVdJTkRPVyB3IEFTICgKLSAgICBQQVJUSVRJT04gQlkgcAotICAgIFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAg UEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEErIEIpCi0gICAgREVGSU5FIEEgQVMgdmFsIDwg NSwgQiBBUyB2YWwgPj0gNQotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0 dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUEFSVElUSU9OIEJZIChD QVNFIFdIRU4gKHYudiA8PSAyNSkgVEhFTiAxIEVMU0UgMiBFTkQpIFJPV1MgQkVUV0VFTiBDVVJS RU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiCi0gICBT dG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMyBw ZWFrLCA3NyB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCA1MiB0b3Rh bCwgMjYgcHJ1bmVkCi0gICBORkE6IDUgbWF0Y2hlZCAobGVuIDUvNi81LjgpLCAwIG1pc21hdGNo ZWQKLSAgIE5GQTogMTkgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwgMCBza2lwcGVkCi0gICAtPiAg U29ydCAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKLSAgICAgICAgIFNvcnQgS2V5OiAoQ0FT RSBXSEVOICh2LnYgPD0gMjUpIFRIRU4gMSBFTFNFIDIgRU5EKQotICAgICAgICAgU29ydCBNZXRo b2Q6IHF1aWNrc29ydCAgTWVtb3J5OiAyNmtCCi0gICAgICAgICAtPiAgRnVuY3Rpb24gU2NhbiBv biBnZW5lcmF0ZV9zZXJpZXMgdiAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKLSgxMiByb3dz KQotCi0tLQotLS0gU2VjdGlvbiA5OiBFZGdlIENhc2VzCi0tLQotLS0gVGVzdCA5LjE6IEVtcHR5 IHJlc3VsdCBzZXQKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJ TUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5l cmF0ZV9zZXJpZXMoMSwgMCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VF TiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNL SVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEEgQikKLSAgICBERUZJTkUgQSBBUyB2ID0g MSwgQiBBUyB2ID0gMgotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExB TiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdn IChhY3R1YWwgcm93cz0wLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VF TiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGEgYgot ICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTAu MDAgbG9vcHM9MSkKLSg0IHJvd3MpCi0KLS0tIFRlc3QgOS4yOiBTaW5nbGUgcm93Ci1FWFBMQUlO IChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9G RikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEpIEFT IHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVO Qk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAg ICBQQVRURVJOIChBKQotICAgIERFRklORSBBIEFTIFRSVUUKLSk7Ci0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MS4wMCBsb29wcz0xKQotICAgV2lu ZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJ TkcpCi0gICBQYXR0ZXJuOiBhCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTog MTdrQgotICAgTkZBIFN0YXRlczogMiBwZWFrLCAyIHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENv bnRleHRzOiAyIHBlYWssIDIgdG90YWwsIDAgcHJ1bmVkCi0gICBORkE6IDEgbWF0Y2hlZCAobGVu IDEvMS8xLjApLCAwIG1pc21hdGNoZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRl X3NlcmllcyBzIChhY3R1YWwgcm93cz0xLjAwIGxvb3BzPTEpCi0oOCByb3dzKQotCi0tLSBUZXN0 IDkuMzogUGF0dGVybiBsb25nZXIgdGhhbiBkYXRhCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJT IE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgq KSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUpIEFTIHModikKLVdJTkRPVyB3IEFT ICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK LSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBIEIgQyBE IEUgRiBHIEggSSBKKQotICAgIERFRklORQotICAgICAgICBBIEFTIHYgPSAxLCBCIEFTIHYgPSAy LCBDIEFTIHYgPSAzLCBEIEFTIHYgPSA0LCBFIEFTIHYgPSA1LAotICAgICAgICBGIEFTIHYgPSA2 LCBHIEFTIHYgPSA3LCBIIEFTIHYgPSA4LCBJIEFTIHYgPSA5LCBKIEFTIHYgPSAxMAotKTsKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01LjAwIGxv b3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5C T1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGEgYiBjIGQgZSBmIGcgaCBpIGoKLSAgIFN0 b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiAyIHBl YWssIDYgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgNiB0b3RhbCwg NCBwcnVuZWQKLSAgIE5GQTogMCBtYXRjaGVkLCAxIG1pc21hdGNoZWQgKGxlbiA1LzUvNS4wKQot ICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTUu MDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgOS40OiBBbGwgcm93cyBtYXRjaCBhcyBz aW5nbGUgbWF0Y2gKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJ TUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5l cmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBT S0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKykKLSAgICBERUZJTkUgQSBBUyBUUlVF Ci0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJv d3M9NTAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQg Uk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogYSsiCi0gICBTdG9yYWdl OiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMThrQgotICAgTkZBIFN0YXRlczogMyBwZWFrLCAx MDEgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDIgcGVhaywgNTEgdG90YWwsIDAg cHJ1bmVkCi0gICBORkE6IDEgbWF0Y2hlZCAobGVuIDUwLzUwLzUwLjApLCAwIG1pc21hdGNoZWQK LSAgIE5GQTogNDkgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwgMCBza2lwcGVkCi0gICAtPiAgRnVu Y3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9 MSkKLSg5IHJvd3MpCi0KLS0tCi0tLSBTZWN0aW9uIDEwOiBDb21wbGV4IFBhdHRlcm4gVGVzdHMK LS0tCi0tLSBUZXN0IDEwLjE6IE5lc3RlZCBncm91cHMKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZF UlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50 KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNjApIEFTIHModikKLVdJTkRPVyB3 IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJ TkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOICgoKEEg QikgQykrKQotICAgIERFRklORSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIsIEMgQVMg diAlIDMgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAo YWN0dWFsIHJvd3M9NjAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVO IENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogKGEnIGIn IGMnKSsiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTlrQgotICAgTkZB IFN0YXRlczogMyBwZWFrLCA4MSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBw ZWFrLCA2MSB0b3RhbCwgNDAgcHJ1bmVkCi0gICBORkE6IDEgbWF0Y2hlZCAobGVuIDYwLzYwLzYw LjApLCAwIG1pc21hdGNoZWQKLSAgIE5GQTogMTkgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwgMCBz a2lwcGVkCi0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFs IHJvd3M9NjAuMDAgbG9vcHM9MSkKLSg5IHJvd3MpCi0KLS0tIFRlc3QgMTAuMjogTXVsdGlwbGUg YWx0ZXJuYXRpb25zCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBU SU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gbmZh X3Rlc3QKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVO Qk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAg ICBQQVRURVJOICgoQSB8IEIpIChDIHwgRCB8IEUpKQotICAgIERFRklORQotICAgICAgICBBIEFT IGNhdCA9ICdBJywgQiBBUyBjYXQgPSAnQicsIEMgQVMgY2F0ID0gJ0MnLAotICAgICAgICBEIEFT IGNhdCA9ICdEJywgRSBBUyBjYXQgPSAnRScKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0g V2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAo Uk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0 dGVybjogKGEgfCBiIGMgfCBkIHwgZSkKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9y YWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiA1IHBlYWssIDI4MiB0b3RhbCwgMCBtZXJnZWQKLSAg IE5GQSBDb250ZXh0czogMyBwZWFrLCAxMDEgdG90YWwsIDYwIHBydW5lZAotICAgTkZBOiAyMCBt YXRjaGVkIChsZW4gMi8yLzIuMCksIDIwIG1pc21hdGNoZWQgKGxlbiAyLzIvMi4wKQotICAgLT4g IFNlcSBTY2FuIG9uIG5mYV90ZXN0IChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSg4IHJv d3MpCi0KLS0tIFRlc3QgMTAuMzogT3B0aW9uYWwgZWxlbWVudHMKLUVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNU IGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKLVdJ TkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBG T0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJO IChBIEI/IEMpCi0gICAgREVGSU5FIEEgQVMgdiAlIDQgPSAxLCBCIEFTIHYgJSA0ID0gMiwgQyBB UyB2ICUgNCA9IDMKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFO ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdn IChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiBhIGI/ IGMKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3Rh dGVzOiAzIHBlYWssIDY0IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWss IDUxIHRvdGFsLCAzNyBwcnVuZWQKLSAgIE5GQTogMTIgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAx IG1pc21hdGNoZWQgKGxlbiAyLzIvMi4wKQotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJh dGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCi0oOCByb3dzKQotCi0tLSBU ZXN0IDEwLjQ6IEJvdW5kZWQgcXVhbnRpZmllcnMKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMg T0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCop IE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCi1XSU5ET1cgdyBB UyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5H Ci0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoQXsyLDV9 IEIpCi0gICAgREVGSU5FIEEgQVMgdiAlIDEwIDw+IDAsIEIgQVMgdiAlIDEwID0gMAotKTsKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MTAw LjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBB TkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGF7Miw1fSBiCi0gICBTdG9yYWdl OiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogOSBwZWFrLCAz MTEgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDcgcGVhaywgMTAxIHRvdGFsLCAx MCBwcnVuZWQKLSAgIE5GQTogMTAgbWF0Y2hlZCAobGVuIDYvNi82LjApLCA1MCBtaXNtYXRjaGVk IChsZW4gMi82LzUuMikKLSAgIE5GQTogMCBhYnNvcmJlZCwgMzAgc2tpcHBlZCAobGVuIDMvNS80 LjApCi0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJv d3M9MTAwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0IDEwLjU6IFN0YXIgcXVhbnRp ZmllcgotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9G RiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3Nl cmllcygxLCA1MCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJS RU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFT VCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEEgQiogQykKLSAgICBERUZJTkUgQSBBUyB2ICUgMTAg PSAxLCBCIEFTIHYgJSAxMCBJTiAoMiwzLDQsNSw2LDcsOCksIEMgQVMgdiAlIDEwID0gOQotKTsK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTUw LjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBB TkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGEgYiogYwotICAgU3RvcmFnZTog TWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgOTEg dG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgNTEgdG90YWwsIDQ1IHBy dW5lZAotICAgTkZBOiA1IG1hdGNoZWQgKGxlbiA5LzkvOS4wKSwgMCBtaXNtYXRjaGVkCi0gICAt PiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9NTAuMDAg bG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tCi0tLSBTZWN0aW9uIDExOiBSZWFsLXdvcmxkIFBhdHRl cm4gRXhhbXBsZXMKLS0tCi0tLSBUZXN0IDExLjE6IFN0b2NrIHByaWNlIHBhdHRlcm4gLSBWLXNo YXBlIChkb3duIHRoZW4gdXApCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMg T0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZS T00gbmZhX2NvbXBsZXgKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBS T1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFT VCBST1cKLSAgICBQQVRURVJOIChEKyBVKykKLSAgICBERUZJTkUgRCBBUyB0cmVuZCA9ICdEJywg VSBBUyB0cmVuZCA9ICdVJwotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQ TEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cg KGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VF TiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGQrIiB1 KwotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6IDE3a0IKLSAgIE5GQSBTdGF0 ZXM6IDQgcGVhaywgNTggdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywg MzEgdG90YWwsIDE3IHBydW5lZAotICAgTkZBOiAzIG1hdGNoZWQgKGxlbiAzLzE0LzguMCksIDEg bWlzbWF0Y2hlZCAobGVuIDMvMy8zLjApCi0gICBORkE6IDkgYWJzb3JiZWQgKGxlbiAxLzEvMS4w KSwgMCBza2lwcGVkCi0gICAtPiAgU2VxIFNjYW4gb24gbmZhX2NvbXBsZXggKGFjdHVhbCByb3dz PTMwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0IDExLjI6IFN0b2NrIHByaWNlIHBh dHRlcm4gLSBwZWFrICh1cCwgc3RhYmxlLCBkb3duKQotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVS UyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQo KikgT1ZFUiB3Ci1GUk9NIG5mYV9jb21wbGV4Ci1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRX RUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0gg U0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoVSsgUyogRCspCi0gICAgREVGSU5FIFUg QVMgdHJlbmQgPSAnVScsIFMgQVMgdHJlbmQgPSAnUycsIEQgQVMgdHJlbmQgPSAnRCcKLSk7Ci0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0zMC4wMCBsb29w cz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9V TkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiB1KyIgcyogZCsKLSAgIFN0b3JhZ2U6IE1lbW9y eSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiA1IHBlYWssIDc2IHRvdGFs LCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDMxIHRvdGFsLCAxNCBwcnVuZWQK LSAgIE5GQTogNCBtYXRjaGVkIChsZW4gMy8xMS83LjIpLCAwIG1pc21hdGNoZWQKLSAgIE5GQTog MTIgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwgMCBza2lwcGVkCi0gICAtPiAgU2VxIFNjYW4gb24g bmZhX2NvbXBsZXggKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBU ZXN0IDExLjM6IENvbnNlY3V0aXZlIGluY3JlYXNpbmcgdmFsdWVzICh1c2luZyBQUkVWKQotLS0g RklYTUU6IFRoZSBvcmlnaW5hbCBwYXR0ZXJuIHdhczoKLS0tICAgREVGSU5FIEEgQVMgdiA+IFBS RVYodikgT1IgUFJFVih2KSBJUyBOVUxMCi0tLSBUaGlzIGNhdXNlcyAiRVJST1I6IHVucmVjb2du aXplZCBub2RlIHR5cGU6IDE1IiAoVF9GdW5jRXhwcikgYmVjYXVzZQotLS0gTnVsbFRlc3QoRnVu Y0V4cHIoUFJFVikpIGlzIG5vdCBwcm9wZXJseSBoYW5kbGVkIHNvbWV3aGVyZSBpbiB0aGUgcGxh bm5lci4KLS0tIFRoZSBleHByZXNzaW9uIHYgPiBQUkVWKHYpIHdvcmtzIGZpbmUsIGJ1dCBQUkVW KHYpIElTIE5VTEwgZmFpbHMuCi0tLSBVc2luZyBDT0FMRVNDRShQUkVWKHYpLCAwKSBhcyBhIHdv cmthcm91bmQgdW50aWwgdGhlIGJ1ZyBpcyBmaXhlZC4KLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZF UlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50 KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKLVdJTkRPVyB3 IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJ TkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBezMs fSkKLSAgICBERUZJTkUgQSBBUyB2ID4gQ09BTEVTQ0UoUFJFVih2KSwgMCkKLSk7Ci0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBsb29w cz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9V TkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiBhezMsfSIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAg TWF4aW11bSBTdG9yYWdlOiAxOGtCCi0gICBORkEgU3RhdGVzOiAzIHBlYWssIDk5IHRvdGFsLCAw IG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAyIHBlYWssIDUxIHRvdGFsLCAwIHBydW5lZAotICAg TkZBOiAxIG1hdGNoZWQgKGxlbiA1MC81MC81MC4wKSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDQ5 IGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4g b24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCi0oOSByb3dz KQotCi0tLQotLS0gU2VjdGlvbiAxMjogUGVyZm9ybWFuY2Utb3JpZW50ZWQgVGVzdHMKLS0tCi0t LSBUZXN0IDEyLjE6IExhcmdlIGRhdGFzZXQgd2l0aCBzaW1wbGUgcGF0dGVybgotRVhQTEFJTiAo QU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYp Ci1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDAwKSBB UyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBV TkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0g ICAgUEFUVEVSTiAoQSBCKQotICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2ICUgMiA9 IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0 dWFsIHJvd3M9MTAwMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4g Q1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiBhIGIKLSAg IFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiAy IHBlYWssIDEwMDEgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgMTAw MSB0b3RhbCwgNTAwIHBydW5lZAotICAgTkZBOiA1MDAgbWF0Y2hlZCAobGVuIDIvMi8yLjApLCAw IG1pc21hdGNoZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChh Y3R1YWwgcm93cz0xMDAwLjAwIGxvb3BzPTEpCi0oOCByb3dzKQotCi0tLSBUZXN0IDEyLjI6IExh cmdlIGRhdGFzZXQgd2l0aCBhYnNvcnB0aW9uCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBP VkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMDApIEFTIHModikKLVdJTkRPVyB3IEFT ICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK LSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKQot ICAgIERFRklORSBBIEFTIHYgJSAxMDAgPD4gMCwgQiBBUyB2ICUgMTAwID0gMAotKTsKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAw LjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBB TkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBN ZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMjFrQgotICAgTkZBIFN0YXRlczogMyBwZWFrLCAxOTkx IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDEwMDEgdG90YWwsIDEw IHBydW5lZAotICAgTkZBOiAxMCBtYXRjaGVkIChsZW4gMTAwLzEwMC8xMDAuMCksIDAgbWlzbWF0 Y2hlZAotICAgTkZBOiA5ODAgYWJzb3JiZWQgKGxlbiAxLzEvMS4wKSwgMCBza2lwcGVkCi0gICAt PiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9MTAwMC4w MCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAxMi4zOiBIaWdoIHN0YXRlIG1lcmdlIHJh dGlvCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZG LCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2Vy aWVzKDEsIDUwMCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJS RU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFT VCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKChBIHwgQikrIEMpCi0gICAgREVGSU5FIEEgQVMgdiAl IDMgPSAxLCBCIEFTIHYgJSAzID0gMiwgQyBBUyB2ICUgMyA9IDAKLSk7Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTUwMC4wMCBsb29wcz0x KQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRF RCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiAoYSB8IGIpKyBjCi0gICBTdG9yYWdlOiBNZW1vcnkg IE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogOCBwZWFrLCAyMDA0IHRvdGFs LCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiA0IHBlYWssIDUwMSB0b3RhbCwgMTY3IHBydW5l ZAotICAgTkZBOiAxNjYgbWF0Y2hlZCAobGVuIDMvMy8zLjApLCAxIG1pc21hdGNoZWQgKGxlbiAy LzIvMi4wKQotICAgTkZBOiAwIGFic29yYmVkLCAxNjYgc2tpcHBlZCAobGVuIDIvMi8yLjApCi0g ICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9NTAw LjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLQotLS0gU2VjdGlvbiAxMzogSU5JVElBTCB2cyBu byBJTklUSUFMIGNvbXBhcmlzb24KLS0tCi0tLSBUZXN0IDEzLjE6IFdpdGggSU5JVElBTCBrZXl3 b3JkCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZG LCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2Vy aWVzKDEsIDUwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJF TlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNU IExBU1QgUk9XCi0gICAgSU5JVElBTAotICAgIFBBVFRFUk4gKEErIEIpCi0gICAgREVGSU5FIEEg QVMgdiAlIDUgPD4gMCwgQiBBUyB2ICUgNSA9IDAKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotICAgV2luZG93 OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcp Ci0gICBQYXR0ZXJuOiBhKyIgYgotICAgU3RvcmFnZTogTWVtb3J5ICBNYXhpbXVtIFN0b3JhZ2U6 IDE3a0IKLSAgIE5GQSBTdGF0ZXM6IDMgcGVhaywgOTEgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEg Q29udGV4dHM6IDMgcGVhaywgNTEgdG90YWwsIDEwIHBydW5lZAotICAgTkZBOiAxMCBtYXRjaGVk IChsZW4gNS81LzUuMCksIDAgbWlzbWF0Y2hlZAotICAgTkZBOiAzMCBhYnNvcmJlZCAobGVuIDEv MS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3Nlcmll cyBzIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAxMy4y OiBXaXRob3V0IElOSVRJQUwga2V5d29yZCAoc2FtZSBiZWhhdmlvciBjdXJyZW50bHkpCi1FWFBM QUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZ IE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUw KSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFO RCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9X Ci0gICAgUEFUVEVSTiAoQSsgQikKLSAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYg JSA1ID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFj dHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiCi0g ICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczog MyBwZWFrLCA5MSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCA1MSB0 b3RhbCwgMTAgcHJ1bmVkCi0gICBORkE6IDEwIG1hdGNoZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNt YXRjaGVkCi0gICBORkE6IDMwIGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAg LT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTUwLjAw IGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLQotLS0gU2VjdGlvbiAxNDogUXVhbnRpZmllciBWYXJp YXRpb25zCi0tLQotLS0gVGVzdCAxNC4xOiBQbHVzIHF1YW50aWZpZXIKLUVYUExBSU4gKEFOQUxZ WkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VM RUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNDApIEFTIHModikK LVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRF RCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRU RVJOIChBKykKLSAgICBERUZJTkUgQSBBUyB2ICUgNCA8PiAwCi0pOwotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAot LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NDAuMDAgbG9vcHM9MSkKLSAg IFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9M TE9XSU5HKQotICAgUGF0dGVybjogYSsiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMyBwZWFrLCA3MSB0b3RhbCwgMCBtZXJnZWQKLSAg IE5GQSBDb250ZXh0czogMyBwZWFrLCA0MSB0b3RhbCwgMTAgcHJ1bmVkCi0gICBORkE6IDEwIG1h dGNoZWQgKGxlbiAzLzMvMy4wKSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDIwIGFic29yYmVkIChs ZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVf c2VyaWVzIHMgKGFjdHVhbCByb3dzPTQwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0 IDE0LjI6IFN0YXIgcXVhbnRpZmllciAoemVybyBvciBtb3JlKQotRVhQTEFJTiAoQU5BTFlaRSwg QlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCi1TRUxFQ1Qg Y291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCA0MCkgQVMgcyh2KQotV0lO RE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZP TExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4g KEEqIEIpCi0gICAgREVGSU5FIEEgQVMgdiAlIDQgSU4gKDEsIDIpLCBCIEFTIHYgJSA0ID0gMwot KTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dz PTQwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJP VyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGEqIiBiCi0gICBTdG9yYWdl OiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogNCBwZWFrLCAx MDIgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDIgcGVhaywgNDEgdG90YWwsIDEw IHBydW5lZAotICAgTkZBOiAxMCBtYXRjaGVkIChsZW4gMy8zLzMuMCksIDAgbWlzbWF0Y2hlZAot ICAgTkZBOiAyMCBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ICBGdW5j dGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz00MC4wMCBsb29wcz0x KQotKDkgcm93cykKLQotLS0gVGVzdCAxNC4zOiBRdWVzdGlvbiBtYXJrICh6ZXJvIG9yIG9uZSkK LUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNV TU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMo MSwgNDApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBS T1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFT VCBST1cKLSAgICBQQVRURVJOIChBPyBCIEMpCi0gICAgREVGSU5FIEEgQVMgdiAlIDQgPSAxLCBC IEFTIHYgJSA0ID0gMiwgQyBBUyB2ICUgNCA9IDMKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz00MC4wMCBsb29wcz0xKQotICAgV2luZG93 OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcp Ci0gICBQYXR0ZXJuOiBhPyBiIGMKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdl OiAxN2tCCi0gICBORkEgU3RhdGVzOiA0IHBlYWssIDgyIHRvdGFsLCAwIG1lcmdlZAotICAgTkZB IENvbnRleHRzOiA0IHBlYWssIDQxIHRvdGFsLCAyMCBwcnVuZWQKLSAgIE5GQTogMTAgbWF0Y2hl ZCAobGVuIDMvMy8zLjApLCAwIG1pc21hdGNoZWQKLSAgIE5GQTogMCBhYnNvcmJlZCwgMTAgc2tp cHBlZCAobGVuIDIvMi8yLjApCi0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJp ZXMgcyAoYWN0dWFsIHJvd3M9NDAuMDAgbG9vcHM9MSkKLSg5IHJvd3MpCi0KLS0tIFRlc3QgMTQu NDogRXhhY3QgY291bnQge259Ci1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMg T0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZS T00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9X UyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIg TUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoQXszfSBCKQotICAgIERFRklO RSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKLSAgIFdp bmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9X SU5HKQotICAgUGF0dGVybjogYXszfSBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogNCBwZWFrLCA1MSB0b3RhbCwgMCBtZXJnZWQKLSAg IE5GQSBDb250ZXh0czogNSBwZWFrLCA1MSB0b3RhbCwgMTAgcHJ1bmVkCi0gICBORkE6IDEwIG1h dGNoZWQgKGxlbiA0LzQvNC4wKSwgMzAgbWlzbWF0Y2hlZCAobGVuIDIvNC8zLjApCi0gICAtPiAg RnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9v cHM9MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgMTQuNTogUmFuZ2Uge24sbX0KLUVYUExBSU4gKEFO QUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQot U0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHMo dikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9V TkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQ QVRURVJOIChBezIsNH0gQikKLSAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1 ID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVh bCByb3dzPTUwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJS RU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGF7Miw0fSBiCi0g ICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczog NyBwZWFrLCAxMDEgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDYgcGVhaywgNTEg dG90YWwsIDEwIHBydW5lZAotICAgTkZBOiAxMCBtYXRjaGVkIChsZW4gNS81LzUuMCksIDEwIG1p c21hdGNoZWQgKGxlbiAyLzIvMi4wKQotICAgTkZBOiAwIGFic29yYmVkLCAyMCBza2lwcGVkIChs ZW4gMy80LzMuNSkKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChh Y3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAxNC42OiBBdCBs ZWFzdCB7bix9Ci1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1J TkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJh dGVfc2VyaWVzKDEsIDUwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVO IENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJ UCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoQXszLH0gQikKLSAgICBERUZJTkUgQSBBUyB2 ICUgMTAgPD4gMCwgQiBBUyB2ICUgMTAgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9NTAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzog dyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQot ICAgUGF0dGVybjogYXszLH0iIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdl OiAxN2tCCi0gICBORkEgU3RhdGVzOiAzIHBlYWssIDg2IHRvdGFsLCAwIG1lcmdlZAotICAgTkZB IENvbnRleHRzOiAzIHBlYWssIDUxIHRvdGFsLCA1IHBydW5lZAotICAgTkZBOiA1IG1hdGNoZWQg KGxlbiAxMC8xMC8xMC4wKSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDQwIGFic29yYmVkIChsZW4g MS8xLzEuMCksIDAgc2tpcHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2Vy aWVzIHMgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLQotLS0gU2Vj dGlvbiAxNTogUmVncmVzc2lvbiBUZXN0cyBmb3IgU3RhdGlzdGljcyBBY2N1cmFjeQotLS0KLS0t IFRlc3QgMTUuMTogVmVyaWZ5IHN0YXRlIGNvdW50IGFjY3VyYWN5Ci0tLSBQYXR0ZXJuIEErIEIg d2l0aCAyMCByb3dzIHNob3VsZCBzaG93IHByZWRpY3RhYmxlIHN0YXRlIGJlaGF2aW9yCi1FWFBM QUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZ IE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDIw KSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFO RCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9X Ci0gICAgUEFUVEVSTiAoQSsgQikKLSAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYg JSA1ID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFj dHVhbCByb3dzPTIwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiCi0g ICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczog MyBwZWFrLCAzNyB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAyMSB0 b3RhbCwgNCBwcnVuZWQKLSAgIE5GQTogNCBtYXRjaGVkIChsZW4gNS81LzUuMCksIDAgbWlzbWF0 Y2hlZAotICAgTkZBOiAxMiBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0yMC4wMCBs b29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAxNS4yOiBWZXJpZnkgY29udGV4dCBjb3VudCB3 aXRoIGtub3duIGFic29ycHRpb24KLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NU UyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwot RlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBS T1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRF UiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCIEMpCi0gICAgREVG SU5FIEEgQVMgdiAlIDEwIElOICgxLDIsMyw0LDUsNiw3KSwgQiBBUyB2ICUgMTAgPSA4LCBDIEFT IHYgJSAxMCA9IDkKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFO ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdn IChhY3R1YWwgcm93cz0zMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdF RU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiBhKyIg YiBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0 YXRlczogMyBwZWFrLCA1MiB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFr LCAzMSB0b3RhbCwgOSBwcnVuZWQKLSAgIE5GQTogMyBtYXRjaGVkIChsZW4gOS85LzkuMCksIDAg bWlzbWF0Y2hlZAotICAgTkZBOiAxOCBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQK LSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0z MC4wMCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAxNS4zOiBWZXJpZnkgbWF0Y2ggbGVu Z3RoIHdpdGggZml4ZWQtbGVuZ3RoIHBhdHRlcm4KLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMg T0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCop IE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKLVdJTkRPVyB3IEFT ICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK LSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBIEIgQykK LSAgICBERUZJTkUgQSBBUyB2ICUgMyA9IDEsIEIgQVMgdiAlIDMgPSAyLCBDIEFTIHYgJSAzID0g MAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCBy b3dzPTMwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5U IFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGEgYiBjCi0gICBTdG9y YWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMiBwZWFr LCAzMSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAzMSB0b3RhbCwg MjAgcHJ1bmVkCi0gICBORkE6IDEwIG1hdGNoZWQgKGxlbiAzLzMvMy4wKSwgMCBtaXNtYXRjaGVk Ci0gICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMgcyAoYWN0dWFsIHJvd3M9 MzAuMDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tCi0tLSBTZWN0aW9uIDE2OiBBbHRlcm5hdGlv biBQYXR0ZXJuIFRlc3RzCi0tLQotLS0gVGVzdCAxNi4xOiBTaW1wbGUgYWx0ZXJuYXRpb24KLUVY UExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1B UlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIgdwotRlJPTSBuZmFfdGVzdAotV0lORE9XIHcg QVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lO RwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKChBIHwg QikgQykKLSAgICBERUZJTkUgQSBBUyBjYXQgPSAnQScsIEIgQVMgY2F0ID0gJ0InLCBDIEFTIGNh dCA9ICdDJwotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCBy b3dzPTEwMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVO VCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiAoYSB8IGIpIGMKLSAg IFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiAz IHBlYWssIDIwMiB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAxMDEg dG90YWwsIDYwIHBydW5lZAotICAgTkZBOiAyMCBtYXRjaGVkIChsZW4gMi8yLzIuMCksIDIwIG1p c21hdGNoZWQgKGxlbiAyLzIvMi4wKQotICAgLT4gIFNlcSBTY2FuIG9uIG5mYV90ZXN0IChhY3R1 YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgMTYuMjogTXVsdGlw bGUgaXRlbXMgaW4gYWx0ZXJuYXRpb24KLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBD T1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9WRVIg dwotRlJPTSBuZmFfdGVzdAotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5U IFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBM QVNUIFJPVwotICAgIFBBVFRFUk4gKChBIHwgQiB8IEMgfCBEKSBFKQotICAgIERFRklORQotICAg ICAgICBBIEFTIGNhdCA9ICdBJywgQiBBUyBjYXQgPSAnQicsIEMgQVMgY2F0ID0gJ0MnLAotICAg ICAgICBEIEFTIGNhdCA9ICdEJywgRSBBUyBjYXQgPSAnRScKLSk7Ci0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9MSkKLSAgIFdpbmRv dzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5H KQotICAgUGF0dGVybjogKGEgfCBiIHwgYyB8IGQpIGUKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4 aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiA1IHBlYWssIDQwNCB0b3RhbCwgMCBt ZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAxMDEgdG90YWwsIDIwIHBydW5lZAotICAg TkZBOiAyMCBtYXRjaGVkIChsZW4gMi8yLzIuMCksIDYwIG1pc21hdGNoZWQgKGxlbiAyLzIvMi4w KQotICAgLT4gIFNlcSBTY2FuIG9uIG5mYV90ZXN0IChhY3R1YWwgcm93cz0xMDAuMDAgbG9vcHM9 MSkKLSg4IHJvd3MpCi0KLS0tIFRlc3QgMTYuMzogQWx0ZXJuYXRpb24gd2l0aCBxdWFudGlmaWVy cwotRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwg U1VNTUFSWSBPRkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3Nlcmll cygxLCA1MCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5U IFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBM QVNUIFJPVwotICAgIFBBVFRFUk4gKChBIHwgQikrIEMpCi0gICAgREVGSU5FIEEgQVMgdiAlIDMg PSAxLCBCIEFTIHYgJSAzID0gMiwgQyBBUyB2ICUgMyA9IDAKLSk7Ci0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MC4wMCBsb29wcz0xKQotICAg V2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xM T1dJTkcpCi0gICBQYXR0ZXJuOiAoYSB8IGIpKyBjCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGlt dW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogOCBwZWFrLCAyMDQgdG90YWwsIDAgbWVy Z2VkCi0gICBORkEgQ29udGV4dHM6IDQgcGVhaywgNTEgdG90YWwsIDE3IHBydW5lZAotICAgTkZB OiAxNiBtYXRjaGVkIChsZW4gMy8zLzMuMCksIDEgbWlzbWF0Y2hlZCAobGVuIDIvMi8yLjApCi0g ICBORkE6IDAgYWJzb3JiZWQsIDE2IHNraXBwZWQgKGxlbiAyLzIvMi4wKQotICAgLT4gIEZ1bmN0 aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEp Ci0oOSByb3dzKQotCi0tLQotLS0gU2VjdGlvbiAxNzogR3JvdXAgUGF0dGVybiBUZXN0cwotLS0K LS0tIFRlc3QgMTcuMTogU2ltcGxlIGdyb3VwCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBP VkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDQwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAo Ci0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0g ICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoKEEgQikrKQot ICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2ICUgMiA9IDAKLSk7Ci0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz00MC4wMCBsb29wcz0x KQotICAgV2luZG93OiB3IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRF RCBGT0xMT1dJTkcpCi0gICBQYXR0ZXJuOiAoYScgYicpKyIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAg TWF4aW11bSBTdG9yYWdlOiAxOGtCCi0gICBORkEgU3RhdGVzOiAzIHBlYWssIDYxIHRvdGFsLCAw IG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDQxIHRvdGFsLCAyMCBwcnVuZWQKLSAg IE5GQTogMSBtYXRjaGVkIChsZW4gNDAvNDAvNDAuMCksIDAgbWlzbWF0Y2hlZAotICAgTkZBOiAx OSBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2Fu IG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz00MC4wMCBsb29wcz0xKQotKDkgcm93 cykKLQotLS0gVGVzdCAxNy4yOiBHcm91cCB3aXRoIGJvdW5kZWQgcXVhbnRpZmllcgotRVhQTEFJ TiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBP RkYpCi1TRUxFQ1QgY291bnQoKikgT1ZFUiB3Ci1GUk9NIGdlbmVyYXRlX3NlcmllcygxLCA0MCkg QVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQg VU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwot ICAgIFBBVFRFUk4gKChBIEIpezIsNH0pCi0gICAgREVGSU5FIEEgQVMgdiAlIDIgPSAxLCBCIEFT IHYgJSAyID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cg KGFjdHVhbCByb3dzPTQwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VF TiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IChhIGIp ezIsNH0KLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEg U3RhdGVzOiA3IHBlYWssIDY2IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiA2IHBl YWssIDQxIHRvdGFsLCAyMCBwcnVuZWQKLSAgIE5GQTogNSBtYXRjaGVkIChsZW4gOC84LzguMCks IDAgbWlzbWF0Y2hlZAotICAgTkZBOiAwIGFic29yYmVkLCAxNSBza2lwcGVkIChsZW4gMi82LzQu MCkKLSAgIC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93 cz00MC4wMCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAxNy4zOiBOZXN0ZWQgZ3JvdXBz Ci1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBT VU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVz KDEsIDYwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQg Uk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExB U1QgUk9XCi0gICAgUEFUVEVSTiAoKChBIEIpezJ9KSspCi0gICAgREVGSU5FIEEgQVMgdiAlIDIg PSAxLCBCIEFTIHYgJSAyID0gMAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFV RVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBX aW5kb3dBZ2cgKGFjdHVhbCByb3dzPTYwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJP V1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRl cm46ICgoYSBiKXsyfSkrCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTlr QgotICAgTkZBIFN0YXRlczogNjAgcGVhaywgMjg2IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENv bnRleHRzOiAzMiBwZWFrLCA2MSB0b3RhbCwgMzAgcHJ1bmVkCi0gICBORkE6IDEgbWF0Y2hlZCAo bGVuIDYwLzYwLzYwLjApLCAxIG1pc21hdGNoZWQgKGxlbiAyLzIvMi4wKQotICAgTkZBOiAwIGFi c29yYmVkLCAyOCBza2lwcGVkIChsZW4gNC81OC8zMS4wKQotICAgLT4gIEZ1bmN0aW9uIFNjYW4g b24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTYwLjAwIGxvb3BzPTEpCi0oOSByb3dz KQotCi0tLQotLS0gU2VjdGlvbiAxODogV2luZG93IEZ1bmN0aW9uIENvbWJpbmF0aW9ucwotLS0K LS0tIFRlc3QgMTguMTogY291bnQoKikgd2l0aCBwYXR0ZXJuCi1FWFBMQUlOIChBTkFMWVpFLCBC VUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBj b3VudCgqKSBPVkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDMwKSBBUyBzKHYpCi1XSU5E T1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9M TE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAo QSsgQikKLSAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTMwLjAw IGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQg VU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1v cnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMyBwZWFrLCA1NSB0b3Rh bCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCAzMSB0b3RhbCwgNiBwcnVuZWQK LSAgIE5GQTogNiBtYXRjaGVkIChsZW4gNS81LzUuMCksIDAgbWlzbWF0Y2hlZAotICAgTkZBOiAx OCBhYnNvcmJlZCAobGVuIDEvMS8xLjApLCAwIHNraXBwZWQKLSAgIC0+ICBGdW5jdGlvbiBTY2Fu IG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz0zMC4wMCBsb29wcz0xKQotKDkgcm93 cykKLQotLS0gVGVzdCAxOC4yOiBmaXJzdF92YWx1ZSB3aXRoIHBhdHRlcm4KLUVYUExBSU4gKEFO QUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQot U0VMRUNUIGZpcnN0X3ZhbHVlKHYpIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzAp IEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5E IFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cK LSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklORSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAl IDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0 dWFsIHJvd3M9MzAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENV UlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogYSsiIGIKLSAg IFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVzOiAz IHBlYWssIDU1IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDMxIHRv dGFsLCA2IHBydW5lZAotICAgTkZBOiA2IG1hdGNoZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNtYXRj aGVkCi0gICBORkE6IDE4IGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAgLT4g IEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTMwLjAwIGxv b3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0IDE4LjM6IGxhc3RfdmFsdWUgd2l0aCBwYXR0ZXJu Ci1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBT VU1NQVJZIE9GRikKLVNFTEVDVCBsYXN0X3ZhbHVlKHYpIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9z ZXJpZXMoMSwgMzApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VS UkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBB U1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklORSBBIEFTIHYgJSA1IDw+ IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVF UlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdp bmRvd0FnZyAoYWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9X UyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVy bjogYSsiIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxOGtCCi0gICBO RkEgU3RhdGVzOiAzIHBlYWssIDU1IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAz IHBlYWssIDMxIHRvdGFsLCA2IHBydW5lZAotICAgTkZBOiA2IG1hdGNoZWQgKGxlbiA1LzUvNS4w KSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDE4IGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tp cHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCBy b3dzPTMwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0IDE4LjQ6IE11bHRpcGxlIHdp bmRvdyBmdW5jdGlvbnMKLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYs IFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUCi0gICAgY291bnQoKikgT1ZFUiB3LAot ICAgIGZpcnN0X3ZhbHVlKHYpIE9WRVIgdywKLSAgICBsYXN0X3ZhbHVlKHYpIE9WRVIgdwotRlJP TSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKLVdJTkRPVyB3IEFTICgKLSAgICBST1dT IEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBN QVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklORSBB IEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9MSkKLSAgIFdpbmRv dzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5H KQotICAgUGF0dGVybjogYSsiIGIKLSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdl OiAxOGtCCi0gICBORkEgU3RhdGVzOiAzIHBlYWssIDU1IHRvdGFsLCAwIG1lcmdlZAotICAgTkZB IENvbnRleHRzOiAzIHBlYWssIDMxIHRvdGFsLCA2IHBydW5lZAotICAgTkZBOiA2IG1hdGNoZWQg KGxlbiA1LzUvNS4wKSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDE4IGFic29yYmVkIChsZW4gMS8x LzEuMCksIDAgc2tpcHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVz IHMgKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLQotLS0gU2VjdGlv biAxOTogREVGSU5FIEV4cHJlc3Npb24gVmFyaWF0aW9ucwotLS0KLS0tIFRlc3QgMTkuMTogQ29t cGxleCBib29sZWFuIGV4cHJlc3Npb25zCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwg Q09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVS IHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwKSBBUyBzKHYpCi1XSU5ET1cgdyBBUyAoCi0g ICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCi0gICAg QUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVSTiAoQSsgQikKLSAgICBE RUZJTkUKLSAgICAgICAgQSBBUyAodiAlIDUgPD4gMCkgQU5EICh2ICUgMyA8PiAwKSwKLSAgICAg ICAgQiBBUyAodiAlIDUgPSAwKSBPUiAodiAlIDMgPSAwKQotKTsKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KLSBXaW5kb3dBZ2cgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCi0gICBX aW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExP V0lORykKLSAgIFBhdHRlcm46IGErIiBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3Rv cmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMyBwZWFrLCA3OCB0b3RhbCwgMCBtZXJnZWQKLSAg IE5GQSBDb250ZXh0czogMyBwZWFrLCA1MSB0b3RhbCwgMjMgcHJ1bmVkCi0gICBORkE6IDE3IG1h dGNoZWQgKGxlbiAyLzMvMi42KSwgMCBtaXNtYXRjaGVkCi0gICBORkE6IDEwIGFic29yYmVkIChs ZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVf c2VyaWVzIHMgKGFjdHVhbCByb3dzPTUwLjAwIGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLSBUZXN0 IDE5LjI6IFVzaW5nIFBSRVYgZnVuY3Rpb24KLUVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZG LCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNUIGNvdW50KCopIE9W RVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKLVdJTkRPVyB3IEFTICgK LSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAg ICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKLSAgICBQQVRURVJOIChTIFUrIEQrKQot ICAgIERFRklORQotICAgICAgICBTIEFTIFRSVUUsCi0gICAgICAgIFUgQVMgdiA+IFBSRVYodiks Ci0gICAgICAgIEQgQVMgdiA8IFBSRVYodikKLSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz0zMC4wMCBsb29wcz0xKQotICAgV2luZG93OiB3 IEFTIChST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcpCi0g ICBQYXR0ZXJuOiBzIHUrIGQrCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTog MThrQgotICAgTkZBIFN0YXRlczogNjAgcGVhaywgNDY2IHRvdGFsLCAwIG1lcmdlZAotICAgTkZB IENvbnRleHRzOiAzMSBwZWFrLCAzMSB0b3RhbCwgMSBwcnVuZWQKLSAgIE5GQTogMCBtYXRjaGVk LCAyOSBtaXNtYXRjaGVkIChsZW4gMi8zMC8xNi4wKQotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24g Z2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTMwLjAwIGxvb3BzPTEpCi0oOCByb3dzKQot Ci0tLSBUZXN0IDE5LjM6IFVzaW5nIE5VTEwgY29tcGFyaXNvbnMKLUVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNU IGNvdW50KCopIE9WRVIgdwotRlJPTSAoCi0gICAgU0VMRUNUIENBU0UgV0hFTiB2ICUgNSA9IDAg VEhFTiBOVUxMIEVMU0UgdiBFTkQgQVMgdgotICAgIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDMw KSB2Ci0pIHQKLVdJTkRPVyB3IEFTICgKLSAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5E IFVOQk9VTkRFRCBGT0xMT1dJTkcKLSAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cK LSAgICBQQVRURVJOIChBKyBCKQotICAgIERFRklORSBBIEFTIHYgSVMgTk9UIE5VTEwsIEIgQVMg diBJUyBOVUxMCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAo YWN0dWFsIHJvd3M9MzAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVO IENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogYSsiIGIK LSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVz OiAzIHBlYWssIDU1IHRvdGFsLCAwIG1lcmdlZAotICAgTkZBIENvbnRleHRzOiAzIHBlYWssIDMx IHRvdGFsLCA2IHBydW5lZAotICAgTkZBOiA2IG1hdGNoZWQgKGxlbiA1LzUvNS4wKSwgMCBtaXNt YXRjaGVkCi0gICBORkE6IDE4IGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBlZAotICAg LT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHYgKGFjdHVhbCByb3dzPTMwLjAw IGxvb3BzPTEpCi0oOSByb3dzKQotCi0tLQotLS0gU2VjdGlvbiAyMDogTGFyZ2UgU2NhbGUgU3Rh dGlzdGljcyBWZXJpZmljYXRpb24KLS0tCi0tLSBUZXN0IDIwLjE6IDUwMCByb3dzIC0gdmVyaWZ5 IHN0YXRpc3RpY3Mgc2NhbGUgY29ycmVjdGx5Ci1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBP VkVSIHcKLUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDUwMCkgQVMgcyh2KQotV0lORE9XIHcgQVMg KAotICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwot ICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEErIEIgQykK LSAgICBERUZJTkUgQSBBUyB2ICUgMTAgPCA3LCBCIEFTIHYgJSAxMCA9IDcsIEMgQVMgdiAlIDEw ID0gOAotKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIFdpbmRvd0FnZyAoYWN0 dWFsIHJvd3M9NTAwLjAwIGxvb3BzPTEpCi0gICBXaW5kb3c6IHcgQVMgKFJPV1MgQkVUV0VFTiBD VVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORykKLSAgIFBhdHRlcm46IGErIiBiIGMK LSAgIFN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxN2tCCi0gICBORkEgU3RhdGVz OiAzIHBlYWssIDg1MSB0b3RhbCwgMCBtZXJnZWQKLSAgIE5GQSBDb250ZXh0czogMyBwZWFrLCA1 MDEgdG90YWwsIDE1MSBwcnVuZWQKLSAgIE5GQTogNTAgbWF0Y2hlZCAobGVuIDgvOS85LjApLCAw IG1pc21hdGNoZWQKLSAgIE5GQTogMjk5IGFic29yYmVkIChsZW4gMS8xLzEuMCksIDAgc2tpcHBl ZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dz PTUwMC4wMCBsb29wcz0xKQotKDkgcm93cykKLQotLS0gVGVzdCAyMC4yOiBIaWdoIG1hdGNoIGNv dW50IHNjZW5hcmlvCi1FWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBU SU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKLVNFTEVDVCBjb3VudCgqKSBPVkVSIHcKLUZST00gZ2Vu ZXJhdGVfc2VyaWVzKDEsIDUwMCkgQVMgcyh2KQotV0lORE9XIHcgQVMgKAotICAgIFJPV1MgQkVU V0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwotICAgIEFGVEVSIE1BVENI IFNLSVAgUEFTVCBMQVNUIFJPVwotICAgIFBBVFRFUk4gKEEgQikKLSAgICBERUZJTkUgQSBBUyB2 ICUgMiA9IDEsIEIgQVMgdiAlIDIgPSAwCi0pOwotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MDAuMDAgbG9vcHM9MSkKLSAgIFdpbmRvdzog dyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HKQot ICAgUGF0dGVybjogYSBiCi0gICBTdG9yYWdlOiBNZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdr QgotICAgTkZBIFN0YXRlczogMiBwZWFrLCA1MDEgdG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29u dGV4dHM6IDMgcGVhaywgNTAxIHRvdGFsLCAyNTAgcHJ1bmVkCi0gICBORkE6IDI1MCBtYXRjaGVk IChsZW4gMi8yLzIuMCksIDAgbWlzbWF0Y2hlZAotICAgLT4gIEZ1bmN0aW9uIFNjYW4gb24gZ2Vu ZXJhdGVfc2VyaWVzIHMgKGFjdHVhbCByb3dzPTUwMC4wMCBsb29wcz0xKQotKDggcm93cykKLQot LS0gVGVzdCAyMC4zOiBIaWdoIHNraXAgY291bnQgc2NlbmFyaW8KLUVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQotU0VMRUNU IGNvdW50KCopIE9WRVIgdwotRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTAwKSBBUyBzKHYpCi1X SU5ET1cgdyBBUyAoCi0gICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQg Rk9MTE9XSU5HCi0gICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCi0gICAgUEFUVEVS TiAoQSBCIEMgRCBFKQotICAgIERFRklORQotICAgICAgICBBIEFTIHYgJSAxMDAgPSAxLAotICAg ICAgICBCIEFTIHYgJSAxMDAgPSAyLAotICAgICAgICBDIEFTIHYgJSAxMDAgPSAzLAotICAgICAg ICBEIEFTIHYgJSAxMDAgPSA0LAotICAgICAgICBFIEFTIHYgJSAxMDAgPSA1Ci0pOwotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gV2luZG93QWdnIChhY3R1YWwgcm93cz01MDAuMDAg bG9vcHM9MSkKLSAgIFdpbmRvdzogdyBBUyAoUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBV TkJPVU5ERUQgRk9MTE9XSU5HKQotICAgUGF0dGVybjogYSBiIGMgZCBlCi0gICBTdG9yYWdlOiBN ZW1vcnkgIE1heGltdW0gU3RvcmFnZTogMTdrQgotICAgTkZBIFN0YXRlczogMiBwZWFrLCA1MDEg dG90YWwsIDAgbWVyZ2VkCi0gICBORkEgQ29udGV4dHM6IDMgcGVhaywgNTAxIHRvdGFsLCA0OTUg cHJ1bmVkCi0gICBORkE6IDUgbWF0Y2hlZCAobGVuIDUvNS81LjApLCAwIG1pc21hdGNoZWQKLSAg IC0+ICBGdW5jdGlvbiBTY2FuIG9uIGdlbmVyYXRlX3NlcmllcyBzIChhY3R1YWwgcm93cz01MDAu MDAgbG9vcHM9MSkKLSg4IHJvd3MpCi0KLS0tIENsZWFudXAKLURST1AgVEFCTEUgbmZhX3Rlc3Q7 Ci1EUk9QIFRBQkxFIG5mYV9jb21wbGV4OwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9w YXJhbGxlbF9zY2hlZHVsZSBiL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUKaW5k ZXggNGE4MzlkODI3YTIuLmZjNjFkOTBlYmFmIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNz L3BhcmFsbGVsX3NjaGVkdWxlCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1 bGUKQEAgLTEwNyw3ICsxMDcsNyBAQCB0ZXN0OiBzZWxlY3Rfdmlld3MgcG9ydGFsc19wMiBmb3Jl aWduX2tleSBjbHVzdGVyIGRlcGVuZGVuY3kgZ3VjIGJpdG1hcG9wcyBjb21ibwogIyAtLS0tLS0t LS0tCiAjIFJvdyBQYXR0ZXJuIFJlY29nbml0aW9uIHRlc3RzCiAjIC0tLS0tLS0tLS0KLXRlc3Q6 IHJwciBycHJfYmFzZQordGVzdDogcnByIHJwcl9iYXNlIHJwcl9leHBsYWluCiAKICMgLS0tLS0t LS0tLQogIyBBbm90aGVyIGdyb3VwIG9mIHBhcmFsbGVsIHRlc3RzIChKU09OIHJlbGF0ZWQpCmRp ZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9ycHJfZXhwbGFpbi5zcWwgYi9zcmMvdGVz dC9yZWdyZXNzL3NxbC9ycHJfZXhwbGFpbi5zcWwKaW5kZXggZjA3MGYwNWE0OTcuLjgxNTYxMjFi M2NkIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9ycHJfZXhwbGFpbi5zcWwKKysr IGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvcnByX2V4cGxhaW4uc3FsCkBAIC03LDYgKzcsMzkgQEAK IC0tIC0gTkZBOiBtYXRjaGVkIChsZW4gbWluL21heC9hdmcpLCBtaXNtYXRjaGVkIChsZW4gbWlu L21heC9hdmcpCiAtLQogCistLSBGaWx0ZXIgZnVuY3Rpb24gdG8gbm9ybWFsaXplIFN0b3JhZ2Ug bWVtb3J5IHZhbHVlcyBvbmx5IChub3QgTkZBIHN0YXRpc3RpY3MpCistLSBXb3JrcyBmb3IgdGV4 dCwgSlNPTiwgYW5kIFhNTCBmb3JtYXRzCitjcmVhdGUgZnVuY3Rpb24gcnByX2V4cGxhaW5fZmls dGVyKHRleHQpIHJldHVybnMgc2V0b2YgdGV4dAorbGFuZ3VhZ2UgcGxwZ3NxbCBhcworJCQKK2Rl Y2xhcmUKKyAgICBsbiB0ZXh0OworYmVnaW4KKyAgICBmb3IgbG4gaW4gZXhlY3V0ZSAkMQorICAg IGxvb3AKKyAgICAgICAgLS0gTm9ybWFsaXplIG1lbW9yeSBzaXplIGluIFN0b3JhZ2UgbGluZSBv bmx5IChwbGF0Zm9ybS1kZXBlbmRlbnQpCisgICAgICAgIC0tIEtlZXAgTkZBIHN0YXRpc3RpY3Mg bnVtYmVycyB1bmNoYW5nZWQgKHRoZXkgYXJlIHRlc3QgYXNzZXJ0aW9ucykKKworICAgICAgICAt LSBUZXh0IGZvcm1hdDogIlN0b3JhZ2U6IE1lbW9yeSAgTWF4aW11bSBTdG9yYWdlOiAxOGtCIgor ICAgICAgICBpZiBsbiB+ICdTdG9yYWdlOi4qTWF4aW11bSBTdG9yYWdlOicgdGhlbgorICAgICAg ICAgICAgbG4gOj0gcmVnZXhwX3JlcGxhY2UobG4sICdcbVxkK2tCJywgJ05rQicsICdnJyk7Cisg ICAgICAgIGVuZCBpZjsKKworICAgICAgICAtLSBKU09OIGZvcm1hdDogIk1heGltdW0gU3RvcmFn ZSI6IDE3IChudW1iZXIgaW4ga0IgdW5pdHMpCisgICAgICAgIGlmIGxuIH4gJyJNYXhpbXVtIFN0 b3JhZ2UiOicgdGhlbgorICAgICAgICAgICAgbG4gOj0gcmVnZXhwX3JlcGxhY2UobG4sICciTWF4 aW11bSBTdG9yYWdlIjogXGQrJywgJyJNYXhpbXVtIFN0b3JhZ2UiOiAwJywgJ2cnKTsKKyAgICAg ICAgZW5kIGlmOworCisgICAgICAgIC0tIFhNTCBmb3JtYXQ6IDxNYXhpbXVtLVN0b3JhZ2U+MTc8 L01heGltdW0tU3RvcmFnZT4gKG51bWJlciBpbiBrQiB1bml0cykKKyAgICAgICAgaWYgbG4gfiAn PE1heGltdW0tU3RvcmFnZT4nIHRoZW4KKyAgICAgICAgICAgIGxuIDo9IHJlZ2V4cF9yZXBsYWNl KGxuLCAnPE1heGltdW0tU3RvcmFnZT5cZCs8L01heGltdW0tU3RvcmFnZT4nLCAnPE1heGltdW0t U3RvcmFnZT4wPC9NYXhpbXVtLVN0b3JhZ2U+JywgJ2cnKTsKKyAgICAgICAgZW5kIGlmOworCisg ICAgICAgIHJldHVybiBuZXh0IGxuOworICAgIGVuZCBsb29wOworZW5kOworJCQ7CisKIC0tIFNl dHVwOiBDcmVhdGUgdGVzdCB0YWJsZXMKIENSRUFURSBURU1QIFRBQkxFIG5mYV90ZXN0ICgKICAg ICBpZCBzZXJpYWwsCkBAIC00Nyw2ICs4MCw3IEBAIFZBTFVFUwogLS0KIAogLS0gVGVzdCAxLjE6 IFNpbXBsZSBwYXR0ZXJuIC0gc2hvdWxkIHNob3cgYmFzaWMgc3RhdGlzdGljcworU0VMRUNUIHJw cl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMg T0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZS T00gbmZhX3Rlc3QKQEAgLTU0LDEwICs4OCwxMSBAQCBXSU5ET1cgdyBBUyAoCiAgICAgUk9XUyBC RVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJPVU5ERUQgRk9MTE9XSU5HCiAgICAgQUZURVIgTUFU Q0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSBCKQotICAgIERFRklORSBBIEFT IGNhdCA9ICdBJywgQiBBUyBjYXQgPSAnQicKLSk7CisgICAgREVGSU5FIEEgQVMgY2F0ID0gJydB JycsIEIgQVMgY2F0ID0gJydCJycKKyknKTsKIAogLS0gVGVzdCAxLjI6IFBhdHRlcm4gd2l0aCBu byBtYXRjaGVzIC0gMCBtYXRjaGVkCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExB SU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkg T0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBuZmFfdGVzdApAQCAtNjUsMTAgKzEw MCwxMSBAQCBXSU5ET1cgdyBBUyAoCiAgICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBV TkJPVU5ERUQgRk9MTE9XSU5HCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAg ICAgUEFUVEVSTiAoWCBZIFopCi0gICAgREVGSU5FIFggQVMgY2F0ID0gJ1gnLCBZIEFTIGNhdCA9 ICdZJywgWiBBUyBjYXQgPSAnWicKLSk7CisgICAgREVGSU5FIFggQVMgY2F0ID0gJydYJycsIFkg QVMgY2F0ID0gJydZJycsIFogQVMgY2F0ID0gJydaJycKKyk7Jyk7CiAKIC0tIFRlc3QgMS4zOiBQ YXR0ZXJuIG1hdGNoaW5nIGV2ZXJ5IHJvdyAtIGhpZ2ggbWF0Y2ggY291bnQKK1NFTEVDVCBycHJf ZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9G RiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9N IG5mYV90ZXN0CkBAIC03NywxMyArMTEzLDE0IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBN QVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChSKQogICAgIERFRklORSBSIEFT IFRSVUUKLSk7CispOycpOwogCiAtLQogLS0gU2VjdGlvbiAyOiBTdGF0ZSBTdGF0aXN0aWNzIFRl c3RzIChwZWFrLCB0b3RhbCwgbWVyZ2VkKQogLS0KIAogLS0gVGVzdCAyLjE6IFNpbXBsZSBxdWFu dGlmaWVyIHBhdHRlcm4gLSBBKyB3aXRoIHNob3J0IG1hdGNoZXMgKG5vIG1lcmdpbmcpCitTRUxF Q1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBD T1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIg dwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTkyLDkgKzEyOSwxMCBA QCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAg UEFUVEVSTiAoQSspCiAgICAgREVGSU5FIEEgQVMgdiAlIDIgPSAxCi0pOworKTsnKTsKIAogLS0g VGVzdCAyLjI6IEFsdGVybmF0aW9uIHBhdHRlcm4gLSBtdWx0aXBsZSBzdGF0ZSBicmFuY2hlcwor U0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBP VkVSIHcKIEZST00gbmZhX3Rlc3QKQEAgLTEwMywxMSArMTQxLDEyIEBAIFdJTkRPVyB3IEFTICgK ICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSB8IEIg fCBDKSAoRCB8IEUpKQogICAgIERFRklORQotICAgICAgICBBIEFTIGNhdCA9ICdBJywgQiBBUyBj YXQgPSAnQicsIEMgQVMgY2F0ID0gJ0MnLAotICAgICAgICBEIEFTIGNhdCA9ICdEJywgRSBBUyBj YXQgPSAnRScKLSk7CisgICAgICAgIEEgQVMgY2F0ID0gJydBJycsIEIgQVMgY2F0ID0gJydCJycs IEMgQVMgY2F0ID0gJydDJycsCisgICAgICAgIEQgQVMgY2F0ID0gJydEJycsIEUgQVMgY2F0ID0g JydFJycKKyk7Jyk7CiAKIC0tIFRlc3QgMi4zOiBDb21wbGV4IHBhdHRlcm4gd2l0aCBoaWdoIHN0 YXRlIGNvdW50CitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNU IGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBA IC0xMTksOSArMTU4LDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICAgICAgQSBBUyB2ICUgMyA9IDEs CiAgICAgICAgIEIgQVMgdiAlIDMgPSAyLAogICAgICAgICBDIEFTIHYgJSAzID0gMAotKTsKKyk7 Jyk7CiAKIC0tIFRlc3QgMi40OiBHcm91cGVkIHBhdHRlcm4gd2l0aCBxdWFudGlmaWVyIC0gc3Rh dGUgbWVyZ2luZworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpF LCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVD VCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDYwKSBBUyBzKHYpCkBA IC0xMzAsMTAgKzE3MCwxMSBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQ QVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoKEEgQikrKQogICAgIERFRklORSBBIEFTIHYgJSAy ID0gMSwgQiBBUyB2ICUgMiA9IDAKLSk7CispOycpOwogCiAtLSBUZXN0IDIuNTogU3RhdGUgZXhw bG9zaW9uIHBhdHRlcm4gLSBtYW55IGFsdGVybmF0aW9ucwogLS0gUGF0dGVybiAoQXxCKShBfEIp KEF8QikoQXxCKSBjYW4gY3JlYXRlIG1hbnkgcGFyYWxsZWwgc3RhdGVzCitTRUxFQ1QgcnByX2V4 cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYs IFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBn ZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBAIC0xNDIsOSArMTgzLDEwIEBAIFdJTkRP VyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJO ICgoQSB8IEIpIChBIHwgQikgKEEgfCBCKSAoQSB8IEIpIChBIHwgQikgKEEgfCBCKSAoQSB8IEIp IChBIHwgQikpCiAgICAgREVGSU5FIEEgQVMgdiAlIDIgPSAxLCBCIEFTIHYgJSAyID0gMAotKTsK Kyk7Jyk7CiAKIC0tIFRlc3QgMi42OiBIaWdoIHN0YXRlIG1lcmdpbmcgLSBhbHRlcm5hdGlvbiB3 aXRoIHBsdXMgcXVhbnRpZmllcgorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlO IChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9G RikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMCkg QVMgcyh2KQpAQCAtMTUzLDkgKzE5NSwxMCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFU Q0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoKEEgfCBCIHwgQykrIEQpCiAgICAg REVGSU5FIEEgQVMgdiAlIDQgPSAxLCBCIEFTIHYgJSA0ID0gMiwgQyBBUyB2ICUgNCA9IDMsIEQg QVMgdiAlIDQgPSAwCi0pOworKTsnKTsKIAogLS0gVGVzdCAyLjc6IE5lc3RlZCBxdWFudGlmaWVy cyBjYXVzaW5nIHN0YXRlIGdyb3d0aAorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBM QUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZ IE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEw MDApIEFTIHModikKQEAgLTE2NCwxMyArMjA3LDE0IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRF UiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoKEEgfCBCKSspKykKICAg ICBERUZJTkUgQSBBUyB2ICUgMyA9IDEsIEIgQVMgdiAlIDMgPSAyCi0pOworKTsnKTsKIAogLS0K IC0tIFNlY3Rpb24gMzogQ29udGV4dCBTdGF0aXN0aWNzIFRlc3RzIChwZWFrLCB0b3RhbCwgYWJz b3JiZWQsIHNraXBwZWQpCiAtLQogCiAtLSBUZXN0IDMuMTogQ29udGV4dCBhYnNvcnB0aW9uIHdp dGggdW5ib3VuZGVkIHF1YW50aWZpZXIgYXQgc3RhcnQKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0 ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9G RiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3Nl cmllcygxLCA1MCkgQVMgcyh2KQpAQCAtMTc5LDkgKzIyMywxMCBAQCBXSU5ET1cgdyBBUyAoCiAg ICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAg ICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKKyk7Jyk7CiAKIC0t IFRlc3QgMy4yOiBObyBhYnNvcnB0aW9uIC0gYm91bmRlZCBxdWFudGlmaWVyCitTRUxFQ1QgcnBy X2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBP RkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJP TSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTE5MCw5ICsyMzUsMTAgQEAgV0lO RE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRF Uk4gKEF7Miw0fSBCKQogICAgIERFRklORSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAw Ci0pOworKTsnKTsKIAogLS0gVGVzdCAzLjM6IENvbnRleHRzIHNraXBwZWQgYnkgU0tJUCBQQVNU IExBU1QgUk9XCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNU IGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBA IC0yMDEsOSArMjQ3LDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBB U1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBIEIgQykKICAgICBERUZJTkUgQSBBUyB2ICUgMTAg PSAxLCBCIEFTIHYgJSAxMCA9IDIsIEMgQVMgdiAlIDEwID0gMwotKTsKKyk7Jyk7CiAKIC0tIFRl c3QgMy40OiBIaWdoIGNvbnRleHQgYWJzb3JwdGlvbiAtIHVuYm91bmRlZCBncm91cAorU0VMRUNU IHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09T VFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcK IEZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMCkgQVMgcyh2KQpAQCAtMjEyLDEzICsyNTksMTQg QEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAg IFBBVFRFUk4gKChBIEIpKyBDKQogICAgIERFRklORSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2ICUg MyA9IDIsIEMgQVMgdiAlIDMgPSAwCi0pOworKTsnKTsKIAogLS0KIC0tIFNlY3Rpb24gNDogTWF0 Y2ggTGVuZ3RoIFN0YXRpc3RpY3MgVGVzdHMKIC0tCiAKIC0tIFRlc3QgNC4xOiBGaXhlZCBsZW5n dGggbWF0Y2hlcyAtIGFsbCBzYW1lIGxlbmd0aAorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcign CiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBT VU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gbmZhX3Rlc3QKQEAgLTIy NywxMSArMjc1LDEyIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1Qg TEFTVCBST1cKICAgICBQQVRURVJOIChBIEIgQyBEIEUpCiAgICAgREVGSU5FCi0gICAgICAgIEEg QVMgY2F0ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQgPSAnQycsCi0gICAgICAgIEQg QVMgY2F0ID0gJ0QnLCBFIEFTIGNhdCA9ICdFJwotKTsKKyAgICAgICAgQSBBUyBjYXQgPSAnJ0En JywgQiBBUyBjYXQgPSAnJ0InJywgQyBBUyBjYXQgPSAnJ0MnJywKKyAgICAgICAgRCBBUyBjYXQg PSAnJ0QnJywgRSBBUyBjYXQgPSAnJ0UnJworKTsnKTsKIAogLS0gVGVzdCA0LjI6IFZhcmlhYmxl IGxlbmd0aCBtYXRjaGVzIC0gbWluL21heC9hdmcgZGlmZmVyCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0 ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYpCkBAIC0yNDAsOSArMjg5LDEwIEBAIFdJTkRPVyB3IEFT ICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBC KQogICAgIERFRklORSBBIEFTIHYgJSAxMCA8PiAwLCBCIEFTIHYgJSAxMCA9IDAKLSk7CispOycp OwogCiAtLSBUZXN0IDQuMzogVmVyeSBsb25nIG1hdGNoZXMKK1NFTEVDVCBycHJfZXhwbGFpbl9m aWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5H IE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRl X3NlcmllcygxLCAyMDApIEFTIHModikKQEAgLTI1MSw5ICszMDEsMTAgQEAgV0lORE9XIHcgQVMg KAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEErIEIp CiAgICAgREVGSU5FIEEgQVMgdiA8PSAxOTUsIEIgQVMgdiA+IDE5NQotKTsKKyk7Jyk7CiAKIC0t IFRlc3QgNC40OiBNaXggb2Ygc2hvcnQgYW5kIGxvbmcgbWF0Y2hlcworU0VMRUNUIHJwcl9leHBs YWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBU SU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2Vu ZXJhdGVfc2VyaWVzKDEsIDEwMCkgQVMgcyh2KQpAQCAtMjY0LDcgKzMxNSw3IEBAIFdJTkRPVyB3 IEFTICgKICAgICBERUZJTkUKICAgICAgICAgQSBBUyAodiAlIDIwIDw+IDApIEFORCAodiAlIDIw IDw9IDEwIE9SIHYgJSAyMCA+IDE1KSwKICAgICAgICAgQiBBUyB2ICUgMjAgPSAwCi0pOworKTsn KTsKIAogLS0KIC0tIFNlY3Rpb24gNTogTWlzbWF0Y2ggTGVuZ3RoIFN0YXRpc3RpY3MgVGVzdHMK QEAgLTI3MiwzNiArMzIzLDM4IEBAIFdJTkRPVyB3IEFTICgKIAogLS0gVGVzdCA1LjE6IFBhdHRl cm4gdGhhdCBjYXVzZXMgbWlzbWF0Y2hlcyB3aXRoIGxlbmd0aCA+IDEKIC0tIE1pc21hdGNoIGhh cHBlbnMgd2hlbiBwYXJ0aWFsIG1hdGNoIGZhaWxzIGFmdGVyIHByb2Nlc3NpbmcgbXVsdGlwbGUg cm93cworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZG RVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3Vu dCgqKSBPVkVSIHcKIEZST00gKAogICAgIFNFTEVDVCB2LAotICAgICAgICAgICBDQVNFIFdIRU4g diAlIDEwIElOICgxLDIsMykgVEhFTiAnQScKLSAgICAgICAgICAgICAgICBXSEVOIHYgJSAxMCBJ TiAoNCw1KSBUSEVOICdCJwotICAgICAgICAgICAgICAgIFdIRU4gdiAlIDEwID0gNiBUSEVOICdD JwotICAgICAgICAgICAgICAgIEVMU0UgJ1gnIEVORCBBUyBjYXQKKyAgICAgICAgICAgQ0FTRSBX SEVOIHYgJSAxMCBJTiAoMSwyLDMpIFRIRU4gJydBJycKKyAgICAgICAgICAgICAgICBXSEVOIHYg JSAxMCBJTiAoNCw1KSBUSEVOICcnQicnCisgICAgICAgICAgICAgICAgV0hFTiB2ICUgMTAgPSA2 IFRIRU4gJydDJycKKyAgICAgICAgICAgICAgICBFTFNFICcnWCcnIEVORCBBUyBjYXQKICAgICBG Uk9NIGdlbmVyYXRlX3NlcmllcygxLCAxMDApIEFTIHModikKICkgdAogV0lORE9XIHcgQVMgKAog ICAgIFJPV1MgQkVUV0VFTiBDVVJSRU5UIFJPVyBBTkQgVU5CT1VOREVEIEZPTExPV0lORwogICAg IEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEErIEIrIEMpCi0g ICAgREVGSU5FIEEgQVMgY2F0ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQgPSAnQycK LSk7CisgICAgREVGSU5FIEEgQVMgY2F0ID0gJydBJycsIEIgQVMgY2F0ID0gJydCJycsIEMgQVMg Y2F0ID0gJydDJycKKyk7Jyk7CiAKIC0tIFRlc3QgNS4yOiBMb25nIHBhcnRpYWwgbWF0Y2hlcyB0 aGF0IGZhaWwKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwg QlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1Qg Y291bnQoKikgT1ZFUiB3CiBGUk9NICgKICAgICBTRUxFQ1QgaSBBUyB2LAogICAgICAgICAgICBD QVNFCi0gICAgICAgICAgICAgICBXSEVOIGkgPD0gMjAgVEhFTiAnQScKLSAgICAgICAgICAgICAg IFdIRU4gaSA8PSAyNSBUSEVOICdCJwotICAgICAgICAgICAgICAgV0hFTiBpID0gMjYgVEhFTiAn WCcgIC0tIGJyZWFrcyB0aGUgcGF0dGVybgotICAgICAgICAgICAgICAgV0hFTiBpIDw9IDUwIFRI RU4gJ0EnCi0gICAgICAgICAgICAgICBXSEVOIGkgPD0gNTUgVEhFTiAnQicKLSAgICAgICAgICAg ICAgIFdIRU4gaSA9IDU2IFRIRU4gJ0MnICAtLSBjb21wbGV0ZXMgcGF0dGVybgotICAgICAgICAg ICAgICAgRUxTRSAnWScKKyAgICAgICAgICAgICAgIFdIRU4gaSA8PSAyMCBUSEVOICcnQScnCisg ICAgICAgICAgICAgICBXSEVOIGkgPD0gMjUgVEhFTiAnJ0InJworICAgICAgICAgICAgICAgV0hF TiBpID0gMjYgVEhFTiAnJ1gnJyAgLS0gYnJlYWtzIHRoZSBwYXR0ZXJuCisgICAgICAgICAgICAg ICBXSEVOIGkgPD0gNTAgVEhFTiAnJ0EnJworICAgICAgICAgICAgICAgV0hFTiBpIDw9IDU1IFRI RU4gJydCJycKKyAgICAgICAgICAgICAgIFdIRU4gaSA9IDU2IFRIRU4gJydDJycgIC0tIGNvbXBs ZXRlcyBwYXR0ZXJuCisgICAgICAgICAgICAgICBFTFNFICcnWScnCiAgICAgICAgICAgIEVORCBB UyBjYXQKICAgICBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA2MCkgaQogKSB0CkBAIC0zMDksMTQg KzM2MiwxNSBAQCBXSU5ET1cgdyBBUyAoCiAgICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFO RCBVTkJPVU5ERUQgRk9MTE9XSU5HCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9X CiAgICAgUEFUVEVSTiAoQSsgQisgQykKLSAgICBERUZJTkUgQSBBUyBjYXQgPSAnQScsIEIgQVMg Y2F0ID0gJ0InLCBDIEFTIGNhdCA9ICdDJwotKTsKKyAgICBERUZJTkUgQSBBUyBjYXQgPSAnJ0En JywgQiBBUyBjYXQgPSAnJ0InJywgQyBBUyBjYXQgPSAnJ0MnJworKTsnKTsKIAogLS0KIC0tIFNl Y3Rpb24gNjogSlNPTiBGb3JtYXQgVGVzdHMKIC0tCiAKIC0tIFRlc3QgNi4xOiBKU09OIGZvcm1h dCBvdXRwdXQgd2l0aCBhbGwgc3RhdGlzdGljcworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcign CiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBT VU1NQVJZIE9GRiwgRk9STUFUIEpTT04pCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdl bmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2KQpAQCAtMzI1LDkgKzM3OSwxMCBAQCBXSU5ET1cg dyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAo QSsgQispCiAgICAgREVGSU5FIEEgQVMgdiAlIDMgPSAxLCBCIEFTIHYgJSAzID0gMgotKTsKKykn KTsKIAogLS0gVGVzdCA2LjI6IEpTT04gZm9ybWF0IHdpdGggbWF0Y2ggbGVuZ3RoIHN0YXRpc3Rp Y3MKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVS UyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYsIEZPUk1BVCBKU09OKQog U0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBz KHYpCkBAIC0zMzYsMTMgKzM5MSwxNCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0gg U0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2 ICUgMTAgPD4gMCwgQiBBUyB2ICUgMTAgPSAwCi0pOworKScpOwogCiAtLQogLS0gU2VjdGlvbiA3 OiBYTUwgRm9ybWF0IFRlc3RzCiAtLQogCiAtLSBUZXN0IDcuMTogWE1MIGZvcm1hdCBvdXRwdXQK K1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBP RkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYsIEZPUk1BVCBYTUwpCiBTRUxF Q1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAzMCkgQVMgcyh2KQpA QCAtMzUxLDEzICs0MDcsMTQgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAg UEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEgQikKICAgICBERUZJTkUgQSBBUyB2ICUgMiA9 IDEsIEIgQVMgdiAlIDIgPSAwCi0pOworKScpOwogCiAtLQogLS0gU2VjdGlvbiA4OiBNdWx0aXBs ZSBQYXJ0aXRpb25zIFRlc3RzCiAtLQogCiAtLSBUZXN0IDguMTogU3RhdGlzdGljcyBhY3Jvc3Mg bXVsdGlwbGUgcGFydGl0aW9ucworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlO IChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9G RikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gKApAQCAtMzcxLDkgKzQyOCwxMCBAQCBX SU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFU VEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAot KTsKKyk7Jyk7CiAKIC0tIFRlc3QgOC4yOiBEaWZmZXJlbnQgcGF0dGVybiBiZWhhdmlvciBwZXIg cGFydGl0aW9uCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUs IEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNU IGNvdW50KCopIE9WRVIgdwogRlJPTSAoCkBAIC0zODgsMTMgKzQ0NiwxNCBAQCBXSU5ET1cgdyBB UyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsg QikKICAgICBERUZJTkUgQSBBUyB2YWwgPCA1LCBCIEFTIHZhbCA+PSA1Ci0pOworKTsnKTsKIAog LS0KIC0tIFNlY3Rpb24gOTogRWRnZSBDYXNlcwogLS0KIAogLS0gVGVzdCA5LjE6IEVtcHR5IHJl c3VsdCBzZXQKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwg QlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1Qg Y291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAwKSBBUyBzKHYpCkBAIC00 MDMsOSArNDYyLDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1Qg TEFTVCBST1cKICAgICBQQVRURVJOIChBIEIpCiAgICAgREVGSU5FIEEgQVMgdiA9IDEsIEIgQVMg diA9IDIKLSk7CispOycpOwogCiAtLSBUZXN0IDkuMjogU2luZ2xlIHJvdworU0VMRUNUIHJwcl9l eHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZG LCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00g Z2VuZXJhdGVfc2VyaWVzKDEsIDEpIEFTIHModikKQEAgLTQxNCw5ICs0NzQsMTAgQEAgV0lORE9X IHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4g KEEpCiAgICAgREVGSU5FIEEgQVMgVFJVRQotKTsKKyk7Jyk7CiAKIC0tIFRlc3QgOS4zOiBQYXR0 ZXJuIGxvbmdlciB0aGFuIGRhdGEKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJ TiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBP RkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1KSBB UyBzKHYpCkBAIC00MjcsOSArNDg4LDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICBERUZJTkUKICAg ICAgICAgQSBBUyB2ID0gMSwgQiBBUyB2ID0gMiwgQyBBUyB2ID0gMywgRCBBUyB2ID0gNCwgRSBB UyB2ID0gNSwKICAgICAgICAgRiBBUyB2ID0gNiwgRyBBUyB2ID0gNywgSCBBUyB2ID0gOCwgSSBB UyB2ID0gOSwgSiBBUyB2ID0gMTAKLSk7CispOycpOwogCiAtLSBUZXN0IDkuNDogQWxsIHJvd3Mg bWF0Y2ggYXMgc2luZ2xlIG1hdGNoCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExB SU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkg T0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTAp IEFTIHModikKQEAgLTQzOCwxMyArNTAwLDE0IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBN QVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKykKICAgICBERUZJTkUgQSBB UyBUUlVFCi0pOworKTsnKTsKIAogLS0KIC0tIFNlY3Rpb24gMTA6IENvbXBsZXggUGF0dGVybiBU ZXN0cwogLS0KIAogLS0gVGVzdCAxMC4xOiBOZXN0ZWQgZ3JvdXBzCitTRUxFQ1QgcnByX2V4cGxh aW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJ TUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5l cmF0ZV9zZXJpZXMoMSwgNjApIEFTIHModikKQEAgLTQ1Myw5ICs1MTYsMTAgQEAgV0lORE9XIHcg QVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKCgo QSBCKSBDKSspCiAgICAgREVGSU5FIEEgQVMgdiAlIDMgPSAxLCBCIEFTIHYgJSAzID0gMiwgQyBB UyB2ICUgMyA9IDAKLSk7CispOycpOwogCiAtLSBUZXN0IDEwLjI6IE11bHRpcGxlIGFsdGVybmF0 aW9ucworU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZG RVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3Vu dCgqKSBPVkVSIHcKIEZST00gbmZhX3Rlc3QKQEAgLTQ2NCwxMSArNTI4LDEyIEBAIFdJTkRPVyB3 IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgo QSB8IEIpIChDIHwgRCB8IEUpKQogICAgIERFRklORQotICAgICAgICBBIEFTIGNhdCA9ICdBJywg QiBBUyBjYXQgPSAnQicsIEMgQVMgY2F0ID0gJ0MnLAotICAgICAgICBEIEFTIGNhdCA9ICdEJywg RSBBUyBjYXQgPSAnRScKLSk7CisgICAgICAgIEEgQVMgY2F0ID0gJydBJycsIEIgQVMgY2F0ID0g JydCJycsIEMgQVMgY2F0ID0gJydDJycsCisgICAgICAgIEQgQVMgY2F0ID0gJydEJycsIEUgQVMg Y2F0ID0gJydFJycKKyk7Jyk7CiAKIC0tIFRlc3QgMTAuMzogT3B0aW9uYWwgZWxlbWVudHMKK1NF TEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYs IENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZF UiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2KQpAQCAtNDc3LDkgKzU0Miwx MCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAg ICAgUEFUVEVSTiAoQSBCPyBDKQogICAgIERFRklORSBBIEFTIHYgJSA0ID0gMSwgQiBBUyB2ICUg NCA9IDIsIEMgQVMgdiAlIDQgPSAzCi0pOworKTsnKTsKIAogLS0gVGVzdCAxMC40OiBCb3VuZGVk IHF1YW50aWZpZXJzCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZ WkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VM RUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBBUyBzKHYp CkBAIC00ODgsOSArNTU0LDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQ IFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBezIsNX0gQikKICAgICBERUZJTkUgQSBBUyB2 ICUgMTAgPD4gMCwgQiBBUyB2ICUgMTAgPSAwCi0pOworKTsnKTsKIAogLS0gVGVzdCAxMC41OiBT dGFyIHF1YW50aWZpZXIKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5B TFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBT RUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMgcyh2 KQpAQCAtNDk5LDEzICs1NjYsMTQgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNL SVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEEgQiogQykKICAgICBERUZJTkUgQSBBUyB2 ICUgMTAgPSAxLCBCIEFTIHYgJSAxMCBJTiAoMiwzLDQsNSw2LDcsOCksIEMgQVMgdiAlIDEwID0g OQotKTsKKyk7Jyk7CiAKIC0tCiAtLSBTZWN0aW9uIDExOiBSZWFsLXdvcmxkIFBhdHRlcm4gRXhh bXBsZXMKIC0tCiAKIC0tIFRlc3QgMTEuMTogU3RvY2sgcHJpY2UgcGF0dGVybiAtIFYtc2hhcGUg KGRvd24gdGhlbiB1cCkKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5B TFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBT RUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIG5mYV9jb21wbGV4CkBAIC01MTMsMTAgKzU4MSwx MSBAQCBXSU5ET1cgdyBBUyAoCiAgICAgUk9XUyBCRVRXRUVOIENVUlJFTlQgUk9XIEFORCBVTkJP VU5ERUQgRk9MTE9XSU5HCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAg UEFUVEVSTiAoRCsgVSspCi0gICAgREVGSU5FIEQgQVMgdHJlbmQgPSAnRCcsIFUgQVMgdHJlbmQg PSAnVScKLSk7CisgICAgREVGSU5FIEQgQVMgdHJlbmQgPSAnJ0QnJywgVSBBUyB0cmVuZCA9ICcn VScnCispOycpOwogCiAtLSBUZXN0IDExLjI6IFN0b2NrIHByaWNlIHBhdHRlcm4gLSBwZWFrICh1 cCwgc3RhYmxlLCBkb3duKQorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChB TkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikK IFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gbmZhX2NvbXBsZXgKQEAgLTUyNCwxNiArNTkz LDExIEBAIFdJTkRPVyB3IEFTICgKICAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVO Qk9VTkRFRCBGT0xMT1dJTkcKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAg ICBQQVRURVJOIChVKyBTKiBEKykKLSAgICBERUZJTkUgVSBBUyB0cmVuZCA9ICdVJywgUyBBUyB0 cmVuZCA9ICdTJywgRCBBUyB0cmVuZCA9ICdEJwotKTsKKyAgICBERUZJTkUgVSBBUyB0cmVuZCA9 ICcnVScnLCBTIEFTIHRyZW5kID0gJydTJycsIEQgQVMgdHJlbmQgPSAnJ0QnJworKTsnKTsKIAog LS0gVGVzdCAxMS4zOiBDb25zZWN1dGl2ZSBpbmNyZWFzaW5nIHZhbHVlcyAodXNpbmcgUFJFVikK LS0tIEZJWE1FOiBUaGUgb3JpZ2luYWwgcGF0dGVybiB3YXM6Ci0tLSAgIERFRklORSBBIEFTIHYg PiBQUkVWKHYpIE9SIFBSRVYodikgSVMgTlVMTAotLS0gVGhpcyBjYXVzZXMgIkVSUk9SOiB1bnJl Y29nbml6ZWQgbm9kZSB0eXBlOiAxNSIgKFRfRnVuY0V4cHIpIGJlY2F1c2UKLS0tIE51bGxUZXN0 KEZ1bmNFeHByKFBSRVYpKSBpcyBub3QgcHJvcGVybHkgaGFuZGxlZCBzb21ld2hlcmUgaW4gdGhl IHBsYW5uZXIuCi0tLSBUaGUgZXhwcmVzc2lvbiB2ID4gUFJFVih2KSB3b3JrcyBmaW5lLCBidXQg UFJFVih2KSBJUyBOVUxMIGZhaWxzLgotLS0gVXNpbmcgQ09BTEVTQ0UoUFJFVih2KSwgMCkgYXMg YSB3b3JrYXJvdW5kIHVudGlsIHRoZSBidWcgaXMgZml4ZWQuCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0 ZV9zZXJpZXMoMSwgNTApIEFTIHModikKQEAgLTU0MSwxNCArNjA1LDE1IEBAIFdJTkRPVyB3IEFT ICgKICAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK ICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBezMsfSkK LSAgICBERUZJTkUgQSBBUyB2ID4gQ09BTEVTQ0UoUFJFVih2KSwgMCkKLSk7CisgICAgREVGSU5F IEEgQVMgdiA+IFBSRVYodikgT1IgUFJFVih2KSBJUyBOVUxMCispOycpOwogCiAtLQogLS0gU2Vj dGlvbiAxMjogUGVyZm9ybWFuY2Utb3JpZW50ZWQgVGVzdHMKIC0tCiAKIC0tIFRlc3QgMTIuMTog TGFyZ2UgZGF0YXNldCB3aXRoIHNpbXBsZSBwYXR0ZXJuCitTRUxFQ1QgcnByX2V4cGxhaW5fZmls dGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBP RkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9z ZXJpZXMoMSwgMTAwMCkgQVMgcyh2KQpAQCAtNTU3LDkgKzYyMiwxMCBAQCBXSU5ET1cgdyBBUyAo CiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSBCKQog ICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2ICUgMiA9IDAKLSk7CispOycpOwogCiAt LSBUZXN0IDEyLjI6IExhcmdlIGRhdGFzZXQgd2l0aCBhYnNvcnB0aW9uCitTRUxFQ1QgcnByX2V4 cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYs IFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBn ZW5lcmF0ZV9zZXJpZXMoMSwgMTAwMCkgQVMgcyh2KQpAQCAtNTY4LDkgKzYzNCwxMCBAQCBXSU5E T1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVS TiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgMTAwIDw+IDAsIEIgQVMgdiAlIDEwMCA9IDAK LSk7CispOycpOwogCiAtLSBUZXN0IDEyLjM6IEhpZ2ggc3RhdGUgbWVyZ2UgcmF0aW8KK1NFTEVD VCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENP U1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3 CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MDApIEFTIHModikKQEAgLTU3OSwxMyArNjQ2LDE0 IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAg ICBQQVRURVJOICgoQSB8IEIpKyBDKQogICAgIERFRklORSBBIEFTIHYgJSAzID0gMSwgQiBBUyB2 ICUgMyA9IDIsIEMgQVMgdiAlIDMgPSAwCi0pOworKTsnKTsKIAogLS0KIC0tIFNlY3Rpb24gMTM6 IElOSVRJQUwgdnMgbm8gSU5JVElBTCBjb21wYXJpc29uCiAtLQogCiAtLSBUZXN0IDEzLjE6IFdp dGggSU5JVElBTCBrZXl3b3JkCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFT IHModikKQEAgLTU5NSw5ICs2NjMsMTAgQEAgV0lORE9XIHcgQVMgKAogICAgIElOSVRJQUwKICAg ICBQQVRURVJOIChBKyBCKQogICAgIERFRklORSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUg PSAwCi0pOworKTsnKTsKIAogLS0gVGVzdCAxMy4yOiBXaXRob3V0IElOSVRJQUwga2V5d29yZCAo c2FtZSBiZWhhdmlvciBjdXJyZW50bHkpCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVY UExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1B UlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwg NTApIEFTIHModikKQEAgLTYwNiwxMyArNjc1LDE0IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRF UiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCKQogICAgIERFRklO RSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOworKTsnKTsKIAogLS0KIC0tIFNl Y3Rpb24gMTQ6IFF1YW50aWZpZXIgVmFyaWF0aW9ucwogLS0KIAogLS0gVGVzdCAxNC4xOiBQbHVz IHF1YW50aWZpZXIKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFla RSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxF Q1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA0MCkgQVMgcyh2KQpA QCAtNjIxLDkgKzY5MSwxMCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQ QVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSspCiAgICAgREVGSU5FIEEgQVMgdiAlIDQgPD4g MAotKTsKKyk7Jyk7CiAKIC0tIFRlc3QgMTQuMjogU3RhciBxdWFudGlmaWVyICh6ZXJvIG9yIG1v cmUpCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZF UlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50 KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNDApIEFTIHModikKQEAgLTYzMiw5 ICs3MDMsMTAgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNU IFJPVwogICAgIFBBVFRFUk4gKEEqIEIpCiAgICAgREVGSU5FIEEgQVMgdiAlIDQgSU4gKDEsIDIp LCBCIEFTIHYgJSA0ID0gMwotKTsKKyk7Jyk7CiAKIC0tIFRlc3QgMTQuMzogUXVlc3Rpb24gbWFy ayAoemVybyBvciBvbmUpCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFO QUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQog U0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNDApIEFTIHMo dikKQEAgLTY0Myw5ICs3MTUsMTAgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNL SVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEE/IEIgQykKICAgICBERUZJTkUgQSBBUyB2 ICUgNCA9IDEsIEIgQVMgdiAlIDQgPSAyLCBDIEFTIHYgJSA0ID0gMwotKTsKKyk7Jyk7CiAKIC0t IFRlc3QgMTQuNDogRXhhY3QgY291bnQge259CitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcK IEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNV TU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMo MSwgNTApIEFTIHModikKQEAgLTY1NCw5ICs3MjcsMTAgQEAgV0lORE9XIHcgQVMgKAogICAgIEFG VEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKEF7M30gQikKICAgICBE RUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKKyk7Jyk7CiAKIC0tIFRl c3QgMTQuNTogUmFuZ2Uge24sbX0KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJ TiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBP RkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkg QVMgcyh2KQpAQCAtNjY1LDkgKzczOSwxMCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFU Q0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQXsyLDR9IEIpCiAgICAgREVGSU5F IEEgQVMgdiAlIDUgPD4gMCwgQiBBUyB2ICUgNSA9IDAKLSk7CispOycpOwogCiAtLSBUZXN0IDE0 LjY6IEF0IGxlYXN0IHtuLH0KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAo QU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYp CiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCA1MCkgQVMg cyh2KQpAQCAtNjc2LDcgKzc1MSw3IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBT S0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBezMsfSBCKQogICAgIERFRklORSBBIEFT IHYgJSAxMCA8PiAwLCBCIEFTIHYgJSAxMCA9IDAKLSk7CispOycpOwogCiAtLQogLS0gU2VjdGlv biAxNTogUmVncmVzc2lvbiBUZXN0cyBmb3IgU3RhdGlzdGljcyBBY2N1cmFjeQpAQCAtNjg0LDYg Kzc1OSw3IEBAIFdJTkRPVyB3IEFTICgKIAogLS0gVGVzdCAxNS4xOiBWZXJpZnkgc3RhdGUgY291 bnQgYWNjdXJhY3kKIC0tIFBhdHRlcm4gQSsgQiB3aXRoIDIwIHJvd3Mgc2hvdWxkIHNob3cgcHJl ZGljdGFibGUgc3RhdGUgYmVoYXZpb3IKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQ TEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFS WSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAy MCkgQVMgcyh2KQpAQCAtNjkyLDkgKzc2OCwxMCBAQCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIg TUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUg QSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKKyk7Jyk7CiAKIC0tIFRlc3QgMTUu MjogVmVyaWZ5IGNvbnRleHQgY291bnQgd2l0aCBrbm93biBhYnNvcnB0aW9uCitTRUxFQ1QgcnBy X2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBP RkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJP TSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKQEAgLTcwMyw5ICs3ODAsMTAgQEAgV0lO RE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRF Uk4gKEErIEIgQykKICAgICBERUZJTkUgQSBBUyB2ICUgMTAgSU4gKDEsMiwzLDQsNSw2LDcpLCBC IEFTIHYgJSAxMCA9IDgsIEMgQVMgdiAlIDEwID0gOQotKTsKKyk7Jyk7CiAKIC0tIFRlc3QgMTUu MzogVmVyaWZ5IG1hdGNoIGxlbmd0aCB3aXRoIGZpeGVkLWxlbmd0aCBwYXR0ZXJuCitTRUxFQ1Qg cnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NU UyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwog RlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKQEAgLTcxNCwxMyArNzkyLDE0IEBA IFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQ QVRURVJOIChBIEIgQykKICAgICBERUZJTkUgQSBBUyB2ICUgMyA9IDEsIEIgQVMgdiAlIDMgPSAy LCBDIEFTIHYgJSAzID0gMAotKTsKKyk7Jyk7CiAKIC0tCiAtLSBTZWN0aW9uIDE2OiBBbHRlcm5h dGlvbiBQYXR0ZXJuIFRlc3RzCiAtLQogCiAtLSBUZXN0IDE2LjE6IFNpbXBsZSBhbHRlcm5hdGlv bgorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJT IE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgq KSBPVkVSIHcKIEZST00gbmZhX3Rlc3QKQEAgLTcyOCwxMCArODA3LDExIEBAIFdJTkRPVyB3IEFT ICgKICAgICBST1dTIEJFVFdFRU4gQ1VSUkVOVCBST1cgQU5EIFVOQk9VTkRFRCBGT0xMT1dJTkcK ICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSB8IEIp IEMpCi0gICAgREVGSU5FIEEgQVMgY2F0ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQg PSAnQycKLSk7CisgICAgREVGSU5FIEEgQVMgY2F0ID0gJydBJycsIEIgQVMgY2F0ID0gJydCJycs IEMgQVMgY2F0ID0gJydDJycKKyk7Jyk7CiAKIC0tIFRlc3QgMTYuMjogTXVsdGlwbGUgaXRlbXMg aW4gYWx0ZXJuYXRpb24KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5B TFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBT RUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIG5mYV90ZXN0CkBAIC03NDAsMTEgKzgyMCwxMiBA QCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAg UEFUVEVSTiAoKEEgfCBCIHwgQyB8IEQpIEUpCiAgICAgREVGSU5FCi0gICAgICAgIEEgQVMgY2F0 ID0gJ0EnLCBCIEFTIGNhdCA9ICdCJywgQyBBUyBjYXQgPSAnQycsCi0gICAgICAgIEQgQVMgY2F0 ID0gJ0QnLCBFIEFTIGNhdCA9ICdFJwotKTsKKyAgICAgICAgQSBBUyBjYXQgPSAnJ0EnJywgQiBB UyBjYXQgPSAnJ0InJywgQyBBUyBjYXQgPSAnJ0MnJywKKyAgICAgICAgRCBBUyBjYXQgPSAnJ0Qn JywgRSBBUyBjYXQgPSAnJ0UnJworKTsnKTsKIAogLS0gVGVzdCAxNi4zOiBBbHRlcm5hdGlvbiB3 aXRoIHF1YW50aWZpZXJzCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFO QUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQog U0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTApIEFTIHMo dikKQEAgLTc1MywxMyArODM0LDE0IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBT S0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSB8IEIpKyBDKQogICAgIERFRklORSBB IEFTIHYgJSAzID0gMSwgQiBBUyB2ICUgMyA9IDIsIEMgQVMgdiAlIDMgPSAwCi0pOworKTsnKTsK IAogLS0KIC0tIFNlY3Rpb24gMTc6IEdyb3VwIFBhdHRlcm4gVGVzdHMKIC0tCiAKIC0tIFRlc3Qg MTcuMTogU2ltcGxlIGdyb3VwCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4g KEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZG KQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNDApIEFT IHModikKQEAgLTc2OCw5ICs4NTAsMTAgQEAgV0lORE9XIHcgQVMgKAogICAgIEFGVEVSIE1BVENI IFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKChBIEIpKykKICAgICBERUZJTkUgQSBB UyB2ICUgMiA9IDEsIEIgQVMgdiAlIDIgPSAwCi0pOworKTsnKTsKIAogLS0gVGVzdCAxNy4yOiBH cm91cCB3aXRoIGJvdW5kZWQgcXVhbnRpZmllcgorU0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcign CiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9GRiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBT VU1NQVJZIE9GRikKIFNFTEVDVCBjb3VudCgqKSBPVkVSIHcKIEZST00gZ2VuZXJhdGVfc2VyaWVz KDEsIDQwKSBBUyBzKHYpCkBAIC03NzksOSArODYyLDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICBB RlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOICgoQSBCKXsyLDR9KQog ICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2ICUgMiA9IDAKLSk7CispOycpOwogCiAt LSBUZXN0IDE3LjM6IE5lc3RlZCBncm91cHMKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwog RVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VN TUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3Nlcmllcygx LCA2MCkgQVMgcyh2KQpAQCAtNzkwLDEzICs4NzQsMTQgQEAgV0lORE9XIHcgQVMgKAogICAgIEFG VEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4gKCgoQSBCKXsyfSkrKQog ICAgIERFRklORSBBIEFTIHYgJSAyID0gMSwgQiBBUyB2ICUgMiA9IDAKLSk7CispOycpOwogCiAt LQogLS0gU2VjdGlvbiAxODogV2luZG93IEZ1bmN0aW9uIENvbWJpbmF0aW9ucwogLS0KIAogLS0g VGVzdCAxOC4xOiBjb3VudCgqKSB3aXRoIHBhdHRlcm4KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0 ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9G RiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3Nl cmllcygxLCAzMCkgQVMgcyh2KQpAQCAtODA1LDkgKzg5MCwxMCBAQCBXSU5ET1cgdyBBUyAoCiAg ICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAgUEFUVEVSTiAoQSsgQikKICAg ICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0gMAotKTsKKyk7Jyk7CiAKIC0t IFRlc3QgMTguMjogZmlyc3RfdmFsdWUgd2l0aCBwYXR0ZXJuCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGZpcnN0X3ZhbHVlKHYpIE9WRVIgdwogRlJPTSBn ZW5lcmF0ZV9zZXJpZXMoMSwgMzApIEFTIHModikKQEAgLTgxNiw5ICs5MDIsMTAgQEAgV0lORE9X IHcgQVMgKAogICAgIEFGVEVSIE1BVENIIFNLSVAgUEFTVCBMQVNUIFJPVwogICAgIFBBVFRFUk4g KEErIEIpCiAgICAgREVGSU5FIEEgQVMgdiAlIDUgPD4gMCwgQiBBUyB2ICUgNSA9IDAKLSk7Cisp OycpOwogCiAtLSBUZXN0IDE4LjM6IGxhc3RfdmFsdWUgd2l0aCBwYXR0ZXJuCitTRUxFQ1QgcnBy X2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBP RkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGxhc3RfdmFsdWUodikgT1ZFUiB3 CiBGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAzMCkgQVMgcyh2KQpAQCAtODI3LDkgKzkxNCwxMCBA QCBXSU5ET1cgdyBBUyAoCiAgICAgQUZURVIgTUFUQ0ggU0tJUCBQQVNUIExBU1QgUk9XCiAgICAg UEFUVEVSTiAoQSsgQikKICAgICBERUZJTkUgQSBBUyB2ICUgNSA8PiAwLCBCIEFTIHYgJSA1ID0g MAotKTsKKyk7Jyk7CiAKIC0tIFRlc3QgMTguNDogTXVsdGlwbGUgd2luZG93IGZ1bmN0aW9ucwor U0VMRUNUIHJwcl9leHBsYWluX2ZpbHRlcignCiBFWFBMQUlOIChBTkFMWVpFLCBCVUZGRVJTIE9G RiwgQ09TVFMgT0ZGLCBUSU1JTkcgT0ZGLCBTVU1NQVJZIE9GRikKIFNFTEVDVAogICAgIGNvdW50 KCopIE9WRVIgdywKQEAgLTg0MSwxMyArOTI5LDE0IEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRF UiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCKQogICAgIERFRklO RSBBIEFTIHYgJSA1IDw+IDAsIEIgQVMgdiAlIDUgPSAwCi0pOworKTsnKTsKIAogLS0KIC0tIFNl Y3Rpb24gMTk6IERFRklORSBFeHByZXNzaW9uIFZhcmlhdGlvbnMKIC0tCiAKIC0tIFRlc3QgMTku MTogQ29tcGxleCBib29sZWFuIGV4cHJlc3Npb25zCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVy KCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYs IFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJp ZXMoMSwgNTApIEFTIHModikKQEAgLTg1OCw5ICs5NDcsMTAgQEAgV0lORE9XIHcgQVMgKAogICAg IERFRklORQogICAgICAgICBBIEFTICh2ICUgNSA8PiAwKSBBTkQgKHYgJSAzIDw+IDApLAogICAg ICAgICBCIEFTICh2ICUgNSA9IDApIE9SICh2ICUgMyA9IDApCi0pOworKTsnKTsKIAogLS0gVGVz dCAxOS4yOiBVc2luZyBQUkVWIGZ1bmN0aW9uCitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcK IEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNV TU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMo MSwgMzApIEFTIHModikKQEAgLTg3Miw5ICs5NjIsMTAgQEAgV0lORE9XIHcgQVMgKAogICAgICAg ICBTIEFTIFRSVUUsCiAgICAgICAgIFUgQVMgdiA+IFBSRVYodiksCiAgICAgICAgIEQgQVMgdiA8 IFBSRVYodikKLSk7CispOycpOwogCiAtLSBUZXN0IDE5LjM6IFVzaW5nIE5VTEwgY29tcGFyaXNv bnMKK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVS UyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9GRiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQo KikgT1ZFUiB3CiBGUk9NICgKQEAgLTg4NiwxMyArOTc3LDE0IEBAIFdJTkRPVyB3IEFTICgKICAg ICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCKQogICAg IERFRklORSBBIEFTIHYgSVMgTk9UIE5VTEwsIEIgQVMgdiBJUyBOVUxMCi0pOworKTsnKTsKIAog LS0KIC0tIFNlY3Rpb24gMjA6IExhcmdlIFNjYWxlIFN0YXRpc3RpY3MgVmVyaWZpY2F0aW9uCiAt LQogCiAtLSBUZXN0IDIwLjE6IDUwMCByb3dzIC0gdmVyaWZ5IHN0YXRpc3RpY3Mgc2NhbGUgY29y cmVjdGx5CitTRUxFQ1QgcnByX2V4cGxhaW5fZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJV RkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlORyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNv dW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgNTAwKSBBUyBzKHYpCkBAIC05 MDEsOSArOTkzLDEwIEBAIFdJTkRPVyB3IEFTICgKICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1Qg TEFTVCBST1cKICAgICBQQVRURVJOIChBKyBCIEMpCiAgICAgREVGSU5FIEEgQVMgdiAlIDEwIDwg NywgQiBBUyB2ICUgMTAgPSA3LCBDIEFTIHYgJSAxMCA9IDgKLSk7CispOycpOwogCiAtLSBUZXN0 IDIwLjI6IEhpZ2ggbWF0Y2ggY291bnQgc2NlbmFyaW8KK1NFTEVDVCBycHJfZXhwbGFpbl9maWx0 ZXIoJwogRVhQTEFJTiAoQU5BTFlaRSwgQlVGRkVSUyBPRkYsIENPU1RTIE9GRiwgVElNSU5HIE9G RiwgU1VNTUFSWSBPRkYpCiBTRUxFQ1QgY291bnQoKikgT1ZFUiB3CiBGUk9NIGdlbmVyYXRlX3Nl cmllcygxLCA1MDApIEFTIHModikKQEAgLTkxMiw5ICsxMDA1LDEwIEBAIFdJTkRPVyB3IEFTICgK ICAgICBBRlRFUiBNQVRDSCBTS0lQIFBBU1QgTEFTVCBST1cKICAgICBQQVRURVJOIChBIEIpCiAg ICAgREVGSU5FIEEgQVMgdiAlIDIgPSAxLCBCIEFTIHYgJSAyID0gMAotKTsKKyk7Jyk7CiAKIC0t IFRlc3QgMjAuMzogSGlnaCBza2lwIGNvdW50IHNjZW5hcmlvCitTRUxFQ1QgcnByX2V4cGxhaW5f ZmlsdGVyKCcKIEVYUExBSU4gKEFOQUxZWkUsIEJVRkZFUlMgT0ZGLCBDT1NUUyBPRkYsIFRJTUlO RyBPRkYsIFNVTU1BUlkgT0ZGKQogU0VMRUNUIGNvdW50KCopIE9WRVIgdwogRlJPTSBnZW5lcmF0 ZV9zZXJpZXMoMSwgNTAwKSBBUyBzKHYpCkBAIC05MjgsNyArMTAyMiw3IEBAIFdJTkRPVyB3IEFT ICgKICAgICAgICAgQyBBUyB2ICUgMTAwID0gMywKICAgICAgICAgRCBBUyB2ICUgMTAwID0gNCwK ICAgICAgICAgRSBBUyB2ICUgMTAwID0gNQotKTsKKyk7Jyk7CiAKIC0tIENsZWFudXAKIERST1Ag VEFCTEUgbmZhX3Rlc3Q7Ci0tIAoyLjUwLjEgKEFwcGxlIEdpdC0xNTUpCgo= --000000000000c3ee27064a147d9d--