From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: passt.top; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: passt.top; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=i1SjJ9v6; dkim-atps=neutral Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by passt.top (Postfix) with ESMTPS id 75C005A0271 for ; Wed, 24 Sep 2025 10:56:31 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1758704190; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Ygur5h1DN9Q4NyLH6OYtryxfkoMPKspumjs98fs3wDY=; b=i1SjJ9v6CtPJV5MmgxtY6qzbSEQKVoJDEpfBpx7UJ4D6kymLs8YZ9XVPqnpzq3iEGolC/y 1Tlb9M+2lQu79rNpWWJli/sLn8Vcxr/ngefFaA9cuNRrXCMikKsM1TgKw2MS4zwFQ2aTVz aOON0fd9n07ioOlgcRxkkmaRO1nTjvg= Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-281-4aknG8ASMVSRVl0a_RnN_A-1; Wed, 24 Sep 2025 04:56:27 -0400 X-MC-Unique: 4aknG8ASMVSRVl0a_RnN_A-1 X-Mimecast-MFC-AGG-ID: 4aknG8ASMVSRVl0a_RnN_A_1758704185 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 753E918002C1; Wed, 24 Sep 2025 08:56:24 +0000 (UTC) Received: from localhost (unknown [10.45.224.19]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 08BEB1800452; Wed, 24 Sep 2025 08:56:22 +0000 (UTC) Date: Wed, 24 Sep 2025 09:56:21 +0100 From: "Richard W.M. Jones" To: Stefano Brivio Subject: Re: [PATCH] test: Update README.md Message-ID: <20250924085621.GT1460@redhat.com> References: <20250919014329.6007-1-yuhuang@redhat.com> <20250919115822.4e3aab21@elisabeth> <20250922220338.49013fce@elisabeth> <20250923123213.61ddd9d5@elisabeth> <20250924104632.75b3f5a8@elisabeth> MIME-Version: 1.0 In-Reply-To: <20250924104632.75b3f5a8@elisabeth> User-Agent: Mutt/1.5.21 (2010-09-15) X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 9ScQb8PFjtrQmoKJXwcPmf8rODudfZFTfZOuUVSb0_E_1758704185 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: base64 Message-ID-Hash: 2CWQR5W33WTWQUWTYVGGI4LQGSPLUVO2 X-Message-ID-Hash: 2CWQR5W33WTWQUWTYVGGI4LQGSPLUVO2 X-MailFrom: rjones@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Yumei Huang , passt-dev@passt.top, david@gibson.dropbear.id.au, berrange@redhat.com X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: T24gV2VkLCBTZXAgMjQsIDIwMjUgYXQgMTA6NDY6MzJBTSArMDIwMCwgU3RlZmFubyBCcml2aW8g d3JvdGU6DQo+IFtDYydpbmcgUmljaC4uLiBSaWNoLCBzZWUgbXkgZmlyc3QgcXVlc3Rpb24gYmVs b3ddDQo+IA0KPiBPbiBXZWQsIDI0IFNlcCAyMDI1IDA5OjU4OjU3ICswODAwDQo+IFl1bWVpIEh1 YW5nIDx5dWh1YW5nQHJlZGhhdC5jb20+IHdyb3RlOg0KPiANCj4gPiBPbiBUdWUsIFNlcCAyMywg MjAyNSBhdCA2OjMy4oCvUE0gU3RlZmFubyBCcml2aW8gPHNicml2aW9AcmVkaGF0LmNvbT4gd3Jv dGU6DQo+ID4gPg0KPiA+ID4gT24gVHVlLCAyMyBTZXAgMjAyNSAxNDozNjo0MSArMDgwMA0KPiA+ ID4gWXVtZWkgSHVhbmcgPHl1aHVhbmdAcmVkaGF0LmNvbT4gd3JvdGU6DQo+ID4gPiAgDQo+ID4g PiA+IE9uIFR1ZSwgU2VwIDIzLCAyMDI1IGF0IDQ6MDPigK9BTSBTdGVmYW5vIEJyaXZpbyA8c2Jy aXZpb0ByZWRoYXQuY29tPiB3cm90ZTogIA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gT24gTW9uLCAy MiBTZXAgMjAyNSAxMTowMzoyMyArMDgwMA0KPiA+ID4gPiA+IFl1bWVpIEh1YW5nIDx5dWh1YW5n QHJlZGhhdC5jb20+IHdyb3RlOg0KPiA+ID4gPiA+ICANCj4gPiA+ID4gPiA+IE9uIEZyaSwgU2Vw IDE5LCAyMDI1IGF0IDU6NTjigK9QTSBTdGVmYW5vIEJyaXZpbyA8c2JyaXZpb0ByZWRoYXQuY29t PiB3cm90ZTogIA0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBPbiBGcmksIDE5IFNlcCAy MDI1IDA5OjQzOjI5ICswODAwDQo+ID4gPiA+ID4gPiA+IFl1bWVpIEh1YW5nIDx5dWh1YW5nQHJl ZGhhdC5jb20+IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiAgDQo+ID4gPiA+ID4gPiA+ID4gU2lnbmVk LW9mZi1ieTogWXVtZWkgSHVhbmcgPHl1aHVhbmdAcmVkaGF0LmNvbT4NCj4gPiA+ID4gPiA+ID4g PiAtLS0NCj4gPiA+ID4gPiA+ID4gPiAgdGVzdC9SRUFETUUubWQgfCAzMSArKysrKysrKysrKysr KysrKysrKysrKysrKysrKy0tDQo+ID4gPiA+ID4gPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyOSBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQ0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g PiA+ID4gZGlmZiAtLWdpdCBhL3Rlc3QvUkVBRE1FLm1kIGIvdGVzdC9SRUFETUUubWQNCj4gPiA+ ID4gPiA+ID4gPiBpbmRleCA5MWNhNjAzLi5lM2U5ZDM3IDEwMDY0NA0KPiA+ID4gPiA+ID4gPiA+ IC0tLSBhL3Rlc3QvUkVBRE1FLm1kDQo+ID4gPiA+ID4gPiA+ID4gKysrIGIvdGVzdC9SRUFETUUu bWQNCj4gPiA+ID4gPiA+ID4gPiBAQCAtMzIsNyArMzIsNyBAQCBFeGFtcGxlIGZvciBEZWJpYW4s IGFuZCBwb3NzaWJseSBtb3N0IERlYmlhbi1iYXNlZCBkaXN0cmlidXRpb25zOg0KPiA+ID4gPiA+ ID4gPiA+ICAgICAgZ2l0IGdvIGlwZXJmMyBpc2MtZGhjcC1jb21tb24ganEgbGliZ3BnbWUtZGV2 IGxpYnNlY2NvbXAtZGV2IGxpbnV4LWNwdXBvd2VyDQo+ID4gPiA+ID4gPiA+ID4gICAgICBsbS1z ZW5zb3JzIGx6NCBuZXRhdmFyayBuZXRjYXQtb3BlbmJzZCBwc21pc2MgcWVtdS1lZmktYWFyY2g2 NA0KPiA+ID4gPiA+ID4gPiA+ICAgICAgcWVtdS1zeXN0ZW0tYXJtIHFlbXUtc3lzdGVtLW1pc2Mg cWVtdS1zeXN0ZW0tcHBjIHFlbXUtc3lzdGVtLXg4Ng0KPiA+ID4gPiA+ID4gPiA+IC0gICAgcWVt dS1zeXN0ZW0teDg2IHNpcGNhbGMgc29jYXQgc3RyYWNlIHRtdXggdWlkbWFwIHZhbGdyaW5kDQo+ ID4gPiA+ID4gPiA+ID4gKyAgICBzaXBjYWxjIHNvY2F0IHN0cmFjZSB0bXV4IHVpZG1hcCB2YWxn cmluZA0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gIE5PVEU6IHRoZSB0ZXN0cyBu ZWVkIGEgcWVtdSB2ZXJzaW9uID49IDcuMiwgb3Igb25lIHRoYXQgY29udGFpbnMgY29tbWl0DQo+ ID4gPiA+ID4gPiA+ID4gIDEzYzZiZTk2NjE4YyAoIm5ldDogc3RyZWFtOiBhZGQgdW5peCBzb2Nr ZXQiKTogdGhpcyBjaGFuZ2UgaW50cm9kdWNlcyBzdXBwb3J0DQo+ID4gPiA+ID4gPiA+ID4gQEAg LTgxLDcgKzgxLDEyIEBAIFRoZSBmb2xsb3dpbmcgYWRkaXRpb25hbCBwYWNrYWdlcyBhcmUgY29t bW9ubHkgbmVlZGVkOg0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gICMjIFJlZ3Vs YXIgdGVzdA0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gLUp1c3QgaXNzdWU6DQo+ ID4gPiA+ID4gPiA+ID4gK0JlZm9yZSBydW5uaW5nIHRoZSB0ZXN0cywgeW91IG5lZWQgdG8gcHJl cGFyZSB0aGUgcmVxdWlyZWQgYXNzZXRzOg0KPiA+ID4gPiA+ID4gPiA+ICsNCj4gPiA+ID4gPiA+ ID4gPiArICAgIGNkIHRlc3QNCj4gPiA+ID4gPiA+ID4gPiArICAgIG1ha2UgYXNzZXRzDQo+ID4g PiA+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiA+ICtUaGVuIGlzc3VlOg0KPiA+ID4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiA+ID4gICAgICAuL3J1bg0KPiA+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiA+ID4gQEAgLTkxLDYgKzk2LDI4IEBAIHZhcmlhYmxlIHNldHRpbmdzOiBERUJVRz0xIGVu YWJsZXMgZGVidWdnaW5nIG1lc3NhZ2VzLCBUUkFDRT0xIGVuYWJsZXMgdHJhY2luZw0KPiA+ID4g PiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gICAgICBQQ0FQPTEgVFJBQ0U9MSAuL3J1bg0KPiA+ ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+ID4gKyoqTm90ZToqKg0KPiA+ID4gPiA+ID4gPiA+ ICsNCj4gPiA+ID4gPiA+ID4gPiArKiBJdCdzIHJlY29tbWVuZGVkIHRvIHJ1biB0aGUgY29tbWFu ZHMgYXMgYSBub24tcm9vdCB1c2VyLg0KPiA+ID4gPiA+ID4gPiA+ICsgIER1ZSB0byBbQnVnIDk2 NzUwOV0oaHR0cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD05Njc1MDkp LA0KPiA+ID4gPiA+ID4gPiA+ICsgIGlmIHlvdSBzd2l0Y2ggdXNlcnMgd2l0aCBgc3VgIG9yIGBz dWRvYCwgdGhlIGRpcmVjdG9yeSBgL3J1bi91c2VyL0lEYCBtYXkNCj4gPiA+ID4gPiA+ID4gPiAr ICBub3QgYmUgY3JlYXRlZC4gSW4gdGhhdCBjYXNlLCBgWERHX1JVTlRJTUVfRElSYCB3aWxsIGlu Y29ycmVjdGx5IHBvaW50IHRvDQo+ID4gPiA+ID4gPiA+ID4gKyAgYC9ydW4vdXNlci8wYCBpbnN0 ZWFkIG9mIGAvcnVuL3VzZXIvSURgLCB3aGljaCBjYW4gY2F1c2UgZXJyb3IuICANCj4gPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gVGhhbmtzIGZvciB0aGUgcmVzZWFyY2gsIEkgd2Fzbid0IGF3 YXJlIG9mIHRoYXQsIGFuZCByZWNlbnRseSBzcGVudA0KPiA+ID4gPiA+ID4gPiBxdWl0ZSBzb21l IHRpbWUgZmlndXJpbmcgdGhhdCBvdXQgKGZvciBvdGhlciByZWFzb25zKToNCj4gPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+ID4gICBodHRwczovL2lzc3Vlcy5yZWRoYXQuY29tL2Jyb3dzZS9SSEVM LTcwMjIyDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IGluIHRoYXQgY2FzZSwgWERHX1JV TlRJTUVfRElSIHdhcyBzaW1wbHkgbm90IHNldC4gVGhpbmdzIHdlcmUgd29ya2luZw0KPiA+ID4g PiA+ID4gPiB3aXRoICdtYWNoaW5lY3RsIHNoZWxsJyBpbnN0ZWFkLg0KPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiBBdCB0aGUgc2FtZSB0aW1lOiBydW5uaW5nIHRoaXMgd2hvbGUgc3R1ZmYg YXMgcm9vdCBzb3VuZHMgcmF0aGVyIGNyYXp5LA0KPiA+ID4gPiA+ID4gPiB1bmxlc3MgaXQncyBh IHRocm93LWF3YXkgVk1zIHdpdGggYWJzb2x1dGVseSBub3RoaW5nIGltcG9ydGFudCBvbiBpdC4N Cj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gVGhhdCBpcywgcmVnYXJkbGVzcyBvZiB0aGUg aXNzdWUgd2l0aCBYREdfUlVOVElNRV9ESVIuIEkgd291bGQgbWF5YmUNCj4gPiA+ID4gPiA+ID4g bWFrZSB0aGUgd29yZGluZyBzdHJvbmdlciwgc29tZXRoaW5nIGxpa2U6DQo+ID4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiA+ICogRG9uJ3QgcnVuIHRoZSB0ZXN0cyBhcyByb290LCBpdCdzIG5vdCBu ZWVkZWQhDQo+ID4gPiA+ID4gPiA+ICogSWYgeW91IHJlYWxseSBuZWVkIHRvLCBub3RlIHRoYXQg Li4uDQo+ID4gPiA+ID4gPiA+ICANCj4gPiA+ID4gPiA+ID4gPiArICAqKldvcmthcm91bmQ6Kiog TG9nIG91dCBhbmQgbG9nIGJhY2sgaW4gYXMgdGhlIGludGVuZGVkIHVzZXIgdG8gZW5zdXJlIHRo ZQ0KPiA+ID4gPiA+ID4gPiA+ICsgIGNvcnJlY3QgcnVudGltZSBkaXJlY3RvcnkgaXMgc2V0IHVw LiAgDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IFdlIGNvdWxkIGFsc28gc3VnZ2VzdCAn bWFjaGluZWN0bCBzaGVsbCcgaWYgaXQncyByZWFsbHkgbmVlZGVkIGZvcg0KPiA+ID4gPiA+ID4g PiB3aGF0ZXZlciByZWFzb24uICANCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJJ20gbm90IHN1 cmUgaG93ICdtYWNoaW5lY3RsIHNoZWxsJyB3b3JrcyBoZXJlLiBUaGUgZXJyb3IgaGFwcGVucyB3 aGVuDQo+ID4gPiA+ID4gPiBydW5uaW5nICdtYWtlIGFzc2V0cycsDQo+ID4gPiA+ID4gPiB3aGlj aCBjYWxscyAncHJlcGFyZS1kaXN0cm8taW1nLnNoJyBzY3JpcHQsIHdoaWNoIGNhbGxzICd2aXJz aCBlZGl0Jy4gIA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gQWgsIEkgZGlkbid0IGtub3chIFNvIHRo aXMgaXMgYWN0dWFsbHkgc2ltaWxhciB0bw0KPiA+ID4gPiA+IGh0dHBzOi8vaXNzdWVzLnJlZGhh dC5jb20vYnJvd3NlL1JIRUwtNzAyMjIuDQo+ID4gPiA+ID4gIA0KPiA+ID4gPiA+ID4gSWYgd2Ug cnVuICdtYWtlIGFzc2V0cycgd2l0aCByb290LCB0aGUgZXJyb3IgaXMgbGlrZSB0aGlzOg0KPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+IC4vcHJlcGFyZS1kaXN0cm8taW1nLnNoIHByZXBhcmVkLWRl Ymlhbi04LjExLjAtb3BlbnN0YWNrLWFtZDY0LnFjb3cyDQo+ID4gPiA+ID4gPiBsaWJndWVzdGZz OiBlcnJvcjogY291bGQgbm90IGNyZWF0ZSBhcHBsaWFuY2UgdGhyb3VnaCBsaWJ2aXJ0Lg0KPiA+ ID4gPiA+ID4gT3JpZ2luYWwgZXJyb3IgZnJvbSBsaWJ2aXJ0OiBDYW5ub3QgYWNjZXNzIHN0b3Jh Z2UgZmlsZQ0KPiA+ID4gPiA+ID4gJy9ob21lL3Rlc3QvcGFzc3QvdGVzdC9wcmVwYXJlZC1kZWJp YW4tOC4xMS4wLW9wZW5zdGFjay1hbWQ2NC5xY293MicNCj4gPiA+ID4gPiA+IChhcyB1aWQ6MTA3 LCBnaWQ6MTA3KTogUGVybWlzc2lvbiBkZW5pZWQgW2NvZGU9MzggaW50MT0xM10NCj4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiBJZiB3ZSBzd2l0Y2ggdG8gYSBub24tcm9vdCB1c2VyIHZpYSAnc3Un LCB0aGUgZXJyb3IgaXMgbGlrZSB0aGlzOg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IC4vcHJl cGFyZS1kaXN0cm8taW1nLnNoIHByZXBhcmVkLWRlYmlhbi04LjExLjAtb3BlbnN0YWNrLWFtZDY0 LnFjb3cyDQo+ID4gPiA+ID4gPiBsaWJ2aXJ0OiBYTUwtUlBDIGVycm9yIDogQ2Fubm90IGNyZWF0 ZSB1c2VyIHJ1bnRpbWUgZGlyZWN0b3J5DQo+ID4gPiA+ID4gPiAnL3J1bi91c2VyLzAvbGlidmly dCc6IFBlcm1pc3Npb24gZGVuaWVkDQo+ID4gPiA+ID4gPiBsaWJndWVzdGZzOiBlcnJvcjogY291 bGQgbm90IGNvbm5lY3QgdG8gbGlidmlydCAoVVJJID0NCj4gPiA+ID4gPiA+IHFlbXU6Ly8vc2Vz c2lvbik6IENhbm5vdCBjcmVhdGUgdXNlciBydW50aW1lIGRpcmVjdG9yeQ0KPiA+ID4gPiA+ID4g Jy9ydW4vdXNlci8wL2xpYnZpcnQnOiBQZXJtaXNzaW9uIGRlbmllZCBbY29kZT0zOCBpbnQxPTEz XQ0KPiA+ID4gPiA+ID4gbWFrZTogKioqIFtNYWtlZmlsZToxMTU6IHByZXBhcmVkLWRlYmlhbi04 LjExLjAtb3BlbnN0YWNrLWFtZDY0LnFjb3cyXSBFcnJvciAxDQo+ID4gPiA+ID4gPg0KPiA+ID4g PiA+ID4gRG8geW91IG1lYW4gdG8gcnVuICdtYWtlIGFzc2V0cycgd2l0aCAnbWFjaGluZWN0bCBz aGVsbCc/IFdoYXQncyB0aGUNCj4gPiA+ID4gPiA+IGV4YWN0IGNtZCBoZXJlPyBJIHRyaWVkIHRo aXMsIHNlZW1zIG5vdCB3b3JrLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICAgICAjIG1hY2hp bmVjdGwgc2hlbGwgLS11aWQ9JChpZCAtdSBwYXQpIC5ob3N0DQo+ID4gPiA+ID4gPiAvaG9tZS90 ZXN0L3Bhc3N0L3Rlc3QvbWFrZSBhc3NldHMNCj4gPiA+ID4gPiA+ICAgICBDb25uZWN0ZWQgdG8g dGhlIGxvY2FsIGhvc3QuIFByZXNzIF5dIHRocmVlIHRpbWVzIHdpdGhpbiAxcyB0byBleGl0IHNl c3Npb24uDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gICAgIENvbm5lY3Rpb24gdG8gdGhlIGxv Y2FsIGhvc3QgdGVybWluYXRlZC4gIA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gTm8sIEkgbWVhbiB1 c2luZyAnbWFjaGluZWN0bCBzaGVsbCcgaW5zdGVhZCBvZiAnc3UnIChpdCdzIGludGVuZGVkIGFz IGENCj4gPiA+ID4gPiByZXBsYWNlbWVudCksIHRoYXQgaXM6DQo+ID4gPiA+ID4NCj4gPiA+ID4g PiAgICAgJCBtYWNoaW5lY3RsIHNoZWxsDQo+ID4gPiA+ID4gICAgICMgbWFrZSBhc3NldHMNCj4g PiA+ID4gPg0KPiA+ID4gPiA+IC4uLmJlY2F1c2UgdGhhdCBvbmUgd2lsbCBzZXQgWERHX1JVTlRJ TUVfRElSLiAgDQo+ID4gPiA+DQo+ID4gPiA+IFllcywgJ21hY2hpbmVjdGwgc2hlbGwnIHdpbGwg c29sdmUgdGhlIGlzc3VlIHdoZW4gc3dpdGNoaW5nIHRvIGENCj4gPiA+ID4gbm9uLXJvb3QgdXNl ciB2aWEgc3UuIEJ1dCBpdCBkb2Vzbid0IHNvbHZlIHRoZSBpc3N1ZSB3aGVuIHJ1bm5pbmcNCj4g PiA+ID4gJ21ha2UgYXNzZXRzJyBhcyByb290LiBUaGV5IGFyZSBhY3R1YWxseSBkaWZmZXJlbnQg aXNzdWVzIGFzIGFib3ZlLiAgDQo+ID4gPg0KPiA+ID4gQ2FuIG9uZSBuZWVkIHNwZWNpZnkgYSBY REdfUlVOVElNRV9ESVIgdGhhdCBhY3R1YWxseSBleGlzdHMsIG1heWJlPw0KPiA+ID4gRG9lcyB0 aGF0IHdvcms/ICANCj4gPiANCj4gPiBJIGd1ZXNzIEkgbmVlZCB0byBjbGFyaWZ5IHRoZSBpc3N1 ZXMgbW9yZSBjbGVhcmx5Lg0KPiA+IA0KPiA+IGEpIElmIHdlIGxvZ2luIHRoZSBzeXN0ZW0gd2l0 aCB0aGUgbm9uLXJvb3QgdXNlciwgYC9ydW4vdXNlci9JRGAgaXMNCj4gPiBjcmVhdGVkIGFuZCBY REdfUlVOVElNRV9ESVIgaXMgcG9pbnRpbmcgdG8gdGhhdCBjb3JyZWN0bHkuIFNvICdtYWtlDQo+ ID4gYXNzZXRzJyB3b3JrcyB3ZWxsLg0KPiA+IA0KPiA+IGIpIElmIHdlIGxvZ2luIHRoZSBzeXN0 ZW0gd2l0aCByb290LCB0aGVuIHN3aXRjaCB0byBhIG5vbi1yb290IHVzZXINCj4gPiB2aWEgJ3N1 JywgJ21ha2UgYXNzZXRzJyBmYWlscyBkdWUgdG8gQnVnIDk2NzUwOS4gWERHX1JVTlRJTUVfRElS IGlzDQo+ID4gbm90IHJlc2V0IGFuZCBwb2ludHMgdG8gL3J1bi91c2VyLyhJRCBvZiB0aGUgcHJl dmlvdXMgdXNlciksIHdoaWNoIGlzDQo+ID4gL3J1bi91c2VyLzAuDQo+ID4gDQo+ID4gICAgIGxp Ymd1ZXN0ZnM6IGVycm9yOiBjb3VsZCBub3QgY29ubmVjdCB0byBsaWJ2aXJ0IChVUkkgPQ0KPiA+ IHFlbXU6Ly8vc2Vzc2lvbik6IENhbm5vdCBjcmVhdGUgdXNlciBydW50aW1lIGRpcmVjdG9yeQ0K PiA+ICcvcnVuL3VzZXIvMC9saWJ2aXJ0JzogUGVybWlzc2lvbiBkZW5pZWQgW2NvZGU9MzggaW50 MT0xM10NCj4gPiANCj4gPiBTd2l0Y2hpbmcgdGhlIHVzZXIgd2l0aCAnbWFjaGluZWN0bCBzaGVs bCAtLXVpZD0kdXNlcicgY2FuIHNvbHZlIHRoZSBpc3N1ZS4NCj4gPiANCj4gPiBjKSBJZiB3ZSBy dW4gJ21ha2UgYXNzZXRzJyBhcyByb290LCAobm8gbWF0dGVyIHdlIGp1c3QgbG9naW4gd2l0aA0K PiA+IHJvb3QsIG9yIHN3aXRjaCB0byByb290IHZpYSBzdSBvciBtYWNoaW5lY3RsIHNoZWxsKSwg J21ha2UgYXNzZXRzJw0KPiA+IGFsd2F5cyBmYWlscyB3aXRoIGEgZGlmZmVyZW50IGVycm9yLg0K PiA+IA0KPiA+ICAgICBsaWJndWVzdGZzOiBlcnJvcjogY291bGQgbm90IGNyZWF0ZSBhcHBsaWFu Y2UgdGhyb3VnaCBsaWJ2aXJ0Lg0KPiA+IE9yaWdpbmFsIGVycm9yIGZyb20gbGlidmlydDogQ2Fu bm90IGFjY2VzcyBzdG9yYWdlIGZpbGUNCj4gPiAnL2hvbWUvcGF0L3RtcC90NS1wYXNzdC90ZXN0 L3ByZXBhcmVkLWRlYmlhbi0xMC1ub2Nsb3VkLWFtZDY0LnFjb3cyJw0KPiA+IChhcyB1aWQ6MTA3 LCBnaWQ6MTA3KTogUGVybWlzc2lvbiBkZW5pZWQgW2NvZGU9MzggaW50MT0xM10NCj4gDQo+IEFo LCBsb29rLCBVSUQgMTA3IGlzIHVzdWFsbHkgUUVNVSBvbiBGZWRvcmEgLyBSSEVMLCBzbyBsaWJn dWVzdGZzIGlzDQo+IHN3aXRjaGluZyB0byB0aGF0Lg0KPiANCj4gQnV0IGl0IHNob3VsZG4ndCwg YmVjYXVzZSB0aGVuIGl0IHdvbid0IGJlIGFibGUgdG8gYWNjZXNzIHRoZSBpbWFnZXMNCj4geW91 IGRvd25sb2FkZWQgYXMgcm9vdC4NCj4gDQo+IFJpY2gsIGRvIHlvdSBrbm93IHdoeSBpdCBoYXBw ZW5zPw0KDQpMaWJ2aXJ0IGlzIGRvaW5nIHRoZSB1c2VyIHN3aXRjaGluZywgYW5kIHllcyBpdCdz IGFubm95aW5nLiAgU2VlIHRoaXMNCmJ1ZyB0aGF0J3Mgc28gb2xkIGl0J3MgYWJvdXQgdG8gc3Rh cnQgaGlnaCBzY2hvb2w6DQoNCiAgaHR0cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVn LmNnaT9pZD0xMDQ1MDY5DQoNCkhhdmluZyBzYWlkIHRoYXQsIGl0IG1pZ2h0IGFsc28gYmUgYSBn b29kIGlkZWEgbm90IHRvIHJ1biBzdHVmZiBhcw0Kcm9vdC4gIE5laXRoZXIgbGlidmlydCBub3Ig bGliZ3Vlc3RmcyBuZWVkIGl0Lg0KDQo+ID4gVGhlIFhER19SVU5USU1FX0RJUiBpcyBubyBsb25n ZXIgYW4gaXNzdWUsIHNpbmNlIHJvb3QgY2FuIGFjY2VzcyBldmVyeQ0KPiA+IGRpcmVjdG9yeSB1 bmRlciAvcnVuL3VzZXIuIEkgZ3Vlc3MgdGhlIHByb2JsZW0gaGVyZSBpcyB0aGF0IHdlIGp1c3QN Cj4gPiBjYW4ndCBydW4gJ3ZpcnNoIGVkaXQnIGFzIHJvb3QuDQo+IA0KPiBXYWl0LCBpdCdzIG5v dCAndmlyc2ggZWRpdCcsIGl0J3MgJ3ZpcnQtZWRpdCcsIGFuZCBpdCdzIG5vdCB0cnVlIHRoYXQN Cj4geW91IGNhbid0IHJ1biBpdCBhcyByb290Lg0KPiANCj4gV2UgaGFkIGV4cGxpY2l0IHJlcG9y dHMgZnJvbSBsaWJndWVzdGZzICh2aXJ0LWVkaXQgaXMgcGFydCBvZiBpdCwgYW5kIGl0DQo+IG5v dyB1c2VzIHBhc3N0IHRvIHByb3ZpZGUgbmV0d29ya2luZyB0byB0aGUgdGVtcG9yYXJ5IFZNcyBp dCB1c2VzIHRvDQo+IGVkaXQgZ3Vlc3QgaW1hZ2VzKSBiZWluZyBydW4gYXMgcm9vdCwgYW5kIHBh c3N0IGJyZWFraW5nIHRoYXQgaW4gdGhlDQo+IHBhc3QuDQo+IA0KPiBXZSBuZWVkIHRvIHN1cHBv cnQgdGhhdCBiZWNhdXNlIHZpcnR1YWwgbWFjaGluZSBpbWFnZXMgbWlnaHQgYmUgb3duZWQNCj4g Ynkgcm9vdCBpZiB0aGUgdmlydHVhbCBtYWNoaW5lcyB0aGV5IGJlbG9uZyB0byBjYW4ndCBydW4g dW5wcml2aWxlZ2VkLg0KPiANCj4gQnJlYWtpbmcgb3BlcmF0aW9uIGFzIHJvb3QgaXMgYWN0dWFs bHkgcHJldHR5IGJhZCBmb3Igc2VjdXJpdHkgaW4gdGhhdA0KPiBjYXNlLCBzaW5jZSBpdCBlbmNv dXJhZ2VzIC8gZm9yY2VzIHVzZXJzIHRvIG1ha2UgdGhvc2UgaW1hZ2VzDQo+IGFjY2Vzc2libGUg dG8gb3RoZXIgdXNlcnMuDQo+IA0KPiBTZWU6DQo+IA0KPiAgIGh0dHBzOi8vaXNzdWVzLnJlZGhh dC5jb20vYnJvd3NlL1JIRUwtMzYwNDUNCj4gDQo+ICAgNDViODYzMmRjYzBlICgiY29uZjogRG9u J3QgbGVjdHVyZSB1c2VyIGFib3V0IHN0YXJ0aW5nIHVzIGFzIHJvb3QiKQ0KPiANCj4gICBjOWIy NDEzNDY1NjkgKCJjb25mLCBwYXNzdCwgdGFwOiBPcGVuIHNvY2tldCBhbmQgUElEIGZpbGVzIGJl Zm9yZSBzd2l0Y2hpbmcgVUlEL0dJRCIpLg0KPiANCj4gPiA+ID4gTWF5YmUgd2UgY2FuIGp1c3Qg cHV0IGl0IGxpa2U6DQo+ID4gPiA+DQo+ID4gPiA+ICAgICBSdW5uaW5nIHRoZSBjb21tYW5kcyBh cyByb290IGlzIGp1c3Qgbm90IGFsbG93ZWQuICBJZiB5b3UgbG9naW4NCj4gPiA+ID4gdGhlIHN5 c3RlbSB3aXRoIHJvb3QsIGRvbid0IHVzZSBzdSB0byBzd2l0Y2ggdXNlcnMgZHVlIHRvIFtCdWcN Cj4gPiA+ID4gOTY3NTA5XShodHRwczovL2J1Z3ppbGxhLnJlZGhhdC5jb20vc2hvd19idWcuY2dp P2lkPTk2NzUwOSkuIExvZyBvdXQNCj4gPiA+ID4gYW5kIGxvZyBiYWNrIGluIGFzIHRoZSBpbnRl bmRlZCB1c2VyLCBvciB1c2UgJ21hY2hpbmVjdGwgc2hlbGwNCj4gPiA+ID4gLS11aWQ9JHVzZXIn Lg0KPiA+ID4gPg0KPiA+ID4gPiBXaGF0IGRvIHlvdSB0aGluaz8gIA0KPiA+ID4NCj4gPiA+IFdl bGwsIGl0J3MgZnJlZSBzb2Z0d2FyZSwgc28gIm5vdCBhbGxvd2VkIiBkb2Vzbid0IHJlYWxseSBt ZWFuIG11Y2guDQo+ID4gPg0KPiA+ID4gSSB3b3VsZCBzaW1wbHkgd2FybiB1c2VycyB0aGF0IGl0 J3MgYSBiYWQgaWRlYSBhbmQgaXQncyBub3QgbmVlZGVkLA0KPiA+ID4gc29tZXRoaW5nIGxpa2Ug bXkgcHJldmlvdXMgcHJvcG9zYWw6DQo+ID4gPg0KPiA+ID4gICAqIERvbid0IHJ1biB0aGUgdGVz dHMgYXMgcm9vdCwgaXQncyBub3QgbmVlZGVkIQ0KPiA+ID4gICAqIElmIHlvdSByZWFsbHkgbmVl ZCB0bywgbm90ZSB0aGF0IC4uLg0KPiA+ID4NCj4gPiA+IGFuZCB0aGVuIGp1c3QgbGlzdCB0aGUg d29ya2Fyb3VuZCB0aGF0IGFjdHVhbGx5IHdvcmtzLg0KPiA+ID4NCj4gPiA+IEkgdGhpbmsgdGhl IG1vc3QgdHlwaWNhbCBuZWVkIGZvciBydW5uaW5nIHRoaW5ncyBhcyByb290IGlzIHRoYXQgeW91 DQo+ID4gPiBkb24ndCBhY3R1YWxseSBoYXZlIG90aGVyIHVzZXJzIChpdCBoYXBwZW5zIHdpdGgg c29tZSBWTSBpbWFnZXMgb3INCj4gPiA+IGluIGVtYmVkZGVkIHN5c3RlbXMpLCBzbyAnbWFjaGlu ZWN0bCBzaGVsbCAtLXVpZD0kdXNlcicgd29uJ3QgcmVhbGx5DQo+ID4gPiBoZWxwIHRoZXJlLiAg DQo+ID4gDQo+ID4gV2VsbCwgSSBoYXZlIHRvIGFkbWl0IHRoYXQgSSB1c3VhbGx5IGRvIGV2ZXJ5 dGhpbmcgd2l0aCByb290IG9uIG15DQo+ID4gdGVzdCBtYWNoaW5lcy4gQW5kIEkgZG9uJ3Qgc2Vl IGEgc29sdXRpb24vd29ya2Fyb3VuZCB0byBmaXggdGhlIGlzc3VlDQo+ID4gd2hlbiBydW5uaW5n ICdtYWtlIGFzc2V0cycgYXMgcm9vdCBhcyBjKS4NCj4gDQo+IEl0J3Mgbm90IHNvIGltcG9ydGFu dCBmb3Igb3VyIHRlc3RzLCBidXQgaXQgd291bGQgYmUgZ29vZCB0byBrbm93IHdoeQ0KPiBpdCBi cmVha3MsIGluIGdlbmVyYWwuDQo+IA0KPiA+IFRoZSB3b3JrYXJvdW5kIHByb3Bvc2VkIGlzDQo+ ID4ganVzdCBmb3IgdGhvc2Ugd2hvIGxvZ2luIHdpdGggcm9vdCBhbmQgc3dpdGNoIHRvIGEgbm9u LXJvb3QgdXNlciB0bw0KPiA+IHJ1biB0aGUgdGVzdHMuDQo+ID4gDQo+ID4gPg0KPiA+ID4gTWF5 YmUganVzdCBtZW50aW9uIHNldHRpbmcgWERHX1JVTlRJTUVfRElSIHRvIHdoYXRldmVyIGlzIGFw cHJvcHJpYXRlDQo+ID4gPiAoZG9lcyAvdG1wIHdvcms/KT8NCj4gPiA+ICANCj4gPiA+ID4gPiA+ ID4gPiArKiBTRUxpbnV4IG1heSBwcmV2ZW50IHRoZSB0ZXN0cyBmcm9tIHJ1bm5pbmcgY29ycmVj dGx5LiBUbyBhdm9pZCB0aGlzLA0KPiA+ID4gPiA+ID4gPiA+ICsgIHRlbXBvcmFyaWx5IGRpc2Fi bGUgaXQgYnkgcnVubmluZzoNCj4gPiA+ID4gPiA+ID4gPiArDQo+ID4gPiA+ID4gPiA+ID4gKyAg ICAgICAgc2V0ZW5mb3JjZSAwICANCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gQnkgdGhl IHdheSwgb3RoZXIgdGhhbiB0aGUgREhDUCBjbGllbnQgbm90IHdvcmtpbmcgb24gRmVkb3JhIGlu IGENCj4gPiA+ID4gPiA+ID4gbmFtZXNwYWNlICh3aGljaCB3ZSBzaG91bGQgcmVhbGx5IGZpeCwg SSBjYW4gbG9vayBpbnRvIGl0IGlmIHlvdSBzaGFyZQ0KPiA+ID4gPiA+ID4gPiB0aGUgbWVzc2Fn ZXMgeW91J3JlIGdldHRpbmcgZnJvbSAvdmFyL2xvZy9hdWRpdC9hdWRpdC5sb2cpLCBkaWQgeW91 IGhpdA0KPiA+ID4gPiA+ID4gPiBhbnkgb3RoZXIgaXNzdWUgd2l0aCBpdD8NCj4gPiA+ID4gPiA+ ID4gIA0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFN1cmUsIEkgd2lsbCBzZW5kIHlvdSBhIGxp bmsgY29udGFpbmluZyB0aGUgYXVkaXQubG9nLg0KPiA+ID4gPiA+ID4gQlRXLCBpZiAnc2V0ZW5m b3JjZSAxJywgdGhlIHRlc3RzIHdvdWxkIGdldCBzdHVjayBhdCAnREhDUHY2DQo+ID4gPiA+ID4g PiA6YWRkcmVzcycuIExvb2tzIGxpa2UgYW4gZW5kbGVzcyBsb29wIHRoZXJlLiBTbyBleGNlcHQg dGhlIHZlcnkgZmlyc3QNCj4gPiA+ID4gPiA+IGZldyB0ZXN0cywgb3RoZXIgdGVzdHMgaGF2ZW4n dCBiZWVuIGV4ZWN1dGVkLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID09PSBwYXN0YS9kaGNw ICANCj4gPiA+ID4gPiA+IERFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVH OkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOkRF QlVHOj4gIA0KPiA+ID4gPiA+ID4gSW50ZXJmYWNlIG5hbWUNCj4gPiA+ID4gPiA+IERFQlVHOkRF QlVHOj8gWyAtbiAiZW5vODMwMyIgXQ0KPiA+ID4gPiA+ID4gREVCVUc6REVCVUc6Li4ucGFzc2Vk Lg0KPiA+ID4gPiA+ID4gIA0KPiA+ID4gPiA+ID4gPiBESENQOiBhZGRyZXNzICANCj4gPiA+ID4g PiA+IERFQlVHOkRFQlVHOkRFQlVHOkRFQlVHOj8gWyBARU1QVFlAID0gMTAuNzIuMTM2LjMwIF0g PCBmYWlsZWQuDQo+ID4gPiA+ID4gPiBERUJVRzpERUJVRzouLi5mYWlsZWQuDQo+ID4gPiA+ID4g PiAgDQo+ID4gPiA+ID4gPiA+IERIQ1A6IHJvdXRlICANCj4gPiA+ID4gPiA+IERFQlVHOkRFQlVH OkRFQlVHOj8gWyBARU1QVFlAID0gMTAuNzIuMTM5LjI1NCBdIDwgZmFpbGVkLg0KPiA+ID4gPiA+ ID4gREVCVUc6REVCVUc6Li4uZmFpbGVkLg0KPiA+ID4gPiA+ID4gIA0KPiA+ID4gPiA+ID4gPiBE SENQOiBNVFUgIA0KPiA+ID4gPiA+ID4gREVCVUc6REVCVUc6PyBbIDE1MDAgPSA2NTUyMCBdIDwg ZmFpbGVkLg0KPiA+ID4gPiA+ID4gREVCVUc6REVCVUc6Li4uZmFpbGVkLg0KPiA+ID4gPiA+ID4g IA0KPiA+ID4gPiA+ID4gPiBESENQdjY6IGFkZHJlc3MgIA0KPiA+ID4gPiA+ID4gREVCVUc6ICAN Cj4gPiA+ID4gPg0KPiA+ID4gPiA+IFRoYW5rcywgc28gaXQncyB0aGUgaXNzdWUgRGF2aWQgcmVj ZW50bHkgbWVudGlvbmVkIHdpdGgNCj4gPiA+ID4gPiBkaGNsaWVudC1zY3JpcHQoOCkgYmVpbmcg cHJldmVudGVkIGJ5IFNFTGludXggZnJvbSBzZXR0aW5nIHVwIGFkZHJlc3Nlcw0KPiA+ID4gPiA+ IGFuZCByb3V0ZXMgdmlhIGlwKDgpLCBldmVuIHRob3VnaCBpdCdzIGluIGEgZGV0YWNoZWQgbmFt ZXNwYWNlIGFuZCB0aGF0DQo+ID4gPiA+ID4gc2hvdWxkIGJlIGFsbG93ZWQuDQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiBXZSBzaG91bGQgcHJvYmFibHkgYWRkIHNvbWV0aGluZyBsaWtlIHdlIGRvIGlu IGNvbnRyaWIvc2VsaW51eC9wYXN0YS50ZQ0KPiA+ID4gPiA+IHRvIGh0dHBzOi8vZ2l0aHViLmNv bS9mZWRvcmEtc2VsaW51eC9zZWxpbnV4LXBvbGljeToNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ICAg cm9sZWF0dHJpYnV0ZSB1c2VyX3IgdXNlcm5ldGN0bF9yb2xlczsNCj4gPiA+ID4gPiAgIHJvbGUg dXNlcm5ldGN0bF9yb2xlcyB0eXBlcyA8d2hhdGV2ZXIgZGhjbGllbnQgcnVucyBhcz47DQo+ID4g PiA+ID4NCj4gPiA+ID4gPiBOb3csIHdlIGNhbiBkaXNhYmxlIFNFTGludXggdGVtcG9yYXJpbHkg dG8gcnVuIHRlc3RzLCBidXQgZXZlbnR1YWxseQ0KPiA+ID4gPiA+IHdlJ2xsIHdhbnQgdG8gaGF2 ZSB0ZXN0cyB3aXRoIERIQ1AgY2xpZW50cyBpbiB1bnByaXZpbGVnZWQgc2V0dXBzIGFsc28NCj4g PiA+ID4gPiBhcyBwYXJ0IG9mIEZlZG9yYSBhdXRvbWF0ZWQgdGVzdHMsIGFuZCBJJ20gZmFpcmx5 IHN1cmUgdGhhdCB0aG9zZSBydW4NCj4gPiA+ID4gPiB3aXRoIFNFTGludXggaW4gZW5mb3JjaW5n IG1vZGUuIFNvIHdlIHNob3VsZCByZWFsbHkgZml4IHRoaXMuICANCj4gPiA+ID4NCj4gPiA+ID4g U3VyZSwgSSB3aWxsIGZpbGUgYSB0aWNrZXQgZm9yIHRoYXQuICANCj4gPiA+DQo+ID4gPiBUaGFu a3MuIE5vdGUgdGhhdCBpdCdzIG5vdCBhIHRpY2tldCBmb3IgcGFzc3QsIGl0J3MgbWF5YmUgYSB0 aWNrZXQgZm9yDQo+ID4gPiBmZWRvcmEtc2VsaW51eCwgYnV0IEknbSBub3Qgc3VyZSBpZiBpdCdz IHJlYWxseSBoZWxwZnVsIHRvIGZpbGUgaXNzdWVzDQo+ID4gPiB0aGVyZS4gSSBndWVzcyB3ZSBz aG91bGQgdHJ5IHRoaW5ncyBvdXQgYW5kIHNlbmQgYSBtZXJnZSByZXF1ZXN0LiAgDQo+ID4NCj4g PiBBZ3JlZS4gTGV0J3MganVzdCBkaXNhYmxlIGl0IHRlbXBvcmFyaWx5IHRvIGJ5cGFzcyB0aGUg aXNzdWUuDQo+IA0KPiBBY3R1YWxseSwgdGhhdCdzIG5vdCB3aGF0IEkgbWVhbnQ6IEkgcmVhbGx5 IHRoaW5rIHdlIHNob3VsZCBmaXggdGhhdC4NCj4gSSdtIGp1c3Qgc2F5aW5nIHRoYXQgZmlsaW5n IHRpY2tldHMgdGhlcmUgaXMgdXN1YWxseSBub3QgdmVyeSBoZWxwZnVsLg0KPiANCj4gQW55d2F5 LCBub3RlZCBvbiBteSBsaXN0LCBsZXQgbWUgdGFrZSBjYXJlIG9mIGl0LCB0aGUgY2hhbmdlIGl0 c2VsZiBpcw0KPiBraW5kIG9mIHRyaXZpYWwuIFdoZXRoZXIgaXQgd2lsbCBiZSBjb25zaWRlcmVk IC8gYWNjZXB0ZWQgaXMgYW5vdGhlcg0KPiBzdG9yeSwgYnV0IEkgY2FuIHRyeSBhdCBsZWFzdC4N Cj4gDQo+ID4gPiA+ID4gQnkgdGhlIHdheSwgaXQgd291bGQgYWxzbyBiZSBpbnRlcmVzdGluZyB0 byBzZWUgaWYsIG9uY2UgdGhlIHRlc3Qgc3VpdGUNCj4gPiA+ID4gPiBnZXRzIHBhc3QgdGhpcyBw b2ludCwgeW91IGdldCBmdXJ0aGVyIG1lc3NhZ2VzIGluIGF1ZGl0LmxvZy4NCj4gPiA+ID4gPg0K PiA+ID4gPiA+IElmIHlvdSBkbyAnc2V0ZW5mb3JjZSAwJywgU0VMaW51eCBzd2l0Y2hlcyB0byB0 aGUgc28tY2FsbGVkICJjb21wbGFpbg0KPiA+ID4gPiA+IG1vZGUiLCBhbmQgd2FybmluZ3MgYXJl IHN0aWxsIGxvZ2dlZCwgYnV0IHRoZXkgd29uJ3QgYmxvY2sgYW55dGhpbmcuDQo+ID4gPiA+ID4N Cj4gPiA+ID4gPiBTbywgd2l0aCAnc2V0ZW5mb3JjZSAwJywgd2UgY2FuIGZpbmQgb3V0IGZyb20g YXVkaXQubG9nIGlmIHdlIHdvdWxkIGhpdA0KPiA+ID4gPiA+IGZ1cnRoZXIgZmFpbHVyZXMuICAN Cj4gPiA+ID4NCj4gPiA+ID4gSGVyZSBpcyB0aGUgYXVkaXQubG9nOg0KPiA+ID4gPg0KPiA+ID4g PiBodHRwczovL3ByaXZhdGViaW4uY29ycC5yZWRoYXQuY29tLz80OWZlZjVlZjJlNzY2YzQyI0Zr aTVMbkQ5RUdNZkREcG12RlBwMVdxR2JRUHdRazRxUW1RYm1LdWdETHhiDQo+ID4gPiA+DQo+ID4g PiA+IEZyb20gd2hhdCBJIGNhbiBzZWUsIHRoZXJlIGlzIG5vICdhdmM6ICBkZW5pZWQnIGFmdGVy IHRoZSBkaGNwIGNhc2VzLiAgDQo+ID4gPg0KPiA+ID4gW2xvb2tpbmcgYXQgbG9nIHlvdSBhdHRh Y2hlZCBsYXRlcl0gZ3JlYXQsIEkgZG9uJ3Qgc2VlIG90aGVyIGlzc3Vlcw0KPiA+ID4gZWl0aGVy ISBTbyBpdCBzZWVtcyB0byBiZSBqdXN0IHRoYXQsIGFuZCB0aGVuIHdlJ2xsIGJlIGFibGUgdG8g cnVuDQo+ID4gPiB0ZXN0cyBvbiBGZWRvcmEtbGlrZSBkaXN0cmlidXRpb25zIHdpdGggU0VMaW51 eCBlbmFibGVkLg0KDQpSaWNoLg0KDQotLSANClJpY2hhcmQgSm9uZXMsIFZpcnR1YWxpemF0aW9u IEdyb3VwLCBSZWQgSGF0IGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9+cmpvbmVzDQpSZWFkIG15 IHByb2dyYW1taW5nIGFuZCB2aXJ0dWFsaXphdGlvbiBibG9nOiBodHRwOi8vcndtai53b3JkcHJl c3MuY29tDQp2aXJ0LXRvcCBpcyAndG9wJyBmb3IgdmlydHVhbCBtYWNoaW5lcy4gIFRpbnkgcHJv Z3JhbSB3aXRoIG1hbnkNCnBvd2VyZnVsIG1vbml0b3JpbmcgZmVhdHVyZXMsIG5ldCBzdGF0cywg ZGlzayBzdGF0cywgbG9nZ2luZywgZXRjLg0KaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL35yam9u ZXMvdmlydC10b3ANCg0K