From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from f434.i.mail.ru (f434.i.mail.ru [185.5.136.105]) (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 01F7F46970E for ; Tue, 4 Feb 2020 03:22:55 +0300 (MSK) From: =?UTF-8?B?TWF4aW0gS3VsaXM=?= MIME-Version: 1.0 Date: Tue, 04 Feb 2020 03:22:53 +0300 Reply-To: =?UTF-8?B?TWF4aW0gS3VsaXM=?= Message-ID: <1580775773.978335488@f434.i.mail.ru> Content-Type: multipart/alternative; boundary="--ALT--SibtD8RO7EXhHmus99aGz0qoyumLunF41580775773" In-Reply-To: <20200115203858.GG7851@tarantool.org> References: <20200113112754.22338-1-bokuno@picodata.io> <20200115203858.GG7851@tarantool.org> Subject: Re: [Tarantool-patches] =?utf-8?q?=5BPATCH=5D_vinyl=3A_fix_recovery_a?= =?utf-8?q?fter_deletion_=2Erun_files?= List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?TmlraXRhIFBldHRpaw==?= Cc: tarantool-patches@dev.tarantool.org ----ALT--SibtD8RO7EXhHmus99aGz0qoyumLunF41580775773 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 CkhpIQoKPiBJcyB0aGVyZSBhbnkgaXNzdWUgY29ycmVzcG9uZGluZyB0byB0aGUgcHJvYmxlbSB5 b3UgYXJlIHNvbHZpbmc/CgpObywgdGhlcmUgaXMgbm8gaXNzdWUgY29ycmVzcG9uZGluZyB0byB0 aGF0IHByb2JsZW0uCgo+ID4gLS0tCj4gPiBzcmMvYm94L3Z5X2xzbS5jIHwgMTkgKy0KPiA+IHRl c3QvdmlueWwvZGVsZXRlX3J1bi5yZXN1bHQgfCAzMDIgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKPiA+IHRlc3QvdmlueWwvZGVsZXRlX3J1bi50ZXN0Lmx1YSB8IDkzICsrKysrKysrKwo+ ID4gdGVzdC92aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSB8IDExICsrCj4gPiA0IGZpbGVz IGNoYW5nZWQsIDQyMSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQo+ID4gY3JlYXRlIG1v ZGUgMTAwNjQ0IHRlc3QvdmlueWwvZGVsZXRlX3J1bi5yZXN1bHQKPiA+IGNyZWF0ZSBtb2RlIDEw MDY0NCB0ZXN0L3ZpbnlsL2RlbGV0ZV9ydW4udGVzdC5sdWEKPiA+IGNyZWF0ZSBtb2RlIDEwMDY0 NCB0ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5X3RydWUubHVhCj4gPgo+ID4gZGlmZiAtLWdpdCBh L3NyYy9ib3gvdnlfbHNtLmMgYi9zcmMvYm94L3Z5X2xzbS5jCj4gPiBpbmRleCBhYTRiY2U5ZWIu LmE4YWJhZjAzMSAxMDA2NDQKPiA+IC0tLSBhL3NyYy9ib3gvdnlfbHNtLmMKPiA+ICsrKyBiL3Ny Yy9ib3gvdnlfbHNtLmMKPiA+IEBAIC0zNzQsNiArMzc0LDkgQEAgdnlfbHNtX3JlY292ZXJfcnVu KHN0cnVjdCB2eV9sc20gKmxzbSwgc3RydWN0IHZ5X3J1bl9yZWNvdmVyeV9pbmZvICpydW5faW5m bywKPiA+IGxzbS0+c3BhY2VfaWQsIGxzbS0+aW5kZXhfaWQsCj4gPiBsc20tPmNtcF9kZWYsIGxz bS0+a2V5X2RlZiwKPiA+IGxzbS0+ZGlza19mb3JtYXQsICZsc20tPm9wdHMpICE9IDApKSB7Cj4g PiArIHZ5X2xvZ190eF9iZWdpbigpOwo+ID4gKyB2eV9sb2dfZHJvcF9ydW4ocnVuX2luZm8tPmlk LCAwKTsKPiA+ICsgdnlfbG9nX3R4X3RyeV9jb21taXQoKTsKPiA+IHZ5X3J1bl91bnJlZihydW4p Owo+IAo+IFlvdSBjYW4gcmUtdXNlIHZ5X3J1bl9kaXNjYXJkKCkuCgpZZXMsIEkgYWdyZWUuCgoK PiA+IHJldHVybiBOVUxMOwo+ID4gfQo+ID4gQEAgLTQyNiw4ICs0MjksMTQgQEAgdnlfbHNtX3Jl Y292ZXJfc2xpY2Uoc3RydWN0IHZ5X2xzbSAqbHNtLCBzdHJ1Y3QgdnlfcmFuZ2UgKnJhbmdlLAo+ ID4KPiA+IHJ1biA9IHZ5X2xzbV9yZWNvdmVyX3J1bihsc20sIHNsaWNlX2luZm8tPnJ1biwKPiA+ IHJ1bl9lbnYsIGZvcmNlX3JlY292ZXJ5KTsKPiA+IC0gaWYgKHJ1biA9PSBOVUxMKQo+ID4gKyBp ZiAocnVuID09IE5VTEwpIHsKPiA+ICsgaWYgKGZvcmNlX3JlY292ZXJ5KSB7Cj4gPiArIHZ5X2xv Z190eF9iZWdpbigpOwo+ID4gKyB2eV9sb2dfZGVsZXRlX3NsaWNlKHNsaWNlX2luZm8tPmlkKTsK PiA+ICsgdnlfbG9nX3R4X3RyeV9jb21taXQoKTsKPiA+ICsgfQo+ID4gZ290byBvdXQ7Cj4gPiAr IH0KPiA+Cj4gPiBzbGljZSA9IHZ5X3NsaWNlX25ldyhzbGljZV9pbmZvLT5pZCwgcnVuLCBiZWdp biwgZW5kLCBsc20tPmNtcF9kZWYpOwo+ID4gaWYgKHNsaWNlID09IE5VTEwpCj4gPiBAQCAtNDg2 LDkgKzQ5NSwxMSBAQCB2eV9sc21fcmVjb3Zlcl9yYW5nZShzdHJ1Y3QgdnlfbHNtICpsc20sCj4g PiBybGlzdF9mb3JlYWNoX2VudHJ5X3JldmVyc2Uoc2xpY2VfaW5mbywgJnJhbmdlX2luZm8tPnNs aWNlcywgaW5fcmFuZ2UpIHsKPiA+IGlmICh2eV9sc21fcmVjb3Zlcl9zbGljZShsc20sIHJhbmdl LCBzbGljZV9pbmZvLAo+ID4gcnVuX2VudiwgZm9yY2VfcmVjb3ZlcnkpID09IE5VTEwpIHsKPiA+ IC0gdnlfcmFuZ2VfZGVsZXRlKHJhbmdlKTsKPiA+IC0gcmFuZ2UgPSBOVUxMOwo+ID4gLSBnb3Rv IG91dDsKPiA+ICsgaWYgKGZvcmNlX3JlY292ZXJ5ID09IGZhbHNlKSB7Cj4gCj4gTml0OiBpZiAo IWZvcmNlX3JlY292ZXJ5KQo+IAo+IFdoeSBkbyB3ZSBkZWxldGUgc2xpY2UgaWYgZm9yY2VfcmVj b3ZlcnkgaXMgZW5hYmxlZCwKPiBtZWFud2hpbGUgZGVsZXRlIHJhbmdlL3J1biB3aGVuIGZvcmNl X3JlY292ZXJ5IGlzIGRpc2FibGVkPwoKU2xpY2UgaXMgYSByZWZlcmVuY2UgdG8gYSBydW4gY29u dGFpbmluZyBhIGtleSByYW5nZSBhbmQgaXTigJlzIHN0b3JlZCBvbmx5IGluIHRoZSBtZXRhZGF0 YSBsb2cuClNvLCBpZiBydW4gZmlsZSBpcyBkZWxldGVkIGFuZCB3ZSByZXN0YXJ0IHNlcnZlciB3 aXRoIGZvcmNlX3JlY292ZXJ5PXRydWUgd2UgaGF2ZSB0byBkZWxldGUKdGhlIGNvcnJlc3BvbmRp bmcgc2xpY2UgdG8gaWdub3JlIHRoZSBmaWxlIGxvc3MuIApSYW5nZSBpcyBhbiBMU00tc3VidHJl ZSwgc28gaWYgd2Ugd2FudCB0byBnZXQgdGhlIHJlc3Qgb2YgdGhlIHN1YnRyZWUgIGF0IGFueSBj b3N0IChmb3JjZV9yZWNvdmVyeT10cnVlKQp3ZSBkb24ndCBoYXZlIHRvIGRlbGV0ZSB0aGUgcmFu Z2UuCgo+IENvdWxkIHlvdSBjb21tZW50IHRoZXNlIHRlc3QgY2FzZXMgZXhwbGFpbmluZyB3aGF0 J3MgZ29pbmcgb24gaGVyZT8KCj4gPiArdGVzdF9ydW46Y21kKCJjcmVhdGUgc2VydmVyIHRlc3Qg d2l0aCBzY3JpcHQ9J3ZpbnlsL2ZvcmNlX3JlY292ZXJ5X3RydWUubHVhJyIpCj4gPiArdGVzdF9y dW46Y21kKCJzdGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9JzEnIikKPiA+ICt0ZXN0X3J1bjpj bWQoInN3aXRjaCB0ZXN0IikKPiA+ICsKPiA+ICt0ZXN0ID0gYm94LnNjaGVtYS5zcGFjZS5jcmVh dGUoJ3Rlc3QnLCB7ZW5naW5lPSd2aW55bCd9KQo+ID4gK18gPSB0ZXN0OmNyZWF0ZV9pbmRleCgn cGsnKQo+ID4gK2ZvciBpID0gMSwgMTAgZG8gdGVzdDppbnNlcnR7aSwgaSArIDEwMH0gYm94LnNu YXBzaG90KCkgZW5kCj4gPiArdGVzdDpzZWxlY3QoKQo+ID4gKwo+ID4gK2ZpbyA9IHJlcXVpcmUg KCdmaW8nKQo+ID4gK2ZvciBfLCBmIGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGly IC4uICcvJyAuLiB0ZXN0LmlkIC4uICcvMC8qMjYqJykpIGRvIGZpby51bmxpbmsoZikgZW5kCj4g PiArCj4gPiArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpCj4gPiArdGVzdF9ydW46Y21k KCdyZXN0YXJ0IHNlcnZlciB0ZXN0IHdpdGggYXJncz0iMSInKQo+ID4gK3Rlc3RfcnVuOmNtZCgn c3dpdGNoIHRlc3QnKQo+ID4gK2JveC5jZmcuZm9yY2VfcmVjb3ZlcnkKPiA+ICtib3guc3BhY2Uu dGVzdDpzZWxlY3QoKQo+ID4gKwo+ID4gK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIGRlZmF1bHQnKQo+ ID4gK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9IjAiJykKPiA+ ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCB0ZXN0JykKPiA+ICtib3guY2ZnLmZvcmNlX3JlY292ZXJ5 Cj4gPiArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCkKPiA+ICsKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N3 aXRjaCBkZWZhdWx0JykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N0b3Agc2VydmVyIHRlc3QnKQo+ID4g K3Rlc3RfcnVuOmNtZCgnY2xlYW51cCBzZXJ2ZXIgdGVzdCcpCj4gPiArdGVzdF9ydW46Y21kKCdk ZWxldGUgc2VydmVyIHRlc3QnKQo+ID4gKwo+ID4gKy0tIFRlc3QgMgo+ID4gK3Rlc3RfcnVuID0g cmVxdWlyZSgndGVzdF9ydW4nKS5uZXcoKQo+ID4gK3Rlc3RfcnVuOmNtZCgiY3JlYXRlIHNlcnZl ciB0ZXN0IHdpdGggc2NyaXB0PSd2aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSciKQo+ID4g K3Rlc3RfcnVuOmNtZCgic3RhcnQgc2VydmVyIHRlc3Qgd2l0aCBhcmdzPScxJyIpCj4gPiArdGVz dF9ydW46Y21kKCJzd2l0Y2ggdGVzdCIpCj4gPiArCj4gPiArdGVzdCA9IGJveC5zY2hlbWEuc3Bh Y2UuY3JlYXRlKCd0ZXN0Jywge2VuZ2luZT0ndmlueWwnfSkKPiA+ICtfID0gdGVzdDpjcmVhdGVf aW5kZXgoJ3BrJykKPiA+ICtfID0gdGVzdDppbnNlcnR7MSwgIjEyMyJ9Cj4gPiArdGVzdDpzZWxl Y3QoKQo+ID4gK2JveC5zbmFwc2hvdCgpCj4gPiArCj4gPiArZmlvID0gcmVxdWlyZSAoJ2Zpbycp Cj4gPiArZm9yIF8sIGYgaW4gcGFpcnMoZmlvLmdsb2IoYm94LmNmZy52aW55bF9kaXIgLi4gJy8n IC4uIHRlc3QuaWQgLi4gJy8wLyouaW5kZXgnKSkgZG8gZmlvLnVubGluayhmKSBlbmQKPiA+ICsK PiA+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0JykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3Jl c3RhcnQgc2VydmVyIHRlc3Qgd2l0aCBhcmdzPSIxIicpCj4gPiArdGVzdF9ydW46Y21kKCdzd2l0 Y2ggdGVzdCcpCj4gPiArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCkKPiA+ICsKPiA+ICt0ZXN0X3J1 bjpjbWQoJ3N3aXRjaCBkZWZhdWx0JykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3Jlc3RhcnQgc2VydmVy IHRlc3Qgd2l0aCBhcmdzPSIwIicpCj4gPiArdGVzdF9ydW46Y21kKCdzd2l0Y2ggdGVzdCcpCj4g PiArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCkKPiA+ICsKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRj aCBkZWZhdWx0JykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N0b3Agc2VydmVyIHRlc3QnKQo+ID4gK3Rl c3RfcnVuOmNtZCgnY2xlYW51cCBzZXJ2ZXIgdGVzdCcpCj4gPiArdGVzdF9ydW46Y21kKCdkZWxl dGUgc2VydmVyIHRlc3QnKQo+ID4gKwo+ID4gKy0tIFRlc3QzCj4gPiArCj4gPiArdGVzdF9ydW4g PSByZXF1aXJlKCd0ZXN0X3J1bicpLm5ldygpCj4gPiArdGVzdF9ydW46Y21kKCJjcmVhdGUgc2Vy dmVyIHRlc3Qgd2l0aCBzY3JpcHQ9J3ZpbnlsL2ZvcmNlX3JlY292ZXJ5X3RydWUubHVhJyIpCj4g PiArdGVzdF9ydW46Y21kKCJzdGFydCBzZXJ2ZXIgdGVzdCIpCj4gPiArdGVzdF9ydW46Y21kKCJz d2l0Y2ggdGVzdCIpCj4gPiArCj4gPiArdGVzdCA9IGJveC5zY2hlbWEuc3BhY2UuY3JlYXRlKCd0 ZXN0Jywge2VuZ2luZT0ndmlueWwnfSkKPiA+ICtfID0gdGVzdDpjcmVhdGVfaW5kZXgoJ3BrJykK PiA+ICtfID0gdGVzdDppbnNlcnR7MSwgIjEyMyJ9Cj4gPiArdGVzdDpzZWxlY3QoMSkKPiA+ICti b3guc25hcHNob3QoKQo+ID4gKwo+ID4gK2ZpbyA9IHJlcXVpcmUgKCdmaW8nKQo+ID4gK2ZvciBf LCBmIGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGlyIC4uICcvJyAuLiB0ZXN0Lmlk IC4uICcvMC8qLnJ1bicpKSBkbyBmaW8udW5saW5rKGYpIGVuZAo+ID4gKwo+ID4gK3Rlc3RfcnVu OmNtZCgnc3dpdGNoIGRlZmF1bHQnKQo+ID4gK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIg dGVzdCB3aXRoIGFyZ3M9IjEiJykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCB0ZXN0JykKPiA+ ICtib3guc3BhY2UudGVzdDpzZWxlY3QoKQo+ID4gKwo+ID4gK3Rlc3RfcnVuOmNtZCgnc3dpdGNo IGRlZmF1bHQnKQo+ID4gK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFy Z3M9IjAiJykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCB0ZXN0JykKPiA+ICtib3guY2ZnLmZv cmNlX3JlY292ZXJ5Cj4gPiArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCkKPiA+ICt0ZXN0X3J1bjpj bWQoJ3N3aXRjaCBkZWZhdWx0JykKPiA+ICt0ZXN0X3J1bjpjbWQoJ3N0b3Agc2VydmVyIHRlc3Qn KQo+ID4gK3Rlc3RfcnVuOmNtZCgnY2xlYW51cCBzZXJ2ZXIgdGVzdCcpCj4gPiArdGVzdF9ydW46 Y21kKCdkZWxldGUgc2VydmVyIHRlc3QnKQo+ID4gZGlmZiAtLWdpdCBhL3Rlc3QvdmlueWwvZm9y Y2VfcmVjb3ZlcnlfdHJ1ZS5sdWEgYi90ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5X3RydWUubHVh Cj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5kZXggMDAwMDAwMDAwLi41MzQxNGYyMmMK PiA+IC0tLSAvZGV2L251bGwKPiA+ICsrKyBiL3Rlc3QvdmlueWwvZm9yY2VfcmVjb3ZlcnlfdHJ1 ZS5sdWEKPiA+IEBAIC0wLDAgKzEsMTEgQEAKPiA+ICsjIS91c3IvYmluL2VudiB0YXJhbnRvb2wK YmFzaDogIS91c3IvYmluL2VudjogZXZlbnQgbm90IGZvdW5kCj4gPiArCj4gPiArbG9jYWwgZnIg PSB0b251bWJlcihhcmdbMV0pCj4gPiArYm94LmNmZyAoewo+ID4gKyBsaXN0ZW4gPSBvcy5nZXRl bnYoIkxJU1RFTiIpLAo+ID4gKyByZXBsaWNhdGlvbiA9IG9zLmdldGVudigiTUFTVEVSIiksCj4g PiArIHZpbnlsX21lbW9yeSA9IDEyOCAqIDEwMjQgKiAxMDI0LAo+ID4gKyBmb3JjZV9yZWNvdmVy eSA9IChmciA9PSAxKSwKPiA+ICt9KQo+ID4gKwo+ID4gK3JlcXVpcmUoJ2NvbnNvbGUnKS5saXN0 ZW4ob3MuZ2V0ZW52KCdBRE1JTicpKQo+ID4gLS0KPiA+IDIuMTcuMQo+ID4KCgoKSW4gdGhlc2Ug dGVzdHMgSSBtYWtlIHNvbWUgc25hcHNob3RzIGFuZCBkZWxldGUgLnJ1biBhbmQgLmluZGV4IGZp bGVzLiAKVGhlbiBJIHJlY292ZXIgc2VydmVyIHdpdGggZm9yY2VfcmVvdmVyeSA9IHRydWUsCmFu ZCBpbiB0aGUgZW5kIEkgcmVzdGFydCBzZXJ2ZXJ3aXRoIGZvcmNlX3JlY292ZXJ5ID0gZmFsc2Ug dG8gbWFrZSBzdXJlIHRoYXQKdGhlIHNlcnZlciB3aWxsIHN0YXJ0IHVwCgpBdCB0aGUgZmlyc3Qg dGVzdCBJIGRlbGV0ZSBvbmx5IG9uZSAucnVuIGZpbGUgb25lIC5pbmRleCBmaWxlLgpUaGUgc2Vj b25kIHRlc3QgZGVsZXRlcyBhbGwgLmluZGV4IGZpbGVzIGFuZCB0aGUgdGhpcmQgdGVzdHMgZGVs ZXRlcyBhbGwgLnJ1biBmaWxlcy4KCmJyYW5jaDogIGh0dHBzOi8vZ2l0aHViLmNvbS9tYWtzaW1r dWxpcy90YXJhbnRvb2wvdHJlZS9tYWtzaW1rdWxpcy9yZWNvdmVyLWFmdGVyLWRlbGV0aW9uLXJ1 bi1maWxlcyDCoAoKPtCh0YDQtdC00LAsIDE1INGP0L3QstCw0YDRjyAyMDIwLCAyMzozOCArMDM6 MDAg0L7RgiBOaWtpdGEgUGV0dGlrIDwga29yYWJsZXZAdGFyYW50b29sLm9yZyA+Ogo+Cj5PbiAx MyBKYW4gMTQ6MjcsIE1ha3NpbSBLdWxpcyB3cm90ZToKPj4gV2hpbGUgZGVsZXRpb24gLnJ1biBm aWxlcyBhbmQgcmVjb3ZlciB3aXRoIGZvcmNlX3JlY292ZXJ5PXRydWUgd2UgaGF2ZSB0byBkZWxl dGUgc29tZSBsb2dzIHdoaWNoIGFyZSByZXNwb25zaWJsZSBmb3IgZGVsZXRlZCBmaWxlcyBzbyB0 aGF0IHdlIGNhbiByZWNvdmVyIGxhdGVyIHdpdGggZm9yY2VfcmVjb3Zlcnk9ZmFsc2UuCj4KPlBs ZWFzZSwgbGltaXQgY29tbWl0IG1lc3NhZ2Ugd2l0aCA4MCBjaGFyYWN0ZXJzIHBlciBsaW5lLgo+ Cj5JcyB0aGVyZSBhbnkgaXNzdWUgY29ycmVzcG9uZGluZyB0byB0aGUgcHJvYmxlbSB5b3UgYXJl IHNvbHZpbmc/Cj7CoAo+PiAtLS0KPj4gIHNyYy9ib3gvdnlfbHNtLmMgICAgICAgICAgICAgICAg ICAgfCAgMTkgKy0KPj4gIHRlc3QvdmlueWwvZGVsZXRlX3J1bi5yZXN1bHQgICAgICAgfCAzMDIg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPj4gIHRlc3QvdmlueWwvZGVsZXRlX3J1bi50 ZXN0Lmx1YSAgICAgfCAgOTMgKysrKysrKysrCj4+ICB0ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5 X3RydWUubHVhIHwgIDExICsrCj4+ICA0IGZpbGVzIGNoYW5nZWQsIDQyMSBpbnNlcnRpb25zKCsp LCA0IGRlbGV0aW9ucygtKQo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvdmlueWwvZGVsZXRl X3J1bi5yZXN1bHQKPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L3ZpbnlsL2RlbGV0ZV9ydW4u dGVzdC5sdWEKPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5 X3RydWUubHVhCj4+IAo+PiBkaWZmIC0tZ2l0IGEvc3JjL2JveC92eV9sc20uYyBiL3NyYy9ib3gv dnlfbHNtLmMKPj4gaW5kZXggYWE0YmNlOWViLi5hOGFiYWYwMzEgMTAwNjQ0Cj4+IC0tLSBhL3Ny Yy9ib3gvdnlfbHNtLmMKPj4gKysrIGIvc3JjL2JveC92eV9sc20uYwo+PiBAQCAtMzc0LDYgKzM3 NCw5IEBAIHZ5X2xzbV9yZWNvdmVyX3J1bihzdHJ1Y3QgdnlfbHNtICpsc20sIHN0cnVjdCB2eV9y dW5fcmVjb3ZlcnlfaW5mbyAqcnVuX2luZm8sCj4+ICAJCQkJICBsc20tPnNwYWNlX2lkLCBsc20t PmluZGV4X2lkLAo+PiAgCQkJCSAgbHNtLT5jbXBfZGVmLCBsc20tPmtleV9kZWYsCj4+ICAJCQkJ ICBsc20tPmRpc2tfZm9ybWF0LCAmbHNtLT5vcHRzKSAhPSAwKSkgewo+PiArCQl2eV9sb2dfdHhf YmVnaW4oKTsKPj4gKwkJdnlfbG9nX2Ryb3BfcnVuKHJ1bl9pbmZvLT5pZCwgMCk7Cj4+ICsJCXZ5 X2xvZ190eF90cnlfY29tbWl0KCk7Cj4+ICAJCXZ5X3J1bl91bnJlZihydW4pOwo+Cj5Zb3UgY2Fu IHJlLXVzZSB2eV9ydW5fZGlzY2FyZCgpLgo+Cj4+ICAJCXJldHVybiBOVUxMOwo+PiAgCX0KPj4g QEAgLTQyNiw4ICs0MjksMTQgQEAgdnlfbHNtX3JlY292ZXJfc2xpY2Uoc3RydWN0IHZ5X2xzbSAq bHNtLCBzdHJ1Y3QgdnlfcmFuZ2UgKnJhbmdlLAo+PiAKPj4gIAlydW4gPSB2eV9sc21fcmVjb3Zl cl9ydW4obHNtLCBzbGljZV9pbmZvLT5ydW4sCj4+ICAJCQkJIHJ1bl9lbnYsIGZvcmNlX3JlY292 ZXJ5KTsKPj4gLQlpZiAocnVuID09IE5VTEwpCj4+ICsJaWYgKHJ1biA9PSBOVUxMKSB7Cj4+ICsJ CWlmIChmb3JjZV9yZWNvdmVyeSkgewo+PiArCQkJdnlfbG9nX3R4X2JlZ2luKCk7Cj4+ICsJCQl2 eV9sb2dfZGVsZXRlX3NsaWNlKHNsaWNlX2luZm8tPmlkKTsKPj4gKwkJCXZ5X2xvZ190eF90cnlf Y29tbWl0KCk7Cj4+ICsJCX0KPj4gIAkJZ290byBvdXQ7Cj4+ICsJfQo+PiAKPj4gIAlzbGljZSA9 IHZ5X3NsaWNlX25ldyhzbGljZV9pbmZvLT5pZCwgcnVuLCBiZWdpbiwgZW5kLCBsc20tPmNtcF9k ZWYpOwo+PiAgCWlmIChzbGljZSA9PSBOVUxMKQo+PiBAQCAtNDg2LDkgKzQ5NSwxMSBAQCB2eV9s c21fcmVjb3Zlcl9yYW5nZShzdHJ1Y3QgdnlfbHNtICpsc20sCj4+ICAJcmxpc3RfZm9yZWFjaF9l bnRyeV9yZXZlcnNlKHNsaWNlX2luZm8sICZyYW5nZV9pbmZvLT5zbGljZXMsIGluX3JhbmdlKSB7 Cj4+ICAJCWlmICh2eV9sc21fcmVjb3Zlcl9zbGljZShsc20sIHJhbmdlLCBzbGljZV9pbmZvLAo+ PiAgCQkJCQkgcnVuX2VudiwgZm9yY2VfcmVjb3ZlcnkpID09IE5VTEwpIHsKPj4gLQkJCXZ5X3Jh bmdlX2RlbGV0ZShyYW5nZSk7Cj4+IC0JCQlyYW5nZSA9IE5VTEw7Cj4+IC0JCQlnb3RvIG91dDsK Pj4gKwkJCWlmIChmb3JjZV9yZWNvdmVyeSA9PSBmYWxzZSkgewo+Cj5OaXQ6IGlmICghZm9yY2Vf cmVjb3ZlcnkpCj4KPldoeSBkbyB3ZSBkZWxldGUgc2xpY2UgaWYgZm9yY2VfcmVjb3ZlcnkgaXMg ZW5hYmxlZCwKPm1lYW53aGlsZSBkZWxldGUgcmFuZ2UvcnVuIHdoZW4gZm9yY2VfcmVjb3Zlcnkg aXMgZGlzYWJsZWQ/Cj4KPj4gKwkJCQl2eV9yYW5nZV9kZWxldGUocmFuZ2UpOwo+PiArCQkJCXJh bmdlID0gTlVMTDsKPj4gKwkJCQlnb3RvIG91dDsKPj4gKwkJCX0KPj4gIAkJfQo+PiAgCX0KPj4g IAl2eV9sc21fYWRkX3JhbmdlKGxzbSwgcmFuZ2UpOwo+PiBkaWZmIC0tZ2l0IGEvdGVzdC92aW55 bC9kZWxldGVfcnVuLnRlc3QubHVhIGIvdGVzdC92aW55bC9kZWxldGVfcnVuLnRlc3QubHVhCj4+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAwMC4uMWU4ZWQzOWVkCj4+IC0t LSAvZGV2L251bGwKPj4gKysrIGIvdGVzdC92aW55bC9kZWxldGVfcnVuLnRlc3QubHVhCj4+IEBA IC0wLDAgKzEsOTMgQEAKPj4gK3Rlc3RfcnVuID0gcmVxdWlyZSgndGVzdF9ydW4nKS5uZXcoKQo+ PiArZmliZXIgPSByZXF1aXJlKCdmaWJlcicpCj4+ICsKPj4gKy0tIFRlc3QgMQo+Cj5Db3VsZCB5 b3UgY29tbWVudCB0aGVzZSB0ZXN0IGNhc2VzIGV4cGxhaW5pbmcgd2hhdCdzIGdvaW5nIG9uIGhl cmU/Cj4KPj4gK3Rlc3RfcnVuOmNtZCgiY3JlYXRlIHNlcnZlciB0ZXN0IHdpdGggc2NyaXB0PSd2 aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSciKQo+PiArdGVzdF9ydW46Y21kKCJzdGFydCBz ZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9JzEnIikKPj4gK3Rlc3RfcnVuOmNtZCgic3dpdGNoIHRlc3Qi KQo+PiArCj4+ICt0ZXN0ID0gYm94LnNjaGVtYS5zcGFjZS5jcmVhdGUoJ3Rlc3QnLCB7ZW5naW5l PSd2aW55bCd9KQo+PiArXyA9IHRlc3Q6Y3JlYXRlX2luZGV4KCdwaycpCj4+ICtmb3IgaSA9IDEs IDEwIGRvIHRlc3Q6aW5zZXJ0e2ksIGkgKyAxMDB9IGJveC5zbmFwc2hvdCgpIGVuZAo+PiArdGVz dDpzZWxlY3QoKQo+PiArCj4+ICtmaW8gPSByZXF1aXJlICgnZmlvJykKPj4gK2ZvciBfLCBmIGlu IHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGlyIC4uICcvJyAuLiB0ZXN0LmlkIC4uICcv MC8qMjYqJykpIGRvIGZpby51bmxpbmsoZikgZW5kCj4+ICsKPj4gK3Rlc3RfcnVuOmNtZCgnc3dp dGNoIGRlZmF1bHQnKQo+PiArdGVzdF9ydW46Y21kKCdyZXN0YXJ0IHNlcnZlciB0ZXN0IHdpdGgg YXJncz0iMSInKQo+PiArdGVzdF9ydW46Y21kKCdzd2l0Y2ggdGVzdCcpCj4+ICtib3guY2ZnLmZv cmNlX3JlY292ZXJ5Cj4+ICtib3guc3BhY2UudGVzdDpzZWxlY3QoKQo+PiArCj4+ICt0ZXN0X3J1 bjpjbWQoJ3N3aXRjaCBkZWZhdWx0JykKPj4gK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIg dGVzdCB3aXRoIGFyZ3M9IjAiJykKPj4gK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIHRlc3QnKQo+PiAr Ym94LmNmZy5mb3JjZV9yZWNvdmVyeQo+PiArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCkKPj4gKwo+ PiArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpCj4+ICt0ZXN0X3J1bjpjbWQoJ3N0b3Ag c2VydmVyIHRlc3QnKQo+PiArdGVzdF9ydW46Y21kKCdjbGVhbnVwIHNlcnZlciB0ZXN0JykKPj4g K3Rlc3RfcnVuOmNtZCgnZGVsZXRlIHNlcnZlciB0ZXN0JykKPj4gKwo+PiArLS0gVGVzdCAyCj4+ ICt0ZXN0X3J1biA9IHJlcXVpcmUoJ3Rlc3RfcnVuJykubmV3KCkKPj4gK3Rlc3RfcnVuOmNtZCgi Y3JlYXRlIHNlcnZlciB0ZXN0IHdpdGggc2NyaXB0PSd2aW55bC9mb3JjZV9yZWNvdmVyeV90cnVl Lmx1YSciKQo+PiArdGVzdF9ydW46Y21kKCJzdGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9JzEn IikKPj4gK3Rlc3RfcnVuOmNtZCgic3dpdGNoIHRlc3QiKQo+PiArCj4+ICt0ZXN0ID0gYm94LnNj aGVtYS5zcGFjZS5jcmVhdGUoJ3Rlc3QnLCB7ZW5naW5lPSd2aW55bCd9KQo+PiArXyA9IHRlc3Q6 Y3JlYXRlX2luZGV4KCdwaycpCj4+ICtfID0gdGVzdDppbnNlcnR7MSwgIjEyMyJ9Cj4+ICt0ZXN0 OnNlbGVjdCgpCj4+ICtib3guc25hcHNob3QoKQo+PiArCj4+ICtmaW8gPSByZXF1aXJlICgnZmlv JykKPj4gK2ZvciBfLCBmIGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGlyIC4uICcv JyAuLiB0ZXN0LmlkIC4uICcvMC8qLmluZGV4JykpIGRvIGZpby51bmxpbmsoZikgZW5kCj4+ICsK Pj4gK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIGRlZmF1bHQnKQo+PiArdGVzdF9ydW46Y21kKCdyZXN0 YXJ0IHNlcnZlciB0ZXN0IHdpdGggYXJncz0iMSInKQo+PiArdGVzdF9ydW46Y21kKCdzd2l0Y2gg dGVzdCcpCj4+ICtib3guc3BhY2UudGVzdDpzZWxlY3QoKQo+PiArCj4+ICt0ZXN0X3J1bjpjbWQo J3N3aXRjaCBkZWZhdWx0JykKPj4gK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIgdGVzdCB3 aXRoIGFyZ3M9IjAiJykKPj4gK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIHRlc3QnKQo+PiArYm94LnNw YWNlLnRlc3Q6c2VsZWN0KCkKPj4gKwo+PiArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcp Cj4+ICt0ZXN0X3J1bjpjbWQoJ3N0b3Agc2VydmVyIHRlc3QnKQo+PiArdGVzdF9ydW46Y21kKCdj bGVhbnVwIHNlcnZlciB0ZXN0JykKPj4gK3Rlc3RfcnVuOmNtZCgnZGVsZXRlIHNlcnZlciB0ZXN0 JykKPj4gKwo+PiArLS0gVGVzdDMKPj4gKwo+PiArdGVzdF9ydW4gPSByZXF1aXJlKCd0ZXN0X3J1 bicpLm5ldygpCj4+ICt0ZXN0X3J1bjpjbWQoImNyZWF0ZSBzZXJ2ZXIgdGVzdCB3aXRoIHNjcmlw dD0ndmlueWwvZm9yY2VfcmVjb3ZlcnlfdHJ1ZS5sdWEnIikKPj4gK3Rlc3RfcnVuOmNtZCgic3Rh cnQgc2VydmVyIHRlc3QiKQo+PiArdGVzdF9ydW46Y21kKCJzd2l0Y2ggdGVzdCIpCj4+ICsKPj4g K3Rlc3QgPSBib3guc2NoZW1hLnNwYWNlLmNyZWF0ZSgndGVzdCcsIHtlbmdpbmU9J3ZpbnlsJ30p Cj4+ICtfID0gdGVzdDpjcmVhdGVfaW5kZXgoJ3BrJykKPj4gK18gPSB0ZXN0Omluc2VydHsxLCAi MTIzIn0KPj4gK3Rlc3Q6c2VsZWN0KDEpCj4+ICtib3guc25hcHNob3QoKQo+PiArCj4+ICtmaW8g PSByZXF1aXJlICgnZmlvJykKPj4gK2ZvciBfLCBmIGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcu dmlueWxfZGlyIC4uICcvJyAuLiB0ZXN0LmlkIC4uICcvMC8qLnJ1bicpKSBkbyBmaW8udW5saW5r KGYpIGVuZAo+PiArCj4+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0JykKPj4gK3Rlc3Rf cnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9IjEiJykKPj4gK3Rlc3RfcnVu OmNtZCgnc3dpdGNoIHRlc3QnKQo+PiArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCkKPj4gKwo+PiAr dGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpCj4+ICt0ZXN0X3J1bjpjbWQoJ3Jlc3RhcnQg c2VydmVyIHRlc3Qgd2l0aCBhcmdzPSIwIicpCj4+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCB0ZXN0 JykKPj4gK2JveC5jZmcuZm9yY2VfcmVjb3ZlcnkKPj4gK2JveC5zcGFjZS50ZXN0OnNlbGVjdCgp Cj4+ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0JykKPj4gK3Rlc3RfcnVuOmNtZCgnc3Rv cCBzZXJ2ZXIgdGVzdCcpCj4+ICt0ZXN0X3J1bjpjbWQoJ2NsZWFudXAgc2VydmVyIHRlc3QnKQo+ PiArdGVzdF9ydW46Y21kKCdkZWxldGUgc2VydmVyIHRlc3QnKQo+PiBkaWZmIC0tZ2l0IGEvdGVz dC92aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSBiL3Rlc3QvdmlueWwvZm9yY2VfcmVjb3Zl cnlfdHJ1ZS5sdWEKPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPj4gaW5kZXggMDAwMDAwMDAwLi41 MzQxNGYyMmMKPj4gLS0tIC9kZXYvbnVsbAo+PiArKysgYi90ZXN0L3ZpbnlsL2ZvcmNlX3JlY292 ZXJ5X3RydWUubHVhCj4+IEBAIC0wLDAgKzEsMTEgQEAKPj4gKyMhL3Vzci9iaW4vZW52IHRhcmFu dG9vbAo+PiArCj4+ICtsb2NhbCBmciA9IHRvbnVtYmVyKGFyZ1sxXSkKPj4gK2JveC5jZmcgKHsK Pj4gKyAgICBsaXN0ZW4gPSBvcy5nZXRlbnYoIkxJU1RFTiIpLAo+PiArICAgIHJlcGxpY2F0aW9u ID0gb3MuZ2V0ZW52KCJNQVNURVIiKSwKPj4gKyAgICB2aW55bF9tZW1vcnkgPSAxMjggKiAxMDI0 ICogMTAyNCwKPj4gKyAgICBmb3JjZV9yZWNvdmVyeSA9IChmciA9PSAxKSwKPj4gK30pCj4+ICsK Pj4gK3JlcXVpcmUoJ2NvbnNvbGUnKS5saXN0ZW4ob3MuZ2V0ZW52KCdBRE1JTicpKQo+PiAtLSAK Pj4gMi4xNy4xCj4+IAoKCi0tIApNYXhpbSBLdWxpcwo= ----ALT--SibtD8RO7EXhHmus99aGz0qoyumLunF41580775773 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 CjxIVE1MPjxCT0RZPjxkaXYgY2xhc3M9ImpzLWhlbHBlciBqcy1yZWFkbXNnLW1zZyI+Cgk8c3R5 bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+CiAJPGRpdj4KCQk8YmFzZSB0YXJnZXQ9Il9zZWxm IiBocmVmPSJodHRwczovL2UubWFpbC5ydS8iPgoJCQogICAgICAgICAgICA8ZGl2IGlkPSJzdHls ZV8xNTc5OTg4NzE3MDE0OTQ0ODU5OF9CT0RZIj48ZGl2IGNsYXNzPSJjbGFzc18xNTgwNzkxNTIy Ij4KPGRpdiBjbGFzcz0ianMtaGVscGVyX21haWxydV9jc3NfYXR0cmlidXRlX3Bvc3RmaXgganMt cmVhZG1zZy1tc2dfbWFpbHJ1X2Nzc19hdHRyaWJ1dGVfcG9zdGZpeCI+Cgk8c3R5bGU+PC9zdHls ZT4KIAk8ZGl2PgoJCQoJCQogICAgICAgICAgICA8ZGl2IGlkPSJzdHlsZV8xNTc5OTU5Mzk2MDc2 ODU4NzcyMF9CT0RZX21haWxydV9jc3NfYXR0cmlidXRlX3Bvc3RmaXgiPjxkaXYgY2xhc3M9ImNs YXNzXzE1Nzk5NjE2ODhfbWFpbHJ1X2Nzc19hdHRyaWJ1dGVfcG9zdGZpeCI+CkhpITxicj48YnI+ Jmd0OyBJcyB0aGVyZSBhbnkgaXNzdWUgY29ycmVzcG9uZGluZyB0byB0aGUgcHJvYmxlbSB5b3Ug YXJlIHNvbHZpbmc/PGJyPjxicj5ObywgdGhlcmUgaXMgbm8gaXNzdWUgY29ycmVzcG9uZGluZyB0 byB0aGF0IHByb2JsZW0uPGJyPjxicj4mZ3Q7ICZndDsgLS0tPGJyPiZndDsgJmd0OyBzcmMvYm94 L3Z5X2xzbS5jIHwgMTkgKy08YnI+Jmd0OyAmZ3Q7IHRlc3QvdmlueWwvZGVsZXRlX3J1bi5yZXN1 bHQgfCAzMDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKys8YnI+Jmd0OyAmZ3Q7IHRlc3Qv dmlueWwvZGVsZXRlX3J1bi50ZXN0Lmx1YSB8IDkzICsrKysrKysrKzxicj4mZ3Q7ICZndDsgdGVz dC92aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSB8IDExICsrPGJyPiZndDsgJmd0OyA0IGZp bGVzIGNoYW5nZWQsIDQyMSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKTxicj4mZ3Q7ICZn dDsgY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvdmlueWwvZGVsZXRlX3J1bi5yZXN1bHQ8YnI+Jmd0 OyAmZ3Q7IGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L3ZpbnlsL2RlbGV0ZV9ydW4udGVzdC5sdWE8 YnI+Jmd0OyAmZ3Q7IGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5 X3RydWUubHVhPGJyPiZndDsgJmd0Ozxicj4mZ3Q7ICZndDsgZGlmZiAtLWdpdCBhL3NyYy9ib3gv dnlfbHNtLmMgYi9zcmMvYm94L3Z5X2xzbS5jPGJyPiZndDsgJmd0OyBpbmRleCBhYTRiY2U5ZWIu LmE4YWJhZjAzMSAxMDA2NDQ8YnI+Jmd0OyAmZ3Q7IC0tLSBhL3NyYy9ib3gvdnlfbHNtLmM8YnI+ Jmd0OyAmZ3Q7ICsrKyBiL3NyYy9ib3gvdnlfbHNtLmM8YnI+Jmd0OyAmZ3Q7IEBAIC0zNzQsNiAr Mzc0LDkgQEAgdnlfbHNtX3JlY292ZXJfcnVuKHN0cnVjdCB2eV9sc20gKmxzbSwgc3RydWN0IHZ5 X3J1bl9yZWNvdmVyeV9pbmZvICpydW5faW5mbyw8YnI+Jmd0OyAmZ3Q7IGxzbS0mZ3Q7c3BhY2Vf aWQsIGxzbS0mZ3Q7aW5kZXhfaWQsPGJyPiZndDsgJmd0OyBsc20tJmd0O2NtcF9kZWYsIGxzbS0m Z3Q7a2V5X2RlZiw8YnI+Jmd0OyAmZ3Q7IGxzbS0mZ3Q7ZGlza19mb3JtYXQsICZhbXA7bHNtLSZn dDtvcHRzKSAhPSAwKSkgezxicj4mZ3Q7ICZndDsgKyB2eV9sb2dfdHhfYmVnaW4oKTs8YnI+Jmd0 OyAmZ3Q7ICsgdnlfbG9nX2Ryb3BfcnVuKHJ1bl9pbmZvLSZndDtpZCwgMCk7PGJyPiZndDsgJmd0 OyArIHZ5X2xvZ190eF90cnlfY29tbWl0KCk7PGJyPiZndDsgJmd0OyB2eV9ydW5fdW5yZWYocnVu KTs8YnI+Jmd0OyA8YnI+Jmd0OyBZb3UgY2FuIHJlLXVzZSB2eV9ydW5fZGlzY2FyZCgpLjxicj48 YnI+WWVzLCBJIGFncmVlLjxicj48YnI+PGJyPiZndDsgJmd0OyByZXR1cm4gTlVMTDs8YnI+Jmd0 OyAmZ3Q7IH08YnI+Jmd0OyAmZ3Q7IEBAIC00MjYsOCArNDI5LDE0IEBAIHZ5X2xzbV9yZWNvdmVy X3NsaWNlKHN0cnVjdCB2eV9sc20gKmxzbSwgc3RydWN0IHZ5X3JhbmdlICpyYW5nZSw8YnI+Jmd0 OyAmZ3Q7PGJyPiZndDsgJmd0OyBydW4gPSB2eV9sc21fcmVjb3Zlcl9ydW4obHNtLCBzbGljZV9p bmZvLSZndDtydW4sPGJyPiZndDsgJmd0OyBydW5fZW52LCBmb3JjZV9yZWNvdmVyeSk7PGJyPiZn dDsgJmd0OyAtIGlmIChydW4gPT0gTlVMTCk8YnI+Jmd0OyAmZ3Q7ICsgaWYgKHJ1biA9PSBOVUxM KSB7PGJyPiZndDsgJmd0OyArIGlmIChmb3JjZV9yZWNvdmVyeSkgezxicj4mZ3Q7ICZndDsgKyB2 eV9sb2dfdHhfYmVnaW4oKTs8YnI+Jmd0OyAmZ3Q7ICsgdnlfbG9nX2RlbGV0ZV9zbGljZShzbGlj ZV9pbmZvLSZndDtpZCk7PGJyPiZndDsgJmd0OyArIHZ5X2xvZ190eF90cnlfY29tbWl0KCk7PGJy PiZndDsgJmd0OyArIH08YnI+Jmd0OyAmZ3Q7IGdvdG8gb3V0Ozxicj4mZ3Q7ICZndDsgKyB9PGJy PiZndDsgJmd0Ozxicj4mZ3Q7ICZndDsgc2xpY2UgPSB2eV9zbGljZV9uZXcoc2xpY2VfaW5mby0m Z3Q7aWQsIHJ1biwgYmVnaW4sIGVuZCwgbHNtLSZndDtjbXBfZGVmKTs8YnI+Jmd0OyAmZ3Q7IGlm IChzbGljZSA9PSBOVUxMKTxicj4mZ3Q7ICZndDsgQEAgLTQ4Niw5ICs0OTUsMTEgQEAgdnlfbHNt X3JlY292ZXJfcmFuZ2Uoc3RydWN0IHZ5X2xzbSAqbHNtLDxicj4mZ3Q7ICZndDsgcmxpc3RfZm9y ZWFjaF9lbnRyeV9yZXZlcnNlKHNsaWNlX2luZm8sICZhbXA7cmFuZ2VfaW5mby0mZ3Q7c2xpY2Vz LCBpbl9yYW5nZSkgezxicj4mZ3Q7ICZndDsgaWYgKHZ5X2xzbV9yZWNvdmVyX3NsaWNlKGxzbSwg cmFuZ2UsIHNsaWNlX2luZm8sPGJyPiZndDsgJmd0OyBydW5fZW52LCBmb3JjZV9yZWNvdmVyeSkg PT0gTlVMTCkgezxicj4mZ3Q7ICZndDsgLSB2eV9yYW5nZV9kZWxldGUocmFuZ2UpOzxicj4mZ3Q7 ICZndDsgLSByYW5nZSA9IE5VTEw7PGJyPiZndDsgJmd0OyAtIGdvdG8gb3V0Ozxicj4mZ3Q7ICZn dDsgKyBpZiAoZm9yY2VfcmVjb3ZlcnkgPT0gZmFsc2UpIHs8YnI+Jmd0OyA8YnI+Jmd0OyBOaXQ6 IGlmICghZm9yY2VfcmVjb3ZlcnkpPGJyPiZndDsgPGJyPiZndDsgV2h5IGRvIHdlIGRlbGV0ZSBz bGljZSBpZiBmb3JjZV9yZWNvdmVyeSBpcyBlbmFibGVkLDxicj4mZ3Q7IG1lYW53aGlsZSBkZWxl dGUgcmFuZ2UvcnVuIHdoZW4gZm9yY2VfcmVjb3ZlcnkgaXMgZGlzYWJsZWQ/PGJyPjxicj5TbGlj ZSBpcyBhIHJlZmVyZW5jZSB0byBhIHJ1biBjb250YWluaW5nIGEga2V5IHJhbmdlIGFuZCBpdOKA mXMgc3RvcmVkIG9ubHkgaW4gdGhlIG1ldGFkYXRhIGxvZy48YnI+U28sIGlmIHJ1biBmaWxlIGlz IGRlbGV0ZWQgYW5kIHdlIHJlc3RhcnQgc2VydmVyIHdpdGggZm9yY2VfcmVjb3Zlcnk9dHJ1ZSB3 ZSBoYXZlIHRvIGRlbGV0ZTxicj50aGUgY29ycmVzcG9uZGluZyBzbGljZSB0byBpZ25vcmUgdGhl IGZpbGUgbG9zcy4gPGJyPlJhbmdlIGlzIGFuIExTTS1zdWJ0cmVlLCBzbyBpZiB3ZSB3YW50IHRv IGdldCB0aGUgcmVzdCBvZiB0aGUgc3VidHJlZSA8c3BhbiBsYW5nPSJlbiI+YXQgYW55IGNvc3Qg KGZvcmNlX3JlY292ZXJ5PXRydWUpPGJyPndlIGRvbid0IGhhdmUgdG8gZGVsZXRlIHRoZSByYW5n ZS48L3NwYW4+PGJyPjxicj4mZ3Q7IENvdWxkIHlvdSBjb21tZW50IHRoZXNlIHRlc3QgY2FzZXMg ZXhwbGFpbmluZyB3aGF0J3MgZ29pbmcgb24gaGVyZT88YnI+IDxicj4mZ3Q7ICZndDsgK3Rlc3Rf cnVuOmNtZCgiY3JlYXRlIHNlcnZlciB0ZXN0IHdpdGggc2NyaXB0PSd2aW55bC9mb3JjZV9yZWNv dmVyeV90cnVlLmx1YSciKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgic3RhcnQgc2VydmVy IHRlc3Qgd2l0aCBhcmdzPScxJyIpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCJzd2l0Y2gg dGVzdCIpPGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyArdGVzdCA9IGJveC5zY2hlbWEuc3Bh Y2UuY3JlYXRlKCd0ZXN0Jywge2VuZ2luZT0ndmlueWwnfSk8YnI+Jmd0OyAmZ3Q7ICtfID0gdGVz dDpjcmVhdGVfaW5kZXgoJ3BrJyk8YnI+Jmd0OyAmZ3Q7ICtmb3IgaSA9IDEsIDEwIGRvIHRlc3Q6 aW5zZXJ0e2ksIGkgKyAxMDB9IGJveC5zbmFwc2hvdCgpIGVuZDxicj4mZ3Q7ICZndDsgK3Rlc3Q6 c2VsZWN0KCk8YnI+Jmd0OyAmZ3Q7ICs8YnI+Jmd0OyAmZ3Q7ICtmaW8gPSByZXF1aXJlICgnZmlv Jyk8YnI+Jmd0OyAmZ3Q7ICtmb3IgXywgZiBpbiBwYWlycyhmaW8uZ2xvYihib3guY2ZnLnZpbnls X2RpciAuLiAnLycgLi4gdGVzdC5pZCAuLiAnLzAvKjI2KicpKSBkbyBmaW8udW5saW5rKGYpIGVu ZDxicj4mZ3Q7ICZndDsgKzxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIGRlZmF1 bHQnKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIgdGVzdCB3aXRo IGFyZ3M9IjEiJyk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCB0ZXN0Jyk8YnI+ Jmd0OyAmZ3Q7ICtib3guY2ZnLmZvcmNlX3JlY292ZXJ5PGJyPiZndDsgJmd0OyArYm94LnNwYWNl LnRlc3Q6c2VsZWN0KCk8YnI+Jmd0OyAmZ3Q7ICs8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQo J3N3aXRjaCBkZWZhdWx0Jyk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3Jlc3RhcnQgc2Vy dmVyIHRlc3Qgd2l0aCBhcmdzPSIwIicpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0 Y2ggdGVzdCcpPGJyPiZndDsgJmd0OyArYm94LmNmZy5mb3JjZV9yZWNvdmVyeTxicj4mZ3Q7ICZn dDsgK2JveC5zcGFjZS50ZXN0OnNlbGVjdCgpPGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyAr dGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21k KCdzdG9wIHNlcnZlciB0ZXN0Jyk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ2NsZWFudXAg c2VydmVyIHRlc3QnKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgnZGVsZXRlIHNlcnZlciB0 ZXN0Jyk8YnI+Jmd0OyAmZ3Q7ICs8YnI+Jmd0OyAmZ3Q7ICstLSBUZXN0IDI8YnI+Jmd0OyAmZ3Q7 ICt0ZXN0X3J1biA9IHJlcXVpcmUoJ3Rlc3RfcnVuJykubmV3KCk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0 X3J1bjpjbWQoImNyZWF0ZSBzZXJ2ZXIgdGVzdCB3aXRoIHNjcmlwdD0ndmlueWwvZm9yY2VfcmVj b3ZlcnlfdHJ1ZS5sdWEnIik8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoInN0YXJ0IHNlcnZl ciB0ZXN0IHdpdGggYXJncz0nMSciKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgic3dpdGNo IHRlc3QiKTxicj4mZ3Q7ICZndDsgKzxicj4mZ3Q7ICZndDsgK3Rlc3QgPSBib3guc2NoZW1hLnNw YWNlLmNyZWF0ZSgndGVzdCcsIHtlbmdpbmU9J3ZpbnlsJ30pPGJyPiZndDsgJmd0OyArXyA9IHRl c3Q6Y3JlYXRlX2luZGV4KCdwaycpPGJyPiZndDsgJmd0OyArXyA9IHRlc3Q6aW5zZXJ0ezEsICIx MjMifTxicj4mZ3Q7ICZndDsgK3Rlc3Q6c2VsZWN0KCk8YnI+Jmd0OyAmZ3Q7ICtib3guc25hcHNo b3QoKTxicj4mZ3Q7ICZndDsgKzxicj4mZ3Q7ICZndDsgK2ZpbyA9IHJlcXVpcmUgKCdmaW8nKTxi cj4mZ3Q7ICZndDsgK2ZvciBfLCBmIGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGly IC4uICcvJyAuLiB0ZXN0LmlkIC4uICcvMC8qLmluZGV4JykpIGRvIGZpby51bmxpbmsoZikgZW5k PGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVs dCcpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdyZXN0YXJ0IHNlcnZlciB0ZXN0IHdpdGgg YXJncz0iMSInKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIHRlc3QnKTxicj4m Z3Q7ICZndDsgK2JveC5zcGFjZS50ZXN0OnNlbGVjdCgpPGJyPiZndDsgJmd0OyArPGJyPiZndDsg Jmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpPGJyPiZndDsgJmd0OyArdGVzdF9y dW46Y21kKCdyZXN0YXJ0IHNlcnZlciB0ZXN0IHdpdGggYXJncz0iMCInKTxicj4mZ3Q7ICZndDsg K3Rlc3RfcnVuOmNtZCgnc3dpdGNoIHRlc3QnKTxicj4mZ3Q7ICZndDsgK2JveC5zcGFjZS50ZXN0 OnNlbGVjdCgpPGJyPiZndDsgJmd0OyArPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0 Y2ggZGVmYXVsdCcpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdzdG9wIHNlcnZlciB0ZXN0 Jyk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ2NsZWFudXAgc2VydmVyIHRlc3QnKTxicj4m Z3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgnZGVsZXRlIHNlcnZlciB0ZXN0Jyk8YnI+Jmd0OyAmZ3Q7 ICs8YnI+Jmd0OyAmZ3Q7ICstLSBUZXN0Mzxicj4mZ3Q7ICZndDsgKzxicj4mZ3Q7ICZndDsgK3Rl c3RfcnVuID0gcmVxdWlyZSgndGVzdF9ydW4nKS5uZXcoKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVu OmNtZCgiY3JlYXRlIHNlcnZlciB0ZXN0IHdpdGggc2NyaXB0PSd2aW55bC9mb3JjZV9yZWNvdmVy eV90cnVlLmx1YSciKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgic3RhcnQgc2VydmVyIHRl c3QiKTxicj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgic3dpdGNoIHRlc3QiKTxicj4mZ3Q7ICZn dDsgKzxicj4mZ3Q7ICZndDsgK3Rlc3QgPSBib3guc2NoZW1hLnNwYWNlLmNyZWF0ZSgndGVzdCcs IHtlbmdpbmU9J3ZpbnlsJ30pPGJyPiZndDsgJmd0OyArXyA9IHRlc3Q6Y3JlYXRlX2luZGV4KCdw aycpPGJyPiZndDsgJmd0OyArXyA9IHRlc3Q6aW5zZXJ0ezEsICIxMjMifTxicj4mZ3Q7ICZndDsg K3Rlc3Q6c2VsZWN0KDEpPGJyPiZndDsgJmd0OyArYm94LnNuYXBzaG90KCk8YnI+Jmd0OyAmZ3Q7 ICs8YnI+Jmd0OyAmZ3Q7ICtmaW8gPSByZXF1aXJlICgnZmlvJyk8YnI+Jmd0OyAmZ3Q7ICtmb3Ig XywgZiBpbiBwYWlycyhmaW8uZ2xvYihib3guY2ZnLnZpbnlsX2RpciAuLiAnLycgLi4gdGVzdC5p ZCAuLiAnLzAvKi5ydW4nKSkgZG8gZmlvLnVubGluayhmKSBlbmQ8YnI+Jmd0OyAmZ3Q7ICs8YnI+ Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0Jyk8YnI+Jmd0OyAmZ3Q7ICt0 ZXN0X3J1bjpjbWQoJ3Jlc3RhcnQgc2VydmVyIHRlc3Qgd2l0aCBhcmdzPSIxIicpPGJyPiZndDsg Jmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggdGVzdCcpPGJyPiZndDsgJmd0OyArYm94LnNwYWNl LnRlc3Q6c2VsZWN0KCk8YnI+Jmd0OyAmZ3Q7ICs8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQo J3N3aXRjaCBkZWZhdWx0Jyk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3Jlc3RhcnQgc2Vy dmVyIHRlc3Qgd2l0aCBhcmdzPSIwIicpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0 Y2ggdGVzdCcpPGJyPiZndDsgJmd0OyArYm94LmNmZy5mb3JjZV9yZWNvdmVyeTxicj4mZ3Q7ICZn dDsgK2JveC5zcGFjZS50ZXN0OnNlbGVjdCgpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdz d2l0Y2ggZGVmYXVsdCcpPGJyPiZndDsgJmd0OyArdGVzdF9ydW46Y21kKCdzdG9wIHNlcnZlciB0 ZXN0Jyk8YnI+Jmd0OyAmZ3Q7ICt0ZXN0X3J1bjpjbWQoJ2NsZWFudXAgc2VydmVyIHRlc3QnKTxi cj4mZ3Q7ICZndDsgK3Rlc3RfcnVuOmNtZCgnZGVsZXRlIHNlcnZlciB0ZXN0Jyk8YnI+Jmd0OyAm Z3Q7IGRpZmYgLS1naXQgYS90ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5X3RydWUubHVhIGIvdGVz dC92aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YTxicj4mZ3Q7ICZndDsgbmV3IGZpbGUgbW9k ZSAxMDA2NDQ8YnI+Jmd0OyAmZ3Q7IGluZGV4IDAwMDAwMDAwMC4uNTM0MTRmMjJjPGJyPiZndDsg Jmd0OyAtLS0gL2Rldi9udWxsPGJyPiZndDsgJmd0OyArKysgYi90ZXN0L3ZpbnlsL2ZvcmNlX3Jl Y292ZXJ5X3RydWUubHVhPGJyPiZndDsgJmd0OyBAQCAtMCwwICsxLDExIEBAPGJyPiZndDsgJmd0 OyArIyEvdXNyL2Jpbi9lbnYgdGFyYW50b29sPGJyPmJhc2g6ICEvdXNyL2Jpbi9lbnY6IGV2ZW50 IG5vdCBmb3VuZDxicj4mZ3Q7ICZndDsgKzxicj4mZ3Q7ICZndDsgK2xvY2FsIGZyID0gdG9udW1i ZXIoYXJnWzFdKTxicj4mZ3Q7ICZndDsgK2JveC5jZmcgKHs8YnI+Jmd0OyAmZ3Q7ICsgbGlzdGVu ID0gb3MuZ2V0ZW52KCJMSVNURU4iKSw8YnI+Jmd0OyAmZ3Q7ICsgcmVwbGljYXRpb24gPSBvcy5n ZXRlbnYoIk1BU1RFUiIpLDxicj4mZ3Q7ICZndDsgKyB2aW55bF9tZW1vcnkgPSAxMjggKiAxMDI0 ICogMTAyNCw8YnI+Jmd0OyAmZ3Q7ICsgZm9yY2VfcmVjb3ZlcnkgPSAoZnIgPT0gMSksPGJyPiZn dDsgJmd0OyArfSk8YnI+Jmd0OyAmZ3Q7ICs8YnI+Jmd0OyAmZ3Q7ICtyZXF1aXJlKCdjb25zb2xl JykubGlzdGVuKG9zLmdldGVudignQURNSU4nKSk8YnI+Jmd0OyAmZ3Q7IC0tPGJyPiZndDsgJmd0 OyAyLjE3LjE8YnI+Jmd0OyAmZ3Q7PGJyPjxicj48YnI+PGJyPkluIHRoZXNlIHRlc3RzIEkgbWFr ZSBzb21lIHNuYXBzaG90cyBhbmQgZGVsZXRlIC5ydW4gYW5kIC5pbmRleCBmaWxlcy4gPGJyPlRo ZW4gSSByZWNvdmVyIHNlcnZlciB3aXRoIGZvcmNlX3Jlb3ZlcnkgPSB0cnVlLDxicj4gYW5kIGlu IHRoZSBlbmQgSSByZXN0YXJ0IHNlcnZlcndpdGggZm9yY2VfcmVjb3ZlcnkgPSBmYWxzZSB0byBt YWtlIHN1cmUgdGhhdDxicj50aGUgc2VydmVyIHdpbGwgc3RhcnQgdXA8YnI+PGJyPkF0IHRoZSBm aXJzdCB0ZXN0IEkgZGVsZXRlIG9ubHkgb25lIC5ydW4gZmlsZSBvbmUgLmluZGV4IGZpbGUuPGJy PlRoZSBzZWNvbmQgdGVzdCBkZWxldGVzIGFsbCAuaW5kZXggZmlsZXMgYW5kIHRoZSB0aGlyZCB0 ZXN0cyBkZWxldGVzIGFsbCAucnVuIGZpbGVzLjxicj48YnI+YnJhbmNoOiA8YSBocmVmPSJodHRw czovL2dpdGh1Yi5jb20vbWFrc2lta3VsaXMvdGFyYW50b29sL3RyZWUvbWFrc2lta3VsaXMvcmVj b3Zlci1hZnRlci1kZWxldGlvbi1ydW4tZmlsZXMiPmh0dHBzOi8vZ2l0aHViLmNvbS9tYWtzaW1r dWxpcy90YXJhbnRvb2wvdHJlZS9tYWtzaW1rdWxpcy9yZWNvdmVyLWFmdGVyLWRlbGV0aW9uLXJ1 bi1maWxlczwvYT4mbmJzcDs8YnI+PGJyPjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXItbGVmdDox cHggc29saWQgIzA4NTdBNjttYXJnaW46MTBweDtwYWRkaW5nOjAgMCAwIDEwcHg7Ij4KCdCh0YDQ tdC00LAsIDE1INGP0L3QstCw0YDRjyAyMDIwLCAyMzozOCArMDM6MDAg0L7RgiBOaWtpdGEgUGV0 dGlrICZsdDs8YSBocmVmPSIvL2UubWFpbC5ydS9jb21wb3NlLz9tYWlsdG89bWFpbHRvJTNha29y YWJsZXZAdGFyYW50b29sLm9yZyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0iIG5vb3BlbmVyIG5vcmVm ZXJyZXIiPmtvcmFibGV2QHRhcmFudG9vbC5vcmc8L2E+Jmd0Ozo8YnI+Cgk8YnI+Cgk8ZGl2IGlk PSIiPgoKCgoKCgo8ZGl2IGNsYXNzPSJqcy1oZWxwZXJfbWFpbHJ1X2Nzc19hdHRyaWJ1dGVfcG9z dGZpeF9tYWlscnVfY3NzX2F0dHJpYnV0ZV9wb3N0Zml4IGpzLXJlYWRtc2ctbXNnX21haWxydV9j c3NfYXR0cmlidXRlX3Bvc3RmaXhfbWFpbHJ1X2Nzc19hdHRyaWJ1dGVfcG9zdGZpeCI+Cgk8c3R5 bGU+PC9zdHlsZT4KIAk8ZGl2PgoJCQoJCQogICAgICAgICAgICA8ZGl2IGlkPSJzdHlsZV8xNTc5 MTIwNzM5MTE5MzUxNDI1N19CT0RZX21haWxydV9jc3NfYXR0cmlidXRlX3Bvc3RmaXhfbWFpbHJ1 X2Nzc19hdHRyaWJ1dGVfcG9zdGZpeCI+T24gMTMgSmFuIDE0OjI3LCBNYWtzaW0gS3VsaXMgd3Jv dGU6PGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZ3Q7IFdoaWxlIGRlbGV0 aW9uIC5ydW4gZmlsZXMgYW5kIHJlY292ZXIgd2l0aCBmb3JjZV9yZWNvdmVyeT10cnVlIHdlIGhh dmUgdG8gZGVsZXRlIHNvbWUgbG9ncyB3aGljaCBhcmUgcmVzcG9uc2libGUgZm9yIGRlbGV0ZWQg ZmlsZXMgc28gdGhhdCB3ZSBjYW4gcmVjb3ZlciBsYXRlciB3aXRoIGZvcmNlX3JlY292ZXJ5PWZh bHNlLjxicj4KICAgICAgPGJyPgpQbGVhc2UsIGxpbWl0IGNvbW1pdCBtZXNzYWdlIHdpdGggODAg Y2hhcmFjdGVycyBwZXIgbGluZS48YnI+Cjxicj4KSXMgdGhlcmUgYW55IGlzc3VlIGNvcnJlc3Bv bmRpbmcgdG8gdGhlIHByb2JsZW0geW91IGFyZSBzb2x2aW5nPzxicj4KJm5ic3A7PGJyPgomZ3Q7 IC0tLTxicj4KJmd0OyAgc3JjL2JveC92eV9sc20uYyAgICAgICAgICAgICAgICAgICB8ICAxOSAr LTxicj4KJmd0OyAgdGVzdC92aW55bC9kZWxldGVfcnVuLnJlc3VsdCAgICAgICB8IDMwMiArKysr KysrKysrKysrKysrKysrKysrKysrKysrKzxicj4KJmd0OyAgdGVzdC92aW55bC9kZWxldGVfcnVu LnRlc3QubHVhICAgICB8ICA5MyArKysrKysrKys8YnI+CiZndDsgIHRlc3QvdmlueWwvZm9yY2Vf cmVjb3ZlcnlfdHJ1ZS5sdWEgfCAgMTEgKys8YnI+CiZndDsgIDQgZmlsZXMgY2hhbmdlZCwgNDIx IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pPGJyPgomZ3Q7ICBjcmVhdGUgbW9kZSAxMDA2 NDQgdGVzdC92aW55bC9kZWxldGVfcnVuLnJlc3VsdDxicj4KJmd0OyAgY3JlYXRlIG1vZGUgMTAw NjQ0IHRlc3QvdmlueWwvZGVsZXRlX3J1bi50ZXN0Lmx1YTxicj4KJmd0OyAgY3JlYXRlIG1vZGUg MTAwNjQ0IHRlc3QvdmlueWwvZm9yY2VfcmVjb3ZlcnlfdHJ1ZS5sdWE8YnI+CiZndDsgPGJyPgom Z3Q7IGRpZmYgLS1naXQgYS9zcmMvYm94L3Z5X2xzbS5jIGIvc3JjL2JveC92eV9sc20uYzxicj4K Jmd0OyBpbmRleCBhYTRiY2U5ZWIuLmE4YWJhZjAzMSAxMDA2NDQ8YnI+CiZndDsgLS0tIGEvc3Jj L2JveC92eV9sc20uYzxicj4KJmd0OyArKysgYi9zcmMvYm94L3Z5X2xzbS5jPGJyPgomZ3Q7IEBA IC0zNzQsNiArMzc0LDkgQEAgdnlfbHNtX3JlY292ZXJfcnVuKHN0cnVjdCB2eV9sc20gKmxzbSwg c3RydWN0IHZ5X3J1bl9yZWNvdmVyeV9pbmZvICpydW5faW5mbyw8YnI+CiZndDsgIAkJCQkgIGxz bS0mZ3Q7c3BhY2VfaWQsIGxzbS0mZ3Q7aW5kZXhfaWQsPGJyPgomZ3Q7ICAJCQkJICBsc20tJmd0 O2NtcF9kZWYsIGxzbS0mZ3Q7a2V5X2RlZiw8YnI+CiZndDsgIAkJCQkgIGxzbS0mZ3Q7ZGlza19m b3JtYXQsICZhbXA7bHNtLSZndDtvcHRzKSAhPSAwKSkgezxicj4KJmd0OyArCQl2eV9sb2dfdHhf YmVnaW4oKTs8YnI+CiZndDsgKwkJdnlfbG9nX2Ryb3BfcnVuKHJ1bl9pbmZvLSZndDtpZCwgMCk7 PGJyPgomZ3Q7ICsJCXZ5X2xvZ190eF90cnlfY29tbWl0KCk7PGJyPgomZ3Q7ICAJCXZ5X3J1bl91 bnJlZihydW4pOzxicj4KPGJyPgpZb3UgY2FuIHJlLXVzZSB2eV9ydW5fZGlzY2FyZCgpLjxicj4K PGJyPgomZ3Q7ICAJCXJldHVybiBOVUxMOzxicj4KJmd0OyAgCX08YnI+CiZndDsgQEAgLTQyNiw4 ICs0MjksMTQgQEAgdnlfbHNtX3JlY292ZXJfc2xpY2Uoc3RydWN0IHZ5X2xzbSAqbHNtLCBzdHJ1 Y3QgdnlfcmFuZ2UgKnJhbmdlLDxicj4KJmd0OyAgPGJyPgomZ3Q7ICAJcnVuID0gdnlfbHNtX3Jl Y292ZXJfcnVuKGxzbSwgc2xpY2VfaW5mby0mZ3Q7cnVuLDxicj4KJmd0OyAgCQkJCSBydW5fZW52 LCBmb3JjZV9yZWNvdmVyeSk7PGJyPgomZ3Q7IC0JaWYgKHJ1biA9PSBOVUxMKTxicj4KJmd0OyAr CWlmIChydW4gPT0gTlVMTCkgezxicj4KJmd0OyArCQlpZiAoZm9yY2VfcmVjb3ZlcnkpIHs8YnI+ CiZndDsgKwkJCXZ5X2xvZ190eF9iZWdpbigpOzxicj4KJmd0OyArCQkJdnlfbG9nX2RlbGV0ZV9z bGljZShzbGljZV9pbmZvLSZndDtpZCk7PGJyPgomZ3Q7ICsJCQl2eV9sb2dfdHhfdHJ5X2NvbW1p dCgpOzxicj4KJmd0OyArCQl9PGJyPgomZ3Q7ICAJCWdvdG8gb3V0Ozxicj4KJmd0OyArCX08YnI+ CiZndDsgIDxicj4KJmd0OyAgCXNsaWNlID0gdnlfc2xpY2VfbmV3KHNsaWNlX2luZm8tJmd0O2lk LCBydW4sIGJlZ2luLCBlbmQsIGxzbS0mZ3Q7Y21wX2RlZik7PGJyPgomZ3Q7ICAJaWYgKHNsaWNl ID09IE5VTEwpPGJyPgomZ3Q7IEBAIC00ODYsOSArNDk1LDExIEBAIHZ5X2xzbV9yZWNvdmVyX3Jh bmdlKHN0cnVjdCB2eV9sc20gKmxzbSw8YnI+CiZndDsgIAlybGlzdF9mb3JlYWNoX2VudHJ5X3Jl dmVyc2Uoc2xpY2VfaW5mbywgJmFtcDtyYW5nZV9pbmZvLSZndDtzbGljZXMsIGluX3JhbmdlKSB7 PGJyPgomZ3Q7ICAJCWlmICh2eV9sc21fcmVjb3Zlcl9zbGljZShsc20sIHJhbmdlLCBzbGljZV9p bmZvLDxicj4KJmd0OyAgCQkJCQkgcnVuX2VudiwgZm9yY2VfcmVjb3ZlcnkpID09IE5VTEwpIHs8 YnI+CiZndDsgLQkJCXZ5X3JhbmdlX2RlbGV0ZShyYW5nZSk7PGJyPgomZ3Q7IC0JCQlyYW5nZSA9 IE5VTEw7PGJyPgomZ3Q7IC0JCQlnb3RvIG91dDs8YnI+CiZndDsgKwkJCWlmIChmb3JjZV9yZWNv dmVyeSA9PSBmYWxzZSkgezxicj4KPGJyPgpOaXQ6IGlmICghZm9yY2VfcmVjb3ZlcnkpPGJyPgo8 YnI+CldoeSBkbyB3ZSBkZWxldGUgc2xpY2UgaWYgZm9yY2VfcmVjb3ZlcnkgaXMgZW5hYmxlZCw8 YnI+Cm1lYW53aGlsZSBkZWxldGUgcmFuZ2UvcnVuIHdoZW4gZm9yY2VfcmVjb3ZlcnkgaXMgZGlz YWJsZWQ/PGJyPgo8YnI+CiZndDsgKwkJCQl2eV9yYW5nZV9kZWxldGUocmFuZ2UpOzxicj4KJmd0 OyArCQkJCXJhbmdlID0gTlVMTDs8YnI+CiZndDsgKwkJCQlnb3RvIG91dDs8YnI+CiZndDsgKwkJ CX08YnI+CiZndDsgIAkJfTxicj4KJmd0OyAgCX08YnI+CiZndDsgIAl2eV9sc21fYWRkX3Jhbmdl KGxzbSwgcmFuZ2UpOzxicj4KJmd0OyBkaWZmIC0tZ2l0IGEvdGVzdC92aW55bC9kZWxldGVfcnVu LnRlc3QubHVhIGIvdGVzdC92aW55bC9kZWxldGVfcnVuLnRlc3QubHVhPGJyPgomZ3Q7IG5ldyBm aWxlIG1vZGUgMTAwNjQ0PGJyPgomZ3Q7IGluZGV4IDAwMDAwMDAwMC4uMWU4ZWQzOWVkPGJyPgom Z3Q7IC0tLSAvZGV2L251bGw8YnI+CiZndDsgKysrIGIvdGVzdC92aW55bC9kZWxldGVfcnVuLnRl c3QubHVhPGJyPgomZ3Q7IEBAIC0wLDAgKzEsOTMgQEA8YnI+CiZndDsgK3Rlc3RfcnVuID0gcmVx dWlyZSgndGVzdF9ydW4nKS5uZXcoKTxicj4KJmd0OyArZmliZXIgPSByZXF1aXJlKCdmaWJlcicp PGJyPgomZ3Q7ICs8YnI+CiZndDsgKy0tIFRlc3QgMTxicj4KPGJyPgpDb3VsZCB5b3UgY29tbWVu dCB0aGVzZSB0ZXN0IGNhc2VzIGV4cGxhaW5pbmcgd2hhdCdzIGdvaW5nIG9uIGhlcmU/PGJyPgo8 YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgiY3JlYXRlIHNlcnZlciB0ZXN0IHdpdGggc2NyaXB0PSd2 aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSciKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCJz dGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9JzEnIik8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgi c3dpdGNoIHRlc3QiKTxicj4KJmd0OyArPGJyPgomZ3Q7ICt0ZXN0ID0gYm94LnNjaGVtYS5zcGFj ZS5jcmVhdGUoJ3Rlc3QnLCB7ZW5naW5lPSd2aW55bCd9KTxicj4KJmd0OyArXyA9IHRlc3Q6Y3Jl YXRlX2luZGV4KCdwaycpPGJyPgomZ3Q7ICtmb3IgaSA9IDEsIDEwIGRvIHRlc3Q6aW5zZXJ0e2ks IGkgKyAxMDB9IGJveC5zbmFwc2hvdCgpIGVuZDxicj4KJmd0OyArdGVzdDpzZWxlY3QoKTxicj4K Jmd0OyArPGJyPgomZ3Q7ICtmaW8gPSByZXF1aXJlICgnZmlvJyk8YnI+CiZndDsgK2ZvciBfLCBm IGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGlyIC4uICcvJyAuLiB0ZXN0LmlkIC4u ICcvMC8qMjYqJykpIGRvIGZpby51bmxpbmsoZikgZW5kPGJyPgomZ3Q7ICs8YnI+CiZndDsgK3Rl c3RfcnVuOmNtZCgnc3dpdGNoIGRlZmF1bHQnKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdyZXN0 YXJ0IHNlcnZlciB0ZXN0IHdpdGggYXJncz0iMSInKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdz d2l0Y2ggdGVzdCcpPGJyPgomZ3Q7ICtib3guY2ZnLmZvcmNlX3JlY292ZXJ5PGJyPgomZ3Q7ICti b3guc3BhY2UudGVzdDpzZWxlY3QoKTxicj4KJmd0OyArPGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQo J3N3aXRjaCBkZWZhdWx0Jyk8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIg dGVzdCB3aXRoIGFyZ3M9IjAiJyk8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgnc3dpdGNoIHRlc3Qn KTxicj4KJmd0OyArYm94LmNmZy5mb3JjZV9yZWNvdmVyeTxicj4KJmd0OyArYm94LnNwYWNlLnRl c3Q6c2VsZWN0KCk8YnI+CiZndDsgKzxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVm YXVsdCcpPGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3N0b3Agc2VydmVyIHRlc3QnKTxicj4KJmd0 OyArdGVzdF9ydW46Y21kKCdjbGVhbnVwIHNlcnZlciB0ZXN0Jyk8YnI+CiZndDsgK3Rlc3RfcnVu OmNtZCgnZGVsZXRlIHNlcnZlciB0ZXN0Jyk8YnI+CiZndDsgKzxicj4KJmd0OyArLS0gVGVzdCAy PGJyPgomZ3Q7ICt0ZXN0X3J1biA9IHJlcXVpcmUoJ3Rlc3RfcnVuJykubmV3KCk8YnI+CiZndDsg K3Rlc3RfcnVuOmNtZCgiY3JlYXRlIHNlcnZlciB0ZXN0IHdpdGggc2NyaXB0PSd2aW55bC9mb3Jj ZV9yZWNvdmVyeV90cnVlLmx1YSciKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCJzdGFydCBzZXJ2 ZXIgdGVzdCB3aXRoIGFyZ3M9JzEnIik8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgic3dpdGNoIHRl c3QiKTxicj4KJmd0OyArPGJyPgomZ3Q7ICt0ZXN0ID0gYm94LnNjaGVtYS5zcGFjZS5jcmVhdGUo J3Rlc3QnLCB7ZW5naW5lPSd2aW55bCd9KTxicj4KJmd0OyArXyA9IHRlc3Q6Y3JlYXRlX2luZGV4 KCdwaycpPGJyPgomZ3Q7ICtfID0gdGVzdDppbnNlcnR7MSwgIjEyMyJ9PGJyPgomZ3Q7ICt0ZXN0 OnNlbGVjdCgpPGJyPgomZ3Q7ICtib3guc25hcHNob3QoKTxicj4KJmd0OyArPGJyPgomZ3Q7ICtm aW8gPSByZXF1aXJlICgnZmlvJyk8YnI+CiZndDsgK2ZvciBfLCBmIGluIHBhaXJzKGZpby5nbG9i KGJveC5jZmcudmlueWxfZGlyIC4uICcvJyAuLiB0ZXN0LmlkIC4uICcvMC8qLmluZGV4JykpIGRv IGZpby51bmxpbmsoZikgZW5kPGJyPgomZ3Q7ICs8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgnc3dp dGNoIGRlZmF1bHQnKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdyZXN0YXJ0IHNlcnZlciB0ZXN0 IHdpdGggYXJncz0iMSInKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggdGVzdCcpPGJy PgomZ3Q7ICtib3guc3BhY2UudGVzdDpzZWxlY3QoKTxicj4KJmd0OyArPGJyPgomZ3Q7ICt0ZXN0 X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0Jyk8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgncmVzdGFy dCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9IjAiJyk8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgnc3dp dGNoIHRlc3QnKTxicj4KJmd0OyArYm94LnNwYWNlLnRlc3Q6c2VsZWN0KCk8YnI+CiZndDsgKzxi cj4KJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpPGJyPgomZ3Q7ICt0ZXN0X3J1 bjpjbWQoJ3N0b3Agc2VydmVyIHRlc3QnKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdjbGVhbnVw IHNlcnZlciB0ZXN0Jyk8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgnZGVsZXRlIHNlcnZlciB0ZXN0 Jyk8YnI+CiZndDsgKzxicj4KJmd0OyArLS0gVGVzdDM8YnI+CiZndDsgKzxicj4KJmd0OyArdGVz dF9ydW4gPSByZXF1aXJlKCd0ZXN0X3J1bicpLm5ldygpPGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQo ImNyZWF0ZSBzZXJ2ZXIgdGVzdCB3aXRoIHNjcmlwdD0ndmlueWwvZm9yY2VfcmVjb3ZlcnlfdHJ1 ZS5sdWEnIik8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgic3RhcnQgc2VydmVyIHRlc3QiKTxicj4K Jmd0OyArdGVzdF9ydW46Y21kKCJzd2l0Y2ggdGVzdCIpPGJyPgomZ3Q7ICs8YnI+CiZndDsgK3Rl c3QgPSBib3guc2NoZW1hLnNwYWNlLmNyZWF0ZSgndGVzdCcsIHtlbmdpbmU9J3ZpbnlsJ30pPGJy PgomZ3Q7ICtfID0gdGVzdDpjcmVhdGVfaW5kZXgoJ3BrJyk8YnI+CiZndDsgK18gPSB0ZXN0Omlu c2VydHsxLCAiMTIzIn08YnI+CiZndDsgK3Rlc3Q6c2VsZWN0KDEpPGJyPgomZ3Q7ICtib3guc25h cHNob3QoKTxicj4KJmd0OyArPGJyPgomZ3Q7ICtmaW8gPSByZXF1aXJlICgnZmlvJyk8YnI+CiZn dDsgK2ZvciBfLCBmIGluIHBhaXJzKGZpby5nbG9iKGJveC5jZmcudmlueWxfZGlyIC4uICcvJyAu LiB0ZXN0LmlkIC4uICcvMC8qLnJ1bicpKSBkbyBmaW8udW5saW5rKGYpIGVuZDxicj4KJmd0OyAr PGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0Jyk8YnI+CiZndDsgK3Rlc3Rf cnVuOmNtZCgncmVzdGFydCBzZXJ2ZXIgdGVzdCB3aXRoIGFyZ3M9IjEiJyk8YnI+CiZndDsgK3Rl c3RfcnVuOmNtZCgnc3dpdGNoIHRlc3QnKTxicj4KJmd0OyArYm94LnNwYWNlLnRlc3Q6c2VsZWN0 KCk8YnI+CiZndDsgKzxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdzd2l0Y2ggZGVmYXVsdCcpPGJy PgomZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3Jlc3RhcnQgc2VydmVyIHRlc3Qgd2l0aCBhcmdzPSIwIicp PGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCB0ZXN0Jyk8YnI+CiZndDsgK2JveC5jZmcu Zm9yY2VfcmVjb3Zlcnk8YnI+CiZndDsgK2JveC5zcGFjZS50ZXN0OnNlbGVjdCgpPGJyPgomZ3Q7 ICt0ZXN0X3J1bjpjbWQoJ3N3aXRjaCBkZWZhdWx0Jyk8YnI+CiZndDsgK3Rlc3RfcnVuOmNtZCgn c3RvcCBzZXJ2ZXIgdGVzdCcpPGJyPgomZ3Q7ICt0ZXN0X3J1bjpjbWQoJ2NsZWFudXAgc2VydmVy IHRlc3QnKTxicj4KJmd0OyArdGVzdF9ydW46Y21kKCdkZWxldGUgc2VydmVyIHRlc3QnKTxicj4K Jmd0OyBkaWZmIC0tZ2l0IGEvdGVzdC92aW55bC9mb3JjZV9yZWNvdmVyeV90cnVlLmx1YSBiL3Rl c3QvdmlueWwvZm9yY2VfcmVjb3ZlcnlfdHJ1ZS5sdWE8YnI+CiZndDsgbmV3IGZpbGUgbW9kZSAx MDA2NDQ8YnI+CiZndDsgaW5kZXggMDAwMDAwMDAwLi41MzQxNGYyMmM8YnI+CiZndDsgLS0tIC9k ZXYvbnVsbDxicj4KJmd0OyArKysgYi90ZXN0L3ZpbnlsL2ZvcmNlX3JlY292ZXJ5X3RydWUubHVh PGJyPgomZ3Q7IEBAIC0wLDAgKzEsMTEgQEA8YnI+CiZndDsgKyMhL3Vzci9iaW4vZW52IHRhcmFu dG9vbDxicj4KJmd0OyArPGJyPgomZ3Q7ICtsb2NhbCBmciA9IHRvbnVtYmVyKGFyZ1sxXSk8YnI+ CiZndDsgK2JveC5jZmcgKHs8YnI+CiZndDsgKyAgICBsaXN0ZW4gPSBvcy5nZXRlbnYoIkxJU1RF TiIpLDxicj4KJmd0OyArICAgIHJlcGxpY2F0aW9uID0gb3MuZ2V0ZW52KCJNQVNURVIiKSw8YnI+ CiZndDsgKyAgICB2aW55bF9tZW1vcnkgPSAxMjggKiAxMDI0ICogMTAyNCw8YnI+CiZndDsgKyAg ICBmb3JjZV9yZWNvdmVyeSA9IChmciA9PSAxKSw8YnI+CiZndDsgK30pPGJyPgomZ3Q7ICs8YnI+ CiZndDsgK3JlcXVpcmUoJ2NvbnNvbGUnKS5saXN0ZW4ob3MuZ2V0ZW52KCdBRE1JTicpKTxicj4K Jmd0OyAtLSA8YnI+CiZndDsgMi4xNy4xPGJyPgomZ3Q7IDxicj4KPC9kaXY+CiAgICAgICAgICAg IAogICAgICAgIAoJCQoJPC9kaXY+CgoJCjwvZGl2PgoKCjwvZGl2Pgo8L2Jsb2NrcXVvdGU+Cjxi cj4KPGJyPi0tIDxicj5NYXhpbSBLdWxpczxicj4KPC9kaXY+PC9kaXY+CiAgICAgICAgICAgIAog ICAgICAgIAoJCQoJPC9kaXY+CgoJCjwvZGl2Pgo8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgCiAg ICAgICAgCgkJPGJhc2UgdGFyZ2V0PSJfc2VsZiIgaHJlZj0iaHR0cHM6Ly9lLm1haWwucnUvIj4K CTwvZGl2PgoKCQo8L2Rpdj48L0JPRFk+PC9IVE1MPgo= ----ALT--SibtD8RO7EXhHmus99aGz0qoyumLunF41580775773--