From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f388.i.mail.ru (f388.i.mail.ru [185.5.136.59]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 62B65469719 for ; Wed, 11 Mar 2020 18:56:16 +0300 (MSK) From: =?UTF-8?B?TWFyaWEgS2hheWRpY2g=?= MIME-Version: 1.0 Date: Wed, 11 Mar 2020 18:56:14 +0300 Reply-To: =?UTF-8?B?TWFyaWEgS2hheWRpY2g=?= Message-ID: <1583942174.197473001@f388.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--cF13b9Be5b90aA8bd17BD330aAb24C931583942174" In-Reply-To: <20200220175124.pwj24lx3jz4w6zcm@tkn_work_nb> References: <20191114115020.21091-1-maria.khaydich@tarantool.org> <1579344991.266039392@f319.i.mail.ru> <20200220175124.pwj24lx3jz4w6zcm@tkn_work_nb> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH=5D_box=3A_make_box=2Eexecu?= =?utf-8?q?te=28=29_immutable?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?QWxleGFuZGVyIFR1cmVua28=?= Cc: tarantool-patches@dev.tarantool.org ----ALT--cF13b9Be5b90aA8bd17BD330aAb24C931583942174 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 ClRoYW5rIHlvdSBmb3IgdGhlIHJldmlldyEgSSByZXdvcmtlZCB0aGUgcGF0Y2g6Ci0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KU2F2aW5nIGJveC5leGVjdXRlIG1ldGhvZCBiZWZvcmUgZXhwbGljaXRseSBjb25maWd1 cmluZyBib3gKYXV0b21hdGljYWxseSBpbnZva2VzIGxvYWRfY2ZnKCkgbm9uZXRoZWxlc3MuIEZ1 cnRoZXIgY2FsbHMKdG8gYm94LmNmZ3t9IGNhdXNlZCBpdHMgcmVjb25maWd1cmF0aW9uIGFuZCBy ZXBsYWNlbWVudCBvZgpwcmV2aW91c2x5IHNhdmVkIGJveC5leGVjdXRlIG1lYW5pbmcgaXQgY291 bGRuJ3QgYmUgdXNlZAphZ2FpbiB3aXRob3V0IGxlYWRpbmcgdG8gYW4gZXJyb3IuCsKgClRoZSBw YXRjaCBpbnRyb2R1Y2VzIGEgd29ya2Fyb3VuZCBtYWtpbmcgYm94LmV4ZWN1dGUgaWRlbXBvdGVu dAphbmQgaXMgaGVhdmlseSBpbmZsdWVuY2VkIGJ5IEBUb3RrdG9uYWRhLgrCoApDbG9zZXMgIzQy MzEKLS0tCklzc3VlOgpodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1 ZXMvNDIzMSDCoApCcmFuY2g6Cmh0dHBzOi8vZ2l0aHViLmNvbS90YXJhbnRvb2wvdGFyYW50b29s L2NvbXBhcmUvZWxqYXNobS9naC00MjMxLWJveC5leGVjdXRlLWltbXV0YWJsZS1mdW5jdGlvbiDC oArCoArCoGV4dHJhL2V4cG9ydHMgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgfCDCoDIgKwrCoHNyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YSDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoHwgNDIgKysrKysrKysrKysrKysrKy0tLQrCoC4uLi9naC00 MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50ZXN0Lmx1YSDCoCDCoHwgMjggKysrKysrKysrKysr KwrCoDMgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKwqBj cmVhdGUgbW9kZSAxMDA3NTUgdGVzdC9ib3gtdGFwL2doLTQyMzEtaW1tdXRhYmxlLWJveC1leGVj dXRlLnRlc3QubHVhCmRpZmYgLS1naXQgYS9leHRyYS9leHBvcnRzIGIvZXh0cmEvZXhwb3J0cwpp bmRleCA3Yjg0YTE0NTIuLjg1OTk2MTRlZSAxMDA2NDQKLS0tIGEvZXh0cmEvZXhwb3J0cworKysg Yi9leHRyYS9leHBvcnRzCkBAIC0xMTgsNiArMTE4LDggQEAgc3dpbV9tZW1iZXJfdW5yZWYKwqBz d2ltX21lbWJlcl9pc19kcm9wcGVkCsKgc3dpbV9tZW1iZXJfaXNfcGF5bG9hZF91cF90b19kYXRl CsKgCitib3hfaXNfY29uZmlndXJlZAorCsKgIyBNb2R1bGUgQVBJCsKgCsKgX3NheQpkaWZmIC0t Z2l0IGEvc3JjL2JveC9sdWEvbG9hZF9jZmcubHVhIGIvc3JjL2JveC9sdWEvbG9hZF9jZmcubHVh CmluZGV4IDg1NjE3YzhmMC4uZGM0MjkzYmRkIDEwMDY0NAotLS0gYS9zcmMvYm94L2x1YS9sb2Fk X2NmZy5sdWEKKysrIGIvc3JjL2JveC9sdWEvbG9hZF9jZmcubHVhCkBAIC02LDYgKzYsMTIgQEAg bG9jYWwgcHJpdmF0ZSA9IHJlcXVpcmUoJ2JveC5pbnRlcm5hbCcpCsKgbG9jYWwgdXJpbGliID0g cmVxdWlyZSgndXJpJykKwqBsb2NhbCBtYXRoID0gcmVxdWlyZSgnbWF0aCcpCsKgbG9jYWwgZmli ZXIgPSByZXF1aXJlKCdmaWJlcicpCitsb2NhbCBmZmkgPSByZXF1aXJlKCdmZmknKQorCitmZmku Y2RlZihbWworYm9vbAorYm94X2lzX2NvbmZpZ3VyZWQodm9pZCk7CitdXSkKwqAKwqAtLSBGdW5j dGlvbiBkZWNvcmF0b3IgdGhhdCBpcyB1c2VkIHRvIHByZXZlbnQgYm94LmNmZygpIGZyb20KwqAt LSBiZWluZyBjYWxsZWQgY29uY3VycmVudGx5IGJ5IGRpZmZlcmVudCBmaWJlcnMuCkBAIC01NTgs MTUgKzU2NCw0MSBAQCBsb2NhbCBmdW5jdGlvbiBsb2FkX2NmZyhjZmcpCsKgZW5kCsKgYm94LmNm ZyA9IGxvY2tlZChsb2FkX2NmZykKwqAKK2xvY2FsIGZ1bmN0aW9uIGJveF9pc19jb25maWd1cmVk KCkKKyDCoCDCoHJldHVybiBmZmkuQy5ib3hfaXNfY29uZmlndXJlZCgpCitlbmQKKwrCoC0tCi0t LSBUaGlzIG1ha2VzIHBvc3NpYmxlIGRvIGJveC5leGVjdXRlIHdpdGhvdXQgY2FsbGluZyBib3gu Y2ZnCi0tLSBtYW51YWxseS4gVGhlIGxvYWRfY2ZnIGNhbGwgb3ZlcndyaXRlcyBmb2xsb3dpbmcg dGFibGUgYW5kCi0tLSBtZXRhdGFibGUuCistLSBib3guZXhlY3V0ZSBpcyA8Ym94X2xvYWRfYW5k X2V4ZWN1dGU+IHdoZW4gYm94IGlzIG5vdCBsb2FkZWQsCistLSA8bGJveF9leGVjdXRlPiBvdGhl cndpc2UuIFNlZSBhbHNvIDxib3hfY29uZmlndXJlZD4gdmFyaWFibGUuCistLSA8Ym94X2xvYWRf YW5kX2V4ZWN1dGU+IGxvYWRzIGJveCBhbmQgY2FsbHMgPGxib3hfZXhlY3V0ZT4uCsKgLS0KLWZ1 bmN0aW9uIGJveC5leGVjdXRlKC4uLikKLSDCoCDCoGxvYWRfY2ZnKCkKK2xvY2FsIGJveF9sb2Fk X2FuZF9leGVjdXRlCitib3hfbG9hZF9hbmRfZXhlY3V0ZSA9IGZ1bmN0aW9uKC4uLikKKyDCoCDC oC0tIENvbmZpZ3VyZSBib3ggaWYgaXQgaXMgbm90IGNvbmZpZ3VyZWQsIG5vLW9wIG90aGVyd2lz ZSAobm90CisgwqAgwqAtLSByZWNvbmZpZ3VyYXRpb24pLgorIMKgIMKgLS0gV2Ugc2hvdWxkIGNo ZWNrIHdoZXRoZXIgYm94IGlzIGNvbmZpZ3VyZWQsIGJlY2F1c2UgYSB1c2VyCisgwqAgwqAtLSBt YXkgc2F2ZSA8Ym94X2xvYWRfYW5kX2V4ZWN1dGU+IGZ1bmN0aW9uIGJlZm9yZSBib3ggbG9hZGlu ZworIMKgIMKgLS0gYW5kIGNhbGwgaXQgYWZ0ZXJ3YXJkcy4KKyDCoCDCoGlmIG5vdCBib3hfaXNf Y29uZmlndXJlZCgpIHRoZW4KKyDCoCDCoCDCoCDCoGxvY2tlZChmdW5jdGlvbigpCisgwqAgwqAg wqAgwqAgwqAgwqAtLSBSZS1jaGVjaywgYmVjYXVzZSBhZnRlciByZWxlYXNpbmcgb2YgdGhlIGxv Y2sgdGhlCisgwqAgwqAgwqAgwqAgwqAgwqAtLSBib3ggc3RhdGUgbWF5IGJlIGNoYW5nZWQuIFdl IHNob3VsZCBjYWxsIGxvYWRfY2ZnKCkKKyDCoCDCoCDCoCDCoCDCoCDCoC0tIG9ubHkgb25jZS4K KyDCoCDCoCDCoCDCoCDCoCDCoGlmIG5vdCBib3hfaXNfY29uZmlndXJlZCgpIHRoZW4KKyDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoGxvYWRfY2ZnKCkKKyDCoCDCoCDCoCDCoCDCoCDCoGVuZAorIMKg IMKgIMKgIMKgZW5kKSgpCisgwqAgwqBlbmQKKworIMKgIMKgLS0gQXQgdGhpcyBwb2ludCBib3gg c2hvdWxkIGJlIGNvbmZpZ3VyZWQgYW5kIGJveC5leGVjdXRlKCkKKyDCoCDCoC0tIGZ1bmN0aW9u IHNob3VsZCBiZSByZXBsYWNlZCB3aXRoIGxib3hfZXhlY3V0ZSgpLgorIMKgIMKgYXNzZXJ0KHR5 cGUoYm94LmNmZykgfj0gJ2Z1bmN0aW9uJykKKyDCoCDCoGFzc2VydChib3guZXhlY3V0ZSB+PSBi b3hfbG9hZF9hbmRfZXhlY3V0ZSkKKwrCoCDCoCDCoHJldHVybiBib3guZXhlY3V0ZSguLi4pCsKg ZW5kCitib3guZXhlY3V0ZSA9IGJveF9sb2FkX2FuZF9leGVjdXRlCsKgCsKgLS0gZ2gtODEwOgrC oC0tIGhhY2sgbHVhaml0IGRlZmF1bHQgY3BhdGgKZGlmZiAtLWdpdCBhL3Rlc3QvYm94LXRhcC9n aC00MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50ZXN0Lmx1YSBiL3Rlc3QvYm94LXRhcC9naC00 MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50ZXN0Lmx1YQpuZXcgZmlsZSBtb2RlIDEwMDc1NQpp bmRleCAwMDAwMDAwMDAuLjE1NDQ1OTFiZgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3QvYm94LXRh cC9naC00MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50ZXN0Lmx1YQpAQCAtMCwwICsxLDI4IEBA CisjIS91c3IvYmluL2VudiB0YXJhbnRvb2wKK2xvY2FsIHRhcCA9IHJlcXVpcmUoJ3RhcCcpCits b2NhbCB0ZXN0ID0gdGFwLnRlc3QoJ2V4ZWN1dGUnKQordGVzdDpwbGFuKDIpCisKKy0tCistLSBn aC00MjMxOiBib3guZXhlY3V0ZSBzaG91bGQgYmUgYW4gaWRlbXBvdGVudCBmdW5jdGlvbgorLS0g bWVhbmluZyBpdHMgZWZmZWN0IHNob3VsZCBiZSB0aGUgc2FtZSBpZiBhIHVzZXIgY2hvb3Nlcwor LS0gdG8gdXNlIGl0IGJlZm9yZSBleHBsaWNpdCBib3guY2ZnIGludm9jYXRpb24KKy0tCisKK2xv Y2FsIGZ1bmN0aW9uIGV4ZWN1dGVfaXNfaW1tdXRhYmxlKGV4ZWN1dGUsIGNtZCwgbXNnKQorIMKg IMKgbG9jYWwgc3RhdHVzLCBlcnIgPSBwY2FsbChleGVjdXRlLCBjbWQpCisgwqAgwqB0ZXN0Om9r KHN0YXR1cyBhbmQgdHlwZShlcnIpID09ICd0YWJsZScsIG1zZykKK2VuZAorCitsb2NhbCBib3hf ZXhlY3V0ZV9zdHViID0gYm94LmV4ZWN1dGUKKy0tIGV4cGxpY2l0IGNhbGwgdG8gbG9hZF9jZmcK K2JveC5jZmd7fQorbG9jYWwgYm94X2V4ZWN1dGVfYWN0dWFsID0gYm94LmV4ZWN1dGUKKworZXhl Y3V0ZV9pc19pbW11dGFibGUoYm94X2V4ZWN1dGVfc3R1YiwKKyDCoCDCoCJDUkVBVEUgVEFCTEUg dDEgKHMxIElOVEVHRVIsIFBSSU1BUlkgS0VZIChzMSkpOyIsCisgwqAgwqAiYm94LmV4ZWN1dGUg c3R1YiB3b3JrcyBiZWZvcmUgYm94LmNmZyIpCitleGVjdXRlX2lzX2ltbXV0YWJsZShib3hfZXhl Y3V0ZV9hY3R1YWwsICJEUk9QIFRBQkxFIHQxIiwKKyDCoCDCoCJib3guZXhlY3V0ZSB3b3JrcyBw cm9wZXJseSBhZnRlciBib3guY2ZnIikKKworb3MuZXhpdCh0ZXN0OmNoZWNrKCkgYW5kIDAgb3Ig MSkKLS3CoAoyLjI0LjAgCj7Qp9C10YLQstC10YDQsywgMjAg0YTQtdCy0YDQsNC70Y8gMjAyMCwg MjA6NTEgKzAzOjAwINC+0YIgQWxleGFuZGVyIFR1cmVua28gPGFsZXhhbmRlci50dXJlbmtvQHRh cmFudG9vbC5vcmc+Ogo+wqAKPlNvcnJ5IGZvciB0aGUgbGF0ZSByZXNwb25zZS4KPgo+U2VlIGNv bW1lbnRzIGJlbG93Lgo+Cj5XaGlsZSBsb29raW5nIGludG8gdGhlIHBhdGNoLCBleHBlcmltZW50 aW5nIGFuZCBjb21tZW50aW5nIEkgbWFkZSB0aGUKPnBhdGNoIChpdCBpcyBiYXNlZCBvbiB5b3Vy IGNoYW5nZXMpLCBzbyBJJ2xsIHBhc3RlIGl0IGF0IGVuZCBvZiB0aGUKPmVtYWlsIGZvciB0aGUg cmVmZXJlbmNlLgo+Cj5XQlIsIEFsZXhhbmRlciBUdXJlbmtvLgo+Cj4+IGNvbW1pdCA1NzMzMThl YTg3NDk5MzE3NDEyNDdmMTgxMzMzYWI2OGI0M2E4MmM2Cj4+IEF1dGhvcjogTWFyaWEgPCBtYXJp YS5raGF5ZGljaEB0YXJhbnRvb2wub3JnID4KPj4gRGF0ZTogVHVlIE9jdCAyOSAxNzo1Njo1MSAy MDE5ICswMzAwCj4+Cj4+IGJveDogYm94LmV4ZWN1dGUgc2hvdWxkIGJlIGltbXV0YWJsZSBmdW5j dGlvbgo+Cj5Ob3cgSSByZWNhbGxlZCB0aGUgcmlnaHQgdGVybTogaWRlbXBvdGVudC4KPgo+Tml0 OiBpdCB3b3VsZCBiZSBnb29kIHRvIHVzZSBpbXBlcmF0aXZlIG1vb2QgaW4gdGhlIGNvbW1pdCBo ZWFkZXI6Cj4KPsKgfCBVc2UgdGhlIGltcGVyYXRpdmUgbW9vZCBpbiB0aGUgc3ViamVjdCBsaW5l LiBBIHByb3Blcmx5IGZvcm1lZCBHaXQKPsKgfCBjb21taXQgc3ViamVjdCBsaW5lIHNob3VsZCBh bHdheXMgYmUgYWJsZSB0byBjb21wbGV0ZSB0aGUgZm9sbG93aW5nCj7CoHwgc2VudGVuY2U6IOKA nElmIGFwcGxpZWQsIHRoaXMgY29tbWl0IHdpbGwgL3lvdXIgc3ViamVjdCBsaW5lIGhlcmUv4oCd Lgo+Cj5odHRwczovL3d3dy50YXJhbnRvb2wuaW8vZW4vZG9jLzEuMTAvZGV2X2d1aWRlL2RldmVs b3Blcl9ndWlkZWxpbmVzLyNob3ctdG8td3JpdGUtYS1jb21taXQtbWVzc2FnZQo+Cj4+Cj4+IFVz aW5nIGJveC5leGVjdXRlIG1ldGhvZCBiZWZvcmUgZXhwbGljaXRseSBjb25maWd1cmluZyBib3gK Pj4gYXV0b21hdGljYWxseSBpbnZva2VkIGJveC5jZmcgbm9uZXRoZWxlc3MuIEFueSBmdXJ0aGVy IGNhbGxzCj4+IHRvIGJveC5jZmcgY2F1c2VkIGl0cyByZWNvbmZpZ3VyYXRpb24gd2hpY2ggdGhl biBsZWQgdG8gYW4KPj4gZXJyb3Igd2hlbiB0cnlpbmcgdG8gdXNlIGV4ZWN1dGUgbWV0aG9kIGFn YWluLgo+Cj5Tb3JyeSB0aGF0IEkgbml0cGljayBhcm91bmQgd29yZGluZyBhZ2FpbiwgYnV0IGFm dGVyIHRoZSBkZXNjcmlwdGlvbiBJCj53b3VsZCBjaGVjayBzb21ldGhpbmcgbGlrZSB0aGUgZm9s bG93aW5nOgo+Cj7CoHwgYm94LmV4ZWN1dGUoJ1NFTEVDVCAxJykgLS0gaGVyZSBib3guY2Zne30g aXMgY2FsbGVkIHVuZGVyIGhvb2QKPsKgfCBib3guZXhlY3V0ZSgnU0VMRUNUIDEnKSAtLSBldmVy eXRoaW5nIGxvb2tzIG9rCj4KPkFmdGVyIHRoYXQgSSB3b3VsZCBiZSBjb25mdXNlZCwgYmVjYXVz ZSBldmVyeXRoaW5nIHdvcmtzIGFzIGV4cGVjdGVkLgo+Cj5JIHdvdWxkIHNheSB0aGF0IHRoZXJl IGFyZSB0d28gZGlmZmVyZW50IGZ1bmN0aW9ucwo+PGJveF9sb2FkX2FuZF9leGVjdXRlPiAod2hp Y2ggaXMgYXNzaWduZWQgdG8gYm94LmV4ZWN1dGUgd2hlbiBib3ggaXMgbm90Cj5jb25maWd1cmVk KSBhbmQgPGxib3hfZXhlY3V0ZT4gKGFmdGVyIGJveCBjb25mZ3VyYXRpb24pIGFuZCB3b3VsZAo+ ZGVzY3JpYmUgdGhlIGNhc2UgdXNpbmcgdGhvc2UgdGVybXMuIEkgZ3Vlc3MgaXQgd291bGQgZWFz aWVyIHRvCj51bmRlcnN0YW5kLgo+Cj5TZWUgYWxzbyB0aGUgY29tbWVudCBhYm91dCB0aGUgdGVz dCBhdCB2ZXJ5IGVuZCBvZiB0aGUgZW1haWwuCj4KPj4KPj4gVGhlIHBhdGNoIGludHJvZHVjZXMg YSBmaXggbWFraW5nIGJveC5leGVjdXRlIGltbXV0YWJsZS4KPj4KPj4gQ2xvc2VzICM0MjMxCj4+ Cj4+IGRpZmYgLS1naXQgYS9zcmMvYm94L2x1YS9sb2FkX2NmZy5sdWEgYi9zcmMvYm94L2x1YS9s b2FkX2NmZy5sdWEKPj4gaW5kZXggODU2MTdjOGYwLi4xZjliNDM5MmYgMTAwNjQ0Cj4+IC0tLSBh L3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YQo+PiArKysgYi9zcmMvYm94L2x1YS9sb2FkX2NmZy5s dWEKPj4gQEAgLTUxNywxMCArNTE3LDE0IEBAIHNldG1ldGF0YWJsZShib3gsIHsKPj4gZW5kCj4+ IH0pCj4+Cj4+ICstLSBGbGFnIG5lZWRlZCB0byBrZWVwIGltbXV0YWJsZSBmdW5jdGlvbnMgYWZ0 ZXIgYm94IHJlY29uZmlndXJhdGlvbgo+Cj5OaXQ6IG92ZXIgNjYgc3ltYm9scy4KPgo+PiArbG9j YWwgYm94X2xvYWRlZCA9IGZhbHNlCj4+ICsKPj4gbG9jYWwgZnVuY3Rpb24gbG9hZF9jZmcoY2Zn KQo+PiBjZmcgPSB1cGdyYWRlX2NmZyhjZmcsIHRyYW5zbGF0ZV9jZmcpCj4+IGNmZyA9IHByZXBh cmVfY2ZnKGNmZywgZGVmYXVsdF9jZmcsIHRlbXBsYXRlX2NmZywgbW9kaWZ5X2NmZykKPj4gYXBw bHlfZGVmYXVsdF9jZmcoY2ZnLCBkZWZhdWx0X2NmZyk7Cj4+ICsgYm94X2xvYWRlZCA9IHRydWUK Pgo+QWZ0ZXIgdGhpcyB3ZSBjYW4gZmFpbGVkIHRvIGNvbmZpZ3VyZSBib3gsIGNvbnNpZGVyIHRo ZSBjYXNlOgo+Cj7CoHwgdGFyYW50b29sPiBib3guY2Zne2xpc3RlbiA9ICdpbmNvcnJlY3QnfQo+ wqB8IC0tLQo+wqB8IC0gZXJyb3I6ICdJbmNvcnJlY3QgdmFsdWUgZm9yIG9wdGlvbiAnJ2xpc3Rl bicnOiBleHBlY3RlZCBob3N0OnNlcnZpY2Ugb3IgL3VuaXguc29ja2V0Jwo+wqB8IC4uLgo+wqB8 Cj7CoHwgdGFyYW50b29sPiBib3guZXhlY3V0ZSgnU0VMRUNUIDEnKQo+Cj5XZSBzaG91bGQgc2V0 IHRoZSBmbGFnIG9ubHkgYXQgc3VjY2Vzc2Z1bCBib3ggY29uZmlndXJhdGlvbi4gSSB3b3VsZAo+ YWxzbyBhZGQgc3VjaCB0ZXN0IGNhc2UuCj4KPj4gLS0gU2F2ZSBuZXcgYm94LmNmZwo+PiBib3gu Y2ZnID0gY2ZnCj4+IGlmIG5vdCBwY2FsbChwcml2YXRlLmNmZ19jaGVjaykgdGhlbgo+PiBAQCAt NTY0LDcgKzU2OCwxNiBAQCBib3guY2ZnID0gbG9ja2VkKGxvYWRfY2ZnKQo+PiAtLSBtZXRhdGFi bGUuCj4+IC0tCj4+IGZ1bmN0aW9uIGJveC5leGVjdXRlKC4uLikKPj4gLSBsb2FkX2NmZygpCj4+ ICsgLS0KPj4gKyAtLSBTYXZpbmcgYm94LmV4ZWN1dGUgbWV0aG9kIGJlZm9yZSBleHBsaWNpdCBj YWxscyB0byBlaXRoZXIKPj4gKyAtLSBib3guZXhlY3V0ZSgpIG9yIGJveC5jZmd7fSBsZWFkcyB0 byBpbXBsaWNpdCBpbnZvY2F0aW9uIG9mCj4+ICsgLS0gYm94LmNmZyBub25ldGhlbGVzcy4KPgo+ VGVjaG5pY2FsbHkgc2F2aW5nIG9mIGJveC5leGVjdXRlIGRvZXMgbm90IGxlYWQgdG8gaW52b2Nh dGlvbiBvZgo+Ym94LmNmZy4gQnV0IGFueXdheSBJIHdvdWxkIGRlc2NyaWJlIHRoaW5ncyBpbiB0 aGUgd2F5IGFzIHByb3Bvc2VkCj5hYm92ZS4KPgo+PiArIC0tIFRoZSBmbGFnIGJveF9sb2FkZWQg bWFrZXMgc3VyZSBleGVjdXRlCj4+ICsgLS0gaXMgYW4gaW1tdXRhYmxlIGZ1bmN0aW9uIG1lYW5p bmcgaXQgd29uJ3QgYmUgb3ZlcndyaXR0ZW4gYnkKPj4gKyAtLSBhbnkgZm9sbG93aW5nIGF0dGVt cHRzIHRvIHJlY29uZmlndXJlIGJveC4KPj4gKyAtLQo+Cj5UaGUgcHJvYmxlbSBpcyBub3QgdGhh dCA8bGJveF9leGVjdXRlPiB3aWxsIGJlIG92ZXJ3cml0dGVuIHdpdGggc29tZQo+PGJveF9hbm90 aGVyX2V4ZWN1dGU+LCBidXQgdGhhdCB0aGUgaW5pdGlhbCA8Ym94X2xvYWRfYW5kX2V4ZWN1dGU+ IGRvZXMKPm5vdCB3b3JrIGNvcnJlY3RseSBhZnRlciBzdWNjZXNzZnVsIGJveCBjb25maWd1cmF0 aW9uLgo+Cj4+ICsgaWYgbm90IGJveF9sb2FkZWQgdGhlbgo+PiArIGxvYWRfY2ZnKCkKPj4gKyBl bmQKPgo+SSBjb25zaWRlcmVkIHVzaW5nIG9mIGB0eXBlKGJveC5jZmcpID09ICdmdW5jdGlvbidg IGNoZWNrIGFzIGluCj50YXJhbnRvb2xjdGwsIGJ1dCBpbiBmYWN0IGl0IGlzIG5vdCByZWFsaWFi bGU6IGlmIGJveCB3YXMgbm90IGNvbmZpZ3VyZWQKPmFmdGVyIGJveC5jZmcoKSBkdWUgdG8gYW4g ZXJyb3IgKHNheSwgYWZ0ZXIgYGJveC5jZmd7bGlzdGVuID0KPidpbnZhbGlkJ31gKSB0aGUgdHlw ZSBvZiBib3guY2ZnIHdpbGwgYmUgJ3RhYmxlJyBhbmQgcmVsb2FkX2NmZygpIHdpbGwKPndvcmsg b24gdGhlIG5leHQgYm94LmNmZygpIGNhbGwuIFNvIHdlIHNob3VsZCB1c2UgYm94X2lzX2NvbmZp Z3VyZWQgQwo+ZnVuY3Rpb246Cj4KPsKgfCBsb2NhbCBmZmkgPSByZXF1aXJlKCdmZmknKQo+wqB8 Cj7CoHwgZmZpLmNkZWYoW1sKPsKgfCBib29sCj7CoHwgYm94X2lzX2NvbmZpZ3VyZWQodm9pZCk7 Cj7CoHwgXV0pCj7CoHwKPsKgfCBsb2NhbCBmdW5jdGlvbiBib3hfaXNfY29uZmlndXJlZCgpCj7C oHwgcmV0dXJuIGZmaS5DLmJveF9pc19jb25maWd1cmVkKCkKPsKgfCBlbmQKPgo+VGhpcyB3YXkg cmVxdWlyZXMgdG8gYWRkIHRoZSBmdW5jdGlvbiBpbnRvIGV4dHJhL2V4cG9ydHMuCj4KPkJUVywg aXQgc2VlbXMgdGhhdCBpdCBpcyBwb3NzaWJsZSB0aGF0IDxib3hfbG9hZF9hbmRfZXhlY3V0ZT4g d2lsbCBiZQo+Y2FsbGVkIHdoZW4gYGJveC5jZmd7fWAgaXMgYWxyZWFkeSBpbiBwcm9ncmVzcyBp biBhbm90aGVyIGZpYmVyOiB0aGlzIGlzCj53aHkgYWxsIGxvYWRfY2ZnKCkgLyByZWxvYWRfY2Zn KCkgY2FsbHMgYXJlIGRlY29yYXRlZCB1c2luZyBgbG9ja2VkYAo+d3JhcHBlci4gSXQgc2VlbXMg d2Ugc2hvdWxkIGRvIHRoZSBzYW1lIGluIDxib3hfbG9hZF9hbmRfZXhlY3V0ZT46Cj4KPsKgfCBm dW5jdGlvbiBib3guZXhlY3V0ZSguLi4pCj7CoHwgaWYgbm90IGJveF9pc19jb25maWd1cmVkKCkg dGhlbgo+wqB8IGxvY2tlZChmdW5jdGlvbigpCj7CoHwgLS0gUmUtY2hlY2ssIGJlY2F1c2UgYWZ0 ZXIgdGhlIGxvY2sgcmVsZWFzZSB0aGUgYm94Cj7CoHwgLS0gc3RhdGUgbWF5IGJlIGNoYW5nZWQu IFdlIHNob3VsZCBjYWxsIGxvYWRfY2ZnKCkKPsKgfCAtLSBvbmx5IG9uY2UuCj7CoHwgaWYgbm90 IGJveF9pc19jb25maWd1cmVkKCkgdGhlbgo+wqB8IGxvYWRfY2ZnKCkKPsKgfCBlbmQKPsKgfCBl bmQpKCkKPsKgfCBlbmQKPsKgfCByZXR1cm4gYm94LmV4ZWN1dGUoLi4uKQo+wqB8IGVuZAo+Cj5J IGV4cGVyaW1lbnRlZCB3aXRoIHRoaXMgbGlrZSBzbzoKPgo+wqB8ICQgLi9zcmMvdGFyYW50b29s Cj7CoHwgdGFyYW50b29sPiBib3hfZXhlY3V0ZSA9IGJveC5leGVjdXRlCj7CoHwgdGFyYW50b29s PiBmb3IgaSA9IDEsIDEwIGRvIHJlcXVpcmUoJ2ZpYmVyJykuY3JlYXRlKGZ1bmN0aW9uKCkgcmVx dWlyZSgnbG9nJykuaW5mbyhyZXF1aXJlKCd5YW1sJykuZW5jb2RlKChib3hfZXhlY3V0ZSgnU0VM RUNUICogRlJPTSAiX3ZpbmRleCInKSkpKSBlbmQpIGVuZAo+Cj5XaGlsZSBsb29raW5nIGludG8g dGhlIGNvZGUgSSBmb3VuZCBvbmUgbW9yZSBjYXNlOgo+Cj7CoHwgdGFyYW50b29sPiBib3hfY2Zn ID0gYm94LmNmZwo+wqB8IC0tLQo+wqB8IC4uLgo+wqB8IHRhcmFudG9vbD4gYm94X2NmZygpCj7C oHwgPC4uLj4KPsKgfCB0YXJhbnRvb2w+IGJveF9jZmcoKQo+wqB8IC0tLQo+wqB8IC0gZXJyb3I6 ICdidWlsdGluL2JveC9sb2FkX2NmZy5sdWE6MTk6IGJ1aWx0aW4vYm94L2xvYWRfY2ZnLmx1YTo1 NDc6IGJhZCBhcmd1bWVudAo+wqB8ICMxIHRvICcncGFpcnMnJyAodGFibGUgZXhwZWN0ZWQsIGdv dCBuaWwpJwo+wqB8IC4uLgo+Cj5JIHRoaW5rIGl0IGRvZXMgTk9UIG1lYW4gdGhhdCB3ZSBzaG91 bGQgbm90IGZpeCBib3guZXhlY3V0ZSgpIGNvZGUsCj5iZWNhdXNlIHRoZSBleHBlY3RlZCBiZWhh dmlvdXIgaXMgYSBiaXQgZGlmZmVyZW50Ogo+Cj4qIGJveC5leGVjdXRlKCkgKG1vcmUgc3BlY2lm aWNhbGx5IDxib3hfbG9hZF9hbmRfZXhlY3V0ZT4pIHNob3VsZAo+wqDCoGNvbmZpZ3VyZSBib3gg aWYgaXQgaXMgbm90IGNvbmZpZ3VyZWQgb3IganVzdCBleGVjdXRlIG90aGVyd2lzZSAody9vCj7C oMKgYm94IHJlY29uZmlndXJhdGlvbikuCj4qIGJveC5jZmcoKSAobW9yZSBzcGVjaWZpY2FsbHkg PGxvYWRfY2ZnPikgc2hvdWxkIGNvbmZpZ3VyZSBib3ggaWYgaXQgaXMKPsKgwqBub3QgY29uZmln dXJlZCwgb3RoZXJ3aXNlICoqcmVjb25maWd1cmUqKiBpdC4KPgo+U28gYm94LmNmZygpIHNob3Vs ZCBjYWxsIHJlbG9hZF9jZmcoKSBpZiBib3ggaXMgYWxyZWFkeSBjb25maWd1cmVkLiBJCj5wcm9w b3NlIHRvIGZpeCBpdCBpbiBhIHNlcGFyYXRlIHBhdGNoIChidXQgd2l0aGluIHRoZSBzY29wZSBv ZiB0aGUKPmlzc3VlKS4KPgo+PiByZXR1cm4gYm94LmV4ZWN1dGUoLi4uKQo+PiBlbmQKPj4KPj4g ZGlmZiAtLWdpdCBhL3Rlc3QvYm94LXRhcC9naC00MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50 ZXN0Lmx1YSBiL3Rlc3QvYm94LXRhcC9naC00MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50ZXN0 Lmx1YQo+PiBuZXcgZmlsZSBtb2RlIDEwMDc1NQo+PiBpbmRleCAwMDAwMDAwMDAuLjViZGJlYzg4 Zgo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBiL3Rlc3QvYm94LXRhcC9naC00MjMxLWltbXV0YWJs ZS1ib3gtZXhlY3V0ZS50ZXN0Lmx1YQo+PiBAQCAtMCwwICsxLDMzIEBACj4+ICsjIS91c3IvYmlu L2VudiB0YXJhbnRvb2wKPj4gK2xvY2FsIHRhcCA9IHJlcXVpcmUoJ3RhcCcpCj4+ICtsb2NhbCB0 ZXN0ID0gdGFwLnRlc3QoJ2V4ZWN1dGUnKQo+PiArdGVzdDpwbGFuKDMpCj4+ICsKPj4gKy0tCj4+ ICstLSBnaC00MjMxOiBib3guZXhlY3V0ZSBzaG91bGQgYmUgaW1tdXRhYmxlIGZ1bmN0aW9uIG1l YW5pbmcgaXQncwo+PiArLS0gYWRkcmVzcyBkb2Vzbid0IGNoYW5nZSBhZnRlciBmaXJzdCBib3gu Y2ZnIGltcGxpY2l0IGludm9jYXRpb24KPgo+QnV0IGl0IGlzIG5vdCBzbyBldmVuIGFmdGVyIHRo ZSBwYXRjaDoKPgo+wqB8IHRhcmFudG9vbD4gYm94LmV4ZWN1dGUKPsKgfCAtLS0KPsKgfCAtICdm dW5jdGlvbjogMHg0MDc0YmMzMCcKPsKgfCAuLi4KPsKgfCB0YXJhbnRvb2w+IGJveC5leGVjdXRl KCdTRUxFQ1QgMScpCj7CoHwgPC4uLj4KPsKgfCB0YXJhbnRvb2w+IGJveC5leGVjdXRlCj7CoHwg LS0tCj7CoHwgLSAnZnVuY3Rpb246IDB4NDE2YjI2MDAnCj7CoHwgLi4uCj4KPj4gKy0tCj4+ICsK Pj4gK2xvY2FsIGZ1bmN0aW9uIGV4ZWN1dGVfaXNfaW1tdXRhYmxlKGV4ZWN1dGUsIGNtZCwgbXNn KQo+PiArIGxvY2FsIHN0YXR1cywgZXJyID0gcGNhbGwoZnVuY3Rpb24oKQo+PiArIGV4ZWN1dGUo Y21kKQo+PiArIGVuZCkKPgo+Tml0OiBDYW4gYmUgd3JpdHRlbiBhczoKPgo+wqB8IGxvY2FsIHN0 YXR1cywgZXJyID0gcGNhbGwoZXhlY3V0ZSwgY21kKQo+Cj4+ICsgdGVzdDpvayhzdGF0dXMgYW5k IGVyciA9PSBuaWwsIG1zZykKPj4gK2VuZAo+PiArCj4+ICtsb2NhbCBib3hfZXhlY3V0ZV9zdHVi ID0gYm94LmV4ZWN1dGUKPj4gK2V4ZWN1dGVfaXNfaW1tdXRhYmxlKGJveF9leGVjdXRlX3N0dWIs ICJTRUxFQ1QgMSIsCj4+ICsgImV4ZWN1dGUgZG9lcyBub3Qgd29yayBwcm9wZXJseSBiZWZvcmUg Ym94LmNmZyIpCj4KPlRoaXMgd2lsbCBwcmludDoKPgo+b2sgLSBleGVjdXRlIGRvZXMgbm90IHdv cmsgcHJvcGVybHkgYmVmb3JlIGJveC5jZmcKPgo+LS10aGF0IGxvb2tzIGNvdW50ZXItaW50dWl0 aXZlIGZvciBtZS4KPgo+QlRXLCBpdCBsb29rcyBhcyB0aGUgcHJlcGFyYXRpb24gY29kZSBmb3Ig dGhlIHRlc3QgcmF0aGVyIHRoYW4gdGhlIHRlc3QKPml0c2VsZi4gUGVyc29uYWxseSBJIHRoaW5r IHRoYXQgc3VjaCBjb2RlIHNob3VsZCBkbyBhc3NlcnQoKSByYXRoZXIgdGhhbgo+cHJvZHVjZSAn b2svbm90IG9rJyBUQVAxMyBvdXRwdXQuIFRoaXMgaXMgbm90IHRoZSBzdHJpY3QgcmVxdWlyZW1l bnQsCj5ob3dldmVyLgo+Cj5Db25zaWRlciBbMV0sIGZyb20gd29yZHMgJ0kgd291bGQgc3BsaXQg dGVzdCBwcmVwYXJhdGlvbiAvIGNsZWFuIHVwIGNvZGUKPmZyb20gYWN0dWFsIHRlc3QgY2FzZXMn Lgo+Cj5bMV06ICBodHRwczovL2xpc3RzLnRhcmFudG9vbC5vcmcvcGlwZXJtYWlsL3RhcmFudG9v bC1wYXRjaGVzLzIwMjAtSmFudWFyeS8wMTM1OTUuaHRtbAo+Cj4+ICsKPj4gK2xvY2FsIGJveF9l eGVjdXRlX2FjdHVhbCA9IGJveC5leGVjdXRlCj4+ICstLSBleHBsaWNpdCBjYWxsIHRvIGxvYWRf Y2ZnCj4+ICtib3guY2Zne30KPj4gKwo+PiArLS0gY2hlY2tpbmcgdGhlIGZ1bmN0aW9uIHdhcyBu b3QgcmVjb25maWd1cmVkLCBpLmUuIGFkcmVzcyBzdGF5cyB0aGUgc2FtZQo+Cj5UeXBvOiBhZHJl c3MgLT4gYWRkcmVzcy4KPgo+PiArdGVzdDppcyhib3hfZXhlY3V0ZV9hY3R1YWwsIGJveC5leGVj dXRlLAo+PiArICJleGVjdXRlIGlzIG5vdCB0aGUgc2FtZSBhZnRlciBib3guY2ZnIikKPj4gK2V4 ZWN1dGVfaXNfaW1tdXRhYmxlKGJveF9leGVjdXRlX2FjdHVhbCwKPj4gKyAiQ1JFQVRFIFRBQkxF IHQxIChzMSBJTlRFR0VSLCBQUklNQVJZIEtFWSAoczEpKTsiLAo+PiArICJleGVjdXRlIGRvZXMg bm90IHdvcmsgcHJvcGVybHkgYWZ0ZXIgYm94LmNmZyIpCj4+ICsKPj4gK29zLmV4aXQodGVzdDpj aGVjaygpIGFuZCAwIG9yIDEpCj4KPlRoZSB0ZXN0IGNhc2Ugd29ya3MgcHJvcGVybHkgKGRvZXMg bm90IGZhaWwpIG9uIGN1cnJlbnQgbWFzdGVyIHcvbyB0aGUKPmZpeC4gSSBndWVzcyB5b3UgaW50 ZW5kIHRvIHRlc3QgYm94X2V4ZWN1dGVfc3R1YiBhZnRlciBib3guY2ZnKCkuCj4KPkJUVywgSSBz dWdnZXN0IHRvIHJ1biBhIHRlc3Qgb24gYSB0YXJhbnRvb2wgdmVyc2lvbiBiZWZvcmUgYSBmaXgg dG8KPnZlcmlmeSB0aGF0IHRoZSB0ZXN0IGFjdHVhbGx5IGFibGUgdG8gY2F0Y2ggdGhlIHByb2Js ZW0uCj4KPi0tLS0KPgo+ZGlmZiAtLWdpdCBhL2V4dHJhL2V4cG9ydHMgYi9leHRyYS9leHBvcnRz Cj5pbmRleCA3Yjg0YTE0NTIuLjg1OTk2MTRlZSAxMDA2NDQKPi0tLSBhL2V4dHJhL2V4cG9ydHMK PisrKyBiL2V4dHJhL2V4cG9ydHMKPkBAIC0xMTgsNiArMTE4LDggQEAgc3dpbV9tZW1iZXJfdW5y ZWYKPsKgc3dpbV9tZW1iZXJfaXNfZHJvcHBlZAo+wqBzd2ltX21lbWJlcl9pc19wYXlsb2FkX3Vw X3RvX2RhdGUKPsKgCj4rYm94X2lzX2NvbmZpZ3VyZWQKPisKPsKgIyBNb2R1bGUgQVBJCj7CoAo+ wqBfc2F5Cj5kaWZmIC0tZ2l0IGEvc3JjL2JveC9sdWEvbG9hZF9jZmcubHVhIGIvc3JjL2JveC9s dWEvbG9hZF9jZmcubHVhCj5pbmRleCAxZjliNDM5MmYuLmRmZmY3NzJkNyAxMDA2NDQKPi0tLSBh L3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YQo+KysrIGIvc3JjL2JveC9sdWEvbG9hZF9jZmcubHVh Cj5AQCAtNiw2ICs2LDEyIEBAIGxvY2FsIHByaXZhdGUgPSByZXF1aXJlKCdib3guaW50ZXJuYWwn KQo+wqBsb2NhbCB1cmlsaWIgPSByZXF1aXJlKCd1cmknKQo+wqBsb2NhbCBtYXRoID0gcmVxdWly ZSgnbWF0aCcpCj7CoGxvY2FsIGZpYmVyID0gcmVxdWlyZSgnZmliZXInKQo+K2xvY2FsIGZmaSA9 IHJlcXVpcmUoJ2ZmaScpCj4rCj4rZmZpLmNkZWYoW1sKPisgYm9vbAo+KyBib3hfaXNfY29uZmln dXJlZCh2b2lkKTsKPitdXSkKPsKgCj7CoC0tIEZ1bmN0aW9uIGRlY29yYXRvciB0aGF0IGlzIHVz ZWQgdG8gcHJldmVudCBib3guY2ZnKCkgZnJvbQo+wqAtLSBiZWluZyBjYWxsZWQgY29uY3VycmVu dGx5IGJ5IGRpZmZlcmVudCBmaWJlcnMuCj5AQCAtNTE3LDE0ICs1MjMsMTAgQEAgc2V0bWV0YXRh YmxlKGJveCwgewo+wqDCoMKgwqDCoMKgZW5kCj7CoH0pCj7CoAo+LS0tIEZsYWcgbmVlZGVkIHRv IGtlZXAgaW1tdXRhYmxlIGZ1bmN0aW9ucyBhZnRlciBib3ggcmVjb25maWd1cmF0aW9uCj4tbG9j YWwgYm94X2xvYWRlZCA9IGZhbHNlCj4tCj7CoGxvY2FsIGZ1bmN0aW9uIGxvYWRfY2ZnKGNmZykK PsKgwqDCoMKgwqBjZmcgPSB1cGdyYWRlX2NmZyhjZmcsIHRyYW5zbGF0ZV9jZmcpCj7CoMKgwqDC oMKgY2ZnID0gcHJlcGFyZV9jZmcoY2ZnLCBkZWZhdWx0X2NmZywgdGVtcGxhdGVfY2ZnLCBtb2Rp ZnlfY2ZnKQo+wqDCoMKgwqDCoGFwcGx5X2RlZmF1bHRfY2ZnKGNmZywgZGVmYXVsdF9jZmcpOwo+ LSBib3hfbG9hZGVkID0gdHJ1ZQo+wqDCoMKgwqDCoC0tIFNhdmUgbmV3IGJveC5jZmcKPsKgwqDC oMKgwqBib3guY2ZnID0gY2ZnCj7CoMKgwqDCoMKgaWYgbm90IHBjYWxsKHByaXZhdGUuY2ZnX2No ZWNrKSB0aGVuCj5AQCAtNTYyLDI0ICs1NjQsNDMgQEAgbG9jYWwgZnVuY3Rpb24gbG9hZF9jZmco Y2ZnKQo+wqBlbmQKPsKgYm94LmNmZyA9IGxvY2tlZChsb2FkX2NmZykKPsKgCj4rbG9jYWwgZnVu Y3Rpb24gYm94X2lzX2NvbmZpZ3VyZWQoKQo+KyByZXR1cm4gZmZpLkMuYm94X2lzX2NvbmZpZ3Vy ZWQoKQo+K2VuZAo+Kwo+wqAtLQo+LS0tIFRoaXMgbWFrZXMgcG9zc2libGUgZG8gYm94LmV4ZWN1 dGUgd2l0aG91dCBjYWxsaW5nIGJveC5jZmcKPi0tLSBtYW51YWxseS4gVGhlIGxvYWRfY2ZnIGNh bGwgb3ZlcndyaXRlcyBmb2xsb3dpbmcgdGFibGUgYW5kCj4tLS0gbWV0YXRhYmxlLgo+Ky0tIGJv eC5leGVjdXRlIGlzIDxib3hfbG9hZF9hbmRfZXhlY3V0ZT4gd2hlbiBib3ggaXMgbm90IGxvYWRl ZCwKPistLSA8bGJveF9leGVjdXRlPiBvdGhlcndpc2UuIFNlZSBhbHNvIDxib3hfY29uZmlndXJl ZD4gdmFyaWFibGUuCj7CoC0tCj4tZnVuY3Rpb24gYm94LmV4ZWN1dGUoLi4uKQo+LSAtLQo+LSAt LSBTYXZpbmcgYm94LmV4ZWN1dGUgbWV0aG9kIGJlZm9yZSBleHBsaWNpdCBjYWxscyB0byBlaXRo ZXIKPi0gLS0gYm94LmV4ZWN1dGUoKSBvciBib3guY2Zne30gbGVhZHMgdG8gaW1wbGljaXQgaW52 b2NhdGlvbiBvZgo+LSAtLSBib3guY2ZnIG5vbmV0aGVsZXNzLiBUaGUgZmxhZyBib3hfbG9hZGVk IG1ha2VzIHN1cmUgZXhlY3V0ZQo+LSAtLSBpcyBhbiBpbW11dGFibGUgZnVuY3Rpb24gbWVhbmlu ZyBpdCB3b24ndCBiZSBvdmVyd3JpdHRlbiBieQo+LSAtLSBhbnkgZm9sbG93aW5nIGF0dGVtcHRz IHRvIHJlY29uZmlndXJlIGJveC4KPistLSA8Ym94X2xvYWRfYW5kX2V4ZWN1dGU+IGxvYWRzIGJv eCBhbmQgY2FsbHMgPGxib3hfZXhlY3V0ZT4uCj4rLS0KPitsb2NhbCBib3hfbG9hZF9hbmRfZXhl Y3V0ZQo+K2JveF9sb2FkX2FuZF9leGVjdXRlID0gZnVuY3Rpb24oLi4uKQo+KyAtLSBDb25maWd1 cmUgYm94IGlmIGl0IGlzIG5vdCBjb25maWd1cmVkLCBuby1vcCBvdGhlcndpc2UgKG5vdAo+KyAt LSByZWNvbmZpZ3VyYXRpb24pLgo+wqDCoMKgwqDCoC0tCj4tIGlmIG5vdCBib3hfbG9hZGVkIHRo ZW4KPi0gbG9hZF9jZmcoKQo+KyAtLSBXZSBzaG91bGQgY2hlY2sgd2hldGhlciBib3ggaXMgY29u ZmlndXJlZCwgYmVjYXVzZSBhIHVzZXIKPisgLS0gbWF5IHNhdmUgPGJveF9sb2FkX2FuZF9leGVj dXRlPiBmdW5jdGlvbiBiZWZvcmUgYm94IGxvYWRpbmcKPisgLS0gYW5kIGNhbGwgaXQgYWZ0ZXJ3 YXJkcy4KPisgaWYgbm90IGJveF9pc19jb25maWd1cmVkKCkgdGhlbgo+KyBsb2NrZWQoZnVuY3Rp b24oKQo+KyAtLSBSZS1jaGVjaywgYmVjYXVzZSBhZnRlciByZWxlYXNpbmcgb2YgdGhlIGxvY2sg dGhlCj4rIC0tIGJveCBzdGF0ZSBtYXkgYmUgY2hhbmdlZC4gV2Ugc2hvdWxkIGNhbGwgbG9hZF9j ZmcoKQo+KyAtLSBvbmx5IG9uY2UuCj4rIGlmIG5vdCBib3hfaXNfY29uZmlndXJlZCgpIHRoZW4K PisgbG9hZF9jZmcoKQo+KyBlbmQKPisgZW5kKSgpCj7CoMKgwqDCoMKgZW5kCj4rCj4rIC0tIEF0 IHRoaXMgcG9pbnQgYm94IHNob3VsZCBiZSBjb25maWd1cmVkIGFuZCBib3guZXhlY3V0ZSgpCj4r IC0tIGZ1bmN0aW9uIHNob3VsZCBiZSByZXBsYWNlZCB3aXRoIGxib3hfZXhlY3V0ZSgpLgo+KyBh c3NlcnQodHlwZShib3guY2ZnKSB+PSAnZnVuY3Rpb24nKQo+KyBhc3NlcnQoYm94LmV4ZWN1dGUg fj0gYm94X2xvYWRfYW5kX2V4ZWN1dGUpCj4rCj7CoMKgwqDCoMKgcmV0dXJuIGJveC5leGVjdXRl KC4uLikKPsKgZW5kCj4rYm94LmV4ZWN1dGUgPSBib3hfbG9hZF9hbmRfZXhlY3V0ZQo+wqAKPsKg LS0gZ2gtODEwOgo+wqAtLSBoYWNrIGx1YWppdCBkZWZhdWx0IGNwYXRoIArCoArCoAotLQpNYXJp YSBLaGF5ZGljaArCoA== ----ALT--cF13b9Be5b90aA8bd17BD330aAb24C931583942174 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXY+PGRpdj5UaGFuayB5b3UgZm9yIHRoZSByZXZpZXchIEkgcmV3b3Jr ZWQgdGhlIHBhdGNoOjwvZGl2Pjxocj48ZGl2PjxkaXY+U2F2aW5nIGJveC5leGVjdXRlIG1ldGhv ZCBiZWZvcmUgZXhwbGljaXRseSBjb25maWd1cmluZyBib3g8YnI+YXV0b21hdGljYWxseSBpbnZv a2VzIGxvYWRfY2ZnKCkgbm9uZXRoZWxlc3MuIEZ1cnRoZXIgY2FsbHM8YnI+dG8gYm94LmNmZ3t9 IGNhdXNlZCBpdHMgcmVjb25maWd1cmF0aW9uIGFuZCByZXBsYWNlbWVudCBvZjxicj5wcmV2aW91 c2x5IHNhdmVkIGJveC5leGVjdXRlIG1lYW5pbmcgaXQgY291bGRuJ3QgYmUgdXNlZDxicj5hZ2Fp biB3aXRob3V0IGxlYWRpbmcgdG8gYW4gZXJyb3IuPC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2 PlRoZSBwYXRjaCBpbnRyb2R1Y2VzIGEgd29ya2Fyb3VuZCBtYWtpbmcgYm94LmV4ZWN1dGUgaWRl bXBvdGVudDxicj5hbmQgaXMgaGVhdmlseSBpbmZsdWVuY2VkIGJ5IEBUb3RrdG9uYWRhLjwvZGl2 PjxkaXY+Jm5ic3A7PC9kaXY+PGRpdj5DbG9zZXMgIzQyMzE8YnI+LS0tPGJyPklzc3VlOjxicj48 YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9pc3N1ZXMvNDIz MSI+aHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9vbC90YXJhbnRvb2wvaXNzdWVzLzQyMzE8L2E+ Jm5ic3A7PGJyPkJyYW5jaDo8YnI+PGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3RhcmFudG9v bC90YXJhbnRvb2wvY29tcGFyZS9lbGphc2htL2doLTQyMzEtYm94LmV4ZWN1dGUtaW1tdXRhYmxl LWZ1bmN0aW9uIj5odHRwczovL2dpdGh1Yi5jb20vdGFyYW50b29sL3RhcmFudG9vbC9jb21wYXJl L2VsamFzaG0vZ2gtNDIzMS1ib3guZXhlY3V0ZS1pbW11dGFibGUtZnVuY3Rpb248L2E+Jm5ic3A7 PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48ZGl2PiZuYnNwO2V4dHJhL2V4cG9ydHMgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHwgJm5ic3A7MiAr PGJyPiZuYnNwO3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YSAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7fCA0 MiArKysrKysrKysrKysrKysrLS0tPGJyPiZuYnNwOy4uLi9naC00MjMxLWltbXV0YWJsZS1ib3gt ZXhlY3V0ZS50ZXN0Lmx1YSAmbmJzcDsgJm5ic3A7fCAyOCArKysrKysrKysrKysrPGJyPiZuYnNw OzMgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSk8YnI+Jm5i c3A7Y3JlYXRlIG1vZGUgMTAwNzU1IHRlc3QvYm94LXRhcC9naC00MjMxLWltbXV0YWJsZS1ib3gt ZXhlY3V0ZS50ZXN0Lmx1YTwvZGl2PjxkaXY+ZGlmZiAtLWdpdCBhL2V4dHJhL2V4cG9ydHMgYi9l eHRyYS9leHBvcnRzPGJyPmluZGV4IDdiODRhMTQ1Mi4uODU5OTYxNGVlIDEwMDY0NDxicj4tLS0g YS9leHRyYS9leHBvcnRzPGJyPisrKyBiL2V4dHJhL2V4cG9ydHM8YnI+QEAgLTExOCw2ICsxMTgs OCBAQCBzd2ltX21lbWJlcl91bnJlZjxicj4mbmJzcDtzd2ltX21lbWJlcl9pc19kcm9wcGVkPGJy PiZuYnNwO3N3aW1fbWVtYmVyX2lzX3BheWxvYWRfdXBfdG9fZGF0ZTxicj4mbmJzcDs8YnI+K2Jv eF9pc19jb25maWd1cmVkPGJyPis8YnI+Jm5ic3A7IyBNb2R1bGUgQVBJPGJyPiZuYnNwOzxicj4m bmJzcDtfc2F5PGJyPmRpZmYgLS1naXQgYS9zcmMvYm94L2x1YS9sb2FkX2NmZy5sdWEgYi9zcmMv Ym94L2x1YS9sb2FkX2NmZy5sdWE8YnI+aW5kZXggODU2MTdjOGYwLi5kYzQyOTNiZGQgMTAwNjQ0 PGJyPi0tLSBhL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YTxicj4rKysgYi9zcmMvYm94L2x1YS9s b2FkX2NmZy5sdWE8YnI+QEAgLTYsNiArNiwxMiBAQCBsb2NhbCBwcml2YXRlID0gcmVxdWlyZSgn Ym94LmludGVybmFsJyk8YnI+Jm5ic3A7bG9jYWwgdXJpbGliID0gcmVxdWlyZSgndXJpJyk8YnI+ Jm5ic3A7bG9jYWwgbWF0aCA9IHJlcXVpcmUoJ21hdGgnKTxicj4mbmJzcDtsb2NhbCBmaWJlciA9 IHJlcXVpcmUoJ2ZpYmVyJyk8YnI+K2xvY2FsIGZmaSA9IHJlcXVpcmUoJ2ZmaScpPGJyPis8YnI+ K2ZmaS5jZGVmKFtbPGJyPitib29sPGJyPitib3hfaXNfY29uZmlndXJlZCh2b2lkKTs8YnI+K11d KTxicj4mbmJzcDs8YnI+Jm5ic3A7LS0gRnVuY3Rpb24gZGVjb3JhdG9yIHRoYXQgaXMgdXNlZCB0 byBwcmV2ZW50IGJveC5jZmcoKSBmcm9tPGJyPiZuYnNwOy0tIGJlaW5nIGNhbGxlZCBjb25jdXJy ZW50bHkgYnkgZGlmZmVyZW50IGZpYmVycy48YnI+QEAgLTU1OCwxNSArNTY0LDQxIEBAIGxvY2Fs IGZ1bmN0aW9uIGxvYWRfY2ZnKGNmZyk8YnI+Jm5ic3A7ZW5kPGJyPiZuYnNwO2JveC5jZmcgPSBs b2NrZWQobG9hZF9jZmcpPGJyPiZuYnNwOzxicj4rbG9jYWwgZnVuY3Rpb24gYm94X2lzX2NvbmZp Z3VyZWQoKTxicj4rICZuYnNwOyAmbmJzcDtyZXR1cm4gZmZpLkMuYm94X2lzX2NvbmZpZ3VyZWQo KTxicj4rZW5kPGJyPis8YnI+Jm5ic3A7LS08YnI+LS0tIFRoaXMgbWFrZXMgcG9zc2libGUgZG8g Ym94LmV4ZWN1dGUgd2l0aG91dCBjYWxsaW5nIGJveC5jZmc8YnI+LS0tIG1hbnVhbGx5LiBUaGUg bG9hZF9jZmcgY2FsbCBvdmVyd3JpdGVzIGZvbGxvd2luZyB0YWJsZSBhbmQ8YnI+LS0tIG1ldGF0 YWJsZS48YnI+Ky0tIGJveC5leGVjdXRlIGlzICZsdDtib3hfbG9hZF9hbmRfZXhlY3V0ZSZndDsg d2hlbiBib3ggaXMgbm90IGxvYWRlZCw8YnI+Ky0tICZsdDtsYm94X2V4ZWN1dGUmZ3Q7IG90aGVy d2lzZS4gU2VlIGFsc28gJmx0O2JveF9jb25maWd1cmVkJmd0OyB2YXJpYWJsZS48YnI+Ky0tICZs dDtib3hfbG9hZF9hbmRfZXhlY3V0ZSZndDsgbG9hZHMgYm94IGFuZCBjYWxscyAmbHQ7bGJveF9l eGVjdXRlJmd0Oy48YnI+Jm5ic3A7LS08YnI+LWZ1bmN0aW9uIGJveC5leGVjdXRlKC4uLik8YnI+ LSAmbmJzcDsgJm5ic3A7bG9hZF9jZmcoKTxicj4rbG9jYWwgYm94X2xvYWRfYW5kX2V4ZWN1dGU8 YnI+K2JveF9sb2FkX2FuZF9leGVjdXRlID0gZnVuY3Rpb24oLi4uKTxicj4rICZuYnNwOyAmbmJz cDstLSBDb25maWd1cmUgYm94IGlmIGl0IGlzIG5vdCBjb25maWd1cmVkLCBuby1vcCBvdGhlcndp c2UgKG5vdDxicj4rICZuYnNwOyAmbmJzcDstLSByZWNvbmZpZ3VyYXRpb24pLjxicj4rICZuYnNw OyAmbmJzcDstLSBXZSBzaG91bGQgY2hlY2sgd2hldGhlciBib3ggaXMgY29uZmlndXJlZCwgYmVj YXVzZSBhIHVzZXI8YnI+KyAmbmJzcDsgJm5ic3A7LS0gbWF5IHNhdmUgJmx0O2JveF9sb2FkX2Fu ZF9leGVjdXRlJmd0OyBmdW5jdGlvbiBiZWZvcmUgYm94IGxvYWRpbmc8YnI+KyAmbmJzcDsgJm5i c3A7LS0gYW5kIGNhbGwgaXQgYWZ0ZXJ3YXJkcy48YnI+KyAmbmJzcDsgJm5ic3A7aWYgbm90IGJv eF9pc19jb25maWd1cmVkKCkgdGhlbjxicj4rICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO2xv Y2tlZChmdW5jdGlvbigpPGJyPisgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDstLSBSZS1jaGVjaywgYmVjYXVzZSBhZnRlciByZWxlYXNpbmcgb2YgdGhlIGxvY2sgdGhl PGJyPisgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDstLSBib3ggc3Rh dGUgbWF5IGJlIGNoYW5nZWQuIFdlIHNob3VsZCBjYWxsIGxvYWRfY2ZnKCk8YnI+KyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOy0tIG9ubHkgb25jZS48YnI+KyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO2lmIG5vdCBib3hfaXNfY29uZmln dXJlZCgpIHRoZW48YnI+KyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7bG9hZF9jZmcoKTxicj4rICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ZW5kPGJyPisgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ZW5kKSgp PGJyPisgJm5ic3A7ICZuYnNwO2VuZDxicj4rPGJyPisgJm5ic3A7ICZuYnNwOy0tIEF0IHRoaXMg cG9pbnQgYm94IHNob3VsZCBiZSBjb25maWd1cmVkIGFuZCBib3guZXhlY3V0ZSgpPGJyPisgJm5i c3A7ICZuYnNwOy0tIGZ1bmN0aW9uIHNob3VsZCBiZSByZXBsYWNlZCB3aXRoIGxib3hfZXhlY3V0 ZSgpLjxicj4rICZuYnNwOyAmbmJzcDthc3NlcnQodHlwZShib3guY2ZnKSB+PSAnZnVuY3Rpb24n KTxicj4rICZuYnNwOyAmbmJzcDthc3NlcnQoYm94LmV4ZWN1dGUgfj0gYm94X2xvYWRfYW5kX2V4 ZWN1dGUpPGJyPis8YnI+Jm5ic3A7ICZuYnNwOyAmbmJzcDtyZXR1cm4gYm94LmV4ZWN1dGUoLi4u KTxicj4mbmJzcDtlbmQ8YnI+K2JveC5leGVjdXRlID0gYm94X2xvYWRfYW5kX2V4ZWN1dGU8YnI+ Jm5ic3A7PGJyPiZuYnNwOy0tIGdoLTgxMDo8YnI+Jm5ic3A7LS0gaGFjayBsdWFqaXQgZGVmYXVs dCBjcGF0aDxicj5kaWZmIC0tZ2l0IGEvdGVzdC9ib3gtdGFwL2doLTQyMzEtaW1tdXRhYmxlLWJv eC1leGVjdXRlLnRlc3QubHVhIGIvdGVzdC9ib3gtdGFwL2doLTQyMzEtaW1tdXRhYmxlLWJveC1l eGVjdXRlLnRlc3QubHVhPGJyPm5ldyBmaWxlIG1vZGUgMTAwNzU1PGJyPmluZGV4IDAwMDAwMDAw MC4uMTU0NDU5MWJmPGJyPi0tLSAvZGV2L251bGw8YnI+KysrIGIvdGVzdC9ib3gtdGFwL2doLTQy MzEtaW1tdXRhYmxlLWJveC1leGVjdXRlLnRlc3QubHVhPGJyPkBAIC0wLDAgKzEsMjggQEA8YnI+ KyMhL3Vzci9iaW4vZW52IHRhcmFudG9vbDxicj4rbG9jYWwgdGFwID0gcmVxdWlyZSgndGFwJyk8 YnI+K2xvY2FsIHRlc3QgPSB0YXAudGVzdCgnZXhlY3V0ZScpPGJyPit0ZXN0OnBsYW4oMik8YnI+ Kzxicj4rLS08YnI+Ky0tIGdoLTQyMzE6IGJveC5leGVjdXRlIHNob3VsZCBiZSBhbiBpZGVtcG90 ZW50IGZ1bmN0aW9uPGJyPistLSBtZWFuaW5nIGl0cyBlZmZlY3Qgc2hvdWxkIGJlIHRoZSBzYW1l IGlmIGEgdXNlciBjaG9vc2VzPGJyPistLSB0byB1c2UgaXQgYmVmb3JlIGV4cGxpY2l0IGJveC5j ZmcgaW52b2NhdGlvbjxicj4rLS08YnI+Kzxicj4rbG9jYWwgZnVuY3Rpb24gZXhlY3V0ZV9pc19p bW11dGFibGUoZXhlY3V0ZSwgY21kLCBtc2cpPGJyPisgJm5ic3A7ICZuYnNwO2xvY2FsIHN0YXR1 cywgZXJyID0gcGNhbGwoZXhlY3V0ZSwgY21kKTxicj4rICZuYnNwOyAmbmJzcDt0ZXN0Om9rKHN0 YXR1cyBhbmQgdHlwZShlcnIpID09ICd0YWJsZScsIG1zZyk8YnI+K2VuZDxicj4rPGJyPitsb2Nh bCBib3hfZXhlY3V0ZV9zdHViID0gYm94LmV4ZWN1dGU8YnI+Ky0tIGV4cGxpY2l0IGNhbGwgdG8g bG9hZF9jZmc8YnI+K2JveC5jZmd7fTxicj4rbG9jYWwgYm94X2V4ZWN1dGVfYWN0dWFsID0gYm94 LmV4ZWN1dGU8YnI+Kzxicj4rZXhlY3V0ZV9pc19pbW11dGFibGUoYm94X2V4ZWN1dGVfc3R1Yiw8 YnI+KyAmbmJzcDsgJm5ic3A7IkNSRUFURSBUQUJMRSB0MSAoczEgSU5URUdFUiwgUFJJTUFSWSBL RVkgKHMxKSk7Iiw8YnI+KyAmbmJzcDsgJm5ic3A7ImJveC5leGVjdXRlIHN0dWIgd29ya3MgYmVm b3JlIGJveC5jZmciKTxicj4rZXhlY3V0ZV9pc19pbW11dGFibGUoYm94X2V4ZWN1dGVfYWN0dWFs LCAiRFJPUCBUQUJMRSB0MSIsPGJyPisgJm5ic3A7ICZuYnNwOyJib3guZXhlY3V0ZSB3b3JrcyBw cm9wZXJseSBhZnRlciBib3guY2ZnIik8YnI+Kzxicj4rb3MuZXhpdCh0ZXN0OmNoZWNrKCkgYW5k IDAgb3IgMSk8YnI+LS0mbmJzcDs8YnI+Mi4yNC4wPC9kaXY+PC9kaXY+PGJsb2NrcXVvdGUgc3R5 bGU9ImJvcmRlci1sZWZ0OjFweCBzb2xpZCAjMDg1N0E2OyBtYXJnaW46MTBweDsgcGFkZGluZzow IDAgMCAxMHB4OyI+0KfQtdGC0LLQtdGA0LMsIDIwINGE0LXQstGA0LDQu9GPIDIwMjAsIDIwOjUx ICswMzowMCDQvtGCIEFsZXhhbmRlciBUdXJlbmtvICZsdDthbGV4YW5kZXIudHVyZW5rb0B0YXJh bnRvb2wub3JnJmd0Ozo8YnI+Jm5ic3A7PGRpdiBpZD0iIj48ZGl2IGNsYXNzPSJqcy1oZWxwZXIg anMtcmVhZG1zZy1tc2ciPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+PC9zdHlsZT48ZGl2PjxkaXYg aWQ9InN0eWxlXzE1ODIyMjEwNjMxMjI1NDYxNDk1X0JPRFkiPlNvcnJ5IGZvciB0aGUgbGF0ZSBy ZXNwb25zZS48YnI+PGJyPlNlZSBjb21tZW50cyBiZWxvdy48YnI+PGJyPldoaWxlIGxvb2tpbmcg aW50byB0aGUgcGF0Y2gsIGV4cGVyaW1lbnRpbmcgYW5kIGNvbW1lbnRpbmcgSSBtYWRlIHRoZTxi cj5wYXRjaCAoaXQgaXMgYmFzZWQgb24geW91ciBjaGFuZ2VzKSwgc28gSSdsbCBwYXN0ZSBpdCBh dCBlbmQgb2YgdGhlPGJyPmVtYWlsIGZvciB0aGUgcmVmZXJlbmNlLjxicj48YnI+V0JSLCBBbGV4 YW5kZXIgVHVyZW5rby48YnI+PGJyPiZndDsgY29tbWl0IDU3MzMxOGVhODc0OTkzMTc0MTI0N2Yx ODEzMzNhYjY4YjQzYTgyYzY8YnI+Jmd0OyBBdXRob3I6IE1hcmlhICZsdDs8YSBocmVmPSIvY29t cG9zZT9Ubz1tYXJpYS5raGF5ZGljaEB0YXJhbnRvb2wub3JnIj5tYXJpYS5raGF5ZGljaEB0YXJh bnRvb2wub3JnPC9hPiZndDs8YnI+Jmd0OyBEYXRlOiBUdWUgT2N0IDI5IDE3OjU2OjUxIDIwMTkg KzAzMDA8YnI+Jmd0Ozxicj4mZ3Q7IGJveDogYm94LmV4ZWN1dGUgc2hvdWxkIGJlIGltbXV0YWJs ZSBmdW5jdGlvbjxicj48YnI+Tm93IEkgcmVjYWxsZWQgdGhlIHJpZ2h0IHRlcm06IGlkZW1wb3Rl bnQuPGJyPjxicj5OaXQ6IGl0IHdvdWxkIGJlIGdvb2QgdG8gdXNlIGltcGVyYXRpdmUgbW9vZCBp biB0aGUgY29tbWl0IGhlYWRlcjo8YnI+PGJyPiZuYnNwO3wgVXNlIHRoZSBpbXBlcmF0aXZlIG1v b2QgaW4gdGhlIHN1YmplY3QgbGluZS4gQSBwcm9wZXJseSBmb3JtZWQgR2l0PGJyPiZuYnNwO3wg Y29tbWl0IHN1YmplY3QgbGluZSBzaG91bGQgYWx3YXlzIGJlIGFibGUgdG8gY29tcGxldGUgdGhl IGZvbGxvd2luZzxicj4mbmJzcDt8IHNlbnRlbmNlOiDigJxJZiBhcHBsaWVkLCB0aGlzIGNvbW1p dCB3aWxsIC95b3VyIHN1YmplY3QgbGluZSBoZXJlL+KAnS48YnI+PGJyPjxhIGhyZWY9Imh0dHBz Oi8vd3d3LnRhcmFudG9vbC5pby9lbi9kb2MvMS4xMC9kZXZfZ3VpZGUvZGV2ZWxvcGVyX2d1aWRl bGluZXMvI2hvdy10by13cml0ZS1hLWNvbW1pdC1tZXNzYWdlIiB0YXJnZXQ9Il9ibGFuayI+aHR0 cHM6Ly93d3cudGFyYW50b29sLmlvL2VuL2RvYy8xLjEwL2Rldl9ndWlkZS9kZXZlbG9wZXJfZ3Vp ZGVsaW5lcy8jaG93LXRvLXdyaXRlLWEtY29tbWl0LW1lc3NhZ2U8L2E+PGJyPjxicj4mZ3Q7PGJy PiZndDsgVXNpbmcgYm94LmV4ZWN1dGUgbWV0aG9kIGJlZm9yZSBleHBsaWNpdGx5IGNvbmZpZ3Vy aW5nIGJveDxicj4mZ3Q7IGF1dG9tYXRpY2FsbHkgaW52b2tlZCBib3guY2ZnIG5vbmV0aGVsZXNz LiBBbnkgZnVydGhlciBjYWxsczxicj4mZ3Q7IHRvIGJveC5jZmcgY2F1c2VkIGl0cyByZWNvbmZp Z3VyYXRpb24gd2hpY2ggdGhlbiBsZWQgdG8gYW48YnI+Jmd0OyBlcnJvciB3aGVuIHRyeWluZyB0 byB1c2UgZXhlY3V0ZSBtZXRob2QgYWdhaW4uPGJyPjxicj5Tb3JyeSB0aGF0IEkgbml0cGljayBh cm91bmQgd29yZGluZyBhZ2FpbiwgYnV0IGFmdGVyIHRoZSBkZXNjcmlwdGlvbiBJPGJyPndvdWxk IGNoZWNrIHNvbWV0aGluZyBsaWtlIHRoZSBmb2xsb3dpbmc6PGJyPjxicj4mbmJzcDt8IGJveC5l eGVjdXRlKCdTRUxFQ1QgMScpIC0tIGhlcmUgYm94LmNmZ3t9IGlzIGNhbGxlZCB1bmRlciBob29k PGJyPiZuYnNwO3wgYm94LmV4ZWN1dGUoJ1NFTEVDVCAxJykgLS0gZXZlcnl0aGluZyBsb29rcyBv azxicj48YnI+QWZ0ZXIgdGhhdCBJIHdvdWxkIGJlIGNvbmZ1c2VkLCBiZWNhdXNlIGV2ZXJ5dGhp bmcgd29ya3MgYXMgZXhwZWN0ZWQuPGJyPjxicj5JIHdvdWxkIHNheSB0aGF0IHRoZXJlIGFyZSB0 d28gZGlmZmVyZW50IGZ1bmN0aW9uczxicj4mbHQ7Ym94X2xvYWRfYW5kX2V4ZWN1dGUmZ3Q7ICh3 aGljaCBpcyBhc3NpZ25lZCB0byBib3guZXhlY3V0ZSB3aGVuIGJveCBpcyBub3Q8YnI+Y29uZmln dXJlZCkgYW5kICZsdDtsYm94X2V4ZWN1dGUmZ3Q7IChhZnRlciBib3ggY29uZmd1cmF0aW9uKSBh bmQgd291bGQ8YnI+ZGVzY3JpYmUgdGhlIGNhc2UgdXNpbmcgdGhvc2UgdGVybXMuIEkgZ3Vlc3Mg aXQgd291bGQgZWFzaWVyIHRvPGJyPnVuZGVyc3RhbmQuPGJyPjxicj5TZWUgYWxzbyB0aGUgY29t bWVudCBhYm91dCB0aGUgdGVzdCBhdCB2ZXJ5IGVuZCBvZiB0aGUgZW1haWwuPGJyPjxicj4mZ3Q7 PGJyPiZndDsgVGhlIHBhdGNoIGludHJvZHVjZXMgYSBmaXggbWFraW5nIGJveC5leGVjdXRlIGlt bXV0YWJsZS48YnI+Jmd0Ozxicj4mZ3Q7IENsb3NlcyAjNDIzMTxicj4mZ3Q7PGJyPiZndDsgZGlm ZiAtLWdpdCBhL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YSBiL3NyYy9ib3gvbHVhL2xvYWRfY2Zn Lmx1YTxicj4mZ3Q7IGluZGV4IDg1NjE3YzhmMC4uMWY5YjQzOTJmIDEwMDY0NDxicj4mZ3Q7IC0t LSBhL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YTxicj4mZ3Q7ICsrKyBiL3NyYy9ib3gvbHVhL2xv YWRfY2ZnLmx1YTxicj4mZ3Q7IEBAIC01MTcsMTAgKzUxNywxNCBAQCBzZXRtZXRhdGFibGUoYm94 LCB7PGJyPiZndDsgZW5kPGJyPiZndDsgfSk8YnI+Jmd0Ozxicj4mZ3Q7ICstLSBGbGFnIG5lZWRl ZCB0byBrZWVwIGltbXV0YWJsZSBmdW5jdGlvbnMgYWZ0ZXIgYm94IHJlY29uZmlndXJhdGlvbjxi cj48YnI+Tml0OiBvdmVyIDY2IHN5bWJvbHMuPGJyPjxicj4mZ3Q7ICtsb2NhbCBib3hfbG9hZGVk ID0gZmFsc2U8YnI+Jmd0OyArPGJyPiZndDsgbG9jYWwgZnVuY3Rpb24gbG9hZF9jZmcoY2ZnKTxi cj4mZ3Q7IGNmZyA9IHVwZ3JhZGVfY2ZnKGNmZywgdHJhbnNsYXRlX2NmZyk8YnI+Jmd0OyBjZmcg PSBwcmVwYXJlX2NmZyhjZmcsIGRlZmF1bHRfY2ZnLCB0ZW1wbGF0ZV9jZmcsIG1vZGlmeV9jZmcp PGJyPiZndDsgYXBwbHlfZGVmYXVsdF9jZmcoY2ZnLCBkZWZhdWx0X2NmZyk7PGJyPiZndDsgKyBi b3hfbG9hZGVkID0gdHJ1ZTxicj48YnI+QWZ0ZXIgdGhpcyB3ZSBjYW4gZmFpbGVkIHRvIGNvbmZp Z3VyZSBib3gsIGNvbnNpZGVyIHRoZSBjYXNlOjxicj48YnI+Jm5ic3A7fCB0YXJhbnRvb2wmZ3Q7 IGJveC5jZmd7bGlzdGVuID0gJ2luY29ycmVjdCd9PGJyPiZuYnNwO3wgLS0tPGJyPiZuYnNwO3wg LSBlcnJvcjogJ0luY29ycmVjdCB2YWx1ZSBmb3Igb3B0aW9uICcnbGlzdGVuJyc6IGV4cGVjdGVk IGhvc3Q6c2VydmljZSBvciAvdW5peC5zb2NrZXQnPGJyPiZuYnNwO3wgLi4uPGJyPiZuYnNwO3w8 YnI+Jm5ic3A7fCB0YXJhbnRvb2wmZ3Q7IGJveC5leGVjdXRlKCdTRUxFQ1QgMScpPGJyPjxicj5X ZSBzaG91bGQgc2V0IHRoZSBmbGFnIG9ubHkgYXQgc3VjY2Vzc2Z1bCBib3ggY29uZmlndXJhdGlv bi4gSSB3b3VsZDxicj5hbHNvIGFkZCBzdWNoIHRlc3QgY2FzZS48YnI+PGJyPiZndDsgLS0gU2F2 ZSBuZXcgYm94LmNmZzxicj4mZ3Q7IGJveC5jZmcgPSBjZmc8YnI+Jmd0OyBpZiBub3QgcGNhbGwo cHJpdmF0ZS5jZmdfY2hlY2spIHRoZW48YnI+Jmd0OyBAQCAtNTY0LDcgKzU2OCwxNiBAQCBib3gu Y2ZnID0gbG9ja2VkKGxvYWRfY2ZnKTxicj4mZ3Q7IC0tIG1ldGF0YWJsZS48YnI+Jmd0OyAtLTxi cj4mZ3Q7IGZ1bmN0aW9uIGJveC5leGVjdXRlKC4uLik8YnI+Jmd0OyAtIGxvYWRfY2ZnKCk8YnI+ Jmd0OyArIC0tPGJyPiZndDsgKyAtLSBTYXZpbmcgYm94LmV4ZWN1dGUgbWV0aG9kIGJlZm9yZSBl eHBsaWNpdCBjYWxscyB0byBlaXRoZXI8YnI+Jmd0OyArIC0tIGJveC5leGVjdXRlKCkgb3IgYm94 LmNmZ3t9IGxlYWRzIHRvIGltcGxpY2l0IGludm9jYXRpb24gb2Y8YnI+Jmd0OyArIC0tIGJveC5j Zmcgbm9uZXRoZWxlc3MuPGJyPjxicj5UZWNobmljYWxseSBzYXZpbmcgb2YgYm94LmV4ZWN1dGUg ZG9lcyBub3QgbGVhZCB0byBpbnZvY2F0aW9uIG9mPGJyPmJveC5jZmcuIEJ1dCBhbnl3YXkgSSB3 b3VsZCBkZXNjcmliZSB0aGluZ3MgaW4gdGhlIHdheSBhcyBwcm9wb3NlZDxicj5hYm92ZS48YnI+ PGJyPiZndDsgKyAtLSBUaGUgZmxhZyBib3hfbG9hZGVkIG1ha2VzIHN1cmUgZXhlY3V0ZTxicj4m Z3Q7ICsgLS0gaXMgYW4gaW1tdXRhYmxlIGZ1bmN0aW9uIG1lYW5pbmcgaXQgd29uJ3QgYmUgb3Zl cndyaXR0ZW4gYnk8YnI+Jmd0OyArIC0tIGFueSBmb2xsb3dpbmcgYXR0ZW1wdHMgdG8gcmVjb25m aWd1cmUgYm94Ljxicj4mZ3Q7ICsgLS08YnI+PGJyPlRoZSBwcm9ibGVtIGlzIG5vdCB0aGF0ICZs dDtsYm94X2V4ZWN1dGUmZ3Q7IHdpbGwgYmUgb3ZlcndyaXR0ZW4gd2l0aCBzb21lPGJyPiZsdDti b3hfYW5vdGhlcl9leGVjdXRlJmd0OywgYnV0IHRoYXQgdGhlIGluaXRpYWwgJmx0O2JveF9sb2Fk X2FuZF9leGVjdXRlJmd0OyBkb2VzPGJyPm5vdCB3b3JrIGNvcnJlY3RseSBhZnRlciBzdWNjZXNz ZnVsIGJveCBjb25maWd1cmF0aW9uLjxicj48YnI+Jmd0OyArIGlmIG5vdCBib3hfbG9hZGVkIHRo ZW48YnI+Jmd0OyArIGxvYWRfY2ZnKCk8YnI+Jmd0OyArIGVuZDxicj48YnI+SSBjb25zaWRlcmVk IHVzaW5nIG9mIGB0eXBlKGJveC5jZmcpID09ICdmdW5jdGlvbidgIGNoZWNrIGFzIGluPGJyPnRh cmFudG9vbGN0bCwgYnV0IGluIGZhY3QgaXQgaXMgbm90IHJlYWxpYWJsZTogaWYgYm94IHdhcyBu b3QgY29uZmlndXJlZDxicj5hZnRlciBib3guY2ZnKCkgZHVlIHRvIGFuIGVycm9yIChzYXksIGFm dGVyIGBib3guY2Zne2xpc3RlbiA9PGJyPidpbnZhbGlkJ31gKSB0aGUgdHlwZSBvZiBib3guY2Zn IHdpbGwgYmUgJ3RhYmxlJyBhbmQgcmVsb2FkX2NmZygpIHdpbGw8YnI+d29yayBvbiB0aGUgbmV4 dCBib3guY2ZnKCkgY2FsbC4gU28gd2Ugc2hvdWxkIHVzZSBib3hfaXNfY29uZmlndXJlZCBDPGJy PmZ1bmN0aW9uOjxicj48YnI+Jm5ic3A7fCBsb2NhbCBmZmkgPSByZXF1aXJlKCdmZmknKTxicj4m bmJzcDt8PGJyPiZuYnNwO3wgZmZpLmNkZWYoW1s8YnI+Jm5ic3A7fCBib29sPGJyPiZuYnNwO3wg Ym94X2lzX2NvbmZpZ3VyZWQodm9pZCk7PGJyPiZuYnNwO3wgXV0pPGJyPiZuYnNwO3w8YnI+Jm5i c3A7fCBsb2NhbCBmdW5jdGlvbiBib3hfaXNfY29uZmlndXJlZCgpPGJyPiZuYnNwO3wgcmV0dXJu IGZmaS5DLmJveF9pc19jb25maWd1cmVkKCk8YnI+Jm5ic3A7fCBlbmQ8YnI+PGJyPlRoaXMgd2F5 IHJlcXVpcmVzIHRvIGFkZCB0aGUgZnVuY3Rpb24gaW50byBleHRyYS9leHBvcnRzLjxicj48YnI+ QlRXLCBpdCBzZWVtcyB0aGF0IGl0IGlzIHBvc3NpYmxlIHRoYXQgJmx0O2JveF9sb2FkX2FuZF9l eGVjdXRlJmd0OyB3aWxsIGJlPGJyPmNhbGxlZCB3aGVuIGBib3guY2Zne31gIGlzIGFscmVhZHkg aW4gcHJvZ3Jlc3MgaW4gYW5vdGhlciBmaWJlcjogdGhpcyBpczxicj53aHkgYWxsIGxvYWRfY2Zn KCkgLyByZWxvYWRfY2ZnKCkgY2FsbHMgYXJlIGRlY29yYXRlZCB1c2luZyBgbG9ja2VkYDxicj53 cmFwcGVyLiBJdCBzZWVtcyB3ZSBzaG91bGQgZG8gdGhlIHNhbWUgaW4gJmx0O2JveF9sb2FkX2Fu ZF9leGVjdXRlJmd0Ozo8YnI+PGJyPiZuYnNwO3wgZnVuY3Rpb24gYm94LmV4ZWN1dGUoLi4uKTxi cj4mbmJzcDt8IGlmIG5vdCBib3hfaXNfY29uZmlndXJlZCgpIHRoZW48YnI+Jm5ic3A7fCBsb2Nr ZWQoZnVuY3Rpb24oKTxicj4mbmJzcDt8IC0tIFJlLWNoZWNrLCBiZWNhdXNlIGFmdGVyIHRoZSBs b2NrIHJlbGVhc2UgdGhlIGJveDxicj4mbmJzcDt8IC0tIHN0YXRlIG1heSBiZSBjaGFuZ2VkLiBX ZSBzaG91bGQgY2FsbCBsb2FkX2NmZygpPGJyPiZuYnNwO3wgLS0gb25seSBvbmNlLjxicj4mbmJz cDt8IGlmIG5vdCBib3hfaXNfY29uZmlndXJlZCgpIHRoZW48YnI+Jm5ic3A7fCBsb2FkX2NmZygp PGJyPiZuYnNwO3wgZW5kPGJyPiZuYnNwO3wgZW5kKSgpPGJyPiZuYnNwO3wgZW5kPGJyPiZuYnNw O3wgcmV0dXJuIGJveC5leGVjdXRlKC4uLik8YnI+Jm5ic3A7fCBlbmQ8YnI+PGJyPkkgZXhwZXJp bWVudGVkIHdpdGggdGhpcyBsaWtlIHNvOjxicj48YnI+Jm5ic3A7fCAkIC4vc3JjL3RhcmFudG9v bDxicj4mbmJzcDt8IHRhcmFudG9vbCZndDsgYm94X2V4ZWN1dGUgPSBib3guZXhlY3V0ZTxicj4m bmJzcDt8IHRhcmFudG9vbCZndDsgZm9yIGkgPSAxLCAxMCBkbyByZXF1aXJlKCdmaWJlcicpLmNy ZWF0ZShmdW5jdGlvbigpIHJlcXVpcmUoJ2xvZycpLmluZm8ocmVxdWlyZSgneWFtbCcpLmVuY29k ZSgoYm94X2V4ZWN1dGUoJ1NFTEVDVCAqIEZST00gIl92aW5kZXgiJykpKSkgZW5kKSBlbmQ8YnI+ PGJyPldoaWxlIGxvb2tpbmcgaW50byB0aGUgY29kZSBJIGZvdW5kIG9uZSBtb3JlIGNhc2U6PGJy Pjxicj4mbmJzcDt8IHRhcmFudG9vbCZndDsgYm94X2NmZyA9IGJveC5jZmc8YnI+Jm5ic3A7fCAt LS08YnI+Jm5ic3A7fCAuLi48YnI+Jm5ic3A7fCB0YXJhbnRvb2wmZ3Q7IGJveF9jZmcoKTxicj4m bmJzcDt8ICZsdDsuLi4mZ3Q7PGJyPiZuYnNwO3wgdGFyYW50b29sJmd0OyBib3hfY2ZnKCk8YnI+ Jm5ic3A7fCAtLS08YnI+Jm5ic3A7fCAtIGVycm9yOiAnYnVpbHRpbi9ib3gvbG9hZF9jZmcubHVh OjE5OiBidWlsdGluL2JveC9sb2FkX2NmZy5sdWE6NTQ3OiBiYWQgYXJndW1lbnQ8YnI+Jm5ic3A7 fCAjMSB0byAnJ3BhaXJzJycgKHRhYmxlIGV4cGVjdGVkLCBnb3QgbmlsKSc8YnI+Jm5ic3A7fCAu Li48YnI+PGJyPkkgdGhpbmsgaXQgZG9lcyBOT1QgbWVhbiB0aGF0IHdlIHNob3VsZCBub3QgZml4 IGJveC5leGVjdXRlKCkgY29kZSw8YnI+YmVjYXVzZSB0aGUgZXhwZWN0ZWQgYmVoYXZpb3VyIGlz IGEgYml0IGRpZmZlcmVudDo8YnI+PGJyPiogYm94LmV4ZWN1dGUoKSAobW9yZSBzcGVjaWZpY2Fs bHkgJmx0O2JveF9sb2FkX2FuZF9leGVjdXRlJmd0Oykgc2hvdWxkPGJyPiZuYnNwOyZuYnNwO2Nv bmZpZ3VyZSBib3ggaWYgaXQgaXMgbm90IGNvbmZpZ3VyZWQgb3IganVzdCBleGVjdXRlIG90aGVy d2lzZSAody9vPGJyPiZuYnNwOyZuYnNwO2JveCByZWNvbmZpZ3VyYXRpb24pLjxicj4qIGJveC5j ZmcoKSAobW9yZSBzcGVjaWZpY2FsbHkgJmx0O2xvYWRfY2ZnJmd0Oykgc2hvdWxkIGNvbmZpZ3Vy ZSBib3ggaWYgaXQgaXM8YnI+Jm5ic3A7Jm5ic3A7bm90IGNvbmZpZ3VyZWQsIG90aGVyd2lzZSAq KnJlY29uZmlndXJlKiogaXQuPGJyPjxicj5TbyBib3guY2ZnKCkgc2hvdWxkIGNhbGwgcmVsb2Fk X2NmZygpIGlmIGJveCBpcyBhbHJlYWR5IGNvbmZpZ3VyZWQuIEk8YnI+cHJvcG9zZSB0byBmaXgg aXQgaW4gYSBzZXBhcmF0ZSBwYXRjaCAoYnV0IHdpdGhpbiB0aGUgc2NvcGUgb2YgdGhlPGJyPmlz c3VlKS48YnI+PGJyPiZndDsgcmV0dXJuIGJveC5leGVjdXRlKC4uLik8YnI+Jmd0OyBlbmQ8YnI+ Jmd0Ozxicj4mZ3Q7IGRpZmYgLS1naXQgYS90ZXN0L2JveC10YXAvZ2gtNDIzMS1pbW11dGFibGUt Ym94LWV4ZWN1dGUudGVzdC5sdWEgYi90ZXN0L2JveC10YXAvZ2gtNDIzMS1pbW11dGFibGUtYm94 LWV4ZWN1dGUudGVzdC5sdWE8YnI+Jmd0OyBuZXcgZmlsZSBtb2RlIDEwMDc1NTxicj4mZ3Q7IGlu ZGV4IDAwMDAwMDAwMC4uNWJkYmVjODhmPGJyPiZndDsgLS0tIC9kZXYvbnVsbDxicj4mZ3Q7ICsr KyBiL3Rlc3QvYm94LXRhcC9naC00MjMxLWltbXV0YWJsZS1ib3gtZXhlY3V0ZS50ZXN0Lmx1YTxi cj4mZ3Q7IEBAIC0wLDAgKzEsMzMgQEA8YnI+Jmd0OyArIyEvdXNyL2Jpbi9lbnYgdGFyYW50b29s PGJyPiZndDsgK2xvY2FsIHRhcCA9IHJlcXVpcmUoJ3RhcCcpPGJyPiZndDsgK2xvY2FsIHRlc3Qg PSB0YXAudGVzdCgnZXhlY3V0ZScpPGJyPiZndDsgK3Rlc3Q6cGxhbigzKTxicj4mZ3Q7ICs8YnI+ Jmd0OyArLS08YnI+Jmd0OyArLS0gZ2gtNDIzMTogYm94LmV4ZWN1dGUgc2hvdWxkIGJlIGltbXV0 YWJsZSBmdW5jdGlvbiBtZWFuaW5nIGl0J3M8YnI+Jmd0OyArLS0gYWRkcmVzcyBkb2Vzbid0IGNo YW5nZSBhZnRlciBmaXJzdCBib3guY2ZnIGltcGxpY2l0IGludm9jYXRpb248YnI+PGJyPkJ1dCBp dCBpcyBub3Qgc28gZXZlbiBhZnRlciB0aGUgcGF0Y2g6PGJyPjxicj4mbmJzcDt8IHRhcmFudG9v bCZndDsgYm94LmV4ZWN1dGU8YnI+Jm5ic3A7fCAtLS08YnI+Jm5ic3A7fCAtICdmdW5jdGlvbjog MHg0MDc0YmMzMCc8YnI+Jm5ic3A7fCAuLi48YnI+Jm5ic3A7fCB0YXJhbnRvb2wmZ3Q7IGJveC5l eGVjdXRlKCdTRUxFQ1QgMScpPGJyPiZuYnNwO3wgJmx0Oy4uLiZndDs8YnI+Jm5ic3A7fCB0YXJh bnRvb2wmZ3Q7IGJveC5leGVjdXRlPGJyPiZuYnNwO3wgLS0tPGJyPiZuYnNwO3wgLSAnZnVuY3Rp b246IDB4NDE2YjI2MDAnPGJyPiZuYnNwO3wgLi4uPGJyPjxicj4mZ3Q7ICstLTxicj4mZ3Q7ICs8 YnI+Jmd0OyArbG9jYWwgZnVuY3Rpb24gZXhlY3V0ZV9pc19pbW11dGFibGUoZXhlY3V0ZSwgY21k LCBtc2cpPGJyPiZndDsgKyBsb2NhbCBzdGF0dXMsIGVyciA9IHBjYWxsKGZ1bmN0aW9uKCk8YnI+ Jmd0OyArIGV4ZWN1dGUoY21kKTxicj4mZ3Q7ICsgZW5kKTxicj48YnI+Tml0OiBDYW4gYmUgd3Jp dHRlbiBhczo8YnI+PGJyPiZuYnNwO3wgbG9jYWwgc3RhdHVzLCBlcnIgPSBwY2FsbChleGVjdXRl LCBjbWQpPGJyPjxicj4mZ3Q7ICsgdGVzdDpvayhzdGF0dXMgYW5kIGVyciA9PSBuaWwsIG1zZyk8 YnI+Jmd0OyArZW5kPGJyPiZndDsgKzxicj4mZ3Q7ICtsb2NhbCBib3hfZXhlY3V0ZV9zdHViID0g Ym94LmV4ZWN1dGU8YnI+Jmd0OyArZXhlY3V0ZV9pc19pbW11dGFibGUoYm94X2V4ZWN1dGVfc3R1 YiwgIlNFTEVDVCAxIiw8YnI+Jmd0OyArICJleGVjdXRlIGRvZXMgbm90IHdvcmsgcHJvcGVybHkg YmVmb3JlIGJveC5jZmciKTxicj48YnI+VGhpcyB3aWxsIHByaW50Ojxicj48YnI+b2sgLSBleGVj dXRlIGRvZXMgbm90IHdvcmsgcHJvcGVybHkgYmVmb3JlIGJveC5jZmc8YnI+PGJyPi0tdGhhdCBs b29rcyBjb3VudGVyLWludHVpdGl2ZSBmb3IgbWUuPGJyPjxicj5CVFcsIGl0IGxvb2tzIGFzIHRo ZSBwcmVwYXJhdGlvbiBjb2RlIGZvciB0aGUgdGVzdCByYXRoZXIgdGhhbiB0aGUgdGVzdDxicj5p dHNlbGYuIFBlcnNvbmFsbHkgSSB0aGluayB0aGF0IHN1Y2ggY29kZSBzaG91bGQgZG8gYXNzZXJ0 KCkgcmF0aGVyIHRoYW48YnI+cHJvZHVjZSAnb2svbm90IG9rJyBUQVAxMyBvdXRwdXQuIFRoaXMg aXMgbm90IHRoZSBzdHJpY3QgcmVxdWlyZW1lbnQsPGJyPmhvd2V2ZXIuPGJyPjxicj5Db25zaWRl ciBbMV0sIGZyb20gd29yZHMgJ0kgd291bGQgc3BsaXQgdGVzdCBwcmVwYXJhdGlvbiAvIGNsZWFu IHVwIGNvZGU8YnI+ZnJvbSBhY3R1YWwgdGVzdCBjYXNlcycuPGJyPjxicj5bMV06IDxhIGhyZWY9 Imh0dHBzOi8vbGlzdHMudGFyYW50b29sLm9yZy9waXBlcm1haWwvdGFyYW50b29sLXBhdGNoZXMv MjAyMC1KYW51YXJ5LzAxMzU5NS5odG1sIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9saXN0cy50 YXJhbnRvb2wub3JnL3BpcGVybWFpbC90YXJhbnRvb2wtcGF0Y2hlcy8yMDIwLUphbnVhcnkvMDEz NTk1Lmh0bWw8L2E+PGJyPjxicj4mZ3Q7ICs8YnI+Jmd0OyArbG9jYWwgYm94X2V4ZWN1dGVfYWN0 dWFsID0gYm94LmV4ZWN1dGU8YnI+Jmd0OyArLS0gZXhwbGljaXQgY2FsbCB0byBsb2FkX2NmZzxi cj4mZ3Q7ICtib3guY2Zne308YnI+Jmd0OyArPGJyPiZndDsgKy0tIGNoZWNraW5nIHRoZSBmdW5j dGlvbiB3YXMgbm90IHJlY29uZmlndXJlZCwgaS5lLiBhZHJlc3Mgc3RheXMgdGhlIHNhbWU8YnI+ PGJyPlR5cG86IGFkcmVzcyAtJmd0OyBhZGRyZXNzLjxicj48YnI+Jmd0OyArdGVzdDppcyhib3hf ZXhlY3V0ZV9hY3R1YWwsIGJveC5leGVjdXRlLDxicj4mZ3Q7ICsgImV4ZWN1dGUgaXMgbm90IHRo ZSBzYW1lIGFmdGVyIGJveC5jZmciKTxicj4mZ3Q7ICtleGVjdXRlX2lzX2ltbXV0YWJsZShib3hf ZXhlY3V0ZV9hY3R1YWwsPGJyPiZndDsgKyAiQ1JFQVRFIFRBQkxFIHQxIChzMSBJTlRFR0VSLCBQ UklNQVJZIEtFWSAoczEpKTsiLDxicj4mZ3Q7ICsgImV4ZWN1dGUgZG9lcyBub3Qgd29yayBwcm9w ZXJseSBhZnRlciBib3guY2ZnIik8YnI+Jmd0OyArPGJyPiZndDsgK29zLmV4aXQodGVzdDpjaGVj aygpIGFuZCAwIG9yIDEpPGJyPjxicj5UaGUgdGVzdCBjYXNlIHdvcmtzIHByb3Blcmx5IChkb2Vz IG5vdCBmYWlsKSBvbiBjdXJyZW50IG1hc3RlciB3L28gdGhlPGJyPmZpeC4gSSBndWVzcyB5b3Ug aW50ZW5kIHRvIHRlc3QgYm94X2V4ZWN1dGVfc3R1YiBhZnRlciBib3guY2ZnKCkuPGJyPjxicj5C VFcsIEkgc3VnZ2VzdCB0byBydW4gYSB0ZXN0IG9uIGEgdGFyYW50b29sIHZlcnNpb24gYmVmb3Jl IGEgZml4IHRvPGJyPnZlcmlmeSB0aGF0IHRoZSB0ZXN0IGFjdHVhbGx5IGFibGUgdG8gY2F0Y2gg dGhlIHByb2JsZW0uPGJyPjxicj4tLS0tPGJyPjxicj5kaWZmIC0tZ2l0IGEvZXh0cmEvZXhwb3J0 cyBiL2V4dHJhL2V4cG9ydHM8YnI+aW5kZXggN2I4NGExNDUyLi44NTk5NjE0ZWUgMTAwNjQ0PGJy Pi0tLSBhL2V4dHJhL2V4cG9ydHM8YnI+KysrIGIvZXh0cmEvZXhwb3J0czxicj5AQCAtMTE4LDYg KzExOCw4IEBAIHN3aW1fbWVtYmVyX3VucmVmPGJyPiZuYnNwO3N3aW1fbWVtYmVyX2lzX2Ryb3Bw ZWQ8YnI+Jm5ic3A7c3dpbV9tZW1iZXJfaXNfcGF5bG9hZF91cF90b19kYXRlPGJyPiZuYnNwOzxi cj4rYm94X2lzX2NvbmZpZ3VyZWQ8YnI+Kzxicj4mbmJzcDsjIE1vZHVsZSBBUEk8YnI+Jm5ic3A7 PGJyPiZuYnNwO19zYXk8YnI+ZGlmZiAtLWdpdCBhL3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YSBi L3NyYy9ib3gvbHVhL2xvYWRfY2ZnLmx1YTxicj5pbmRleCAxZjliNDM5MmYuLmRmZmY3NzJkNyAx MDA2NDQ8YnI+LS0tIGEvc3JjL2JveC9sdWEvbG9hZF9jZmcubHVhPGJyPisrKyBiL3NyYy9ib3gv bHVhL2xvYWRfY2ZnLmx1YTxicj5AQCAtNiw2ICs2LDEyIEBAIGxvY2FsIHByaXZhdGUgPSByZXF1 aXJlKCdib3guaW50ZXJuYWwnKTxicj4mbmJzcDtsb2NhbCB1cmlsaWIgPSByZXF1aXJlKCd1cmkn KTxicj4mbmJzcDtsb2NhbCBtYXRoID0gcmVxdWlyZSgnbWF0aCcpPGJyPiZuYnNwO2xvY2FsIGZp YmVyID0gcmVxdWlyZSgnZmliZXInKTxicj4rbG9jYWwgZmZpID0gcmVxdWlyZSgnZmZpJyk8YnI+ Kzxicj4rZmZpLmNkZWYoW1s8YnI+KyBib29sPGJyPisgYm94X2lzX2NvbmZpZ3VyZWQodm9pZCk7 PGJyPitdXSk8YnI+Jm5ic3A7PGJyPiZuYnNwOy0tIEZ1bmN0aW9uIGRlY29yYXRvciB0aGF0IGlz IHVzZWQgdG8gcHJldmVudCBib3guY2ZnKCkgZnJvbTxicj4mbmJzcDstLSBiZWluZyBjYWxsZWQg Y29uY3VycmVudGx5IGJ5IGRpZmZlcmVudCBmaWJlcnMuPGJyPkBAIC01MTcsMTQgKzUyMywxMCBA QCBzZXRtZXRhdGFibGUoYm94LCB7PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwO2VuZDxicj4mbmJzcDt9KTxicj4mbmJzcDs8YnI+LS0tIEZsYWcgbmVlZGVkIHRvIGtlZXAg aW1tdXRhYmxlIGZ1bmN0aW9ucyBhZnRlciBib3ggcmVjb25maWd1cmF0aW9uPGJyPi1sb2NhbCBi b3hfbG9hZGVkID0gZmFsc2U8YnI+LTxicj4mbmJzcDtsb2NhbCBmdW5jdGlvbiBsb2FkX2NmZyhj ZmcpPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2NmZyA9IHVwZ3JhZGVfY2ZnKGNm ZywgdHJhbnNsYXRlX2NmZyk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Y2ZnID0g cHJlcGFyZV9jZmcoY2ZnLCBkZWZhdWx0X2NmZywgdGVtcGxhdGVfY2ZnLCBtb2RpZnlfY2ZnKTxi cj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDthcHBseV9kZWZhdWx0X2NmZyhjZmcsIGRl ZmF1bHRfY2ZnKTs8YnI+LSBib3hfbG9hZGVkID0gdHJ1ZTxicj4mbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDstLSBTYXZlIG5ldyBib3guY2ZnPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwO2JveC5jZmcgPSBjZmc8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aWYg bm90IHBjYWxsKHByaXZhdGUuY2ZnX2NoZWNrKSB0aGVuPGJyPkBAIC01NjIsMjQgKzU2NCw0MyBA QCBsb2NhbCBmdW5jdGlvbiBsb2FkX2NmZyhjZmcpPGJyPiZuYnNwO2VuZDxicj4mbmJzcDtib3gu Y2ZnID0gbG9ja2VkKGxvYWRfY2ZnKTxicj4mbmJzcDs8YnI+K2xvY2FsIGZ1bmN0aW9uIGJveF9p c19jb25maWd1cmVkKCk8YnI+KyByZXR1cm4gZmZpLkMuYm94X2lzX2NvbmZpZ3VyZWQoKTxicj4r ZW5kPGJyPis8YnI+Jm5ic3A7LS08YnI+LS0tIFRoaXMgbWFrZXMgcG9zc2libGUgZG8gYm94LmV4 ZWN1dGUgd2l0aG91dCBjYWxsaW5nIGJveC5jZmc8YnI+LS0tIG1hbnVhbGx5LiBUaGUgbG9hZF9j ZmcgY2FsbCBvdmVyd3JpdGVzIGZvbGxvd2luZyB0YWJsZSBhbmQ8YnI+LS0tIG1ldGF0YWJsZS48 YnI+Ky0tIGJveC5leGVjdXRlIGlzICZsdDtib3hfbG9hZF9hbmRfZXhlY3V0ZSZndDsgd2hlbiBi b3ggaXMgbm90IGxvYWRlZCw8YnI+Ky0tICZsdDtsYm94X2V4ZWN1dGUmZ3Q7IG90aGVyd2lzZS4g U2VlIGFsc28gJmx0O2JveF9jb25maWd1cmVkJmd0OyB2YXJpYWJsZS48YnI+Jm5ic3A7LS08YnI+ LWZ1bmN0aW9uIGJveC5leGVjdXRlKC4uLik8YnI+LSAtLTxicj4tIC0tIFNhdmluZyBib3guZXhl Y3V0ZSBtZXRob2QgYmVmb3JlIGV4cGxpY2l0IGNhbGxzIHRvIGVpdGhlcjxicj4tIC0tIGJveC5l eGVjdXRlKCkgb3IgYm94LmNmZ3t9IGxlYWRzIHRvIGltcGxpY2l0IGludm9jYXRpb24gb2Y8YnI+ LSAtLSBib3guY2ZnIG5vbmV0aGVsZXNzLiBUaGUgZmxhZyBib3hfbG9hZGVkIG1ha2VzIHN1cmUg ZXhlY3V0ZTxicj4tIC0tIGlzIGFuIGltbXV0YWJsZSBmdW5jdGlvbiBtZWFuaW5nIGl0IHdvbid0 IGJlIG92ZXJ3cml0dGVuIGJ5PGJyPi0gLS0gYW55IGZvbGxvd2luZyBhdHRlbXB0cyB0byByZWNv bmZpZ3VyZSBib3guPGJyPistLSAmbHQ7Ym94X2xvYWRfYW5kX2V4ZWN1dGUmZ3Q7IGxvYWRzIGJv eCBhbmQgY2FsbHMgJmx0O2xib3hfZXhlY3V0ZSZndDsuPGJyPistLTxicj4rbG9jYWwgYm94X2xv YWRfYW5kX2V4ZWN1dGU8YnI+K2JveF9sb2FkX2FuZF9leGVjdXRlID0gZnVuY3Rpb24oLi4uKTxi cj4rIC0tIENvbmZpZ3VyZSBib3ggaWYgaXQgaXMgbm90IGNvbmZpZ3VyZWQsIG5vLW9wIG90aGVy d2lzZSAobm90PGJyPisgLS0gcmVjb25maWd1cmF0aW9uKS48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7LS08YnI+LSBpZiBub3QgYm94X2xvYWRlZCB0aGVuPGJyPi0gbG9hZF9jZmco KTxicj4rIC0tIFdlIHNob3VsZCBjaGVjayB3aGV0aGVyIGJveCBpcyBjb25maWd1cmVkLCBiZWNh dXNlIGEgdXNlcjxicj4rIC0tIG1heSBzYXZlICZsdDtib3hfbG9hZF9hbmRfZXhlY3V0ZSZndDsg ZnVuY3Rpb24gYmVmb3JlIGJveCBsb2FkaW5nPGJyPisgLS0gYW5kIGNhbGwgaXQgYWZ0ZXJ3YXJk cy48YnI+KyBpZiBub3QgYm94X2lzX2NvbmZpZ3VyZWQoKSB0aGVuPGJyPisgbG9ja2VkKGZ1bmN0 aW9uKCk8YnI+KyAtLSBSZS1jaGVjaywgYmVjYXVzZSBhZnRlciByZWxlYXNpbmcgb2YgdGhlIGxv Y2sgdGhlPGJyPisgLS0gYm94IHN0YXRlIG1heSBiZSBjaGFuZ2VkLiBXZSBzaG91bGQgY2FsbCBs b2FkX2NmZygpPGJyPisgLS0gb25seSBvbmNlLjxicj4rIGlmIG5vdCBib3hfaXNfY29uZmlndXJl ZCgpIHRoZW48YnI+KyBsb2FkX2NmZygpPGJyPisgZW5kPGJyPisgZW5kKSgpPGJyPiZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO2VuZDxicj4rPGJyPisgLS0gQXQgdGhpcyBwb2ludCBib3gg c2hvdWxkIGJlIGNvbmZpZ3VyZWQgYW5kIGJveC5leGVjdXRlKCk8YnI+KyAtLSBmdW5jdGlvbiBz aG91bGQgYmUgcmVwbGFjZWQgd2l0aCBsYm94X2V4ZWN1dGUoKS48YnI+KyBhc3NlcnQodHlwZShi b3guY2ZnKSB+PSAnZnVuY3Rpb24nKTxicj4rIGFzc2VydChib3guZXhlY3V0ZSB+PSBib3hfbG9h ZF9hbmRfZXhlY3V0ZSk8YnI+Kzxicj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtyZXR1 cm4gYm94LmV4ZWN1dGUoLi4uKTxicj4mbmJzcDtlbmQ8YnI+K2JveC5leGVjdXRlID0gYm94X2xv YWRfYW5kX2V4ZWN1dGU8YnI+Jm5ic3A7PGJyPiZuYnNwOy0tIGdoLTgxMDo8YnI+Jm5ic3A7LS0g aGFjayBsdWFqaXQgZGVmYXVsdCBjcGF0aDwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2tx dW90ZT4mbmJzcDs8ZGl2PiZuYnNwOzwvZGl2PjxkaXYgZGF0YS1zaWduYXR1cmUtd2lkZ2V0PSJj b250YWluZXIiPjxkaXYgZGF0YS1zaWduYXR1cmUtd2lkZ2V0PSJjb250ZW50Ij48ZGl2Pi0tPGJy Pk1hcmlhIEtoYXlkaWNoPC9kaXY+PC9kaXY+PC9kaXY+PGRpdj4mbmJzcDs8L2Rpdj48L2Rpdj48 L0JPRFk+PC9IVE1MPgo= ----ALT--cF13b9Be5b90aA8bd17BD330aAb24C931583942174--