From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by sourceware.org (Postfix) with ESMTP id B73CE3840C29 for ; Thu, 18 Jun 2020 21:30:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org B73CE3840C29 Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-33-xaUludO8NjaS6mVXn1sGIQ-1; Thu, 18 Jun 2020 17:30:41 -0400 X-MC-Unique: xaUludO8NjaS6mVXn1sGIQ-1 Received: by mail-qk1-f200.google.com with SMTP id a5so5492890qkk.12 for ; Thu, 18 Jun 2020 14:30:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=O28wt9YupDCMSmHFSQ+J1ZhDLklf4zKsphvLmJEH8jk=; b=j6emC8QNSW3XpHUUmK7FzGJ9FucrDGRk0DrBfyAl/2djG/jqcR1qJAP1WptnyHvG0L nvUk96cmY6gMH/PFDzWDF1LcfwU/sDcLwM5rSfdy68KfUsJLbu3vJu3OQb+Hht+WcyBd Q+hF5xEnOZgH9PMEgDyIGAyibaB5p3YZqEpApBrvuCET/fqJj8Gtq5H0epHKdBvFdj3P AYxVFHmtyfO9yhrkSCTTnBJx/P4tGdh/nEXMpwGb0UpER8tmrSqlVeQYLi78LrO5EQpf GWbl2hqa78cEX9JVyuJAR9O4OuING2nAjp2m+xuptpXjJrw3Ruk7arA4IImRUZnId3YA ik6g== X-Gm-Message-State: AOAM533eISIQNigld3Bfw3F29Al3nbJ6SdhWZcCNXq0C/gbIN8PMTcaO dSdOYGpAB9QfWVh0BbnszFyoEVU0hr49O5u/7LpkrRiv41f0zhyQb4Xn4v28yutzWUxpHZr/0xp E1aq+ozBJIg3egnYa+/y3 X-Received: by 2002:ac8:7252:: with SMTP id l18mr236377qtp.71.1592515839102; Thu, 18 Jun 2020 14:30:39 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzF1kdi0Y8B+xstBj6Ck6XmUm80EtzaRVM25ox2sk/Sx3PbLpkVbP0Vw2yLNZP/APMlDMFw1Q== X-Received: by 2002:ac8:7252:: with SMTP id l18mr236298qtp.71.1592515837989; Thu, 18 Jun 2020 14:30:37 -0700 (PDT) Received: from [192.168.1.4] (198-84-170-103.cpe.teksavvy.com. [198.84.170.103]) by smtp.gmail.com with ESMTPSA id 124sm4193962qkm.115.2020.06.18.14.30.36 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 18 Jun 2020 14:30:36 -0700 (PDT) Subject: Re: [PATCH v2.1 1/2] BZ #17645, fix slow DSO sorting behavior in dynamic loader To: cltang@codesourcery.com, Andreas Schwab Cc: GNU C Library , Catherine Moore References: <87a724uhtf.fsf@igel.home> <87tv0ct1vl.fsf@igel.home> From: Carlos O'Donell Organization: Red Hat Message-ID: <456fbddc-7915-19da-3ffe-e58b86ae7980@redhat.com> Date: Thu, 18 Jun 2020 17:30:35 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 X-Spam-Status: No, score=-10.6 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SCC_10_SHORT_WORD_LINES, SCC_20_SHORT_WORD_LINES, SCC_35_SHORT_WORD_LINES, SCC_5_SHORT_WORD_LINES, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Jun 2020 21:30:59 -0000 T24gNS8yMC8yMCAxMDozOCBBTSwgQ2h1bmctTGluIFRhbmcgd3JvdGU6DQo+IE9uIDIwMjAvNS8x OSAxMDo1MCBQTSwgQW5kcmVhcyBTY2h3YWIgd3JvdGU6DQo+PiBPbiBNYWkgMTkgMjAyMCwgQ2h1 bmctTGluIFRhbmcgd3JvdGU6DQo+Pg0KPj4+IERvIHlvdSBtZWFuIHRoYXQgYW4gaW5jbHVkZSB0 YXJnZXQgaXMgYXV0b21hdGljYWxseSByZS1tYWRlPw0KPj4NCj4+IFllcy7CoCBUaGUgZ2xpYmMg bWFrZWZpbGVzIGFscmVhZHkgbWFrZSB1c2Ugb2YgdGhhdCBmZWF0dXJlIGV4dGVuc2l2ZWx5Lg0K Pj4NCj4+IEFuZHJlYXMuDQo+IA0KPiBUaGFua3MgZm9yIHRoZSB0aXAuIEkndmUgdXBkYXRlZCB0 aGF0IHBhcnQgb2YgdGhlIHBhdGNoIChub3cgZHViYmVkIHYyLjEpLA0KPiB0aGlzIHRpbWUgdXNp bmcgYSBtYWtlIHJ1bGUgZm9yIHRoZSBNYWtlZmlsZSBmcmFnbWVudCwgYW5kIGEgc21hbGwgZml4 IHRvDQo+IHRoZSBQeXRob24gc2NyaXB0IHRvIHVzZSBvcy5tYWtlZGlycyBpbnN0ZWFkIG9mIG9z Lm1rZGlyIGZvciBzdWJkaXJlY3RvcnkNCj4gY3JlYXRpb24gKHRoZSBtYWtlIHJ1bGUgY2hhbmdl IHJldmVhbGVkIGEgcmFjZSBidWcgdGhlcmUpDQoNCkknbSBzdGFydGluZyBteSByZWl2ZXcgZnJv bSB0aGUgdjIuMSB2ZXJzaW9uLiBUaGFuayB5b3UgZm9yIGFsbCBvZiB0aGlzIHdvcmsuDQoNCk5v IHJlZ3Jlc3Npb25zIG9uIHg4Nl82NCBhbmQgaTY4Ni4NCg0KUGxlYXNlIHJldmlldyBjb21tZW50 cy4NCg0KVGVzdGVkLWJ5OiBDYXJsb3MgTydEb25lbGwgPGNhcmxvc0ByZWRoYXQuY29tPg0KDQo+ IGRpZmYgLS1naXQgYS9lbGYvTWFrZWZpbGUgYi9lbGYvTWFrZWZpbGUNCj4gaW5kZXggNzdkYTYx YWU2NC4uOWRjNjVjMTBmOSAxMDA2NDQNCj4gLS0tIGEvZWxmL01ha2VmaWxlDQo+ICsrKyBiL2Vs Zi9NYWtlZmlsZQ0KPiBAQCAtNDIwLDYgKzQyMCwzMyBAQCB0ZXN0cy1zcGVjaWFsICs9ICQob2Jq cGZ4KW9yZGVyLWNtcC5vdXQgJChvYmpwZngpdHN0LWFycmF5MS1jbXAub3V0IFwNCj4gIAkJICQo b2JqcGZ4KXRzdC11bnVzZWQtZGVwLWNtcC5vdXQNCj4gIGVuZGlmDQo+ICANCj4gKyMgRFNPIHNv cnRpbmcgdGVzdHM6DQo+ICsjIFRoZSBkc28tb3JkZXJpbmctdGVzdC5weSBzY3JpcHQgZ2VuZXJh dGVzIHRlc3RjYXNlIHNvdXJjZSBmaWxlcyBpbiAkKG9ianBmeCksDQo+ICsjIGNyZWF0aW5nIGEg JChvYmpwZngpPHRlc3RjYXNlLW5hbWU+LWRpciBmb3IgZWFjaCB0ZXN0Y2FzZSwgYW5kIGNyZWF0 ZXMgYQ0KPiArIyBNYWtlZmlsZSBmcmFnbWVudCB0byBiZSBpbmNsdWRlZC4NCg0KT0suDQoNCj4g K2RlZmluZSBpbmNsdWRlX2Rzb3NvcnRfdGVzdHMNCj4gKyQob2JqcGZ4KSQoMSkudG1wLW1ha2Vm aWxlOiAkKDEpDQo+ICsJJChQWVRIT04pICQoLi4pc2NyaXB0cy9kc28tb3JkZXJpbmctdGVzdC5w eSBcDQo+ICsJLS1kZXNjcmlwdGlvbi1maWxlICQkPCAtLW9ianBmeCAkKG9ianBmeCkgLS1vdXRw dXQtbWFrZWZpbGUgJCRADQo+ICtpbmNsdWRlICQob2JqcGZ4KSQoMSkudG1wLW1ha2VmaWxlDQoN Ck9LLg0KDQo+ICtlbmRlZg0KPiArDQo+ICsjIEdlbmVyYXRlIGZyb20gZWFjaCB0ZXN0Y2FzZSBk ZXNjcmlwdGlvbiBmaWxlDQo+ICskKGV2YWwgJChjYWxsIGluY2x1ZGVfZHNvc29ydF90ZXN0cyxk c28tc29ydC10ZXN0cy0xLmRlZikpDQo+ICskKGV2YWwgJChjYWxsIGluY2x1ZGVfZHNvc29ydF90 ZXN0cyxkc28tc29ydC10ZXN0cy0yLmRlZikpDQoNCk9LLg0KDQo+ICsNCj4gKyMgVGhpcyBmdW5j dGlvbiBjYW4gYmUgdXNlZCB0byBkZWZpbmUgYSBzaW5nbGUgRFNPIHNvcnRpbmcgdGVzdCwgY29t cGxldGVseQ0KPiArIyBoZXJlIGluIHRoZSBNYWtlZmlsZSwgZm9yIGV4YW1wbGU6DQo+ICsjICAg JChldmFsICQoY2FsbCBzaW5nbGVfZHNvc29ydF90ZXN0LHRlc3RjYXNlLW5hbWUsJ2EtPmItPmMn LCdjPmI+YT57fTxhPGI8YycpKQ0KPiArIyBDdXJyZW50bHkgYWxsIHRlc3RzIGFyZSBkZWZpbmVk IGluIGRlc2NyaXB0aW9uIGZpbGVzLCBhbmQgdGhpcyBmdW5jdGlvbiBpcw0KPiArIyBub3QgdXRp bGl6ZWQsIGJ1dCBrZXB0IGhlcmUgZm9yIHBvc3NpYmxlIGNvbnZlbmllbmNlcy4NCj4gK2RlZmlu ZSBzaW5nbGVfZHNvc29ydF90ZXN0DQo+ICskKG9ianBmeCkkKDEpLnRtcC1tYWtlZmlsZToNCj4g KwkkKFBZVEhPTikgJCguLilzY3JpcHRzL2Rzby1vcmRlcmluZy10ZXN0LnB5IC0tb2JqcGZ4ICQo b2JqcGZ4KSBcDQo+ICsJJCgyKSAkKDEpICQoMykgLS1vdXRwdXQtbWFrZWZpbGUgJCRADQo+ICtp bmNsdWRlICQob2JqcGZ4KSQoMSkudG1wLW1ha2VmaWxlDQo+ICtlbmRlZg0KDQpPSy4NCg0KPiAr DQo+ICBjaGVjay1hYmk6ICQob2JqcGZ4KWNoZWNrLWFiaS1sZC5vdXQNCj4gIHRlc3RzLXNwZWNp YWwgKz0gJChvYmpwZngpY2hlY2stYWJpLWxkLm91dA0KPiAgdXBkYXRlLWFiaTogdXBkYXRlLWFi aS1sZA0KPiBkaWZmIC0tZ2l0IGEvZWxmL2Rzby1zb3J0LXRlc3RzLTEuZGVmIGIvZWxmL2Rzby1z b3J0LXRlc3RzLTEuZGVmDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAw MDAuLmQ5NGM2ZWRhODcNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9lbGYvZHNvLXNvcnQtdGVz dHMtMS5kZWYNCj4gQEAgLTAsMCArMSwzMCBAQA0KDQpXZSBzaG91bGQgaGF2ZSBzb21lIGNvbW1l bnRzIGV4cGxhaW5nIHdoYXQgZWFjaCB0ZXN0IGRvZXMuDQoNCiMgMS4gU2VxdWVuY2Ugb2Ygc2ln bmxlIGRlcGVuZGVuY2llcyB3aXRoIG5vIGN5Y2xlcy4NCg0KPiArdHN0LWRzby1vcmRlcmluZzE6 IGEtPmItPmMNCj4gK291dHB1dDogYz5iPmE+e308YTxiPGMNCj4gKw0KDQojIDIuIFNlcXVlbmNl IGluY2x1ZGluZyAyIGRlcGVuZGVudCBEU09zIG5vdCBhdCB0aGUgZW5kIG9mIHRoZSBncmFwaC4N Cg0KPiArdHN0LWRzby1vcmRlcmluZzI6IGEtPmItPltjZF0tPmUNCj4gK291dHB1dDogZT5kPmM+ Yj5hPnt9PGE8YjxjPGQ8ZQ0KDQpPSy4NCg0KPiArDQoNCiMgMy4gQ29tcGxleCBzZXF1ZW5jZSBp bmNsdWRpbmcgMiBhbmQgMyBkZXBlbmRlbnQgRFNPcy4NCg0KPiArdHN0LWRzby1vcmRlcmluZzM6 IGEtPltiY10tPltkZWZdLT5bZ2hdLT5pDQo+ICtvdXRwdXQ6IGk+aD5nPmY+ZT5kPmM+Yj5hPnt9 PGE8YjxjPGQ8ZTxmPGc8aDxpDQo+ICsNCg0KDQojIDQuIFNlcXVlbmNlIGluY2x1ZGluZyAyIGRl cGVuZGVudCBEU09zIGF0IHRoZSBlbmQgb2YgdGhlIGdyYXBoLg0KIyAgICBBZGRpdGlvbmFsbHkg dGhlIHNhbWUgZGVwZW5kZW5jaWVzIGFwcGVhciBpbiB0d28gcGF0aHMuDQoNCj4gK3RzdC1kc28t b3JkZXJpbmc0OiBhLT5iLT5bZGVdO2EtPmMtPmQtPmUNCj4gK291dHB1dDogZT5kPmM+Yj5hPnt9 PGE8YjxjPGQ8ZQ0KDQpPSy4gTmljZWx5IHNvcnRlZC4NCg0KPiArDQoNCiMgNS4gU2VxdWVuY2Ug aW5jbHVkaW5nIDIgZGVwZW5kZW50IERTT3MsIGFuZCBvbmUgb2YgdGhlDQojICAgIGRlcGVuZGVu dCBEU09zIGlzIGRlcGVuZGVudCBvbiBhbiBlYXJsaWVyIERTTy4NCg0KPiArdHN0LWRzby1vcmRl cmluZzU6IGEtPltiY10tPmQ7Yi0+Yw0KPiArb3V0cHV0OiBkPmM+Yj5hPnt9PGE8YjxjPGQNCj4g Kw0KDQoNCiMgNi4gU2VxdWVuY2UgaW5jbHVkaW5nIDQgZGVwZW5kZW50IERTT3MuDQoNCj4gK3Rz dC1kc28tb3JkZXJpbmc2OiBhLT5bYmNkZV0tPmYNCj4gK291dHB1dDogZj5lPmQ+Yz5iPmE+e308 YTxiPGM8ZDxlPGYNCj4gKw0KDQojIDcuIFNlcXVlbmNlIGluY2x1ZGluZyAyIGRlcGVuZGVudCBh bmQgMyBkZXBlbmRlbnQNCiMgICAgRFNPcywgYW5kIG9uZSBvZiB0aGUgZGVwZW5kZW50IERTT3Mg aXMgZGVwZW5kZW50DQojICAgIG9uIGFuIGVhcmxpZXIgRFNPLg0KDQo+ICt0c3QtZHNvLW9yZGVy aW5nNzogYS0+W2JjXTtiLT5bY2RlXTtlLT5mDQo+ICtvdXRwdXQ6IGY+ZT5kPmM+Yj5hPnt9PGE8 YjxjPGQ8ZTxmDQo+ICsNCg0KIyA4LiBTZXF1ZW5jZSB3aGVyZSB0aGUgRFNPIGMgaXMgdW5lcmxp bmtlZCBhbmQgY2FsbHMNCiMgICAgYSBmdW5jdGlvbiBpbiBEU08gYSB3aGljaCBpcyB0ZWNobmlj YWxseSBhIGN5Y2xlLg0KIyAgICBUaGUgbWFpbiBleGVjdXRhYmxlIGRlcGVuZHMgb24gdGhlIGZp cnN0IHR3byAgRFNPcy4NCiMgICAgTm90ZTogVGhpcyB0ZXN0IGhhcyB1bnNwZWNpZmllZCBiZWhh dmlvdXIuDQoNCj4gK3RzdC1kc28tb3JkZXJpbmc4OiBhLT5iLT5jPT5hO3t9LT5bYmFdDQo+ICtv dXRwdXQ6IGM+Yj5hPnt9PGE8YjxjDQoNCk9LLiBUaGUgY2FsbCByZWZlcmVuY2UgaXMgaWdub3Jl ZCwgYW5kIHRoZSBEVF9ORUVERUQgb3JkZXINCmlzIHVzZWQgaW4gdGhlIHNvcnQsIGFuZCB0aGlz IGlzIHdoYXQgaXMgZXhwZXRlZCBieSB1c2Vycy4NCkl0IGlzIGV4cGVjdGVkIHRoYXQgaWYgdGhl IG1haW4gcHJvZ3JhbSBkZXBlbmRzIG9uIGIgYW5kIGENCnRoYXQgdGhleSB3aWxsIGJlIGluY2x1 ZGVkIGluIHRoZSBwcm9ncmFtLg0KDQo+ICsNCg0KIyA5LiBHZW5lcmF0ZSB0aGUgcGVybXV0YXRp b24gb2YgRFRfTkVFREVEIG9yZGVyIGJldHdlZW4NCiMgICAgdGhlIG1haW4gYmluYXJ5IGFuZCBh bGwgNSBEU09zIGFuZCBpdCBzaG91bGQgaGF2ZSBubw0KIyAgICBpbXBhY3Qgb24gc29ydGluZy4N Cg0KPiArdHN0LWRzby1vcmRlcmluZzk6IGEtPmItPmMtPmQtPmU7e30hLT5bYWJjZGVdDQo+ICtv dXRwdXQ6IGU+ZD5jPmI+YT57fTxhPGI8YzxkPGUNCj4gKw0KDQpPSy4NCg0KPiArdHN0LWJ6MTUz MTE6IHsrYTsrZTsrZjsrZzsrZDslZDstZDstZzstZjstZTstYX07YS0+Yi0+Yy0+ZDtkPT5bYmFd O2M9PmE7Yj0+ZT0+YTtjPT5mPT5iO2Q9Pmc9PmMNCg0KVGhlIHRlc3QgY2FzZSB1cyB1bmRlcmxp bmtlZCBhbmQgdGhlIHJpZ2h0IHNvbHV0aW9uIGZvciBhIHByb2dyYW0NCmRvaW5nIHRoaXMgd291 bGQgYmUgdG8gZml4IGFsbCB0aGUgdW5kZXJsaW5raW5nLiBIb3dldmVyLCB3ZSBrZWVwDQp0aGUg dGVzdCBjYXNlIGhlcmUgdG8gZW5zdXJlIHZhbGlkaXR5IG9mIHRoZSBwcmUvcG9zdCBzb3J0aW5n IGZvcg0KdW5kZXJsaW5rZWQgdW5zcGVjaWZpZWQgY2FzZXMuDQoNCi0gRFNPIGQgaXMgdW5kZXJs aW5rZWQgYW5kIGhhcyBjYWxsIHJlZmVyZW5jZXMgdG8gZm5fYSBpbiBhDQogIGFuZCBmbl9iIGlu IGIgYW5kIGZuX2cgaW4gZywgYnV0IGlzIG5vdCBsaW5rZWQgdG8gYSBvciBiLg0KLSBEU08gYyBp cyB1bmRlcmxpbmtlZCBhbmQgaGFzIGEgY2FsbCByZWZlcmVuY2UgdG8gZm5fYSBpbiBhLA0KICBm bl9mIGluIGYsICBidXQgaXMgbm90IGxpbmtlZCB0byBhIG9yIGYuDQotIERTTyBiIGlzIHVuZGVy bGlua2VkIGFuZCBoYXMgYSBjYWxsIHJlZmVyZW5jZSB0byBmbl9lIGluIGUNCiAgYnV0IGlzIG5v dCBsaW5rZWQgdG8gZS4NCi0gRFNPIGcgaXMgdW5kZXJsaW5rZWQgYW5kIGhhcyBhIGNhbGwgcmVm ZXJlbmNlIHRvIGZuX2MgaW4gYw0KICBidXQgaXMgbm90IGxpbmtlZCB0byBjLg0KLSBEU08gZiBp cyB1bmRlcmxpbmtlZCBhbmQgaGFzIGEgY2FsbCByZWZlcmVuY2UgdG8gZm5fYiBpbiBiDQogIGJ1 dCBpcyBub3QgbGlua2VkIHRvIGIuDQoNCmRsb3BlbihhKQ0KIGEgRFRfTkVFREVEIGINCiBiIERU X05FRURFRCBjLCByZWxvYyBhZ2FpbnN0IGZuX2UsIGZuX2cNCiBjIERUX05FRURFRCBkLCByZWxv YyBhZ2FpbnN0IGZuX2EsIGZuX2YNCiBkIERUX05FRURFRCBOVUxMLCByZWxvYyBhZ2FpbnN0IGZu X2EsIGZuX2IsIGZuX2cNCmRsb3BlbihlKQ0KIHJlbG9jIGFnYWluc3QgZm5fYQ0KZGxvcGVuKGYp DQogcmVsb2MgYWdhaW5zdCBmbl9iDQpkbG9wZW4oZykNCmRsb3BlbihkKQ0KZGxzeW0oZCxmbl9k KQ0KZm5fZCgpDQogY2FsbHJlZiBmbl9iDQogICBjYWxscmVmIGZuX2UNCiAgICAgY2FsbHJlZiBm bl9hDQogY2FsbHJlZiBmbl9hDQogY2FsbHJlZiBmbl9nDQogICBjYWxscmVmIGZuX2MNCiAgICAg Y2FsbHJlZiBmbl9hDQogICAgIGNhbGxyZWYgZm5fZg0KICAgICAgIGNhbGxyZWYgZm5fYg0KICAg ICAgICAgY2FsbHJlZiBmbl9lDQogICAgICAgICAgIGNhbGxyZWYgZm5fYQ0KZGxjbG9zZShkKQ0K ZGxjbG9zZShnKQ0KZGxjbG9zZShmKQ0KZGxjbG9zZShlKQ0KZGxjbG9zZShhKQ0KDQpRdWVzdGlv bjogV2h5IGRvZXNuJ3QgK2RbXSBydW4gYSBjb25zdHJ1Y3RvciBmb3IgZD8NCkFuc3dlcjogQmVj YXVzZSB0aGUgY29uc3RydWN0b3IgcmFuIGVhcmx5IHdoZW4gYSB3YXMgbG9hZGVkLg0KDQp7K2Fb ZD5jPmI+YT5dOytlW2U+XTsrZltmPl07K2dbZz5dOytkW107JWQoYihlKGEoKSkpYSgpZyhjKGEo KWYoYihlKGEoKSkpKSkpKTstZFtdOy1nW107LWZbXTstZVtdOy1hWw0KDQpBdCB0aGlzIHBvaW50 IHdlIGhhdmUgY2xvc2VkIGFsbCB0aGUgZGlyZWN0IG9wZW4gY291bnRzIG9uIHRoZSBsaWJyYXJp ZXMuDQpDbG9zaW5nIGEgZS5nLiAtYVsgd2lsbCBzdGFydCB0aGUgZmluYWwgdW5sb2FkIG9mIGFs bCB0aGUgb3RoZXIgbG9hZGVkIGxpYnJhcmllcy4NCg0KPiArb3V0cHV0KGdsaWJjLnJ0bGQuZHlu YW1pY19zb3J0PTEpOiB7K2FbZD5jPmI+YT5dOytlW2U+XTsrZltmPl07K2dbZz5dOytkW107JWQo YihlKGEoKSkpYSgpZyhjKGEoKWYoYihlKGEoKSkpKSkpKTstZFtdOy1nW107LWZbXTstZVtdOy1h WzxhPGM8ZDxnPGY8YjxlXTt9DQo+ICtvdXRwdXQoZ2xpYmMucnRsZC5keW5hbWljX3NvcnQ9Mik6 IHsrYVtkPmM+Yj5hPl07K2VbZT5dOytmW2Y+XTsrZ1tnPl07K2RbXTslZChiKGUoYSgpKSlhKCln KGMoYSgpZihiKGUoYSgpKSkpKSkpOy1kW107LWdbXTstZltdOy1lW107LWFbPGc8ZjxhPGI8Yzxk PGVdO30NCg0KV2UgbmVlZCBhIGNvbW1lbnQgZXhwbGFpbmluZyB0aGUgdHdvIHNvcnRpbmcgb3Jk ZXJzIGFuZCB3aHkgd2UgZW5kIHVwIGF0IGVhY2ggb25lLg0KDQo+IGRpZmYgLS1naXQgYS9lbGYv ZHNvLXNvcnQtdGVzdHMtMi5kZWYgYi9lbGYvZHNvLXNvcnQtdGVzdHMtMi5kZWYNCj4gbmV3IGZp bGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMC4uMzljNmFjYmFmMg0KPiAtLS0gL2Rl di9udWxsDQo+ICsrKyBiL2VsZi9kc28tc29ydC10ZXN0cy0yLmRlZg0KPiBAQCAtMCwwICsxLDYw NSBAQA0KPiArdHN0LXJlZGhhdC0xMTYyODEwOg0KPiAre30tPkExMDENCj4gK3t9LT4qDQo+ICtB MTAxLT4oQjEwMSBCMTYzIEIxMjIgQjE4MSkNCj4gK0ExMDItPihCMTAyIEIxNDAgQjE5OSBCMTU4 KQ0KPiArQTEwMy0+KEIxMDMgQjExNyBCMTc2IEIxMzUpDQo+ICtBMTA0LT4oQjEwNCBCMTk0IEIx NTMgQjExMikNCj4gK0ExMDUtPihCMTA1IEIxNzEgQjEzMCBCMTg5KQ0KPiArQTEwNi0+KEIxMDYg QjE0OCBCMTA3IEIxNjYpDQo+ICtBMTA3LT4oQjEwNyBCMTI1IEIxODQgQjE0MykNCj4gK0ExMDgt PihCMTA4IEIxMDIgQjE2MSBCMTIwKQ0KPiArQTEwOS0+KEIxMDkgQjE3OSBCMTM4IEIxOTcpDQo+ ICtBMTEwLT4oQjExMCBCMTU2IEIxMTUgQjE3NCkNCj4gK0ExMTEtPihCMTExIEIxMzMgQjE5MiBC MTUxKQ0KPiArQTExMi0+KEIxMTIgQjExMCBCMTY5IEIxMjgpDQo+ICtBMTEzLT4oQjExMyBCMTg3 IEIxNDYgQjEwNSkNCj4gK0ExMTQtPihCMTE0IEIxNjQgQjEyMyBCMTgyKQ0KPiArQTExNS0+KEIx MTUgQjE0MSBCMjAwIEIxNTkpDQo+ICtBMTE2LT4oQjExNiBCMTE4IEIxNzcgQjEzNikNCj4gK0Ex MTctPihCMTE3IEIxOTUgQjE1NCBCMTEzKQ0KPiArQTExOC0+KEIxMTggQjE3MiBCMTMxIEIxOTAp DQo+ICtBMTE5LT4oQjExOSBCMTQ5IEIxMDggQjE2NykNCj4gK0ExMjAtPihCMTIwIEIxMjYgQjE4 NSBCMTQ0KQ0KPiArQTEyMS0+KEIxMjEgQjEwMyBCMTYyKQ0KPiArQTEyMi0+KEIxMjIgQjE4MCBC MTM5IEIxOTgpDQo+ICtBMTIzLT4oQjEyMyBCMTU3IEIxMTYgQjE3NSkNCj4gK0ExMjQtPihCMTI0 IEIxMzQgQjE5MyBCMTUyKQ0KPiArQTEyNS0+KEIxMjUgQjExMSBCMTcwIEIxMjkpDQo+ICtBMTI2 LT4oQjEyNiBCMTg4IEIxNDcgQjEwNikNCj4gK0ExMjctPihCMTI3IEIxNjUgQjEyNCBCMTgzKQ0K PiArQTEyOC0+KEIxMjggQjE0MiBCMTAxIEIxNjApDQo+ICtBMTI5LT4oQjEyOSBCMTE5IEIxNzgg QjEzNykNCj4gK0ExMzAtPihCMTMwIEIxOTYgQjE1NSBCMTE0KQ0KPiArQTEzMS0+KEIxMzEgQjE3 MyBCMTMyIEIxOTEpDQo+ICtBMTMyLT4oQjEzMiBCMTUwIEIxMDkgQjE2OCkNCj4gK0ExMzMtPihC MTMzIEIxMjcgQjE4NiBCMTQ1KQ0KPiArQTEzNC0+KEIxMzQgQjEwNCBCMTYzIEIxMjIpDQo+ICtB MTM1LT4oQjEzNSBCMTgxIEIxNDAgQjE5OSkNCj4gK0ExMzYtPihCMTM2IEIxNTggQjExNyBCMTc2 KQ0KPiArQTEzNy0+KEIxMzcgQjEzNSBCMTk0IEIxNTMpDQo+ICtBMTM4LT4oQjEzOCBCMTEyIEIx NzEgQjEzMCkNCj4gK0ExMzktPihCMTM5IEIxODkgQjE0OCBCMTA3KQ0KPiArQTE0MC0+KEIxNDAg QjE2NiBCMTI1IEIxODQpDQo+ICtBMTQxLT4oQjE0MSBCMTQzIEIxMDIgQjE2MSkNCj4gK0ExNDIt PihCMTQyIEIxMjAgQjE3OSBCMTM4KQ0KPiArQTE0My0+KEIxNDMgQjE5NyBCMTU2IEIxMTUpDQo+ ICtBMTQ0LT4oQjE0NCBCMTc0IEIxMzMgQjE5MikNCj4gK0ExNDUtPihCMTQ1IEIxNTEgQjExMCBC MTY5KQ0KPiArQTE0Ni0+KEIxNDYgQjEyOCBCMTg3KQ0KPiArQTE0Ny0+KEIxNDcgQjEwNSBCMTY0 IEIxMjMpDQo+ICtBMTQ4LT4oQjE0OCBCMTgyIEIxNDEgQjIwMCkNCj4gK0ExNDktPihCMTQ5IEIx NTkgQjExOCBCMTc3KQ0KPiArQTE1MC0+KEIxNTAgQjEzNiBCMTk1IEIxNTQpDQo+ICtBMTUxLT4o QjE1MSBCMTEzIEIxNzIgQjEzMSkNCj4gK0ExNTItPihCMTUyIEIxOTAgQjE0OSBCMTA4KQ0KPiAr QTE1My0+KEIxNTMgQjE2NyBCMTI2IEIxODUpDQo+ICtBMTU0LT4oQjE1NCBCMTQ0IEIxMDMgQjE2 MikNCj4gK0ExNTUtPihCMTU1IEIxMjEgQjE4MCBCMTM5KQ0KPiArQTE1Ni0+KEIxNTYgQjE5OCBC MTU3IEIxMTYpDQo+ICtBMTU3LT4oQjE1NyBCMTc1IEIxMzQgQjE5MykNCj4gK0ExNTgtPihCMTU4 IEIxNTIgQjExMSBCMTcwKQ0KPiArQTE1OS0+KEIxNTkgQjEyOSBCMTg4IEIxNDcpDQo+ICtBMTYw LT4oQjE2MCBCMTA2IEIxNjUgQjEyNCkNCj4gK0ExNjEtPihCMTYxIEIxODMgQjE0MiBCMTAxKQ0K PiArQTE2Mi0+KEIxNjIgQjE2MCBCMTE5IEIxNzgpDQo+ICtBMTYzLT4oQjE2MyBCMTM3IEIxOTYg QjE1NSkNCj4gK0ExNjQtPihCMTY0IEIxMTQgQjE3MyBCMTMyKQ0KPiArQTE2NS0+KEIxNjUgQjE5 MSBCMTUwIEIxMDkpDQo+ICtBMTY2LT4oQjE2NiBCMTY4IEIxMjcgQjE4NikNCj4gK0ExNjctPihC MTY3IEIxNDUgQjEwNCBCMTYzKQ0KPiArQTE2OC0+KEIxNjggQjEyMiBCMTgxIEIxNDApDQo+ICtB MTY5LT4oQjE2OSBCMTk5IEIxNTggQjExNykNCj4gK0ExNzAtPihCMTcwIEIxNzYgQjEzNSBCMTk0 KQ0KPiArQTE3MS0+KEIxNzEgQjE1MyBCMTEyKQ0KPiArQTE3Mi0+KEIxNzIgQjEzMCBCMTg5IEIx NDgpDQo+ICtBMTczLT4oQjE3MyBCMTA3IEIxNjYgQjEyNSkNCj4gK0ExNzQtPihCMTc0IEIxODQg QjE0MyBCMTAyKQ0KPiArQTE3NS0+KEIxNzUgQjE2MSBCMTIwIEIxNzkpDQo+ICtBMTc2LT4oQjE3 NiBCMTM4IEIxOTcgQjE1NikNCj4gK0ExNzctPihCMTc3IEIxMTUgQjE3NCBCMTMzKQ0KPiArQTE3 OC0+KEIxNzggQjE5MiBCMTUxIEIxMTApDQo+ICtBMTc5LT4oQjE3OSBCMTY5IEIxMjggQjE4NykN Cj4gK0ExODAtPihCMTgwIEIxNDYgQjEwNSBCMTY0KQ0KPiArQTE4MS0+KEIxODEgQjEyMyBCMTgy IEIxNDEpDQo+ICtBMTgyLT4oQjE4MiBCMjAwIEIxNTkgQjExOCkNCj4gK0ExODMtPihCMTgzIEIx NzcgQjEzNiBCMTk1KQ0KPiArQTE4NC0+KEIxODQgQjE1NCBCMTEzIEIxNzIpDQo+ICtBMTg1LT4o QjE4NSBCMTMxIEIxOTAgQjE0OSkNCj4gK0ExODYtPihCMTg2IEIxMDggQjE2NyBCMTI2KQ0KPiAr QTE4Ny0+KEIxODcgQjE4NSBCMTQ0IEIxMDMpDQo+ICtBMTg4LT4oQjE4OCBCMTYyIEIxMjEgQjE4 MCkNCj4gK0ExODktPihCMTg5IEIxMzkgQjE5OCBCMTU3KQ0KPiArQTE5MC0+KEIxOTAgQjExNiBC MTc1IEIxMzQpDQo+ICtBMTkxLT4oQjE5MSBCMTkzIEIxNTIgQjExMSkNCj4gK0ExOTItPihCMTky IEIxNzAgQjEyOSBCMTg4KQ0KPiArQTE5My0+KEIxOTMgQjE0NyBCMTA2IEIxNjUpDQo+ICtBMTk0 LT4oQjE5NCBCMTI0IEIxODMgQjE0MikNCj4gK0ExOTUtPihCMTk1IEIxMDEgQjE2MCBCMTE5KQ0K PiArQTE5Ni0+KEIxOTYgQjE3OCBCMTM3KQ0KPiArQTE5Ny0+KEIxOTcgQjE1NSBCMTE0IEIxNzMp DQo+ICtBMTk4LT4oQjE5OCBCMTMyIEIxOTEgQjE1MCkNCj4gK0ExOTktPihCMTk5IEIxMDkgQjE2 OCBCMTI3KQ0KPiArQTIwMC0+KEIyMDAgQjE4NiBCMTQ1IEIxMDQpDQo+ICtCMTAxLT4oQzEwMSBD MTY0IEMxMjMgQzE4MikNCj4gK0IxMDItPihDMTAyIEMxNDEgQzIwMCBDMTU5KQ0KPiArQjEwMy0+ KEMxMDMgQzExOCBDMTc3IEMxMzYpDQo+ICtCMTA0LT4oQzEwNCBDMTk1IEMxNTQgQzExMykNCj4g K0IxMDUtPihDMTA1IEMxNzIgQzEzMSBDMTkwKQ0KPiArQjEwNi0+KEMxMDYgQzE0OSBDMTA4IEMx NjcpDQo+ICtCMTA3LT4oQzEwNyBDMTI2IEMxODUgQzE0NCkNCj4gK0IxMDgtPihDMTA4IEMxMDMg QzE2MiBDMTIxKQ0KPiArQjEwOS0+KEMxMDkgQzE4MCBDMTM5IEMxOTgpDQo+ICtCMTEwLT4oQzEx MCBDMTU3IEMxMTYgQzE3NSkNCj4gK0IxMTEtPihDMTExIEMxMzQgQzE5MyBDMTUyKQ0KPiArQjEx Mi0+KEMxMTIgQzExMSBDMTcwIEMxMjkpDQo+ICtCMTEzLT4oQzExMyBDMTg4IEMxNDcgQzEwNikN Cj4gK0IxMTQtPihDMTE0IEMxNjUgQzEyNCBDMTgzKQ0KPiArQjExNS0+KEMxMTUgQzE0MiBDMTAx IEMxNjApDQo+ICtCMTE2LT4oQzExNiBDMTE5IEMxNzggQzEzNykNCj4gK0IxMTctPihDMTE3IEMx OTYgQzE1NSBDMTE0KQ0KPiArQjExOC0+KEMxMTggQzE3MyBDMTMyIEMxOTEpDQo+ICtCMTE5LT4o QzExOSBDMTUwIEMxMDkgQzE2OCkNCj4gK0IxMjAtPihDMTIwIEMxMjcgQzE4NiBDMTQ1KQ0KPiAr QjEyMS0+KEMxMjEgQzEwNCBDMTYzIEMxMjIpDQo+ICtCMTIyLT4oQzEyMiBDMTgxIEMxNDAgQzE5 OSkNCj4gK0IxMjMtPihDMTIzIEMxNTggQzExNyBDMTc2KQ0KPiArQjEyNC0+KEMxMjQgQzEzNSBD MTk0IEMxNTMpDQo+ICtCMTI1LT4oQzEyNSBDMTEyIEMxNzEgQzEzMCkNCj4gK0IxMjYtPihDMTI2 IEMxODkgQzE0OCBDMTA3KQ0KPiArQjEyNy0+KEMxMjcgQzE2NiBDMTI1IEMxODQpDQo+ICtCMTI4 LT4oQzEyOCBDMTQzIEMxMDIgQzE2MSkNCj4gK0IxMjktPihDMTI5IEMxMjAgQzE3OSBDMTM4KQ0K PiArQjEzMC0+KEMxMzAgQzE5NyBDMTU2IEMxMTUpDQo+ICtCMTMxLT4oQzEzMSBDMTc0IEMxMzMg QzE5MikNCj4gK0IxMzItPihDMTMyIEMxNTEgQzExMCBDMTY5KQ0KPiArQjEzMy0+KEMxMzMgQzEy OCBDMTg3IEMxNDYpDQo+ICtCMTM0LT4oQzEzNCBDMTA1IEMxNjQgQzEyMykNCj4gK0IxMzUtPihD MTM1IEMxODIgQzE0MSBDMjAwKQ0KPiArQjEzNi0+KEMxMzYgQzE1OSBDMTE4IEMxNzcpDQo+ICtC MTM3LT4oQzEzNyBDMTM2IEMxOTUgQzE1NCkNCj4gK0IxMzgtPihDMTM4IEMxMTMgQzE3MiBDMTMx KQ0KPiArQjEzOS0+KEMxMzkgQzE5MCBDMTQ5IEMxMDgpDQo+ICtCMTQwLT4oQzE0MCBDMTY3IEMx MjYgQzE4NSkNCj4gK0IxNDEtPihDMTQxIEMxNDQgQzEwMyBDMTYyKQ0KPiArQjE0Mi0+KEMxNDIg QzEyMSBDMTgwIEMxMzkpDQo+ICtCMTQzLT4oQzE0MyBDMTk4IEMxNTcgQzExNikNCj4gK0IxNDQt PihDMTQ0IEMxNzUgQzEzNCBDMTkzKQ0KPiArQjE0NS0+KEMxNDUgQzE1MiBDMTExIEMxNzApDQo+ ICtCMTQ2LT4oQzE0NiBDMTI5IEMxODggQzE0NykNCj4gK0IxNDctPihDMTQ3IEMxMDYgQzE2NSBD MTI0KQ0KPiArQjE0OC0+KEMxNDggQzE4MyBDMTQyIEMxMDEpDQo+ICtCMTQ5LT4oQzE0OSBDMTYw IEMxMTkgQzE3OCkNCj4gK0IxNTAtPihDMTUwIEMxMzcgQzE5NiBDMTU1KQ0KPiArQjE1MS0+KEMx NTEgQzExNCBDMTczIEMxMzIpDQo+ICtCMTUyLT4oQzE1MiBDMTkxIEMxNTAgQzEwOSkNCj4gK0Ix NTMtPihDMTUzIEMxNjggQzEyNyBDMTg2KQ0KPiArQjE1NC0+KEMxNTQgQzE0NSBDMTA0IEMxNjMp DQo+ICtCMTU1LT4oQzE1NSBDMTIyIEMxODEgQzE0MCkNCj4gK0IxNTYtPihDMTU2IEMxOTkgQzE1 OCBDMTE3KQ0KPiArQjE1Ny0+KEMxNTcgQzE3NiBDMTM1IEMxOTQpDQo+ICtCMTU4LT4oQzE1OCBD MTUzIEMxMTIgQzE3MSkNCj4gK0IxNTktPihDMTU5IEMxMzAgQzE4OSBDMTQ4KQ0KPiArQjE2MC0+ KEMxNjAgQzEwNyBDMTY2IEMxMjUpDQo+ICtCMTYxLT4oQzE2MSBDMTg0IEMxNDMgQzEwMikNCj4g K0IxNjItPihDMTYyIEMxNjEgQzEyMCBDMTc5KQ0KPiArQjE2My0+KEMxNjMgQzEzOCBDMTk3IEMx NTYpDQo+ICtCMTY0LT4oQzE2NCBDMTE1IEMxNzQgQzEzMykNCj4gK0IxNjUtPihDMTY1IEMxOTIg QzE1MSBDMTEwKQ0KPiArQjE2Ni0+KEMxNjYgQzE2OSBDMTI4IEMxODcpDQo+ICtCMTY3LT4oQzE2 NyBDMTQ2IEMxMDUgQzE2NCkNCj4gK0IxNjgtPihDMTY4IEMxMjMgQzE4MiBDMTQxKQ0KPiArQjE2 OS0+KEMxNjkgQzIwMCBDMTU5IEMxMTgpDQo+ICtCMTcwLT4oQzE3MCBDMTc3IEMxMzYgQzE5NSkN Cj4gK0IxNzEtPihDMTcxIEMxNTQgQzExMyBDMTcyKQ0KPiArQjE3Mi0+KEMxNzIgQzEzMSBDMTkw IEMxNDkpDQo+ICtCMTczLT4oQzE3MyBDMTA4IEMxNjcgQzEyNikNCj4gK0IxNzQtPihDMTc0IEMx ODUgQzE0NCBDMTAzKQ0KPiArQjE3NS0+KEMxNzUgQzE2MiBDMTIxIEMxODApDQo+ICtCMTc2LT4o QzE3NiBDMTM5IEMxOTggQzE1NykNCj4gK0IxNzctPihDMTc3IEMxMTYgQzE3NSBDMTM0KQ0KPiAr QjE3OC0+KEMxNzggQzE5MyBDMTUyIEMxMTEpDQo+ICtCMTc5LT4oQzE3OSBDMTcwIEMxMjkgQzE4 OCkNCj4gK0IxODAtPihDMTgwIEMxNDcgQzEwNiBDMTY1KQ0KPiArQjE4MS0+KEMxODEgQzEyNCBD MTgzIEMxNDIpDQo+ICtCMTgyLT4oQzE4MiBDMTAxIEMxNjAgQzExOSkNCj4gK0IxODMtPihDMTgz IEMxNzggQzEzNyBDMTk2KQ0KPiArQjE4NC0+KEMxODQgQzE1NSBDMTE0IEMxNzMpDQo+ICtCMTg1 LT4oQzE4NSBDMTMyIEMxOTEgQzE1MCkNCj4gK0IxODYtPihDMTg2IEMxMDkgQzE2OCBDMTI3KQ0K PiArQjE4Ny0+KEMxODcgQzE4NiBDMTQ1IEMxMDQpDQo+ICtCMTg4LT4oQzE4OCBDMTYzIEMxMjIg QzE4MSkNCj4gK0IxODktPihDMTg5IEMxNDAgQzE5OSBDMTU4KQ0KPiArQjE5MC0+KEMxOTAgQzEx NyBDMTc2IEMxMzUpDQo+ICtCMTkxLT4oQzE5MSBDMTk0IEMxNTMgQzExMikNCj4gK0IxOTItPihD MTkyIEMxNzEgQzEzMCBDMTg5KQ0KPiArQjE5My0+KEMxOTMgQzE0OCBDMTA3IEMxNjYpDQo+ICtC MTk0LT4oQzE5NCBDMTI1IEMxODQgQzE0MykNCj4gK0IxOTUtPihDMTk1IEMxMDIgQzE2MSBDMTIw KQ0KPiArQjE5Ni0+KEMxOTYgQzE3OSBDMTM4IEMxOTcpDQo+ICtCMTk3LT4oQzE5NyBDMTU2IEMx MTUgQzE3NCkNCj4gK0IxOTgtPihDMTk4IEMxMzMgQzE5MiBDMTUxKQ0KPiArQjE5OS0+KEMxOTkg QzExMCBDMTY5IEMxMjgpDQo+ICtCMjAwLT4oQzIwMCBDMTg3IEMxNDYgQzEwNSkNCj4gK0MxMDEt PihBMTY1IEExMjQpDQo+ICtDMTAyLT4oQTE4MyBBMTQyKQ0KPiArQzEwMy0+KEExMDEgQTE2MCkN Cj4gK0MxMDQtPihBMTE5IEExNzgpDQo+ICtDMTA1LT4oQTEzNyBBMTk2KQ0KPiArQzEwNi0+KEEx NTUgQTExNCkNCj4gK0MxMDctPihBMTczIEExMzIpDQo+ICtDMTA4LT4oQTE5MSBBMTUwKQ0KPiAr QzEwOS0+KEExMDkgQTE2OCkNCj4gK0MxMTAtPihBMTI3IEExODYpDQo+ICtDMTExLT4oQTE0NSBB MTA0KQ0KPiArQzExMi0+KEExNjMgQTEyMikNCj4gK0MxMTMtPihBMTgxIEExNDApDQo+ICtDMTE0 LT4oQTE5OSBBMTU4KQ0KPiArQzExNS0+KEExMTcgQTE3NikNCj4gK0MxMTYtPihBMTM1IEExOTQp DQo+ICtDMTE3LT4oQTE1MyBBMTEyKQ0KPiArQzExOC0+KEExNzEgQTEzMCkNCj4gK0MxMTktPihB MTg5IEExNDgpDQo+ICtDMTIwLT4oQTEwNyBBMTY2KQ0KPiArQzEyMS0+KEExMjUgQTE4NCkNCj4g K0MxMjItPihBMTQzIEExMDIpDQo+ICtDMTIzLT4oQTE2MSBBMTIwKQ0KPiArQzEyNC0+KEExNzkg QTEzOCkNCj4gK0MxMjUtPihBMTk3IEExNTYpDQo+ICtDMTI2LT4oQTExNSBBMTc0KQ0KPiArQzEy Ny0+KEExMzMgQTE5MikNCj4gK0MxMjgtPihBMTUxIEExMTApDQo+ICtDMTI5LT4oQTE2OSBBMTI4 KQ0KPiArQzEzMC0+KEExODcgQTE0NikNCj4gK0MxMzEtPihBMTA1IEExNjQpDQo+ICtDMTMyLT4o QTEyMyBBMTgyKQ0KPiArQzEzMy0+KEExNDEgQTIwMCkNCj4gK0MxMzQtPihBMTU5IEExMTgpDQo+ ICtDMTM1LT4oQTE3NyBBMTM2KQ0KPiArQzEzNi0+KEExOTUgQTE1NCkNCj4gK0MxMzctPihBMTEz IEExNzIpDQo+ICtDMTM4LT4oQTEzMSBBMTkwKQ0KPiArQzEzOS0+KEExNDkgQTEwOCkNCj4gK0Mx NDAtPihBMTY3IEExMjYpDQo+ICtDMTQxLT4oQTE4NSBBMTQ0KQ0KPiArQzE0Mi0+KEExMDMgQTE2 MikNCj4gK0MxNDMtPihBMTIxIEExODApDQo+ICtDMTQ0LT4oQTEzOSBBMTk4KQ0KPiArQzE0NS0+ KEExNTcgQTExNikNCj4gK0MxNDYtPihBMTc1IEExMzQpDQo+ICtDMTQ3LT4oQTE5MyBBMTUyKQ0K PiArQzE0OC0+KEExMTEgQTE3MCkNCj4gK0MxNDktPihBMTI5IEExODgpDQo+ICtDMTUwLT4oQTE0 NyBBMTA2KQ0KPiArQzE1MS0+KEExNjUgQTEyNCkNCj4gK0MxNTItPihBMTgzIEExNDIpDQo+ICtD MTUzLT4oQTEwMSBBMTYwKQ0KPiArQzE1NC0+KEExMTkgQTE3OCkNCj4gK0MxNTUtPihBMTM3IEEx OTYpDQo+ICtDMTU2LT4oQTE1NSBBMTE0KQ0KPiArQzE1Ny0+KEExNzMgQTEzMikNCj4gK0MxNTgt PihBMTkxIEExNTApDQo+ICtDMTU5LT4oQTEwOSBBMTY4KQ0KPiArQzE2MC0+KEExMjcgQTE4NikN Cj4gK0MxNjEtPihBMTQ1IEExMDQpDQo+ICtDMTYyLT4oQTE2MyBBMTIyKQ0KPiArQzE2My0+KEEx ODEgQTE0MCkNCj4gK0MxNjQtPihBMTk5IEExNTgpDQo+ICtDMTY1LT4oQTExNyBBMTc2KQ0KPiAr QzE2Ni0+KEExMzUgQTE5NCkNCj4gK0MxNjctPihBMTUzIEExMTIpDQo+ICtDMTY4LT4oQTE3MSBB MTMwKQ0KPiArQzE2OS0+KEExODkgQTE0OCkNCj4gK0MxNzAtPihBMTA3IEExNjYpDQo+ICtDMTcx LT4oQTEyNSBBMTg0KQ0KPiArQzE3Mi0+KEExNDMgQTEwMikNCj4gK0MxNzMtPihBMTYxIEExMjAp DQo+ICtDMTc0LT4oQTE3OSBBMTM4KQ0KPiArQzE3NS0+KEExOTcgQTE1NikNCj4gK0MxNzYtPihB MTE1IEExNzQpDQo+ICtDMTc3LT4oQTEzMyBBMTkyKQ0KPiArQzE3OC0+KEExNTEgQTExMCkNCj4g K0MxNzktPihBMTY5IEExMjgpDQo+ICtDMTgwLT4oQTE4NyBBMTQ2KQ0KPiArQzE4MS0+KEExMDUg QTE2NCkNCj4gK0MxODItPihBMTIzIEExODIpDQo+ICtDMTgzLT4oQTE0MSBBMjAwKQ0KPiArQzE4 NC0+KEExNTkgQTExOCkNCj4gK0MxODUtPihBMTc3IEExMzYpDQo+ICtDMTg2LT4oQTE5NSBBMTU0 KQ0KPiArQzE4Ny0+KEExMTMgQTE3MikNCj4gK0MxODgtPihBMTMxIEExOTApDQo+ICtDMTg5LT4o QTE0OSBBMTA4KQ0KPiArQzE5MC0+KEExNjcgQTEyNikNCj4gK0MxOTEtPihBMTg1IEExNDQpDQo+ ICtDMTkyLT4oQTEwMyBBMTYyKQ0KPiArQzE5My0+KEExMjEgQTE4MCkNCj4gK0MxOTQtPihBMTM5 IEExOTgpDQo+ICtDMTk1LT4oQTE1NyBBMTE2KQ0KPiArQzE5Ni0+KEExNzUgQTEzNCkNCj4gK0Mx OTctPihBMTkzIEExNTIpDQo+ICtDMTk4LT4oQTExMSBBMTcwKQ0KPiArQzE5OS0+KEExMjkgQTE4 OCkNCj4gK0MyMDAtPihBMTQ3IEExMDYpDQo+ICtNMTFYMTEtPihNMTNYMTQgTTEyWDEzIE0xMlgx MiBNMTJYMTEpDQo+ICtNMTFYMTItPihNMTNYMjUgTTEyWDI0IE0xMlgyMyBNMTJYMjIpDQo+ICtN MTFYMTMtPihNMTNYMjEgTTEyWDIwIE0xMlgxOSBNMTJYMTgpDQo+ICtNMTFYMTQtPihNMTNYMTcg TTEyWDE2IE0xMlgxNSBNMTJYMTQpDQo+ICtNMTFYMTUtPihNMTNYMTMgTTEyWDEyIE0xMlgxMSBN MTJYMjUpDQo+ICtNMTFYMTYtPihNMTNYMjQgTTEyWDIzIE0xMlgyMiBNMTJYMjEpDQo+ICtNMTFY MTctPihNMTNYMjAgTTEyWDE5IE0xMlgxOCBNMTJYMTcpDQo+ICtNMTFYMTgtPihNMTNYMTYgTTEy WDE1IE0xMlgxNCBNMTJYMTMpDQo+ICtNMTFYMTktPihNMTNYMTIgTTEyWDExIE0xMlgyNSBNMTJY MjQpDQo+ICtNMTFYMjAtPihNMTNYMjMgTTEyWDIyIE0xMlgyMSBNMTJYMjApDQo+ICtNMTFYMjEt PihNMTNYMTkgTTEyWDE4IE0xMlgxNyBNMTJYMTYpDQo+ICtNMTFYMjItPihNMTNYMTUgTTEyWDE0 IE0xMlgxMyBNMTJYMTIpDQo+ICtNMTFYMjMtPihNMTNYMTEgTTEyWDI1IE0xMlgyNCBNMTJYMjMp DQo+ICtNMTFYMjQtPihNMTNYMjIgTTEyWDIxIE0xMlgyMCBNMTJYMTkpDQo+ICtNMTFYMjUtPihN MTNYMTggTTEyWDE3IE0xMlgxNiBNMTJYMTUpDQo+ICtNMTJYMTEtPihNMTRYMTQgTTEzWDEzIE0x M1gxMiBNMTNYMTEpDQo+ICtNMTJYMTItPihNMTRYMjUgTTEzWDI0IE0xM1gyMyBNMTNYMjIpDQo+ ICtNMTJYMTMtPihNMTRYMjEgTTEzWDIwIE0xM1gxOSBNMTNYMTgpDQo+ICtNMTJYMTQtPihNMTRY MTcgTTEzWDE2IE0xM1gxNSBNMTNYMTQpDQo+ICtNMTJYMTUtPihNMTRYMTMgTTEzWDEyIE0xM1gx MSBNMTNYMjUpDQo+ICtNMTJYMTYtPihNMTRYMjQgTTEzWDIzIE0xM1gyMiBNMTNYMjEpDQo+ICtN MTJYMTctPihNMTRYMjAgTTEzWDE5IE0xM1gxOCBNMTNYMTcpDQo+ICtNMTJYMTgtPihNMTRYMTYg TTEzWDE1IE0xM1gxNCBNMTNYMTMpDQo+ICtNMTJYMTktPihNMTRYMTIgTTEzWDExIE0xM1gyNSBN MTNYMjQpDQo+ICtNMTJYMjAtPihNMTRYMjMgTTEzWDIyIE0xM1gyMSBNMTNYMjApDQo+ICtNMTJY MjEtPihNMTRYMTkgTTEzWDE4IE0xM1gxNyBNMTNYMTYpDQo+ICtNMTJYMjItPihNMTRYMTUgTTEz WDE0IE0xM1gxMyBNMTNYMTIpDQo+ICtNMTJYMjMtPihNMTRYMTEgTTEzWDI1IE0xM1gyNCBNMTNY MjMpDQo+ICtNMTJYMjQtPihNMTRYMjIgTTEzWDIxIE0xM1gyMCBNMTNYMTkpDQo+ICtNMTJYMjUt PihNMTRYMTggTTEzWDE3IE0xM1gxNiBNMTNYMTUpDQo+ICtNMTNYMTEtPihNMTVYMTQgTTE0WDEz IE0xNFgxMiBNMTRYMTEpDQo+ICtNMTNYMTItPihNMTVYMjUgTTE0WDI0IE0xNFgyMyBNMTRYMjIp DQo+ICtNMTNYMTMtPihNMTVYMjEgTTE0WDIwIE0xNFgxOSBNMTRYMTgpDQo+ICtNMTNYMTQtPihN MTVYMTcgTTE0WDE2IE0xNFgxNSBNMTRYMTQpDQo+ICtNMTNYMTUtPihNMTVYMTMgTTE0WDEyIE0x NFgxMSBNMTRYMjUpDQo+ICtNMTNYMTYtPihNMTVYMjQgTTE0WDIzIE0xNFgyMiBNMTRYMjEpDQo+ ICtNMTNYMTctPihNMTVYMjAgTTE0WDE5IE0xNFgxOCBNMTRYMTcpDQo+ICtNMTNYMTgtPihNMTVY MTYgTTE0WDE1IE0xNFgxNCBNMTRYMTMpDQo+ICtNMTNYMTktPihNMTVYMTIgTTE0WDExIE0xNFgy NSBNMTRYMjQpDQo+ICtNMTNYMjAtPihNMTVYMjMgTTE0WDIyIE0xNFgyMSBNMTRYMjApDQo+ICtN MTNYMjEtPihNMTVYMTkgTTE0WDE4IE0xNFgxNyBNMTRYMTYpDQo+ICtNMTNYMjItPihNMTVYMTUg TTE0WDE0IE0xNFgxMyBNMTRYMTIpDQo+ICtNMTNYMjMtPihNMTVYMTEgTTE0WDI1IE0xNFgyNCBN MTRYMjMpDQo+ICtNMTNYMjQtPihNMTVYMjIgTTE0WDIxIE0xNFgyMCBNMTRYMTkpDQo+ICtNMTNY MjUtPihNMTVYMTggTTE0WDE3IE0xNFgxNiBNMTRYMTUpDQo+ICtNMTRYMTEtPihNMTZYMTQgTTE1 WDEzIE0xNVgxMiBNMTVYMTEpDQo+ICtNMTRYMTItPihNMTZYMjUgTTE1WDI0IE0xNVgyMyBNMTVY MjIpDQo+ICtNMTRYMTMtPihNMTZYMjEgTTE1WDIwIE0xNVgxOSBNMTVYMTgpDQo+ICtNMTRYMTQt PihNMTZYMTcgTTE1WDE2IE0xNVgxNSBNMTVYMTQpDQo+ICtNMTRYMTUtPihNMTZYMTMgTTE1WDEy IE0xNVgxMSBNMTVYMjUpDQo+ICtNMTRYMTYtPihNMTZYMjQgTTE1WDIzIE0xNVgyMiBNMTVYMjEp DQo+ICtNMTRYMTctPihNMTZYMjAgTTE1WDE5IE0xNVgxOCBNMTVYMTcpDQo+ICtNMTRYMTgtPihN MTZYMTYgTTE1WDE1IE0xNVgxNCBNMTVYMTMpDQo+ICtNMTRYMTktPihNMTZYMTIgTTE1WDExIE0x NVgyNSBNMTVYMjQpDQo+ICtNMTRYMjAtPihNMTZYMjMgTTE1WDIyIE0xNVgyMSBNMTVYMjApDQo+ ICtNMTRYMjEtPihNMTZYMTkgTTE1WDE4IE0xNVgxNyBNMTVYMTYpDQo+ICtNMTRYMjItPihNMTZY MTUgTTE1WDE0IE0xNVgxMyBNMTVYMTIpDQo+ICtNMTRYMjMtPihNMTZYMTEgTTE1WDI1IE0xNVgy NCBNMTVYMjMpDQo+ICtNMTRYMjQtPihNMTZYMjIgTTE1WDIxIE0xNVgyMCBNMTVYMTkpDQo+ICtN MTRYMjUtPihNMTZYMTggTTE1WDE3IE0xNVgxNiBNMTVYMTUpDQo+ICtNMTVYMTEtPihNMTdYMTQg TTE2WDEzIE0xNlgxMiBNMTZYMTEpDQo+ICtNMTVYMTItPihNMTdYMjUgTTE2WDI0IE0xNlgyMyBN MTZYMjIpDQo+ICtNMTVYMTMtPihNMTdYMjEgTTE2WDIwIE0xNlgxOSBNMTZYMTgpDQo+ICtNMTVY MTQtPihNMTdYMTcgTTE2WDE2IE0xNlgxNSBNMTZYMTQpDQo+ICtNMTVYMTUtPihNMTdYMTMgTTE2 WDEyIE0xNlgxMSBNMTZYMjUpDQo+ICtNMTVYMTYtPihNMTdYMjQgTTE2WDIzIE0xNlgyMiBNMTZY MjEpDQo+ICtNMTVYMTctPihNMTdYMjAgTTE2WDE5IE0xNlgxOCBNMTZYMTcpDQo+ICtNMTVYMTgt PihNMTdYMTYgTTE2WDE1IE0xNlgxNCBNMTZYMTMpDQo+ICtNMTVYMTktPihNMTdYMTIgTTE2WDEx IE0xNlgyNSBNMTZYMjQpDQo+ICtNMTVYMjAtPihNMTdYMjMgTTE2WDIyIE0xNlgyMSBNMTZYMjAp DQo+ICtNMTVYMjEtPihNMTdYMTkgTTE2WDE4IE0xNlgxNyBNMTZYMTYpDQo+ICtNMTVYMjItPihN MTdYMTUgTTE2WDE0IE0xNlgxMyBNMTZYMTIpDQo+ICtNMTVYMjMtPihNMTdYMTEgTTE2WDI1IE0x NlgyNCBNMTZYMjMpDQo+ICtNMTVYMjQtPihNMTdYMjIgTTE2WDIxIE0xNlgyMCBNMTZYMTkpDQo+ ICtNMTVYMjUtPihNMTdYMTggTTE2WDE3IE0xNlgxNiBNMTZYMTUpDQo+ICtNMTZYMTEtPihNMThY MTQgTTE3WDEzIE0xN1gxMiBNMTdYMTEpDQo+ICtNMTZYMTItPihNMThYMjUgTTE3WDI0IE0xN1gy MyBNMTdYMjIpDQo+ICtNMTZYMTMtPihNMThYMjEgTTE3WDIwIE0xN1gxOSBNMTdYMTgpDQo+ICtN MTZYMTQtPihNMThYMTcgTTE3WDE2IE0xN1gxNSBNMTdYMTQpDQo+ICtNMTZYMTUtPihNMThYMTMg TTE3WDEyIE0xN1gxMSBNMTdYMjUpDQo+ICtNMTZYMTYtPihNMThYMjQgTTE3WDIzIE0xN1gyMiBN MTdYMjEpDQo+ICtNMTZYMTctPihNMThYMjAgTTE3WDE5IE0xN1gxOCBNMTdYMTcpDQo+ICtNMTZY MTgtPihNMThYMTYgTTE3WDE1IE0xN1gxNCBNMTdYMTMpDQo+ICtNMTZYMTktPihNMThYMTIgTTE3 WDExIE0xN1gyNSBNMTdYMjQpDQo+ICtNMTZYMjAtPihNMThYMjMgTTE3WDIyIE0xN1gyMSBNMTdY MjApDQo+ICtNMTZYMjEtPihNMThYMTkgTTE3WDE4IE0xN1gxNyBNMTdYMTYpDQo+ICtNMTZYMjIt PihNMThYMTUgTTE3WDE0IE0xN1gxMyBNMTdYMTIpDQo+ICtNMTZYMjMtPihNMThYMTEgTTE3WDI1 IE0xN1gyNCBNMTdYMjMpDQo+ICtNMTZYMjQtPihNMThYMjIgTTE3WDIxIE0xN1gyMCBNMTdYMTkp DQo+ICtNMTZYMjUtPihNMThYMTggTTE3WDE3IE0xN1gxNiBNMTdYMTUpDQo+ICtNMTdYMTEtPihN MTlYMTQgTTE4WDEzIE0xOFgxMiBNMThYMTEpDQo+ICtNMTdYMTItPihNMTlYMjUgTTE4WDI0IE0x OFgyMyBNMThYMjIpDQo+ICtNMTdYMTMtPihNMTlYMjEgTTE4WDIwIE0xOFgxOSBNMThYMTgpDQo+ ICtNMTdYMTQtPihNMTlYMTcgTTE4WDE2IE0xOFgxNSBNMThYMTQpDQo+ICtNMTdYMTUtPihNMTlY MTMgTTE4WDEyIE0xOFgxMSBNMThYMjUpDQo+ICtNMTdYMTYtPihNMTlYMjQgTTE4WDIzIE0xOFgy MiBNMThYMjEpDQo+ICtNMTdYMTctPihNMTlYMjAgTTE4WDE5IE0xOFgxOCBNMThYMTcpDQo+ICtN MTdYMTgtPihNMTlYMTYgTTE4WDE1IE0xOFgxNCBNMThYMTMpDQo+ICtNMTdYMTktPihNMTlYMTIg TTE4WDExIE0xOFgyNSBNMThYMjQpDQo+ICtNMTdYMjAtPihNMTlYMjMgTTE4WDIyIE0xOFgyMSBN MThYMjApDQo+ICtNMTdYMjEtPihNMTlYMTkgTTE4WDE4IE0xOFgxNyBNMThYMTYpDQo+ICtNMTdY MjItPihNMTlYMTUgTTE4WDE0IE0xOFgxMyBNMThYMTIpDQo+ICtNMTdYMjMtPihNMTlYMTEgTTE4 WDI1IE0xOFgyNCBNMThYMjMpDQo+ICtNMTdYMjQtPihNMTlYMjIgTTE4WDIxIE0xOFgyMCBNMThY MTkpDQo+ICtNMTdYMjUtPihNMTlYMTggTTE4WDE3IE0xOFgxNiBNMThYMTUpDQo+ICtNMThYMTEt PihNMjBYMTQgTTE5WDEzIE0xOVgxMiBNMTlYMTEpDQo+ICtNMThYMTItPihNMjBYMjUgTTE5WDI0 IE0xOVgyMyBNMTlYMjIpDQo+ICtNMThYMTMtPihNMjBYMjEgTTE5WDIwIE0xOVgxOSBNMTlYMTgp DQo+ICtNMThYMTQtPihNMjBYMTcgTTE5WDE2IE0xOVgxNSBNMTlYMTQpDQo+ICtNMThYMTUtPihN MjBYMTMgTTE5WDEyIE0xOVgxMSBNMTlYMjUpDQo+ICtNMThYMTYtPihNMjBYMjQgTTE5WDIzIE0x OVgyMiBNMTlYMjEpDQo+ICtNMThYMTctPihNMjBYMjAgTTE5WDE5IE0xOVgxOCBNMTlYMTcpDQo+ ICtNMThYMTgtPihNMjBYMTYgTTE5WDE1IE0xOVgxNCBNMTlYMTMpDQo+ICtNMThYMTktPihNMjBY MTIgTTE5WDExIE0xOVgyNSBNMTlYMjQpDQo+ICtNMThYMjAtPihNMjBYMjMgTTE5WDIyIE0xOVgy MSBNMTlYMjApDQo+ICtNMThYMjEtPihNMjBYMTkgTTE5WDE4IE0xOVgxNyBNMTlYMTYpDQo+ICtN MThYMjItPihNMjBYMTUgTTE5WDE0IE0xOVgxMyBNMTlYMTIpDQo+ICtNMThYMjMtPihNMjBYMTEg TTE5WDI1IE0xOVgyNCBNMTlYMjMpDQo+ICtNMThYMjQtPihNMjBYMjIgTTE5WDIxIE0xOVgyMCBN MTlYMTkpDQo+ICtNMThYMjUtPihNMjBYMTggTTE5WDE3IE0xOVgxNiBNMTlYMTUpDQo+ICtNMTlY MTEtPihNMjFYMTQgTTIwWDEzIE0yMFgxMiBNMjBYMTEpDQo+ICtNMTlYMTItPihNMjFYMjUgTTIw WDI0IE0yMFgyMyBNMjBYMjIpDQo+ICtNMTlYMTMtPihNMjFYMjEgTTIwWDIwIE0yMFgxOSBNMjBY MTgpDQo+ICtNMTlYMTQtPihNMjFYMTcgTTIwWDE2IE0yMFgxNSBNMjBYMTQpDQo+ICtNMTlYMTUt PihNMjFYMTMgTTIwWDEyIE0yMFgxMSBNMjBYMjUpDQo+ICtNMTlYMTYtPihNMjFYMjQgTTIwWDIz IE0yMFgyMiBNMjBYMjEpDQo+ICtNMTlYMTctPihNMjFYMjAgTTIwWDE5IE0yMFgxOCBNMjBYMTcp DQo+ICtNMTlYMTgtPihNMjFYMTYgTTIwWDE1IE0yMFgxNCBNMjBYMTMpDQo+ICtNMTlYMTktPihN MjFYMTIgTTIwWDExIE0yMFgyNSBNMjBYMjQpDQo+ICtNMTlYMjAtPihNMjFYMjMgTTIwWDIyIE0y MFgyMSBNMjBYMjApDQo+ICtNMTlYMjEtPihNMjFYMTkgTTIwWDE4IE0yMFgxNyBNMjBYMTYpDQo+ ICtNMTlYMjItPihNMjFYMTUgTTIwWDE0IE0yMFgxMyBNMjBYMTIpDQo+ICtNMTlYMjMtPihNMjFY MTEgTTIwWDI1IE0yMFgyNCBNMjBYMjMpDQo+ICtNMTlYMjQtPihNMjFYMjIgTTIwWDIxIE0yMFgy MCBNMjBYMTkpDQo+ICtNMTlYMjUtPihNMjFYMTggTTIwWDE3IE0yMFgxNiBNMjBYMTUpDQo+ICtN MjBYMTEtPihNMjJYMTQgTTIxWDEzIE0yMVgxMiBNMjFYMTEpDQo+ICtNMjBYMTItPihNMjJYMjUg TTIxWDI0IE0yMVgyMyBNMjFYMjIpDQo+ICtNMjBYMTMtPihNMjJYMjEgTTIxWDIwIE0yMVgxOSBN MjFYMTgpDQo+ICtNMjBYMTQtPihNMjJYMTcgTTIxWDE2IE0yMVgxNSBNMjFYMTQpDQo+ICtNMjBY MTUtPihNMjJYMTMgTTIxWDEyIE0yMVgxMSBNMjFYMjUpDQo+ICtNMjBYMTYtPihNMjJYMjQgTTIx WDIzIE0yMVgyMiBNMjFYMjEpDQo+ICtNMjBYMTctPihNMjJYMjAgTTIxWDE5IE0yMVgxOCBNMjFY MTcpDQo+ICtNMjBYMTgtPihNMjJYMTYgTTIxWDE1IE0yMVgxNCBNMjFYMTMpDQo+ICtNMjBYMTkt PihNMjJYMTIgTTIxWDExIE0yMVgyNSBNMjFYMjQpDQo+ICtNMjBYMjAtPihNMjJYMjMgTTIxWDIy IE0yMVgyMSBNMjFYMjApDQo+ICtNMjBYMjEtPihNMjJYMTkgTTIxWDE4IE0yMVgxNyBNMjFYMTYp DQo+ICtNMjBYMjItPihNMjJYMTUgTTIxWDE0IE0yMVgxMyBNMjFYMTIpDQo+ICtNMjBYMjMtPihN MjJYMTEgTTIxWDI1IE0yMVgyNCBNMjFYMjMpDQo+ICtNMjBYMjQtPihNMjJYMjIgTTIxWDIxIE0y MVgyMCBNMjFYMTkpDQo+ICtNMjBYMjUtPihNMjJYMTggTTIxWDE3IE0yMVgxNiBNMjFYMTUpDQo+ ICtNMjFYMTEtPihNMjNYMTUgTTIyWDE0IE0yMlgxMyBNMjJYMTIpDQo+ICtNMjFYMTItPihNMTFY MTEgTTIzWDI1IE0yMlgyNCBNMjJYMjMgTTIyWDIyKQ0KPiArTTIxWDEzLT4oTTIzWDIxIE0yMlgy MCBNMjJYMTkgTTIyWDE4KQ0KPiArTTIxWDE0LT4oTTIzWDE3IE0yMlgxNiBNMjJYMTUgTTIyWDE0 KQ0KPiArTTIxWDE1LT4oTTIzWDEzIE0yMlgxMiBNMjJYMTEgTTIyWDI1KQ0KPiArTTIxWDE2LT4o TTIzWDI0IE0yMlgyMyBNMjJYMjIgTTIyWDIxKQ0KPiArTTIxWDE3LT4oTTIzWDIwIE0yMlgxOSBN MjJYMTggTTIyWDE3KQ0KPiArTTIxWDE4LT4oTTIzWDE2IE0yMlgxNSBNMjJYMTQgTTIyWDEzKQ0K PiArTTIxWDE5LT4oTTIzWDEyIE0yMlgxMSBNMjJYMjUgTTIyWDI0KQ0KPiArTTIxWDIwLT4oTTIz WDIzIE0yMlgyMiBNMjJYMjEgTTIyWDIwKQ0KPiArTTIxWDIxLT4oTTIzWDE5IE0yMlgxOCBNMjJY MTcgTTIyWDE2KQ0KPiArTTIxWDIyLT4oTTIzWDE1IE0yMlgxNCBNMjJYMTMgTTIyWDEyKQ0KPiAr TTIxWDIzLT4oTTIzWDExIE0yMlgyNSBNMjJYMjQgTTIyWDIzKQ0KPiArTTIxWDI0LT4oTTIzWDIy IE0yMlgyMSBNMjJYMjAgTTIyWDE5KQ0KPiArTTIxWDI1LT4oTTIzWDE4IE0yMlgxNyBNMjJYMTYg TTIyWDE1KQ0KPiArTTIyWDExLT4oTTI0WDE2IE0yM1gxNSBNMjNYMTQgTTIzWDEzKQ0KPiArTTIy WDEyLT4oTTEyWDEyIE0yNFgxMSBNMjNYMjUgTTIzWDI0IE0yM1gyMykNCj4gK00yMlgxMy0+KE0y NFgyMiBNMjNYMjEgTTIzWDIwIE0yM1gxOSkNCj4gK00yMlgxNC0+KE0yNFgxOCBNMjNYMTcgTTIz WDE2IE0yM1gxNSkNCj4gK00yMlgxNS0+KE0yNFgxNCBNMjNYMTMgTTIzWDEyIE0yM1gxMSkNCj4g K00yMlgxNi0+KE0yNFgyNSBNMjNYMjQgTTIzWDIzIE0yM1gyMikNCj4gK00yMlgxNy0+KE0yNFgy MSBNMjNYMjAgTTIzWDE5IE0yM1gxOCkNCj4gK00yMlgxOC0+KE0yNFgxNyBNMjNYMTYgTTIzWDE1 IE0yM1gxNCkNCj4gK00yMlgxOS0+KE0yNFgxMyBNMjNYMTIgTTIzWDExIE0yM1gyNSkNCj4gK00y MlgyMC0+KE0yNFgyNCBNMjNYMjMgTTIzWDIyIE0yM1gyMSkNCj4gK00yMlgyMS0+KE0yNFgyMCBN MjNYMTkgTTIzWDE4IE0yM1gxNykNCj4gK00yMlgyMi0+KE0yNFgxNiBNMjNYMTUgTTIzWDE0IE0y M1gxMykNCj4gK00yMlgyMy0+KE0yNFgxMiBNMjNYMTEgTTIzWDI1IE0yM1gyNCkNCj4gK00yMlgy NC0+KE0yNFgyMyBNMjNYMjIgTTIzWDIxIE0yM1gyMCkNCj4gK00yMlgyNS0+KE0yNFgxOSBNMjNY MTggTTIzWDE3IE0yM1gxNikNCj4gK00yM1gxMS0+KE0yNVgxNyBNMjRYMTYgTTI0WDE1IE0yNFgx NCkNCj4gK00yM1gxMi0+KE0xM1gxMyBNMjVYMTIgTTI0WDExIE0yNFgyNSBNMjRYMjQpDQo+ICtN MjNYMTMtPihNMjVYMjMgTTI0WDIyIE0yNFgyMSBNMjRYMjApDQo+ICtNMjNYMTQtPihNMjVYMTkg TTI0WDE4IE0yNFgxNyBNMjRYMTYpDQo+ICtNMjNYMTUtPihNMjVYMTUgTTI0WDE0IE0yNFgxMyBN MjRYMTIpDQo+ICtNMjNYMTYtPihNMjVYMTEgTTI0WDI1IE0yNFgyNCBNMjRYMjMpDQo+ICtNMjNY MTctPihNMjVYMjIgTTI0WDIxIE0yNFgyMCBNMjRYMTkpDQo+ICtNMjNYMTgtPihNMjVYMTggTTI0 WDE3IE0yNFgxNiBNMjRYMTUpDQo+ICtNMjNYMTktPihNMjVYMTQgTTI0WDEzIE0yNFgxMiBNMjRY MTEpDQo+ICtNMjNYMjAtPihNMjVYMjUgTTI0WDI0IE0yNFgyMyBNMjRYMjIpDQo+ICtNMjNYMjEt PihNMjVYMjEgTTI0WDIwIE0yNFgxOSBNMjRYMTgpDQo+ICtNMjNYMjItPihNMjVYMTcgTTI0WDE2 IE0yNFgxNSBNMjRYMTQpDQo+ICtNMjNYMjMtPihNMjVYMTMgTTI0WDEyIE0yNFgxMSBNMjRYMjUp DQo+ICtNMjNYMjQtPihNMjVYMjQgTTI0WDIzIE0yNFgyMiBNMjRYMjEpDQo+ICtNMjNYMjUtPihN MjVYMjAgTTI0WDE5IE0yNFgxOCBNMjRYMTcpDQo+ICtNMjRYMTEtPihNMjZYMTggTTI1WDE3IE0y NVgxNiBNMjVYMTUpDQo+ICtNMjRYMTItPihNMTRYMTQgTTI2WDEzIE0yNVgxMiBNMjVYMTEgTTI1 WDI1KQ0KPiArTTI0WDEzLT4oTTI2WDI0IE0yNVgyMyBNMjVYMjIgTTI1WDIxKQ0KPiArTTI0WDE0 LT4oTTI2WDIwIE0yNVgxOSBNMjVYMTggTTI1WDE3KQ0KPiArTTI0WDE1LT4oTTI2WDE2IE0yNVgx NSBNMjVYMTQgTTI1WDEzKQ0KPiArTTI0WDE2LT4oTTI2WDEyIE0yNVgxMSBNMjVYMjUgTTI1WDI0 KQ0KPiArTTI0WDE3LT4oTTI2WDIzIE0yNVgyMiBNMjVYMjEgTTI1WDIwKQ0KPiArTTI0WDE4LT4o TTI2WDE5IE0yNVgxOCBNMjVYMTcgTTI1WDE2KQ0KPiArTTI0WDE5LT4oTTI2WDE1IE0yNVgxNCBN MjVYMTMgTTI1WDEyKQ0KPiArTTI0WDIwLT4oTTI2WDExIE0yNVgyNSBNMjVYMjQgTTI1WDIzKQ0K PiArTTI0WDIxLT4oTTI2WDIyIE0yNVgyMSBNMjVYMjAgTTI1WDE5KQ0KPiArTTI0WDIyLT4oTTI2 WDE4IE0yNVgxNyBNMjVYMTYgTTI1WDE1KQ0KPiArTTI0WDIzLT4oTTI2WDE0IE0yNVgxMyBNMjVY MTIgTTI1WDExKQ0KPiArTTI0WDI0LT4oTTI2WDI1IE0yNVgyNCBNMjVYMjMgTTI1WDIyKQ0KPiAr TTI0WDI1LT4oTTI2WDIxIE0yNVgyMCBNMjVYMTkgTTI1WDE4KQ0KPiArTTI1WDExLT4oTTI3WDE5 IE0yNlgxOCBNMjZYMTcgTTI2WDE2KQ0KPiArTTI1WDEyLT4oTTE1WDE1IE0yN1gxNCBNMjZYMTMg TTI2WDEyIE0yNlgxMSkNCj4gK00yNVgxMy0+KE0yN1gyNSBNMjZYMjQgTTI2WDIzIE0yNlgyMikN Cj4gK00yNVgxNC0+KE0yN1gyMSBNMjZYMjAgTTI2WDE5IE0yNlgxOCkNCj4gK00yNVgxNS0+KE0y N1gxNyBNMjZYMTYgTTI2WDE1IE0yNlgxNCkNCj4gK00yNVgxNi0+KE0yN1gxMyBNMjZYMTIgTTI2 WDExIE0yNlgyNSkNCj4gK00yNVgxNy0+KE0yN1gyNCBNMjZYMjMgTTI2WDIyIE0yNlgyMSkNCj4g K00yNVgxOC0+KE0yN1gyMCBNMjZYMTkgTTI2WDE4IE0yNlgxNykNCj4gK00yNVgxOS0+KE0yN1gx NiBNMjZYMTUgTTI2WDE0IE0yNlgxMykNCj4gK00yNVgyMC0+KE0yN1gxMiBNMjZYMTEgTTI2WDI1 IE0yNlgyNCkNCj4gK00yNVgyMS0+KE0yN1gyMyBNMjZYMjIgTTI2WDIxIE0yNlgyMCkNCj4gK00y NVgyMi0+KE0yN1gxOSBNMjZYMTggTTI2WDE3IE0yNlgxNikNCj4gK00yNVgyMy0+KE0yN1gxNSBN MjZYMTQgTTI2WDEzIE0yNlgxMikNCj4gK00yNVgyNC0+KE0yN1gxMSBNMjZYMjUgTTI2WDI0IE0y NlgyMykNCj4gK00yNVgyNS0+KE0yN1gyMiBNMjZYMjEgTTI2WDIwIE0yNlgxOSkNCj4gK00yNlgx MS0+KE0yOFgyMCBNMjdYMTkgTTI3WDE4IE0yN1gxNykNCj4gK00yNlgxMi0+KE0xNlgxNiBNMjhY MTUgTTI3WDE0IE0yN1gxMyBNMjdYMTIpDQo+ICtNMjZYMTMtPihNMjhYMTEgTTI3WDI1IE0yN1gy NCBNMjdYMjMpDQo+ICtNMjZYMTQtPihNMjhYMjIgTTI3WDIxIE0yN1gyMCBNMjdYMTkpDQo+ICtN MjZYMTUtPihNMjhYMTggTTI3WDE3IE0yN1gxNiBNMjdYMTUpDQo+ICtNMjZYMTYtPihNMjhYMTQg TTI3WDEzIE0yN1gxMiBNMjdYMTEpDQo+ICtNMjZYMTctPihNMjhYMjUgTTI3WDI0IE0yN1gyMyBN MjdYMjIpDQo+ICtNMjZYMTgtPihNMjhYMjEgTTI3WDIwIE0yN1gxOSBNMjdYMTgpDQo+ICtNMjZY MTktPihNMjhYMTcgTTI3WDE2IE0yN1gxNSBNMjdYMTQpDQo+ICtNMjZYMjAtPihNMjhYMTMgTTI3 WDEyIE0yN1gxMSBNMjdYMjUpDQo+ICtNMjZYMjEtPihNMjhYMjQgTTI3WDIzIE0yN1gyMiBNMjdY MjEpDQo+ICtNMjZYMjItPihNMjhYMjAgTTI3WDE5IE0yN1gxOCBNMjdYMTcpDQo+ICtNMjZYMjMt PihNMjhYMTYgTTI3WDE1IE0yN1gxNCBNMjdYMTMpDQo+ICtNMjZYMjQtPihNMjhYMTIgTTI3WDEx IE0yN1gyNSBNMjdYMjQpDQo+ICtNMjZYMjUtPihNMjhYMjMgTTI3WDIyIE0yN1gyMSBNMjdYMjAp DQo+ICtNMjdYMTEtPihNMjlYMjEgTTI4WDIwIE0yOFgxOSBNMjhYMTgpDQo+ICtNMjdYMTItPihN MTdYMTcgTTI5WDE2IE0yOFgxNSBNMjhYMTQgTTI4WDEzKQ0KPiArTTI3WDEzLT4oTTI5WDEyIE0y OFgxMSBNMjhYMjUgTTI4WDI0KQ0KPiArTTI3WDE0LT4oTTI5WDIzIE0yOFgyMiBNMjhYMjEgTTI4 WDIwKQ0KPiArTTI3WDE1LT4oTTI5WDE5IE0yOFgxOCBNMjhYMTcgTTI4WDE2KQ0KPiArTTI3WDE2 LT4oTTI5WDE1IE0yOFgxNCBNMjhYMTMgTTI4WDEyKQ0KPiArTTI3WDE3LT4oTTI5WDExIE0yOFgy NSBNMjhYMjQgTTI4WDIzKQ0KPiArTTI3WDE4LT4oTTI5WDIyIE0yOFgyMSBNMjhYMjAgTTI4WDE5 KQ0KPiArTTI3WDE5LT4oTTI5WDE4IE0yOFgxNyBNMjhYMTYgTTI4WDE1KQ0KPiArTTI3WDIwLT4o TTI5WDE0IE0yOFgxMyBNMjhYMTIgTTI4WDExKQ0KPiArTTI3WDIxLT4oTTI5WDI1IE0yOFgyNCBN MjhYMjMgTTI4WDIyKQ0KPiArTTI3WDIyLT4oTTI5WDIxIE0yOFgyMCBNMjhYMTkgTTI4WDE4KQ0K PiArTTI3WDIzLT4oTTI5WDE3IE0yOFgxNiBNMjhYMTUgTTI4WDE0KQ0KPiArTTI3WDI0LT4oTTI5 WDEzIE0yOFgxMiBNMjhYMTEgTTI4WDI1KQ0KPiArTTI3WDI1LT4oTTI5WDI0IE0yOFgyMyBNMjhY MjIgTTI4WDIxKQ0KPiArTTI4WDExLT4oTTMwWDIyIE0yOVgyMSBNMjlYMjAgTTI5WDE5KQ0KPiAr TTI4WDEyLT4oTTE4WDE4IE0zMFgxNyBNMjlYMTYgTTI5WDE1IE0yOVgxNCkNCj4gK00yOFgxMy0+ KE0zMFgxMyBNMjlYMTIgTTI5WDExIE0yOVgyNSkNCj4gK00yOFgxNC0+KE0zMFgyNCBNMjlYMjMg TTI5WDIyIE0yOVgyMSkNCj4gK00yOFgxNS0+KE0zMFgyMCBNMjlYMTkgTTI5WDE4IE0yOVgxNykN Cj4gK00yOFgxNi0+KE0zMFgxNiBNMjlYMTUgTTI5WDE0IE0yOVgxMykNCj4gK00yOFgxNy0+KE0z MFgxMiBNMjlYMTEgTTI5WDI1IE0yOVgyNCkNCj4gK00yOFgxOC0+KE0zMFgyMyBNMjlYMjIgTTI5 WDIxIE0yOVgyMCkNCj4gK00yOFgxOS0+KE0zMFgxOSBNMjlYMTggTTI5WDE3IE0yOVgxNikNCj4g K00yOFgyMC0+KE0zMFgxNSBNMjlYMTQgTTI5WDEzIE0yOVgxMikNCj4gK00yOFgyMS0+KE0zMFgx MSBNMjlYMjUgTTI5WDI0IE0yOVgyMykNCj4gK00yOFgyMi0+KE0zMFgyMiBNMjlYMjEgTTI5WDIw IE0yOVgxOSkNCj4gK00yOFgyMy0+KE0zMFgxOCBNMjlYMTcgTTI5WDE2IE0yOVgxNSkNCj4gK00y OFgyNC0+KE0zMFgxNCBNMjlYMTMgTTI5WDEyIE0yOVgxMSkNCj4gK00yOFgyNS0+KE0zMFgyNSBN MjlYMjQgTTI5WDIzIE0yOVgyMikNCj4gK00yOVgxMS0+KE0zMFgyMiBNMzBYMjEgTTMwWDIwKQ0K PiArTTI5WDEyLT4oTTMwWDE3IE0zMFgxNiBNMzBYMTUpDQo+ICtNMjlYMTMtPihNMzBYMTMgTTMw WDEyIE0zMFgxMSkNCj4gK00yOVgxNC0+KE0zMFgyNCBNMzBYMjMgTTMwWDIyKQ0KPiArTTI5WDE1 LT4oTTMwWDIwIE0zMFgxOSBNMzBYMTgpDQo+ICtNMjlYMTYtPihNMzBYMTYgTTMwWDE1IE0zMFgx NCkNCj4gK00yOVgxNy0+KE0zMFgxMiBNMzBYMTEgTTMwWDI1KQ0KPiArTTI5WDE4LT4oTTMwWDIz IE0zMFgyMiBNMzBYMjEpDQo+ICtNMjlYMTktPihNMzBYMTkgTTMwWDE4IE0zMFgxNykNCj4gK00y OVgyMC0+KE0zMFgxNSBNMzBYMTQgTTMwWDEzKQ0KPiArTTI5WDIxLT4oTTMwWDExIE0zMFgyNSBN MzBYMjQpDQo+ICtNMjlYMjItPihNMzBYMjIgTTMwWDIxIE0zMFgyMCkNCj4gK00yOVgyMy0+KE0z MFgxOCBNMzBYMTcgTTMwWDE2KQ0KPiArTTI5WDI0LT4oTTMwWDE0IE0zMFgxMyBNMzBYMTIpDQo+ ICtNMjlYMjUtPihNMzBYMjUgTTMwWDI0IE0zMFgyMykNCj4gK00zMFgxMQ0KPiArTTMwWDEyDQo+ ICtNMzBYMTMNCj4gK00zMFgxNA0KPiArTTMwWDE1DQo+ICtNMzBYMTYNCj4gK00zMFgxNw0KPiAr TTMwWDE4DQo+ICtNMzBYMTkNCj4gK00zMFgyMA0KPiArTTMwWDIxDQo+ICtNMzBYMjINCj4gK00z MFgyMw0KPiArTTMwWDI0DQo+ICtNMzBYMjUNCj4gK291dHB1dChnbGliYy5ydGxkLmR5bmFtaWNf c29ydD0xKTogTTMwWDE5Pk0zMFgxNT5NMzBYMTY+TTMwWDExPk0zMFgxMj5NMzBYMTc+TTMwWDEz Pk0zMFgxND5NMjlYMjA+TTMwWDIzPk0zMFgyND5NMzBYMjA+TTMwWDE4Pk0yOVgxNT5NMjlYMTI+ TTMwWDIyPk0zMFgyMT5NMjlYMjI+TTMwWDI1Pk0yOVgxOT5NMjlYMjM+TTI5WDE2Pk0yOVgyND5N MjlYMTM+TTI5WDE3Pk0yOVgxOD5NMjhYMTk+TTI5WDIxPk0yOVgyNT5NMjlYMTQ+TTI4WDIwPk0y OFgxNT5NMjhYMTY+TTI4WDIxPk0yN1gxOD5NMjlYMTE+TTI4WDE3Pk0yOFgxMT5NMjhYMjI+TTI3 WDE0Pk0yOFgxOD5NMjdYMTU+TTI4WDEzPk0yN1gxMT5NMjhYMjM+TTI3WDI1Pk0yOFgxND5NMjhY MjU+TTI3WDIzPk0yN1gyMj5NMjhYMjQ+TTI3WDIxPk0yN1gxMz5NMjdYMTk+TTI3WDE3Pk0yNlgx MT5NMjZYMjM+TTI2WDIxPk0yNlgyMj5NMjZYMjA+TTI2WDE2Pk0yNVgyMT5NMTdYMjI+TTE1WDE1 Pk0yMFgxND5NMjBYMTY+TTE4WDE4Pk0yOFgxMj5NMjdYMjQ+TTI1WDE3Pk0yN1gyMD5NMjZYMTg+ TTI2WDE3Pk0yN1gxNj5NMjZYMTk+TTI1WDE4Pk0yNlgyND5NMjVYMjA+TTI0WDE3Pk0yM1gxOD5N MjVYMTM+TTI2WDEzPk0xN1gyMz5NMTZYMTY+TTI2WDEyPk0yNVgxMj5NMjZYMTU+TTI0WDE5Pk0y NVgyMz5NMjVYMjQ+TTI1WDI1Pk0yNFgyMD5NMjVYMTk+TTI0WDIxPk0yM1gxNz5NMjJYMjE+TTI0 WDE0Pk0yM1gyMj5NMjRYMjQ+TTIyWDIwPk0yNFgxMz5NMjVYMTE+TTI0WDEyPk0yNVgxNT5NMjNY MTU+TTI1WDE2Pk0yNFgyMj5NMjNYMTM+TTI0WDE4Pk0yM1gxND5NMjJYMjI+TTIxWDIwPk0yNFgy NT5NMjNYMTY+TTIyWDI1Pk0yMVgxOT5NMjJYMTQ+TTIzWDExPk0yMlgxNT5NMjFYMTg+TTIyWDE5 Pk0yMVgxNz5NMjBYMTc+TTE5WDE3Pk0yMVgyND5NMjFYMTI+TTIwWDIyPk0xOVgxNj5NMThYMjU+ TTE5WDIxPk0xOVgyMD5NMThYMjQ+TTIwWDEyPk0xOVgxMT5NMjNYMjA+TTIyWDI0Pk0yMlgxNj5N MjFYMjE+TTI1WDE0Pk0yM1gxOT5NMjNYMjQ+TTIwWDI0Pk0xOVgxMj5NMThYMTU+TTE3WDE0Pk0x NlgxOD5NMTRYMjU+TTE2WDIyPk0xNlgyMD5NMTdYMTc+TTIyWDEyPk0yMVgxMT5NMjBYMTU+TTE4 WDIyPk0xOVgyND5NMTlYMTg+TTE4WDIxPk0xN1gxNj5NMTdYMTg+TTE2WDIxPk0xNVgyMD5NMTlY MjI+TTE4WDIwPk0xOFgxMT5NMTdYMTk+TTE2WDE3Pk0xNVgyMT5NMTZYMTQ+TTE2WDEzPk0xNVgy Mj5NMTRYMjA+TTE3WDI1Pk0xNlgxOT5NMTRYMjE+TTEzWDI0Pk0xMlgxMj5NMTZYMjQ+TTE1WDIz Pk0xNFgxNj5NMTZYMTU+TTE1WDI1Pk0xNVgxMT5NMTVYMTI+TTE0WDE1Pk0xM1gxND5NMTRYMjI+ TTEzWDIwPk0xMlgxMz5NMTFYMTE+TTIyWDIzPk0yMVgxNT5NMjFYMTY+TTIwWDIxPk0yMFgyMD5N MThYMTc+TTE5WDI1Pk0xOFgyMz5NMjFYMTM+TTE1WDE3Pk0xNVgxOD5NMThYMTk+TTE3WDI0Pk0x NlgxMj5NMTdYMTM+TTIwWDI1Pk0xOVgyMz5NMTVYMTk+TTE0WDEzPk0xM1gxOD5NMTVYMTM+TTE3 WDEyPk0xNlgxMT5NMThYMTM+TTE4WDEyPk0xNFgxMT5NMTRYMjQ+TTEzWDE5Pk0xNVgxND5NMTdY MjA+TTIwWDExPk0yMFgxMz5NMjFYMTQ+TTE1WDI0Pk0xNFgxMj5NMTNYMjI+TTE0WDIzPk0xM1gy Mz5NMTRYMTk+TTE3WDE1Pk0xNlgyNT5NMTdYMTE+TTE4WDE0Pk0xOVgxOT5NMjFYMjU+TTEzWDEy Pk0xM1gxMT5NMTRYMTg+TTEzWDEzPk0xMlgxMT5NMTVYMTY+TTE0WDE0Pk0yN1gxMj5NMTdYMjE+ TTIwWDIzPk0yMlgxMz5NMjFYMjI+TTI0WDE2Pk0yNFgxNT5NMjZYMjU+TTIzWDI1Pk0yNlgxND5N MjNYMTI+TTIyWDE4Pk0yNFgxMT5NMTZYMjM+TTE5WDE0Pk0xOVgxMz5NMjFYMjM+TTIyWDE3Pk0y M1gyMz5NMjNYMjE+TTI1WDIyPk0xOFgxNj5NMTlYMTU+TTIwWDE4Pk0yMFgxOT5NMjJYMTE+TTI0 WDIzPkMxNTY+QzExOD5DMTQzPkMxMzc+QzE0Nz5DMTA2PkMxNjg+QzExMz5DMTYzPkMxNTU+QzEw NT5DMTQ2PkMxODc+QTE1MD5DMTM5PkMxODA+QzE2ND5DMTkzPkMxNTc+QTE5MT5DMTU4PkIxODg+ QTE1OT5DMTg0PkMxMjE+QzE1ND5CMTcxPkExMDU+QzEzMT5DMTA0PkIxMDQ+QzE2MT5DMTExPkIx NDU+QzE2MD5CMTU1PkExNjM+QzExMj5DMTQyPkIxNDg+QzEzMz5CMTk4PkExOTg+QTExNT5DMTE0 PkIxNTc+QTE1Nj5DMTc1PkIxNDQ+QTEyMD5DMTczPkIxODQ+QTE3ND5DMTI2PkIxMDc+QTEzOT5D MTk0PkIxOTQ+QTE5ND5DMTE2PkIxMTY+QzE2Nj5CMTYwPkIxMTA+QTExMD5DMTI4PkIxMjg+QTEy OD5DMTc5PkIxNjI+QTE1ND5DMTg2PkIxODc+QTE3OT5DMTI0PkIxODE+QTEwMT5DMTUzPkIxNTg+ QTEzNj5DMTM1PkMxNzY+QTE5Mj5CMTMzPkExMzM+QzE3Nz5CMTc3PkExNzc+QzE4NT5DMTAzPkIx NDE+QTE0MT5DMTgzPkExNjI+QzE5Mj5DMTI5PkIxNzk+QzE0ND5CMTI0PkIxODM+QzEyNz5CMTI3 PkExMjc+QjEwOD5BMTEyPkIxNTM+QTE1Mz5DMTY3PkIxNjc+QTE4Nj5BMTIyPkMxNjI+QTE0ND5C MTQ5PkMxNzQ+QjEzMT5BMTg1PkMxNDE+QjEwNj5BMTI2PkExNjc+QzE0MD5CMTIyPkExNzA+QzE5 OD5CMTQzPkMxMTc+QzEyMz5CMTIzPkExNDc+QTEwNj5DMjAwPkIxNjk+QzE5MT5CMTc1PkExMjM+ QjExOD5BMTgyPkMxMzI+QjE1MT5BMTQ1PkExMDQ+QTEwOT5DMTU5PkMxNTA+QjExOT5BMTE5PkEx Nzg+QjE2ND5CMTE0PkExNjQ+QzE4MT5BMTAyPkMxMjI+QjEzND5BMTU3PkExMTY+QzE5NT5CMTkx PkIxMTE+QzE3Mj5CMTcyPkExMTg+QjEyOT5BMTI5PkMxNDk+QTEwNz5DMTcwPkIxOTc+QTE5Nz5B MTczPkIxNjg+QTEzMj5DMTA3PkIxNjU+QTE2MD5BMTMxPkMxODg+QTE2OD5CMTA5PkMxNzg+QTE4 OT5BMTQ4PkMxMTk+QzE5MD5DMTIwPkIxNjY+QjE3Nj5DMTA4PkIxMzU+QjEzOT5BMTAzPkIxNzg+ QTE2OT5CMTMyPkMxMjU+QzEzOD5CMTYzPkExMTE+QjE3MD5DMTEwPkExNjU+QzE1MT5DMTY5PkMx OTk+QTEzOD5DMTgyPkExMzU+QjEwMT5CMTQyPkMxMDE+QzE0OD5CMTkzPkIxNTI+QTE1OD5BMTk5 PkMxMzY+QjEzNz5BMTYxPkIxMjA+QTEwOD5BMTQ5PkExMjU+QjExMz5BMTg0PkMxNzE+QTEzND5B MTc1PkExMjQ+QjE1MD5CMTYxPkIxMDI+QTE0Nj5BMTg3PkMxMzA+QjE5Mj5CMjAwPkEyMDA+QTE0 Mj5BMTgzPkMxMDI+QjEwNT5CMTU2PkExNzY+QzE2NT5CMTQ3PkExMzc+QTE5Nj5CMTkwPkExOTA+ QjEyNT5DMTM0PkMxODk+QjEyNj5CMTg2PkExNjY+QjEzNj5CMTk1PkExOTU+QjE1ND5CMTM4PkIx MTI+QjE3Mz5BMTE3PkIxNTk+QjE4Mj5BMTgxPkExNDA+QzE0NT5CMTE3PkExNTI+QTE5Mz5DMTk3 PkIxMzA+QTE3Mj5BMTEzPkExNTE+QjExNT5BMTQzPkIxNDA+QjE4NT5CMTAzPkExMjE+QTE4MD5B MTMwPkExNzE+QjE5OT5DMTk2PkIxNDY+QjE4MD5DMTE1PkIxNzQ+QjEyMT5BMTg4PkIxOTY+QjE4 OT5DMTUyPkMxMDk+QTE1NT5BMTE0Pk0xNFgxNz5NMTNYMTU+TTEzWDE2Pk0xM1gxNz5NMTJYMTc+ TTEyWDIxPk0xMlgyNT5NMTJYMTQ+TTEzWDI1Pk0xMlgxNT5NMTNYMjE+TTEyWDE2Pk0xMlgxOD5N MTJYMTk+TTEyWDIwPk0xMlgyMj5NMTJYMjM+TTEyWDI0Pk0xMVgyNT5NMTFYMjQ+TTExWDIzPk0x MVgyMj5NMTFYMjE+TTExWDIwPk0xMVgxOT5NMTFYMTg+TTExWDE3Pk0xMVgxNj5NMTFYMTU+TTEx WDE0Pk0xMVgxMz5NMTFYMTI+e308TTExWDEyPE0xMVgxMzxNMTFYMTQ8TTExWDE1PE0xMVgxNjxN MTFYMTc8TTExWDE4PE0xMVgxOTxNMTFYMjA8TTExWDIxPE0xMVgyMjxNMTFYMjM8TTExWDI0PE0x MVgyNTxNMTJYMjQ8TTEyWDIzPE0xMlgyMjxNMTJYMjA8TTEyWDE5PE0xMlgxODxNMTJYMTY8TTEz WDIxPE0xMlgxNTxNMTNYMjU8TTEyWDE0PE0xMlgyNTxNMTJYMjE8TTEyWDE3PE0xM1gxNzxNMTNY MTY8TTEzWDE1PE0xNFgxNzxBMTE0PEExNTU8QzEwOTxDMTUyPEIxODk8QjE5NjxBMTg4PEIxMjE8 QjE3NDxDMTE1PEIxODA8QjE0NjxDMTk2PEIxOTk8QTE3MTxBMTMwPEExODA8QTEyMTxCMTAzPEIx ODU8QjE0MDxBMTQzPEIxMTU8QTE1MTxBMTEzPEExNzI8QjEzMDxDMTk3PEExOTM8QTE1MjxCMTE3 PEMxNDU8QTE0MDxBMTgxPEIxODI8QjE1OTxBMTE3PEIxNzM8QjExMjxCMTM4PEIxNTQ8QTE5NTxC MTk1PEIxMzY8QTE2NjxCMTg2PEIxMjY8QzE4OTxDMTM0PEIxMjU8QTE5MDxCMTkwPEExOTY8QTEz NzxCMTQ3PEMxNjU8QTE3NjxCMTU2PEIxMDU8QzEwMjxBMTgzPEExNDI8QTIwMDxCMjAwPEIxOTI8 QzEzMDxBMTg3PEExNDY8QjEwMjxCMTYxPEIxNTA8QTEyNDxBMTc1PEExMzQ8QzE3MTxBMTg0PEIx MTM8QTEyNTxBMTQ5PEExMDg8QjEyMDxBMTYxPEIxMzc8QzEzNjxBMTk5PEExNTg8QjE1MjxCMTkz PEMxNDg8QzEwMTxCMTQyPEIxMDE8QTEzNTxDMTgyPEExMzg8QzE5OTxDMTY5PEMxNTE8QTE2NTxD MTEwPEIxNzA8QTExMTxCMTYzPEMxMzg8QzEyNTxCMTMyPEExNjk8QjE3ODxBMTAzPEIxMzk8QjEz NTxDMTA4PEIxNzY8QjE2NjxDMTIwPEMxOTA8QzExOTxBMTQ4PEExODk8QzE3ODxCMTA5PEExNjg8 QzE4ODxBMTMxPEExNjA8QjE2NTxDMTA3PEExMzI8QjE2ODxBMTczPEExOTc8QjE5NzxDMTcwPEEx MDc8QzE0OTxBMTI5PEIxMjk8QTExODxCMTcyPEMxNzI8QjExMTxCMTkxPEMxOTU8QTExNjxBMTU3 PEIxMzQ8QzEyMjxBMTAyPEMxODE8QTE2NDxCMTE0PEIxNjQ8QTE3ODxBMTE5PEIxMTk8QzE1MDxD MTU5PEExMDk8QTEwNDxBMTQ1PEIxNTE8QzEzMjxBMTgyPEIxMTg8QTEyMzxCMTc1PEMxOTE8QjE2 OTxDMjAwPEExMDY8QTE0NzxCMTIzPEMxMjM8QzExNzxCMTQzPEMxOTg8QTE3MDxCMTIyPEMxNDA8 QTE2NzxBMTI2PEIxMDY8QzE0MTxBMTg1PEIxMzE8QzE3NDxCMTQ5PEExNDQ8QzE2MjxBMTIyPEEx ODY8QjE2NzxDMTY3PEExNTM8QjE1MzxBMTEyPEIxMDg8QTEyNzxCMTI3PEMxMjc8QjE4MzxCMTI0 PEMxNDQ8QjE3OTxDMTI5PEMxOTI8QTE2MjxDMTgzPEExNDE8QjE0MTxDMTAzPEMxODU8QTE3NzxC MTc3PEMxNzc8QTEzMzxCMTMzPEExOTI8QzE3NjxDMTM1PEExMzY8QjE1ODxDMTUzPEExMDE8QjE4 MTxDMTI0PEExNzk8QjE4NzxDMTg2PEExNTQ8QjE2MjxDMTc5PEExMjg8QjEyODxDMTI4PEExMTA8 QjExMDxCMTYwPEMxNjY8QjExNjxDMTE2PEExOTQ8QjE5NDxDMTk0PEExMzk8QjEwNzxDMTI2PEEx NzQ8QjE4NDxDMTczPEExMjA8QjE0NDxDMTc1PEExNTY8QjE1NzxDMTE0PEExMTU8QTE5ODxCMTk4 PEMxMzM8QjE0ODxDMTQyPEMxMTI8QTE2MzxCMTU1PEMxNjA8QjE0NTxDMTExPEMxNjE8QjEwNDxD MTA0PEMxMzE8QTEwNTxCMTcxPEMxNTQ8QzEyMTxDMTg0PEExNTk8QjE4ODxDMTU4PEExOTE8QzE1 NzxDMTkzPEMxNjQ8QzE4MDxDMTM5PEExNTA8QzE4NzxDMTQ2PEMxMDU8QzE1NTxDMTYzPEMxMTM8 QzE2ODxDMTA2PEMxNDc8QzEzNzxDMTQzPEMxMTg8QzE1NjxNMjRYMjM8TTIyWDExPE0yMFgxOTxN MjBYMTg8TTE5WDE1PE0xOFgxNjxNMjVYMjI8TTIzWDIxPE0yM1gyMzxNMjJYMTc8TTIxWDIzPE0x OVgxMzxNMTlYMTQ8TTE2WDIzPE0yNFgxMTxNMjJYMTg8TTIzWDEyPE0yNlgxNDxNMjNYMjU8TTI2 WDI1PE0yNFgxNTxNMjRYMTY8TTIxWDIyPE0yMlgxMzxNMjBYMjM8TTE3WDIxPE0yN1gxMjxNMTRY MTQ8TTE1WDE2PE0xMlgxMTxNMTNYMTM8TTE0WDE4PE0xM1gxMTxNMTNYMTI8TTIxWDI1PE0xOVgx OTxNMThYMTQ8TTE3WDExPE0xNlgyNTxNMTdYMTU8TTE0WDE5PE0xM1gyMzxNMTRYMjM8TTEzWDIy PE0xNFgxMjxNMTVYMjQ8TTIxWDE0PE0yMFgxMzxNMjBYMTE8TTE3WDIwPE0xNVgxNDxNMTNYMTk8 TTE0WDI0PE0xNFgxMTxNMThYMTI8TTE4WDEzPE0xNlgxMTxNMTdYMTI8TTE1WDEzPE0xM1gxODxN MTRYMTM8TTE1WDE5PE0xOVgyMzxNMjBYMjU8TTE3WDEzPE0xNlgxMjxNMTdYMjQ8TTE4WDE5PE0x NVgxODxNMTVYMTc8TTIxWDEzPE0xOFgyMzxNMTlYMjU8TTE4WDE3PE0yMFgyMDxNMjBYMjE8TTIx WDE2PE0yMVgxNTxNMjJYMjM8TTExWDExPE0xMlgxMzxNMTNYMjA8TTE0WDIyPE0xM1gxNDxNMTRY MTU8TTE1WDEyPE0xNVgxMTxNMTVYMjU8TTE2WDE1PE0xNFgxNjxNMTVYMjM8TTE2WDI0PE0xMlgx MjxNMTNYMjQ8TTE0WDIxPE0xNlgxOTxNMTdYMjU8TTE0WDIwPE0xNVgyMjxNMTZYMTM8TTE2WDE0 PE0xNVgyMTxNMTZYMTc8TTE3WDE5PE0xOFgxMTxNMThYMjA8TTE5WDIyPE0xNVgyMDxNMTZYMjE8 TTE3WDE4PE0xN1gxNjxNMThYMjE8TTE5WDE4PE0xOVgyNDxNMThYMjI8TTIwWDE1PE0yMVgxMTxN MjJYMTI8TTE3WDE3PE0xNlgyMDxNMTZYMjI8TTE0WDI1PE0xNlgxODxNMTdYMTQ8TTE4WDE1PE0x OVgxMjxNMjBYMjQ8TTIzWDI0PE0yM1gxOTxNMjVYMTQ8TTIxWDIxPE0yMlgxNjxNMjJYMjQ8TTIz WDIwPE0xOVgxMTxNMjBYMTI8TTE4WDI0PE0xOVgyMDxNMTlYMjE8TTE4WDI1PE0xOVgxNjxNMjBY MjI8TTIxWDEyPE0yMVgyNDxNMTlYMTc8TTIwWDE3PE0yMVgxNzxNMjJYMTk8TTIxWDE4PE0yMlgx NTxNMjNYMTE8TTIyWDE0PE0yMVgxOTxNMjJYMjU8TTIzWDE2PE0yNFgyNTxNMjFYMjA8TTIyWDIy PE0yM1gxNDxNMjRYMTg8TTIzWDEzPE0yNFgyMjxNMjVYMTY8TTIzWDE1PE0yNVgxNTxNMjRYMTI8 TTI1WDExPE0yNFgxMzxNMjJYMjA8TTI0WDI0PE0yM1gyMjxNMjRYMTQ8TTIyWDIxPE0yM1gxNzxN MjRYMjE8TTI1WDE5PE0yNFgyMDxNMjVYMjU8TTI1WDI0PE0yNVgyMzxNMjRYMTk8TTI2WDE1PE0y NVgxMjxNMjZYMTI8TTE2WDE2PE0xN1gyMzxNMjZYMTM8TTI1WDEzPE0yM1gxODxNMjRYMTc8TTI1 WDIwPE0yNlgyNDxNMjVYMTg8TTI2WDE5PE0yN1gxNjxNMjZYMTc8TTI2WDE4PE0yN1gyMDxNMjVY MTc8TTI3WDI0PE0yOFgxMjxNMThYMTg8TTIwWDE2PE0yMFgxNDxNMTVYMTU8TTE3WDIyPE0yNVgy MTxNMjZYMTY8TTI2WDIwPE0yNlgyMjxNMjZYMjE8TTI2WDIzPE0yNlgxMTxNMjdYMTc8TTI3WDE5 PE0yN1gxMzxNMjdYMjE8TTI4WDI0PE0yN1gyMjxNMjdYMjM8TTI4WDI1PE0yOFgxNDxNMjdYMjU8 TTI4WDIzPE0yN1gxMTxNMjhYMTM8TTI3WDE1PE0yOFgxODxNMjdYMTQ8TTI4WDIyPE0yOFgxMTxN MjhYMTc8TTI5WDExPE0yN1gxODxNMjhYMjE8TTI4WDE2PE0yOFgxNTxNMjhYMjA8TTI5WDE0PE0y OVgyNTxNMjlYMjE8TTI4WDE5PE0yOVgxODxNMjlYMTc8TTI5WDEzPE0yOVgyNDxNMjlYMTY8TTI5 WDIzPE0yOVgxOTxNMzBYMjU8TTI5WDIyPE0zMFgyMTxNMzBYMjI8TTI5WDEyPE0yOVgxNTxNMzBY MTg8TTMwWDIwPE0zMFgyNDxNMzBYMjM8TTI5WDIwPE0zMFgxNDxNMzBYMTM8TTMwWDE3PE0zMFgx MjxNMzBYMTE8TTMwWDE2PE0zMFgxNTxNMzBYMTkNCj4gK291dHB1dChnbGliYy5ydGxkLmR5bmFt aWNfc29ydD0yKTogTTMwWDE5Pk0zMFgxNT5NMzBYMTY+TTMwWDExPk0zMFgxMj5NMzBYMTc+TTMw WDEzPk0zMFgxND5NMjlYMjA+TTMwWDIzPk0zMFgyND5NMzBYMjA+TTMwWDE4Pk0yOVgxNT5NMjlY MTI+TTMwWDIyPk0zMFgyMT5NMjlYMjI+TTMwWDI1Pk0yOVgxOT5NMjlYMjM+TTI5WDE2Pk0yOVgy ND5NMjlYMTM+TTI5WDE3Pk0yOVgxOD5NMjhYMTk+TTI5WDIxPk0yOVgyNT5NMjlYMTQ+TTI4WDIw Pk0yOFgxNT5NMjhYMTY+TTI4WDIxPk0yN1gxOD5NMjlYMTE+TTI4WDE3Pk0yOFgxMT5NMjhYMjI+ TTI4WDI0Pk0yOFgyMz5NMjdYMjE+TTI4WDEzPk0yN1gyMD5NMjdYMTk+TTI2WDE0Pk0yN1gyNT5N MjhYMTg+TTI3WDExPk0yOFgyNT5NMjdYMjQ+TTI2WDI0Pk0yN1gxNT5NMjdYMTQ+TTI3WDEzPk0y NlgyMz5NMjdYMTc+TTI2WDIyPk0yNVgxMz5NMjhYMTQ+TTI3WDE2Pk0yNlgxOT5NMjZYMTg+TTI3 WDIzPk0yN1gyMj5NMjZYMTc+TTI1WDE4Pk0yNlgyMT5NMjVYMTc+TTI2WDIwPk0yNlgxNT5NMjZY MTM+TTI1WDE5Pk0yNFgxND5NMjVYMjM+TTI2WDExPk0yNlgyNT5NMjVYMTY+TTI1WDE1Pk0yNFgy Mj5NMjVYMjE+TTI1WDIwPk0yNFgyMT5NMjVYMjU+TTI1WDI0Pk0yNFgyMD5NMjNYMTM+TTIyWDE1 Pk0yNVgxND5NMjRYMTk+TTIzWDE3Pk0yNFgyNT5NMjNYMjQ+TTI0WDEzPk0yM1gxNT5NMjRYMTg+ TTIzWDE0Pk0yMlgxMT5NMjRYMTU+TTIzWDIyPk0yNFgxMT5NMjNYMTk+TTIyWDIxPk0yNFgyND5N MjNYMjE+TTIyWDIwPk0yM1gyNT5NMjJYMTk+TTIxWDI0Pk0yMFgyMz5NMjJYMjI+TTI1WDExPk0y M1gxNj5NMjJYMTg+TTIzWDIwPk0yMlgxNz5NMjFYMjE+TTIxWDIwPk0yMFgyND5NMjJYMTQ+TTIy WDEzPk0yMVgxMT5NMjFYMTc+TTIyWDIzPk0yMVgxNj5NMjBYMjU+TTE5WDIzPk0xOFgxNj5NMjFY MjI+TTIwWDIwPk0yMFgxOT5NMjFYMTM+TTIwWDE4Pk0xOVgxMz5NMjFYMTg+TTIwWDIxPk0xOVgy ND5NMThYMTI+TTIwWDE0Pk0yMFgxMz5NMjJYMjU+TTIwWDEyPk0yMFgxNT5NMTlYMTQ+TTE4WDIy Pk0xOVgxOD5NMjBYMTc+TTE5WDE3Pk0xOVgxNj5NMThYMjE+TTE3WDIwPk0xOVgxOT5NMThYMTM+ TTE3WDExPk0xOFgxNz5NMTlYMjU+TTE4WDE1Pk0xN1gyNT5NMThYMTk+TTE3WDI0Pk0xNlgxOT5N MTVYMTc+TTE3WDIxPk0xNlgyND5NMThYMjM+TTE3WDE2Pk0xNlgyNT5NMTlYMTU+TTE4WDI1Pk0x N1gyMz5NMTZYMjM+TTE1WDIzPk0xOFgxND5NMTdYMTQ+TTE2WDE0Pk0xN1gxOD5NMTZYMTM+TTE3 WDIyPk0xNlgxMj5NMTVYMjI+TTE0WDE2Pk0xN1gxMj5NMTZYMjI+TTE1WDEyPk0xNlgxMT5NMTVY MTE+TTE2WDE1Pk0xNVgyNT5NMTRYMTU+TTEzWDE0Pk0xNVgxOD5NMTZYMjE+TTE1WDE2Pk0xNFgy MT5NMTVYMTQ+TTE2WDIwPk0xNVgxMz5NMTRYMjI+TTE1WDIwPk0xNFgyMD5NMTNYMjA+TTE0WDEx Pk0xNVgxOT5NMTRYMjQ+TTEzWDE5Pk0xNFgxMz5NMTNYMTg+TTEyWDEzPk0xNVgyND5NMTRYMjM+ TTEzWDEyPk0xNFgxMj5NMTNYMTE+TTEyWDExPk0xMVgxMT5NMjFYMTI+TTIwWDExPk0xOVgxMT5N MThYMTE+TTE3WDE1Pk0xNlgxOD5NMTRYMjU+TTE0WDE5Pk0xM1gyND5NMTNYMjM+TTEzWDIyPk0x MlgxMj5NMjJYMTI+TTIxWDE1Pk0xOVgyMj5NMThYMjA+TTE2WDE3Pk0xNFgxND5NMjRYMTI+TTIz WDIzPk0yMlgxNj5NMjFYMTQ+TTIwWDIyPk0xOFgyND5NMTZYMTY+TTI2WDEyPk0yNFgxNj5NMjNY MTE+TTIxWDIzPk0xOVgyMD5NMTdYMTc+TTI3WDEyPk0yNlgxNj5NMjVYMjI+TTI0WDE3Pk0yM1gx OD5NMjFYMjU+TTE5WDEyPk0xN1gxOT5NMTVYMjE+TTE0WDE4Pk0xM1gxMz5NMjNYMTI+TTIxWDE5 Pk0xOVgyMT5NMTdYMTM+TTE1WDE1Pk0yNVgxMj5NMjRYMjM+TTIyWDI0Pk0yMFgxNj5NMThYMTg+ TTI4WDEyPkExNTA+QzE1OD5CMTEyPkExMTI+QzE2Nz5CMTQ2PkExNDY+QzE4MD5CMTgwPkExODA+ QzE0Mz5CMTQzPkExMTU+QzEyNj5CMTI2PkExMjY+QzE5MD5CMTkwPkExOTA+QzEzOD5CMTM4PkEx Mzg+QzE3ND5CMTc0PkExMDI+QzEyMj5CMTIyPkExMjI+QzE2Mj5CMTYyPkExNjI+QzE0Mj5CMTQy PkExNDI+QzEwMj5CMTAyPkExNzQ+QzE3Nj5CMTc2PkExNzY+QzExNT5CMTE1PkExNDM+QzE3Mj5C MTcyPkExNzI+QzE4Nz5CMTg3PkExODc+QzEzMD5CMTMwPkExMzA+QzExOD5CMTE4PkExMTg+QzE4 ND5CMTg0PkExODQ+QzE3MT5CMTcxPkExNzE+QzE2OD5CMTgyPkExODI+QzE4Mj5CMTY4PkExNjg+ QzEwOT5CMTA5PkExMDk+QzE1OT5CMTU5PkExNTk+QzEzND5CMTM0PkExMzQ+QzE0Nj5CMTY3PkEx Njc+QzE0MD5CMTQwPkExNDA+QzE2Mz5CMTYzPkExNjM+QzExMj5CMTU4PkExNTg+QzE2ND5CMTY0 PkExNjQ+QzEzMT5CMTMxPkExMzE+QzE4OD5CMTg4PkExODg+QzE5OT5CMTk5PkExOTk+QzExND5C MTE0PkExMTQ+QzEwNj5CMTA2PkExMDY+QzIwMD5CMjAwPkEyMDA+QzE4Mz5CMTgzPkExODM+QzE1 Mj5CMTUyPkExNTI+QzE0Nz5CMTQ3PkExNDc+QzE1MD5CMTUwPkExOTg+QzE0ND5CMTQ0PkExNDQ+ QzE5MT5CMTkxPkExOTE+QzEwOD5CMTA4PkExMDg+QzEzOT5CMTM5PkExMzk+QzE5ND5CMTk0PkEx OTQ+QzE2Nj5CMTY2PkExNjY+QzEyMD5CMTIwPkExMjA+QzEyMz5CMTIzPkExMjM+QzEzMj5CMTMy PkExMzI+QzEwNz5CMTA3PkExMDc+QzE3MD5CMTcwPkExNzA+QzE5OD5CMTk4PkExNTY+QzEyNT5C MTI1PkExMjU+QzEyMT5CMTIxPkExMjE+QzE5Mz5CMTkzPkExOTM+QzE5Nz5CMTk3PkExOTc+QzE3 NT5CMTc1PkExNzU+QzE5Nj5CMTk2PkExOTY+QzEwNT5CMTA1PkExMDU+QzE4MT5CMTgxPkExODE+ QzExMz5CMTEzPkExMTM+QzEzNz5CMTM3PkExMzc+QzE1NT5CMTU1PkExNTU+QzE1Nj5CMTU2PkEx MTA+QzEyOD5CMTI4PkExMjg+QzE3OT5CMTc5PkExNzk+QzEyND5CMTI0PkExMjQ+QzE1MT5CMTUx PkExNTE+QzE3OD5CMTc4PkExNzg+QzEwND5CMTA0PkExMDQ+QzExMT5CMTExPkExMTE+QzE0OD5C MTQ4PkExNDg+QzE2OT5CMTY5PkExNjk+QzEyOT5CMTI5PkExMjk+QzE0OT5CMTQ5PkExNDk+QzE4 OT5CMTg5PkExODk+QzExOT5CMTE5PkExMTk+QzE1ND5CMTU0PkExNTQ+QzEzNj5CMTM2PkExMzY+ QzEzNT5CMTM1PkExMzU+QzExNj5CMTE2PkExMTY+QzE0NT5CMTQ1PkExNDU+QzE2MT5CMTYxPkEx NjE+QzE3Mz5CMTczPkExNzM+QzE1Nz5CMTU3PkExNTc+QzE5NT5CMTk1PkExOTU+QzE4Nj5CMTg2 PkExODY+QzE2MD5CMTYwPkExNjA+QzE1Mz5CMTUzPkExNTM+QzExNz5CMTE3PkExMTc+QzE2NT5C MTY1PkExNjU+QzEwMT5CMTAxPkExMDE+QzEwMz5CMTAzPkExMDM+QzE5Mj5CMTkyPkExOTI+QzE3 Nz5CMTc3PkExNzc+QzE4NT5CMTg1PkExODU+QzE0MT5CMTQxPkExNDE+QzEzMz5CMTMzPkExMzM+ QzEyNz5CMTI3PkExMjc+QzExMD5CMTEwPk0xNFgxNz5NMTNYMTU+TTEzWDE2Pk0xM1gxNz5NMTJY MTc+TTEyWDIxPk0xMlgyNT5NMTJYMTQ+TTEzWDI1Pk0xMlgxNT5NMTNYMjE+TTEyWDE2Pk0xMlgx OD5NMTJYMTk+TTEyWDIwPk0xMlgyMj5NMTJYMjM+TTEyWDI0Pk0xMVgyNT5NMTFYMjQ+TTExWDIz Pk0xMVgyMj5NMTFYMjE+TTExWDIwPk0xMVgxOT5NMTFYMTg+TTExWDE3Pk0xMVgxNj5NMTFYMTU+ TTExWDE0Pk0xMVgxMz5NMTFYMTI+e308TTExWDEyPE0xMVgxMzxNMTFYMTQ8TTExWDE1PE0xMVgx NjxNMTFYMTc8TTExWDE4PE0xMVgxOTxNMTFYMjA8TTExWDIxPE0xMVgyMjxNMTFYMjM8TTExWDI0 PE0xMVgyNTxNMTJYMjQ8TTEyWDIzPE0xMlgyMjxNMTJYMjA8TTEyWDE5PE0xMlgxODxNMTJYMTY8 TTEzWDIxPE0xMlgxNTxNMTNYMjU8TTEyWDE0PE0xMlgyNTxNMTJYMjE8TTEyWDE3PE0xM1gxNzxN MTNYMTY8TTEzWDE1PE0xNFgxNzxCMTEwPEMxMTA8QTEyNzxCMTI3PEMxMjc8QTEzMzxCMTMzPEMx MzM8QTE0MTxCMTQxPEMxNDE8QTE4NTxCMTg1PEMxODU8QTE3NzxCMTc3PEMxNzc8QTE5MjxCMTky PEMxOTI8QTEwMzxCMTAzPEMxMDM8QTEwMTxCMTAxPEMxMDE8QTE2NTxCMTY1PEMxNjU8QTExNzxC MTE3PEMxMTc8QTE1MzxCMTUzPEMxNTM8QTE2MDxCMTYwPEMxNjA8QTE4NjxCMTg2PEMxODY8QTE5 NTxCMTk1PEMxOTU8QTE1NzxCMTU3PEMxNTc8QTE3MzxCMTczPEMxNzM8QTE2MTxCMTYxPEMxNjE8 QTE0NTxCMTQ1PEMxNDU8QTExNjxCMTE2PEMxMTY8QTEzNTxCMTM1PEMxMzU8QTEzNjxCMTM2PEMx MzY8QTE1NDxCMTU0PEMxNTQ8QTExOTxCMTE5PEMxMTk8QTE4OTxCMTg5PEMxODk8QTE0OTxCMTQ5 PEMxNDk8QTEyOTxCMTI5PEMxMjk8QTE2OTxCMTY5PEMxNjk8QTE0ODxCMTQ4PEMxNDg8QTExMTxC MTExPEMxMTE8QTEwNDxCMTA0PEMxMDQ8QTE3ODxCMTc4PEMxNzg8QTE1MTxCMTUxPEMxNTE8QTEy NDxCMTI0PEMxMjQ8QTE3OTxCMTc5PEMxNzk8QTEyODxCMTI4PEMxMjg8QTExMDxCMTU2PEMxNTY8 QTE1NTxCMTU1PEMxNTU8QTEzNzxCMTM3PEMxMzc8QTExMzxCMTEzPEMxMTM8QTE4MTxCMTgxPEMx ODE8QTEwNTxCMTA1PEMxMDU8QTE5NjxCMTk2PEMxOTY8QTE3NTxCMTc1PEMxNzU8QTE5NzxCMTk3 PEMxOTc8QTE5MzxCMTkzPEMxOTM8QTEyMTxCMTIxPEMxMjE8QTEyNTxCMTI1PEMxMjU8QTE1NjxC MTk4PEMxOTg8QTE3MDxCMTcwPEMxNzA8QTEwNzxCMTA3PEMxMDc8QTEzMjxCMTMyPEMxMzI8QTEy MzxCMTIzPEMxMjM8QTEyMDxCMTIwPEMxMjA8QTE2NjxCMTY2PEMxNjY8QTE5NDxCMTk0PEMxOTQ8 QTEzOTxCMTM5PEMxMzk8QTEwODxCMTA4PEMxMDg8QTE5MTxCMTkxPEMxOTE8QTE0NDxCMTQ0PEMx NDQ8QTE5ODxCMTUwPEMxNTA8QTE0NzxCMTQ3PEMxNDc8QTE1MjxCMTUyPEMxNTI8QTE4MzxCMTgz PEMxODM8QTIwMDxCMjAwPEMyMDA8QTEwNjxCMTA2PEMxMDY8QTExNDxCMTE0PEMxMTQ8QTE5OTxC MTk5PEMxOTk8QTE4ODxCMTg4PEMxODg8QTEzMTxCMTMxPEMxMzE8QTE2NDxCMTY0PEMxNjQ8QTE1 ODxCMTU4PEMxMTI8QTE2MzxCMTYzPEMxNjM8QTE0MDxCMTQwPEMxNDA8QTE2NzxCMTY3PEMxNDY8 QTEzNDxCMTM0PEMxMzQ8QTE1OTxCMTU5PEMxNTk8QTEwOTxCMTA5PEMxMDk8QTE2ODxCMTY4PEMx ODI8QTE4MjxCMTgyPEMxNjg8QTE3MTxCMTcxPEMxNzE8QTE4NDxCMTg0PEMxODQ8QTExODxCMTE4 PEMxMTg8QTEzMDxCMTMwPEMxMzA8QTE4NzxCMTg3PEMxODc8QTE3MjxCMTcyPEMxNzI8QTE0MzxC MTE1PEMxMTU8QTE3NjxCMTc2PEMxNzY8QTE3NDxCMTAyPEMxMDI8QTE0MjxCMTQyPEMxNDI8QTE2 MjxCMTYyPEMxNjI8QTEyMjxCMTIyPEMxMjI8QTEwMjxCMTc0PEMxNzQ8QTEzODxCMTM4PEMxMzg8 QTE5MDxCMTkwPEMxOTA8QTEyNjxCMTI2PEMxMjY8QTExNTxCMTQzPEMxNDM8QTE4MDxCMTgwPEMx ODA8QTE0NjxCMTQ2PEMxNjc8QTExMjxCMTEyPEMxNTg8QTE1MDxNMjhYMTI8TTE4WDE4PE0yMFgx NjxNMjJYMjQ8TTI0WDIzPE0yNVgxMjxNMTVYMTU8TTE3WDEzPE0xOVgyMTxNMjFYMTk8TTIzWDEy PE0xM1gxMzxNMTRYMTg8TTE1WDIxPE0xN1gxOTxNMTlYMTI8TTIxWDI1PE0yM1gxODxNMjRYMTc8 TTI1WDIyPE0yNlgxNjxNMjdYMTI8TTE3WDE3PE0xOVgyMDxNMjFYMjM8TTIzWDExPE0yNFgxNjxN MjZYMTI8TTE2WDE2PE0xOFgyNDxNMjBYMjI8TTIxWDE0PE0yMlgxNjxNMjNYMjM8TTI0WDEyPE0x NFgxNDxNMTZYMTc8TTE4WDIwPE0xOVgyMjxNMjFYMTU8TTIyWDEyPE0xMlgxMjxNMTNYMjI8TTEz WDIzPE0xM1gyNDxNMTRYMTk8TTE0WDI1PE0xNlgxODxNMTdYMTU8TTE4WDExPE0xOVgxMTxNMjBY MTE8TTIxWDEyPE0xMVgxMTxNMTJYMTE8TTEzWDExPE0xNFgxMjxNMTNYMTI8TTE0WDIzPE0xNVgy NDxNMTJYMTM8TTEzWDE4PE0xNFgxMzxNMTNYMTk8TTE0WDI0PE0xNVgxOTxNMTRYMTE8TTEzWDIw PE0xNFgyMDxNMTVYMjA8TTE0WDIyPE0xNVgxMzxNMTZYMjA8TTE1WDE0PE0xNFgyMTxNMTVYMTY8 TTE2WDIxPE0xNVgxODxNMTNYMTQ8TTE0WDE1PE0xNVgyNTxNMTZYMTU8TTE1WDExPE0xNlgxMTxN MTVYMTI8TTE2WDIyPE0xN1gxMjxNMTRYMTY8TTE1WDIyPE0xNlgxMjxNMTdYMjI8TTE2WDEzPE0x N1gxODxNMTZYMTQ8TTE3WDE0PE0xOFgxNDxNMTVYMjM8TTE2WDIzPE0xN1gyMzxNMThYMjU8TTE5 WDE1PE0xNlgyNTxNMTdYMTY8TTE4WDIzPE0xNlgyNDxNMTdYMjE8TTE1WDE3PE0xNlgxOTxNMTdY MjQ8TTE4WDE5PE0xN1gyNTxNMThYMTU8TTE5WDI1PE0xOFgxNzxNMTdYMTE8TTE4WDEzPE0xOVgx OTxNMTdYMjA8TTE4WDIxPE0xOVgxNjxNMTlYMTc8TTIwWDE3PE0xOVgxODxNMThYMjI8TTE5WDE0 PE0yMFgxNTxNMjBYMTI8TTIyWDI1PE0yMFgxMzxNMjBYMTQ8TTE4WDEyPE0xOVgyNDxNMjBYMjE8 TTIxWDE4PE0xOVgxMzxNMjBYMTg8TTIxWDEzPE0yMFgxOTxNMjBYMjA8TTIxWDIyPE0xOFgxNjxN MTlYMjM8TTIwWDI1PE0yMVgxNjxNMjJYMjM8TTIxWDE3PE0yMVgxMTxNMjJYMTM8TTIyWDE0PE0y MFgyNDxNMjFYMjA8TTIxWDIxPE0yMlgxNzxNMjNYMjA8TTIyWDE4PE0yM1gxNjxNMjVYMTE8TTIy WDIyPE0yMFgyMzxNMjFYMjQ8TTIyWDE5PE0yM1gyNTxNMjJYMjA8TTIzWDIxPE0yNFgyNDxNMjJY MjE8TTIzWDE5PE0yNFgxMTxNMjNYMjI8TTI0WDE1PE0yMlgxMTxNMjNYMTQ8TTI0WDE4PE0yM1gx NTxNMjRYMTM8TTIzWDI0PE0yNFgyNTxNMjNYMTc8TTI0WDE5PE0yNVgxNDxNMjJYMTU8TTIzWDEz PE0yNFgyMDxNMjVYMjQ8TTI1WDI1PE0yNFgyMTxNMjVYMjA8TTI1WDIxPE0yNFgyMjxNMjVYMTU8 TTI1WDE2PE0yNlgyNTxNMjZYMTE8TTI1WDIzPE0yNFgxNDxNMjVYMTk8TTI2WDEzPE0yNlgxNTxN MjZYMjA8TTI1WDE3PE0yNlgyMTxNMjVYMTg8TTI2WDE3PE0yN1gyMjxNMjdYMjM8TTI2WDE4PE0y NlgxOTxNMjdYMTY8TTI4WDE0PE0yNVgxMzxNMjZYMjI8TTI3WDE3PE0yNlgyMzxNMjdYMTM8TTI3 WDE0PE0yN1gxNTxNMjZYMjQ8TTI3WDI0PE0yOFgyNTxNMjdYMTE8TTI4WDE4PE0yN1gyNTxNMjZY MTQ8TTI3WDE5PE0yN1gyMDxNMjhYMTM8TTI3WDIxPE0yOFgyMzxNMjhYMjQ8TTI4WDIyPE0yOFgx MTxNMjhYMTc8TTI5WDExPE0yN1gxODxNMjhYMjE8TTI4WDE2PE0yOFgxNTxNMjhYMjA8TTI5WDE0 PE0yOVgyNTxNMjlYMjE8TTI4WDE5PE0yOVgxODxNMjlYMTc8TTI5WDEzPE0yOVgyNDxNMjlYMTY8 TTI5WDIzPE0yOVgxOTxNMzBYMjU8TTI5WDIyPE0zMFgyMTxNMzBYMjI8TTI5WDEyPE0yOVgxNTxN MzBYMTg8TTMwWDIwPE0zMFgyNDxNMzBYMjM8TTI5WDIwPE0zMFgxNDxNMzBYMTM8TTMwWDE3PE0z MFgxMjxNMzBYMTE8TTMwWDE2PE0zMFgxNTxNMzBYMTkNCg0KQWdhaW4sIEkgdGhpbmsgd2UgbmVl ZCBhIGNvbW1lbnQgaGVyZSBleHBsYWluaW5nIHRoZSBzYWxpZW50IGRpZmZlcmVuY2VzDQpiZXR3 ZWVuIHRoZSB0d28gc29ydCBhbGdvcml0aG1zIGFuZCB3aHkgdGhlIHNlY29uZCBpcyBkZXNpcmFi bGUgaW4gdGhpcyBjYXNlLg0KDQo+IGRpZmYgLS1naXQgYS9zY3JpcHRzL2Rzby1vcmRlcmluZy10 ZXN0LnB5IGIvc2NyaXB0cy9kc28tb3JkZXJpbmctdGVzdC5weQ0KPiBuZXcgZmlsZSBtb2RlIDEw MDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwLi42ZTJlMzZhYjg3DQo+IC0tLSAvZGV2L251bGwNCj4g KysrIGIvc2NyaXB0cy9kc28tb3JkZXJpbmctdGVzdC5weQ0KPiBAQCAtMCwwICsxLDk0NyBAQA0K PiArIyEvdXNyL2Jpbi9weXRob24zDQo+ICsjIEdlbmVyYXRlIHRlc3RjYXNlIGZpbGVzIGFuZCBN YWtlZmlsZSBmcmFnbWVudHMgZm9yIERTTyBzb3J0aW5nIHRlc3QNCj4gKyMgQ29weXJpZ2h0IChD KSAyMDIwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLg0KPiArIyBUaGlzIGZpbGUgaXMg cGFydCBvZiB0aGUgR05VIEMgTGlicmFyeS4NCj4gKyMNCj4gKyMgVGhlIEdOVSBDIExpYnJhcnkg aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yDQo+ICsjIG1v ZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMN Cj4gKyMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv bjsgZWl0aGVyDQo+ICsjIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KPiArIw0KPiArIyBUaGUgR05VIEMgTGlicmFyeSBp cyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KPiArIyBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50 eSBvZg0KPiArIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV UlBPU0UuICBTZWUgdGhlIEdOVQ0KPiArIyBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLg0KPiArIw0KPiArIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj b3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljDQo+ICsjIExpY2Vuc2UgYWxvbmcg d2l0aCB0aGUgR05VIEMgTGlicmFyeTsgaWYgbm90LCBzZWUNCj4gKyMgPGh0dHA6Ly93d3cuZ251 Lm9yZy9saWNlbnNlcy8+Lg0KDQpPSy4NCg0KPiArDQo+ICsiIiJHZW5lcmF0ZSB0ZXN0Y2FzZSBm aWxlcyBhbmQgTWFrZWZpbGUgZnJhZ21lbnRzIGZvciBEU08gc29ydGluZyB0ZXN0DQo+ICsNCj4g K1RoaXMgc2NyaXB0IHRha2VzIGEgc21hbGwgZGVzY3JpcHRpb24gc3RyaW5nIGxhbmd1YWdlLCBh bmQgZ2VuZXJhdGVzDQo+ICt0ZXN0Y2FzZXMgZm9yIGRpc3BsYXlpbmcgdGhlIEVMRiBkeW5hbWlj IGxpbmtlcidzIGRlcGVuZGVuY3kgc29ydGluZw0KPiArYmVoYXZpb3IsIGFsbG93aW5nIHZlcmlm aWNhdGlvbi4NCj4gKw0KPiArVGVzdGNhc2UgZGVzY3JpcHRpb25zIGFyZSBzZW1pY29sb24tc2Vw YXJhdGVkIGRlc2NyaXB0aW9uIHN0cmluZ3MsIGFuZA0KPiArdGhpcyB0b29sIGdlbmVyYXRlcyBh IHRlc3RjYXNlIGZyb20gdGhlIGRlc2NyaXB0aW9uLCBpbmNsdWRpbmcgbWFpbiBwcm9ncmFtLA0K PiArYXNzb2NpYXRlZCBtb2R1bGVzLCBhbmQgTWFrZWZpbGUgZnJhZ21lbnRzIGZvciBpbmNsdWRp bmcgaW50byBlbGYvTWFrZWZpbGUuDQo+ICsNCj4gK1RoaXMgYWxsb3dzIGF1dG9tYXRpb24gb2Yg d2hhdCBvdGhlcndpc2Ugd291bGQgYmUgdmVyeSBsYWJvcm91cyBtYW51YWwNCj4gK2NvbnN0cnVj dGlvbiBvZiBjb21wbGV4IGRlcGVuZGVuY3kgY2FzZXMsIGhvd2V2ZXIgaXQgbXVzdCBiZSBub3Rl ZCB0aGF0IHRoaXMNCj4gK2lzIG9ubHkgYSB0b29sIHRvIHNwZWVkIHVwIHRlc3RjYXNlIGNvbnN0 cnVjdGlvbiwgYW5kIHRodXMgdGhlIGdlbmVyYXRpb24NCj4gK2ZlYXR1cmVzIGFyZSBsYXJnZWx5 IG1lY2hhbmljYWwgaW4gbmF0dXJlOyBpbmNvbnNpc3RlbmNpZXMgb3IgZXJyb3JzIG1heSBvY2N1 cg0KPiAraWYgdGhlIGlucHV0IGRlc2NyaXB0aW9uIHdhcyBpdHNlbGYgZXJyb3Jvbm91cyBvciBo YXZlIHVuZm9yZXNlZW4gaW50ZXJhY3Rpb25zLg0KPiArDQo+ICtUaGUgZm9ybWF0IG9mIHRoZSBp bnB1dCB0ZXN0IGRlc2NyaXB0aW9uIGZpbGVzIGFyZToNCj4gKw0KPiArICAjIEVhY2ggdGVzdCBk ZXNjcmlwdGlvbiBoYXMgYSBuYW1lLCBsaW5lcyBvZiBkZXNjcmlwdGlvbiwNCj4gKyAgIyBhbmQg YW4gZXhwZWN0ZWQgb3V0cHV0IHNwZWNpZmljYXRpb24uIENvbW1lbnRzIHVzZSAnIycuDQo+ICsg IHRlc3RuYW1lMTogPHRlc3QtZGVzY3JpcHRpb24tbGluZT4NCj4gKyAgb3V0cHV0OiA8ZXhwZWN0 ZWQtb3V0cHV0LXN0cmluZz4NCj4gKw0KPiArICAjIFRlc3QgZGVzY3JpcHRpb25zIGNhbiB1c2Ug bXVsdGlwbGUgbGluZXMsIHdoaWNoIHdpbGwgYWxsIGJlIG1lcmdlZA0KPiArICAjIHRvZ2V0aGVy LCBzbyBvcmRlciBpcyBub3QgaW1wb3J0YW50Lg0KPiArICB0ZXN0bmFtZTE6IDx0ZXN0LWRlc2Ny aXB0aW9uLWxpbmU+DQo+ICsgIDx0ZXN0LWRlc2NyaXB0aW9uLWxpbmU+DQo+ICsgIDx0ZXN0LWRl c2NyaXB0aW9uLWxpbmU+DQo+ICsgIC4uLg0KPiArICBvdXRwdXQ6IDxleHBlY3RlZC1vdXRwdXQt c3RyaW5nPg0KPiArDQo+ICsgICMgTXVsdGlwbGUgZXhwZWN0ZWQgb3V0cHV0cyBjYW4gYWxzbyBi ZSBzcGVjaWZpZWQsIHdpdGggYW4gYXNzb2NpYXRlZA0KPiArICAjIHR1bmFibGUgb3B0aW9uIGlu ICgpLCB3aGljaCBtdWx0aXBsZSB0ZXN0cyB3aWxsIGJlIHJ1biB3aXRoIGVhY2gNCj4gKyAgIyBH TElCQ19UVU5BQkxFUz0uLi4gb3B0aW9uIHRyaWVkLg0KPiArICB0ZXN0bmFtZTM6DQo+ICsgIDx0 ZXN0LWRlc2NyaXB0aW9uLWxpbmU+DQo+ICsgIC4uLg0KPiArICBvdXRwdXQoPGdsaWJjLXR1bmFi bGUtc3RyaW5nMT4pOiA8ZXhwZWN0ZWQtb3V0cHV0LXN0cmluZy0xPg0KPiArICBvdXRwdXQoPGds aWJjLXR1bmFibGUtc3RyaW5nMj4pOiA8ZXhwZWN0ZWQtb3V0cHV0LXN0cmluZy0yPg0KPiArDQo+ ICtPbiB0aGUgZGVzY3JpcHRpb24gbGFuZ3VhZ2UgdXNlZCwgYW4gZXhhbXBsZSBkZXNjcmlwdGlv biBsaW5lIHN0cmluZzoNCj4gKw0KPiArICBhLT5iIS0+W2NkZWZdO2M9Pmc9Pmg7eytjOyVjOy1j fS0+YQ0KPiArDQo+ICtFYWNoIGlkZW50aWZpZXIgcmVwcmVzZW50cyBhIHNoYXJlZCBvYmplY3Qg bW9kdWxlLCBjdXJyZW50bHkgc2VxdWVuY2VzIG9mDQo+ICtsZXR0ZXJzL2RpZ2l0cyBhcmUgYWxs b3dlZCwgY2FzZS1zZW5zaXRpdmUuDQo+ICsNCj4gK0FsbCBzdWNoIHNoYXJlZCBvYmplY3RzIGhh dmUgYSBjb25zdHJ1Y3Rvci9kZXN0cnVjdG9yIGdlbmVyYXRlZCBmb3IgdGhlbQ0KPiArdGhhdCBl bWl0cyBpdHMgbmFtZSBmb2xsb3dlZCBieSBhICc+JyBmb3IgY29uc3RydWN0b3JzLCBhbmQgJzwn IGZvbGxvd2VkIGJ5DQo+ICtpdHMgbmFtZSBmb3IgZGVzdHJ1Y3RvcnMsIGUuZy4gaWYgdGhlIG5h bWUgaXMgJ29iajEnLCB0aGVuICJvYmoxPiIgYW5kICI8b2JqMSINCj4gK2lzIHByaW50ZWQgYnkg aXRzIGNvbnN0cnVjdG9yL2Rlc3RydWN0b3IgcmVzcGVjdGl2ZWx5Lg0KPiArDQo+ICtUaGUgLT4g b3BlcmF0b3Igc3BlY2lmaWVzIGEgbGluayB0aW1lIGRlcGVuZGVuY3ksIHRoZXNlIGNhbiBiZSBj aGFpbmVkIGZvcg0KPiArY29udmVuaWVuY2UgKGUuZy4gYS0+Yi0+Yy0+ZCkuDQo+ICsNCj4gK1Ro ZSA9PiBvcGVyYXRvciBjcmVhdGVzIGEgY2FsbC1yZWZlcmVuY2UsIGUuZy4gZm9yIGE9PmIsIGFu IGZuX2EoKSBmdW5jdGlvbg0KPiAraXMgY3JlYXRlZCBpbnNpZGUgbW9kdWxlICdhJywgd2hpY2gg Y2FsbHMgZm5fYigpIGluIG1vZHVsZSAnYicuDQo+ICtUaGVzZSBtb2R1bGUgZnVuY3Rpb25zIGVt aXQgJ25hbWUoKScgb3V0cHV0IGluIG5lc3RlZCBmb3JtLA0KPiArZS5nLiBhPT5iIGVtaXRzICdh KGIoKSknDQo+ICsNCj4gK0ZvciBzaW5nbGUgY2hhcmFjdGVyIG9iamVjdCBuYW1lcywgc3F1YXJl IGJyYWNrZXRzIFtdIGluIHRoZSBkZXNjcmlwdGlvbg0KPiArYWxsb3dzIHNwZWNpZml5aW5nIG11 bHRpcGxlIG9iamVjdHM7IGUuZy4gYS0+W2JjZF0tPmUgaXMgZXF1aXZhbGVudCB0bw0KPiArIGEt PmItPmU7YS0+Yy0+ZTthLT5kLT5lDQo+ICsNCj4gK1RoZSAoKSBwYXJlbnRoZXNpcyBjb25zdHJ1 Y3Qgd2l0aCBzcGFjZSBzZXBhcmF0ZWQgbmFtZXMgaXMgYWxzbyBhbGxvd2VkIGZvcg0KPiArc3Bl Y2lmeWluZyBvYmplY3RzLiBGb3IgbmFtZXMgd2l0aCBpbnRlZ2VyIHN1ZmZpeGVzIGEgcmFuZ2Ug Y2FuIGFsc28gYmUgdXNlZCwNCj4gK2UuZy4gKGZvbzEgYmFyMi01KSwgc3BlY2lmaWVzIERTT3Mg Zm9vMSwgYmFyMiwgYmFyMiwgYmFyMywgYmFyNCwgYmFyNS4NCj4gKw0KPiArQSB7fSBjb25zdHJ1 Y3Qgc3BlY2lmaWVzIHRoZSBtYWluIHRlc3QgcHJvZ3JhbSwgYW5kIGl0cyBsaW5rIGRlcGVuZGVu Y2llcw0KPiArYXJlIGFsc28gc3BlY2lmaWVkIHVzaW5nIC0+LiBJbnNpZGUge30sIGEgZmV3IDst c2VwZXJhdGVkIGNvbnN0cnVjdHMgYXJlDQo+ICthbGxvd2VkOg0KPiArICAgICAgICAgK2EgICBM b2FkcyBtb2R1bGUgYSB1c2luZyBkbG9wZW4oUlRMRF9MQVpZfFJUTERfR0xPQkFMKQ0KPiArICAg ICAgICAgXmEgICBMb2FkcyBtb2R1bGUgYSB1c2luZyBkbG9wZW4oUlRMRF9MQVpZKQ0KPiArICAg ICAgICAgJWEgICBVc2UgZGxzeW0oKSB0byBsb2FkIGFuZCBjYWxsIGZuX2EoKQ0KPiArICAgICAg ICAgQGEgICBDYWxscyBmbl9hKCkgZGlyZWN0bHkuDQo+ICsgICAgICAgICAtYSAgIFVubG9hZHMg bW9kdWxlIGEgdXNpbmcgZGxjbG9zZSgpDQo+ICsNCj4gK1RoZSBnZW5lcmF0ZWQgbWFpbiBwcm9n cmFtIG91dHB1dHMgJ3snICd9JyB3aXRoIGFsbCBvdXRwdXQgZnJvbSBhYm92ZQ0KPiArY29uc3Ry dWN0cyBpbiBiZXR3ZWVuLiBUaGUgb3RoZXIgb3V0cHV0IGJlZm9yZS9hZnRlciB7fSBhcmUgdGhl IG9yZGVyZWQNCj4gK2NvbnN0cnVjdG9yL2Rlc3RydWN0b3Igb3V0cHV0Lg0KPiArDQo+ICtJZiBu byB7fSBjb25zdHJ1Y3QgaXMgcHJlc2VudCwgYSBkZWZhdWx0IGVtcHR5IG1haW4gcHJvZ3JhbSBp cyBsaW5rZWQNCj4gK2FnYWluc3QgYWxsIG9iamVjdHMgd2hpY2ggaGF2ZSBubyBkZXBlbmRlbmN5 IGxpbmtlZCB0byBpdC4gZS5nLiBmb3INCj4gKydbYWJdLT5jO2QtPmUnLCB0aGUgZGVmYXVsdCBt YWluIHByb2dyYW0gaXMgZXF1aXZhbGVudCB0byAne30tPlthYmRdJw0KPiArDQo+ICtTb21ldGlt ZXMgZm9yIHZlcnkgY29tcGxleCBvciBsYXJnZSB0ZXN0Y2FzZXMsIGJlc2lkZXMgc3BlY2lmeWlu ZyBhDQo+ICtmZXcgZXhwbGljaXQgZGVwZW5kZW5jaWVzIGZyb20gbWFpbnt9LCB0aGUgYWJvdmUg ZGVmYXVsdCBkZXBlbmRlbmN5DQo+ICtiZWhhdmlvciBpcyBzdGlsbCB1c2VmdWwgdG8gYXV0b21h dGljYWxseSBoYXZlLCBidXQgaXMgdHVybmVkIG9mZg0KPiArdXBvbiBzcGVjaWZ5aW5nIGEgc2lu Z2xlIGV4cGxpY2l0IHt9LT5kc29fbmFtZS4NCj4gK0luIHRoaXMgY2FzZSwgYWRkIHt9LT4qIHRv IGV4cGxpY2l0bHkgYWRkIHRoaXMgZ2VuZXJhdGlvbiBiZWhhdmlvcjoNCj4gKw0KPiArICAgIyBN YWluIHByb2dyYW0gbGlua3MgdG8gJ2ZvbycsIGFuZCBhbGwgb3RoZXIgb2JqZWN0cyB3aGljaCBo YXZlIG5vDQo+ICsgICAjIGRlcGVuZGVuY3kgbGlua2VkIHRvIGl0Lg0KPiArICAge30tPmZvbyx7 fS0+Kg0KPiArDQo+ICtOb3RlIHRoYXQgJyonIHdvcmtzIG5vdCBvbmx5IG9uIG1haW57fSwgYnV0 IGNhbiBiZSB1c2VkIGFzIHRoZQ0KPiArZGVwZW5kZW5jeSB0YXJnZXQgb2YgYW55IG9iamVjdC4g Tm90ZSB0aGF0IGl0IG9ubHkgd29ya3MgYXMgYSB0YXJnZXQsDQo+ICtub3QgYSBkZXBlbmRlbmN5 IHNvdXJjZS4NCj4gKw0KPiArVGhlICchJyBvcGVyYXRvciBhZnRlciBvYmplY3QgbmFtZXMgdHVy bnMgb24gcGVybXV0YXRpb24gb2YgaXRzDQo+ICtkZXBlbmRlbmNpZXMsIGUuZy4gd2hpbGUgYS0+ W2JjZF0gb25seSBnZW5lcmF0ZXMgb25lIHNldCBvZiBvYmplY3RzLA0KPiArd2l0aCAnYS5zbycg YnVpbHQgd2l0aCBhIGxpbmsgbGluZSBvZiAiYi5zbyBjLnNvIGQuc28iLCBmb3IgYSEtPltiY2Rd DQo+ICtwZXJtdXRhdGlvbnMgb2YgYSdzIGRlcGVuZGVuY2llcyBjcmVhdGVzIG11bHRpcGxlIHRl c3RjYXNlcyB3aXRoDQo+ICtkaWZmZXJlbnQgbGluayBsaW5lIG9yZGVyczogImIuc28gYy5zbyBk LnNvIiwgImMuc28gYi5zbyBkLnNvIiwNCj4gKyJiLnNvIGQuc28gYy5zbyIsIGV0Yy4gTm90ZSB0 aGF0IGZvciBhIDx0ZXN0LW5hbWU+IHNwZWNpZmllZCBvbg0KPiArdGhlIHNjcmlwdCBjb21tYW5k LWxpbmUsIG11bHRpcGxlIDx0ZXN0LW5hbWVfMT4sIDx0ZXN0LW5hbWVfMj4sIGV0Yy4NCj4gK3Rl c3RzIHdpbGwgYmUgZ2VuZXJhdGVkIChlLmcuIGZvciBhIS0+W2JjXSEtPltkZV0sIGVpZ2h0IHRl c3RzIHdpdGgNCj4gK2RpZmZlcmVudCBsaW5rIG9yZGVycyBmb3IgYSwgYiwgYW5kIGMgd2lsbCBi ZSBnZW5lcmF0ZWQpDQoNCkNhbiB3ZSBwbGVhc2UgZ2V0IGEgbGl0dGxlIG1vcmUgY29tbWVudHMg ZXhwbGFpbmluZyB0aGUgdGVzdCBvdXRwdXQ/DQpUaGUgdGVzdCBpbnB1dCBpcyBzcGVjaWZpZWQg d2VsbCwgYnV0IHNvbWUgZXhhbXBsZXMgb2YgdGVzdCBvdXRwdXQNCmFuZCB3aGF0IHRoZXkgbWVh biB3b3VsZCBnbyBhIGxvbmcgd2F5IHRvIGhlbHBpbmcgbmV3IGRldmVsb3BlcnMNCnVuZGVyc3Rh bmQgdGhlIERTTC4NCg0KPiArDQo+ICsiIiINCj4gK2ltcG9ydCBzeXMNCj4gK2ltcG9ydCByZQ0K PiAraW1wb3J0IG9zDQo+ICtpbXBvcnQgc3VicHJvY2Vzcw0KPiAraW1wb3J0IGFyZ3BhcnNlDQo+ ICtmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBPcmRlcmVkRGljdA0KPiAraW1wb3J0IGl0ZXJ0b29s cw0KPiArDQo+ICsjIEJVSUxEX0dDQyBpcyBvbmx5IHVzZWQgdW5kZXIgdGhlIC0tYnVpbGQgb3B0 aW9uLA0KPiArIyB3aGljaCBidWlsZHMgdGhlIGdlbmVyYXRlZCB0ZXN0Y2FzZSwgaW5jbHVkaW5n IERTT3MgdXNpbmcgQlVJTERfR0NDLg0KPiArIyBNYWlubHkgZm9yIHRlc3RpbmcgcHVycG9zZXMs IGVzcGVjaWFsbHkgZGVidWdnaW5nIG9mIHRoaXMgc2NyaXB0LA0KPiArIyBhbmQgY2FuIGJlIGNo YW5nZWQgaGVyZSB0byBhbm90aGVyIHRvb2xjaGFpbiBwYXRoIGlmIG5lZWRlZC4NCj4gK2J1aWxk X2djYyA9ICJnY2MiDQo+ICsNCj4gK3BhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKCIi KQ0KPiArcGFyc2VyLmFkZF9hcmd1bWVudCgiZGVzY3JpcHRpb24iLA0KPiArICAgICAgICAgICAg ICAgICAgICBoZWxwPSJEZXNjcmlwdGlvbiBzdHJpbmcgb2YgRFNPIGRlcGVuZGVuY3kgdGVzdCB0 byBiZSAiDQo+ICsgICAgICAgICAgICAgICAgICAgICJnZW5lcmF0ZWQgKHNlZSBzY3JpcHQgc291 cmNlIGZvciBkb2N1bWVudGF0aW9uIG9mICINCj4gKyAgICAgICAgICAgICAgICAgICAgImRlc2Ny aXB0aW9uIGxhbmd1YWdlKSwgZWl0aGVyIHNwZWNpZmllZCBoZXJlIGFzICINCj4gKyAgICAgICAg ICAgICAgICAgICAgImNvbW1hbmQgbGluZSBhcmd1bWVudCwgb3IgYnkgaW5wdXQgZmlsZSB1c2lu ZyAiDQo+ICsgICAgICAgICAgICAgICAgICAgICItZi8tLWRlc2NyaXB0aW9uLWZpbGUgb3B0aW9u IiwNCj4gKyAgICAgICAgICAgICAgICAgICAgbmFyZ3M9Ij8iLCBkZWZhdWx0PSIiKQ0KPiArcGFy c2VyLmFkZF9hcmd1bWVudCgidGVzdF9uYW1lIiwgaGVscD0iSWRlbnRpZmllciBmb3IgdGVzdGNh c2UgYmVpbmcgIg0KPiArICAgICAgICAgICAgICAgICAgICAiZ2VuZXJhdGVkIiwgbmFyZ3M9Ij8i LCBkZWZhdWx0PSIiKQ0KPiArcGFyc2VyLmFkZF9hcmd1bWVudCgiLS1vYmpwZngiLA0KPiArICAg ICAgICAgICAgICAgICAgICBoZWxwPSJQYXRoIHRvIHBsYWNlIGdlbmVyYXRlZCBmaWxlcywgZGVm YXVsdHMgdG8gIg0KPiArICAgICAgICAgICAgICAgICAgICAiY3VycmVudCBkaXJlY3RvcnkgaWYg bm9uZSBzcGVjaWZpZWQiLA0KPiArICAgICAgICAgICAgICAgICAgICBuYXJncz0iPyIsIGRlZmF1 bHQ9Ii4vIikNCj4gK3BhcnNlci5hZGRfYXJndW1lbnQoIi1tIiwgIi0tb3V0cHV0LW1ha2VmaWxl IiwNCj4gKyAgICAgICAgICAgICAgICAgICAgaGVscD0iRmlsZSB0byB3cml0ZSBNYWtlZmlsZSBm cmFnbWVudCB0bywgZGVmYXVsdHMgdG8gIg0KPiArICAgICAgICAgICAgICAgICAgICAic3Rkb3V0 IHdoZW4gb3B0aW9uIG5vdCBwcmVzZW50IiwgbmFyZ3M9Ij8iLCBkZWZhdWx0PSIiKQ0KPiArcGFy c2VyLmFkZF9hcmd1bWVudCgiLWYiLCAiLS1kZXNjcmlwdGlvbi1maWxlIiwNCj4gKyAgICAgICAg ICAgICAgICAgICAgaGVscD0iSW5wdXQgZmlsZSBjb250YWluaW5nIHRlc3RjYXNlIGRlc2NyaXB0 aW9ucyIsDQo+ICsgICAgICAgICAgICAgICAgICAgIG5hcmdzPSI/IiwgZGVmYXVsdD0iIikNCj4g K3BhcnNlci5hZGRfYXJndW1lbnQoIi0tYnVpbGQiLCBoZWxwPSJBZnRlciBDIHRlc3RjYXNlIGdl bmVyYXRlZCwgYnVpbGQgaXQgIg0KPiArICAgICAgICAgICAgICAgICAgICAidXNpbmcgZ2NjIChm b3IgbWFudWFsIHRlc3RpbmcgcHVycG9zZXMpIiwNCj4gKyAgICAgICAgICAgICAgICAgICAgYWN0 aW9uPSJzdG9yZV90cnVlIikNCj4gK3BhcnNlci5hZGRfYXJndW1lbnQoIi0tZGVidWctb3V0cHV0 IiwgaGVscD0iUHJpbnRzIHNvbWUgaW50ZXJuYWwgZGF0YSAiDQo+ICsgICAgICAgICAgICAgICAg ICAgICJzdHJ1Y3R1cmVzOyB1c2VkIGZvciBkZWJ1Z2dpbmcgb2YgdGhpcyBzY3JpcHQiLA0KPiAr ICAgICAgICAgICAgICAgICAgICBhY3Rpb249InN0b3JlX3RydWUiKQ0KDQpPSy4NCg0KPiArY21k bGluZWFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpDQo+ICt0ZXN0X25hbWUgPSBjbWRsaW5lYXJn cy50ZXN0X25hbWUNCj4gK2Rlc2NyaXB0aW9uID0gY21kbGluZWFyZ3MuZGVzY3JpcHRpb24NCj4g K29ianBmeCA9IGNtZGxpbmVhcmdzLm9ianBmeA0KPiArZGVzY3JpcHRpb25fZmlsZSA9IGNtZGxp bmVhcmdzLmRlc2NyaXB0aW9uX2ZpbGUNCj4gK291dHB1dF9tYWtlZmlsZSA9IGNtZGxpbmVhcmdz Lm91dHB1dF9tYWtlZmlsZQ0KPiArbWFrZWZpbGUgPSAiIg0KPiArDQo+ICtpZiAodGVzdF9uYW1l IG9yIGRlc2NyaXB0aW9uKSBhbmQgZGVzY3JpcHRpb25fZmlsZToNCj4gKyAgICBwcmludCAoIkVy cm9yOiBib3RoIGNvbW1hbmQtbGluZSB0ZXN0Y2FzZSBhbmQgaW5wdXQgZmlsZSBzcGVjaWZpZWQi KQ0KPiArICAgIGV4aXQgKC0xKQ0KPiAraWYgdGVzdF9uYW1lIGFuZCBub3QgZGVzY3JpcHRpb246 DQo+ICsgICAgcHJpbnQgKCJFcnJvcjogY29tbWFuZC1saW5lIHRlc3RjYXNlIG5hbWUgd2l0aG91 dCBkZXNjcmlwdGlvbiBzdHJpbmciKQ0KPiArICAgIGV4aXQgKC0xKQ0KPiArDQo+ICsjIE1haW4g Y2xhc3MgdHlwZSBkZXNjcmliaW5nIGEgdGVzdGNhc2UuDQo+ICtjbGFzcyBUZXN0RGVzY3I6DQo+ ICsgICAgZGVmIF9faW5pdF9fKHNlbGYpOg0KPiArICAgICAgICBzZWxmLm9ianMgPSBbXSAgICAg ICAgICAgICAgICAgICAgICAgICMgbGlzdCBvZiBhbGwgRFNPIG9iamVjdHMNCj4gKyAgICAgICAg c2VsZi5kZXBzID0gT3JkZXJlZERpY3QoKSAgICAgICAgICAgICAjIG1hcCBvZiBEU08gb2JqZWN0 IC0+IGxpc3Qgb2YgZGVwZW5kZW5jaWVzDQo+ICsgICAgICAgIHNlbGYuY2FsbHJlZnMgPSBPcmRl cmVkRGljdCgpICAgICAgICAgIyBtYXAgb2YgRFNPIG9iamVjdCAtPiBsaXN0IG9mIGNhbGwgcmVm cw0KPiArICAgICAgICBzZWxmLmRlcF9wZXJtdXRhdGlvbnMgPSBPcmRlcmVkRGljdCgpICMgbWFw IG9mIERTTyBvYmplY3QNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAjICAgLT4gbGlzdCBvZiBwZXJtdXRhdGlvbnMgb2YgZGVwZW5kZW5jaWVzDQo+ICsg ICAgICAgIHNlbGYubWFpbl9wcm9ncmFtID0gW10gICAgICAgICAgICAgICAgIyBsaXN0IG9mIG1h aW4gcHJvZ3JhbSBvcGVyYXRpb25zDQo+ICsgICAgICAgIHNlbGYubWFpbl9wcm9ncmFtX25lZWRz X2xkbCA9IEZhbHNlICAgIyBzZXQgaWYgbWFpbiBwcm9ncmFtIG5lZWRzIC1sZGwNCj4gKyAgICAg ICAgc2VsZi5tYWluX3Byb2dyYW1fZGVmYXVsdF9kZXBzID0gVHJ1ZSAjIHNldCBpZiBkZWZhdWx0 IGRlcGVuZGVuY2llcyBhZGRlZCB0byBtYWluDQo+ICsgICAgICAgIHNlbGYudGVzdF9uYW1lID0g IiIgICAgICAgICAgICAgICAgICAgIyBuYW1lIG9mIHRlc3RjYXNlDQo+ICsgICAgICAgIHNlbGYu ZXhwZWN0ZWRfb3V0cHV0cyA9IE9yZGVyZWREaWN0KCkgIyBleHBlY3RlZCBvdXRwdXRzIG9mIHRl c3RjYXNlDQo+ICsNCj4gKyAgICAjIEFkZCAnb2JqZWN0IC0+IFtvYmplY3QsIG9iamVjdCwgLi4u XScgcmVsYXRpb25zIHRvIENVUlJfTUFQDQo+ICsgICAgZGVmIF9fYWRkX2RlcHNfaW50ZXJuYWwg KHNlbGYsIHNyY19vYmpzLCBkc3Rfb2JqcywgY3Vycl9tYXApOg0KPiArICAgICAgICBmb3Igc3Jj IGluIHNyY19vYmpzOg0KPiArICAgICAgICAgICAgZm9yIGRzdCBpbiBkc3Rfb2JqczoNCj4gKyAg ICAgICAgICAgICAgICBpZiBub3Qgc3JjIGluIGN1cnJfbWFwOg0KPiArICAgICAgICAgICAgICAg ICAgICBjdXJyX21hcFtzcmNdID0gW10NCj4gKyAgICAgICAgICAgICAgICBpZiBub3QgZHN0IGlu IGN1cnJfbWFwW3NyY106DQo+ICsgICAgICAgICAgICAgICAgICAgIGN1cnJfbWFwW3NyY10uYXBw ZW5kIChkc3QpDQo+ICsgICAgZGVmIGFkZF9kZXBzIChzZWxmLCBzcmNfb2JqcywgZHN0X29ianMp Og0KPiArICAgICAgICBzZWxmLl9fYWRkX2RlcHNfaW50ZXJuYWwgKHNyY19vYmpzLCBkc3Rfb2Jq cywgc2VsZi5kZXBzKQ0KPiArICAgIGRlZiBhZGRfY2FsbHJlZnMgKHNlbGYsIHNyY19vYmpzLCBk c3Rfb2Jqcyk6DQo+ICsgICAgICAgIHNlbGYuX19hZGRfZGVwc19pbnRlcm5hbCAoc3JjX29ianMs IGRzdF9vYmpzLCBzZWxmLmNhbGxyZWZzKQ0KPiArDQo+ICsjIEZvciBpbnNpZGUgdGhlIHt9IGNv bnN0cnVjdA0KPiArZGVmIHByb2Nlc3NfbWFpbl9wcm9ncmFtICh0ZXN0X2Rlc2NyLCBtYWlucHJv Z19zdHIpOg0KPiArICAgIGlmIG1haW5wcm9nX3N0cjoNCj4gKyAgICAgICAgdGVzdF9kZXNjci5t YWluX3Byb2dyYW0gPSBtYWlucHJvZ19zdHIuc3BsaXQgKCc7JykNCj4gKyAgICBmb3IgcyBpbiB0 ZXN0X2Rlc2NyLm1haW5fcHJvZ3JhbToNCj4gKyAgICAgICAgbSA9IHJlLm1hdGNoIChyIl4oWytc LSVeQF0pKFswLTlhLXpBLVpdKykkIiwgcykNCj4gKyAgICAgICAgaWYgbm90IG06DQo+ICsgICAg ICAgICAgICBwcmludCAoIkVycm9yOiAnJXMnIGlzIG5vdCByZWNvZ25pemVkIG1haW4gcHJvZ3Jh bSBvcGVyYXRpb24iICUgKHMpKQ0KPiArICAgICAgICAgICAgZXhpdCAoLTEpDQo+ICsgICAgICAg IG9wciA9IG0uZ3JvdXAoMSkNCj4gKyAgICAgICAgaWYgKG9wciA9PSAnKycgb3Igb3ByID09ICde JyBvciBvcHIgPT0gJyUnIG9yIG9wciA9PSAnLScpOg0KPiArICAgICAgICAgICAgIyBEZXRlcm1p bmVkIHRoZSBtYWluIHByb2dyYW0gbmVlZHMgbGliZGwNCj4gKyAgICAgICAgICAgIHRlc3RfZGVz Y3IubWFpbl9wcm9ncmFtX25lZWRzX2xkbCA9IFRydWUNCj4gKyAgICAgICAgb2JqID0gbS5ncm91 cCgyKQ0KPiArICAgICAgICBpZiBub3Qgb2JqIGluIHRlc3RfZGVzY3Iub2JqczoNCj4gKyAgICAg ICAgICAgIHRlc3RfZGVzY3Iub2Jqcy5hcHBlbmQgKG9iaikNCj4gKyAgICAgICAgaWYgb3ByID09 ICclJyBvciBvcHIgPT0gJ0AnOg0KPiArICAgICAgICAgICAgdGVzdF9kZXNjci5hZGRfY2FsbHJl ZnMgKFsnIyddLCBbb2JqXSkNCj4gKyAgICAjIFdlIGhhdmUgYSBtYWluIHByb2dyYW0gc3BlY2lm aWVkLCB0dXJuIHRoaXMgb2ZmDQo+ICsgICAgdGVzdF9kZXNjci5tYWluX3Byb2dyYW1fZGVmYXVs dF9kZXBzID0gRmFsc2UNCj4gKw0KPiArIyBGb3IgKGExIGEyIGIxLTEyKSBvYmplY3Qgc2V0IGRl c2NyaXB0aW9ucywgZXhwYW5kIGludG8gYW4gb2JqZWN0IGxpc3QNCj4gK2RlZiBleHBhbmRfb2Jq ZWN0X3NldF9zdHJpbmcgKGRlc2NyX3N0cik6DQo+ICsgICAgb2JqX2xpc3QgPSBbXQ0KPiArICAg IGRlc2NyX2xpc3QgPSBkZXNjcl9zdHIuc3BsaXQgKCkNCj4gKyAgICBmb3IgZGVzY3IgaW4gZGVz Y3JfbGlzdDoNCj4gKyAgICAgICAgbSA9IHJlLm1hdGNoIChyIl4oW2EtekEtWl1bMC05YS16QS1a XSopKC1bMC05XSspPyQiLCBkZXNjcikNCj4gKyAgICAgICAgaWYgbm90IG06DQo+ICsgICAgICAg ICAgICBwcmludCAoIkVycm9yOiAnJXMnIGlzIG5vdCBhIHZhbGlkIG9iamVjdCBzZXQgZGVzY3Jp cHRpb24iICUgKGRlc2NyKSkNCj4gKyAgICAgICAgICAgIGV4aXQgKC0xKQ0KPiArICAgICAgICBv YmogPSBtLmdyb3VwICgxKQ0KPiArICAgICAgICBpZHhfZW5kID0gbS5ncm91cCAoMikNCj4gKyAg ICAgICAgaWYgbm90IGlkeF9lbmQ6DQo+ICsgICAgICAgICAgICBpZiBub3Qgb2JqIGluIG9ial9s aXN0Og0KPiArICAgICAgICAgICAgICAgIG9ial9saXN0LmFwcGVuZCAob2JqKQ0KPiArICAgICAg ICBlbHNlOg0KPiArICAgICAgICAgICAgaWR4X2VuZCA9IGludCAoaWR4X2VuZFsxOl0pDQo+ICsg ICAgICAgICAgICBtID0gcmUubWF0Y2ggKHIiXihbMC05YS16QS1aXVthLXpBLVpdKikoWzAtOV0r KSQiLCBvYmopDQo+ICsgICAgICAgICAgICBpZiBub3QgbToNCj4gKyAgICAgICAgICAgICAgICBw cmludCAoIkVycm9yOiBvYmplY3QgZGVzY3JpcHRpb24gJyVzJyBpcyBtYWxmb3JtZWQiICUgKG9i aikpDQo+ICsgICAgICAgICAgICAgICAgZXhpdCAoLTEpDQo+ICsgICAgICAgICAgICBvYmpfbmFt ZSA9IG0uZ3JvdXAgKDEpDQo+ICsgICAgICAgICAgICBpZHhfc3RhcnQgPSBpbnQgKG0uZ3JvdXAg KDIpKQ0KPiArICAgICAgICAgICAgaWYgaWR4X3N0YXJ0ID4gaWR4X2VuZDoNCj4gKyAgICAgICAg ICAgICAgICBwcmludCAoIkVycm9yOiBpbmRleCByYW5nZSAlcy0lcyBpbnZhbGlkIiAlIChpZHhf c3RhcnQsIGlkeF9lbmQpKQ0KPiArICAgICAgICAgICAgICAgIGV4aXQgKC0xKQ0KPiArICAgICAg ICAgICAgZm9yIGkgaW4gcmFuZ2UoaWR4X3N0YXJ0LCBpZHhfZW5kICsgMSk6DQo+ICsgICAgICAg ICAgICAgICAgbyA9IG9ial9uYW1lICsgc3RyKGkpDQo+ICsgICAgICAgICAgICAgICAgaWYgbm90 IG8gaW4gb2JqX2xpc3Q6DQo+ICsgICAgICAgICAgICAgICAgICAgIG9ial9saXN0LmFwcGVuZCAo bykNCj4gKyAgICByZXR1cm4gb2JqX2xpc3QNCj4gKw0KPiArIyBMZXhlciBmb3IgdG9rZW5zDQo+ ICt0b2tlbnNwZWMgPSBbICgiT0JKIiwgICAgICByIihbMC05YS16QS1aXSspIiksDQo+ICsgICAg ICAgICAgICAgICgiREVQIiwgICAgICByIi0+IiksDQo+ICsgICAgICAgICAgICAgICgiQ0FMTFJF RiIsICByIj0+IiksDQo+ICsgICAgICAgICAgICAgICgiT0JKU0VUIiwgICByIlxbKFswLTlhLXpB LVpdKylcXSIpLA0KPiArICAgICAgICAgICAgICAoIk9CSlNFVDIiLCAgciJcKChbMC05YS16QS1a IFwtXSspXCkiKSwNCj4gKyAgICAgICAgICAgICAgKCJPQkpTRVQzIiwgIHIiXCoiKSwNCj4gKyAg ICAgICAgICAgICAgKCJQUk9HIiwgICAgIHIieyhbMC05YS16QS1aOyteXC0lXSopfSIpLA0KPiAr ICAgICAgICAgICAgICAoIlBFUk1VVEUiLCAgciIhIiksDQo+ICsgICAgICAgICAgICAgICgiU0VN SUNPTCIsICByIjsiKSwNCj4gKyAgICAgICAgICAgICAgKCJFUlJPUiIsICAgIHIiLiIpIF0NCj4g K3Rva19yZSA9ICd8Jy5qb2luKCcoP1A8JXM+JXMpJyAlIHBhaXIgZm9yIHBhaXIgaW4gdG9rZW5z cGVjKQ0KDQpPSy4NCg0KPiArDQo+ICsjIE1haW4gbGluZSBwYXJzZXIgb2YgZGVzY3JpcHRpb24g bGFuZ3VhZ2UNCj4gK2RlZiBwYXJzZV9kZXNjcmlwdGlvbl9zdHJpbmcgKHQsIGRlc2NyX3N0cik6 DQo+ICsNCj4gKyAgICAjIFN0YXRlIHVzZWQgd2hlbiBwYXJzaW5nIGRlcGVuZGVuY2llcw0KPiAr ICAgIGN1cnJfb2JqcyA9IFtdDQo+ICsgICAgaW5fZGVwID0gRmFsc2UNCj4gKyAgICBpbl9jYWxs cmVmID0gRmFsc2UNCj4gKyAgICBkZWYgY2xlYXJfZGVwX3N0YXRlICgpOg0KPiArICAgICAgICBu b25sb2NhbCBpbl9kZXAsIGluX2NhbGxyZWYNCj4gKyAgICAgICAgaW5fZGVwID0gaW5fY2FsbHJl ZiA9IEZhbHNlDQo+ICsNCj4gKyAgICBmb3IgbSBpbiByZS5maW5kaXRlcih0b2tfcmUsIGRlc2Ny X3N0cik6DQo+ICsgICAgICAgIGtpbmQgPSBtLmxhc3Rncm91cA0KPiArICAgICAgICB2YWx1ZSA9 IG0uZ3JvdXAgKCkNCj4gKyAgICAgICAgaWYga2luZCA9PSAiT0JKIjoNCj4gKyAgICAgICAgICAg IGlmIGluX2RlcDoNCj4gKyAgICAgICAgICAgICAgICB0LmFkZF9kZXBzIChjdXJyX29ianMsIFt2 YWx1ZV0pDQo+ICsgICAgICAgICAgICBlbGlmIGluX2NhbGxyZWY6DQo+ICsgICAgICAgICAgICAg ICAgdC5hZGRfY2FsbHJlZnMgKGN1cnJfb2JqcywgW3ZhbHVlXSkNCj4gKyAgICAgICAgICAgIGNs ZWFyX2RlcF9zdGF0ZSAoKQ0KPiArICAgICAgICAgICAgY3Vycl9vYmpzID0gW3ZhbHVlXQ0KPiAr ICAgICAgICAgICAgaWYgbm90IHZhbHVlIGluIHQub2JqczoNCj4gKyAgICAgICAgICAgICAgICB0 Lm9ianMuYXBwZW5kICh2YWx1ZSkNCj4gKw0KPiArICAgICAgICBlbGlmIGtpbmQgPT0gIk9CSlNF VCI6DQo+ICsgICAgICAgICAgICBvYmpzZXQgPSB2YWx1ZVsxOmxlbih2YWx1ZSktMV0NCj4gKyAg ICAgICAgICAgIGlmIGluX2RlcDoNCj4gKyAgICAgICAgICAgICAgICB0LmFkZF9kZXBzIChjdXJy X29ianMsIGxpc3QgKG9ianNldCkpDQo+ICsgICAgICAgICAgICBlbGlmIGluX2NhbGxyZWY6DQo+ ICsgICAgICAgICAgICAgICAgdC5hZGRfY2FsbHJlZnMgKGN1cnJfb2JqcywgbGlzdCAob2Jqc2V0 KSkNCj4gKyAgICAgICAgICAgIGNsZWFyX2RlcF9zdGF0ZSAoKQ0KPiArICAgICAgICAgICAgY3Vy cl9vYmpzID0gbGlzdCAob2Jqc2V0KQ0KPiArICAgICAgICAgICAgZm9yIG8gaW4gbGlzdCAob2Jq c2V0KToNCj4gKyAgICAgICAgICAgICAgICBpZiBub3QgbyBpbiB0Lm9ianM6DQo+ICsgICAgICAg ICAgICAgICAgICAgIHQub2Jqcy5hcHBlbmQgKG8pDQo+ICsNCj4gKyAgICAgICAgZWxpZiBraW5k ID09ICJPQkpTRVQyIjoNCj4gKyAgICAgICAgICAgIGRlc2NyX3N0ciA9IHZhbHVlWzE6bGVuKHZh bHVlKS0xXQ0KPiArICAgICAgICAgICAgZGVzY3Jfc3RyLnN0cmlwICgpDQo+ICsgICAgICAgICAg ICBvYmpzID0gZXhwYW5kX29iamVjdF9zZXRfc3RyaW5nIChkZXNjcl9zdHIpDQo+ICsgICAgICAg ICAgICBpZiBub3Qgb2JqczoNCj4gKyAgICAgICAgICAgICAgICBwcmludCAoIkVycm9yOiBlbXB0 eSBvYmplY3Qgc2V0ICclcyciICUgKHZhbHVlKSkNCj4gKyAgICAgICAgICAgICAgICBleGl0ICgt MSkNCj4gKyAgICAgICAgICAgIGlmIGluX2RlcDoNCj4gKyAgICAgICAgICAgICAgICB0LmFkZF9k ZXBzIChjdXJyX29ianMsIG9ianMpDQo+ICsgICAgICAgICAgICBlbGlmIGluX2NhbGxyZWY6DQo+ ICsgICAgICAgICAgICAgICAgdC5hZGRfY2FsbHJlZnMgKGN1cnJfb2Jqcywgb2JqcykNCj4gKyAg ICAgICAgICAgIGNsZWFyX2RlcF9zdGF0ZSAoKQ0KPiArICAgICAgICAgICAgY3Vycl9vYmpzID0g b2Jqcw0KPiArICAgICAgICAgICAgZm9yIG8gaW4gb2JqczoNCj4gKyAgICAgICAgICAgICAgICBp ZiBub3QgbyBpbiB0Lm9ianM6DQo+ICsgICAgICAgICAgICAgICAgICAgIHQub2Jqcy5hcHBlbmQg KG8pDQo+ICsNCj4gKyAgICAgICAgZWxpZiBraW5kID09ICJPQkpTRVQzIjoNCj4gKyAgICAgICAg ICAgIGlmIGluX2RlcDoNCj4gKyAgICAgICAgICAgICAgICB0LmFkZF9kZXBzIChjdXJyX29ianMs IFsnKiddKQ0KPiArICAgICAgICAgICAgZWxpZiBpbl9jYWxscmVmOg0KPiArICAgICAgICAgICAg ICAgIHQuYWRkX2NhbGxyZWZzIChjdXJyX29ianMsIFsnKiddKQ0KPiArICAgICAgICAgICAgZWxz ZToNCj4gKyAgICAgICAgICAgICAgICBwcmludCAoIkVycm9yOiBub24tZGVwZW5kZW5jZSB0YXJn ZXQgc2V0ICcqJyBjYW4gb25seSBiZSB1c2VkICINCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ImFzIHRhcmdldCBvZiAtPi89PiBvcGVyYXRpb25zIikNCj4gKyAgICAgICAgICAgICAgICBleGl0 ICgtMSkNCj4gKyAgICAgICAgICAgIGNsZWFyX2RlcF9zdGF0ZSAoKQ0KPiArICAgICAgICAgICAg Y3Vycl9vYmpzID0gWycqJ10NCj4gKw0KPiArICAgICAgICBlbGlmIGtpbmQgPT0gIlBFUk1VVEUi Og0KPiArICAgICAgICAgICAgaWYgaW5fZGVwIG9yIGluX2NhbGxyZWY6DQo+ICsgICAgICAgICAg ICAgICAgcHJpbnQgKCJFcnJvcjogc3ludGF4IGVycm9yLCBwZXJtdXRlIG9wZXJhdGlvbiBpbnZh bGlkIGhlcmUiKQ0KPiArICAgICAgICAgICAgICAgIGV4aXQgKC0xKQ0KPiArICAgICAgICAgICAg aWYgbm90IGN1cnJfb2JqczoNCj4gKyAgICAgICAgICAgICAgICBwcmludCAoIkVycm9yOiBzeW50 YXggZXJyb3IsIG5vIG9iamVjdHMgdG8gcGVybXV0ZSBoZXJlIikNCj4gKyAgICAgICAgICAgICAg ICBleGl0ICgtMSkNCj4gKw0KPiArICAgICAgICAgICAgZm9yIG9iaiBpbiBjdXJyX29ianM6DQo+ ICsgICAgICAgICAgICAgICAgaWYgbm90IG9iaiBpbiB0LmRlcF9wZXJtdXRhdGlvbnM6DQo+ICsg ICAgICAgICAgICAgICAgICAgICMgU2lnbmFsIHRoaXMgb2JqZWN0IGhhcyBwZXJtdXRhdGVkIGRl cGVuZGVuY2llcw0KPiArICAgICAgICAgICAgICAgICAgICB0LmRlcF9wZXJtdXRhdGlvbnNbb2Jq XSA9IFtdDQo+ICsNCj4gKyAgICAgICAgZWxpZiBraW5kID09ICJQUk9HIjoNCj4gKyAgICAgICAg ICAgIGlmIHQubWFpbl9wcm9ncmFtOg0KPiArICAgICAgICAgICAgICAgIHByaW50ICgiRXJyb3I6 IGNhbm5vdCBoYXZlIG1vcmUgdGhhbiBvbmUgbWFpbiBwcm9ncmFtIikNCj4gKyAgICAgICAgICAg ICAgICBleGl0ICgtMSkNCj4gKyAgICAgICAgICAgIGlmIGluX2RlcDoNCj4gKyAgICAgICAgICAg ICAgICBwcmludCAoIkVycm9yOiBvYmplY3RzIGNhbm5vdCBoYXZlIGRlcGVuZGVuY3kgb24gbWFp biBwcm9ncmFtIikNCj4gKyAgICAgICAgICAgICAgICBleGl0ICgtMSkNCj4gKyAgICAgICAgICAg IGlmIGluX2NhbGxyZWY6DQo+ICsgICAgICAgICAgICAgICAgIyBUT0RPOiBBIERTTyBjYW4gcmVz b2x2ZSB0byBhIHN5bWJvbCBpbiB0aGUgbWFpbiBiaW5hcnksDQo+ICsgICAgICAgICAgICAgICAg IyB3aGljaCB3ZSBzeW50YWN0aWNhbGx5IGFsbG93IGhlcmUsIGJ1dCBoYXZlbid0IHlldCBpbXBs ZW1lbnRlZC4NCj4gKyAgICAgICAgICAgICAgICB0LmFkZF9jYWxscmVmcyAoY3Vycl9vYmpzLCBb IiMiXSkNCj4gKyAgICAgICAgICAgIHByb2Nlc3NfbWFpbl9wcm9ncmFtICh0LCB2YWx1ZVsxOmxl bih2YWx1ZSktMV0pDQo+ICsgICAgICAgICAgICBjbGVhcl9kZXBfc3RhdGUgKCkNCj4gKyAgICAg ICAgICAgIGN1cnJfb2JqcyA9IFsiIyJdDQo+ICsNCj4gKyAgICAgICAgZWxpZiBraW5kID09ICJE RVAiOg0KPiArICAgICAgICAgICAgaWYgaW5fZGVwIG9yIGluX2NhbGxyZWY6DQo+ICsgICAgICAg ICAgICAgICAgcHJpbnQgKCJFcnJvcjogc3ludGF4IGVycm9yLCBtdWx0aXBsZSBjb250aWd1b3Vz IC0+LD0+IG9wZXJhdGlvbnMiKQ0KPiArICAgICAgICAgICAgICAgIGV4aXQgKC0xKQ0KPiArICAg ICAgICAgICAgaWYgJyonIGluIGN1cnJfb2JqczoNCj4gKyAgICAgICAgICAgICAgICBwcmludCAo IkVycm9yOiBub24tZGVwZW5kZW5jZSB0YXJnZXQgc2V0ICcqJyBjYW4gb25seSBiZSB1c2VkICIN Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgImFzIHRhcmdldCBvZiAtPi89PiBvcGVyYXRpb25z IikNCj4gKyAgICAgICAgICAgICAgICBleGl0ICgtMSkNCj4gKyAgICAgICAgICAgIGluX2RlcCA9 IFRydWUNCj4gKw0KPiArICAgICAgICBlbGlmIGtpbmQgPT0gIkNBTExSRUYiOg0KPiArICAgICAg ICAgICAgaWYgaW5fZGVwIG9yIGluX2NhbGxyZWY6DQo+ICsgICAgICAgICAgICAgICAgcHJpbnQg KCJFcnJvcjogc3ludGF4IGVycm9yLCBtdWx0aXBsZSBjb250aWd1b3VzIC0+LD0+IG9wZXJhdGlv bnMiKQ0KPiArICAgICAgICAgICAgICAgIGV4aXQgKC0xKQ0KPiArICAgICAgICAgICAgaWYgJyon IGluIGN1cnJfb2JqczoNCj4gKyAgICAgICAgICAgICAgICBwcmludCAoIkVycm9yOiBub24tZGVw ZW5kZW5jZSB0YXJnZXQgc2V0ICcqJyBjYW4gb25seSBiZSB1c2VkICINCj4gKyAgICAgICAgICAg ICAgICAgICAgICAgImFzIHRhcmdldCBvZiAtPi89PiBvcGVyYXRpb25zIikNCj4gKyAgICAgICAg ICAgICAgICBleGl0ICgtMSkNCj4gKyAgICAgICAgICAgIGluX2NhbGxyZWYgPSBUcnVlDQo+ICsN Cj4gKyAgICAgICAgZWxpZiBraW5kID09ICJTRU1JQ09MIjoNCj4gKyAgICAgICAgICAgIGN1cnJf b2JqcyA9IFtdDQo+ICsgICAgICAgICAgICBjbGVhcl9kZXBfc3RhdGUgKCkNCj4gKw0KPiArICAg ICAgICBlbHNlOg0KPiArICAgICAgICAgICAgcHJpbnQgKCJFcnJvcjogdW5rbm93biB0b2tlbiAn JXMnIiAlICh2YWx1ZSkpDQo+ICsgICAgICAgICAgICBleGl0ICgtMSkNCj4gKyAgICByZXR1cm4g dA0KDQpPSy4NCg0KPiArDQo+ICsNCj4gKw0KPiArZGVmIHByb2Nlc3NfdGVzdGNhc2UgKHQpOg0K PiArICAgIGdsb2JhbCBvYmpwZngNCj4gKyAgICBhc3NlcnQgdC50ZXN0X25hbWUNCj4gKw0KPiAr ICAgIGJhc2VfdGVzdF9uYW1lID0gdC50ZXN0X25hbWUNCj4gKyAgICB0ZXN0X3N1YmRpciA9IGJh c2VfdGVzdF9uYW1lICsgIi1kaXIiDQo+ICsgICAgdGVzdHBmeCA9IG9ianBmeCArIHRlc3Rfc3Vi ZGlyICsgIi8iDQo+ICsNCj4gKyAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMgKHRlc3RwZngpOg0K PiArICAgICAgICBvcy5ta2RpciAodGVzdHBmeCkNCj4gKw0KPiArICAgIGRlZiBmaW5kX29ianNf bm90X2RlcGVuZGVkX29uICh0KToNCj4gKyAgICAgICAgb2Jqc19ub3RfZGVwZW5kZWRfb24gPSBb XQ0KPiArICAgICAgICBmb3Igb2JqIGluIHQub2JqczoNCj4gKyAgICAgICAgICAgIHNraXAgPSBG YWxzZQ0KPiArICAgICAgICAgICAgZm9yIHIgaW4gdC5kZXBzLml0ZW1zKCk6DQo+ICsgICAgICAg ICAgICAgICAgaWYgb2JqIGluIHJbMV06DQo+ICsgICAgICAgICAgICAgICAgICAgIHNraXAgPSBU cnVlDQo+ICsgICAgICAgICAgICAgICAgICAgIGJyZWFrDQo+ICsgICAgICAgICAgICBpZiBub3Qg c2tpcDoNCj4gKyAgICAgICAgICAgICAgICBvYmpzX25vdF9kZXBlbmRlZF9vbi5hcHBlbmQgKG9i aikNCj4gKyAgICAgICAgcmV0dXJuIG9ianNfbm90X2RlcGVuZGVkX29uDQo+ICsNCj4gKyAgICBu b25fZGVwX3RndF9vYmpzID0gZmluZF9vYmpzX25vdF9kZXBlbmRlZF9vbiAodCkNCj4gKyAgICBm b3Igb2JqIGluIHQub2JqczoNCj4gKyAgICAgICAgaWYgb2JqIGluIHQuZGVwczoNCj4gKyAgICAg ICAgICAgIGRlcHMgPSB0LmRlcHNbb2JqXQ0KPiArICAgICAgICAgICAgaWYgJyonIGluIGRlcHM6 DQo+ICsgICAgICAgICAgICAgICAgdC5kZXBzW29ial0ucmVtb3ZlICgnKicpDQo+ICsgICAgICAg ICAgICAgICAgdC5hZGRfZGVwcyAoW29ial0sIG5vbl9kZXBfdGd0X29ianMpDQo+ICsgICAgICAg IGlmIG9iaiBpbiB0LmNhbGxyZWZzOg0KPiArICAgICAgICAgICAgZGVwcyA9IHQuY2FsbHJlZnNb b2JqXQ0KPiArICAgICAgICAgICAgaWYgJyonIGluIGRlcHM6DQo+ICsgICAgICAgICAgICAgICAg dC5kZXBzW29ial0ucmVtb3ZlICgnKicpDQo+ICsgICAgICAgICAgICAgICAgdC5hZGRfY2FsbHJl ZnMgKFtvYmpdLCBub25fZGVwX3RndF9vYmpzKQ0KPiArICAgIGlmICIjIiBpbiB0LmRlcHM6DQo+ ICsgICAgICAgIGRlcHMgPSB0LmRlcHNbIiMiXQ0KPiArICAgICAgICBpZiAnKicgaW4gZGVwczoN Cj4gKyAgICAgICAgICAgIHQuZGVwc1siIyJdLnJlbW92ZSAoJyonKQ0KPiArICAgICAgICAgICAg dC5hZGRfZGVwcyAoWyIjIl0sIG5vbl9kZXBfdGd0X29ianMpDQo+ICsNCj4gKyAgICAjIElmIG5v IG1haW4gcHJvZ3JhbSB3YXMgc3BlY2lmaWVkIGluIGRlcGVuZGVuY3kgZGVzY3JpcHRpb24sIG1h a2UgYQ0KPiArICAgICMgZGVmYXVsdCBtYWluIHByb2dyYW0gd2l0aCBkZXBzIHBvaW50aW5nIHRv IGFsbCBEU09zIHdoaWNoIGFyZSBub3QNCj4gKyAgICAjIGRlcGVuZGVkIGJ5IGFub3RoZXIgRFNP Lg0KDQpPSy4NCg0KPiArICAgIGlmIHQubWFpbl9wcm9ncmFtX2RlZmF1bHRfZGVwczoNCj4gKyAg ICAgICAgbWFpbl9kZXBzID0gbm9uX2RlcF90Z3Rfb2Jqcw0KPiArICAgICAgICBpZiBub3QgbWFp bl9kZXBzOg0KPiArICAgICAgICAgICAgcHJpbnQgKCJFcnJvcjogbm8gb2JqZWN0cyBmb3IgZGVm YXVsdCBtYWluIHByb2dyYW0gdG8gcG9pbnQgIg0KPiArICAgICAgICAgICAgICAgICAgICJkZXBl bmRlbmN5IHRvIChhbGwgb2JqZWN0cyBzdHJvbmdseSBjb25uZWN0ZWQ/KSIpDQo+ICsgICAgICAg ICAgICBleGl0ICgtMSkNCj4gKyAgICAgICAgdC5hZGRfZGVwcyAoWyIjIl0sIG1haW5fZGVwcykN Cj4gKw0KPiArICAgICMgU29tZSBkZWJ1ZyBvdXRwdXQNCj4gKyAgICBpZiBjbWRsaW5lYXJncy5k ZWJ1Z19vdXRwdXQ6DQo+ICsgICAgICAgIHByaW50ICgiVGVzdGNhc2U6ICVzIiAlICh0LnRlc3Rf bmFtZSkpDQo+ICsgICAgICAgIHByaW50ICgiQWxsIG9iamVjdHM6ICVzIiAlICh0Lm9ianMpKQ0K PiArICAgICAgICBwcmludCAoIi0tLSBTdGF0aWMgbGluayBkZXBlbmRlbmNpZXMgLS0tIikNCj4g KyAgICAgICAgZm9yIHIgaW4gdC5kZXBzLml0ZW1zKCk6DQo+ICsgICAgICAgICAgICBwcmludCAo IiVzIC0+ICVzIiAlIChyWzBdLCByWzFdKSkNCj4gKyAgICAgICAgcHJpbnQgKCItLS0gT2JqZWN0 cyB3aG9zZSBkZXBlbmRlbmNpZXMgYXJlIHRvIGJlIHBlcm11dGF0ZWQgLS0tIikNCg0Kcy9wZXJt dXRhdGVkL3Blcm11dGVkL2cNCg0KPiArICAgICAgICBmb3IgciBpbiB0LmRlcF9wZXJtdXRhdGlv bnMuaXRlbXMoKToNCj4gKyAgICAgICAgICAgIHByaW50ICgiJXMiICUgKHJbMF0pKQ0KPiArICAg ICAgICBwcmludCAoIi0tLSBDYWxsIHJlZmVyZW5jZSBkZXBlbmRlbmNpZXMgLS0tIikNCj4gKyAg ICAgICAgZm9yIHIgaW4gdC5jYWxscmVmcy5pdGVtcygpOg0KPiArICAgICAgICAgICAgcHJpbnQg KCIlcyA9PiAlcyIgJSAoclswXSwgclsxXSkpDQo+ICsgICAgICAgIHByaW50ICgiLS0tIG1haW4g cHJvZ3JhbSAtLS0iKQ0KPiArICAgICAgICBwcmludCAodC5tYWluX3Byb2dyYW0pDQo+ICsNCj4g KyAgICAjIE1haW4gdGVzdGNhc2UgZ2VuZXJhdGlvbiByb3V0aW5lLCBkb2VzIE1ha2VmaWxlIGZy YWdtZW50IGdlbmVyYXRpb24sDQo+ICsgICAgIyB0ZXN0Y2FzZSBzb3VyY2UgZ2VuZXJhdGlvbiwg YW5kIGlmIC0tYnVpbGQgc3BlY2lmaWVkIGJ1aWxkcyB0ZXN0Y2FzZS4NCj4gKyAgICBkZWYgZ2Vu ZXJhdGVfdGVzdGNhc2UgKHRlc3RfZGVzY3IsIHRlc3Rfc3VmZml4KToNCj4gKw0KPiArICAgICAg ICB0ZXN0X25hbWUgPSB0ZXN0X2Rlc2NyLnRlc3RfbmFtZSArIHRlc3Rfc3VmZml4DQo+ICsNCj4g KyAgICAgICAgIyBQcmludCBvdXQgbmVlZGVkIE1ha2VmaWxlIGZyYWdtZW50cyBmb3IgdXNlIGlu IGdsaWJjL2VsZi9NYWtlZmlsZS4NCj4gKyAgICAgICAgbW9kdWxlX25hbWVzID0gIiINCj4gKyAg ICAgICAgZm9yIG8gaW4gdGVzdF9kZXNjci5vYmpzOg0KPiArICAgICAgICAgICAgbW9kdWxlX25h bWVzICs9ICIgIiArIHRlc3Rfc3ViZGlyICsgIi8iICsgdGVzdF9uYW1lICsgIi0iICsgbw0KPiAr ICAgICAgICBtYWtlZmlsZS53cml0ZSAoIm1vZHVsZXMtbmFtZXMgKz0lc1xuIiAlIChtb2R1bGVf bmFtZXMpKQ0KPiArDQo+ICsgICAgICAgICMgRGVwdGgtZmlyc3QgdHJhdmVyc2FsLCBleGVjdXRp bmcgRk4oT0JKKSBpbiBwb3N0LW9yZGVyDQo+ICsgICAgICAgIGRlZiBkZnMgKHQsIGZuKToNCj4g KyAgICAgICAgICAgIGRlZiBkZnNfcmVjIChvYmosIGZuLCBvYmpfdmlzaXRlZCk6DQo+ICsgICAg ICAgICAgICAgICAgaWYgb2JqIGluIG9ial92aXNpdGVkOg0KPiArICAgICAgICAgICAgICAgICAg ICByZXR1cm4NCj4gKyAgICAgICAgICAgICAgICBvYmpfdmlzaXRlZFtvYmpdID0gVHJ1ZQ0KPiAr ICAgICAgICAgICAgICAgIGlmIG9iaiBpbiB0LmRlcHM6DQo+ICsgICAgICAgICAgICAgICAgICAg IGZvciBkZXAgaW4gdC5kZXBzW29ial06DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICBkZnNf cmVjIChkZXAsIGZuLCBvYmpfdmlzaXRlZCkNCj4gKyAgICAgICAgICAgICAgICBmbiAob2JqKQ0K PiArDQo+ICsgICAgICAgICAgICBvYmpfdmlzaXRlZCA9IHt9DQo+ICsgICAgICAgICAgICBmb3Ig b2JqIGluIHQub2JqczoNCj4gKyAgICAgICAgICAgICAgICBkZnNfcmVjIChvYmosIGZuLCBvYmpf dmlzaXRlZCkNCj4gKw0KPiArICAgICAgICAjIEdlbmVyYXRlIGxpbmsgZGVwZW5kZW5jaWVzIGZv ciBhbGwgRFNPcywgZG9uZSBpbiBhIERGUyBmYXNoaW9uLiBVc3VhbGx5DQo+ICsgICAgICAgICMg dGhpcyBkb2Vzbid0IG5lZWQgdG8gYmUgdGhpcyBjb21wbGV4LCBqdXN0IGxpc3RpbmcgdGhlIGRp cmVjdCBkZXBlbmRlbmNpZXMNCj4gKyAgICAgICAgIyBpcyBlbm91Z2guIEhvd2V2ZXIgdG8gc3Vw cG9ydCBjcmVhdGluZyBjaXJjdWxhciBkZXBlbmRlbmN5IHNpdHVhdGlvbnMsDQo+ICsgICAgICAg ICMgdHJhdmVyc2luZyBpdCBieSBERlMgYW5kIHRyYWNraW5nIHByb2Nlc3Npbmcgc3RhdHVzIGlz IHRoZSBuYXR1cmFsIHdheSB0bw0KPiArICAgICAgICAjIGRvIGl0Lg0KDQpPSy4gQWdyZWVkLg0K DQo+ICsgICAgICAgIG9ial9wcm9jZXNzZWQgPSB7fQ0KPiArICAgICAgICBmYWtlX2NyZWF0ZWQg PSB7fQ0KPiArICAgICAgICBkZWYgZ2VuX2xpbmtfZGVwcyAob2JqKToNCj4gKyAgICAgICAgICAg IGlmIG9iaiBpbiB0ZXN0X2Rlc2NyLmRlcHM6DQo+ICsgICAgICAgICAgICAgICAgZHNvID0gdGVz dF9zdWJkaXIgKyAiLyIgKyB0ZXN0X25hbWUgKyAiLSIgKyBvYmogKyAiLnNvIg0KPiArICAgICAg ICAgICAgICAgIGRlcGVuZGVuY2llcyA9ICIiDQo+ICsgICAgICAgICAgICAgICAgZm9yIGRlcCBp biB0ZXN0X2Rlc2NyLmRlcHNbb2JqXToNCj4gKyAgICAgICAgICAgICAgICAgICAgaWYgZGVwIGlu IG9ial9wcm9jZXNzZWQ6DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICBkZXBzdHIgPSAoIiAk KG9ianBmeCkiICsgdGVzdF9zdWJkaXIgKyAiLyINCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICArIHRlc3RfbmFtZSArICItIiArIGRlcCArICIuc28iKQ0KPiArICAgICAgICAg ICAgICAgICAgICBlbHNlOg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBBIGNpcmN1bGFy IGRlcGVuZGVuY3kgaXMgc2F0aXNmaWVkIGJ5IG1ha2luZyBhIGZha2UgRFNPDQo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAjIHRhZ2dlZCB3aXRoIHRoZSBjb3JyZWN0IFNPTkFNRQ0KPiArICAg ICAgICAgICAgICAgICAgICAgICAgZGVwc3RyID0gKCIgJChvYmpwZngpIiArIHRlc3Rfc3ViZGly ICsgIi8iDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyB0ZXN0X25hbWUg KyAiLSIgKyBkZXAgKyAiLkZBS0Uuc28iKQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBD cmVhdGUgZW1wdHkgQyBmaWxlIGFuZCBNYWtlZmlsZSBmcmFnbWVudHMgZm9yIGZha2Ugb2JqZWN0 Lg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBUaGlzIG9ubHkgbmVlZHMgdG8gYmUgZG9u ZSBhdCBtb3N0IG9uY2UgZm9yIGFuIG9iamVjdCBuYW1lLg0KPiArICAgICAgICAgICAgICAgICAg ICAgICAgaWYgbm90IGRlcCBpbiBmYWtlX2NyZWF0ZWQ6DQo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZiA9IG9wZW4gKHRlc3RwZnggKyB0ZXN0X25hbWUgKyAiLSIgKyBkZXAgKyAiLkZB S0UuYyIsICJ3IikNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmLndyaXRlICgiIFxu IikNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmLmNsb3NlICgpDQo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIyBHZW5lcmF0ZSBydWxlIHRvIGNyZWF0ZSBmYWtlIG9iamVj dA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VmaWxlLndyaXRlICgiTERGTEFH Uy0lcyA9IC1XbCwtLW5vLWFzLW5lZWRlZCAiDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICItV2wsLXNvbmFtZT0lc1xuIg0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlICh0ZXN0X25hbWUgKyAiLSIgKyBkZXAgKyAi LkZBS0Uuc28iLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoIiQob2JqcGZ4KSIgKyB0ZXN0X3N1YmRpciArICIvIg0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyB0ZXN0X25hbWUgKyAiLSIgKyBkZXAg KyAiLnNvIikpKQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ha2VmaWxlLndyaXRl ICgibW9kdWxlcy1uYW1lcyArPSAlc1xuIg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAlICh0ZXN0X3N1YmRpciArICIvIg0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIHRlc3RfbmFtZSArICItIiArIGRlcCAr ICIuRkFLRSIpKQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZha2VfY3JlYXRlZFtk ZXBdID0gVHJ1ZQ0KPiArICAgICAgICAgICAgICAgICAgICBkZXBlbmRlbmNpZXMgKz0gZGVwc3Ry DQo+ICsgICAgICAgICAgICAgICAgbWFrZWZpbGUud3JpdGUgKCIkKG9ianBmeCklczolc1xuIiAl IChkc28sIGRlcGVuZGVuY2llcykpDQo+ICsgICAgICAgICAgICAjIE1hcmsgb2JqIGFzIHByb2Nl c3NlZA0KPiArICAgICAgICAgICAgb2JqX3Byb2Nlc3NlZFtvYmpdID0gVHJ1ZQ0KPiArDQo+ICsg ICAgICAgIGRmcyAodGVzdF9kZXNjciwgZ2VuX2xpbmtfZGVwcykNCj4gKw0KPiArICAgICAgICAj IFByaW50IExERkxBR1MtKiBhbmQgKi1uby16LWRlZnMNCj4gKyAgICAgICAgZm9yIG8gaW4gdGVz dF9kZXNjci5vYmpzOg0KPiArICAgICAgICAgICAgZHNvID0gdGVzdF9uYW1lICsgIi0iICsgbyAr ICIuc28iDQo+ICsgICAgICAgICAgICBtYWtlZmlsZS53cml0ZSAoIkxERkxBR1MtJXMgPSAtV2ws LS1uby1hcy1uZWVkZWRcbiIgJSAoZHNvKSkNCj4gKyAgICAgICAgICAgIGlmIG8gaW4gdGVzdF9k ZXNjci5jYWxscmVmczoNCj4gKyAgICAgICAgICAgICAgICBtYWtlZmlsZS53cml0ZSAoIiVzLW5v LXotZGVmcyA9IHllc1xuIiAlIChkc28pKQ0KPiArDQo+ICsgICAgICAgICMgUHJpbnQgZGVwZW5k ZW5jaWVzIGZvciBtYWluIHRlc3QgcHJvZ3JhbQ0KPiArICAgICAgICBkZXBzdHIgPSAiIg0KPiAr ICAgICAgICBpZiAnIycgaW4gdGVzdF9kZXNjci5kZXBzOg0KPiArICAgICAgICAgICAgZm9yIG8g aW4gdGVzdF9kZXNjci5kZXBzWycjJ106DQo+ICsgICAgICAgICAgICAgICAgZGVwc3RyICs9ICgi ICQob2JqcGZ4KSIgKyB0ZXN0X3N1YmRpciArICIvIg0KPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgKyB0ZXN0X25hbWUgKyAiLSIgKyBvICsgIi5zbyIpDQo+ICsgICAgICAgIGlmIHRlc3Rf ZGVzY3IubWFpbl9wcm9ncmFtX25lZWRzX2xkbDoNCj4gKyAgICAgICAgICAgIGRlcHN0ciArPSAi ICQobGliZGwpIg0KPiArICAgICAgICBtYWtlZmlsZS53cml0ZSAoIiQob2JqcGZ4KSVzLyVzOiVz XG4iICUgKHRlc3Rfc3ViZGlyLCB0ZXN0X25hbWUsIGRlcHN0cikpDQo+ICsgICAgICAgIG1ha2Vm aWxlLndyaXRlICgiTERGTEFHUy0lcyA9IC1XbCwtLW5vLWFzLW5lZWRlZFxuIiAlICh0ZXN0X25h bWUpKQ0KPiArDQo+ICsgICAgICAgIG5vdF9kZXBlbmRlZF9vYmpzID0gZmluZF9vYmpzX25vdF9k ZXBlbmRlZF9vbiAodGVzdF9kZXNjcikNCj4gKyAgICAgICAgaWYgbm90X2RlcGVuZGVkX29ianM6 DQo+ICsgICAgICAgICAgICBkZXBzdHIgPSAiIg0KPiArICAgICAgICAgICAgZm9yIGRlcCBpbiBu b3RfZGVwZW5kZWRfb2JqczoNCj4gKyAgICAgICAgICAgICAgICBkZXBzdHIgKz0gKCIgJChvYmpw ZngpIiArIHRlc3Rfc3ViZGlyICsgIi8iDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAr IHRlc3RfbmFtZSArICItIiArIGRlcCArICIuc28iKQ0KPiArICAgICAgICAgICAgbWFrZWZpbGUu d3JpdGUgKCIkKG9ianBmeCklcy5vdXQ6JXNcbiIgJSAoYmFzZV90ZXN0X25hbWUsIGRlcHN0cikp DQo+ICsNCj4gKyAgICAgICAgIyBBZGQgbWFpbiBleGVjdXRhYmxlIHRvIHRlc3Qtc3Jjcw0KPiAr ICAgICAgICBtYWtlZmlsZS53cml0ZSAoInRlc3Qtc3JjcyArPSAlcy8lc1xuIiAlICh0ZXN0X3N1 YmRpciwgdGVzdF9uYW1lKSkNCj4gKyAgICAgICAgIyBBZGQgZGVwZW5kZW5jeSBvbiBtYWluIGV4 ZWN1dGFibGUgb2YgdGVzdA0KPiArICAgICAgICBtYWtlZmlsZS53cml0ZSAoIiQob2JqcGZ4KSVz Lm91dDogJChvYmpwZngpJXMvJXNcbiINCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICUgKGJh c2VfdGVzdF9uYW1lLCB0ZXN0X3N1YmRpciwgdGVzdF9uYW1lKSkNCj4gKw0KPiArICAgICAgICBm b3IgciBpbiB0ZXN0X2Rlc2NyLmV4cGVjdGVkX291dHB1dHMuaXRlbXMgKCk6DQo+ICsgICAgICAg ICAgICB0dW5hYmxlX2VudiA9ICIiDQo+ICsgICAgICAgICAgICB0dW5hYmxlX3NmeCA9ICIiDQo+ ICsgICAgICAgICAgICBpZiByWzBdICE9ICIiOg0KPiArICAgICAgICAgICAgICAgIHR1bmFibGVf ZW52ID0gIkdMSUJDX1RVTkFCTEVTPSVzICIgJSByWzBdDQo+ICsgICAgICAgICAgICAgICAgdHVu YWJsZV9zZnggPSAiLSIgKyByWzBdLnJlcGxhY2UoIj0iLCJfIikNCj4gKyAgICAgICAgICAgICMg V3JpdGUgb3V0IGZyYWdtZW50IG9mIHNoZWxsIHNjcmlwdCBmb3IgdGhpcyBzaW5nbGUgdGVzdC4N Cj4gKyAgICAgICAgICAgIHRlc3RfZGVzY3Iuc2gud3JpdGUgKCIlcyR7dGVzdF93cmFwcGVyX2Vu dn0gJHtydW5fcHJvZ3JhbV9lbnZ9IFxcXG4iDQo+ICsgICAgICAgICAgICAgICAgICAgICIke2Nv bW1vbl9vYmpwZnh9ZWxmL2xkLnNvIFxcXG4iDQo+ICsgICAgICAgICAgICAgICAgICAgICItLWxp YnJhcnktcGF0aCAke2NvbW1vbl9vYmpwZnh9ZWxmLyVzOlxcXG4iDQo+ICsgICAgICAgICAgICAg ICAgICAgICIke2NvbW1vbl9vYmpwZnh9ZWxmOiR7Y29tbW9uX29ianBmeH0uOiR7Y29tbW9uX29i anBmeH1kbGZjbiBcXFxuIg0KPiArICAgICAgICAgICAgICAgICAgICAiICAke2NvbW1vbl9vYmpw Znh9ZWxmLyVzLyVzID4gJHtjb21tb25fb2JqcGZ4fWVsZi8lcy8lcyVzLm91dHB1dFxuIg0KPiAr ICAgICAgICAgICAgICAgICAgICAlICh0dW5hYmxlX2VudiAsdGVzdF9zdWJkaXIsDQo+ICsgICAg ICAgICAgICAgICAgICAgICAgIHRlc3Rfc3ViZGlyLCB0ZXN0X25hbWUsIHRlc3Rfc3ViZGlyLCB0 ZXN0X25hbWUsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgIHR1bmFibGVfc2Z4KSkNCj4gKyAg ICAgICAgICAgICMgR2VuZXJhdGUgYSBydW4gb2YgZWFjaCB0ZXN0IGFuZCBjb21wYXJlIHdpdGgg ZXhwZWN0ZWQgb3V0DQo+ICsgICAgICAgICAgICB0ZXN0X2Rlc2NyLnNoLndyaXRlICgiaWYgWyAk PyAtbmUgMCBdOyB0aGVuXG4iDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi ICBlY2hvICdGQUlMOiAlcyBleGVjdXRpb24gdGVzdCdcbiINCj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICIgIHNvbWV0aGluZ19mYWlsZWQ9dHJ1ZVxuIg0KPiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgImZpXG4iDQo+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAiZGlmZiAtd3UgJHtjb21tb25fb2JqcGZ4fWVsZi8lcy8lcyVzLm91dHB1dCBc XFxuIg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiAgICAgICAgICR7Y29t bW9uX29ianBmeH1lbGYvJXMvJXMlcy5leHBcbiINCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJpZiBbICQ/IC1uZSAwIF07IHRoZW5cbiINCj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICIgIGVjaG8gJ0ZBSUw6ICVzJXMgZXhwZWN0ZWQgb3V0cHV0IGNvbXBh cmlzb24nXG4iDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiICBzb21ldGhp bmdfZmFpbGVkPXRydWVcbiINCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJm aVxuIg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSAodGVzdF9uYW1lLA0K PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9zdWJkaXIsIHRlc3Rf bmFtZSwgdHVuYWJsZV9zZngsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0ZXN0X3N1YmRpciwgYmFzZV90ZXN0X25hbWUsIHR1bmFibGVfc2Z4LA0KPiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9uYW1lLCAoIiglcykiICUgdHVuYWJsZV9l bnYuc3RyaXAoKQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaWYgdHVuYWJsZV9lbnYgZWxzZSAiIikpKQ0KPiArDQo+ICsgICAgICAgICMgR2VuZXJh dGUgQyBmaWxlcyBhY2NvcmRpbmcgdG8gZGVwZW5kZW5jeSBhbmQgY2FsbGluZyByZWxhdGlvbnMg ZnJvbQ0KPiArICAgICAgICAjIGRlc2NyaXB0aW9uIHN0cmluZy4NCj4gKyAgICAgICAgZm9yIG9i aiBpbiB0ZXN0X2Rlc2NyLm9ianM6DQo+ICsgICAgICAgICAgICBzcmNfbmFtZSA9IHRlc3RfbmFt ZSArICItIiArIG9iaiArICIuYyINCj4gKyAgICAgICAgICAgIGYgPSBvcGVuICh0ZXN0cGZ4ICsg c3JjX25hbWUsICJ3IikNCj4gKyAgICAgICAgICAgIGlmIG9iaiBpbiB0ZXN0X2Rlc2NyLmNhbGxy ZWZzOg0KPiArICAgICAgICAgICAgICAgIGNhbGxlZF9vYmpzID0gdGVzdF9kZXNjci5jYWxscmVm c1tvYmpdDQo+ICsgICAgICAgICAgICAgICAgZm9yIGNhbGxlZSBpbiBjYWxsZWRfb2JqczoNCj4g KyAgICAgICAgICAgICAgICAgICAgZi53cml0ZSAoImV4dGVybiB2b2lkIGZuXyVzICh2b2lkKTtc biIgJSAoY2FsbGVlKSkNCj4gKyAgICAgICAgICAgIGlmIGxlbihvYmopID09IDE6DQo+ICsgICAg ICAgICAgICAgICAgZi53cml0ZSAoImV4dGVybiBpbnQgcHV0Y2hhcihpbnQpO1xuIikNCj4gKyAg ICAgICAgICAgICAgICBmLndyaXRlICgic3RhdGljIHZvaWQgX19hdHRyaWJ1dGVfXygoY29uc3Ry dWN0b3IpKSAiICsNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAiaW5pdCh2b2lkKXtwdXRj aGFyKCclcycpO3B1dGNoYXIoJz4nKTt9XG4iICUgKG9iaikpDQo+ICsgICAgICAgICAgICAgICAg Zi53cml0ZSAoInN0YXRpYyB2b2lkIF9fYXR0cmlidXRlX18oKGRlc3RydWN0b3IpKSAiICsNCj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAiZmluaSh2b2lkKXtwdXRjaGFyKCc8Jyk7cHV0Y2hh cignJXMnKTt9XG4iICUgKG9iaikpDQo+ICsgICAgICAgICAgICBlbHNlOg0KPiArICAgICAgICAg ICAgICAgIGYud3JpdGUgKCdleHRlcm4gaW50IHByaW50Zihjb25zdCBjaGFyICosIC4uLik7XG4n KQ0KPiArICAgICAgICAgICAgICAgIGYud3JpdGUgKCdzdGF0aWMgdm9pZCBfX2F0dHJpYnV0ZV9f KChjb25zdHJ1Y3RvcikpICcgKw0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICdpbml0KHZv aWQpe3ByaW50ZigiJXM+Iik7fVxuJyAlIChvYmopKQ0KPiArICAgICAgICAgICAgICAgIGYud3Jp dGUgKCdzdGF0aWMgdm9pZCBfX2F0dHJpYnV0ZV9fKChkZXN0cnVjdG9yKSkgJyArDQo+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgJ2Zpbmkodm9pZCl7cHJpbnRmKCI8JXMiKTt9XG4nICUgKG9i aikpDQo+ICsgICAgICAgICAgICBpZiBvYmogaW4gdGVzdF9kZXNjci5jYWxscmVmczoNCj4gKyAg ICAgICAgICAgICAgICBjYWxsZWRfb2JqcyA9IHRlc3RfZGVzY3IuY2FsbHJlZnNbb2JqXQ0KPiAr ICAgICAgICAgICAgICAgIGlmIGxlbiAob2JqKSAhPSAxOg0KPiArICAgICAgICAgICAgICAgICAg ICBmLndyaXRlICgiZXh0ZXJuIGludCBwdXRjaGFyKGludCk7XG4iKQ0KPiArICAgICAgICAgICAg ICAgIGYud3JpdGUgKCJ2b2lkIGZuXyVzICh2b2lkKSB7XG4iICUgKG9iaikpDQo+ICsgICAgICAg ICAgICAgICAgaWYgbGVuIChvYmopID09IDE6DQo+ICsgICAgICAgICAgICAgICAgICAgIGYud3Jp dGUgKCIgIHB1dGNoYXIgKCclcycpO1xuIiAlIChvYmopKTsNCj4gKyAgICAgICAgICAgICAgICAg ICAgZi53cml0ZSAoIiAgcHV0Y2hhciAoJygnKTtcbiIpOw0KPiArICAgICAgICAgICAgICAgIGVs c2U6DQo+ICsgICAgICAgICAgICAgICAgICAgIGYud3JpdGUgKCcgIHByaW50ZiAoIiVzKCIpO1xu JyAlIChvYmopKTsNCj4gKyAgICAgICAgICAgICAgICBmb3IgY2FsbGVlIGluIGNhbGxlZF9vYmpz Og0KPiArICAgICAgICAgICAgICAgICAgICBmLndyaXRlICgiICBmbl8lcyAoKTtcbiIgJSAoY2Fs bGVlKSkNCj4gKyAgICAgICAgICAgICAgICBmLndyaXRlICgiICBwdXRjaGFyICgnKScpO1xuIik7 DQo+ICsgICAgICAgICAgICAgICAgZi53cml0ZSAoIn1cbiIpDQo+ICsgICAgICAgICAgICBlbHNl Og0KPiArICAgICAgICAgICAgICAgIGZvciBjYWxscmVmIGluIHRlc3RfZGVzY3IuY2FsbHJlZnMu aXRlbXMoKToNCj4gKyAgICAgICAgICAgICAgICAgICAgaWYgb2JqIGluIGNhbGxyZWZbMV06DQo+ ICsgICAgICAgICAgICAgICAgICAgICAgICBpZiBsZW4gKG9iaikgPT0gMToNCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAjIFdlIG5lZWQgdG8gZGVjbGFyZSBwcmludGYgaGVyZSBpbiB0 aGlzIGNhc2UuDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgZi53cml0ZSAoJ2V4dGVy biBpbnQgcHJpbnRmKGNvbnN0IGNoYXIgKiwgLi4uKTtcbicpDQo+ICsgICAgICAgICAgICAgICAg ICAgICAgICBmLndyaXRlICgidm9pZCBmbl8lcyAodm9pZCkge1xuIiAlIChvYmopKQ0KPiArICAg ICAgICAgICAgICAgICAgICAgICAgZi53cml0ZSAoJyAgcHJpbnRmICgiJXMoKSIpO1xuJyAlIChv YmopKQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgZi53cml0ZSAoIn1cbiIpDQo+ICsgICAg ICAgICAgICAgICAgICAgICAgICBicmVhaw0KPiArICAgICAgICAgICAgZi5jbG9zZSAoKQ0KPiAr DQo+ICsgICAgICAgICMgT3BlbiBDIGZpbGUgZm9yIHdyaXRpbmcgbWFpbiBwcm9ncmFtDQo+ICsg ICAgICAgIGYgPSBvcGVuICh0ZXN0cGZ4ICsgdGVzdF9uYW1lICsgIi5jIiwgInciKQ0KPiArDQo+ ICsgICAgICAgICMgaWYgdGhlcmUgYXJlIHNvbWUgb3BlcmF0aW9ucyBpbiBtYWluKCksIGl0IG1l YW5zIHdlIG5lZWQgLWxkbA0KPiArICAgICAgICBpZiB0ZXN0X2Rlc2NyLm1haW5fcHJvZ3JhbV9u ZWVkc19sZGw6DQo+ICsgICAgICAgICAgICBmLndyaXRlICgiI2luY2x1ZGUgPGRsZmNuLmg+XG4i KQ0KPiArICAgICAgICBmLndyaXRlICgiI2luY2x1ZGUgPHN0ZGlvLmg+XG4iKQ0KPiArICAgICAg ICBmLndyaXRlICgiI2luY2x1ZGUgPHN0ZGxpYi5oPlxuIikNCj4gKyAgICAgICAgZm9yIHMgaW4g dGVzdF9kZXNjci5tYWluX3Byb2dyYW06DQo+ICsgICAgICAgICAgICBpZiBzWzBdID09ICdAJzoN Cj4gKyAgICAgICAgICAgICAgICBmLndyaXRlICgiZXh0ZXJuIHZvaWQgZm5fJXMgKHZvaWQpO1xu Iiwgc1sxXSk7DQo+ICsgICAgICAgIGYud3JpdGUgKCJpbnQgbWFpbiAodm9pZCkge1xuIikNCj4g KyAgICAgICAgZi53cml0ZSAoIiAgcHV0Y2hhcigneycpO1xuIikNCj4gKw0KPiArICAgICAgICAj IEhlbHBlciByb3V0aW5lIGZvciBnZW5lcmF0aW5nIHNhbml0eSBjaGVja2luZyBjb2RlLg0KPiAr ICAgICAgICBkZWYgcHV0X2ZhaWxfY2hlY2sgKGZhaWxfY29uZCwgYWN0aW9uX2Rlc2MpOg0KPiAr ICAgICAgICAgICAgZi53cml0ZSAoJyAgaWYgKCVzKSB7IHByaW50ZiAoIlxcbiVzIGZhaWxlZDog JSVzXFxuIiwgJw0KPiArICAgICAgICAgICAgICAgICAgICAgJ2RsZXJyb3IgKCkpOyBleGl0ICgx KTt9XG4nICUgKGZhaWxfY29uZCwgYWN0aW9uX2Rlc2MpKQ0KPiArICAgICAgICBpID0gMA0KPiAr ICAgICAgICB3aGlsZSBpIDwgbGVuKHRlc3RfZGVzY3IubWFpbl9wcm9ncmFtKToNCj4gKyAgICAg ICAgICAgIHMgPSB0ZXN0X2Rlc2NyLm1haW5fcHJvZ3JhbVtpXQ0KPiArICAgICAgICAgICAgb2Jq ID0gc1tsZW4ocyktMV0NCj4gKyAgICAgICAgICAgIGRzbyA9IHRlc3RfbmFtZSArICItIiArIG9i ag0KPiArICAgICAgICAgICAgaWYgc1swXSA9PSAnKycgb3Igc1swXSA9PSAnXic6DQo+ICsgICAg ICAgICAgICAgICAgaWYgc1swXSA9PSAnKyc6DQo+ICsgICAgICAgICAgICAgICAgICAgIGRsb3Bl bl9mbGFncyA9ICJSVExEX0xBWll8UlRMRF9HTE9CQUwiDQo+ICsgICAgICAgICAgICAgICAgICAg IGYud3JpdGUgKCIgIHB1dGNoYXIoJysnKTtcbiIpOw0KPiArICAgICAgICAgICAgICAgIGVsc2U6 DQo+ICsgICAgICAgICAgICAgICAgICAgIGRsb3Blbl9mbGFncyA9ICJSVExEX0xBWlkiDQo+ICsg ICAgICAgICAgICAgICAgICAgIGYud3JpdGUgKCIgIHB1dGNoYXIoJzonKTtcbiIpOw0KPiArICAg ICAgICAgICAgICAgIGlmIGxlbiAob2JqKSA9PSAxOg0KPiArICAgICAgICAgICAgICAgICAgICBm LndyaXRlICgiICBwdXRjaGFyKCclcycpO1xuIiAlIChvYmopKTsNCj4gKyAgICAgICAgICAgICAg ICBlbHNlOg0KPiArICAgICAgICAgICAgICAgICAgICBmLndyaXRlICgnICBwcmludGYoIiVzIik7 XG4nICUgKG9iaikpOw0KPiArICAgICAgICAgICAgICAgIGYud3JpdGUgKCIgIHB1dGNoYXIoJ1sn KTtcbiIpOw0KPiArICAgICAgICAgICAgICAgIGYud3JpdGUgKCcgIHZvaWQgKiVzID0gZGxvcGVu ICgiJXMuc28iLCAlcyk7XG4nDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgJSAob2JqLCBk c28sIGRsb3Blbl9mbGFncykpDQo+ICsgICAgICAgICAgICAgICAgcHV0X2ZhaWxfY2hlY2sgKCIh JXMiICUgKG9iaiksDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcy5zbyBk bG9wZW4iICUgKGRzbykpDQo+ICsgICAgICAgICAgICAgICAgZi53cml0ZSAoIiAgcHV0Y2hhcign XScpO1xuIik7DQo+ICsgICAgICAgICAgICBlbGlmIHNbMF0gPT0gJy0nOg0KPiArICAgICAgICAg ICAgICAgIGYud3JpdGUgKCIgIHB1dGNoYXIoJy0nKTtcbiIpOw0KPiArICAgICAgICAgICAgICAg IGlmIGxlbiAob2JqKSA9PSAxOg0KPiArICAgICAgICAgICAgICAgICAgICBmLndyaXRlICgiICBw dXRjaGFyKCclcycpO1xuIiAlIChvYmopKTsNCj4gKyAgICAgICAgICAgICAgICBlbHNlOg0KPiAr ICAgICAgICAgICAgICAgICAgICBmLndyaXRlICgnICBwcmludGYoIiVzIik7XG4nICUgKG9iaikp Ow0KPiArICAgICAgICAgICAgICAgIGYud3JpdGUgKCIgIHB1dGNoYXIoJ1snKTtcbiIpOw0KPiAr ICAgICAgICAgICAgICAgIHB1dF9mYWlsX2NoZWNrICgiZGxjbG9zZSAoJXMpICE9IDAiICUgKG9i aiksDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcy5zbyBkbGNsb3NlIiAl IChkc28pKQ0KPiArICAgICAgICAgICAgICAgIGYud3JpdGUgKCIgIHB1dGNoYXIoJ10nKTtcbiIp Ow0KPiArICAgICAgICAgICAgZWxpZiBzWzBdID09ICclJzoNCj4gKyAgICAgICAgICAgICAgICBm LndyaXRlICgiICBwdXRjaGFyKCclJyk7XG4iKTsNCj4gKyAgICAgICAgICAgICAgICBmLndyaXRl ICgnICB2b2lkICgqZm5fJXMpKHZvaWQpID0gZGxzeW0gKCVzLCAiZm5fJXMiKTtcbicNCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAlIChvYmosIG9iaiwgb2JqKSkNCj4gKyAgICAgICAgICAg ICAgICBwdXRfZmFpbF9jaGVjayAoIiFmbl8lcyIgJSAob2JqKSwNCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgImRsc3ltKGZuXyVzKSBmcm9tICVzLnNvIiAlIChvYmosIGRzbykp DQo+ICsgICAgICAgICAgICAgICAgZi53cml0ZSAoIiAgZm5fJXMgKCk7XG4iICUgKG9iaikpDQo+ ICsgICAgICAgICAgICBlbGlmIHNbMF0gPT0gJ0AnOg0KPiArICAgICAgICAgICAgICAgIGYud3Jp dGUgKCIgIHB1dGNoYXIoJ0AnKTtcbiIpOw0KPiArICAgICAgICAgICAgICAgIGYud3JpdGUgKCIg IGZuXyVzICgpO1xuIiAlIChvYmopKQ0KPiArICAgICAgICAgICAgZi53cml0ZSAoIiAgcHV0Y2hh cignOycpO1xuIik7DQo+ICsgICAgICAgICAgICBpICs9IDENCj4gKyAgICAgICAgZi53cml0ZSAo IiAgcHV0Y2hhcignfScpO1xuIikNCj4gKyAgICAgICAgZi53cml0ZSAoIiAgcmV0dXJuIDA7XG4i KQ0KPiArICAgICAgICBmLndyaXRlICgifVxuIikNCj4gKyAgICAgICAgZi5jbG9zZSAoKQ0KPiAr DQo+ICsgICAgICAgICMgLS1idWlsZCBvcHRpb24gcHJvY2Vzc2luZzogYnVpbGQgZ2VuZXJhdGVk IHNvdXJjZXMgdXNpbmcgJ2J1aWxkX2djYycNCj4gKyAgICAgICAgaWYgY21kbGluZWFyZ3MuYnVp bGQ6DQo+ICsgICAgICAgICAgICAjIEhlbHBlciByb3V0aW5lIHRvIHJ1biBhIHNoZWxsIGNvbW1h bmQsIGZvciBydW5uaW5nIEdDQyBiZWxvdw0KPiArICAgICAgICAgICAgZGVmIHJ1bl9jbWQgKGFy Z3MpOg0KPiArICAgICAgICAgICAgICAgIGNtZCA9IHN0ci5qb2luICgnICcsIGFyZ3MpDQo+ICsg ICAgICAgICAgICAgICAgaWYgY21kbGluZWFyZ3MuZGVidWdfb3V0cHV0Og0KPiArICAgICAgICAg ICAgICAgICAgICBwcmludCAoY21kKQ0KPiArICAgICAgICAgICAgICAgIHAgPSBzdWJwcm9jZXNz LlBvcGVuIChhcmdzKQ0KPiArICAgICAgICAgICAgICAgIHAud2FpdCAoKQ0KPiArICAgICAgICAg ICAgICAgIGlmIHAucmV0dXJuY29kZSAhPSAwOg0KPiArICAgICAgICAgICAgICAgICAgICBwcmlu dCAoIkVycm9yIHJ1bm5pbmc6ICVzIiAlIChjbWQpKQ0KPiArICAgICAgICAgICAgICAgICAgICBl eGl0ICgtMSkNCj4gKw0KPiArICAgICAgICAgICAgIyBDb21waWxlIGluZGl2aWR1YWwgLm9zIGZp bGVzDQo+ICsgICAgICAgICAgICBmb3Igb2JqIGluIHRlc3RfZGVzY3Iub2JqczoNCj4gKyAgICAg ICAgICAgICAgICBzcmNfbmFtZSA9IHRlc3RfbmFtZSArICItIiArIG9iaiArICIuYyINCj4gKyAg ICAgICAgICAgICAgICBvYmpfbmFtZSA9IHRlc3RfbmFtZSArICItIiArIG9iaiArICIub3MiDQo+ ICsgICAgICAgICAgICAgICAgcnVuX2NtZCAoW2J1aWxkX2djYywgIi1jIiwgIi1mUElDIiwgdGVz dHBmeCArIHNyY19uYW1lLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAiLW8iLCB0ZXN0 cGZ4ICsgb2JqX25hbWVdKQ0KPiArDQo+ICsgICAgICAgICAgICBvYmpfcHJvY2Vzc2VkID0ge30N Cj4gKyAgICAgICAgICAgIGZha2VfY3JlYXRlZCA9IHt9DQo+ICsgICAgICAgICAgICAjIEZ1bmN0 aW9uIHRvIGNyZWF0ZSA8dGVzdF9uYW1lPi08b2JqPi5zbw0KPiArICAgICAgICAgICAgZGVmIGJ1 aWxkX2RzbyAob2JqKToNCj4gKyAgICAgICAgICAgICAgICBvYmpfbmFtZSA9IHRlc3RfbmFtZSAr ICItIiArIG9iaiArICIub3MiDQo+ICsgICAgICAgICAgICAgICAgZHNvX25hbWUgPSB0ZXN0X25h bWUgKyAiLSIgKyBvYmogKyAiLnNvIg0KPiArICAgICAgICAgICAgICAgIGRlcHMgPSBbXQ0KPiAr ICAgICAgICAgICAgICAgIGlmIG9iaiBpbiB0ZXN0X2Rlc2NyLmRlcHM6DQo+ICsgICAgICAgICAg ICAgICAgICAgIGZvciBkZXAgaW4gdGVzdF9kZXNjci5kZXBzW29ial06DQo+ICsgICAgICAgICAg ICAgICAgICAgICAgICBpZiBkZXAgaW4gb2JqX3Byb2Nlc3NlZDoNCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICBkZXBzLmFwcGVuZCAoZGVwKQ0KPiArICAgICAgICAgICAgICAgICAgICAg ICAgZWxzZToNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXBzLmFwcGVuZCAoZGVw ICsgIi5GQUtFIikNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgZGVwIGlu IGZha2VfY3JlYXRlZDoNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21kID0g W2J1aWxkX2djYywgIi1XbCwtLW5vLWFzLW5lZWRlZCIsDQo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAoIi1XbCwtc29uYW1lPSIgKyB0ZXN0cGZ4DQo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyB0ZXN0X25hbWUgKyAiLSIgKyBkZXAg KyAiLnNvIiksDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLXNo YXJlZCIsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0cGZ4 ICsgdGVzdF9uYW1lICsgIi0iICsgZGVwICsgIi5GQUtFLmMiLA0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIi1vIiwNCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHRlc3RwZnggKyB0ZXN0X25hbWUgKyAiLSIgKyBkZXAgKyAiLkZBS0Uu c28iXQ0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydW5fY21kIChjbWQpDQo+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZha2VfY3JlYXRlZFtkZXBdID0gVHJ1 ZQ0KPiArICAgICAgICAgICAgICAgIGRzb19kZXBzID0gbWFwIChsYW1iZGEgZDogdGVzdHBmeCAr IHRlc3RfbmFtZSArICItIiArIGQgKyAiLnNvIiwgZGVwcykNCj4gKyAgICAgICAgICAgICAgICBj bWQgPSAoW2J1aWxkX2djYywgIi1zaGFyZWQiLCAiLW8iLCB0ZXN0cGZ4ICsgZHNvX25hbWUsDQo+ ICsgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0cGZ4ICsgb2JqX25hbWUsICItV2wsLS1uby1h cy1uZWVkZWQiXSArIGxpc3QoZHNvX2RlcHMpKQ0KPiArICAgICAgICAgICAgICAgIHJ1bl9jbWQg KGNtZCkNCj4gKyAgICAgICAgICAgICAgICBvYmpfcHJvY2Vzc2VkW29ial0gPSBUcnVlDQo+ICsN Cj4gKyAgICAgICAgICAgICMgQnVpbGQgYWxsIERTT3MsIHRoaXMgbmVlZHMgdG8gYmUgaW4gdG9w b2xvZ2ljYWwgZGVwZW5kZW5jeSBvcmRlciwNCj4gKyAgICAgICAgICAgICMgb3IgbGluayB3aWxs IGZhaWwNCj4gKyAgICAgICAgICAgIGRmcyAodGVzdF9kZXNjciwgYnVpbGRfZHNvKQ0KPiArDQo+ ICsgICAgICAgICAgICAjIEJ1aWxkIG1haW4gcHJvZ3JhbQ0KPiArICAgICAgICAgICAgZGVwcyA9 IFtdDQo+ICsgICAgICAgICAgICBpZiAnIycgaW4gdGVzdF9kZXNjci5kZXBzOg0KPiArICAgICAg ICAgICAgICAgIGRlcHMgPSB0ZXN0X2Rlc2NyLmRlcHNbJyMnXQ0KPiArICAgICAgICAgICAgbWFp bl9kZXBzID0gbWFwIChsYW1iZGEgZDogdGVzdHBmeCArIHRlc3RfbmFtZSArICItIiArIGQgKyAi LnNvIiwgZGVwcykNCj4gKyAgICAgICAgICAgIGNtZCA9IChbYnVpbGRfZ2NjLCAiLVdsLC0tbm8t YXMtbmVlZGVkIiwgIi1vIiwgdGVzdHBmeCArIHRlc3RfbmFtZSwNCj4gKyAgICAgICAgICAgICAg ICAgICAgdGVzdHBmeCArIHRlc3RfbmFtZSArICIuYyIsICItTCVzIiAlIChvcy5nZXRjd2QgKCkp LA0KPiArICAgICAgICAgICAgICAgICAgICAiLVdsLC1ycGF0aC1saW5rPSVzIiAlIChvcy5nZXRj d2QgKCkpXQ0KPiArICAgICAgICAgICAgICAgICAgICsgbGlzdCAobWFpbl9kZXBzKSkNCj4gKyAg ICAgICAgICAgIGlmIHRlc3RfZGVzY3IubWFpbl9wcm9ncmFtX25lZWRzX2xkbDoNCj4gKyAgICAg ICAgICAgICAgICBjbWQgKz0gWyItbGRsIl0NCj4gKyAgICAgICAgICAgIHJ1bl9jbWQgKGNtZCkN Cj4gKw0KPiArICAgICMgQ2hlY2sgaWYgd2UgbmVlZCB0byBlbnVtZXJhdGUgcGVybXV0YXRpb25z IG9mIGRlcGVuZGVuY2llcw0KPiArICAgIG5lZWRfcGVybXV0YXRpb25fcHJvY2Vzc2luZyA9IEZh bHNlDQo+ICsgICAgaWYgdC5kZXBfcGVybXV0YXRpb25zOg0KPiArICAgICAgICAjIEFkanVzdCBk ZXBfcGVybXV0YXRpb25zIGludG8gbWFwIG9mIG9iamVjdCAtPiBkZXBlbmRlbmN5IHBlcm11dGF0 aW9ucw0KPiArICAgICAgICBmb3IgciBpbiB0LmRlcF9wZXJtdXRhdGlvbnMuaXRlbXMoKToNCj4g KyAgICAgICAgICAgIG9iaiA9IHJbMF0NCj4gKyAgICAgICAgICAgIGlmIG9iaiBpbiB0LmRlcHMg YW5kIGxlbih0LmRlcHNbb2JqXSkgPiAxOg0KPiArICAgICAgICAgICAgICAgIGRlcHMgPSB0LmRl cHNbb2JqXQ0KPiArICAgICAgICAgICAgICAgIHQuZGVwX3Blcm11dGF0aW9uc1tvYmpdID0gbGlz dCAoaXRlcnRvb2xzLnBlcm11dGF0aW9ucyAoZGVwcykpDQo+ICsgICAgICAgICAgICAgICAgbmVl ZF9wZXJtdXRhdGlvbl9wcm9jZXNzaW5nID0gVHJ1ZQ0KPiArDQo+ICsgICAgZGVmIGVudW1fcGVy bXV0YXRpb25zICh0LCBwZXJtX2xpc3QpOg0KPiArICAgICAgICB0ZXN0X3N1YmluZGV4ID0gMQ0K PiArICAgICAgICBjdXJyX3Blcm1zID0gW10NCj4gKyAgICAgICAgZGVmIGVudW1fcGVybXV0YXRp b25zX3JlYyAodCwgcGVybV9saXN0KToNCj4gKyAgICAgICAgICAgIG5vbmxvY2FsIHRlc3Rfc3Vi aW5kZXgsIGN1cnJfcGVybXMNCj4gKyAgICAgICAgICAgIGlmIGxlbihwZXJtX2xpc3QpID49IDE6 DQo+ICsgICAgICAgICAgICAgICAgY3VyciA9IHBlcm1fbGlzdFswXQ0KPiArICAgICAgICAgICAg ICAgIG9iaiA9IGN1cnJbMF0NCj4gKyAgICAgICAgICAgICAgICBwZXJtcyA9IGN1cnJbMV0NCj4g KyAgICAgICAgICAgICAgICBpZiBub3QgcGVybXM6DQo+ICsgICAgICAgICAgICAgICAgICAgICMg VGhpcyBtYXkgYmUgYW4gZW1wdHkgbGlzdCBpZiBubyBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgdG8N Cj4gKyAgICAgICAgICAgICAgICAgICAgIyBwZXJtdXRlIHdlcmUgZm91bmQsIHNraXAgdG8gbmV4 dCBpbiB0aGlzIGNhc2UNCj4gKyAgICAgICAgICAgICAgICAgICAgZW51bV9wZXJtdXRhdGlvbnNf cmVjICh0LCBwZXJtX2xpc3RbMTpdKQ0KPiArICAgICAgICAgICAgICAgIGVsc2U6DQo+ICsgICAg ICAgICAgICAgICAgICAgIGZvciBkZXBzIGluIHBlcm1zOg0KPiArICAgICAgICAgICAgICAgICAg ICAgICAgdC5kZXBzW29ial0gPSBkZXBzDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICBwZXJt c3RyID0gIiIgaWYgb2JqID09ICIjIiBlbHNlIG9iaiArICJfIg0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgcGVybXN0ciArPSBzdHIuam9pbiAoJycsIGRlcHMpDQo+ICsgICAgICAgICAgICAg ICAgICAgICAgICBjdXJyX3Blcm1zLmFwcGVuZCAocGVybXN0cikNCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgIGVudW1fcGVybXV0YXRpb25zX3JlYyAodCwgcGVybV9saXN0WzE6XSkNCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgIGN1cnJfcGVybXMgPSBjdXJyX3Blcm1zWzA6bGVuKGN1cnJf cGVybXMpLTFdDQo+ICsgICAgICAgICAgICBlbHNlOg0KPiArICAgICAgICAgICAgICAgICMgdC5k ZXBzIGlzIG5vdyBpbnN0YW50aWF0ZWQgd2l0aCBvbmUgZGVwZW5kZW5jeSBvcmRlcg0KPiArICAg ICAgICAgICAgICAgICMgcGVybXV0YXRpb24gKGFjcm9zcyBhbGwgb2JqZWN0cyB0aGF0IGhhdmUg bXVsdGlwbGUNCj4gKyAgICAgICAgICAgICAgICAjIHBlcm11dGF0aW9ucyksIG5vdyBwcm9jZXNz IGEgdGVzdGNhc2UNCj4gKyAgICAgICAgICAgICAgICBnZW5lcmF0ZV90ZXN0Y2FzZSAodCwgKCJf IiArIHN0ciAodGVzdF9zdWJpbmRleCkNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICsgIi0iICsgc3RyLmpvaW4gKCctJywgY3Vycl9wZXJtcykpKQ0KPiArICAgICAg ICAgICAgICAgIHRlc3Rfc3ViaW5kZXggKz0gMQ0KPiArICAgICAgICBlbnVtX3Blcm11dGF0aW9u c19yZWMgKHQsIHBlcm1fbGlzdCkNCj4gKw0KPiArICAgICMgQ3JlYXRlICouZXhwIGZpbGVzIHdp dGggZXhwZWN0ZWQgb3V0cHV0cw0KPiArICAgIGZvciByIGluIHQuZXhwZWN0ZWRfb3V0cHV0cy5p dGVtcyAoKToNCj4gKyAgICAgICAgc2Z4ID0gIiINCj4gKyAgICAgICAgaWYgclswXSAhPSAiIjoN Cj4gKyAgICAgICAgICAgIHNmeCA9ICItIiArIHJbMF0ucmVwbGFjZSgiPSIsIl8iKQ0KPiArICAg ICAgICBmID0gb3BlbiAodGVzdHBmeCArIHQudGVzdF9uYW1lICsgc2Z4ICsgIi5leHAiLCAidyIp DQo+ICsgICAgICAgIGYud3JpdGUgKCclcycgJSByWzFdKQ0KPiArICAgICAgICBmLmNsb3NlICgp DQo+ICsNCj4gKyAgICAjIENyZWF0ZSBoZWFkZXIgcGFydCBvZiB0b3AtbGV2ZWwgdGVzdGNhc2Ug c2hlbGwgc2NyaXB0LCB0byB3cmFwIGV4ZWN1dGlvbg0KPiArICAgICMgYW5kIG91dHB1dCBjb21w YXJpc29uIHRvZ2V0aGVyLg0KPiArICAgIHQuc2ggPSBvcGVuICh0ZXN0cGZ4ICsgdC50ZXN0X25h bWUgKyAiLnNoIiwgInciKQ0KPiArICAgIHQuc2gud3JpdGUgKCIjIS9iaW4vc2hcbiIpDQo+ICsg ICAgdC5zaC53cml0ZSAoIiMgVGVzdCBkcml2ZXIgZm9yICVzLCBnZW5lcmF0ZWQgYnkgIg0KPiAr ICAgICAgICAgICAgICAgICJkc28tb3JkZXJpbmctdGVzdC5weVxuIiAlICh0LnRlc3RfbmFtZSkp DQo+ICsgICAgdC5zaC53cml0ZSAoImNvbW1vbl9vYmpwZng9JDFcbiIpDQo+ICsgICAgdC5zaC53 cml0ZSAoInRlc3Rfd3JhcHBlcl9lbnY9JDJcbiIpDQo+ICsgICAgdC5zaC53cml0ZSAoInJ1bl9w cm9ncmFtX2Vudj0kM1xuIikNCj4gKyAgICB0LnNoLndyaXRlICgic29tZXRoaW5nX2ZhaWxlZD1m YWxzZVxuIikNCj4gKw0KPiArICAgICMgU3RhcnRpbmcgcGFydCBvZiBNYWtlZmlsZSBmcmFnbWVu dA0KPiArICAgIG1ha2VmaWxlLndyaXRlICgiaWZlcSAoeWVzLCQoYnVpbGQtc2hhcmVkKSlcbiIp DQo+ICsNCj4gKyAgICBpZiBuZWVkX3Blcm11dGF0aW9uX3Byb2Nlc3Npbmc6DQo+ICsgICAgICAg IGVudW1fcGVybXV0YXRpb25zICh0LCBsaXN0ICh0LmRlcF9wZXJtdXRhdGlvbnMuaXRlbXMoKSkp DQo+ICsgICAgZWxzZToNCj4gKyAgICAgICAgIyBXZSBoYXZlIG5vIHBlcm11dGF0aW9ucyB0byBl bnVtZXJhdGUsIGp1c3QgcHJvY2VzcyB0ZXN0Y2FzZSBub3JtYWxseQ0KPiArICAgICAgICBnZW5l cmF0ZV90ZXN0Y2FzZSAodCwgIiIpDQo+ICsNCj4gKyAgICAjIE91dHB1dCBlbmQgcGFydCBvZiBN YWtlZmlsZSBmcmFnbWVudA0KPiArICAgIGV4cGVjdGVkX291dHB1dF9maWxlcyA9ICIiDQo+ICsg ICAgZm9yIHIgaW4gdC5leHBlY3RlZF9vdXRwdXRzLml0ZW1zICgpOg0KPiArICAgICAgICBzZngg PSAiIg0KPiArICAgICAgICBpZiByWzBdICE9ICIiOg0KPiArICAgICAgICAgICAgc2Z4ID0gIi0i ICsgclswXS5yZXBsYWNlKCI9IiwiXyIpDQo+ICsgICAgICAgIGV4cGVjdGVkX291dHB1dF9maWxl cyArPSAiICQob2JqcGZ4KSVzLyVzJXMuZXhwIiAlICh0ZXN0X3N1YmRpciwNCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQudGVz dF9uYW1lLCBzZngpDQo+ICsgICAgbWFrZWZpbGUud3JpdGUgKCIkKG9ianBmeCklcy5vdXQ6ICQo b2JqcGZ4KSVzLyVzLnNoJXNcbiINCj4gKyAgICAgICAgICAgICAgICAgICAgJSAodC50ZXN0X25h bWUsIHRlc3Rfc3ViZGlyLCB0LnRlc3RfbmFtZSwNCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ZXhwZWN0ZWRfb3V0cHV0X2ZpbGVzKSkNCj4gKyAgICBtYWtlZmlsZS53cml0ZSAoIlx0JChTSEVM TCkgJDwgJChjb21tb24tb2JqcGZ4KSAnJCh0ZXN0LXdyYXBwZXItZW52KScgIg0KPiArICAgICAg ICAgICAgICAgICAgICAiJyQocnVuLXByb2dyYW0tZW52KScgPiAkQDsgJChldmFsdWF0ZS10ZXN0 KVxuIikNCg0KT0suIEdvb2QgdXNpbmcgdGVzdC13cmFwcGVyLWVudi4NCg0KPiArICAgIG1ha2Vm aWxlLndyaXRlICgiaWZlcSAoJChydW4tYnVpbHQtdGVzdHMpLHllcylcbiIpDQo+ICsgICAgbWFr ZWZpbGUud3JpdGUgKCJ0ZXN0cy1zcGVjaWFsICs9ICQob2JqcGZ4KSVzLm91dFxuIiAlICh0LnRl c3RfbmFtZSkpDQo+ICsgICAgbWFrZWZpbGUud3JpdGUgKCJlbmRpZlxuIikNCj4gKyAgICBtYWtl ZmlsZS53cml0ZSAoImVuZGlmXG4iKQ0KPiArDQo+ICsgICAgIyBXcml0ZSBlbmRpbmcgcGFydCBv ZiBzaGVsbCBzY3JpcHQgZ2VuZXJhdGlvbg0KPiArICAgIHQuc2gud3JpdGUgKCJpZiAkc29tZXRo aW5nX2ZhaWxlZDsgdGhlblxuIg0KPiArICAgICAgICAgICAgICAgICIgIGV4aXQgMVxuIg0KPiAr ICAgICAgICAgICAgICAgICJlbHNlXG4iDQo+ICsgICAgICAgICAgICAgICAgIiAgZWNobyAnUEFT UzogYWxsIHRlc3RzIGZvciAlcyBzdWNjZWVkZWQnXG4iDQo+ICsgICAgICAgICAgICAgICAgIiAg ZXhpdCAwXG4iDQo+ICsgICAgICAgICAgICAgICAgImZpXG4iICUgKHQudGVzdF9uYW1lKSkNCj4g KyAgICB0LnNoLmNsb3NlICgpDQo+ICsNCj4gKyMgRGVjcmlwdGlvbiBmaWxlIHBhcnNpbmcNCj4g K2RlZiBwYXJzZV9kZXNjcmlwdGlvbl9maWxlIChmaWxlbmFtZSk6DQo+ICsgICAgZiA9IG9wZW4g KGZpbGVuYW1lKQ0KPiArICAgIGlmIG5vdCBmOg0KPiArICAgICAgICBwcmludCAoIkVycm9yOiBj YW5ub3Qgb3BlbiBkZXNjcmlwdGlvbiBmaWxlICVzIiAlIChmaWxlbmFtZSkpDQo+ICsgICAgICAg IGV4aXQgKC0xKQ0KPiArICAgIGRlc2NyZmlsZV9saW5lcyA9IGYucmVhZGxpbmVzICgpDQo+ICsg ICAgdCA9IE5vbmUNCj4gKyAgICBmb3IgbGluZSBpbiBkZXNjcmZpbGVfbGluZXM6DQo+ICsgICAg ICAgIHAgPSByZS5jb21waWxlIChyIiMuKiQiKQ0KPiArICAgICAgICBsaW5lID0gcC5zdWIgKCIi LCBsaW5lKSAjIEZpbHRlciBvdXQgY29tbWVudHMNCj4gKyAgICAgICAgbGluZSA9IGxpbmUuc3Ry aXAgKCkgIyBSZW1vdmUgZXhjZXNzIHdoaXRlc3BhY2UNCj4gKyAgICAgICAgbSA9IHJlLm1hdGNo IChyIl4oW146XSspOlxzKiguKikkIiwgbGluZSkNCj4gKyAgICAgICAgaWYgbToNCj4gKyAgICAg ICAgICAgIG8gPSByZS5tYXRjaCAociJeb3V0cHV0KC4qKSQiLCBtLmdyb3VwICgxKSkNCj4gKyAg ICAgICAgICAgIGlmIG86DQo+ICsgICAgICAgICAgICAgICAgaWYgbm90IHQ6DQo+ICsgICAgICAg ICAgICAgICAgICAgIHByaW50ICgiRXJyb3I6IG91dHB1dCBzcGVjaWZpY2F0aW9uIHdpdGhvdXQg dGVzdGNhc2UgIg0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIikN Cj4gKyAgICAgICAgICAgICAgICAgICAgZXhpdCAoLTEpDQo+ICsgICAgICAgICAgICAgICAgdHNz dHIgPSAiIg0KPiArICAgICAgICAgICAgICAgIGlmIG8uZ3JvdXAoMSk6DQo+ICsgICAgICAgICAg ICAgICAgICAgIHRzID0gcmUubWF0Y2ggKHIiXlwoKFthLXpBLVowLTlfLj1dKilcKSQiLCBvLmdy b3VwICgxKSkNCj4gKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHRzOg0KPiArICAgICAgICAg ICAgICAgICAgICAgICAgcHJpbnQgKCJFcnJvcjogdHVuYWJsZSBvcHRpb24gbWFsZm9ybWVkICcl cyciICUgby5ncm91cCgxKSkNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgIGV4aXQgKC0xKQ0K PiArICAgICAgICAgICAgICAgICAgICB0c3N0ciA9IHRzLmdyb3VwKDEpDQo+ICsgICAgICAgICAg ICAgICAgdC5leHBlY3RlZF9vdXRwdXRzW3Rzc3RyXSA9IG0uZ3JvdXAgKDIpDQo+ICsgICAgICAg ICAgICBlbHNlOg0KPiArICAgICAgICAgICAgICAgIGlmIHQ6DQo+ICsgICAgICAgICAgICAgICAg ICAgICMgU3RhcnRpbmcgYSBuZXcgdGVzdCBkZXNjcmlwdGlvbiwgZW5kIGFuZCBwcm9jZXNzDQo+ ICsgICAgICAgICAgICAgICAgICAgICMgY3VycmVudCBvbmUuDQo+ICsgICAgICAgICAgICAgICAg ICAgIHByb2Nlc3NfdGVzdGNhc2UgKHQpDQo+ICsgICAgICAgICAgICAgICAgdCA9IFRlc3REZXNj ciAoKQ0KPiArICAgICAgICAgICAgICAgIHQudGVzdF9uYW1lID0gbS5ncm91cCAoMSkNCj4gKyAg ICAgICAgICAgICAgICBkZXNjcl9zdHJpbmcgPSBtLmdyb3VwICgyKQ0KPiArICAgICAgICAgICAg ICAgIHBhcnNlX2Rlc2NyaXB0aW9uX3N0cmluZyAodCwgZGVzY3Jfc3RyaW5nKQ0KPiArICAgICAg ICAgICAgY29udGludWUNCj4gKyAgICAgICAgZWxzZToNCj4gKyAgICAgICAgICAgIGlmIGxpbmU6 DQo+ICsgICAgICAgICAgICAgICAgaWYgbm90IHQ6DQo+ICsgICAgICAgICAgICAgICAgICAgIHBy aW50ICgiRXJyb3I6IG5vIGFjdGl2ZSB0ZXN0Y2FzZSBkZXNjcmlwdGlvbiIpDQo+ICsgICAgICAg ICAgICAgICAgICAgIGV4aXQgKC0xKQ0KPiArICAgICAgICAgICAgICAgIHBhcnNlX2Rlc2NyaXB0 aW9uX3N0cmluZyAodCwgbGluZSkNCj4gKyAgICAjIFByb2Nlc3MgbGFzdCBjb21wbGV0ZWQgdGVz dCBkZXNjcmlwdGlvbg0KPiArICAgIGlmIHQ6DQo+ICsgICAgICAgIHByb2Nlc3NfdGVzdGNhc2Ug KHQpDQo+ICsNCj4gKyMgU2V0dXAgTWFrZWZpbGUgb3V0cHV0IHRvIGZpbGUgb3Igc3Rkb3V0IGFz IHNlbGVjdGVkDQo+ICtpZiBvdXRwdXRfbWFrZWZpbGU6DQo+ICsgICAgb3V0cHV0X21ha2VmaWxl X2RpciA9IG9zLnBhdGguZGlybmFtZSAob3V0cHV0X21ha2VmaWxlKQ0KPiArICAgIGlmIG91dHB1 dF9tYWtlZmlsZV9kaXI6DQo+ICsgICAgICAgIG9zLm1ha2VkaXJzIChvdXRwdXRfbWFrZWZpbGVf ZGlyLCBleGlzdF9vayA9IFRydWUpDQo+ICsgICAgbWFrZWZpbGUgPSBvcGVuIChvdXRwdXRfbWFr ZWZpbGUsICJ3IikNCj4gK2Vsc2U6DQo+ICsgICAgbWFrZWZpbGUgPSBvcGVuIChzeXMuc3Rkb3V0 LmZpbGVubyAoKSwgInciKQ0KPiArDQo+ICsjIEZpbmFsbHksIHRoZSBtYWluIHRvcC1sZXZlbCBj YWxsaW5nIG9mIGFib3ZlIHBhcnNpbmcgcm91dGluZXMuDQo+ICtpZiBkZXNjcmlwdGlvbl9maWxl Og0KPiArICAgIHBhcnNlX2Rlc2NyaXB0aW9uX2ZpbGUgKGRlc2NyaXB0aW9uX2ZpbGUpDQo+ICtl bHNlOg0KPiArICAgIHQgPSBUZXN0RGVzY3IgKCkNCj4gKyAgICB0LnRlc3RfbmFtZSA9IHRlc3Rf bmFtZQ0KPiArICAgIHBhcnNlX2Rlc2NyaXB0aW9uX3N0cmluZyAodCwgZGVzY3JpcHRpb24pDQo+ ICsgICAgcHJvY2Vzc190ZXN0Y2FzZSAodCkNCj4gKw0KPiArIyBDbG9zZSBNYWtlZmlsZSBmcmFn bWVudCBvdXRwdXQNCj4gK21ha2VmaWxlLmNsb3NlICgpDQoNCk9LLg0KDQotLSANCkNoZWVycywN CkNhcmxvcy4NCg==