From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:59520) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hHA3l-0001je-2R for qemu-devel@nongnu.org; Thu, 18 Apr 2019 12:38:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hHA3f-0000mO-0W for qemu-devel@nongnu.org; Thu, 18 Apr 2019 12:38:49 -0400 From: Vladimir Sementsov-Ogievskiy Date: Thu, 18 Apr 2019 16:38:37 +0000 Message-ID: <5da294b5-b0d7-2ec2-7fa7-f69c6c4f220a@virtuozzo.com> References: <20190418001413.32627-1-jsnow@redhat.com> In-Reply-To: <20190418001413.32627-1-jsnow@redhat.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH] docs/interop/bitmaps: rewrite and modernize doc List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: John Snow , "qemu-block@nongnu.org" , "qemu-devel@nongnu.org" Cc: "eblake@redhat.com" , "kchamart@redhat.com" , Fam Zheng , "armbru@redhat.com" MTguMDQuMjAxOSAzOjE0LCBKb2huIFNub3cgd3JvdGU6DQo+IFRoaXMganVzdCBhYm91dCByZXdy aXRlcyB0aGUgZW50aXJldHkgb2YgdGhlIGJpdG1hcHMucnN0IGRvY3VtZW50IHRvDQo+IG1ha2Ug aXQgY29uc2lzdGVudCB3aXRoIHRoZSA0LjAgcmVsZWFzZS4gSSBoYXZlIGFkZGVkIG5ldyBmZWF0 dXJlcyBzZWVuDQo+IGluIHRoZSA0LjAgcmVsZWFzZSwgYXMgd2VsbCBhcyB0cmllZCB0byBjbGFy aWZ5IHNvbWUgcG9pbnRzIHRoYXQga2VlcA0KPiBjb21pbmcgdXAgd2hlbiBkaXNjdXNzaW5nIHRo aXMgZmVhdHVyZSBib3RoIGluLWhvdXNlIGFuZCB1cHN0cmVhbS4NCj4gDQo+IFllcywgaXQncyBh IGxvdCBsb25nZXIsIG1vc3RseSBkdWUgdG8gZXhhbXBsZXMuIEkgZ2V0IGEgYml0IGNoYXR0eS4N Cj4gSSBjb3VsZCB1c2UgYSBnb29kIGVkaXRvciB0byBoZWxwIHJlaWduIGluIG15IGNoYXR0aW5l c3MuDQo+IA0KPiBJdCBkb2VzIG5vdCB5ZXQgY292ZXIgcHVsbCBiYWNrdXBzIG9yIG1pZ3JhdGlv biBkZXRhaWxzLCBidXQgSSBpbnRlbmQgdG8NCj4ga2VlcCBleHRlbmRpbmcgdGhpcyBkb2N1bWVu dCB0byBjb3ZlciB0aG9zZSBjYXNlcy4NCj4gDQo+IFBsZWFzZSB0cnkgY29tcGlsaW5nIGl0IHdp dGggc3BoaW54IGFuZCBsb29rIGF0IHRoZSByZW5kZXJlZCBvdXRwdXQsIEkNCj4gZG9uJ3QgaGF2 ZSBob3N0aW5nIHRvIHNoYXJlIG15IGNvcHkgYXQgcHJlc2VudC4gSSB0aGluayB0aGlzIG5ldyBs YXlvdXQNCj4gcmVhZHMgbmljZXIgaW4gdGhlIEhUTUwgZm9ybWF0IHRoYW4gdGhlIG9sZCBvbmUg ZGlkLCBhdCB0aGUgZXhwZW5zZSBvZg0KPiBsb29raW5nIGxlc3MgcmVhZGFibGUgaW4gdGhlIHNv dXJjZSB0cmVlIGl0c2VsZiAodGhvdWdoIG5vdCBjb21wbGV0ZWx5DQo+IHVubWFuYWdhYmxlLiBX ZSBkaWQgZGVjaWRlIHRvIGNvbnZlcnQgaXQgZnJvbSBNYXJrZG93biB0byBSZVNULCBhZnRlcg0K PiBhbGwsIHNvIEkgYW0gZ29pbmcgYWxsLWluIG9uIFJlU1QuKQ0KPiANCj4gU2lnbmVkLW9mZi1i eTogSm9obiBTbm93IDxqc25vd0ByZWRoYXQuY29tPg0KPiAtLS0NCj4gICBkb2NzL2ludGVyb3Av Yml0bWFwcy5yc3QgfCAxNDk5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0t DQo+ICAgTWFrZWZpbGUgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KPiAgIDIgZmlsZXMgY2hh bmdlZCwgMTE5MiBpbnNlcnRpb25zKCspLCAzMDkgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0t Z2l0IGEvZG9jcy9pbnRlcm9wL2JpdG1hcHMucnN0IGIvZG9jcy9pbnRlcm9wL2JpdG1hcHMucnN0 DQo+IGluZGV4IDdiY2ZlN2Y0NjEuLmEzOWQxZmM4NzEgMTAwNjQ0DQo+IC0tLSBhL2RvY3MvaW50 ZXJvcC9iaXRtYXBzLnJzdA0KPiArKysgYi9kb2NzL2ludGVyb3AvYml0bWFwcy5yc3QNCg0KeW91 IG1heSB3YW50IHRvIHVwZGF0ZSBjb3B5cmlnaHQgZGF0ZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRo ZSBmaWxlDQoNCj4gQEAgLTksMTI4ICs5LDQ4MSBAQA0KPiAgIERpcnR5IEJpdG1hcHMgYW5kIElu Y3JlbWVudGFsIEJhY2t1cA0KPiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KPiAgIA0KPiAtLSAgRGlydHkgQml0bWFwcyBhcmUgb2JqZWN0cyB0aGF0IHRyYWNrIHdoaWNo IGRhdGEgbmVlZHMgdG8gYmUgYmFja2VkIHVwDQo+IC0gICBmb3IgdGhlIG5leHQgaW5jcmVtZW50 YWwgYmFja3VwLg0KPiArRGlydHkgQml0bWFwcyBhcmUgaW4tbWVtb3J5IG9iamVjdHMgdGhhdCB0 cmFjayB3cml0ZXMgdG8gYmxvY2sgZGV2aWNlcy4gVGhleSBjYW4NCj4gK2JlIHVzZWQgaW4gY29u anVuY3Rpb24gd2l0aCB2YXJpb3VzIGJsb2NrIGpvYiBvcGVyYXRpb25zIHRvIHBlcmZvcm0gaW5j cmVtZW50YWwNCj4gK29yIGRpZmZlcmVudGlhbCBiYWNrdXAgcmVnaW1lbnMuDQo+ICAgDQo+IC0t ICBEaXJ0eSBiaXRtYXBzIGNhbiBiZSBjcmVhdGVkIGF0IGFueSB0aW1lIGFuZCBhdHRhY2hlZCB0 byBhbnkgbm9kZQ0KPiAtICAgKG5vdCBqdXN0IGNvbXBsZXRlIGRyaXZlcykuDQo+ICtUaGlzIGRv Y3VtZW50IGV4cGxhaW5zIHRoZSBjb25jZXB0dWFsIG1lY2hhbmlzbXMsIGFzIHdlbGwgYXMgdXAt dG8tZGF0ZSwNCj4gK2NvbXBsZXRlIGFuZCBjb21wcmVoZW5zaXZlIGRvY3VtZW50YXRpb24gb24g dGhlIEFQSSB0byBtYW5pcHVsYXRlIHRoZW0uDQo+ICsoSG9wZWZ1bGx5LCB0aGUgIndoeSIsICJ3 aGF0IiwgYW5kICJob3ciLikNCj4gKw0KPiArVGhlIGludGVuZGVkIGF1ZGllbmNlIGZvciB0aGlz IGRvY3VtZW50IGlzIGRldmVsb3BlcnMgd2hvIGFyZSBhZGRpbmcgUUVNVSBiYWNrdXANCj4gK2Zl YXR1cmVzIHRvIG1hbmFnZW1lbnQgYXBwbGljYXRpb25zLCBvciBwb3dlciB1c2VycyB3aG8gcnVu IGFuZCBhZG1pbmlzdGVyIFFFTVUNCj4gK2RpcmVjdGx5IHZpYSBRTVAuDQo+ICAgDQo+ICAgLi4g Y29udGVudHM6Og0KPiAgIA0KPiArT3ZlcnZpZXcNCj4gKy0tLS0tLS0tDQo+ICsNCj4gK0JpdG1h cHMgYXJlIGJpdCB2ZWN0b3JzIHdoZXJlIGVhY2ggJzEnIGJpdCBpbiB0aGUgdmVjdG9yIGluZGlj YXRlcyBhIG1vZGlmaWVkDQo+ICsoImRpcnR5Iikgc2VnbWVudCBvZiB0aGUgY29ycmVzcG9uZGlu ZyBibG9jayBkZXZpY2UuIFRoZSBzaXplIG9mIHRoZSBzZWdtZW50DQo+ICt0aGF0IGlzIHRyYWNr ZWQgaXMgdGhlIGdyYW51bGFyaXR5IG9mIHRoZSBiaXRtYXAuIElmIHRoZSBncmFudWxhcml0eSBv ZiBhIGJpdG1hcA0KPiAraXMgNjRLLCBlYWNoICcxJyBiaXQgbWVhbnMgdGhhdCBhbiBlbnRpcmUg NjRLIHJlZ2lvbiBjaGFuZ2VkIGluIHNvbWUgd2F5Lg0KDQpobSBub3QgZXhhY3RseS4g0KFvbnZl cnNlbHksIGlmIHdlIGNoYW5nZSBub3QgdGhlIGVudGlyZSByZWdpb24gYnV0IG9ubHkgb24gYnl0 ZSBvZiBpdCwNCmNvcnJlc3BvbmRpbmcgYml0IGluIHRoZSBiaXRtYXAgd291bGQgYmUgc2V0Li4N Cg0KPiArDQo+ICtTbWFsbGVyIGdyYW51bGFyaXRpZXMgbWVhbiBtb3JlIGFjY3VyYXRlIHRyYWNr aW5nIG9mIG1vZGlmaWVkIGRpc2sgZGF0YSwgYnV0DQo+ICtyZXF1aXJlcyBtb3JlIGNvbXB1dGF0 aW9uYWwgb3ZlcmhlYWQgYW5kIGxhcmdlciBiaXRtYXAgc2l6ZXMuIExhcmdlcg0KPiArZ3JhbnVs YXJpdGllcyBtZWFuIHNtYWxsZXIgYml0bWFwIHNpemVzLCBidXQgbGVzcyB0YXJnZXRlZCBiYWNr dXBzLg0KPiArDQo+ICtUaGUgc2l6ZSBvZiBhIGJpdG1hcCAoaW4gYnl0ZXMpIGNhbiBiZSBjb21w dXRlZCBhcyBzdWNoOg0KPiArICAgIGBgc2l6ZWBgID0gKChgYGltYWdlX3NpemVgYCAvIGBgZ3Jh bnVsYXJpdHlgYCkgLyA4KQ0KDQpib3RoIGRpdmlzaW9ucyBzaG91bGQgcm91bmQgdXANCg0KPiAr DQo+ICtlLmcuIHRoZSBzaXplIG9mIGEgNjRLaUIgZ3JhbnVsYXJpdHkgYml0bWFwIG9uIGEgMlRp QiBpbWFnZSBpczoNCj4gKyAgICBgYHNpemVgYCA9ICgoMjE0NzQ4MzY0OEsgLyA2NEspIC8gOCkN Cj4gKyAgICAgICAgID0gNDE5NDMwNEIgPSA0TWlCLg0KPiArDQo+ICtRRU1VIHVzZXMgdGhlc2Ug Yml0bWFwcyB3aGVuIG1ha2luZyBpbmNyZW1lbnRhbCBiYWNrdXBzIHRvIGtub3cgd2hpY2gNCj4g K3NlY3Rpb25zIG9mIHRoZSBmaWxlIHRvIGNvcHkgb3V0LiBUaGV5IGFyZSBub3QgZW5hYmxlZCBi eSBkZWZhdWx0IGFuZA0KPiArbXVzdCBiZSBleHBsaWNpdGx5IGFkZGVkIGluIG9yZGVyIHRvIGJl Z2luIHRyYWNraW5nIHdyaXRlcy4NCj4gKw0KPiArQml0bWFwcyBjYW4gYmUgY3JlYXRlZCBhdCBh bnkgdGltZSBhbmQgY2FuIGJlIGF0dGFjaGVkIHRvIGFueQ0KPiArYXJiaXRyYXJ5IGJsb2NrIG5v ZGUgaW4gdGhlIHN0b3JhZ2UgZ3JhcGgsIGJ1dCBhcmUgbW9zdCB1c2VmdWwNCj4gK2NvbmNlcHR1 YWxseSB3aGVuIGF0dGFjaGVkIHRvIHRoZSByb290IG5vZGUgYXR0YWNoZWQgdG8gdGhlIGd1ZXN0 J3MNCj4gK3N0b3JhZ2UgZGV2aWNlIG1vZGVsLg0KPiArDQo+ICsoV2hpY2ggaXMgYSByZWFsbHkg Y2hhdHR5IHdheSBvZiBzYXlpbmc6IEl0J3MgbGlrZWx5IG1vc3QgdXNlZnVsIHRvDQo+ICt0cmFj ayB0aGUgZ3Vlc3QncyB3cml0ZXMgdG8gZGlzaywgYnV0IHlvdSBjb3VsZCB0aGVvcmV0aWNhbGx5 IHRyYWNrDQo+ICt0aGluZ3MgbGlrZSBxY293MiBtZXRhZGF0YSBjaGFuZ2VzIGJ5IGF0dGFjaGlu ZyB0aGUgYml0bWFwIGVsc2V3aGVyZQ0KPiAraW4gdGhlIHN0b3JhZ2UgZ3JhcGguKQ0KPiArDQo+ ICtRRU1VIHN1cHBvcnRzIHBlcnNpc3RpbmcgdGhlc2UgYml0bWFwcyB0byBkaXNrIHZpYSB0aGUg cWNvdzIgaW1hZ2UgZm9ybWF0Lg0KPiArQml0bWFwcyB3aGljaCBhcmUgc3RvcmVkIG9yIGxvYWRl ZCBpbiB0aGlzIHdheSBhcmUgY2FsbGVkICJwZXJzaXN0ZW50Iiwgd2hlcmVhcw0KPiArYml0bWFw cyB0aGF0IGFyZSBub3QgYXJlIGNhbGxlZCAidHJhbnNpZW50Ii4NCj4gKw0KPiArUUVNVSBhbHNv IHN1cHBvcnRzIHRoZSBtaWdyYXRpb24gb2YgYm90aCB0cmFuc2llbnQgYml0bWFwcyAodHJhY2tp bmcgYW55DQo+ICthcmJpdHJhcnkgaW1hZ2UgZm9ybWF0KSBvciBwZXJzaXN0ZW50IGJpdGFwcyAo cWNvdzIpIHZpYSBsaXZlIG1pZ3JhdGlvbi4NCg0Kcy9iaXRhcHMvYml0bWFwcw0KDQpub3Qgc3Vy ZSBpdCBzaG91bGQgYmUgbWVudGlvbmVkOiBvbmx5IG5hbWVkIGJpdG1hcHMgYXJlIG1pZ3JhdGVk Lg0KDQo+ICsNCj4gK1N1cHBvcnRlZCBJbWFnZSBGb3JtYXRzDQo+ICstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ0KPiArDQo+ICtRRU1VIHN1cHBvcnRzIGFsbCBkb2N1bWVudGVkIGZlYXR1cmVzIGJl bG93IG9uIHRoZSBxY293MiBpbWFnZSBmb3JtYXQuDQo+ICsNCj4gK0hvd2V2ZXIsIHFjb3cyIGlz IG9ubHkgc3RyaWN0bHkgbmVjZXNzYXJ5IGZvciB0aGUgcGVyc2lzdGVuY2UgZmVhdHVyZSwgd2hp Y2gNCj4gK3dyaXRlcyBiaXRtYXAgZGF0YSB0byBkaXNrIHVwb24gY2xvc2UuIElmIHBlcnNpc3Rl bmNlIGlzIG5vdCByZXF1aXJlZCBmb3IgYQ0KPiArc3BlY2lmaWMgdXNlIGNhc2UsIGFsbCBiaXRt YXAgZmVhdHVyZXMgZXhjZXB0aW5nIHBlcnNpc3RlbmNlIGFyZSBhdmFpbGFibGUNCj4gK2ZvciBh bnkgYXJiaXRyYXJ5IGltYWdlIGZvcm1hdC4NCj4gKw0KPiArRm9yIGV4YW1wbGUsIERpcnR5IEJp dG1hcHMgY2FuIGJlIGNvbWJpbmVkIHdpdGggdGhlICdyYXcnIGltYWdlIGZvcm1hdCwNCj4gK2J1 dCBhbnkgY2hhbmdlcyB0byB0aGUgYml0bWFwIHdpbGwgYmUgZGlzY2FyZGVkIHVwb24gZXhpdC4N Cj4gKw0KPiArLi4gd2FybmluZzo6IFRyYW5zaWVudCBiaXRtYXBzIHdpbGwgbm90IGJlIHNhdmVk IG9uIFFFTVUgZXhpdCEgUGVyc2lzdGVudA0KPiArICAgICAgICAgICAgIGJpdG1hcHMgYXJlIGF2 YWlsYWJsZSBvbmx5IG9uIHFjb3cyIGltYWdlcy4NCj4gKw0KPiAgIERpcnR5IEJpdG1hcCBOYW1l cw0KPiAgIC0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAgIA0KPiAtLSAgQSBkaXJ0eSBiaXRtYXAncyBu YW1lIGlzIHVuaXF1ZSB0byB0aGUgbm9kZSwgYnV0IGJpdG1hcHMgYXR0YWNoZWQgdG8NCj4gLSAg IGRpZmZlcmVudCBub2RlcyBjYW4gc2hhcmUgdGhlIHNhbWUgbmFtZS4NCj4gK0JpdG1hcCBvYmpl Y3RzIG5lZWQgYSBtZXRob2QgdG8gcmVmZXJlbmNlIHRoZW0gaW4gdGhlIEFQSS4gQWxsIEFQSS1j cmVhdGVkIGFuZA0KPiArbWFuYWdlZCBiaXRtYXBzIGhhdmUgYSBodW1hbi1yZWFkYWJsZSBuYW1l IGNob3NlbiBieSB0aGUgdXNlciBhdCBjcmVhdGlvbiB0aW1lLg0KPiAgIA0KPiAtLSAgRGlydHkg Yml0bWFwcyBjcmVhdGVkIGZvciBpbnRlcm5hbCB1c2UgYnkgUUVNVSBtYXkgYmUgYW5vbnltb3Vz IGFuZA0KPiAtICAgaGF2ZSBubyBuYW1lLCBidXQgYW55IHVzZXItY3JlYXRlZCBiaXRtYXBzIG11 c3QgaGF2ZSBhIG5hbWUuIFRoZXJlDQo+IC0gICBjYW4gYmUgYW55IG51bWJlciBvZiBhbm9ueW1v dXMgYml0bWFwcyBwZXIgbm9kZS4NCj4gKy0gIEEgYml0bWFwJ3MgbmFtZSBpcyB1bmlxdWUgdG8g dGhlIG5vZGUsIGJ1dCBiaXRtYXBzIGF0dGFjaGVkIHRvIGRpZmZlcmVudA0KPiArICAgbm9kZXMg Y2FuIHNoYXJlIHRoZSBzYW1lIG5hbWUuIFRoZXJlZm9yZSwgYWxsIGJpdG1hcHMgYXJlIGFkZHJl c3NlZCB2aWEgdGhlaXINCj4gKyAgIChub2RlLCBuYW1lKSBwYWlyLg0KPiAgIA0KPiAtLSAgVGhl IG5hbWUgb2YgYSB1c2VyLWNyZWF0ZWQgYml0bWFwIG11c3Qgbm90IGJlIGVtcHR5ICgiIikuDQo+ ICstICBUaGUgbmFtZSBvZiBhIHVzZXItY3JlYXRlZCBiaXRtYXAgY2Fubm90IGJlIGVtcHR5ICgi IikuDQo+ICAgDQo+IC1CaXRtYXAgTW9kZXMNCj4gLS0tLS0tLS0tLS0tLQ0KPiArLSAgVHJhbnNp ZW50IGJpdG1hcHMgY2FuIGhhdmUgSlNPTiB1bmljb2RlIG5hbWVzIHRoYXQgYXJlIGVmZmVjdGl2 ZWx5IG5vdCBsZW5ndGgNCj4gKyAgIGxpbWl0ZWQuIChRTVAgcHJvdG9jb2wgbWF5IHJlc3RyaWN0 IG1lc3NhZ2VzIHRvIGxlc3MgdGhhbiA2NE1pQi4pDQo+ICAgDQo+IC0tICBBIGJpdG1hcCBjYW4g YmUgImZyb3plbiwiIHdoaWNoIG1lYW5zIHRoYXQgaXQgaXMgY3VycmVudGx5IGluLXVzZSBieQ0K PiAtICAgYSBiYWNrdXAgb3BlcmF0aW9uIGFuZCBjYW5ub3QgYmUgZGVsZXRlZCwgcmVuYW1lZCwg d3JpdHRlbiB0bywgcmVzZXQsDQo+IC0gICBldGMuDQo+ICstICBQZXJzaXN0ZW50IHN0b3JhZ2Ug Zm9ybWF0cyBtYXkgaW1wb3NlIHRoZWlyIG93biByZXF1aXJlbWVudHMgb24gYml0bWFwIG5hbWVz DQo+ICsgICBhbmQgbmFtZXNwYWNlcy4gUHJlc2VudGx5LCBvbmx5IHFjb3cyIHN1cHBvcnRzIHBl cnNpc3RlbnQgYml0bWFwcy4gU2VlDQo+ICsgICBkb2NzL2ludGVyb3AvcWNvdzIudHh0IGZvciBt b3JlIGRldGFpbHMgb24gcmVzdHJpY3Rpb25zLiBOb3RhYmx5Og0KPiAgIA0KPiAtLSAgVGhlIG5v cm1hbCBvcGVyYXRpbmcgbW9kZSBmb3IgYSBiaXRtYXAgaXMgImFjdGl2ZS4iDQo+ICsgICAtICBx Y293MiBiaXRtYXAgbmFtZXMgYXJlIGxpbWl0ZWQgdG8gYmV0d2VlbiAxIGFuZCAxMDIzIGJ5dGVz IGxvbmcuDQo+ICsNCj4gKyAgIC0gIE5vIHR3byBiaXRtYXBzIHNhdmVkIHRvIHRoZSBzYW1lIHFj b3cyIGZpbGUgbWF5IHNoYXJlIHRoZSBzYW1lIG5hbWUuDQo+ICsNCj4gKy0gIFFFTVUgb2NjYXNp b25hbGx5IHVzZXMgYml0bWFwcyBmb3IgaW50ZXJuYWwgdXNlIHdoaWNoIGhhdmUgbm8gbmFtZS4g VGhleSBhcmUNCj4gKyAgIGhpZGRlbiBmcm9tIEFQSSBxdWVyeSBjYWxscywgY2Fubm90IGJlIG1h bmlwdWxhdGVkIGJ5IHRoZSBleHRlcm5hbCBBUEksIGFuZA0KPiArICAgYXJlIG5ldmVyIHBlcnNp c3RlbnQuDQoNCmFuZCBhcmUgbm90IG1pZ3JhdGVkDQoNCj4gKw0KPiArQml0bWFwIFN0YXR1cw0K PiArLS0tLS0tLS0tLS0tLQ0KPiArDQo+ICtEaXJ0eSBCaXRtYXAgb2JqZWN0cyBjYW4gYmUgcXVl cmllZCB3aXRoIHRoZSBRTVAgY29tbWFuZCBgcXVlcnktYmxvY2sNCj4gKzxxZW11LXFtcC1yZWYu aHRtbCNpbmRleC1xdWVyeV8wMDJkYmxvY2s+YF8sIGFuZCBhcmUgdmlzaWJsZSB2aWEgdGhlDQo+ ICtgQmxvY2tEaXJ0eUluZm8gPHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LUJsb2NrRGlydHlJbmZv PmBfIFFBUEkgc3RydWN0dXJlLg0KPiArDQo+ICtUaGlzIHN0cnVjdCBzaG93cyB0aGUgbmFtZSwg Z3JhbnVsYXJpdHksIGFuZCBkaXJ0eSBieXRlIGNvdW50IGZvciBlYWNoIGJpdG1hcC4NCj4gK0Fk ZGl0aW9uYWxseSwgaXQgc2hvd3Mgc2V2ZXJhbCBib29sZWFuIHN0YXR1cyBpbmRpY2F0b3JzOg0K PiArDQo+ICstIGBgcmVjb3JkaW5nYGA6IFRoaXMgYml0bWFwIGlzIHJlY29yZGluZyBndWVzdCB3 cml0ZXMuDQoNCm1heSBiZSBub3QgZ3Vlc3Qgd3JpdGVzLCBidXQgYW55dGhpbmcgbGlrZSBxY293 MiBtZXRhZGF0YSwgaWYgYml0bWFwIGlzIGF0dGFjaGVkIG5vdCB0byByb290Lg0KDQoNCj4gKy0g YGBidXN5YGA6IFRoaXMgYml0bWFwIGlzIGluLXVzZSBieSBhbiBvcGVyYXRpb24uDQo+ICstIGBg cGVyc2lzdGVudGBgOiBUaGlzIGJpdG1hcCBpcyBhIHBlcnNpc3RlbnQgdHlwZS4NCj4gKy0gYGBp bmNvbnNpc3RlbnRgYDogVGhpcyBiaXRtYXAgaXMgY29ycnVwdGVkIGFuZCBjYW5ub3QgYmUgdXNl ZC4NCj4gKw0KPiArVGhlIGBgK2J1c3lgYCBzdGF0dXMgcHJvaGliaXRzIHlvdSBmcm9tIGRlbGV0 aW5nLCBjbGVhcmluZywgb3Igb3RoZXJ3aXNlDQo+ICttb2RpZnlpbmcgYSBiaXRtYXAsIGFuZCBo YXBwZW5zIHdoZW4gdGhlIGJpdG1hcCBpcyBiZWluZyB1c2VkIGZvciBhIGJhY2t1cA0KPiArb3Bl cmF0aW9uIG9yIGlzIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIGxvYWRlZCBmcm9tIGEgbWlncmF0 aW9uLiBNYW55IG9mIHRoZQ0KPiArY29tbWFuZHMgZG9jdW1lbnRlZCBiZWxvdyB3aWxsIHJlZnVz ZSB0byB3b3JrIG9uIHN1Y2ggYml0bWFwcy4NCj4gKw0KPiArVGhlcmUgaXMgYWxzbyBhIGRlcHJl Y2F0ZWQNCj4gKyJgRGlydHlCaXRtYXBTdGF0dXMgPHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LURp cnR5Qml0bWFwU3RhdHVzPmBfIiBmaWVsZC4gYQ0KPiArYml0bWFwIGhpc3RvcmljYWxseSBoYWQg Zml2ZSB2aXNpYmxlIHN0YXRlczoNCj4gKw0KPiArICAgIy4gYGBGcm96ZW5gYDogVGhpcyBiaXRt YXAgaXMgY3VycmVudGx5IGluLXVzZSBieSBhbiBvcGVyYXRpb24gYW5kIGlzDQo+ICsgICAgICBp bW11dGFibGUuIEl0IGNhbid0IGJlIGRlbGV0ZWQsIHJlbmFtZWQsIHJlc2V0LCBldGMuDQo+ICsN Cj4gKyAgICAgIChUaGlzIGlzIG5vdyBgYCtidXN5YGAuKQ0KPiArDQo+ICsgICAjLiBgYERpc2Fi bGVkYGA6IFRoaXMgYml0bWFwIGlzIG5vdCByZWNvcmRpbmcgbmV3IHdyaXRlcyBmcm9tIHRoZSBn dWVzdC4NCj4gKw0KPiArICAgICAgKFRoaXMgaXMgbm93IGBgLXJlY29yZGluZyAtYnVzeWBgLikN Cj4gKw0KPiArICAgIy4gYGBBY3RpdmVgYDogVGhpcyBiaXRtYXAgaXMgcmVjb3JkaW5nIG5ldyB3 cml0ZXMgZnJvbSB0aGUgZ3Vlc3QuDQo+ICsNCj4gKyAgICAgIChUaGlzIGlzIG5vdyBgYCtyZWNv cmRpbmcgLWJ1c3lgYC4pDQo+ICsNCj4gKyAgICMuIGBgTG9ja2VkYGA6IFRoaXMgYml0bWFwIGlz IGluLXVzZSBieSBhbiBvcGVyYXRpb24sIGFuZCBpcyBpbW11dGFibGUuDQo+ICsgICAgICBUaGUg ZGlmZmVyZW5jZSBmcm9tICJGcm96ZW4iIHdhcyBwcmltYXJpbHkgaW1wbGVtZW50YXRpb24gZGV0 YWlscy4NCj4gKw0KPiArICAgICAgKFRoaXMgaXMgbm93IGBgK2J1c3lgYC4pDQo+ICsNCj4gKyAg ICMuIGBgSW5jb25zaXN0ZW50YGA6IFRoaXMgcGVyc2lzdGVudCBiaXRtYXAgd2FzIG5vdCBzYXZl ZCB0byBkaXNrIGNvcnJlY3RseSwNCj4gKyAgICAgIGFuZCBjYW4gbm8gbG9uZ2VyIGJlIHVzZWQu IEl0IHJlbWFpbnMgaW4gbWVtb3J5IHRvIHNlcnZlIGFzIGFuDQo+ICsgICAgICBpbmRpY2F0b3Ig b2YgZmFpbHVyZS4NCj4gKw0KPiArICAgICAgKFRoaXMgaXMgbm93IGBgK2luY29uc2lzdGVudGBg LikNCj4gKw0KPiArVGhlc2Ugc3RhdGVzIGFyZSBkaXJlY3RseSByZXBsYWNlZCBieSB0aGUgc3Rh dHVzIGluZGljYXRvcnMgYW5kIHNob3VsZA0KPiArbm90IGJlIHVzZWQuIFRoZSBkaWZmZXJlbmNl IGJldHdlZW4gYGBGcm96ZW5gYCBhbmQgYGBMb2NrZWRgYCBpcyBhbg0KPiAraW1wbGVtZW50YXRp b24gZGV0YWlsIGFuZCBzaG91bGQgbm90IGJlIHJlbGV2YW50IHRvIGV4dGVybmFsIHVzZXJzLg0K PiAgIA0KPiAgIEJhc2ljIFFNUCBVc2FnZQ0KPiAgIC0tLS0tLS0tLS0tLS0tLQ0KPiAgIA0KPiAr VGhlIHByaW1hcnkgaW50ZXJmYWNlIHRvIG1hbmlwdWxhdGluZyBiaXRtYXAgb2JqZWN0cyBpcyB2 aWEgdGhlIFFNUA0KPiAraW50ZXJmYWNlLiBJZiB5b3UgYXJlIG5vdCBmYW1pbGlhciwgc2VlIGRv Y3MvaW50ZXJvcC9xbXAtaW50cm8udHh0IGZvciBhIGJyb2FkDQo+ICtvdmVydmlldywgYW5kIGBx ZW11LXFtcC1yZWYgPHFlbXUtcW1wLXJlZi5odG1sPmBfIGZvciBhIGZ1bGwgcmVmZXJlbmNlIG9m IGFsbA0KPiArUU1QIGNvbW1hbmRzLg0KPiArDQo+ICAgU3VwcG9ydGVkIENvbW1hbmRzDQo+ICAg fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICAgDQo+ICtUaGVyZSBhcmUgc2l4IHByaW1hcnkgYml0bWFw LW1hbmFnZW1lbnQgQVBJIGNvbW1hbmRzOg0KPiArDQo+ICAgLSBgYGJsb2NrLWRpcnR5LWJpdG1h cC1hZGRgYA0KPiAgIC0gYGBibG9jay1kaXJ0eS1iaXRtYXAtcmVtb3ZlYGANCj4gICAtIGBgYmxv Y2stZGlydHktYml0bWFwLWNsZWFyYGANCj4gKy0gYGBibG9jay1kaXJ0eS1iaXRtYXAtZGlzYWJs ZWBgDQo+ICstIGBgYmxvY2stZGlydHktYml0bWFwLWVuYWJsZWBgDQo+ICstIGBgYmxvY2stZGly dHktYml0bWFwLW1lcmdlYGANCj4gICANCj4gLUNyZWF0aW9uDQo+IC1+fn5+fn5+fg0KPiArQW5k IG9uZSByZWxhdGVkIHF1ZXJ5IGNvbW1hbmQ6DQo+ICAgDQo+IC0tICBUbyBjcmVhdGUgYSBuZXcg Yml0bWFwLCBlbmFibGVkLCBvbiB0aGUgZHJpdmUgd2l0aCBpZD1kcml2ZTA6DQo+ICstIGBgcXVl cnktYmxvY2tgYA0KPiAgIA0KPiAtLi4gY29kZTo6IGpzb24NCj4gK0NyZWF0aW9uOiBibG9jay1k aXJ0eS1iaXRtYXAtYWRkDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiAg IA0KPiAtICAgIHsgImV4ZWN1dGUiOiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+IC0gICAg ICAiYXJndW1lbnRzIjogew0KPiAtICAgICAgICAibm9kZSI6ICJkcml2ZTAiLA0KPiAtICAgICAg ICAibmFtZSI6ICJiaXRtYXAwIg0KPiAtICAgICAgfQ0KPiAtICAgIH0NCj4gK2BibG9jay1kaXJ0 eS1iaXRtYXAtYWRkDQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5kZXgtYmxvY2tfMDAyZGRpcnR5 XzAwMmRiaXRtYXBfMDAyZGFkZD5gXzoNCj4gKw0KPiArQ3JlYXRlcyBhIG5ldyBiaXRtYXAgdGhh dCB0cmFja3Mgd3JpdGVzIHRvIHRoZSBzcGVjaWZpZWQgbm9kZS4gZ3JhbnVsYXJpdHksDQo+ICtw ZXJzaXN0ZW5jZSwgYW5kIHJlY29yZGluZyBzdGF0ZSBjYW4gYmUgYWRqdXN0ZWQgYXQgY3JlYXRp b24gdGltZS4NCj4gKw0KPiArLi4gYWRtb25pdGlvbjo6IEV4YW1wbGUNCj4gKw0KPiArIHRvIGNy ZWF0ZSBhIG5ldywgYWN0aXZlbHkgcmVjb3JkaW5nIHBlcnNpc3RlbnQgYml0bWFwOg0KPiArDQo+ ICsgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7ICJleGVjdXRlIjogImJsb2NrLWRpcnR5 LWJpdG1hcC1hZGQiLA0KPiArICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICsgICAgICAgICAibm9k ZSI6ICJkcml2ZTAiLA0KPiArICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCIsDQo+ICsgICAgICAg ICAicGVyc2lzdGVudCI6IHRydWUsDQo+ICsgICAgICAgfQ0KPiArICAgICB9DQo+ICsNCj4gKyAg PC0geyAicmV0dXJuIjoge30gfQ0KPiAgIA0KPiAgIC0gIFRoaXMgYml0bWFwIHdpbGwgaGF2ZSBh IGRlZmF1bHQgZ3JhbnVsYXJpdHkgdGhhdCBtYXRjaGVzIHRoZSBjbHVzdGVyDQo+ICAgICAgc2l6 ZSBvZiBpdHMgYXNzb2NpYXRlZCBkcml2ZSwgaWYgYXZhaWxhYmxlLCBjbGFtcGVkIHRvIGJldHdl ZW4gWzRLaUIsDQo+ICAgICAgNjRLaUJdLiBUaGUgY3VycmVudCBkZWZhdWx0IGZvciBxY293MiBp cyA2NEtpQi4NCj4gICANCj4gLS0gIFRvIGNyZWF0ZSBhIG5ldyBiaXRtYXAgdGhhdCB0cmFja3Mg Y2hhbmdlcyBpbiAzMktpQiBzZWdtZW50czoNCj4gKy4uIGFkbW9uaXRpb246OiBFeGFtcGxlDQo+ ICAgDQo+IC0uLiBjb2RlOjoganNvbg0KPiArIFRvIGNyZWF0ZSBhIG5ldywgZGlzYWJsZWQgKGBg LXJlY29yZGluZ2BgKSwgdHJhbnNpZW50IGJpdG1hcCB0aGF0IHRyYWNrcw0KPiArIGNoYW5nZXMg aW4gMzJLaUIgc2VnbWVudHM6DQo+ICAgDQo+IC0gICAgeyAiZXhlY3V0ZSI6ICJibG9jay1kaXJ0 eS1iaXRtYXAtYWRkIiwNCj4gLSAgICAgICJhcmd1bWVudHMiOiB7DQo+IC0gICAgICAgICJub2Rl IjogImRyaXZlMCIsDQo+IC0gICAgICAgICJuYW1lIjogImJpdG1hcDAiLA0KPiAtICAgICAgICAi Z3JhbnVsYXJpdHkiOiAzMjc2OA0KPiAtICAgICAgfQ0KPiAtICAgIH0NCj4gKyAuLiBjb2RlOjog anNvbg0KPiAgIA0KPiAtRGVsZXRpb24NCj4gLX5+fn5+fn5+DQo+ICsgIC0+IHsgImV4ZWN1dGUi OiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4g KyAgICAgICAgICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAibmFtZSI6ICJiaXRtYXAx IiwNCj4gKyAgICAgICAgICJncmFudWxhcml0eSI6IDMyNzY4LA0KPiArICAgICAgICAgImRpc2Fi bGVkIjogdHJ1ZQ0KPiArICAgICAgIH0NCj4gKyAgICAgfQ0KPiAgIA0KPiAtLSAgQml0bWFwcyB0 aGF0IGFyZSBmcm96ZW4gY2Fubm90IGJlIGRlbGV0ZWQuDQo+ICsgIDwtIHsgInJldHVybiI6IHt9 IH0NCj4gICANCj4gLS0gIERlbGV0aW5nIHRoZSBiaXRtYXAgZG9lcyBub3QgaW1wYWN0IGFueSBv dGhlciBiaXRtYXBzIGF0dGFjaGVkIHRvIHRoZQ0KPiArRGVsZXRpb246IGJsb2NrLWRpcnR5LWJp dG1hcC1yZW1vdmUNCj4gK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICsN Cj4gK2BibG9jay1kaXJ0eS1iaXRtYXAtcmVtb3ZlDQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5k ZXgtYmxvY2tfMDAyZGRpcnR5XzAwMmRiaXRtYXBfMDAyZHJlbW92ZT5gXzoNCj4gKw0KPiArRGVs ZXRlcyBhIGJpdG1hcC4gQml0bWFwcyB0aGF0IGFyZSBgYCtidXN5YGAgY2Fubm90IGJlIHJlbW92 ZWQuDQo+ICsNCj4gKy0gIERlbGV0aW5nIGEgYml0bWFwIGRvZXMgbm90IGltcGFjdCBhbnkgb3Ro ZXIgYml0bWFwcyBhdHRhY2hlZCB0byB0aGUNCj4gICAgICBzYW1lIG5vZGUsIG5vciBkb2VzIGl0 IGFmZmVjdCBhbnkgYmFja3VwcyBhbHJlYWR5IGNyZWF0ZWQgZnJvbSB0aGlzDQo+IC0gICBub2Rl Lg0KPiArICAgYml0bWFwIG9yIG5vZGUuDQo+ICAgDQo+ICAgLSAgQmVjYXVzZSBiaXRtYXBzIGFy ZSBvbmx5IHVuaXF1ZSB0byB0aGUgbm9kZSB0byB3aGljaCB0aGV5IGFyZQ0KPiAgICAgIGF0dGFj aGVkLCB5b3UgbXVzdCBzcGVjaWZ5IHRoZSBub2RlL2RyaXZlIG5hbWUgaGVyZSwgdG9vLg0KPiAg IA0KPiAtLi4gY29kZTo6IGpzb24NCj4gKy0gIERlbGV0aW5nIGEgcGVyc2lzdGVudCBiaXRtYXAg d2lsbCByZW1vdmUgaXQgZnJvbSB0aGUgcWNvdzIgZmlsZS4NCj4gICANCj4gLSAgICB7ICJleGVj dXRlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1yZW1vdmUiLA0KPiAtICAgICAgImFyZ3VtZW50cyI6 IHsNCj4gLSAgICAgICAgIm5vZGUiOiAiZHJpdmUwIiwNCj4gLSAgICAgICAgIm5hbWUiOiAiYml0 bWFwMCINCj4gLSAgICAgIH0NCj4gLSAgICB9DQo+ICsuLiBhZG1vbml0aW9uOjogRXhhbXBsZQ0K PiAgIA0KPiAtUmVzZXR0aW5nDQo+IC1+fn5+fn5+fn4NCj4gKyBSZW1vdmUgYSBiaXRtYXAgbmFt ZWQgYGBiaXRtYXAwYGAgZnJvbSBub2RlIGBgZHJpdmUwYGA6DQo+ICAgDQo+IC0tICBSZXNldHRp bmcgYSBiaXRtYXAgd2lsbCBjbGVhciBhbGwgaW5mb3JtYXRpb24gaXQgaG9sZHMuDQo+ICsgLi4g Y29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7ICJleGVjdXRlIjogImJsb2NrLWRpcnR5LWJpdG1h cC1yZW1vdmUiLA0KPiArICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICsgICAgICAgICAibm9kZSI6 ICJkcml2ZTAiLA0KPiArICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICB9DQo+ ICsgICAgIH0NCj4gKw0KPiArICA8LSB7ICJyZXR1cm4iOiB7fSB9DQo+ICsNCj4gK1Jlc2V0dGlu ZzogYmxvY2stZGlydHktYml0bWFwLWNsZWFyDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fg0KPiArDQo+ICtgYmxvY2stZGlydHktYml0bWFwLWNsZWFyDQo+ICs8cWVtdS1x bXAtcmVmLmh0bWwjaW5kZXgtYmxvY2tfMDAyZGRpcnR5XzAwMmRiaXRtYXBfMDAyZGNsZWFyPmBf Og0KPiArDQo+ICtDbGVhcnMgYWxsIGRpcnR5IGJpdHMgZnJvbSBhIGJpdG1hcC4gYGArYnVzeWBg IGJpdG1hcHMgY2Fubm90IGJlIGNsZWFyZWQuDQo+ICAgDQo+ICAgLSAgQW4gaW5jcmVtZW50YWwg YmFja3VwIGNyZWF0ZWQgZnJvbSBhbiBlbXB0eSBiaXRtYXAgd2lsbCBjb3B5IG5vIGRhdGEsDQo+ ICAgICAgYXMgaWYgbm90aGluZyBoYXMgY2hhbmdlZC4NCj4gICANCj4gLS4uIGNvZGU6OiBqc29u DQo+IC0NCj4gLSAgICB7ICJleGVjdXRlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1jbGVhciIsDQo+ IC0gICAgICAiYXJndW1lbnRzIjogew0KPiAtICAgICAgICAibm9kZSI6ICJkcml2ZTAiLA0KPiAt ICAgICAgICAibmFtZSI6ICJiaXRtYXAwIg0KPiAtICAgICAgfQ0KPiAtICAgIH0NCj4gKy4uIGFk bW9uaXRpb246OiBFeGFtcGxlDQo+ICsNCj4gKyBDbGVhciBhbGwgZGlydHkgYml0cyBmcm9tIGJp dG1hcCBgYGJpdG1hcDBgYCBvbiBub2RlIGBgZHJpdmUwYGA6DQo+ICsNCj4gKyAuLiBjb2RlOjog anNvbg0KPiArDQo+ICsgIC0+IHsgImV4ZWN1dGUiOiAiYmxvY2stZGlydHktYml0bWFwLWNsZWFy IiwNCj4gKyAgICAgICAiYXJndW1lbnRzIjogew0KPiArICAgICAgICAgIm5vZGUiOiAiZHJpdmUw IiwNCj4gKyAgICAgICAgICJuYW1lIjogImJpdG1hcDAiDQo+ICsgICAgICAgfQ0KPiArICAgICB9 DQo+ICsNCj4gKyAgPC0geyAicmV0dXJuIjoge30gfQ0KPiArDQo+ICtFbmFibGluZzogYmxvY2st ZGlydHktYml0bWFwLWVuYWJsZQ0KPiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4NCj4gKw0KPiArYGJsb2NrLWRpcnR5LWJpdG1hcC1lbmFibGUNCj4gKzxxZW11LXFtcC1yZWYu aHRtbCNpbmRleC1ibG9ja18wMDJkZGlydHlfMDAyZGJpdG1hcF8wMDJkZW5hYmxlPmBfOg0KPiAr DQo+ICsiRW5hYmxlcyIgYSBiaXRtYXAsIHNldHRpbmcgdGhlIGBgcmVjb3JkaW5nYGAgYml0IHRv IHRydWUsIGNhdXNpbmcgZ3Vlc3Qgd3JpdGVzDQoNCm1heSBiZSBub3QgZ3Vlc3QsIGJ1dCBhbnkg d3JpdGVzIHRvIHRoZSBub2RlDQoNCj4gK3RvIGJlZ2luIGJlaW5nIHJlY29yZGVkLiBgYCtidXN5 YGAgYml0bWFwcyBjYW5ub3QgYmUgZW5hYmxlZC4NCg0KaG1tLCB5b3UgbmV2ZXIgbWVudGlvbnMg dGhhdCAraW5jb25zaXN0ZW50IGFsc28gcmVzdHJpY3QgbW9zdCBvZiBvcGVydGFpb25zDQoNCj4g Kw0KPiArLSBCaXRtYXBzIGRlZmF1bHQgdG8gYmVpbmcgZW5hYmxlZCB3aGVuIGNyZWF0ZWQsIHVu bGVzcyBjb25maWd1cmVkIG90aGVyd2lzZS4NCj4gKw0KPiArLSBQZXJzaXN0ZW50IGVuYWJsZWQg Yml0bWFwcyB3aWxsIHJlbWVtYmVyIHRoZWlyIGBgK3JlY29yZGluZ2BgIHN0YXR1cyBvbiBsb2Fk Lg0KPiArDQo+ICsuLiBhZG1vbml0aW9uOjogRXhhbXBsZQ0KPiArDQo+ICsgVG8gc2V0IGBgK3Jl Y29yZGluZ2BgIG9uIGJpdG1hcCBgYGJpdG1hcDBgYCBvbiBub2RlIGBgZHJpdmUwYGA6DQo+ICsN Cj4gKyAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgIC0+IHsgImV4ZWN1dGUiOiAiYmxvY2stZGly dHktYml0bWFwLWVuYWJsZSIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAgICAgICAg ICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAibmFtZSI6ICJiaXRtYXAwIg0KPiArICAg ICAgIH0NCj4gKyAgICAgfQ0KPiArDQo+ICsgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiAr RW5hYmxpbmc6IGJsb2NrLWRpcnR5LWJpdG1hcC1kaXNhYmxlDQo+ICt+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gKw0KPiArYGJsb2NrLWRpcnR5LWJpdG1hcC1kaXNhYmxl DQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5kZXgtYmxvY2tfMDAyZGRpcnR5XzAwMmRiaXRtYXBf MDAyZGRpc2FibGU+YF86DQo+ICsNCj4gKyJEaXNhYmxlcyIgYSBiaXRtYXAsIHNldHRpbmcgdGhl IGBgcmVjb3JkaW5nYGAgYml0IHRvIGZhbHNlLCBjYXVzaW5nIGZ1cnRoZXINCj4gK2d1ZXN0IHdy aXRlcyB0byBiZWdpbiBiZWluZyBpZ25vcmVkLiBgYCtidXN5YGAgYml0bWFwcyBjYW5ub3QgYmUg ZGlzYWJsZWQuDQoNCnNhbWUgY29tbWVudHMgaGVyZQ0KDQo+ICsNCj4gKy4uIHdhcm5pbmc6Og0K PiArDQo+ICsgIFRoaXMgaXMgcG90ZW50aWFsbHkgZGFuZ2Vyb3VzOiBRRU1VIG1ha2VzIG5vIGVm Zm9ydCB0byBzdG9wIGFueSBndWVzdCB3cml0ZXMNCj4gKyAgaWYgdGhlcmUgYXJlIGRpc2FibGVk IGJpdG1hcHMgb24gYSBkcml2ZSwgYW5kIHdpbGwgbm90IG1hcmsgYW55IGRpc2FibGVkDQo+ICsg IGJpdG1hcHMgYXMgYGAraW5jb25zaXN0ZW50YGAgaWYgYW55IHN1Y2ggd3JpdGVzIGRvIGhhcHBl bi4gQmFja3VwcyBtYWRlIGZyb20NCj4gKyAgc3VjaCBiaXRtYXBzIHdpbGwgbm90IGJlIGFibGUg dG8gYmUgdXNlZCB0byByZWNvbnN0cnVjdCBhIGZ1bGwgZ3Vlc3QgaW1hZ2UuDQo+ICsNCj4gKy0g RGlzYWJsaW5nIGEgYml0bWFwIG1heSBiZSB1c2VmdWwgZm9yIGV4YW1pbmluZyB3aGljaCBzZWN0 b3JzIG9mIGEgZGlzayBjaGFuZ2VkDQo+ICsgIGR1cmluZyBhIHNwZWNpZmljIHRpbWUgcGVyaW9k LCBvciBmb3IgZXhwbGljaXQgbWFuYWdlbWVudCBvZiBkaWZmZXJlbnRpYWwNCj4gKyAgYmFja3Vw IHdpbmRvd3MuDQo+ICsNCj4gKy0gUGVyc2lzdGVudCBkaXNhYmxlZCBiaXRtYXBzIHdpbGwgcmVt ZW1iZXIgdGhlaXIgYGAtcmVjb3JkaW5nYGAgc3RhdHVzIG9uIGxvYWQuDQo+ICsNCj4gKy4uIGFk bW9uaXRpb246OiBFeGFtcGxlDQo+ICsNCj4gKyBUbyBzZXQgYGAtcmVjb3JkaW5nYGAgb24gYml0 bWFwIGBgYml0bWFwMGBgIG9uIG5vZGUgYGBkcml2ZTBgYDoNCj4gKw0KPiArIC4uIGNvZGU6OiBq c29uDQo+ICsNCj4gKyAgLT4geyAiZXhlY3V0ZSI6ICJibG9jay1kaXJ0eS1iaXRtYXAtZGlzYWJs ZSIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAgICAgICAgICJub2RlIjogImRyaXZl MCIsDQo+ICsgICAgICAgICAibmFtZSI6ICJiaXRtYXAwIg0KPiArICAgICAgIH0NCj4gKyAgICAg fQ0KPiArDQo+ICsgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiArTWVyZ2luZywgQ29weWlu ZzogYmxvY2stZGlydHktYml0bWFwLW1lcmdlDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4NCj4gKw0KPiArYGJsb2NrLWRpcnR5LWJpdG1hcC1tZXJnZQ0KPiAr PHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LWJsb2NrXzAwMmRkaXJ0eV8wMDJkYml0bWFwXzAwMmRt ZXJnZT5gXzoNCj4gKw0KPiArTWVyZ2VzIG9uZSBvciBtb3JlIGJpdG1hcHMgaW50byBhIHRhcmdl dCBiaXRtYXAuIEZvciBhbnkgc2VnbWVudCB0aGF0IGlzIGRpcnR5DQo+ICtpbiBhbnkgb25lIHNv dXJjZSBiaXRtYXAsIHRoZSB0YXJnZXQgYml0bWFwIHdpbGwgbWFyayB0aGF0IHNlZ21lbnQgZGly dHkuDQo+ICsNCj4gKy0gTWVyZ2UgdGFrZXMgb25lIG9yIG1vcmUgYml0bWFwcyBhcyBhIHNvdXJj ZSBhbmQgY29waWVzIHRoZW0gaW50byBhIHNpbmdsZQ0KPiArICBkZXN0aW5hdGlvbi4NCg0KZGlz YWdyZWUgd2l0aCB0ZXJtICJjb3BpZXMiIGhlcmUuLiBjb3B5IGlzIG5vdCBtZXJnZS4NCg0KPiAr DQo+ICstIE1lcmdlIGRvZXMgbm90IGNyZWF0ZSB0aGUgZGVzdGluYXRpb24gYml0bWFwIGlmIGl0 IGRvZXMgbm90IGV4aXN0LiBBIGJsYW5rDQo+ICsgIGJpdG1hcCBjYW4gYmUgY3JlYXRlZCBiZWZv cmVoYW5kIHRvIGFjaGlldmUgdGhlIHNhbWUgZWZmZWN0Lg0KDQooaG1tLCBpbnRlcmVzdGluZywg bWF5IGJlIHdlIHdhbnQgdG8gYWRkIHN1Y2ggYSBmZWF0dXJlKQ0KDQo+ICsNCj4gKy0gVGhlIGRl c3RpbmF0aW9uIGlzIG5vdCBjbGVhcmVkIHByaW9yIHRvIG1lcmdlLCBzbyBzdWJzZXF1ZW50IG1l cmdlIG9wZXJhdGlvbnMNCj4gKyAgd2lsbCBjb250aW51ZSB0byBjdW11bGF0aXZlbHkgbWFyayBt b3JlIHNlZ21lbnRzIGFzIGRpcnR5Lg0KPiArDQo+ICstIElmIHRoZSBtZXJnZSBvcGVyYXRpb24g c2hvdWxkIGZhaWwsIHRoZSBkZXN0aW5hdGlvbiBiaXRtYXAgaXMgZ3VhcmFudGVlZCB0byBiZQ0K PiArICB1bm1vZGlmaWVkLiBUaGUgb3BlcmF0aW9uIG1heSBmYWlsIGlmIHRoZSBzb3VyY2Ugb3Ig ZGVzdGluYXRpb24gYml0bWFwcyBhcmUNCj4gKyAgYnVzeSwgb3IgaGF2ZSBkaWZmZXJlbnQgZ3Jh bnVsYXJpdGllcy4NCj4gKw0KPiArLSBCaXRtYXBzIGNhbiBvbmx5IGJlIG1lcmdlZCBvbiB0aGUg c2FtZSBub2RlLiBUaGVyZSBpcyBvbmx5IG9uZSAibm9kZSINCj4gKyAgYXJndW1lbnQsIHNvIGFs bCBiaXRtYXBzIG11c3QgYmUgYXR0YWNoZWQgdG8gdGhhdCBzYW1lIG5vZGUuDQo+ICsNCj4gKy0g Q29weSBjYW4gYmUgYWNoaWV2ZWQgYnkgbWVyZ2luZyBmcm9tIGEgc2luZ2xlIHNvdXJjZSB0byBh biBlbXB0eSBkZXN0aW5hdGlvbi4NCj4gKw0KPiArLi4gYWRtb25pdGlvbjo6IEV4YW1wbGUNCj4g Kw0KPiArIE1lcmdlIHRoZSBkYXRhIGZyb20gYGBiaXRtYXAwYGAgaW50byB0aGUgYml0bWFwIGBg bmV3X2JpdG1hcGBgIG9uIG5vZGUNCj4gKyBgYGRyaXZlMGBgLiBJZiBgYG5ld19iaXRtYXBgYCB3 YXMgZW1wdHkgcHJpb3IgdG8gdGhpcyBjb21tYW5kLCB0aGlzIGFjaGlldmVzIGENCj4gKyBjb3B5 Lg0KPiArDQo+ICsgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7ICJleGVjdXRlIjogImJs b2NrLWRpcnR5LWJpdG1hcC1tZXJnZSIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAg ICAgICAgICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAidGFyZ2V0IjogIm5ld19iaXRt YXAiLA0KPiArICAgICAgICAgImJpdG1hcHM6IFsgImJpdG1hcDAiIF0NCj4gKyAgICAgICB9DQo+ ICsgICAgIH0NCj4gKw0KPiArICA8LSB7ICJyZXR1cm4iOiB7fSB9DQo+ICsNCj4gK1F1ZXJ5aW5n OiBxdWVyeS1ibG9jaw0KPiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICsNCj4gK2BxdWVyeS1i bG9jaw0KPiArPHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LXF1ZXJ5XzAwMmRibG9jaz5gXzoNCj4g Kw0KPiArTm90IHN0cmljdGx5IGEgYml0bWFwcyBjb21tYW5kLCBidXQgd2lsbCByZXR1cm4gaW5m b3JtYXRpb24gYWJvdXQgYW55IGJpdG1hcHMNCj4gK2F0dGFjaGVkIHRvIG5vZGVzIHNlcnZpbmcg YXMgdGhlIHJvb3QgZm9yIGd1ZXN0IGRldmljZXMuDQoNCm5vdCBmb3IgYWxsIG5vZGVzPw0KDQo+ ICsNCj4gKy0gVGhlICJpbmNvbnNpc3RlbnQiIGJpdCB3aWxsIG5vdCBhcHBlYXIgd2hlbiBpdCBp cyBmYWxzZSwgYXBwZWFyaW5nIG9ubHkgd2hlbg0KPiArICB0aGUgdmFsdWUgaXMgdHJ1ZSB0byBp bmRpY2F0ZSB0aGVyZSBpcyBhIHByb2JsZW0uDQo+ICsNCj4gKy4uIGFkbW9uaXRpb246OiBFeGFt cGxlDQo+ICsNCj4gKyBRdWVyeSB0aGUgYmxvY2sgc3ViLXN5c3RlbSBvZiBRRU1VLiBUaGUgZm9s bG93aW5nIGpzb24gaGFzIHRyaW1tZWQgaXJyZWxldmFudA0KPiArIGtleXMgZnJvbSB0aGUgcmVz cG9uc2UgdG8gaGlnaGxpZ2h0IG9ubHkgdGhlIGJpdG1hcC1yZWxldmFudCBwb3J0aW9ucyBvZiB0 aGUNCj4gKyBBUEkuIFRoaXMgcmVzdWx0IGhpZ2hsaWdodHMgYSBiaXRtYXAgYGBiaXRtYXAwYGAg YXR0YWNoZWQgdG8gdGhlIHJvb3Qgbm9kZSBvZg0KPiArIGRldmljZSBgYGRyaXZlMGBgLg0KPiAr DQo+ICsgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7DQo+ICsgICAgICAgImV4ZWN1dGUi OiAicXVlcnktYmxvY2siLA0KPiArICAgICAgICJhcmd1bWVudHMiOiB7fQ0KPiArICAgICB9DQo+ ICsNCj4gKyAgPC0gew0KPiArICAgICAgICJyZXR1cm4iOiBbIHsNCj4gKyAgICAgICAgICJkaXJ0 eS1iaXRtYXBzIjogWyB7DQo+ICsgICAgICAgICAgICJzdGF0dXMiOiAiYWN0aXZlIiwNCj4gKyAg ICAgICAgICAgImNvdW50IjogMCwNCj4gKyAgICAgICAgICAgImJ1c3kiOiBmYWxzZSwNCj4gKyAg ICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCIsDQo+ICsgICAgICAgICAgICJwZXJzaXN0ZW50Ijog ZmFsc2UsDQo+ICsgICAgICAgICAgICJyZWNvcmRpbmciOiB0cnVlLA0KPiArICAgICAgICAgICAi Z3JhbnVsYXJpdHkiOiA2NTUzNg0KPiArICAgICAgICAgfSBdLA0KPiArICAgICAgICAgImRldmlj ZSI6ICJkcml2ZTAiLA0KPiArICAgICAgIH0gXQ0KPiArICAgICB9DQo+ICsNCj4gK0JpdG1hcCBQ ZXJzaXN0ZW5jZQ0KPiArLS0tLS0tLS0tLS0tLS0tLS0tDQo+ICsNCj4gK0FzIG91dGxpbmVkIGlu IGBTdXBwb3J0ZWQgSW1hZ2UgRm9ybWF0c2BfLCBRRU1VIGNhbiBwZXJzaXN0IGJpdG1hcHMgdG8g cWNvdzINCj4gK2ZpbGVzLiBEZW1vbnN0cmF0ZWQgaW4gYENyZWF0aW9uOiBibG9jay1kaXJ0eS1i aXRtYXAtYWRkYF8sIHBhc3NpbmcNCj4gK2BgcGVyc2lzdGVudDogdHJ1ZWBgIHRvIGBgYmxvY2st ZGlydHktYml0bWFwLWFkZGBgIHdpbGwgcGVyc2lzdCB0aGF0IGJpdG1hcCB0bw0KPiArZGlzay4N Cj4gKw0KPiArUGVyc2lzdGVudCBiaXRtYXBzIHdpbGwgYmUgYXV0b21hdGljYWxseSBsb2FkZWQg aW50byBtZW1vcnkgdXBvbiBsb2FkLCBhbmQgd2lsbA0KPiArYmUgd3JpdHRlbiBiYWNrIHRvIGRp c2sgdXBvbiBjbG9zZS4gVGhlaXIgdXNhZ2Ugc2hvdWxkIGJlIG1vc3RseSB0cmFuc3BhcmVudC4N Cj4gKw0KPiArSG93ZXZlciwgaWYgUUVNVSBkb2VzIG5vdCBnZXQgYSBjaGFuY2UgdG8gY2xvc2Ug dGhlIGZpbGUgY2xlYW5seSwgdGhlIGJpdG1hcA0KPiArd2lsbCBiZSBtYXJrZWQgYXMgYGAraW5j b25zaXN0ZW50YGAgYW5kIGNvbnNpZGVyZWQgdW5zYWZlIHRvIHVzZSBmb3IgYW55DQo+ICtvcGVy YXRpb24uIEF0IHRoaXMgcG9pbnQsIHRoZSBvbmx5IHZhbGlkIG9wZXJhdGlvbiBvbiBzdWNoIGJp dG1hcHMgaXMNCj4gK2BgYmxvY2stZGlydHktYml0bWFwLXJlbW92ZWBgLg0KDQpOb3QgZXhhY3Rs eS4gSWYgd2UgZmFpbGVkIHRvIHNhdmUgYml0bWFwLCB0aGFuIHdlIHdpbGwgbm90IGNsZWFyIElO X1VTRSBiaXQgZnJvbSBxY293Mg0KZm9yIHRoaXMgYml0bWFwLCBhbmQgb24gX25leHRfIGxvYWQg cWVtdSB3aWxsIG1hcmsgdGhlIGJpdG1hcCBhcyBgYCtpbmNvbnNpc3RlbnRgYC4NCg0KPiArDQo+ ICtMb3NpbmcgYSBiaXRtYXAgaW4gdGhpcyB3YXkgZG9lcyBub3QgaW52YWxpZGF0ZSBhbnkgZXhp c3RpbmcgYml0bWFwcyB0aGF0IGhhdmUNCj4gK2JlZW4gbWFkZSwgYnV0IG5vIGZ1cnRoZXIgYmFj a3VwcyB3aWxsIGJlIGFibGUgdG8gYmUgaXNzdWVkIGZvciB0aGlzIGNoYWluLg0KDQpBbmQgeW91 IHNhaWQgbm90aGluZyBhYm91dCBhbnkgY2hhaW5zIGJlZm9yZS4uIE9oLCBpdCBzb3VuZHMgYmV0 dGVyIHdoZW4gSSB1bmRlcnN0YW5kDQp0aGF0IHMvZXhpc3RpbmcgYml0bWFwcy9leGlzdGluZyBi YWNrdXBzLw0KDQo+ICAgDQo+ICAgVHJhbnNhY3Rpb25zDQo+ICAgLS0tLS0tLS0tLS0tDQo+ICAg DQo+ICtUcmFuc2FjdGlvbnMgYXJlIGEgUU1QIGZlYXR1cmUgdGhhdCBhbGxvd3MgeW91IHRvIHN1 Ym1pdCBtdWx0aXBsZSBRTVAgY29tbWFuZHMNCj4gK2F0IG9uY2UsIGJlaW5nIGd1YXJhbnRlZWQg dGhhdCB0aGV5IHdpbGwgYWxsIHN1Y2NlZWQgb3IgZmFpbCBhdG9taWNhbGx5LA0KPiArdG9nZXRo ZXIuIFRoZSBpbnRlcmFjdGlvbiBvZiBiaXRtYXBzIGFuZCB0cmFuc2FjdGlvbnMgYXJlIGRlbW9u c3RyYXRlZCBiZWxvdy4NCj4gKw0KPiArU2VlIGB0cmFuc2FjdGlvbiA8cWVtdS1xbXAucmVmLmh0 bWwjaW5kZXgtdHJhbnNhY3Rpb24+YF8gaW4gdGhlIFFNUCByZWZlcmVuY2UNCj4gK2ZvciBtb3Jl IGRldGFpbHMuDQo+ICsNCj4gICBKdXN0aWZpY2F0aW9uDQo+ICAgfn5+fn5+fn5+fn5+fg0KPiAg IA0KPiAtQml0bWFwcyBjYW4gYmUgc2FmZWx5IG1vZGlmaWVkIHdoZW4gdGhlIFZNIGlzIHBhdXNl ZCBvciBoYWx0ZWQgYnkgdXNpbmcNCj4gLXRoZSBiYXNpYyBRTVAgY29tbWFuZHMuIEZvciBpbnN0 YW5jZSwgeW91IG1pZ2h0IHBlcmZvcm0gdGhlIGZvbGxvd2luZw0KPiAtYWN0aW9uczoNCj4gK0Jp dG1hcHMgY2FuIGdlbmVyYWxseSBiZSBtb2RpZmllZCBhdCBhbnkgdGltZSwgYnV0IGNlcnRhaW4g b3BlcmF0aW9ucyBvZnRlbiBvbmx5DQo+ICttYWtlIHNlbnNlIHdoZW4gcGFpcmVkIGRpcmVjdGx5 IHdpdGggb3RoZXIgY29tbWFuZHMuIFdoZW4gYSBWTSBpcyBwYXVzZWQsIGl0J3MNCj4gK2Vhc3kg dG8gZW5zdXJlIHRoYXQgbm8gZ3Vlc3Qgd3JpdGVzIG9jY3VyIGJldHdlZW4gaW5kaXZpZHVhbCBR TVAgY29tbWFuZHMuIFdoZW4NCj4gK2EgVk0gaXMgcnVubmluZywgdGhpcyBpcyBkaWZmaWN1bHQg dG8gYWNjb21wbGlzaCB3aXRoIGluZGl2aWR1YWwgUU1QIGNvbW1hbmRzDQo+ICt0aGF0IG1heSBh bGxvdyBndWVzdCB3cml0ZXMgdG8gb2NjdXIgaW5iZXR3ZWVuIGVhY2ggY29tbWFuZC4NCj4gICAN Cj4gLTEuIEJvb3QgdGhlIFZNIGluIGEgcGF1c2VkIHN0YXRlLg0KPiAtMi4gQ3JlYXRlIGEgZnVs bCBkcml2ZSBiYWNrdXAgb2YgZHJpdmUwLg0KPiAtMy4gQ3JlYXRlIGEgbmV3IGJpdG1hcCBhdHRh Y2hlZCB0byBkcml2ZTAuDQo+IC00LiBSZXN1bWUgZXhlY3V0aW9uIG9mIHRoZSBWTS4NCj4gLTUu IEluY3JlbWVudGFsIGJhY2t1cHMgYXJlIHJlYWR5IHRvIGJlIGNyZWF0ZWQuDQo+ICtGb3IgZXhh bXBsZSwgdXNpbmcgb25seSBpbmRpdmlkdWFsIFFNUCBjb21tYW5kcywgd2UgY291bGQ6DQo+ICsN Cj4gKyMuIEJvb3QgdGhlIFZNIGluIGEgcGF1c2VkIHN0YXRlLg0KPiArIy4gQ3JlYXRlIGEgZnVs bCBkcml2ZSBiYWNrdXAgb2YgZHJpdmUwLg0KPiArIy4gQ3JlYXRlIGEgbmV3IGJpdG1hcCBhdHRh Y2hlZCB0byBkcml2ZTAsIGNvbmZpZGVudCB0aGF0IG5vdGhpbmcgaGFzIGJlZW4NCj4gKyAgIHdy aXR0ZW4gdG8gZHJpdmUwIGluIHRoZSBtZWFudGltZS4NCj4gKyMuIFJlc3VtZSBleGVjdXRpb24g b2YgdGhlIFZNLg0KPiArIy4gQXQgYSBsYXRlciBwb2ludCwgaXNzdWUgaW5jcmVtZW50YWwgYmFj a3VwcyBmcm9tIGBgYml0bWFwMGBgLg0KPiAgIA0KPiAgIEF0IHRoaXMgcG9pbnQsIHRoZSBiaXRt YXAgYW5kIGRyaXZlIGJhY2t1cCB3b3VsZCBiZSBjb3JyZWN0bHkgaW4gc3luYywNCj4gICBhbmQg aW5jcmVtZW50YWwgYmFja3VwcyBtYWRlIGZyb20gdGhpcyBwb2ludCBmb3J3YXJkIHdvdWxkIGJl IGNvcnJlY3RseQ0KPiBAQCAtMTQwLDQxNiArNDkzLDk0NiBAQCBUaGlzIGlzIG5vdCBwYXJ0aWN1 bGFybHkgdXNlZnVsIGlmIHdlIGRlY2lkZSB3ZSB3YW50IHRvIHN0YXJ0DQo+ICAgaW5jcmVtZW50 YWwgYmFja3VwcyBhZnRlciB0aGUgVk0gaGFzIGJlZW4gcnVubmluZyBmb3IgYSB3aGlsZSwgZm9y IHdoaWNoDQo+ICAgd2Ugd2lsbCBuZWVkIHRvIHBlcmZvcm0gYWN0aW9ucyBzdWNoIGFzIHRoZSBm b2xsb3dpbmc6DQo+ICAgDQo+IC0xLiBCb290IHRoZSBWTSBhbmQgYmVnaW4gZXhlY3V0aW9uLg0K PiAtMi4gVXNpbmcgYSBzaW5nbGUgdHJhbnNhY3Rpb24sIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBv cGVyYXRpb25zOg0KPiArIy4gQm9vdCB0aGUgVk0gYW5kIGJlZ2luIGV4ZWN1dGlvbi4NCj4gKyMu IFVzaW5nIGEgc2luZ2xlIHRyYW5zYWN0aW9uLCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgb3BlcmF0 aW9uczoNCj4gICANCj4gICAgICAtICBDcmVhdGUgYGBiaXRtYXAwYGAuDQo+ICAgICAgLSAgQ3Jl YXRlIGEgZnVsbCBkcml2ZSBiYWNrdXAgb2YgYGBkcml2ZTBgYC4NCj4gICANCj4gLTMuIEluY3Jl bWVudGFsIGJhY2t1cHMgYXJlIG5vdyByZWFkeSB0byBiZSBjcmVhdGVkLg0KPiArIy4gQXQgYSBs YXRlciBwb2ludCwgaXNzdWUgaW5jcmVtZW50YWwgYmFja3VwcyBmcm9tIGBgYml0bWFwMGBgLg0K DQoNCkludGVyZXN0aW5nIHdpbGwgaXQgd29yayBqdXN0IHdpdGhvdXQgYSB0cmFuc2FjdGlvbiwg Y3JlYXRlIGJpdG1hcCBmaXJzdCwgYW5kIHRoZW4gZnVsbCBiYWNrdXA/DQpJZiB3ZSdsbCBoYXZl IGFueSBpbnRlcm1lZGlhdGUgd3JpdGVzLCB0aGV5IHdpbGwgaW5jcmVhc2UgZXh0cmEgZGF0YSBp biBmaXJzdCBpbmNyZW1lbnRhbCBiYWNrdXANCmJpdCBpdCBpcyBub3Qgd3JvbmcuIEkgb25seSBk b3VidCBhYm91dCBzb21lIHVuZmluaXNoZWQgcmVxdWVzdHMuLiBEb2VzIHRyYW5zYWN0aW9uIGdp dmUgdXMNCmRyYWluZWQgcG9pbnQgYW5kIGRvIHdlIHJlYWxseSBuZWVkIGl0Pw0KDQo+ICAgDQo+ ICAgU3VwcG9ydGVkIEJpdG1hcCBUcmFuc2FjdGlvbnMNCj4gICB+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fg0KPiAgIA0KPiAgIC0gIGBgYmxvY2stZGlydHktYml0bWFwLWFkZGBgDQo+ICAg LSAgYGBibG9jay1kaXJ0eS1iaXRtYXAtY2xlYXJgYA0KPiArLSAgYGBibG9jay1kaXJ0eS1iaXRt YXAtZW5hYmxlYGANCj4gKy0gIGBgYmxvY2stZGlydHktYml0bWFwLWRpc2FibGVgYA0KPiArLSAg YGBibG9jay1kaXJ0eS1iaXRtYXAtbWVyZ2VgYA0KPiAgIA0KPiAtVGhlIHVzYWdlcyBhcmUgaWRl bnRpY2FsIHRvIHRoZWlyIHJlc3BlY3RpdmUgUU1QIGNvbW1hbmRzLCBidXQgc2VlIGJlbG93DQo+ IC1mb3IgZXhhbXBsZXMuDQo+ICtUaGUgdXNhZ2VzIGZvciB0aGVzZSBjb21tYW5kcyBhcmUgaWRl bnRpY2FsIHRvIHRoZWlyIHJlc3BlY3RpdmUgUU1QIGNvbW1hbmRzLA0KPiArYnV0IHNlZSB0aGUg ZXhhbXBsZXMgaW4gdGhlIHNlY3Rpb25zIGJlbG93IGZvciBjb25jcmV0ZSBleGFtcGxlcy4NCg0K c2VlIGV4YW1wbGVzIGZvciBleGFtcGxlcw0KDQo+ICAgDQo+IC1FeGFtcGxlOiBOZXcgSW5jcmVt ZW50YWwgQmFja3VwDQo+IC1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICtJbmNy ZW1lbnRhbCBCYWNrdXBzIC0gUHVzaCBNb2RlbA0KPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NCj4gICANCj4gLUFzIG91dGxpbmVkIGluIHRoZSBqdXN0aWZpY2F0aW9uLCBwZXJo YXBzIHdlIHdhbnQgdG8gY3JlYXRlIGEgbmV3DQo+IC1pbmNyZW1lbnRhbCBiYWNrdXAgY2hhaW4g YXR0YWNoZWQgdG8gYSBkcml2ZS4NCj4gK0luY3JlbWVudGFsIGJhY2t1cHMgYXJlIHNpbXBseSBw YXJ0aWFsIGRpc2sgaW1hZ2VzIHRoYXQgY2FuIGJlIGNvbWJpbmVkIHdpdGgNCj4gK290aGVyIHBh cnRpYWwgZGlzayBpbWFnZXMgb24gdG9wIG9mIGEgYmFzZSBpbWFnZSB0byByZWNvbnN0cnVjdCBh IGZ1bGwgYmFja3VwDQo+ICtmcm9tIHRoZSBwb2ludCBpbiB0aW1lIGF0IHdoaWNoIHRoZSBpbmNy ZW1lbnRhbCBiYWNrdXAgd2FzIGlzc3VlZC4NCj4gICANCj4gLS4uIGNvZGU6OiBqc29uDQo+ICtU aGUgIlB1c2ggTW9kZWwiIGhlcmUgcmVmZXJlbmNlcyB0aGUgZmFjdCB0aGF0IFFFTVUgaXMgInB1 c2hpbmciIHRoZSBtb2RpZmllZA0KPiArYmxvY2tzIG91dCB0byBhIGRlc3RpbmF0aW9uLiBXZSB3 aWxsIGJlIHVzaW5nIHRoZSBgZHJpdmUtYmFja3VwDQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5k ZXgtZHJpdmVfMDAyZGJhY2t1cD5gXyBhbmQgYGJsb2NrZGV2LWJhY2t1cA0KPiArPHFlbXUtcW1w LXJlZi5odG1sI2luZGV4LWJsb2NrZGV2XzAwMmRiYWNrdXA+YF8gUU1QIGNvbW1hbmRzIHRvIGNy ZWF0ZSBib3RoDQo+ICtmdWxsIGFuZCBpbmNyZW1lbnRhbCBiYWNrdXBzLg0KPiAgIA0KPiAtICAg IHsgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiAtICAgICAgImFyZ3VtZW50cyI6IHsNCj4g LSAgICAgICAgImFjdGlvbnMiOiBbDQo+IC0gICAgICAgICAgeyJ0eXBlIjogImJsb2NrLWRpcnR5 LWJpdG1hcC1hZGQiLA0KPiAtICAgICAgICAgICAiZGF0YSI6IHsibm9kZSI6ICJkcml2ZTAiLCAi bmFtZSI6ICJiaXRtYXAwIn0gfSwNCj4gLSAgICAgICAgICB7InR5cGUiOiAiZHJpdmUtYmFja3Vw IiwNCj4gLSAgICAgICAgICAgImRhdGEiOiB7ImRldmljZSI6ICJkcml2ZTAiLCAidGFyZ2V0Ijog Ii9wYXRoL3RvL2Z1bGxfYmFja3VwLmltZyIsDQo+IC0gICAgICAgICAgICAgICAgICAgICJzeW5j IjogImZ1bGwiLCAiZm9ybWF0IjogInFjb3cyIn0gfQ0KPiAtICAgICAgICBdDQo+IC0gICAgICB9 DQo+IC0gICAgfQ0KPiArQm90aCBvZiB0aGVzZSBjb21tYW5kcyBhcmUgam9icywgd2hpY2ggaGF2 ZSB0aGVpciBvd24gUU1QIEFQSSBmb3IgcXVlcnlpbmcgYW5kDQo+ICttYW5hZ2VtZW50IGRvY3Vt ZW50ZWQgaW4gYEJhY2tncm91bmQgam9icw0KPiArPHFlbXUtcW1wLXJlZi5odG1sI0JhY2tncm91 bmQtam9icz5gXy4NCj4gICANCj4gICBFeGFtcGxlOiBOZXcgSW5jcmVtZW50YWwgQmFja3VwIEFu Y2hvciBQb2ludA0KPiAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+DQo+ICAgDQo+IC1NYXliZSB3ZSBqdXN0IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGZ1bGwgYmFj a3VwIHdpdGggYW4gZXhpc3RpbmcgYml0bWFwDQo+IC1hbmQgd2FudCB0byByZXNldCB0aGUgYml0 bWFwIHRvIHRyYWNrIHRoZSBuZXcgY2hhaW4uDQo+ICtBcyBvdXRsaW5lZCBpbiB0aGUgVHJhbnNh Y3Rpb25zIC0gYEp1c3RpZmljYXRpb25gXyBzZWN0aW9uLCBwZXJoYXBzIHdlIHdhbnQgdG8NCj4g K2NyZWF0ZSBhIG5ldyBpbmNyZW1lbnRhbCBiYWNrdXAgY2hhaW4gYXR0YWNoZWQgdG8gYSBkcml2 ZS4NCj4gKw0KPiArVGhpcyBleGFtcGxlIGNyZWF0ZXMgYSBuZXcsIGZ1bGwgYmFja3VwIG9mICJk cml2ZTAiIGFuZCBhY2NvbXBhbmllcyBpdCB3aXRoIGENCj4gK25ldywgZW1wdHkgYml0bWFwIHRo YXQgcmVjb3JkcyBndWVzdCB3cml0ZXMgZnJvbSB0aGlzIHBvaW50IGluIHRpbWUgZm9yd2FyZC4N Cj4gKw0KPiArLi4gbm90ZTo6IEFueSBuZXcgd3JpdGVzIHRoYXQgaGFwcGVuIGFmdGVyIHRoaXMg Y29tbWFuZCBpcyBpc3N1ZWQsIGV2ZW4gd2hpbGUNCj4gKyAgICAgICAgICB0aGUgYmFja3VwIGpv YiBydW5zLCB3aWxsIGJlIHdyaXR0ZW4gbG9jYWxseSBhbmQgbm90IHRvIHRoZSBiYWNrdXANCj4g KyAgICAgICAgICBkZXN0aW5hdGlvbi4gVGhlc2Ugd3JpdGVzIHdpbGwgYmUgcmVjb3JkZWQgaW4g dGhlIGJpdG1hcCBhY2NvcmRpbmdseS4NCj4gICANCj4gICAuLiBjb2RlOjoganNvbg0KPiAgIA0K PiAtICAgIHsgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiAtICAgICAgImFyZ3VtZW50cyI6 IHsNCj4gLSAgICAgICAgImFjdGlvbnMiOiBbDQo+IC0gICAgICAgICAgeyJ0eXBlIjogImJsb2Nr LWRpcnR5LWJpdG1hcC1jbGVhciIsDQo+IC0gICAgICAgICAgICJkYXRhIjogeyJub2RlIjogImRy aXZlMCIsICJuYW1lIjogImJpdG1hcDAifSB9LA0KPiAtICAgICAgICAgIHsidHlwZSI6ICJkcml2 ZS1iYWNrdXAiLA0KPiAtICAgICAgICAgICAiZGF0YSI6IHsiZGV2aWNlIjogImRyaXZlMCIsICJ0 YXJnZXQiOiAiL3BhdGgvdG8vbmV3X2Z1bGxfYmFja3VwLmltZyIsDQo+IC0gICAgICAgICAgICAg ICAgICAgICJzeW5jIjogImZ1bGwiLCAiZm9ybWF0IjogInFjb3cyIn0gfQ0KPiAtICAgICAgICBd DQo+IC0gICAgICB9DQo+IC0gICAgfQ0KPiAtDQo+IC1JbmNyZW1lbnRhbCBCYWNrdXBzDQo+IC0t LS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0NCj4gLVRoZSBzdGFyIG9mIHRoZSBzaG93Lg0KPiAtDQo+ IC0qKk5vdGEgQmVuZSEqKiBPbmx5IGluY3JlbWVudGFsIGJhY2t1cHMgb2YgZW50aXJlIGRyaXZl cyBhcmUgc3VwcG9ydGVkDQo+IC1mb3Igbm93LiBTbyBkZXNwaXRlIHRoZSBmYWN0IHRoYXQgeW91 IGNhbiBhdHRhY2ggYSBiaXRtYXAgdG8gYW55DQo+IC1hcmJpdHJhcnkgbm9kZSwgdGhleSBhcmUg b25seSBjdXJyZW50bHkgdXNlZnVsIHdoZW4gYXR0YWNoZWQgdG8gdGhlIHJvb3QNCj4gLW5vZGUu IFRoaXMgaXMgYmVjYXVzZSBkcml2ZS1iYWNrdXAgb25seSBzdXBwb3J0cyBkcml2ZXMvZGV2aWNl cyBpbnN0ZWFkDQo+IC1vZiBhcmJpdHJhcnkgbm9kZXMuDQo+ICsgIC0+IHsNCj4gKyAgICAgICAi ZXhlY3V0ZSI6ICJ0cmFuc2FjdGlvbiIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAg ICAgICAgICJhY3Rpb25zIjogWw0KPiArICAgICAgICAgICB7DQo+ICsgICAgICAgICAgICAgInR5 cGUiOiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7 DQo+ICsgICAgICAgICAgICAgICAibm9kZSI6ICJkcml2ZTAiLA0KPiArICAgICAgICAgICAgICAg Im5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICAgICAgICB9DQo+ICsgICAgICAgICAgIH0sDQo+ ICsgICAgICAgICAgIHsNCj4gKyAgICAgICAgICAgICAidHlwZSI6ICJkcml2ZS1iYWNrdXAiLA0K PiArICAgICAgICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgICAgICAgImRldmljZSI6ICJk cml2ZTAiLA0KPiArICAgICAgICAgICAgICAgInRhcmdldCI6ICIvcGF0aC90by9mdWxsX2JhY2t1 cC5xY293MiIsDQo+ICsgICAgICAgICAgICAgICAic3luYyI6ICJmdWxsIiwNCj4gKyAgICAgICAg ICAgICAgICJmb3JtYXQiOiAicWNvdzIiDQo+ICsgICAgICAgICAgICAgfQ0KPiArICAgICAgICAg ICB9DQo+ICsgICAgICAgICBdDQo+ICsgICAgICAgfQ0KPiArICAgICB9DQo+ICsNCj4gKyAgPC0g eyAicmV0dXJuIjoge30gfQ0KPiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0YW1wIjog ew0KPiArICAgICAgICAgInNlY29uZHMiOiAxNTU1NDM2OTQ1LA0KPiArICAgICAgICAgIm1pY3Jv c2Vjb25kcyI6IDE3OTYyMA0KPiArICAgICAgIH0sDQo+ICsgICAgICAgImRhdGEiOiB7DQo+ICsg ICAgICAgICAic3RhdHVzIjogImNyZWF0ZWQiLA0KPiArICAgICAgICAgImlkIjogImRyaXZlMCIN Cj4gKyAgICAgICB9LA0KPiArICAgICAgICJldmVudCI6ICJKT0JfU1RBVFVTX0NIQU5HRSINCj4g KyAgICAgfQ0KPiArDQo+ICsgIC4uLg0KPiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0 YW1wIjogey4uLn0sDQo+ICsgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAiZGV2aWNlIjog ImRyaXZlMCIsDQo+ICsgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0KPiArICAgICAgICAgInNw ZWVkIjogMCwNCj4gKyAgICAgICAgICJsZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICJv ZmZzZXQiOiA2ODcxOTQ3NjczNg0KPiArICAgICAgIH0sDQo+ICsgICAgICAgImV2ZW50IjogIkJM T0NLX0pPQl9DT01QTEVURUQiDQo+ICsgICAgIH0NCj4gKw0KPiArICA8LSB7DQo+ICsgICAgICAg InRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgInN0 YXR1cyI6ICJjb25jbHVkZWQiLA0KPiArICAgICAgICAgImlkIjogImRyaXZlMCINCj4gKyAgICAg ICB9LA0KPiArICAgICAgICJldmVudCI6ICJKT0JfU1RBVFVTX0NIQU5HRSINCj4gKyAgICAgfQ0K PiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAg ImRhdGEiOiB7DQo+ICsgICAgICAgICAic3RhdHVzIjogIm51bGwiLA0KPiArICAgICAgICAgImlk IjogImRyaXZlMCINCj4gKyAgICAgICB9LA0KPiArICAgICAgICJldmVudCI6ICJKT0JfU1RBVFVT X0NIQU5HRSINCj4gKyAgICAgfQ0KPiArDQo+ICtBIGZ1bGwgZXhwbGFuYXRpb24gb2YgdGhlIGpv YiB0cmFuc2l0aW9uIHNlbWFudGljcyBhbmQgdGhlIEpPQl9TVEFUVVNfQ0hBTkdFDQo+ICtldmVu dCBhcmUgYmV5b25kIHRoZSBzY29wZSBvZiB0aGlzIGRvY3VtZW50IGFuZCB3aWxsIGJlIG9taXR0 ZWQgaW4gYWxsDQo+ICtzdWJzZXF1ZW50IGV4YW1wbGVzOyBhYm92ZSwgc2V2ZXJhbCBtb3JlIGV2 ZW50cyBoYXZlIGJlZW4gb21pdHRlZCBmb3IgYnJldml0eS4NCj4gKw0KPiArRXZlbnRzIGFib3Zl IGhhdmUgaGFkIHRoZWlyIHRpbWVzdGFtcCBvYmplY3RzIG9taXR0ZWQgZm9yIGJyZXZpdHkuDQoN CignInRpbWVzdGFtcCI6IHsuLi59JyBpcyBvYnZpb3VzIG5vdGF0aW9uLCBhbnl3YXksIGFuZCBh IGJpdCBpbiBjb25mbGljdCB3aXRoIGxhc3QNCnNlbnRlbmNlKQ0KDQo+ICsNCj4gKy4uIG5vdGU6 OiBTdWJzZXF1ZW50IGV4YW1wbGVzIHdpbGwgb21pdCBhbGwgZXZlbnRzIGV4Y2VwdCBCTE9DS19K T0JfQ09NUExFVEVEDQo+ICsgICAgICAgICAgZXhjZXB0IHdoZXJlIG5lY2Vzc2FyeSB0byBpbGx1 c3RyYXRlIHdvcmtmbG93IGRpZmZlcmVuY2VzLg0KPiArDQo+ICsgICAgICAgICAgT21pdHRlZCBl dmVudHMgYW5kIGpzb24gb2JqZWN0cyB3aWxsIGJlIHJlcHJlc2VudGVkIGJ5IGVsbGlwc2VzOg0K PiArICAgICAgICAgIGBgLi4uYGANCj4gKw0KPiArRXhhbXBsZTogUmVzZXR0aW5nIGFuIEluY3Jl bWVudGFsIEJhY2t1cCBBbmNob3IgUG9pbnQNCj4gK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICsNCj4gK0lmIHdlIHdhbnQgdG8gc3RhcnQg YSBuZXcgYmFja3VwIGNoYWluIHdpdGggYW4gZXhpc3RpbmcgYml0bWFwLCB3ZSBjYW4gYWxzbyB1 c2UNCj4gK2EgdHJhbnNhY3Rpb24gdG8gcmVzZXQgdGhlIGJpdG1hcCB3aGlsZSBtYWtpbmcgYSBu ZXcgZnVsbCBiYWNrdXA6DQo+ICsNCj4gKy4uIGNvZGU6OiBqc29uDQo+ICsNCj4gKyAgLT4gew0K PiArICAgICAgICJleGVjdXRlIjogInRyYW5zYWN0aW9uIiwNCj4gKyAgICAgICAiYXJndW1lbnRz Ijogew0KPiArICAgICAgICAgImFjdGlvbnMiOiBbDQo+ICsgICAgICAgICB7DQo+ICsgICAgICAg ICAgICJ0eXBlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1jbGVhciIsDQo+ICsgICAgICAgICAgICJk YXRhIjogew0KPiArICAgICAgICAgICAgICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAg ICAgIm5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICAgICAgfQ0KPiArICAgICAgICAgfSwNCj4g KyAgICAgICAgIHsNCj4gKyAgICAgICAgICAgInR5cGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAg ICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTAiLA0K PiArICAgICAgICAgICAgICJ0YXJnZXQiOiAiL3BhdGgvdG8vbmV3X2Z1bGxfYmFja3VwLnFjb3cy IiwNCj4gKyAgICAgICAgICAgICAic3luYyI6ICJmdWxsIiwNCj4gKyAgICAgICAgICAgICAiZm9y bWF0IjogInFjb3cyIg0KPiArICAgICAgICAgICB9DQo+ICsgICAgICAgICB9DQo+ICsgICAgICAg XQ0KPiArICAgICB9DQo+ICsgICB9DQo+ICsNCj4gKyAgPC0geyAicmV0dXJuIjoge30gfQ0KPiAr DQo+ICsgIC4uLg0KPiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0YW1wIjogey4uLn0s DQo+ICsgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ ICsgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0KPiArICAgICAgICAgInNwZWVkIjogMCwNCj4g KyAgICAgICAgICJsZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICJvZmZzZXQiOiA2ODcx OTQ3NjczNg0KPiArICAgICAgIH0sDQo+ICsgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9DT01Q TEVURUQiDQo+ICsgICAgIH0NCj4gKw0KPiArICAuLi4NCj4gKw0KPiArVGhlIHJlc3VsdCBvZiB0 aGlzIGV4YW1wbGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBmaXJzdCwgYnV0IHdlIGNsZWFyIGFuIGV4 aXN0aW5nDQo+ICtiaXRtYXAgaW5zdGVhZCBvZiBhZGRpbmcgYSBuZXcgb25lLg0KPiArDQo+ICsu LiB0aXA6OiBJbiBib3RoIG9mIHRoZXNlIGV4YW1wbGVzLCAiYml0bWFwMCIgaXMgdGllZCBjb25j ZXB0dWFsbHkgdG8gdGhlDQo+ICsgICAgICAgICBjcmVhdGlvbiBvZiBuZXcsIGZ1bGwgYmFja3Vw cy4gVGhpcyByZWxhdGlvbnNoaXAgaXMgbm90IHNhdmVkIG9yDQo+ICsgICAgICAgICByZW1lbWJl cmVkIGJ5IFFFTVU7IGl0IGlzIHVwIHRvIHRoZSBvcGVyYXRvciBvciBtYW5hZ2VtZW50IGxheWVy IHRvDQo+ICsgICAgICAgICByZW1lbWJlciB3aGljaCBiaXRtYXBzIGFyZSBhc3NvY2lhdGVkIHdp dGggd2hpY2ggYmFja3Vwcy4NCj4gICANCj4gICBFeGFtcGxlOiBGaXJzdCBJbmNyZW1lbnRhbCBC YWNrdXANCj4gICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gICANCj4gLTEu IENyZWF0ZSBhIGZ1bGwgYmFja3VwIGFuZCBzeW5jIGl0IHRvIHRoZSBkaXJ0eSBiaXRtYXAsIGFz IGluIHRoZQ0KPiAtICAgdHJhbnNhY3Rpb25hbCBleGFtcGxlcyBhYm92ZTsgb3Igd2l0aCB0aGUg Vk0gb2ZmbGluZSwgbWFudWFsbHkgY3JlYXRlDQo+IC0gICBhIGZ1bGwgY29weSBhbmQgdGhlbiBj cmVhdGUgYSBuZXcgYml0bWFwIGJlZm9yZSB0aGUgVk0gYmVnaW5zDQo+IC0gICBleGVjdXRpb24u DQo+ICsjLiBDcmVhdGUgYSBmdWxsIGJhY2t1cCBhbmQgc3luYyBpdCB0byB0aGUgZGlydHkgYml0 bWFwIHVzaW5nIGVpdGhlciBvZiB0aGUgdHdvDQo+ICsgICBleGFtcGxlIG1ldGhvZHMgYWJvdmUs IG9yLCB3aXRoIHRoZSBWTSBvZmZsaW5lIGFzIHN1Z2dlc3RlZCBpbiB0aGUNCj4gKyAgIFRyYW5z YWN0aW9ucyBgSnVzdGlmaWNhdGlvbmBfIHNlY3Rpb24sIG1hbnVhbGx5IGNyZWF0ZSBhIGZ1bGwg Y29weSBhbmQgdGhlbg0KPiArICAgY3JlYXRlIGEgbmV3IGJpdG1hcCBiZWZvcmUgdGhlIFZNIGJl Z2lucyBleGVjdXRpb24uDQoNCkp1c3RpZmljYXRpb24gc3VnZ2VzdGVkIG5vdCBleGFjdGx5IHRo aXMsIGJ1dCBzdGFydCBpbiBwYXVzZWQgbW9kZSBhbmQgZG8gZnVsbCBiYWNrdXAuDQpTbywgYWN0 dWFsbHkgbWFudWFsIGNvcHkgd2hlbiBWTSBpcyBvZmZsaW5lLCB0aGVuIHN0YXJ0IGluIHBhdXNl IG1vZGUgYW5kIGNyZWF0ZSBiaXRtYXBzLA0KdGhlbiBzdGFydCAtIGlzIHlldCBhbm90aGVyIG1l dGhvZA0KDQo+ICAgDQo+IC0gICAtICBMZXQncyBhc3N1bWUgdGhlIGZ1bGwgYmFja3VwIGlzIG5h bWVkIGBgZnVsbF9iYWNrdXAuaW1nYGAuDQo+IC0gICAtICBMZXQncyBhc3N1bWUgdGhlIGJpdG1h cCB5b3UgY3JlYXRlZCBpcyBgYGJpdG1hcDBgYCBhdHRhY2hlZCB0bw0KPiArICAgLSBMZXQncyBh c3N1bWUgdGhlIGZ1bGwgYmFja3VwIGlzIG5hbWVkIGBgZnVsbF9iYWNrdXAucWNvdzJgYC4NCj4g KyAgIC0gTGV0J3MgYXNzdW1lIHRoZSBiaXRtYXAgd2UgY3JlYXRlZCBpcyBuYW1lZCBgYGJpdG1h cDBgYCwgYXR0YWNoZWQgdG8NCj4gICAgICAgICBgYGRyaXZlMGBgLg0KPiAgIA0KPiAtMi4gQ3Jl YXRlIGEgZGVzdGluYXRpb24gaW1hZ2UgZm9yIHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgdGhhdCB1 dGlsaXplcw0KPiArIy4gQ3JlYXRlIGEgZGVzdGluYXRpb24gaW1hZ2UgZm9yIHRoZSBpbmNyZW1l bnRhbCBiYWNrdXAgdGhhdCB1dGlsaXplcw0KPiAgICAgIHRoZSBmdWxsIGJhY2t1cCBhcyBhIGJh Y2tpbmcgaW1hZ2UuDQo+ICAgDQo+ICAgICAgLSAgTGV0J3MgYXNzdW1lIHRoZSBuZXcgaW5jcmVt ZW50YWwgaW1hZ2UgaXMgbmFtZWQNCj4gLSAgICAgIGBgaW5jcmVtZW50YWwuMC5pbWdgYC4NCj4g KyAgICAgIGBgaW5jcmVtZW50YWwuMC5xY293MmBgOg0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBi YXNoDQo+ICAgDQo+IC0gICAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50 YWwuMC5pbWcgLWIgZnVsbF9iYWNrdXAuaW1nIC1GIHFjb3cyDQo+ICsgICAgICAgJCBxZW11LWlt ZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50YWwuMC5xY293MiBcDQo+ICsgICAgICAgICAtYiBm dWxsX2JhY2t1cC5xY293MiAtRiBxY293Mg0KPiAgIA0KPiAtMy4gSXNzdWUgdGhlIGluY3JlbWVu dGFsIGJhY2t1cCBjb21tYW5kOg0KPiArIy4gSXNzdWUgYW4gaW5jcmVtZW50YWwgYmFja3VwIGNv bW1hbmQ6DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6IGpzb24NCj4gICANCj4gLSAgICAgICB7ICJl eGVjdXRlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgLT4gew0KPiArICAgICAgICAgImV4ZWN1 dGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gICAgICAgICAgICAiYXJndW1lbnRzIjogew0KPiAgICAg ICAgICAgICAgImRldmljZSI6ICJkcml2ZTAiLA0KPiAgICAgICAgICAgICAgImJpdG1hcCI6ICJi aXRtYXAwIiwNCj4gLSAgICAgICAgICAgInRhcmdldCI6ICJpbmNyZW1lbnRhbC4wLmltZyIsDQo+ ICsgICAgICAgICAgICJ0YXJnZXQiOiAiaW5jcmVtZW50YWwuMC5xY293MiIsDQo+ICAgICAgICAg ICAgICAiZm9ybWF0IjogInFjb3cyIiwNCj4gICAgICAgICAgICAgICJzeW5jIjogImluY3JlbWVu dGFsIiwNCj4gICAgICAgICAgICAgICJtb2RlIjogImV4aXN0aW5nIg0KPiAgICAgICAgICAgIH0N Cj4gICAgICAgICAgfQ0KPiAgIA0KPiArICAgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiAr ICAgIC4uLg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59 LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUw IiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIiwNCj4gKyAgICAgICAgICAgInNwZWVk IjogMCwNCj4gKyAgICAgICAgICAgImxlbiI6IDY4NzE5NDc2NzM2LA0KPiArICAgICAgICAgICAi b2Zmc2V0IjogNjg3MTk0NzY3MzYNCj4gKyAgICAgICAgIH0sDQo+ICsgICAgICAgICAiZXZlbnQi OiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICsNCj4gKyAgICAuLi4NCj4g Kw0KPiArVGhpcyBjb3BpZXMgYW55IGJsb2NrcyBtb2RpZmllZCBzaW5jZSB0aGUgZnVsbCBiYWNr dXAgd2FzIGNyZWF0ZWQgaW50byB0aGUNCj4gK2BgaW5jcmVtZW50YWwuMC5xY293MmBgIGZpbGUu IER1cmluZyB0aGUgb3BlcmF0aW9uLCBgYGJpdG1hcDBgYCBpcyBtYXJrZWQNCj4gK2BgK2J1c3lg YC4gSWYgdGhlIG9wZXJhdGlvbiBpcyBzdWNjZXNzZnVsLCBgYGJpdG1hcDBgYCB3aWxsIGJlIGNs ZWFyZWQgdG8NCj4gK3JlZmxlY3QgdGhlICJpbmNyZW1lbnRhbCIgYmFja3VwIHJlZ2ltZW4sIHdo aWNoIG9ubHkgY29waWVzIG91dCBuZXcgY2hhbmdlcw0KPiArZnJvbSBlYWNoIGluY3JlbWVudGFs IGJhY2t1cC4NCj4gKw0KPiArLi4gbm90ZTo6IEFueSBuZXcgd3JpdGVzIHRoYXQgb2NjdXIgYWZ0 ZXIgdGhlIGJhY2t1cCBvcGVyYXRpb24gc3RhcnRzIGRvIG5vdA0KPiArICAgICAgICAgIGdldCBj b3BpZWQgdG8gdGhlIGRlc3RpbmF0aW9uLiBUaGUgYmFja3VwJ3MgInBvaW50IGluIHRpbWUiIGlz IHdoZW4NCj4gKyAgICAgICAgICB0aGUgYmFja3VwIHN0YXJ0cywgbm90IHdoZW4gaXQgZW5kcy4g VGhlc2Ugd3JpdGVzIGFyZSByZWNvcmRlZCBpbiBhDQo+ICsgICAgICAgICAgc3BlY2lhbCBiaXRt YXAgdGhhdCBnZXRzIHJlLWFkZGVkIHRvIGJpdG1hcDAgd2hlbiB0aGUgYmFja3VwIGVuZHMgc28N Cj4gKyAgICAgICAgICB0aGF0IHRoZSBuZXh0IGluY3JlbWVudGFsIGJhY2t1cCBjYW4gY29weSB0 aGVtIG91dC4NCj4gKw0KPiAgIEV4YW1wbGU6IFNlY29uZCBJbmNyZW1lbnRhbCBCYWNrdXANCj4g ICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICAgDQo+IC0xLiBDcmVhdGUg YSBuZXcgZGVzdGluYXRpb24gaW1hZ2UgZm9yIHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgdGhhdCBw b2ludHMNCj4gLSAgIHRvIHRoZSBwcmV2aW91cyBvbmUsIGUuZy46IGBgaW5jcmVtZW50YWwuMS5p bWdgYA0KPiArIy4gQ3JlYXRlIGEgbmV3IGRlc3RpbmF0aW9uIGltYWdlIGZvciB0aGUgaW5jcmVt ZW50YWwgYmFja3VwIHRoYXQgcG9pbnRzDQo+ICsgICB0byB0aGUgcHJldmlvdXMgb25lLCBlLmcu OiBgYGluY3JlbWVudGFsLjEucWNvdzJgYA0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBiYXNoDQo+ ICAgDQo+IC0gICAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50YWwuMS5p bWcgLWIgaW5jcmVtZW50YWwuMC5pbWcgLUYgcWNvdzINCj4gKyAgICAgICAkIHFlbXUtaW1nIGNy ZWF0ZSAtZiBxY293MiBpbmNyZW1lbnRhbC4xLnFjb3cyIFwNCj4gKyAgICAgICAgIC1iIGluY3Jl bWVudGFsLjAucWNvdzIgLUYgcWNvdzINCj4gICANCj4gLTIuIElzc3VlIGEgbmV3IGluY3JlbWVu dGFsIGJhY2t1cCBjb21tYW5kLiBUaGUgb25seSBkaWZmZXJlbmNlIGhlcmUgaXMNCj4gKyMuIElz c3VlIGEgbmV3IGluY3JlbWVudGFsIGJhY2t1cCBjb21tYW5kLiBUaGUgb25seSBkaWZmZXJlbmNl IGhlcmUgaXMNCj4gICAgICB0aGF0IHdlIGhhdmUgY2hhbmdlZCB0aGUgdGFyZ2V0IGltYWdlIGJl bG93Lg0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBqc29uDQo+ICAgDQo+IC0gICAgICAgeyAiZXhl Y3V0ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiArICAgIC0+IHsNCj4gKyAgICAgICAgICJleGVjdXRl IjogImRyaXZlLWJhY2t1cCIsDQo+ICAgICAgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gICAgICAg ICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gICAgICAgICAgICAgICJiaXRtYXAiOiAiYml0 bWFwMCIsDQo+IC0gICAgICAgICAgICJ0YXJnZXQiOiAiaW5jcmVtZW50YWwuMS5pbWciLA0KPiAr ICAgICAgICAgICAidGFyZ2V0IjogImluY3JlbWVudGFsLjEucWNvdzIiLA0KPiAgICAgICAgICAg ICAgImZvcm1hdCI6ICJxY293MiIsDQo+ICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRh bCIsDQo+ICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyINCj4gICAgICAgICAgICB9DQo+ ICAgICAgICAgIH0NCj4gICANCj4gLUVycm9ycw0KPiAtLS0tLS0tDQo+ICsgICAgPC0geyAicmV0 dXJuIjoge30gfQ0KPiAgIA0KPiAtLSAgSW4gdGhlIGV2ZW50IG9mIGFuIGVycm9yIHRoYXQgb2Nj dXJzIGFmdGVyIGEgYmFja3VwIGpvYiBpcw0KPiAtICAgc3VjY2Vzc2Z1bGx5IGxhdW5jaGVkLCBl aXRoZXIgYnkgYSBkaXJlY3QgUU1QIGNvbW1hbmQgb3IgYSBRTVANCj4gLSAgIHRyYW5zYWN0aW9u LCB0aGUgdXNlciB3aWxsIHJlY2VpdmUgYSBgYEJMT0NLX0pPQl9DT01QTEVURWBgIGV2ZW50IHdp dGgNCj4gLSAgIGEgZmFpbHVyZSBtZXNzYWdlLCBhY2NvbXBhbmllZCBieSBhIGBgQkxPQ0tfSk9C X0VSUk9SYGAgZXZlbnQuDQo+ICsgICAgLi4uDQo+ICsNCj4gKyAgICA8LSB7DQo+ICsgICAgICAg ICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAg ICAgImRldmljZSI6ICJkcml2ZTAiLA0KPiArICAgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0K PiArICAgICAgICAgICAic3BlZWQiOiAwLA0KPiArICAgICAgICAgICAibGVuIjogNjg3MTk0NzY3 MzYsDQo+ICsgICAgICAgICAgICJvZmZzZXQiOiA2ODcxOTQ3NjczNg0KPiArICAgICAgICAgfSwN Cj4gKyAgICAgICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0KPiArICAgICAgIH0N Cj4gKw0KPiArICAgIC4uLg0KPiArDQo+ICtCZWNhdXNlIHRoZSBmaXJzdCBpbmNyZW1lbnRhbCBi YWNrdXAgZnJvbSB0aGUgcHJldmlvdXMgZXhhbXBsZSBjb21wbGV0ZWQNCj4gK3N1Y2Nlc3NmdWxs eSwgYGBiaXRtYXAwYGAgd2FzIHN5bmNocm9uaXplZCB3aXRoIGBgaW5jcmVtZW50YWwuMC5xY293 MmBgLiBIZXJlLA0KPiArd2UgdXNlIGBgYml0bWFwMGBgIGFnYWluIHRvIGNyZWF0ZSBhIG5ldyBp bmNyZW1lbnRhbCBiYWNrdXAgdGhhdCB0YXJnZXRzIHRoZQ0KPiArcHJldmlvdXMgb25lLCBjcmVh dGluZyBhIGNoYWluIG9mIHRocmVlIGltYWdlczoNCj4gKw0KPiArLi4gYWRtb25pdGlvbjo6IERp YWdyYW0NCj4gKw0KPiArIC4uIGNvZGU6OiB0ZXh0DQo+ICsNCj4gKyAgICstLS0tLS0tLSsgICAr LS0tLS0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tLS0tLS0rDQo+ICsgICB8ICAgICAgICB8ICAg fCAgICAgICAgICAgICAgIHwgICB8ICAgICAgICAgICAgICAgfA0KPiArICAgfCAgYmFzZSAgKzwt LSsgaW5jcmVtZW50YWwuMCArPC0tKyBpbmNyZW1lbnRhbC4xIHwNCj4gKyAgIHwgICAgICAgIHwg ICB8ICAgICAgICAgICAgICAgfCAgIHwgICAgICAgICAgICAgICB8DQo+ICsgICArLS0tLS0tLS0r ICAgKy0tLS0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0tLS0tKw0KPiArDQo+ICtFYWNoIG5l dyBpbmNyZW1lbnRhbCBiYWNrdXAgcmUtc3luY2hyb25pemVzIHRoZSBiaXRtYXAgdG8gdGhlIGxh dGVzdCBiYWNrdXANCj4gK2F1dGhvcmVkLCBhbGxvd2luZyBhIHVzZXIgdG8gY29udGludWUgdG8g ImNvbnN1bWUiIGl0IHRvIGNyZWF0ZSBuZXcgYmFja3Vwcw0KPiArb24gdG9wIG9mIGFuIGV4aXN0 aW5nIGNoYWluLg0KPiArDQo+ICtJbiB0aGUgYWJvdmUgZGlhZ3JhbSwgaW5jcmVtZW50YWwuMSBy ZXByZXNlbnRzIGluY3JlbWVudGFsLjEucWNvdzI7IGl0IGlzIG5vdCBhDQo+ICtjb21wbGV0ZSBp bWFnZSBieSBpdHNlbGYgYnV0IHJlbGllcyBvbiBiYWNraW5nIGZpbGVzIHRvIHJlY29uc3RydWN0 IGEgZnVsbA0KPiAraW1hZ2UuIGluY3JlbWVudGFsLjAgc2ltaWxhcmx5IHJlcXVpcmVzIHRoZSBm dWxsIGJhc2UgaW1hZ2UgdG8gcmVjb25zdHJ1Y3QgYQ0KPiArZnVuY3Rpb25pbmcgaW1hZ2UuDQo+ ICsNCj4gK0VhY2ggYmFja3VwIGluIHRoaXMgY2hhaW4gcmVtYWlucyBpbmRlcGVuZGVudCwgYW5k IGlzIHVuY2hhbmdlZCBieSBuZXcgZW50cmllcw0KPiArbWFkZSBsYXRlciBpbiB0aGUgY2hhaW4u IEZvciBpbnN0YW5jZSwgaW5jcmVtZW50YWwuMCByZW1haW5zIGEgcGVyZmVjdGx5IHZhbGlkDQo+ ICtiYWNrdXAgb2YgdGhlIGRpc2sgYXMgaXQgd2FzIHdoZW4gdGhlIGJhY2t1cCB3YXMgaXNzdWVk Lg0KPiArDQo+ICtFeGFtcGxlOiBJbmNyZW1lbnRhbCBQdXNoIEJhY2t1cHMgd2l0aG91dCBCYWNr aW5nIEZpbGVzDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+DQo+ICsNCj4gK0JhY2t1cCBpbWFnZXMgYXJlIGJlc3Qga2VwdCBvZmYtc2l0 ZSwgc28gd2Ugb2Z0ZW4gd2lsbCBub3QgaGF2ZSB0aGUgcHJlY2VkaW5nDQo+ICtiYWNrdXBzIGlu IGEgY2hhaW4gYXZhaWxhYmxlIHRvIGxpbmsgYWdhaW5zdC4gVGhpcyBpcyBub3QgYSBwcm9ibGVt IGF0IGJhY2t1cA0KPiArdGltZTsgd2Ugc2ltcGx5IGRvIG5vdCBzZXQgdGhlIGJhY2tpbmcgaW1h Z2Ugd2hlbiBjcmVhdGluZyB0aGUgZGVzdGluYXRpb24NCj4gK2ltYWdlOg0KPiArDQo+ICsjLiBD cmVhdGUgYSBuZXcgZGVzdGluYXRpb24gaW1hZ2Ugd2l0aCBubyBiYWNraW5nIGZpbGUgc2V0LiBX ZSB3aWxsIG5lZWQgdG8NCj4gKyAgIHNwZWNpZnkgdGhlIHNpemUgb2YgdGhlIGJhc2UgaW1hZ2Ug dGhpcyB0aW1lLCBiZWNhdXNlIGl0IGlzbid0IGF2YWlsYWJsZSBmb3INCj4gKyAgIFFFTVUgdG8g dXNlIHRvIGd1ZXNzOg0KDQpvciBqdXN0IGRyb3AgIm1vZGU6IGV4aXN0aW5nIg0KDQo+ICsNCj4g KyAgIC4uIGNvZGU6OiBiYXNoDQo+ICsNCj4gKyAgICAgICAkIHFlbXUtaW1nIGNyZWF0ZSAtZiBx Y293MiBpbmNyZW1lbnRhbC4yLnFjb3cyIDY0Rw0KPiArDQo+ICsjLiBJc3N1ZSBhIG5ldyBpbmNy ZW1lbnRhbCBiYWNrdXAgY29tbWFuZC4gQXBhcnQgZnJvbSB0aGUgbmV3IGRlc3RpbmF0aW9uIGlt YWdlLA0KPiArICAgdGhlcmUgaXMgbm8gZGlmZmVyZW5jZSBmcm9tIHRoZSBsYXN0IHR3byBleGFt cGxlcy4NCj4gKw0KPiArICAgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAgIC0+IHsNCj4gKyAg ICAgICAgICJleGVjdXRlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAiYXJndW1lbnRz Ijogew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAgICJi aXRtYXAiOiAiYml0bWFwMCIsDQo+ICsgICAgICAgICAgICJ0YXJnZXQiOiAiaW5jcmVtZW50YWwu Mi5xY293MiIsDQo+ICsgICAgICAgICAgICJmb3JtYXQiOiAicWNvdzIiLA0KPiArICAgICAgICAg ICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICJtb2RlIjogImV4aXN0aW5n Ig0KPiArICAgICAgICAgfQ0KPiArICAgICAgIH0NCj4gKw0KPiArICAgIDwtIHsgInJldHVybiI6 IHt9IH0NCj4gKw0KPiArICAgIC4uLg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRp bWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICJk ZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIiwNCj4gKyAg ICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAgICAgICAgICAgImxlbiI6IDY4NzE5NDc2NzM2LA0K PiArICAgICAgICAgICAib2Zmc2V0IjogNjg3MTk0NzY3MzYNCj4gKyAgICAgICAgIH0sDQo+ICsg ICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICsN Cj4gKyAgICAuLi4NCj4gKw0KPiArVGhlIG9ubHkgZGlmZmVyZW5jZSBmcm9tIHRoZSBwZXJzcGVj dGl2ZSBvZiB0aGUgdXNlciBpcyB0aGF0IHlvdSB3aWxsIG5lZWQgdG8NCj4gK3NldCB0aGUgYmFj a2luZyBpbWFnZSB3aGVuIGF0dGVtcHRpbmcgdG8gcmVzdG9yZSB0aGUgYmFja3VwOg0KPiArDQo+ ICsuLiBjb2RlOjogYmFzaA0KPiArDQo+ICsgICAgJCBxZW11LWltZyByZWJhc2UgaW5jcmVtZW50 YWwuMi5xY293MiBcDQo+ICsgICAgICAtdSAtYiBpbmNyZW1lbnRhbC4xLnFjb3cyDQo+ICsNCj4g K1RoaXMgdXNlcyB0aGUgInVuc2FmZSIgcmViYXNlIG1vZGUgdG8gc2ltcGx5IHNldCB0aGUgYmFj a2luZyBmaWxlIHRvIGEgZmlsZSB0aGF0DQo+ICtpc24ndCBwcmVzZW50Lg0KDQpvciBqdXN0IGlu c3RydWN0IHVzZSAtLWltYWdlLW9wdHMgdG8gc3BlY2lmeSB0aGUgd2hvbGUgYmFja2luZyBjaGFp biBieSBoYW5kIGZvcg0KcWVtdS1pbWcgY29udmVydCBvciBxZW11LW5iZCAod2hpY2ggaXMgdXNl ZCBmb3IgcmVzdG9yZSkNCg0KPiArDQo+ICtFeGFtcGxlOiBNdWx0aS1kcml2ZSBJbmNyZW1lbnRh bCBCYWNrdXANCj4gK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiAr DQo+ICtBc3N1bWUgd2UgaGF2ZSBhIFZNIHdpdGggdHdvIGRyaXZlcywgImRyaXZlMCIgYW5kICJk cml2ZTEiIGFuZCB3ZSB3aXNoIHRvIGJhY2sNCj4gK2JvdGggb2YgdGhlbSB1cCBzdWNoIHRoYXQg dGhlIHR3byBiYWNrdXBzIHJlcHJlc2VudCB0aGUgc2FtZSBjcmFzaC1jb25zaXN0ZW50DQo+ICtw b2ludCBpbiB0aW1lLg0KPiArDQo+ICsjLiBGb3IgZWFjaCBkcml2ZSwgY3JlYXRlIGFuIGVtcHR5 IGltYWdlOg0KPiArDQo+ICsgICAuLiBjb2RlOjogYmFzaA0KPiArDQo+ICsgICAgJCBxZW11LWlt ZyBjcmVhdGUgLWYgcWNvdzIgZHJpdmUwLmZ1bGwucWNvdzIgNjRHDQo+ICsgICAgJCBxZW11LWlt ZyBjcmVhdGUgLWYgcWNvdzIgZHJpdmUxLmZ1bGwucWNvdzIgNjRHDQo+ICsNCj4gKyMuIENyZWF0 ZSBhIGZ1bGwgKGFuY2hvcikgYmFja3VwIGZvciBlYWNoIGRyaXZlLCB3aXRoIGFjY29tcGFueWlu ZyBiaXRtYXBzOg0KPiArDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgICAgLT4gew0K PiArICAgICAgICAgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiArICAgICAgICAgImFyZ3Vt ZW50cyI6IHsNCj4gKyAgICAgICAgICAgImFjdGlvbnMiOiBbDQo+ICsgICAgICAgICAgICAgew0K PiArICAgICAgICAgICAgICAgInR5cGUiOiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+ICsg ICAgICAgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAgICAgICAgICAgIm5vZGUiOiAiZHJp dmUwIiwNCj4gKyAgICAgICAgICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICAg ICAgICAgIH0NCj4gKyAgICAgICAgICAgICB9LA0KPiArICAgICAgICAgICAgIHsNCj4gKyAgICAg ICAgICAgICAgICJ0eXBlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1hZGQiLA0KPiArICAgICAgICAg ICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgICAgICJub2RlIjogImRyaXZlMSIsDQo+ ICsgICAgICAgICAgICAgICAgICJuYW1lIjogImJpdG1hcDAiDQo+ICsgICAgICAgICAgICAgICB9 DQo+ICsgICAgICAgICAgICAgfSwNCj4gKyAgICAgICAgICAgICB7DQo+ICsgICAgICAgICAgICAg ICAidHlwZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiArICAgICAgICAgICAgICAgImRhdGEiOiB7DQo+ ICsgICAgICAgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAgICAgICAgICAg ICAgInRhcmdldCI6ICIvcGF0aC90by9kcml2ZTAuZnVsbC5xY293MiIsDQo+ICsgICAgICAgICAg ICAgICAgICJzeW5jIjogImZ1bGwiLA0KPiArICAgICAgICAgICAgICAgICAiZm9ybWF0IjogInFj b3cyIg0KPiArICAgICAgICAgICAgICAgfQ0KPiArICAgICAgICAgICAgIH0sDQo+ICsgICAgICAg ICAgICAgew0KPiArICAgICAgICAgICAgICAgInR5cGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAg ICAgICAgICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgICAgICAgICAiZGV2aWNlIjogImRy aXZlMSIsDQo+ICsgICAgICAgICAgICAgICAgICJ0YXJnZXQiOiAiL3BhdGgvdG8vZHJpdmUxLmZ1 bGwucWNvdzIiLA0KPiArICAgICAgICAgICAgICAgICAic3luYyI6ICJmdWxsIiwNCj4gKyAgICAg ICAgICAgICAgICAgImZvcm1hdCI6ICJxY293MiINCj4gKyAgICAgICAgICAgICAgIH0NCj4gKyAg ICAgICAgICAgICB9DQo+ICsgICAgICAgICAgIF0NCj4gKyAgICAgICAgIH0NCj4gKyAgICAgICB9 DQo+ICsNCj4gKyAgICA8LSB7ICJyZXR1cm4iOiB7fSB9DQo+ICsNCj4gKyAgICAuLi4NCj4gKw0K PiArICAgIDwtIHsNCj4gKyAgICAgICAgICJ0aW1lc3RhbXAiOiB7Li4ufSwNCj4gKyAgICAgICAg ICJkYXRhIjogew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAgICAg ICAgICJ0eXBlIjogImJhY2t1cCIsDQo+ICsgICAgICAgICAgICJzcGVlZCI6IDAsDQo+ICsgICAg ICAgICAgICJsZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICAgIm9mZnNldCI6IDY4NzE5 NDc2NzM2DQo+ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9D T01QTEVURUQiDQo+ICsgICAgICAgfQ0KPiArDQo+ICsgICAgLi4uDQo+ICsNCj4gKyAgICA8LSB7 DQo+ICsgICAgICAgICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsN Cj4gKyAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTEiLA0KPiArICAgICAgICAgICAidHlwZSI6 ICJiYWNrdXAiLA0KPiArICAgICAgICAgICAic3BlZWQiOiAwLA0KPiArICAgICAgICAgICAibGVu IjogNjg3MTk0NzY3MzYsDQo+ICsgICAgICAgICAgICJvZmZzZXQiOiA2ODcxOTQ3NjczNg0KPiAr ICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0K PiArICAgICAgIH0NCj4gKw0KPiArICAgIC4uLg0KPiArDQo+ICsjLiBMYXRlciwgY3JlYXRlIG5l dyBkZXN0aW5hdGlvbiBpbWFnZXMgZm9yIGVhY2ggb2YgdGhlIGluY3JlbWVudGFsIGJhY2t1cHMN Cj4gKyAgIHRoYXQgcG9pbnQgdG8gdGhlaXIgcmVzcGVjdGl2ZSBmdWxsIGJhY2t1cHM6DQo+ICsN Cj4gKyAgIC4uIGNvZGU6OiBiYXNoDQo+ICsNCj4gKyAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYg cWNvdzIgZHJpdmUwLmluYzAucWNvdzIgXA0KPiArICAgICAgIC1iIGRyaXZlMC5mdWxsLnFjb3cy IC1GIHFjb3cyDQo+ICsgICAgICQgcWVtdS1pbWcgY3JlYXRlIC1mIHFjb3cyIGRyaXZlMS5pbmMw LnFjb3cyIFwNCj4gKyAgICAgICAtYiBkcml2ZTEuZnVsbC5xY293MiAtRiBxY293Mg0KPiArDQo+ ICsjLiBJc3N1ZSBhIG11bHRpLWRyaXZlIGluY3JlbWVudGFsIHB1c2ggYmFja3VwIHRyYW5zYWN0 aW9uOg0KPiArDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgICAgLT4gew0KPiArICAg ICAgICAgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiArICAgICAgICAgImFyZ3VtZW50cyI6 IHsNCj4gKyAgICAgICAgICAgImFjdGlvbnMiOiBbDQo+ICsgICAgICAgICAgICAgew0KPiArICAg ICAgICAgICAgICAgInR5cGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAgICAgICAgICAgICAgICJk YXRhIjogew0KPiArICAgICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAg ICAgICAgICAgICAgICJiaXRtYXAiOiAiYml0bWFwMCIsDQo+ICsgICAgICAgICAgICAgICAgICJm b3JtYXQiOiAicWNvdzIiLA0KPiArICAgICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyIs DQo+ICsgICAgICAgICAgICAgICAgICJzeW5jIjogImluY3JlbWVudGFsIiwNCj4gKyAgICAgICAg ICAgICAgICAgInRhcmdldCI6ICJkcml2ZTAuaW5jMC5xY293MiINCj4gKyAgICAgICAgICAgICAg IH0NCj4gKyAgICAgICAgICAgICB9LA0KPiArICAgICAgICAgICAgIHsNCj4gKyAgICAgICAgICAg ICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAgICAgICAiZGF0YSI6IHsN Cj4gKyAgICAgICAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTEiLA0KPiArICAgICAgICAgICAg ICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAgICAgICAgICAgICAgICAiZm9ybWF0Ijog InFjb3cyIiwNCj4gKyAgICAgICAgICAgICAgICAgIm1vZGUiOiAiZXhpc3RpbmciLA0KPiArICAg ICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAgICAg ICJ0YXJnZXQiOiAiZHJpdmUxLmluYzAucWNvdzIiDQo+ICsgICAgICAgICAgICAgICB9DQo+ICsg ICAgICAgICAgICAgfSwNCj4gKyAgICAgICAgICAgXQ0KPiArICAgICAgICAgfQ0KPiArICAgICAg IH0NCj4gKw0KPiArICAgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiArICAgIC4uLg0KPiAr DQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAg ICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAg ICAgICAgInR5cGUiOiAiYmFja3VwIiwNCj4gKyAgICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAg ICAgICAgICAgImxlbiI6IDY4NzE5NDc2NzM2LA0KPiArICAgICAgICAgICAib2Zmc2V0IjogNjg3 MTk0NzY3MzYNCj4gKyAgICAgICAgIH0sDQo+ICsgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9C X0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICsNCj4gKyAgICAuLi4NCj4gKw0KPiArICAgIDwt IHsNCj4gKyAgICAgICAgICJ0aW1lc3RhbXAiOiB7Li4ufSwNCj4gKyAgICAgICAgICJkYXRhIjog ew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMSIsDQo+ICsgICAgICAgICAgICJ0eXBl IjogImJhY2t1cCIsDQo+ICsgICAgICAgICAgICJzcGVlZCI6IDAsDQo+ICsgICAgICAgICAgICJs ZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICAgIm9mZnNldCI6IDY4NzE5NDc2NzM2DQo+ ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9DT01QTEVURUQi DQo+ICsgICAgICAgfQ0KPiArDQo+ICsgICAgLi4uDQo+ICsNCj4gK1B1c2ggQmFja3VwIEVycm9y cyAmIFJlY292ZXJ5DQo+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiArDQo+ICst ICBJbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IgdGhhdCBvY2N1cnMgYWZ0ZXIgYSBwdXNoIGJhY2t1 cCBqb2IgaXMgc3VjY2Vzc2Z1bGx5DQo+ICsgICBsYXVuY2hlZCwgZWl0aGVyIGJ5IGEgZGlyZWN0 IFFNUCBjb21tYW5kIG9yIGEgUU1QIHRyYW5zYWN0aW9uLCB0aGUgdXNlciB3aWxsDQo+ICsgICBy ZWNlaXZlIGEgYGBCTE9DS19KT0JfQ09NUExFVEVgYCBldmVudCB3aXRoIGEgZmFpbHVyZSBtZXNz YWdlLCBhY2NvbXBhbmllZCBieQ0KPiArICAgYSBgYEJMT0NLX0pPQl9FUlJPUmBgIGV2ZW50Lg0K PiAgIA0KPiAgIC0gIEluIHRoZSBjYXNlIG9mIGFuIGV2ZW50IGJlaW5nIGNhbmNlbGxlZCwgdGhl IHVzZXIgd2lsbCByZWNlaXZlIGENCg0Kcy9ldmVudC9qb2INCg0KPiAtICAgYGBCTE9DS19KT0Jf Q0FOQ0VMTEVEYGAgZXZlbnQgaW5zdGVhZCBvZiBhIHBhaXIgb2YgQ09NUExFVEUgYW5kIEVSUk9S DQo+IC0gICBldmVudHMuDQo+ICsgICBgYEJMT0NLX0pPQl9DQU5DRUxMRURgYCBldmVudCBpbnN0 ZWFkIG9mIGEgcGFpciBvZiBDT01QTEVURSBhbmQgRVJST1IgZXZlbnRzLg0KPiAgIA0KPiAtLSAg SW4gZWl0aGVyIGNhc2UsIHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgZGF0YSBjb250YWluZWQgd2l0 aGluIHRoZQ0KPiAtICAgYml0bWFwIGlzIHNhZmVseSByb2xsZWQgYmFjaywgYW5kIHRoZSBkYXRh IHdpdGhpbiB0aGUgYml0bWFwIGlzIG5vdA0KPiAtICAgbG9zdC4gVGhlIGltYWdlIGZpbGUgY3Jl YXRlZCBmb3IgdGhlIGZhaWxlZCBhdHRlbXB0IGNhbiBiZSBzYWZlbHkNCj4gLSAgIGRlbGV0ZWQu DQo+ICstICBJbiBlaXRoZXIgZmFpbHVyZSBjYXNlLCB0aGUgYml0bWFwIHVzZWQgZm9yIHRoZSBm YWlsZWQgb3BlcmF0aW9uIGlzIG5vdA0KPiArICAgY2xlYXJlZC4gSXQgd2lsbCBjb250YWluIGFs bCBvZiB0aGUgZGlydHkgYml0cyBpdCBkaWQgYXQgdGhlIHN0YXJ0IG9mIHRoZQ0KPiArICAgb3Bl cmF0aW9uLCBwbHVzIGFueSBuZXcgYml0cyB0aGF0IGdvdCBtYXJrZWQgZHVyaW5nIHRoZSBvcGVy YXRpb24uDQo+ICAgDQo+IC0tICBPbmNlIHRoZSB1bmRlcmx5aW5nIHByb2JsZW0gaXMgZml4ZWQg KGUuZy4gbW9yZSBzdG9yYWdlIHNwYWNlIGlzDQo+IC0gICBmcmVlZCB1cCksIHlvdSBjYW4gc2lt cGx5IHJldHJ5IHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgY29tbWFuZCB3aXRoDQo+IC0gICB0aGUg c2FtZSBiaXRtYXAuDQo+ICstICBFZmZlY3RpdmVseSwgdGhlICJwb2ludCBpbiB0aW1lIiB0aGF0 IGEgYml0bWFwIGlzIHJlY29yZGluZyBkaWZmZXJlbmNlcw0KPiArICAgYWdhaW5zdCBpcyByb2xs ZWQgYmFjayB0byB0aGUgaXNzdWFuY2Ugb2YgdGhlIGxhc3Qgc3VjY2Vzc2Z1bCBpbmNyZW1lbnRh bA0KPiArICAgYmFja3VwLCBpbnN0ZWFkIG9mIGJlaW5nIG1vdmVkIGZvcndhcmQgdG8gdGhlIHN0 YXJ0IG9mIHRoaXMgbm93LWZhaWxlZA0KPiArICAgYmFja3VwLg0KDQpyb2xsZWQgYmFjayBpbnN0 ZWFkIG9mIGJlaW5nIG1vdmVkIGZvcndhcmQgc291bmRzIHN0cmFuZ2UuDQoNCklmIHdlIGFyZSBu b3QgbW92aW5nIGZvcndhcmQgdGhlbiBub3RoaW5nIHRvIHJvbGwgYmFjay4NCg0KRm9yIG1lIGl0 IHdvdWxkIGJlIGNsZWFyZXIgc29tZXRoaW5nIGxpa2UgdGhpczoNCg0KRWZmZWN0aXZlbHksIGV2 ZXJ5dGhpbmcgd29ya3MgbGlrZSB0aGVyZSB3YXMgbm8gZmFpbGVkIGJhY2t1cCBhdCBhbGwgYW5k IHlvdSBjYW4NCnNhZmVseSByZXRyeSB0aGUgb3BlcmF0aW9uIHVzaW5nIHNhbWUgZGlydHkgYml0 bWFwIChleGNlcHQgeW91IGhhdmUgdG8gcmVtb3ZlIHRhcmdldA0KaW1hZ2UpLg0KDQoNCg0KaG1t LCBub3RpY2VkIGp1c3Qgbm93LCB0aGF0IHlvdSBzdG9wcGVkIHVzaW5nICIuLiBhZG1vbml0aW9u OjoiIHNlY3Rpb25zIGZvciBleGFtcGxlcy4uLg0KYWxzbywgaXQgd291bGQgc2ltcGxlciB0byBy ZXZpZXcsIGlmIHN0eWxlIGNoYW5nZXMgYW5kIHBhcmFncmFwaCByZWZsb3cgZ28gaW4gc2VwYXJh dGUNCnBhdGNoLi4NCg0KPiAgIA0KPiAtRXhhbXBsZQ0KPiAtfn5+fn5+fg0KPiArLSAgT25jZSB0 aGUgdW5kZXJseWluZyBwcm9ibGVtIGlzIGFkZHJlc3NlZCAoZS5nLiBtb3JlIHN0b3JhZ2Ugc3Bh Y2UgaXMNCj4gKyAgIGFsbG9jYXRlZCBvbiB0aGUgZGVzdGluYXRpb24pLCB0aGUgaW5jcmVtZW50 YWwgYmFja3VwIGNvbW1hbmQgY2FuIGJlIHJldHJpZWQNCj4gKyAgIHdpdGggdGhlIHNhbWUgYml0 bWFwLg0KPiAgIA0KPiAtMS4gQ3JlYXRlIGEgdGFyZ2V0IGltYWdlOg0KPiArRXhhbXBsZTogSW5k aXZpZHVhbCBGYWlsdXJlcw0KPiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiArDQo+ ICtCYWNrdXAgam9icyB0aGF0IGZhaWwgaW5kaXZpZHVhbGx5IGJlaGF2ZSBzaW1wbHkgYXMgZGVz Y3JpYmVkIGFib3ZlLiBUaGlzDQo+ICtleGFtcGxlIHNob3dzIHRoZSBzaW1wbGVzdCBjYXNlOg0K PiArDQo+ICsjLiBDcmVhdGUgYSB0YXJnZXQgaW1hZ2U6DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6 IGJhc2gNCj4gICANCj4gLSAgICAgICAkIHFlbXUtaW1nIGNyZWF0ZSAtZiBxY293MiBpbmNyZW1l bnRhbC4wLmltZyAtYiBmdWxsX2JhY2t1cC5pbWcgLUYgcWNvdzINCj4gKyAgICAgICAkIHFlbXUt aW1nIGNyZWF0ZSAtZiBxY293MiBpbmNyZW1lbnRhbC4wLnFjb3cgXA0KPiArICAgICAgICAgLWIg ZnVsbF9iYWNrdXAucWNvdyAtRiBxY293Mg0KPiAgIA0KPiAtMi4gQXR0ZW1wdCB0byBjcmVhdGUg YW4gaW5jcmVtZW50YWwgYmFja3VwIHZpYSBRTVA6DQo+ICsjLiBBdHRlbXB0IHRvIGNyZWF0ZSBh biBpbmNyZW1lbnRhbCBiYWNrdXAgdmlhIFFNUDoNCj4gICANCj4gICAgICAuLiBjb2RlOjoganNv bg0KPiAgIA0KPiAtICAgICAgIHsgImV4ZWN1dGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAgICAt PiB7DQo+ICsgICAgICAgICAiZXhlY3V0ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiAgICAgICAgICAg ICJhcmd1bWVudHMiOiB7DQo+ICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICAg ICAgICAgICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiAtICAgICAgICAgICAidGFyZ2V0Ijog ImluY3JlbWVudGFsLjAuaW1nIiwNCj4gKyAgICAgICAgICAgInRhcmdldCI6ICJpbmNyZW1lbnRh bC4wLnFjb3cyIiwNCj4gICAgICAgICAgICAgICJmb3JtYXQiOiAicWNvdzIiLA0KPiAgICAgICAg ICAgICAgInN5bmMiOiAiaW5jcmVtZW50YWwiLA0KPiAgICAgICAgICAgICAgIm1vZGUiOiAiZXhp c3RpbmciDQo+ICAgICAgICAgICAgfQ0KPiAgICAgICAgICB9DQo+ICAgDQo+IC0zLiBSZWNlaXZl IGFuIGV2ZW50IG5vdGlmeWluZyB1cyBvZiBmYWlsdXJlOg0KPiArICAgIDwtIHsgInJldHVybiI6 IHt9IH0NCj4gKw0KPiArICAgTm90ZSB0aGF0IHRoZSBqb2IgaXMgc3VjY2Vzc2Z1bGx5IGFjY2Vw dGVkLg0KPiArDQo+ICszLiBSZWNlaXZlIGFuIGV2ZW50IGluZGljYXRpbmcgZmFpbHVyZToNCg0K cy8zLyMgLCBhbmQgbGF0ZXIgc2V2ZXJhbCB0aW1lcw0KDQo+ICAgDQo+ICAgICAgLi4gY29kZTo6 IGpzb24NCj4gICANCj4gLSAgICAgICB7ICJ0aW1lc3RhbXAiOiB7ICJzZWNvbmRzIjogMTQyNDcw OTQ0MiwgIm1pY3Jvc2Vjb25kcyI6IDg0NDUyNCB9LA0KPiAtICAgICAgICAgImRhdGEiOiB7ICJz cGVlZCI6IDAsICJvZmZzZXQiOiAwLCAibGVuIjogNjcxMDg4NjQsDQo+IC0gICAgICAgICAgICAg ICAgICAgImVycm9yIjogIk5vIHNwYWNlIGxlZnQgb24gZGV2aWNlIiwNCj4gLSAgICAgICAgICAg ICAgICAgICAiZGV2aWNlIjogImRyaXZlMSIsICJ0eXBlIjogImJhY2t1cCIgfSwNCj4gLSAgICAg ICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIiB9DQo+ICsgICAgPC0gew0KPiArICAg ICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAg ICAgICAgICJzcGVlZCI6IDAsDQo+ICsgICAgICAgICAgICJvZmZzZXQiOiAwLA0KPiArICAgICAg ICAgICAibGVuIjogNjcxMDg4NjQsDQo+ICsgICAgICAgICAgICJlcnJvciI6ICJObyBzcGFjZSBs ZWZ0IG9uIGRldmljZSIsDQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAg ICAgICAgICAgInR5cGUiOiAiYmFja3VwIg0KPiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJl dmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0KPiArICAgICAgIH0NCg0KU2hvdWxkIG5vdCBC TE9DS19KT0JfRVJST1IgZ28gZmlyc3Q/DQoNCj4gICANCj4gLTQuIERlbGV0ZSB0aGUgZmFpbGVk IGluY3JlbWVudGFsLCBhbmQgcmUtY3JlYXRlIHRoZSBpbWFnZS4NCj4gKzQuIERlbGV0ZSB0aGUg ZmFpbGVkIGltYWdlLCBhbmQgcmUtY3JlYXRlIGl0Lg0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBi YXNoDQo+ICAgDQo+IC0gICAgICAgJCBybSBpbmNyZW1lbnRhbC4wLmltZw0KPiAtICAgICAgICQg cWVtdS1pbWcgY3JlYXRlIC1mIHFjb3cyIGluY3JlbWVudGFsLjAuaW1nIC1iIGZ1bGxfYmFja3Vw LmltZyAtRiBxY293Mg0KPiArICAgICAgICQgcm0gaW5jcmVtZW50YWwuMC5xY293DQoNCnMvcWNv dy9xY293Mg0KDQo+ICsgICAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50 YWwuMC5xY293MiBcDQo+ICsgICAgICAgICAtYiBmdWxsX2JhY2t1cC5xY293MiAtRiBxY293Mg0K PiAgIA0KPiAgIDUuIFJldHJ5IHRoZSBjb21tYW5kIGFmdGVyIGZpeGluZyB0aGUgdW5kZXJseWlu ZyBwcm9ibGVtLCBzdWNoIGFzDQo+ICAgICAgZnJlZWluZyB1cCBzcGFjZSBvbiB0aGUgYmFja3Vw IHZvbHVtZToNCj4gICANCj4gICAgICAuLiBjb2RlOjoganNvbg0KPiAgIA0KPiAtICAgICAgIHsg ImV4ZWN1dGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAgICAtPiB7DQo+ICsgICAgICAgICAiZXhl Y3V0ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiAgICAgICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICAg ICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICAgICAgICAgICAgICAiYml0bWFwIjog ImJpdG1hcDAiLA0KPiAtICAgICAgICAgICAidGFyZ2V0IjogImluY3JlbWVudGFsLjAuaW1nIiwN Cj4gKyAgICAgICAgICAgInRhcmdldCI6ICJpbmNyZW1lbnRhbC4wLnFjb3cyIiwNCj4gICAgICAg ICAgICAgICJmb3JtYXQiOiAicWNvdzIiLA0KPiAgICAgICAgICAgICAgInN5bmMiOiAiaW5jcmVt ZW50YWwiLA0KPiAgICAgICAgICAgICAgIm1vZGUiOiAiZXhpc3RpbmciDQo+ICAgICAgICAgICAg fQ0KPiAgICAgICAgICB9DQo+ICAgDQo+ICsgICAgPC0geyAicmV0dXJuIjoge30gfQ0KPiArDQo+ ICAgNi4gUmVjZWl2ZSBjb25maXJtYXRpb24gdGhhdCB0aGUgam9iIGNvbXBsZXRlZCBzdWNjZXNz ZnVsbHk6DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6IGpzb24NCj4gICANCj4gLSAgICAgICB7ICJ0 aW1lc3RhbXAiOiB7ICJzZWNvbmRzIjogMTQyNDcwOTY2OCwgIm1pY3Jvc2Vjb25kcyI6IDUyNjUy NSB9LA0KPiAtICAgICAgICAgImRhdGEiOiB7ICJkZXZpY2UiOiAiZHJpdmUxIiwgInR5cGUiOiAi YmFja3VwIiwNCj4gLSAgICAgICAgICAgICAgICAgICAic3BlZWQiOiAwLCAibGVuIjogNjcxMDg4 NjQsICJvZmZzZXQiOiA2NzEwODg2NH0sDQo+IC0gICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9C X0NPTVBMRVRFRCIgfQ0KPiArICAgIDwtIHsNCj4gKyAgICAgICAgICJ0aW1lc3RhbXAiOiB7Li4u fSwNCj4gKyAgICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZl MCIsDQo+ICsgICAgICAgICAgICJ0eXBlIjogImJhY2t1cCIsDQo+ICsgICAgICAgICAgICJzcGVl ZCI6IDAsDQo+ICsgICAgICAgICAgICJsZW4iOiA2NzEwODg2NCwNCj4gKyAgICAgICAgICAgIm9m ZnNldCI6IDY3MTA4ODY0DQo+ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJM T0NLX0pPQl9DT01QTEVURUQiDQo+ICsgICAgICAgfQ0KPiAgIA0KPiAtUGFydGlhbCBUcmFuc2Fj dGlvbmFsIEZhaWx1cmVzDQo+IC1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gK0V4 YW1wbGU6IFBhcnRpYWwgVHJhbnNhY3Rpb25hbCBGYWlsdXJlcw0KPiArfn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICAgDQo+IC0tICBTb21ldGltZXMsIGEgdHJhbnNh Y3Rpb24gd2lsbCBzdWNjZWVkIGluIGxhdW5jaGluZyBhbmQgcmV0dXJuDQo+IC0gICBzdWNjZXNz LCBidXQgdGhlbiBsYXRlciB0aGUgYmFja3VwIGpvYnMgdGhlbXNlbHZlcyBtYXkgZmFpbC4gSXQg aXMNCj4gLSAgIHBvc3NpYmxlIHRoYXQgYSBtYW5hZ2VtZW50IGFwcGxpY2F0aW9uIG1heSBoYXZl IHRvIGRlYWwgd2l0aCBhDQo+IC0gICBwYXJ0aWFsIGJhY2t1cCBmYWlsdXJlIGFmdGVyIGEgc3Vj Y2Vzc2Z1bCB0cmFuc2FjdGlvbi4NCj4gK1FNUCBjb21tYW5kcyBsaWtlIGBxdWVyeS1ibG9jayA8 cWVtdS1xbXAtcmVmLmh0bWwjaW5kZXgtcXVlcnlfMDAyZGJsb2NrPmBfDQoNCnF1ZXJ5LWJsb2Nr ID8NCg0KPiArY29uY2VwdHVhbGx5IG9ubHkgc3RhcnQgYSBqb2IsIGFuZCBzbyB0aGVzZSB0cmFu c2FjdGlvbnMgbWF5IHN1Y2NlZWQgZXZlbiBpZg0KPiArdGhlIGpvYiBsYXRlciBmYWlscy4gVGhp cyBtaWdodCBoYXZlIHN1cnByaXNpbmcgaW50ZXJhY3Rpb25zIHdpdGggbm90aW9ucyBvZg0KPiAr aG93IGEgInRyYW5zYWN0aW9uIiBvdWdodCB0byBiZWhhdmUuDQo+ICAgDQo+IC0tICBJZiBtdWx0 aXBsZSBiYWNrdXAgam9icyBhcmUgc3BlY2lmaWVkIGluIGEgc2luZ2xlIHRyYW5zYWN0aW9uLCB3 aGVuDQo+IC0gICBvbmUgb2YgdGhlbSBmYWlscywgaXQgd2lsbCBub3QgaW50ZXJhY3Qgd2l0aCB0 aGUgb3RoZXIgYmFja3VwIGpvYnMgaW4NCj4gLSAgIGFueSB3YXkuDQo+ICtUaGlzIGRpc3RpbmN0 aW9uIG1lYW5zIHRoYXQgb24gb2NjYXNpb24sIGEgdHJhbnNhY3Rpb24gY29udGFpbmluZyBzdWNo IGpvYg0KPiArbGF1bmNoaW5nIGNvbW1hbmRzIG1heSBhcHBlYXIgdG8gc3VjY2VlZCBhbmQgcmV0 dXJuIHN1Y2Nlc3MsIGJ1dCBsYXRlcg0KPiAraW5kaXZpZHVhbCBqb2JzIGFzc29jaWF0ZWQgd2l0 aCB0aGUgdHJhbnNhY3Rpb24gbWF5IGZhaWwuIEl0IGlzIHBvc3NpYmxlIHRoYXQgYQ0KPiArbWFu YWdlbWVudCBhcHBsaWNhdGlvbiBtYXkgaGF2ZSB0byBkZWFsIHdpdGggYSBwYXJ0aWFsIGJhY2t1 cCBmYWlsdXJlIGFmdGVyIGENCj4gKyJzdWNjZXNzZnVsIiB0cmFuc2FjdGlvbi4NCj4gICANCj4g LS0gIFRoZSBqb2IocykgdGhhdCBzdWNjZWVkZWQgd2lsbCBjbGVhciB0aGUgZGlydHkgYml0bWFw IGFzc29jaWF0ZWQgd2l0aA0KPiAtICAgdGhlIG9wZXJhdGlvbiwgYnV0IHRoZSBqb2IocykgdGhh dCBmYWlsZWQgd2lsbCBub3QuIEl0IGlzIG5vdCAic2FmZSINCj4gLSAgIHRvIGRlbGV0ZSBhbnkg aW5jcmVtZW50YWwgYmFja3VwcyB0aGF0IHdlcmUgY3JlYXRlZCBzdWNjZXNzZnVsbHkgaW4NCj4g LSAgIHRoaXMgc2NlbmFyaW8sIGV2ZW4gdGhvdWdoIG90aGVycyBmYWlsZWQuDQo+ICtJZiBtdWx0 aXBsZSBiYWNrdXAgam9icyBhcmUgc3BlY2lmaWVkIGluIGEgc2luZ2xlIHRyYW5zYWN0aW9uLCBp ZiBvbmUgb2YgdGhvc2UNCj4gK2pvYnMgZmFpbHMsIGl0IHdpbGwgbm90IGludGVyYWN0IHdpdGgg dGhlIG90aGVyIGJhY2t1cCBqb2JzIGluIGFueSB3YXkgYnkNCj4gK2RlZmF1bHQuIFRoZSBqb2Io cykgdGhhdCBzdWNjZWVkZWQgd2lsbCBjbGVhciB0aGUgZGlydHkgYml0bWFwIGFzc29jaWF0ZWQg d2l0aA0KPiArdGhlIG9wZXJhdGlvbiwgYnV0IHRoZSBqb2IocykgdGhhdCBmYWlsZWQgd2lsbCBu b3QuIEl0IGlzIHRoZXJlZm9yZSBub3Qgc2FmZSB0bw0KPiArZGVsZXRlIGFueSBpbmNyZW1lbnRh bCBiYWNrdXBzIHRoYXQgd2VyZSBjcmVhdGVkIHN1Y2Nlc3NmdWxseSBpbiB0aGlzIHNjZW5hcmlv LA0KPiArZXZlbiB0aG91Z2ggb3RoZXJzIGZhaWxlZC4NCj4gICANCj4gLUV4YW1wbGUNCj4gLV5e Xl5eXl4NCj4gK1RoaXMgZXhhbXBsZSBpbGx1c3RyYXRlcyBhIHRyYW5zYWN0aW9uIHdpdGggdHdv IGJhY2t1cCBqb2JzLCB3aGVyZSBvbmUgZmFpbHMNCj4gK2FuZCBvbmUgc3VjY2VlZHM6DQo+ICAg DQo+IC0tICBRTVAgZXhhbXBsZSBoaWdobGlnaHRpbmcgdHdvIGJhY2t1cCBqb2JzOg0KPiArIy4g SXNzdWUgdGhlIHRyYW5zYWN0aW9uIHRvIHN0YXJ0IGEgYmFja3VwIG9mIGJvdGggZHJpdmVzLiBO b3RlIHRoYXQgdGhlDQo+ICsgICB0cmFuc2FjdGlvbiBpcyBhY2NlcHRlZCwgaW5kaWNhdGluZyB0 aGF0IHRoZSBqb2JzIGFyZSBzdGFydGVkIHN1Y2Nlc2Z1bGx5Lg0KPiAgIA0KPiAgICAgIC4uIGNv ZGU6OiBqc29uDQo+ICAgDQo+IC0gICAgICAgeyAiZXhlY3V0ZSI6ICJ0cmFuc2FjdGlvbiIsDQo+ ICsgICAgLT4gew0KPiArICAgICAgICAgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiAgICAg ICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICAgICAgICAgICAgICAiYWN0aW9ucyI6IFsNCj4gLSAg ICAgICAgICAgICB7ICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+IC0gICAgICAgICAgICAgICAi ZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTAiLCAiYml0bWFwIjogImJpdG1hcDAiLA0KPiAtICAg ICAgICAgICAgICAgICAgICAgICAgICJmb3JtYXQiOiAicWNvdzIiLCAibW9kZSI6ICJleGlzdGlu ZyIsDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgInN5bmMiOiAiaW5jcmVtZW50YWwiLCAi dGFyZ2V0IjogImQwLWluY3ItMS5xY293MiIgfSB9LA0KPiAtICAgICAgICAgICAgIHsgInR5cGUi OiAiZHJpdmUtYmFja3VwIiwNCj4gLSAgICAgICAgICAgICAgICJkYXRhIjogeyAiZGV2aWNlIjog ImRyaXZlMSIsICJiaXRtYXAiOiAiYml0bWFwMSIsDQo+IC0gICAgICAgICAgICAgICAgICAgICAg ICAgImZvcm1hdCI6ICJxY293MiIsICJtb2RlIjogImV4aXN0aW5nIiwNCj4gLSAgICAgICAgICAg ICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsICJ0YXJnZXQiOiAiZDEtaW5jci0x LnFjb3cyIiB9IH0sDQo+IC0gICAgICAgICAgIF0NCj4gKyAgICAgICAgICAgew0KPiArICAgICAg ICAgICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7 DQo+ICsgICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAgICAg ICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAgICAgICAgICAgICAgImZvcm1hdCI6ICJxY293 MiIsDQo+ICsgICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyIsDQo+ICsgICAgICAgICAg ICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAgICAidGFyZ2V0Ijog ImRyaXZlMC5pbmMwLnFjb3cyIg0KPiArICAgICAgICAgICAgIH0NCj4gKyAgICAgICAgICAgfSwN Cj4gKyAgICAgICAgICAgew0KPiArICAgICAgICAgICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIs DQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgICAiZGV2aWNlIjog ImRyaXZlMSIsDQo+ICsgICAgICAgICAgICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAg ICAgICAgICAgICAgImZvcm1hdCI6ICJxY293MiIsDQo+ICsgICAgICAgICAgICAgICAibW9kZSI6 ICJleGlzdGluZyIsDQo+ICsgICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ ICsgICAgICAgICAgICAgICAidGFyZ2V0IjogImRyaXZlMS5pbmMwLnFjb3cyIg0KPiArICAgICAg ICAgICAgIH0NCj4gKyAgICAgICAgICAgfV0NCj4gICAgICAgICAgICB9DQo+ICAgICAgICAgIH0N Cj4gICANCj4gLS0gIFFNUCBleGFtcGxlIHJlc3BvbnNlLCBoaWdobGlnaHRpbmcgb25lIHN1Y2Nl c3MgYW5kIG9uZSBmYWlsdXJlOg0KPiArICAgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gICANCj4g LSAgIC0gIEFja25vd2xlZGdlbWVudCB0aGF0IHRoZSBUcmFuc2FjdGlvbiB3YXMgYWNjZXB0ZWQg YW5kIGpvYnMgd2VyZQ0KPiAtICAgICAgbGF1bmNoZWQ6DQo+ICsjLiBSZWNlaXZlIG5vdGljZSB0 aGF0IHRoZSBmaXJzdCBqb2IgaGFzIGNvbXBsZXRlZDoNCj4gICANCj4gLSAgICAgIC4uIGNvZGU6 OiBqc29uDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAg ICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAg ICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIiwN Cj4gKyAgICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAgICAgICAgICAgImxlbiI6IDY3MTA4ODY0 LA0KPiArICAgICAgICAgICAib2Zmc2V0IjogNjcxMDg4NjQNCj4gKyAgICAgICAgIH0sDQo+ICsg ICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICAg DQo+IC0gICAgICAgICAgeyAicmV0dXJuIjoge30gfQ0KPiArIy4gUmVjZWl2ZSBub3RpY2UgdGhh dCB0aGUgc2Vjb25kIGpvYiBoYXMgZmFpbGVkOg0KPiAgIA0KPiAtICAgLSAgTGF0ZXIsIFFFTVUg c2VuZHMgbm90aWNlIHRoYXQgdGhlIGZpcnN0IGpvYiB3YXMgY29tcGxldGVkOg0KPiArICAgLi4g Y29kZTo6IGpzb24NCj4gICANCj4gLSAgICAgIC4uIGNvZGU6OiBqc29uDQo+ICsgICAgPC0gew0K PiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAgICAgICAgImFjdGlvbiI6 ICJyZXBvcnQiLA0KPiArICAgICAgICAgICAib3BlcmF0aW9uIjogInJlYWQiDQo+ICsgICAgICAg ICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9FUlJPUiINCj4gKyAgICAgICB9 DQo+ICAgDQo+IC0gICAgICAgICAgeyAidGltZXN0YW1wIjogeyAic2Vjb25kcyI6IDE0NDcxOTIz NDMsICJtaWNyb3NlY29uZHMiOiA2MTU2OTggfSwNCj4gLSAgICAgICAgICAgICJkYXRhIjogeyAi ZGV2aWNlIjogImRyaXZlMCIsICJ0eXBlIjogImJhY2t1cCIsDQo+IC0gICAgICAgICAgICAgICAg ICAgICAgICJzcGVlZCI6IDAsICJsZW4iOiA2NzEwODg2NCwgIm9mZnNldCI6IDY3MTA4ODY0IH0s DQo+IC0gICAgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gLSAgICAg ICAgICB9DQo+ICsgICAgLi4uDQo+ICAgDQo+IC0gICAtICBMYXRlciB5ZXQsIFFFTVUgc2VuZHMg bm90aWNlIHRoYXQgdGhlIHNlY29uZCBqb2IgaGFzIGZhaWxlZDoNCj4gKyAgICA8LSB7DQo+ICsg ICAgICAgICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAg ICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAgICAgICAgICAgIm9mZnNldCI6IDAsDQo+ICsgICAg ICAgICAgICJsZW4iOiA2NzEwODg2NCwNCj4gKyAgICAgICAgICAgImVycm9yIjogIklucHV0L291 dHB1dCBlcnJvciIsDQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAg ICAgICAgInR5cGUiOiAiYmFja3VwIg0KPiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVu dCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0KPiArICAgICAgIH0NCj4gICANCj4gLSAgICAgIC4u IGNvZGU6OiBqc29uDQo+ICtBdCB0aGUgY29uY2x1c2lvbiBvZiB0aGUgYWJvdmUgZXhhbXBsZSwg YGBkcml2ZTAuaW5jMC5xY293MmBgIGlzIHZhbGlkIGFuZCBtdXN0DQo+ICtiZSBrZXB0LCBidXQg YGBkcml2ZTEuaW5jMC5xY293MmBgIGlzIGluY29tcGxldGUgYW5kIHNob3VsZCBiZSBkZWxldGVk LiBJZiBhDQo+ICtWTS13aWRlIGluY3JlbWVudGFsIGJhY2t1cCBvZiBhbGwgZHJpdmVzIGF0IGEg cG9pbnQtaW4tdGltZSBpcyB0byBiZSBtYWRlLCBuZXcNCj4gK2JhY2t1cHMgZm9yIGJvdGggZHJp dmVzIHdpbGwgbmVlZCB0byBiZSBtYWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoYXQgYSBuZXcN Cj4gK2luY3JlbWVudGFsIGJhY2t1cCBmb3IgZHJpdmUwIG5lZWRzIHRvIGJlIGJhc2VkIG9uIHRv cCBvZiBgYGRyaXZlMC5pbmMwLnFjb3cyYGAuDQo+ICAgDQo+IC0gICAgICAgICAgeyAidGltZXN0 YW1wIjogeyAic2Vjb25kcyI6IDE0NDcxOTIzOTksICJtaWNyb3NlY29uZHMiOiA2ODMwMTUgfSwN Cj4gLSAgICAgICAgICAgICJkYXRhIjogeyAiZGV2aWNlIjogImRyaXZlMSIsICJhY3Rpb24iOiAi cmVwb3J0IiwNCj4gLSAgICAgICAgICAgICAgICAgICAgICAib3BlcmF0aW9uIjogInJlYWQiIH0s DQo+IC0gICAgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0VSUk9SIiB9DQo+ICtJbiBvdGhl ciB3b3JkcywgYXQgdGhlIGNvbmNsdXNpb24gb2YgdGhlIGFib3ZlIGV4YW1wbGUsIHdlJ2QgaGF2 ZSBtYWRlIG9ubHkgYW4NCj4gK2luY3JlbWVudGFsIGJhY2t1cCBmb3IgZHJpdmUwIGJ1dCBub3Qg ZHJpdmUxLiBUaGUgbGFzdCBWTS13aWRlIGNyYXNoDQo+ICtjb25zaXN0ZW50IGJhY2t1cCB3ZSBo YXZlIGFjY2VzcyB0byBpbiB0aGlzIGNhc2UgaXMgdGhlIGFuY2hvciBwb2ludC4NCj4gICANCj4g LSAgICAgIC4uIGNvZGU6OiBqc29uDQo+ICsuLiBjb2RlOjogdGV4dA0KPiAgIA0KPiAtICAgICAg ICAgIHsgInRpbWVzdGFtcCI6IHsgInNlY29uZHMiOiAxNDQ3MTkyMzk5LCAibWljcm9zZWNvbmRz IjoNCj4gLSAgICAgICAgICA2ODU4NTMgfSwgImRhdGEiOiB7ICJzcGVlZCI6IDAsICJvZmZzZXQi OiAwLCAibGVuIjogNjcxMDg4NjQsDQo+IC0gICAgICAgICAgImVycm9yIjogIklucHV0L291dHB1 dCBlcnJvciIsICJkZXZpY2UiOiAiZHJpdmUxIiwgInR5cGUiOg0KPiAtICAgICAgICAgICJiYWNr dXAiIH0sICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIiB9DQo+ICsgICAgICAgICAgW2Ry aXZlMC5mdWxsLnFjb3cyXSA8LS0gW2RyaXZlMC5pbmMwLnFjb3cyXQ0KPiArICAgICAgICAgIFtk cml2ZTEuZnVsbC5xY293Ml0NCj4gICANCj4gLS0gIEluIHRoZSBhYm92ZSBleGFtcGxlLCBgYGQw LWluY3ItMS5xY293MmBgIGlzIHZhbGlkIGFuZCBtdXN0IGJlIGtlcHQsDQo+IC0gICBidXQgYGBk MS1pbmNyLTEucWNvdzJgYCBpcyBpbnZhbGlkIGFuZCBzaG91bGQgYmUgZGVsZXRlZC4gSWYgYSBW TS13aWRlDQo+IC0gICBpbmNyZW1lbnRhbCBiYWNrdXAgb2YgYWxsIGRyaXZlcyBhdCBhIHBvaW50 LWluLXRpbWUgaXMgdG8gYmUgbWFkZSwNCj4gLSAgIG5ldyBiYWNrdXBzIGZvciBib3RoIGRyaXZl cyB3aWxsIG5lZWQgdG8gYmUgbWFkZSwgdGFraW5nIGludG8gYWNjb3VudA0KPiAtICAgdGhhdCBh IG5ldyBpbmNyZW1lbnRhbCBiYWNrdXAgZm9yIGRyaXZlMCBuZWVkcyB0byBiZSBiYXNlZCBvbiB0 b3Agb2YNCj4gLSAgIGBgZDAtaW5jci0xLnFjb3cyYGAuDQo+ICtUbyByZXBhaXIgdGhpcywgaXNz dWUgYSBuZXcgaW5jcmVtZW50YWwgYmFja3VwIGFjcm9zcyBib3RoIGRyaXZlcy4gVGhlIHJlc3Vs dA0KPiArd2lsbCBiZSBiYWNrdXAgY2hhaW5zIHRoYXQgcmVzZW1ibGUgdGhlIGZvbGxvd2luZzoN Cj4gICANCj4gLUdyb3VwZWQgQ29tcGxldGlvbiBNb2RlDQo+IC1+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fg0KPiArLi4gY29kZTo6IHRleHQNCj4gICANCj4gLS0gIFdoaWxlIGpvYnMgbGF1bmNoZWQg YnkgdHJhbnNhY3Rpb25zIG5vcm1hbGx5IGNvbXBsZXRlIG9yIGZhaWwgb24NCj4gLSAgIHRoZWly IG93biwgaXQgaXMgcG9zc2libGUgdG8gaW5zdHJ1Y3QgdGhlbSB0byBjb21wbGV0ZSBvciBmYWls DQo+IC0gICB0b2dldGhlciBhcyBhIGdyb3VwLg0KPiArICAgICAgICAgIFtkcml2ZTAuZnVsbC5x Y293Ml0gPC0tIFtkcml2ZTAuaW5jMC5xY293Ml0gPC0tIFtkcml2ZTAuaW5jMS5xY293Ml0NCj4g KyAgICAgICAgICBbZHJpdmUxLmZ1bGwucWNvdzJdIDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSBbZHJpdmUxLmluYzEucWNvdzJdDQo+ICAgDQo+IC0tICBRTVAgdHJhbnNhY3Rpb25zIHRha2Ug YW4gb3B0aW9uYWwgcHJvcGVydGllcyBzdHJ1Y3R1cmUgdGhhdCBjYW4NCj4gLSAgIGFmZmVjdCB0 aGUgc2VtYW50aWNzIG9mIHRoZSB0cmFuc2FjdGlvbi4NCj4gK0V4YW1wbGU6IEdyb3VwZWQgQ29t cGxldGlvbiBNb2RlDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiAgIA0K PiAtLSAgVGhlICJjb21wbGV0aW9uLW1vZGUiIHRyYW5zYWN0aW9uIHByb3BlcnR5IGNhbiBiZSBl aXRoZXIgImluZGl2aWR1YWwiDQo+IC0gICB3aGljaCBpcyB0aGUgZGVmYXVsdCwgbGVnYWN5IGJl aGF2aW9yIGRlc2NyaWJlZCBhYm92ZSwgb3IgImdyb3VwZWQsIg0KPiAtICAgYSBuZXcgYmVoYXZp b3IgZGV0YWlsZWQgYmVsb3cuDQo+ICtXaGlsZSBqb2JzIGxhdW5jaGVkIGJ5IHRyYW5zYWN0aW9u cyBub3JtYWxseSBjb21wbGV0ZSBvciBmYWlsIGluZGl2aWR1YWxseSwNCj4gK2l0J3MgcG9zc2li bGUgdG8gaW5zdHJ1Y3QgdGhlbSB0byBjb21wbGV0ZSBvciBmYWlsIHRvZ2V0aGVyIGFzIGEgZ3Jv dXAuIFFNUA0KPiArdHJhbnNhY3Rpb25zIHRha2UgYW4gb3B0aW9uYWwgcHJvcGVydGllcyBzdHJ1 Y3R1cmUgdGhhdCBjYW4gYWZmZWN0IHRoZQ0KPiArYmVoYXZpb3Igb2YgdGhlIHRyYW5zYWN0aW9u Lg0KPiAgIA0KPiAtLSAgRGVsYXllZCBDb21wbGV0aW9uOiBJbiBncm91cGVkIGNvbXBsZXRpb24g bW9kZSwgbm8gam9icyB3aWxsIHJlcG9ydA0KPiAtICAgc3VjY2VzcyB1bnRpbCBhbGwgam9icyBh cmUgcmVhZHkgdG8gcmVwb3J0IHN1Y2Nlc3MuDQo+ICtUaGUgYGBjb21wbGV0aW9uLW1vZGVgYCB0 cmFuc2FjdGlvbiBwcm9wZXJ0eSBjYW4gYmUgZWl0aGVyIGBgaW5kaXZpZHVhbGBgIHdoaWNoDQo+ ICtpcyB0aGUgZGVmYXVsdCBsZWdhY3kgYmVoYXZpb3IgZGVzY3JpYmVkIGFib3ZlLCBvciBgYGdy b3VwZWRgYCwgZGV0YWlsZWQgYmVsb3cuDQo+ICAgDQo+IC0tICBHcm91cGVkIGZhaWx1cmU6IElm IGFueSBqb2IgZmFpbHMgaW4gZ3JvdXBlZCBjb21wbGV0aW9uIG1vZGUsIGFsbA0KPiAtICAgcmVt YWluaW5nIGpvYnMgd2lsbCBiZSBjYW5jZWxsZWQuIEFueSBpbmNyZW1lbnRhbCBiYWNrdXBzIHdp bGwNCj4gLSAgIHJlc3RvcmUgdGhlaXIgZGlydHkgYml0bWFwIG9iamVjdHMgYXMgaWYgbm8gYmFj a3VwIGNvbW1hbmQgd2FzIGV2ZXINCj4gLSAgIGlzc3VlZC4NCj4gK0luIGBgZ3JvdXBlZGBgIGNv bXBsZXRpb24gbW9kZSwgbm8gam9icyB3aWxsIHJlcG9ydCBzdWNjZXNzIHVudGlsIGFsbCBqb2Jz IGFyZQ0KPiArcmVhZHkgdG8gcmVwb3J0IHN1Y2Nlc3MuIElmIGFueSBqb2IgZmFpbHMsIGFsbCBv dGhlciBqb2JzIHdpbGwgYmUgY2FuY2VsZWQuDQo+ICAgDQo+IC0gICAtICBSZWdhcmRsZXNzIG9m IGlmIFFFTVUgcmVwb3J0cyBhIHBhcnRpY3VsYXIgaW5jcmVtZW50YWwgYmFja3VwIGpvYg0KPiAt ICAgICAgYXMgQ0FOQ0VMTEVEIG9yIGFzIGFuIEVSUk9SLCB0aGUgaW4tbWVtb3J5IGJpdG1hcCB3 aWxsIGJlDQo+IC0gICAgICByZXN0b3JlZC4NCj4gK1JlZ2FyZGxlc3Mgb2YgaWYgYSBwYXJ0aWNp cGF0aW5nIGluY3JlbWVudGFsIGJhY2t1cCBqb2IgZmFpbGVkIG9yIHdhcyBjYW5jZWxlZCwNCj4g K3RoZWlyIGFzc29jaWF0ZWQgYml0bWFwcyB3aWxsIGFsbCBiZSByb2xsZWQgYmFjayBhcyBpbiBp bmRpdmlkdWFsIGZhaWx1cmUNCj4gK2Nhc2VzLg0KPiAgIA0KPiAtRXhhbXBsZQ0KPiAtXl5eXl5e Xg0KPiArSGVyZSdzIHRoZSBzYW1lIG11bHRpLWRyaXZlIGJhY2t1cCBzY2VuYXJpbyBmcm9tIGBF eGFtcGxlOiBQYXJ0aWFsDQo+ICtUcmFuc2FjdGlvbmFsIEZhaWx1cmVzYF8sIGJ1dCB3aXRoIHRo ZSBgYGdyb3VwZWRgYCBjb21wbGV0aW9uLW1vZGUgcHJvcGVydHkNCj4gK2FwcGxpZWQ6DQo+ICAg DQo+IC0tICBIZXJlJ3MgdGhlIHNhbWUgZXhhbXBsZSBzY2VuYXJpbyBmcm9tIGFib3ZlIHdpdGgg dGhlIG5ldyBwcm9wZXJ0eToNCj4gKyMuIElzc3VlIHRoZSBtdWx0aS1kcml2ZSBpbmNyZW1lbnRh bCBiYWNrdXAgdHJhbnNhY3Rpb246DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6IGpzb24NCj4gICAN Cj4gLSAgICAgICB7ICJleGVjdXRlIjogInRyYW5zYWN0aW9uIiwNCj4gKyAgICAtPiB7DQo+ICsg ICAgICAgICAiZXhlY3V0ZSI6ICJ0cmFuc2FjdGlvbiIsDQo+ICAgICAgICAgICAgImFyZ3VtZW50 cyI6IHsNCj4gLSAgICAgICAgICAgImFjdGlvbnMiOiBbDQo+IC0gICAgICAgICAgICAgeyAidHlw ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiAtICAgICAgICAgICAgICAgImRhdGEiOiB7ICJkZXZpY2Ui OiAiZHJpdmUwIiwgImJpdG1hcCI6ICJiaXRtYXAwIiwNCj4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAiZm9ybWF0IjogInFjb3cyIiwgIm1vZGUiOiAiZXhpc3RpbmciLA0KPiAtICAgICAgICAg ICAgICAgICAgICAgICAgICJzeW5jIjogImluY3JlbWVudGFsIiwgInRhcmdldCI6ICJkMC1pbmNy LTEucWNvdzIiIH0gfSwNCj4gLSAgICAgICAgICAgICB7ICJ0eXBlIjogImRyaXZlLWJhY2t1cCIs DQo+IC0gICAgICAgICAgICAgICAiZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTEiLCAiYml0bWFw IjogImJpdG1hcDEiLA0KPiAtICAgICAgICAgICAgICAgICAgICAgICAgICJmb3JtYXQiOiAicWNv dzIiLCAibW9kZSI6ICJleGlzdGluZyIsDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgInN5 bmMiOiAiaW5jcmVtZW50YWwiLCAidGFyZ2V0IjogImQxLWluY3ItMS5xY293MiIgfSB9LA0KPiAt ICAgICAgICAgICBdLA0KPiAgICAgICAgICAgICAgInByb3BlcnRpZXMiOiB7DQo+ICAgICAgICAg ICAgICAgICJjb21wbGV0aW9uLW1vZGUiOiAiZ3JvdXBlZCINCj4gLSAgICAgICAgICAgfQ0KPiAr ICAgICAgICAgICB9LA0KPiArICAgICAgICAgICAiYWN0aW9ucyI6IFsNCj4gKyAgICAgICAgICAg ew0KPiArICAgICAgICAgICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAg ICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsg ICAgICAgICAgICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAgICAgICAgICAgICAgImZv cm1hdCI6ICJxY293MiIsDQo+ICsgICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyIsDQo+ ICsgICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAg ICAidGFyZ2V0IjogImRyaXZlMC5pbmMwLnFjb3cyIg0KPiArICAgICAgICAgICAgIH0NCj4gKyAg ICAgICAgICAgfSwNCj4gKyAgICAgICAgICAgew0KPiArICAgICAgICAgICAgICJ0eXBlIjogImRy aXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAg ICAiZGV2aWNlIjogImRyaXZlMSIsDQo+ICsgICAgICAgICAgICAgICAiYml0bWFwIjogImJpdG1h cDAiLA0KPiArICAgICAgICAgICAgICAgImZvcm1hdCI6ICJxY293MiIsDQo+ICsgICAgICAgICAg ICAgICAibW9kZSI6ICJleGlzdGluZyIsDQo+ICsgICAgICAgICAgICAgICAic3luYyI6ICJpbmNy ZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAgICAidGFyZ2V0IjogImRyaXZlMS5pbmMwLnFjb3cy Ig0KPiArICAgICAgICAgICAgIH0NCj4gKyAgICAgICAgICAgfV0NCj4gICAgICAgICAgICB9DQo+ ICAgICAgICAgIH0NCj4gICANCj4gLS0gIFFNUCBleGFtcGxlIHJlc3BvbnNlLCBoaWdobGlnaHRp bmcgYSBmYWlsdXJlIGZvciBgYGRyaXZlMmBgOg0KPiAtDQo+IC0gICAtICBBY2tub3dsZWRnZW1l bnQgdGhhdCB0aGUgVHJhbnNhY3Rpb24gd2FzIGFjY2VwdGVkIGFuZCBqb2JzIHdlcmUNCj4gLSAg ICAgIGxhdW5jaGVkOg0KPiAtDQo+IC0gICAgICAuLiBjb2RlOjoganNvbg0KPiAtDQo+IC0gICAg ICAgICAgeyAicmV0dXJuIjoge30gfQ0KPiAtDQo+IC0gICAtICBMYXRlciwgUUVNVSBzZW5kcyBu b3RpY2UgdGhhdCB0aGUgc2Vjb25kIGpvYiBoYXMgZXJyb3JlZCBvdXQsIGJ1dA0KPiAtICAgICAg dGhhdCB0aGUgZmlyc3Qgam9iIHdhcyBhbHNvIGNhbmNlbGxlZDoNCj4gLQ0KPiAtICAgICAgLi4g Y29kZTo6IGpzb24NCj4gLQ0KPiAtICAgICAgICAgIHsgInRpbWVzdGFtcCI6IHsgInNlY29uZHMi OiAxNDQ3MTkzNzAyLCAibWljcm9zZWNvbmRzIjogNjMyMzc3IH0sDQo+IC0gICAgICAgICAgICAi ZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTEiLCAiYWN0aW9uIjogInJlcG9ydCIsDQo+IC0gICAg ICAgICAgICAgICAgICAgICAgIm9wZXJhdGlvbiI6ICJyZWFkIiB9LA0KPiAtICAgICAgICAgICAg ImV2ZW50IjogIkJMT0NLX0pPQl9FUlJPUiIgfQ0KPiAtDQo+IC0gICAgICAuLiBjb2RlOjoganNv bg0KPiAtDQo+IC0gICAgICAgICAgeyAidGltZXN0YW1wIjogeyAic2Vjb25kcyI6IDE0NDcxOTM3 MDIsICJtaWNyb3NlY29uZHMiOiA2NDAwNzQgfSwNCj4gLSAgICAgICAgICAgICJkYXRhIjogeyAi c3BlZWQiOiAwLCAib2Zmc2V0IjogMCwgImxlbiI6IDY3MTA4ODY0LA0KPiAtICAgICAgICAgICAg ICAgICAgICAgICJlcnJvciI6ICJJbnB1dC9vdXRwdXQgZXJyb3IiLA0KPiAtICAgICAgICAgICAg ICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwgInR5cGUiOiAiYmFja3VwIiB9LA0KPiAtICAg ICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9DT01QTEVURUQiIH0NCj4gLQ0KPiAtICAgICAg Li4gY29kZTo6IGpzb24NCj4gLQ0KPiAtICAgICAgICAgIHsgInRpbWVzdGFtcCI6IHsgInNlY29u ZHMiOiAxNDQ3MTkzNzAyLCAibWljcm9zZWNvbmRzIjogNjQwMTYzIH0sDQo+IC0gICAgICAgICAg ICAiZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTAiLCAidHlwZSI6ICJiYWNrdXAiLCAic3BlZWQi OiAwLA0KPiAtICAgICAgICAgICAgICAgICAgICAgICJsZW4iOiA2NzEwODg2NCwgIm9mZnNldCI6 IDE2Nzc3MjE2IH0sDQo+IC0gICAgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NBTkNFTExF RCIgfQ0KPiArIy4gUmVjZWl2ZSBhY2tub3dsZWRnZW1lbnQgdGhhdCB0aGUgVHJhbnNhY3Rpb24g d2FzIGFjY2VwdGVkLCBhbmQgam9icyB3ZXJlDQo+ICsgICBsYXVuY2hlZDoNCj4gKw0KPiArICAg IDwtIHsgInJldHVybiI6IHt9IH0NCg0KaW4gcHJldmlvdXMgZXhhbXBsZSwgeW91IGluc3RlYWQg YWRkIGEgbm90ZToNCiAgIE5vdGUgdGhhdCB0aGUNCiAgIHRyYW5zYWN0aW9uIGlzIGFjY2VwdGVk LCBpbmRpY2F0aW5nIHRoYXQgdGhlIGpvYnMgYXJlIHN0YXJ0ZWQgc3VjY2VzZnVsbHkuDQoNCj4g Kw0KPiArIy4gUmVjZWl2ZSBub3RpZmljYXRpb24gdGhhdCB0aGUgYmFja3VwIGpvYiBmb3IgYGBk cml2ZTFgYCBoYXMgZmFpbGVkOg0KPiArDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsg ICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRh dGEiOiB7DQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAgICAgICAg ImFjdGlvbiI6ICJyZXBvcnQiLA0KPiArICAgICAgICAgICAib3BlcmF0aW9uIjogInJlYWQiDQo+ ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9FUlJPUiINCj4g KyAgICAgICB9DQo+ICsNCj4gKyAgICA8LSB7DQo+ICsgICAgICAgICAidGltZXN0YW1wIjogey4u Ln0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAgICAgInNwZWVkIjogMCwNCj4g KyAgICAgICAgICAgIm9mZnNldCI6IDAsDQo+ICsgICAgICAgICAgICJsZW4iOiA2NzEwODg2NCwN Cj4gKyAgICAgICAgICAgImVycm9yIjogIklucHV0L291dHB1dCBlcnJvciIsDQo+ICsgICAgICAg ICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIg0K PiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVE Ig0KPiArICAgICAgIH0NCj4gKw0KPiArIy4gUmVjZWl2ZSBub3RpZmljYXRpb24gdGhhdCB0aGUg am9iIGZvciBgYGRyaXZlMGBgIGhhcyBiZWVuIGNhbmNlbGVkOg0KPiArDQo+ICsgICAuLiBjb2Rl OjoganNvbg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59 DQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTAi LA0KPiArICAgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0KPiArICAgICAgICAgICAic3BlZWQi OiAwLA0KPiArICAgICAgICAgICAibGVuIjogNjcxMDg4NjQsDQo+ICsgICAgICAgICAgICJvZmZz ZXQiOiAxNjc3NzIxNg0KPiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVudCI6ICJCTE9D S19KT0JfQ0FOQ0VMTEVEIg0KPiArICAgICAgIH0NCj4gICANCg0KR29vZCB0byBhZGQgaGVyZSBz b21lIGNvbmNsdXNpb24gZm9yIGV4YW1wbGUsIGxpa2UgcmVtb3ZpbmcgZmFpbGVkIHRhcmdldCBp bWFnZXMNCmFuZCBub3RlIHRoZSB0aGUgdHJhbnNhY3Rpb24gb3BlcmF0aW9uIG1heSBiZSBzYWZl bHkgcmV0cmllZC4NCg0KDQo+ICAgLi4gcmF3OjogaHRtbA0KPiAgIA0KPiAgICAgIDwhLS0NCj4g ICAgICBUaGUgRnJlZUJTRCBEb2N1bWVudGF0aW9uIExpY2Vuc2UNCj4gICANCj4gLSAgIFJlZGlz dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIChNYXJrZG93bikgYW5kICdjb21waWxlZCcgZm9y bXMgKFNHTUwsIEhUTUwsDQo+IC0gICBQREYsIFBvc3RTY3JpcHQsIFJURiBhbmQgc28gZm9ydGgp IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQNCj4gLSAgIHByb3Zp ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6DQo+ICsgICBSZWRpc3Ry aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSAoUmVTVCkgYW5kICdjb21waWxlZCcgZm9ybXMgKFNH TUwsIEhUTUwsDQo+ICsgICBQREYsIFBvc3RTY3JpcHQsIFJURiBhbmQgc28gZm9ydGgpIHdpdGgg b3Igd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZQ0KPiArICAgcGVybWl0dGVkIHByb3ZpZGVkIHRo YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6DQo+ICAgDQo+IC0gICBSZWRpc3Ry aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgKE1hcmtkb3duKSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg Y29weXJpZ2h0DQo+IC0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg Zm9sbG93aW5nIGRpc2NsYWltZXIgb2YgdGhpcyBmaWxlDQo+IC0gICB1bm1vZGlmaWVkLg0KPiAr ICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIChSZVNUKSBtdXN0IHJldGFpbiB0aGUg YWJvdmUgY29weXJpZ2h0IG5vdGljZSwNCj4gKyAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgb2YgdGhpcyBmaWxlIHVubW9kaWZpZWQuDQo+ICAg DQo+IC0gICBSZWRpc3RyaWJ1dGlvbnMgaW4gY29tcGlsZWQgZm9ybSAodHJhbnNmb3JtZWQgdG8g b3RoZXIgRFREcywgY29udmVydGVkIHRvIFBERiwNCj4gLSAgIFBvc3RTY3JpcHQsIFJURiBhbmQg b3RoZXIgZm9ybWF0cykgbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us DQo+IC0gICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vcg0KPiAtICAgb3RoZXIgbWF0ZXJpYWxzIHBy b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gKyAgIFJlZGlzdHJpYnV0aW9ucyBpbiBj b21waWxlZCBmb3JtICh0cmFuc2Zvcm1lZCB0byBvdGhlciBEVERzLCBjb252ZXJ0ZWQgdG8NCj4g KyAgIFBERiwgUG9zdFNjcmlwdCwgUlRGIGFuZCBvdGhlciBmb3JtYXRzKSBtdXN0IHJlcHJvZHVj ZSB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ICsgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ICsgICBkb2N1bWVudGF0 aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u Lg0KPiAgIA0KPiAtICAgVEhJUyBET0NVTUVOVEFUSU9OIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyINCj4gLSAgIEFORCBBTlkgRVhQ UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP LCBUSEUNCj4gLSAgIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ VE5FU1MgRk9SIEEgUEFSVElDVUxBUiAgUFVSUE9TRSBBUkUNCj4gLSAgIERJU0NMQUlNRUQuIElO IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyAgQkUg TElBQkxFDQo+IC0gICBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTA0KPiAtICAgREFNQUdFUyAoSU5DTFVESU5H LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IN Cj4gLSAgIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSDQo+IC0gICBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLA0KPiAt ICAgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YNCj4gLSAgIFRISVMgRE9DVU1FTlRBVElPTiwgRVZF TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4NCj4gKyAgIFRI SVMgRE9DVU1FTlRBVElPTiBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E IENPTlRSSUJVVE9SUyAiQVMNCj4gKyAgIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ICsgICBJTVBM SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRQ0KPiArICAgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI RSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQ0KPiArICAgTElBQkxFIEZPUiBB TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUg0K PiArICAgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU TywgUFJPQ1VSRU1FTlQgT0YNCj4gKyAgIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUw0KPiArICAgSU5URVJSVVBU SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI RVIgSU4NCj4gKyAgIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpDQo+ICsgICBBUklTSU5HIElOIEFOWSBXQVkgT1VU IE9GIFRIRSBVU0UgT0YgVEhJUyBET0NVTUVOVEFUSU9OLCBFVkVOIElGIEFEVklTRUQgT0YNCj4g KyAgIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4NCj4gICAgICAtLT4NCj4gZGlmZiAt LWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUNCj4gaW5kZXggMDRhMGQ0NTA1MC4uZmY5Y2UyZWQ0 YyAxMDA2NDQNCj4gLS0tIGEvTWFrZWZpbGUNCj4gKysrIGIvTWFrZWZpbGUNCj4gQEAgLTg5OSw3 ICs4OTksNyBAQCBkb2NzL3ZlcnNpb24udGV4aTogJChTUkNfUEFUSCkvVkVSU0lPTg0KPiAgIHNw aGlueGRvY3M6ICQoTUFOVUFMX0JVSUxERElSKS9kZXZlbC9pbmRleC5odG1sICQoTUFOVUFMX0JV SUxERElSKS9pbnRlcm9wL2luZGV4Lmh0bWwNCj4gICANCj4gICAjIENhbm5lZCBjb21tYW5kIHRv IGJ1aWxkIGEgc2luZ2xlIG1hbnVhbA0KPiAtYnVpbGQtbWFudWFsID0gJChjYWxsIHF1aWV0LWNv bW1hbmQsc3BoaW54LWJ1aWxkICQoaWYgJChWKSwsLXEpIC1iIGh0bWwgLUQgdmVyc2lvbj0kKFZF UlNJT04pIC1EIHJlbGVhc2U9IiQoRlVMTF9WRVJTSU9OKSIgLWQgLmRvY3RyZWVzLyQxICQoU1JD X1BBVEgpL2RvY3MvJDEgJChNQU5VQUxfQlVJTERESVIpLyQxICwiU1BISU5YIiwiJChNQU5VQUxf QlVJTERESVIpLyQxIikNCj4gK2J1aWxkLW1hbnVhbCA9ICQoY2FsbCBxdWlldC1jb21tYW5kLHNw aGlueC1idWlsZCAkKGlmICQoViksLC1xKSAtbiAtYiBodG1sIC1EIHZlcnNpb249JChWRVJTSU9O KSAtRCByZWxlYXNlPSIkKEZVTExfVkVSU0lPTikiIC1kIC5kb2N0cmVlcy8kMSAkKFNSQ19QQVRI KS9kb2NzLyQxICQoTUFOVUFMX0JVSUxERElSKS8kMSAsIlNQSElOWCIsIiQoTUFOVUFMX0JVSUxE RElSKS8kMSIpDQoNCndoYXQgaXMgJy1uJz8NCg0KPiAgICMgV2UgYXNzdW1lIGFsbCBSU1QgZmls ZXMgaW4gdGhlIG1hbnVhbCdzIGRpcmVjdG9yeSBhcmUgdXNlZCBpbiBpdA0KPiAgIG1hbnVhbC1k ZXBzID0gJCh3aWxkY2FyZCAkKFNSQ19QQVRIKS9kb2NzLyQxLyoucnN0KSAkKFNSQ19QQVRIKS9k b2NzLyQxL2NvbmYucHkgJChTUkNfUEFUSCkvZG9jcy9jb25mLnB5DQo+ICAgDQo+IA0KDQoNCi0t IA0KQmVzdCByZWdhcmRzLA0KVmxhZGltaXINCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.7 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 37813C10F0E for ; Thu, 18 Apr 2019 16:40:12 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A136D2064A for ; Thu, 18 Apr 2019 16:40:11 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="Y7ocd0y3" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A136D2064A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=virtuozzo.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([127.0.0.1]:44257 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hHA54-0002Lx-T1 for qemu-devel@archiver.kernel.org; Thu, 18 Apr 2019 12:40:10 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59520) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hHA3l-0001je-2R for qemu-devel@nongnu.org; Thu, 18 Apr 2019 12:38:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hHA3f-0000mO-0W for qemu-devel@nongnu.org; Thu, 18 Apr 2019 12:38:49 -0400 Received: from mail-eopbgr50123.outbound.protection.outlook.com ([40.107.5.123]:45351 helo=EUR03-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hHA3d-0000l9-UY; Thu, 18 Apr 2019 12:38:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nT7imfZJZVTfDylQRpC13NHa2gewzWIbVni2DKHtbUg=; b=Y7ocd0y3g9bhGF9dWqrll6wdZ15N6Om1U24MEb9gNtsioksVwVprnbbmNWEezt2wfaxb+qgZPahVRIqsGf+flKjdopDNv4WzjyOXDgkXvI/UWG81msQwMJMR0c6ZvXXKg/TcJd+1pgSR79g/M1XHYhFT6+CL+DT1VXTNt5PZqAs= Received: from DB7PR08MB3851.eurprd08.prod.outlook.com (20.178.46.222) by DB7PR08MB3196.eurprd08.prod.outlook.com (52.134.110.158) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1792.19; Thu, 18 Apr 2019 16:38:38 +0000 Received: from DB7PR08MB3851.eurprd08.prod.outlook.com ([fe80::3c82:5da0:1633:f949]) by DB7PR08MB3851.eurprd08.prod.outlook.com ([fe80::3c82:5da0:1633:f949%3]) with mapi id 15.20.1792.018; Thu, 18 Apr 2019 16:38:38 +0000 From: Vladimir Sementsov-Ogievskiy To: John Snow , "qemu-block@nongnu.org" , "qemu-devel@nongnu.org" Thread-Topic: [PATCH] docs/interop/bitmaps: rewrite and modernize doc Thread-Index: AQHU9Xus1SZmqjG8oEu47yQfZgdvn6ZCH12A Date: Thu, 18 Apr 2019 16:38:37 +0000 Message-ID: <5da294b5-b0d7-2ec2-7fa7-f69c6c4f220a@virtuozzo.com> References: <20190418001413.32627-1-jsnow@redhat.com> In-Reply-To: <20190418001413.32627-1-jsnow@redhat.com> Accept-Language: ru-RU, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HE1PR0501CA0028.eurprd05.prod.outlook.com (2603:10a6:3:1a::38) To DB7PR08MB3851.eurprd08.prod.outlook.com (2603:10a6:10:7b::30) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vsementsov@virtuozzo.com; x-ms-exchange-messagesentrepresentingtype: 1 x-tagtoolbar-keys: D20190418193835327 x-originating-ip: [185.231.240.5] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: d3cc6cc6-1a16-464c-0da1-08d6c41c4e83 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600141)(711020)(4605104)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:DB7PR08MB3196; x-ms-traffictypediagnostic: DB7PR08MB3196: x-microsoft-antispam-prvs: x-forefront-prvs: 0011612A55 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(366004)(136003)(39850400004)(346002)(376002)(52314003)(20264003)(55674003)(199004)(189003)(2201001)(66066001)(99286004)(26005)(6116002)(8676002)(53946003)(6512007)(347745004)(478600001)(97736004)(102836004)(2501003)(229853002)(52116002)(53936002)(6436002)(68736007)(54906003)(31686004)(6486002)(76176011)(7736002)(11346002)(476003)(446003)(2616005)(316002)(486006)(5024004)(14444005)(31696002)(86362001)(3846002)(81156014)(25786009)(14454004)(305945005)(30864003)(71200400001)(71190400001)(110136005)(5660300002)(386003)(6506007)(186003)(4326008)(36756003)(2906002)(6246003)(81166006)(256004)(8936002)(569006); DIR:OUT; SFP:1102; SCL:1; SRVR:DB7PR08MB3196; H:DB7PR08MB3851.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: OpB1c8+iJlKPeOeQKDPgFE2IiunT32OIqx4OLykQ3Pc/NFtDBWqyj4PXF54y7w+EgLPN0ths3o53nOitVr/wcepiW4A0crh5MxtZAdI7ClACYhD6mymYgHG7KL5FEXIT0Y4EFNvigb406PUe8GXt8outMFqcDyyVWZ0p+xbtSyIfIjm7lTdc4Zfsv4Zt/f2Yi2PqBge1WQ7ITYSwhgsn58f3eZDmJH2P/EzvhbV9KGdBNaVYtqNztH4xyAOmrXJf2ht7tN4VNWnlKqsuIpJfcYaNBY24FlrPY2oxr1uXOBScz9ZuUjXEn1Fpg1iRDa4O7ZCXNmJsyeT09PbDHNDoRrJqPSenQdIxD7//75AXsKB8Fad3+bsFRo9Kb0YQWq9+ofp6huunjm5YmAXTtt/PpObyAgha9Zch18y5xDzfZH0= Content-Type: text/plain; charset="UTF-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: d3cc6cc6-1a16-464c-0da1-08d6c41c4e83 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Apr 2019 16:38:37.9367 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3196 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.5.123 Subject: Re: [Qemu-devel] [PATCH] docs/interop/bitmaps: rewrite and modernize doc X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Fam Zheng , "armbru@redhat.com" , "kchamart@redhat.com" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Message-ID: <20190418163837.4XB8CCnNwyHVm77MYLa_cRlJjLw9dyLQ4v9lI_5t1QI@z> MTguMDQuMjAxOSAzOjE0LCBKb2huIFNub3cgd3JvdGU6DQo+IFRoaXMganVzdCBhYm91dCByZXdy aXRlcyB0aGUgZW50aXJldHkgb2YgdGhlIGJpdG1hcHMucnN0IGRvY3VtZW50IHRvDQo+IG1ha2Ug aXQgY29uc2lzdGVudCB3aXRoIHRoZSA0LjAgcmVsZWFzZS4gSSBoYXZlIGFkZGVkIG5ldyBmZWF0 dXJlcyBzZWVuDQo+IGluIHRoZSA0LjAgcmVsZWFzZSwgYXMgd2VsbCBhcyB0cmllZCB0byBjbGFy aWZ5IHNvbWUgcG9pbnRzIHRoYXQga2VlcA0KPiBjb21pbmcgdXAgd2hlbiBkaXNjdXNzaW5nIHRo aXMgZmVhdHVyZSBib3RoIGluLWhvdXNlIGFuZCB1cHN0cmVhbS4NCj4gDQo+IFllcywgaXQncyBh IGxvdCBsb25nZXIsIG1vc3RseSBkdWUgdG8gZXhhbXBsZXMuIEkgZ2V0IGEgYml0IGNoYXR0eS4N Cj4gSSBjb3VsZCB1c2UgYSBnb29kIGVkaXRvciB0byBoZWxwIHJlaWduIGluIG15IGNoYXR0aW5l c3MuDQo+IA0KPiBJdCBkb2VzIG5vdCB5ZXQgY292ZXIgcHVsbCBiYWNrdXBzIG9yIG1pZ3JhdGlv biBkZXRhaWxzLCBidXQgSSBpbnRlbmQgdG8NCj4ga2VlcCBleHRlbmRpbmcgdGhpcyBkb2N1bWVu dCB0byBjb3ZlciB0aG9zZSBjYXNlcy4NCj4gDQo+IFBsZWFzZSB0cnkgY29tcGlsaW5nIGl0IHdp dGggc3BoaW54IGFuZCBsb29rIGF0IHRoZSByZW5kZXJlZCBvdXRwdXQsIEkNCj4gZG9uJ3QgaGF2 ZSBob3N0aW5nIHRvIHNoYXJlIG15IGNvcHkgYXQgcHJlc2VudC4gSSB0aGluayB0aGlzIG5ldyBs YXlvdXQNCj4gcmVhZHMgbmljZXIgaW4gdGhlIEhUTUwgZm9ybWF0IHRoYW4gdGhlIG9sZCBvbmUg ZGlkLCBhdCB0aGUgZXhwZW5zZSBvZg0KPiBsb29raW5nIGxlc3MgcmVhZGFibGUgaW4gdGhlIHNv dXJjZSB0cmVlIGl0c2VsZiAodGhvdWdoIG5vdCBjb21wbGV0ZWx5DQo+IHVubWFuYWdhYmxlLiBX ZSBkaWQgZGVjaWRlIHRvIGNvbnZlcnQgaXQgZnJvbSBNYXJrZG93biB0byBSZVNULCBhZnRlcg0K PiBhbGwsIHNvIEkgYW0gZ29pbmcgYWxsLWluIG9uIFJlU1QuKQ0KPiANCj4gU2lnbmVkLW9mZi1i eTogSm9obiBTbm93IDxqc25vd0ByZWRoYXQuY29tPg0KPiAtLS0NCj4gICBkb2NzL2ludGVyb3Av Yml0bWFwcy5yc3QgfCAxNDk5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0t DQo+ICAgTWFrZWZpbGUgICAgICAgICAgICAgICAgIHwgICAgMiArLQ0KPiAgIDIgZmlsZXMgY2hh bmdlZCwgMTE5MiBpbnNlcnRpb25zKCspLCAzMDkgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0t Z2l0IGEvZG9jcy9pbnRlcm9wL2JpdG1hcHMucnN0IGIvZG9jcy9pbnRlcm9wL2JpdG1hcHMucnN0 DQo+IGluZGV4IDdiY2ZlN2Y0NjEuLmEzOWQxZmM4NzEgMTAwNjQ0DQo+IC0tLSBhL2RvY3MvaW50 ZXJvcC9iaXRtYXBzLnJzdA0KPiArKysgYi9kb2NzL2ludGVyb3AvYml0bWFwcy5yc3QNCg0KeW91 IG1heSB3YW50IHRvIHVwZGF0ZSBjb3B5cmlnaHQgZGF0ZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRo ZSBmaWxlDQoNCj4gQEAgLTksMTI4ICs5LDQ4MSBAQA0KPiAgIERpcnR5IEJpdG1hcHMgYW5kIElu Y3JlbWVudGFsIEJhY2t1cA0KPiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQ0KPiAgIA0KPiAtLSAgRGlydHkgQml0bWFwcyBhcmUgb2JqZWN0cyB0aGF0IHRyYWNrIHdoaWNo IGRhdGEgbmVlZHMgdG8gYmUgYmFja2VkIHVwDQo+IC0gICBmb3IgdGhlIG5leHQgaW5jcmVtZW50 YWwgYmFja3VwLg0KPiArRGlydHkgQml0bWFwcyBhcmUgaW4tbWVtb3J5IG9iamVjdHMgdGhhdCB0 cmFjayB3cml0ZXMgdG8gYmxvY2sgZGV2aWNlcy4gVGhleSBjYW4NCj4gK2JlIHVzZWQgaW4gY29u anVuY3Rpb24gd2l0aCB2YXJpb3VzIGJsb2NrIGpvYiBvcGVyYXRpb25zIHRvIHBlcmZvcm0gaW5j cmVtZW50YWwNCj4gK29yIGRpZmZlcmVudGlhbCBiYWNrdXAgcmVnaW1lbnMuDQo+ICAgDQo+IC0t ICBEaXJ0eSBiaXRtYXBzIGNhbiBiZSBjcmVhdGVkIGF0IGFueSB0aW1lIGFuZCBhdHRhY2hlZCB0 byBhbnkgbm9kZQ0KPiAtICAgKG5vdCBqdXN0IGNvbXBsZXRlIGRyaXZlcykuDQo+ICtUaGlzIGRv Y3VtZW50IGV4cGxhaW5zIHRoZSBjb25jZXB0dWFsIG1lY2hhbmlzbXMsIGFzIHdlbGwgYXMgdXAt dG8tZGF0ZSwNCj4gK2NvbXBsZXRlIGFuZCBjb21wcmVoZW5zaXZlIGRvY3VtZW50YXRpb24gb24g dGhlIEFQSSB0byBtYW5pcHVsYXRlIHRoZW0uDQo+ICsoSG9wZWZ1bGx5LCB0aGUgIndoeSIsICJ3 aGF0IiwgYW5kICJob3ciLikNCj4gKw0KPiArVGhlIGludGVuZGVkIGF1ZGllbmNlIGZvciB0aGlz IGRvY3VtZW50IGlzIGRldmVsb3BlcnMgd2hvIGFyZSBhZGRpbmcgUUVNVSBiYWNrdXANCj4gK2Zl YXR1cmVzIHRvIG1hbmFnZW1lbnQgYXBwbGljYXRpb25zLCBvciBwb3dlciB1c2VycyB3aG8gcnVu IGFuZCBhZG1pbmlzdGVyIFFFTVUNCj4gK2RpcmVjdGx5IHZpYSBRTVAuDQo+ICAgDQo+ICAgLi4g Y29udGVudHM6Og0KPiAgIA0KPiArT3ZlcnZpZXcNCj4gKy0tLS0tLS0tDQo+ICsNCj4gK0JpdG1h cHMgYXJlIGJpdCB2ZWN0b3JzIHdoZXJlIGVhY2ggJzEnIGJpdCBpbiB0aGUgdmVjdG9yIGluZGlj YXRlcyBhIG1vZGlmaWVkDQo+ICsoImRpcnR5Iikgc2VnbWVudCBvZiB0aGUgY29ycmVzcG9uZGlu ZyBibG9jayBkZXZpY2UuIFRoZSBzaXplIG9mIHRoZSBzZWdtZW50DQo+ICt0aGF0IGlzIHRyYWNr ZWQgaXMgdGhlIGdyYW51bGFyaXR5IG9mIHRoZSBiaXRtYXAuIElmIHRoZSBncmFudWxhcml0eSBv ZiBhIGJpdG1hcA0KPiAraXMgNjRLLCBlYWNoICcxJyBiaXQgbWVhbnMgdGhhdCBhbiBlbnRpcmUg NjRLIHJlZ2lvbiBjaGFuZ2VkIGluIHNvbWUgd2F5Lg0KDQpobSBub3QgZXhhY3RseS4g0KFvbnZl cnNlbHksIGlmIHdlIGNoYW5nZSBub3QgdGhlIGVudGlyZSByZWdpb24gYnV0IG9ubHkgb24gYnl0 ZSBvZiBpdCwNCmNvcnJlc3BvbmRpbmcgYml0IGluIHRoZSBiaXRtYXAgd291bGQgYmUgc2V0Li4N Cg0KPiArDQo+ICtTbWFsbGVyIGdyYW51bGFyaXRpZXMgbWVhbiBtb3JlIGFjY3VyYXRlIHRyYWNr aW5nIG9mIG1vZGlmaWVkIGRpc2sgZGF0YSwgYnV0DQo+ICtyZXF1aXJlcyBtb3JlIGNvbXB1dGF0 aW9uYWwgb3ZlcmhlYWQgYW5kIGxhcmdlciBiaXRtYXAgc2l6ZXMuIExhcmdlcg0KPiArZ3JhbnVs YXJpdGllcyBtZWFuIHNtYWxsZXIgYml0bWFwIHNpemVzLCBidXQgbGVzcyB0YXJnZXRlZCBiYWNr dXBzLg0KPiArDQo+ICtUaGUgc2l6ZSBvZiBhIGJpdG1hcCAoaW4gYnl0ZXMpIGNhbiBiZSBjb21w dXRlZCBhcyBzdWNoOg0KPiArICAgIGBgc2l6ZWBgID0gKChgYGltYWdlX3NpemVgYCAvIGBgZ3Jh bnVsYXJpdHlgYCkgLyA4KQ0KDQpib3RoIGRpdmlzaW9ucyBzaG91bGQgcm91bmQgdXANCg0KPiAr DQo+ICtlLmcuIHRoZSBzaXplIG9mIGEgNjRLaUIgZ3JhbnVsYXJpdHkgYml0bWFwIG9uIGEgMlRp QiBpbWFnZSBpczoNCj4gKyAgICBgYHNpemVgYCA9ICgoMjE0NzQ4MzY0OEsgLyA2NEspIC8gOCkN Cj4gKyAgICAgICAgID0gNDE5NDMwNEIgPSA0TWlCLg0KPiArDQo+ICtRRU1VIHVzZXMgdGhlc2Ug Yml0bWFwcyB3aGVuIG1ha2luZyBpbmNyZW1lbnRhbCBiYWNrdXBzIHRvIGtub3cgd2hpY2gNCj4g K3NlY3Rpb25zIG9mIHRoZSBmaWxlIHRvIGNvcHkgb3V0LiBUaGV5IGFyZSBub3QgZW5hYmxlZCBi eSBkZWZhdWx0IGFuZA0KPiArbXVzdCBiZSBleHBsaWNpdGx5IGFkZGVkIGluIG9yZGVyIHRvIGJl Z2luIHRyYWNraW5nIHdyaXRlcy4NCj4gKw0KPiArQml0bWFwcyBjYW4gYmUgY3JlYXRlZCBhdCBh bnkgdGltZSBhbmQgY2FuIGJlIGF0dGFjaGVkIHRvIGFueQ0KPiArYXJiaXRyYXJ5IGJsb2NrIG5v ZGUgaW4gdGhlIHN0b3JhZ2UgZ3JhcGgsIGJ1dCBhcmUgbW9zdCB1c2VmdWwNCj4gK2NvbmNlcHR1 YWxseSB3aGVuIGF0dGFjaGVkIHRvIHRoZSByb290IG5vZGUgYXR0YWNoZWQgdG8gdGhlIGd1ZXN0 J3MNCj4gK3N0b3JhZ2UgZGV2aWNlIG1vZGVsLg0KPiArDQo+ICsoV2hpY2ggaXMgYSByZWFsbHkg Y2hhdHR5IHdheSBvZiBzYXlpbmc6IEl0J3MgbGlrZWx5IG1vc3QgdXNlZnVsIHRvDQo+ICt0cmFj ayB0aGUgZ3Vlc3QncyB3cml0ZXMgdG8gZGlzaywgYnV0IHlvdSBjb3VsZCB0aGVvcmV0aWNhbGx5 IHRyYWNrDQo+ICt0aGluZ3MgbGlrZSBxY293MiBtZXRhZGF0YSBjaGFuZ2VzIGJ5IGF0dGFjaGlu ZyB0aGUgYml0bWFwIGVsc2V3aGVyZQ0KPiAraW4gdGhlIHN0b3JhZ2UgZ3JhcGguKQ0KPiArDQo+ ICtRRU1VIHN1cHBvcnRzIHBlcnNpc3RpbmcgdGhlc2UgYml0bWFwcyB0byBkaXNrIHZpYSB0aGUg cWNvdzIgaW1hZ2UgZm9ybWF0Lg0KPiArQml0bWFwcyB3aGljaCBhcmUgc3RvcmVkIG9yIGxvYWRl ZCBpbiB0aGlzIHdheSBhcmUgY2FsbGVkICJwZXJzaXN0ZW50Iiwgd2hlcmVhcw0KPiArYml0bWFw cyB0aGF0IGFyZSBub3QgYXJlIGNhbGxlZCAidHJhbnNpZW50Ii4NCj4gKw0KPiArUUVNVSBhbHNv IHN1cHBvcnRzIHRoZSBtaWdyYXRpb24gb2YgYm90aCB0cmFuc2llbnQgYml0bWFwcyAodHJhY2tp bmcgYW55DQo+ICthcmJpdHJhcnkgaW1hZ2UgZm9ybWF0KSBvciBwZXJzaXN0ZW50IGJpdGFwcyAo cWNvdzIpIHZpYSBsaXZlIG1pZ3JhdGlvbi4NCg0Kcy9iaXRhcHMvYml0bWFwcw0KDQpub3Qgc3Vy ZSBpdCBzaG91bGQgYmUgbWVudGlvbmVkOiBvbmx5IG5hbWVkIGJpdG1hcHMgYXJlIG1pZ3JhdGVk Lg0KDQo+ICsNCj4gK1N1cHBvcnRlZCBJbWFnZSBGb3JtYXRzDQo+ICstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ0KPiArDQo+ICtRRU1VIHN1cHBvcnRzIGFsbCBkb2N1bWVudGVkIGZlYXR1cmVzIGJl bG93IG9uIHRoZSBxY293MiBpbWFnZSBmb3JtYXQuDQo+ICsNCj4gK0hvd2V2ZXIsIHFjb3cyIGlz IG9ubHkgc3RyaWN0bHkgbmVjZXNzYXJ5IGZvciB0aGUgcGVyc2lzdGVuY2UgZmVhdHVyZSwgd2hp Y2gNCj4gK3dyaXRlcyBiaXRtYXAgZGF0YSB0byBkaXNrIHVwb24gY2xvc2UuIElmIHBlcnNpc3Rl bmNlIGlzIG5vdCByZXF1aXJlZCBmb3IgYQ0KPiArc3BlY2lmaWMgdXNlIGNhc2UsIGFsbCBiaXRt YXAgZmVhdHVyZXMgZXhjZXB0aW5nIHBlcnNpc3RlbmNlIGFyZSBhdmFpbGFibGUNCj4gK2ZvciBh bnkgYXJiaXRyYXJ5IGltYWdlIGZvcm1hdC4NCj4gKw0KPiArRm9yIGV4YW1wbGUsIERpcnR5IEJp dG1hcHMgY2FuIGJlIGNvbWJpbmVkIHdpdGggdGhlICdyYXcnIGltYWdlIGZvcm1hdCwNCj4gK2J1 dCBhbnkgY2hhbmdlcyB0byB0aGUgYml0bWFwIHdpbGwgYmUgZGlzY2FyZGVkIHVwb24gZXhpdC4N Cj4gKw0KPiArLi4gd2FybmluZzo6IFRyYW5zaWVudCBiaXRtYXBzIHdpbGwgbm90IGJlIHNhdmVk IG9uIFFFTVUgZXhpdCEgUGVyc2lzdGVudA0KPiArICAgICAgICAgICAgIGJpdG1hcHMgYXJlIGF2 YWlsYWJsZSBvbmx5IG9uIHFjb3cyIGltYWdlcy4NCj4gKw0KPiAgIERpcnR5IEJpdG1hcCBOYW1l cw0KPiAgIC0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAgIA0KPiAtLSAgQSBkaXJ0eSBiaXRtYXAncyBu YW1lIGlzIHVuaXF1ZSB0byB0aGUgbm9kZSwgYnV0IGJpdG1hcHMgYXR0YWNoZWQgdG8NCj4gLSAg IGRpZmZlcmVudCBub2RlcyBjYW4gc2hhcmUgdGhlIHNhbWUgbmFtZS4NCj4gK0JpdG1hcCBvYmpl Y3RzIG5lZWQgYSBtZXRob2QgdG8gcmVmZXJlbmNlIHRoZW0gaW4gdGhlIEFQSS4gQWxsIEFQSS1j cmVhdGVkIGFuZA0KPiArbWFuYWdlZCBiaXRtYXBzIGhhdmUgYSBodW1hbi1yZWFkYWJsZSBuYW1l IGNob3NlbiBieSB0aGUgdXNlciBhdCBjcmVhdGlvbiB0aW1lLg0KPiAgIA0KPiAtLSAgRGlydHkg Yml0bWFwcyBjcmVhdGVkIGZvciBpbnRlcm5hbCB1c2UgYnkgUUVNVSBtYXkgYmUgYW5vbnltb3Vz IGFuZA0KPiAtICAgaGF2ZSBubyBuYW1lLCBidXQgYW55IHVzZXItY3JlYXRlZCBiaXRtYXBzIG11 c3QgaGF2ZSBhIG5hbWUuIFRoZXJlDQo+IC0gICBjYW4gYmUgYW55IG51bWJlciBvZiBhbm9ueW1v dXMgYml0bWFwcyBwZXIgbm9kZS4NCj4gKy0gIEEgYml0bWFwJ3MgbmFtZSBpcyB1bmlxdWUgdG8g dGhlIG5vZGUsIGJ1dCBiaXRtYXBzIGF0dGFjaGVkIHRvIGRpZmZlcmVudA0KPiArICAgbm9kZXMg Y2FuIHNoYXJlIHRoZSBzYW1lIG5hbWUuIFRoZXJlZm9yZSwgYWxsIGJpdG1hcHMgYXJlIGFkZHJl c3NlZCB2aWEgdGhlaXINCj4gKyAgIChub2RlLCBuYW1lKSBwYWlyLg0KPiAgIA0KPiAtLSAgVGhl IG5hbWUgb2YgYSB1c2VyLWNyZWF0ZWQgYml0bWFwIG11c3Qgbm90IGJlIGVtcHR5ICgiIikuDQo+ ICstICBUaGUgbmFtZSBvZiBhIHVzZXItY3JlYXRlZCBiaXRtYXAgY2Fubm90IGJlIGVtcHR5ICgi IikuDQo+ICAgDQo+IC1CaXRtYXAgTW9kZXMNCj4gLS0tLS0tLS0tLS0tLQ0KPiArLSAgVHJhbnNp ZW50IGJpdG1hcHMgY2FuIGhhdmUgSlNPTiB1bmljb2RlIG5hbWVzIHRoYXQgYXJlIGVmZmVjdGl2 ZWx5IG5vdCBsZW5ndGgNCj4gKyAgIGxpbWl0ZWQuIChRTVAgcHJvdG9jb2wgbWF5IHJlc3RyaWN0 IG1lc3NhZ2VzIHRvIGxlc3MgdGhhbiA2NE1pQi4pDQo+ICAgDQo+IC0tICBBIGJpdG1hcCBjYW4g YmUgImZyb3plbiwiIHdoaWNoIG1lYW5zIHRoYXQgaXQgaXMgY3VycmVudGx5IGluLXVzZSBieQ0K PiAtICAgYSBiYWNrdXAgb3BlcmF0aW9uIGFuZCBjYW5ub3QgYmUgZGVsZXRlZCwgcmVuYW1lZCwg d3JpdHRlbiB0bywgcmVzZXQsDQo+IC0gICBldGMuDQo+ICstICBQZXJzaXN0ZW50IHN0b3JhZ2Ug Zm9ybWF0cyBtYXkgaW1wb3NlIHRoZWlyIG93biByZXF1aXJlbWVudHMgb24gYml0bWFwIG5hbWVz DQo+ICsgICBhbmQgbmFtZXNwYWNlcy4gUHJlc2VudGx5LCBvbmx5IHFjb3cyIHN1cHBvcnRzIHBl cnNpc3RlbnQgYml0bWFwcy4gU2VlDQo+ICsgICBkb2NzL2ludGVyb3AvcWNvdzIudHh0IGZvciBt b3JlIGRldGFpbHMgb24gcmVzdHJpY3Rpb25zLiBOb3RhYmx5Og0KPiAgIA0KPiAtLSAgVGhlIG5v cm1hbCBvcGVyYXRpbmcgbW9kZSBmb3IgYSBiaXRtYXAgaXMgImFjdGl2ZS4iDQo+ICsgICAtICBx Y293MiBiaXRtYXAgbmFtZXMgYXJlIGxpbWl0ZWQgdG8gYmV0d2VlbiAxIGFuZCAxMDIzIGJ5dGVz IGxvbmcuDQo+ICsNCj4gKyAgIC0gIE5vIHR3byBiaXRtYXBzIHNhdmVkIHRvIHRoZSBzYW1lIHFj b3cyIGZpbGUgbWF5IHNoYXJlIHRoZSBzYW1lIG5hbWUuDQo+ICsNCj4gKy0gIFFFTVUgb2NjYXNp b25hbGx5IHVzZXMgYml0bWFwcyBmb3IgaW50ZXJuYWwgdXNlIHdoaWNoIGhhdmUgbm8gbmFtZS4g VGhleSBhcmUNCj4gKyAgIGhpZGRlbiBmcm9tIEFQSSBxdWVyeSBjYWxscywgY2Fubm90IGJlIG1h bmlwdWxhdGVkIGJ5IHRoZSBleHRlcm5hbCBBUEksIGFuZA0KPiArICAgYXJlIG5ldmVyIHBlcnNp c3RlbnQuDQoNCmFuZCBhcmUgbm90IG1pZ3JhdGVkDQoNCj4gKw0KPiArQml0bWFwIFN0YXR1cw0K PiArLS0tLS0tLS0tLS0tLQ0KPiArDQo+ICtEaXJ0eSBCaXRtYXAgb2JqZWN0cyBjYW4gYmUgcXVl cmllZCB3aXRoIHRoZSBRTVAgY29tbWFuZCBgcXVlcnktYmxvY2sNCj4gKzxxZW11LXFtcC1yZWYu aHRtbCNpbmRleC1xdWVyeV8wMDJkYmxvY2s+YF8sIGFuZCBhcmUgdmlzaWJsZSB2aWEgdGhlDQo+ ICtgQmxvY2tEaXJ0eUluZm8gPHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LUJsb2NrRGlydHlJbmZv PmBfIFFBUEkgc3RydWN0dXJlLg0KPiArDQo+ICtUaGlzIHN0cnVjdCBzaG93cyB0aGUgbmFtZSwg Z3JhbnVsYXJpdHksIGFuZCBkaXJ0eSBieXRlIGNvdW50IGZvciBlYWNoIGJpdG1hcC4NCj4gK0Fk ZGl0aW9uYWxseSwgaXQgc2hvd3Mgc2V2ZXJhbCBib29sZWFuIHN0YXR1cyBpbmRpY2F0b3JzOg0K PiArDQo+ICstIGBgcmVjb3JkaW5nYGA6IFRoaXMgYml0bWFwIGlzIHJlY29yZGluZyBndWVzdCB3 cml0ZXMuDQoNCm1heSBiZSBub3QgZ3Vlc3Qgd3JpdGVzLCBidXQgYW55dGhpbmcgbGlrZSBxY293 MiBtZXRhZGF0YSwgaWYgYml0bWFwIGlzIGF0dGFjaGVkIG5vdCB0byByb290Lg0KDQoNCj4gKy0g YGBidXN5YGA6IFRoaXMgYml0bWFwIGlzIGluLXVzZSBieSBhbiBvcGVyYXRpb24uDQo+ICstIGBg cGVyc2lzdGVudGBgOiBUaGlzIGJpdG1hcCBpcyBhIHBlcnNpc3RlbnQgdHlwZS4NCj4gKy0gYGBp bmNvbnNpc3RlbnRgYDogVGhpcyBiaXRtYXAgaXMgY29ycnVwdGVkIGFuZCBjYW5ub3QgYmUgdXNl ZC4NCj4gKw0KPiArVGhlIGBgK2J1c3lgYCBzdGF0dXMgcHJvaGliaXRzIHlvdSBmcm9tIGRlbGV0 aW5nLCBjbGVhcmluZywgb3Igb3RoZXJ3aXNlDQo+ICttb2RpZnlpbmcgYSBiaXRtYXAsIGFuZCBo YXBwZW5zIHdoZW4gdGhlIGJpdG1hcCBpcyBiZWluZyB1c2VkIGZvciBhIGJhY2t1cA0KPiArb3Bl cmF0aW9uIG9yIGlzIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIGxvYWRlZCBmcm9tIGEgbWlncmF0 aW9uLiBNYW55IG9mIHRoZQ0KPiArY29tbWFuZHMgZG9jdW1lbnRlZCBiZWxvdyB3aWxsIHJlZnVz ZSB0byB3b3JrIG9uIHN1Y2ggYml0bWFwcy4NCj4gKw0KPiArVGhlcmUgaXMgYWxzbyBhIGRlcHJl Y2F0ZWQNCj4gKyJgRGlydHlCaXRtYXBTdGF0dXMgPHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LURp cnR5Qml0bWFwU3RhdHVzPmBfIiBmaWVsZC4gYQ0KPiArYml0bWFwIGhpc3RvcmljYWxseSBoYWQg Zml2ZSB2aXNpYmxlIHN0YXRlczoNCj4gKw0KPiArICAgIy4gYGBGcm96ZW5gYDogVGhpcyBiaXRt YXAgaXMgY3VycmVudGx5IGluLXVzZSBieSBhbiBvcGVyYXRpb24gYW5kIGlzDQo+ICsgICAgICBp bW11dGFibGUuIEl0IGNhbid0IGJlIGRlbGV0ZWQsIHJlbmFtZWQsIHJlc2V0LCBldGMuDQo+ICsN Cj4gKyAgICAgIChUaGlzIGlzIG5vdyBgYCtidXN5YGAuKQ0KPiArDQo+ICsgICAjLiBgYERpc2Fi bGVkYGA6IFRoaXMgYml0bWFwIGlzIG5vdCByZWNvcmRpbmcgbmV3IHdyaXRlcyBmcm9tIHRoZSBn dWVzdC4NCj4gKw0KPiArICAgICAgKFRoaXMgaXMgbm93IGBgLXJlY29yZGluZyAtYnVzeWBgLikN Cj4gKw0KPiArICAgIy4gYGBBY3RpdmVgYDogVGhpcyBiaXRtYXAgaXMgcmVjb3JkaW5nIG5ldyB3 cml0ZXMgZnJvbSB0aGUgZ3Vlc3QuDQo+ICsNCj4gKyAgICAgIChUaGlzIGlzIG5vdyBgYCtyZWNv cmRpbmcgLWJ1c3lgYC4pDQo+ICsNCj4gKyAgICMuIGBgTG9ja2VkYGA6IFRoaXMgYml0bWFwIGlz IGluLXVzZSBieSBhbiBvcGVyYXRpb24sIGFuZCBpcyBpbW11dGFibGUuDQo+ICsgICAgICBUaGUg ZGlmZmVyZW5jZSBmcm9tICJGcm96ZW4iIHdhcyBwcmltYXJpbHkgaW1wbGVtZW50YXRpb24gZGV0 YWlscy4NCj4gKw0KPiArICAgICAgKFRoaXMgaXMgbm93IGBgK2J1c3lgYC4pDQo+ICsNCj4gKyAg ICMuIGBgSW5jb25zaXN0ZW50YGA6IFRoaXMgcGVyc2lzdGVudCBiaXRtYXAgd2FzIG5vdCBzYXZl ZCB0byBkaXNrIGNvcnJlY3RseSwNCj4gKyAgICAgIGFuZCBjYW4gbm8gbG9uZ2VyIGJlIHVzZWQu IEl0IHJlbWFpbnMgaW4gbWVtb3J5IHRvIHNlcnZlIGFzIGFuDQo+ICsgICAgICBpbmRpY2F0b3Ig b2YgZmFpbHVyZS4NCj4gKw0KPiArICAgICAgKFRoaXMgaXMgbm93IGBgK2luY29uc2lzdGVudGBg LikNCj4gKw0KPiArVGhlc2Ugc3RhdGVzIGFyZSBkaXJlY3RseSByZXBsYWNlZCBieSB0aGUgc3Rh dHVzIGluZGljYXRvcnMgYW5kIHNob3VsZA0KPiArbm90IGJlIHVzZWQuIFRoZSBkaWZmZXJlbmNl IGJldHdlZW4gYGBGcm96ZW5gYCBhbmQgYGBMb2NrZWRgYCBpcyBhbg0KPiAraW1wbGVtZW50YXRp b24gZGV0YWlsIGFuZCBzaG91bGQgbm90IGJlIHJlbGV2YW50IHRvIGV4dGVybmFsIHVzZXJzLg0K PiAgIA0KPiAgIEJhc2ljIFFNUCBVc2FnZQ0KPiAgIC0tLS0tLS0tLS0tLS0tLQ0KPiAgIA0KPiAr VGhlIHByaW1hcnkgaW50ZXJmYWNlIHRvIG1hbmlwdWxhdGluZyBiaXRtYXAgb2JqZWN0cyBpcyB2 aWEgdGhlIFFNUA0KPiAraW50ZXJmYWNlLiBJZiB5b3UgYXJlIG5vdCBmYW1pbGlhciwgc2VlIGRv Y3MvaW50ZXJvcC9xbXAtaW50cm8udHh0IGZvciBhIGJyb2FkDQo+ICtvdmVydmlldywgYW5kIGBx ZW11LXFtcC1yZWYgPHFlbXUtcW1wLXJlZi5odG1sPmBfIGZvciBhIGZ1bGwgcmVmZXJlbmNlIG9m IGFsbA0KPiArUU1QIGNvbW1hbmRzLg0KPiArDQo+ICAgU3VwcG9ydGVkIENvbW1hbmRzDQo+ICAg fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICAgDQo+ICtUaGVyZSBhcmUgc2l4IHByaW1hcnkgYml0bWFw LW1hbmFnZW1lbnQgQVBJIGNvbW1hbmRzOg0KPiArDQo+ICAgLSBgYGJsb2NrLWRpcnR5LWJpdG1h cC1hZGRgYA0KPiAgIC0gYGBibG9jay1kaXJ0eS1iaXRtYXAtcmVtb3ZlYGANCj4gICAtIGBgYmxv Y2stZGlydHktYml0bWFwLWNsZWFyYGANCj4gKy0gYGBibG9jay1kaXJ0eS1iaXRtYXAtZGlzYWJs ZWBgDQo+ICstIGBgYmxvY2stZGlydHktYml0bWFwLWVuYWJsZWBgDQo+ICstIGBgYmxvY2stZGly dHktYml0bWFwLW1lcmdlYGANCj4gICANCj4gLUNyZWF0aW9uDQo+IC1+fn5+fn5+fg0KPiArQW5k IG9uZSByZWxhdGVkIHF1ZXJ5IGNvbW1hbmQ6DQo+ICAgDQo+IC0tICBUbyBjcmVhdGUgYSBuZXcg Yml0bWFwLCBlbmFibGVkLCBvbiB0aGUgZHJpdmUgd2l0aCBpZD1kcml2ZTA6DQo+ICstIGBgcXVl cnktYmxvY2tgYA0KPiAgIA0KPiAtLi4gY29kZTo6IGpzb24NCj4gK0NyZWF0aW9uOiBibG9jay1k aXJ0eS1iaXRtYXAtYWRkDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiAg IA0KPiAtICAgIHsgImV4ZWN1dGUiOiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+IC0gICAg ICAiYXJndW1lbnRzIjogew0KPiAtICAgICAgICAibm9kZSI6ICJkcml2ZTAiLA0KPiAtICAgICAg ICAibmFtZSI6ICJiaXRtYXAwIg0KPiAtICAgICAgfQ0KPiAtICAgIH0NCj4gK2BibG9jay1kaXJ0 eS1iaXRtYXAtYWRkDQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5kZXgtYmxvY2tfMDAyZGRpcnR5 XzAwMmRiaXRtYXBfMDAyZGFkZD5gXzoNCj4gKw0KPiArQ3JlYXRlcyBhIG5ldyBiaXRtYXAgdGhh dCB0cmFja3Mgd3JpdGVzIHRvIHRoZSBzcGVjaWZpZWQgbm9kZS4gZ3JhbnVsYXJpdHksDQo+ICtw ZXJzaXN0ZW5jZSwgYW5kIHJlY29yZGluZyBzdGF0ZSBjYW4gYmUgYWRqdXN0ZWQgYXQgY3JlYXRp b24gdGltZS4NCj4gKw0KPiArLi4gYWRtb25pdGlvbjo6IEV4YW1wbGUNCj4gKw0KPiArIHRvIGNy ZWF0ZSBhIG5ldywgYWN0aXZlbHkgcmVjb3JkaW5nIHBlcnNpc3RlbnQgYml0bWFwOg0KPiArDQo+ ICsgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7ICJleGVjdXRlIjogImJsb2NrLWRpcnR5 LWJpdG1hcC1hZGQiLA0KPiArICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICsgICAgICAgICAibm9k ZSI6ICJkcml2ZTAiLA0KPiArICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCIsDQo+ICsgICAgICAg ICAicGVyc2lzdGVudCI6IHRydWUsDQo+ICsgICAgICAgfQ0KPiArICAgICB9DQo+ICsNCj4gKyAg PC0geyAicmV0dXJuIjoge30gfQ0KPiAgIA0KPiAgIC0gIFRoaXMgYml0bWFwIHdpbGwgaGF2ZSBh IGRlZmF1bHQgZ3JhbnVsYXJpdHkgdGhhdCBtYXRjaGVzIHRoZSBjbHVzdGVyDQo+ICAgICAgc2l6 ZSBvZiBpdHMgYXNzb2NpYXRlZCBkcml2ZSwgaWYgYXZhaWxhYmxlLCBjbGFtcGVkIHRvIGJldHdl ZW4gWzRLaUIsDQo+ICAgICAgNjRLaUJdLiBUaGUgY3VycmVudCBkZWZhdWx0IGZvciBxY293MiBp cyA2NEtpQi4NCj4gICANCj4gLS0gIFRvIGNyZWF0ZSBhIG5ldyBiaXRtYXAgdGhhdCB0cmFja3Mg Y2hhbmdlcyBpbiAzMktpQiBzZWdtZW50czoNCj4gKy4uIGFkbW9uaXRpb246OiBFeGFtcGxlDQo+ ICAgDQo+IC0uLiBjb2RlOjoganNvbg0KPiArIFRvIGNyZWF0ZSBhIG5ldywgZGlzYWJsZWQgKGBg LXJlY29yZGluZ2BgKSwgdHJhbnNpZW50IGJpdG1hcCB0aGF0IHRyYWNrcw0KPiArIGNoYW5nZXMg aW4gMzJLaUIgc2VnbWVudHM6DQo+ICAgDQo+IC0gICAgeyAiZXhlY3V0ZSI6ICJibG9jay1kaXJ0 eS1iaXRtYXAtYWRkIiwNCj4gLSAgICAgICJhcmd1bWVudHMiOiB7DQo+IC0gICAgICAgICJub2Rl IjogImRyaXZlMCIsDQo+IC0gICAgICAgICJuYW1lIjogImJpdG1hcDAiLA0KPiAtICAgICAgICAi Z3JhbnVsYXJpdHkiOiAzMjc2OA0KPiAtICAgICAgfQ0KPiAtICAgIH0NCj4gKyAuLiBjb2RlOjog anNvbg0KPiAgIA0KPiAtRGVsZXRpb24NCj4gLX5+fn5+fn5+DQo+ICsgIC0+IHsgImV4ZWN1dGUi OiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4g KyAgICAgICAgICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAibmFtZSI6ICJiaXRtYXAx IiwNCj4gKyAgICAgICAgICJncmFudWxhcml0eSI6IDMyNzY4LA0KPiArICAgICAgICAgImRpc2Fi bGVkIjogdHJ1ZQ0KPiArICAgICAgIH0NCj4gKyAgICAgfQ0KPiAgIA0KPiAtLSAgQml0bWFwcyB0 aGF0IGFyZSBmcm96ZW4gY2Fubm90IGJlIGRlbGV0ZWQuDQo+ICsgIDwtIHsgInJldHVybiI6IHt9 IH0NCj4gICANCj4gLS0gIERlbGV0aW5nIHRoZSBiaXRtYXAgZG9lcyBub3QgaW1wYWN0IGFueSBv dGhlciBiaXRtYXBzIGF0dGFjaGVkIHRvIHRoZQ0KPiArRGVsZXRpb246IGJsb2NrLWRpcnR5LWJp dG1hcC1yZW1vdmUNCj4gK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICsN Cj4gK2BibG9jay1kaXJ0eS1iaXRtYXAtcmVtb3ZlDQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5k ZXgtYmxvY2tfMDAyZGRpcnR5XzAwMmRiaXRtYXBfMDAyZHJlbW92ZT5gXzoNCj4gKw0KPiArRGVs ZXRlcyBhIGJpdG1hcC4gQml0bWFwcyB0aGF0IGFyZSBgYCtidXN5YGAgY2Fubm90IGJlIHJlbW92 ZWQuDQo+ICsNCj4gKy0gIERlbGV0aW5nIGEgYml0bWFwIGRvZXMgbm90IGltcGFjdCBhbnkgb3Ro ZXIgYml0bWFwcyBhdHRhY2hlZCB0byB0aGUNCj4gICAgICBzYW1lIG5vZGUsIG5vciBkb2VzIGl0 IGFmZmVjdCBhbnkgYmFja3VwcyBhbHJlYWR5IGNyZWF0ZWQgZnJvbSB0aGlzDQo+IC0gICBub2Rl Lg0KPiArICAgYml0bWFwIG9yIG5vZGUuDQo+ICAgDQo+ICAgLSAgQmVjYXVzZSBiaXRtYXBzIGFy ZSBvbmx5IHVuaXF1ZSB0byB0aGUgbm9kZSB0byB3aGljaCB0aGV5IGFyZQ0KPiAgICAgIGF0dGFj aGVkLCB5b3UgbXVzdCBzcGVjaWZ5IHRoZSBub2RlL2RyaXZlIG5hbWUgaGVyZSwgdG9vLg0KPiAg IA0KPiAtLi4gY29kZTo6IGpzb24NCj4gKy0gIERlbGV0aW5nIGEgcGVyc2lzdGVudCBiaXRtYXAg d2lsbCByZW1vdmUgaXQgZnJvbSB0aGUgcWNvdzIgZmlsZS4NCj4gICANCj4gLSAgICB7ICJleGVj dXRlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1yZW1vdmUiLA0KPiAtICAgICAgImFyZ3VtZW50cyI6 IHsNCj4gLSAgICAgICAgIm5vZGUiOiAiZHJpdmUwIiwNCj4gLSAgICAgICAgIm5hbWUiOiAiYml0 bWFwMCINCj4gLSAgICAgIH0NCj4gLSAgICB9DQo+ICsuLiBhZG1vbml0aW9uOjogRXhhbXBsZQ0K PiAgIA0KPiAtUmVzZXR0aW5nDQo+IC1+fn5+fn5+fn4NCj4gKyBSZW1vdmUgYSBiaXRtYXAgbmFt ZWQgYGBiaXRtYXAwYGAgZnJvbSBub2RlIGBgZHJpdmUwYGA6DQo+ICAgDQo+IC0tICBSZXNldHRp bmcgYSBiaXRtYXAgd2lsbCBjbGVhciBhbGwgaW5mb3JtYXRpb24gaXQgaG9sZHMuDQo+ICsgLi4g Y29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7ICJleGVjdXRlIjogImJsb2NrLWRpcnR5LWJpdG1h cC1yZW1vdmUiLA0KPiArICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICsgICAgICAgICAibm9kZSI6 ICJkcml2ZTAiLA0KPiArICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICB9DQo+ ICsgICAgIH0NCj4gKw0KPiArICA8LSB7ICJyZXR1cm4iOiB7fSB9DQo+ICsNCj4gK1Jlc2V0dGlu ZzogYmxvY2stZGlydHktYml0bWFwLWNsZWFyDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fg0KPiArDQo+ICtgYmxvY2stZGlydHktYml0bWFwLWNsZWFyDQo+ICs8cWVtdS1x bXAtcmVmLmh0bWwjaW5kZXgtYmxvY2tfMDAyZGRpcnR5XzAwMmRiaXRtYXBfMDAyZGNsZWFyPmBf Og0KPiArDQo+ICtDbGVhcnMgYWxsIGRpcnR5IGJpdHMgZnJvbSBhIGJpdG1hcC4gYGArYnVzeWBg IGJpdG1hcHMgY2Fubm90IGJlIGNsZWFyZWQuDQo+ICAgDQo+ICAgLSAgQW4gaW5jcmVtZW50YWwg YmFja3VwIGNyZWF0ZWQgZnJvbSBhbiBlbXB0eSBiaXRtYXAgd2lsbCBjb3B5IG5vIGRhdGEsDQo+ ICAgICAgYXMgaWYgbm90aGluZyBoYXMgY2hhbmdlZC4NCj4gICANCj4gLS4uIGNvZGU6OiBqc29u DQo+IC0NCj4gLSAgICB7ICJleGVjdXRlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1jbGVhciIsDQo+ IC0gICAgICAiYXJndW1lbnRzIjogew0KPiAtICAgICAgICAibm9kZSI6ICJkcml2ZTAiLA0KPiAt ICAgICAgICAibmFtZSI6ICJiaXRtYXAwIg0KPiAtICAgICAgfQ0KPiAtICAgIH0NCj4gKy4uIGFk bW9uaXRpb246OiBFeGFtcGxlDQo+ICsNCj4gKyBDbGVhciBhbGwgZGlydHkgYml0cyBmcm9tIGJp dG1hcCBgYGJpdG1hcDBgYCBvbiBub2RlIGBgZHJpdmUwYGA6DQo+ICsNCj4gKyAuLiBjb2RlOjog anNvbg0KPiArDQo+ICsgIC0+IHsgImV4ZWN1dGUiOiAiYmxvY2stZGlydHktYml0bWFwLWNsZWFy IiwNCj4gKyAgICAgICAiYXJndW1lbnRzIjogew0KPiArICAgICAgICAgIm5vZGUiOiAiZHJpdmUw IiwNCj4gKyAgICAgICAgICJuYW1lIjogImJpdG1hcDAiDQo+ICsgICAgICAgfQ0KPiArICAgICB9 DQo+ICsNCj4gKyAgPC0geyAicmV0dXJuIjoge30gfQ0KPiArDQo+ICtFbmFibGluZzogYmxvY2st ZGlydHktYml0bWFwLWVuYWJsZQ0KPiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4NCj4gKw0KPiArYGJsb2NrLWRpcnR5LWJpdG1hcC1lbmFibGUNCj4gKzxxZW11LXFtcC1yZWYu aHRtbCNpbmRleC1ibG9ja18wMDJkZGlydHlfMDAyZGJpdG1hcF8wMDJkZW5hYmxlPmBfOg0KPiAr DQo+ICsiRW5hYmxlcyIgYSBiaXRtYXAsIHNldHRpbmcgdGhlIGBgcmVjb3JkaW5nYGAgYml0IHRv IHRydWUsIGNhdXNpbmcgZ3Vlc3Qgd3JpdGVzDQoNCm1heSBiZSBub3QgZ3Vlc3QsIGJ1dCBhbnkg d3JpdGVzIHRvIHRoZSBub2RlDQoNCj4gK3RvIGJlZ2luIGJlaW5nIHJlY29yZGVkLiBgYCtidXN5 YGAgYml0bWFwcyBjYW5ub3QgYmUgZW5hYmxlZC4NCg0KaG1tLCB5b3UgbmV2ZXIgbWVudGlvbnMg dGhhdCAraW5jb25zaXN0ZW50IGFsc28gcmVzdHJpY3QgbW9zdCBvZiBvcGVydGFpb25zDQoNCj4g Kw0KPiArLSBCaXRtYXBzIGRlZmF1bHQgdG8gYmVpbmcgZW5hYmxlZCB3aGVuIGNyZWF0ZWQsIHVu bGVzcyBjb25maWd1cmVkIG90aGVyd2lzZS4NCj4gKw0KPiArLSBQZXJzaXN0ZW50IGVuYWJsZWQg Yml0bWFwcyB3aWxsIHJlbWVtYmVyIHRoZWlyIGBgK3JlY29yZGluZ2BgIHN0YXR1cyBvbiBsb2Fk Lg0KPiArDQo+ICsuLiBhZG1vbml0aW9uOjogRXhhbXBsZQ0KPiArDQo+ICsgVG8gc2V0IGBgK3Jl Y29yZGluZ2BgIG9uIGJpdG1hcCBgYGJpdG1hcDBgYCBvbiBub2RlIGBgZHJpdmUwYGA6DQo+ICsN Cj4gKyAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgIC0+IHsgImV4ZWN1dGUiOiAiYmxvY2stZGly dHktYml0bWFwLWVuYWJsZSIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAgICAgICAg ICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAibmFtZSI6ICJiaXRtYXAwIg0KPiArICAg ICAgIH0NCj4gKyAgICAgfQ0KPiArDQo+ICsgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiAr RW5hYmxpbmc6IGJsb2NrLWRpcnR5LWJpdG1hcC1kaXNhYmxlDQo+ICt+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gKw0KPiArYGJsb2NrLWRpcnR5LWJpdG1hcC1kaXNhYmxl DQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5kZXgtYmxvY2tfMDAyZGRpcnR5XzAwMmRiaXRtYXBf MDAyZGRpc2FibGU+YF86DQo+ICsNCj4gKyJEaXNhYmxlcyIgYSBiaXRtYXAsIHNldHRpbmcgdGhl IGBgcmVjb3JkaW5nYGAgYml0IHRvIGZhbHNlLCBjYXVzaW5nIGZ1cnRoZXINCj4gK2d1ZXN0IHdy aXRlcyB0byBiZWdpbiBiZWluZyBpZ25vcmVkLiBgYCtidXN5YGAgYml0bWFwcyBjYW5ub3QgYmUg ZGlzYWJsZWQuDQoNCnNhbWUgY29tbWVudHMgaGVyZQ0KDQo+ICsNCj4gKy4uIHdhcm5pbmc6Og0K PiArDQo+ICsgIFRoaXMgaXMgcG90ZW50aWFsbHkgZGFuZ2Vyb3VzOiBRRU1VIG1ha2VzIG5vIGVm Zm9ydCB0byBzdG9wIGFueSBndWVzdCB3cml0ZXMNCj4gKyAgaWYgdGhlcmUgYXJlIGRpc2FibGVk IGJpdG1hcHMgb24gYSBkcml2ZSwgYW5kIHdpbGwgbm90IG1hcmsgYW55IGRpc2FibGVkDQo+ICsg IGJpdG1hcHMgYXMgYGAraW5jb25zaXN0ZW50YGAgaWYgYW55IHN1Y2ggd3JpdGVzIGRvIGhhcHBl bi4gQmFja3VwcyBtYWRlIGZyb20NCj4gKyAgc3VjaCBiaXRtYXBzIHdpbGwgbm90IGJlIGFibGUg dG8gYmUgdXNlZCB0byByZWNvbnN0cnVjdCBhIGZ1bGwgZ3Vlc3QgaW1hZ2UuDQo+ICsNCj4gKy0g RGlzYWJsaW5nIGEgYml0bWFwIG1heSBiZSB1c2VmdWwgZm9yIGV4YW1pbmluZyB3aGljaCBzZWN0 b3JzIG9mIGEgZGlzayBjaGFuZ2VkDQo+ICsgIGR1cmluZyBhIHNwZWNpZmljIHRpbWUgcGVyaW9k LCBvciBmb3IgZXhwbGljaXQgbWFuYWdlbWVudCBvZiBkaWZmZXJlbnRpYWwNCj4gKyAgYmFja3Vw IHdpbmRvd3MuDQo+ICsNCj4gKy0gUGVyc2lzdGVudCBkaXNhYmxlZCBiaXRtYXBzIHdpbGwgcmVt ZW1iZXIgdGhlaXIgYGAtcmVjb3JkaW5nYGAgc3RhdHVzIG9uIGxvYWQuDQo+ICsNCj4gKy4uIGFk bW9uaXRpb246OiBFeGFtcGxlDQo+ICsNCj4gKyBUbyBzZXQgYGAtcmVjb3JkaW5nYGAgb24gYml0 bWFwIGBgYml0bWFwMGBgIG9uIG5vZGUgYGBkcml2ZTBgYDoNCj4gKw0KPiArIC4uIGNvZGU6OiBq c29uDQo+ICsNCj4gKyAgLT4geyAiZXhlY3V0ZSI6ICJibG9jay1kaXJ0eS1iaXRtYXAtZGlzYWJs ZSIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAgICAgICAgICJub2RlIjogImRyaXZl MCIsDQo+ICsgICAgICAgICAibmFtZSI6ICJiaXRtYXAwIg0KPiArICAgICAgIH0NCj4gKyAgICAg fQ0KPiArDQo+ICsgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiArTWVyZ2luZywgQ29weWlu ZzogYmxvY2stZGlydHktYml0bWFwLW1lcmdlDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4NCj4gKw0KPiArYGJsb2NrLWRpcnR5LWJpdG1hcC1tZXJnZQ0KPiAr PHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LWJsb2NrXzAwMmRkaXJ0eV8wMDJkYml0bWFwXzAwMmRt ZXJnZT5gXzoNCj4gKw0KPiArTWVyZ2VzIG9uZSBvciBtb3JlIGJpdG1hcHMgaW50byBhIHRhcmdl dCBiaXRtYXAuIEZvciBhbnkgc2VnbWVudCB0aGF0IGlzIGRpcnR5DQo+ICtpbiBhbnkgb25lIHNv dXJjZSBiaXRtYXAsIHRoZSB0YXJnZXQgYml0bWFwIHdpbGwgbWFyayB0aGF0IHNlZ21lbnQgZGly dHkuDQo+ICsNCj4gKy0gTWVyZ2UgdGFrZXMgb25lIG9yIG1vcmUgYml0bWFwcyBhcyBhIHNvdXJj ZSBhbmQgY29waWVzIHRoZW0gaW50byBhIHNpbmdsZQ0KPiArICBkZXN0aW5hdGlvbi4NCg0KZGlz YWdyZWUgd2l0aCB0ZXJtICJjb3BpZXMiIGhlcmUuLiBjb3B5IGlzIG5vdCBtZXJnZS4NCg0KPiAr DQo+ICstIE1lcmdlIGRvZXMgbm90IGNyZWF0ZSB0aGUgZGVzdGluYXRpb24gYml0bWFwIGlmIGl0 IGRvZXMgbm90IGV4aXN0LiBBIGJsYW5rDQo+ICsgIGJpdG1hcCBjYW4gYmUgY3JlYXRlZCBiZWZv cmVoYW5kIHRvIGFjaGlldmUgdGhlIHNhbWUgZWZmZWN0Lg0KDQooaG1tLCBpbnRlcmVzdGluZywg bWF5IGJlIHdlIHdhbnQgdG8gYWRkIHN1Y2ggYSBmZWF0dXJlKQ0KDQo+ICsNCj4gKy0gVGhlIGRl c3RpbmF0aW9uIGlzIG5vdCBjbGVhcmVkIHByaW9yIHRvIG1lcmdlLCBzbyBzdWJzZXF1ZW50IG1l cmdlIG9wZXJhdGlvbnMNCj4gKyAgd2lsbCBjb250aW51ZSB0byBjdW11bGF0aXZlbHkgbWFyayBt b3JlIHNlZ21lbnRzIGFzIGRpcnR5Lg0KPiArDQo+ICstIElmIHRoZSBtZXJnZSBvcGVyYXRpb24g c2hvdWxkIGZhaWwsIHRoZSBkZXN0aW5hdGlvbiBiaXRtYXAgaXMgZ3VhcmFudGVlZCB0byBiZQ0K PiArICB1bm1vZGlmaWVkLiBUaGUgb3BlcmF0aW9uIG1heSBmYWlsIGlmIHRoZSBzb3VyY2Ugb3Ig ZGVzdGluYXRpb24gYml0bWFwcyBhcmUNCj4gKyAgYnVzeSwgb3IgaGF2ZSBkaWZmZXJlbnQgZ3Jh bnVsYXJpdGllcy4NCj4gKw0KPiArLSBCaXRtYXBzIGNhbiBvbmx5IGJlIG1lcmdlZCBvbiB0aGUg c2FtZSBub2RlLiBUaGVyZSBpcyBvbmx5IG9uZSAibm9kZSINCj4gKyAgYXJndW1lbnQsIHNvIGFs bCBiaXRtYXBzIG11c3QgYmUgYXR0YWNoZWQgdG8gdGhhdCBzYW1lIG5vZGUuDQo+ICsNCj4gKy0g Q29weSBjYW4gYmUgYWNoaWV2ZWQgYnkgbWVyZ2luZyBmcm9tIGEgc2luZ2xlIHNvdXJjZSB0byBh biBlbXB0eSBkZXN0aW5hdGlvbi4NCj4gKw0KPiArLi4gYWRtb25pdGlvbjo6IEV4YW1wbGUNCj4g Kw0KPiArIE1lcmdlIHRoZSBkYXRhIGZyb20gYGBiaXRtYXAwYGAgaW50byB0aGUgYml0bWFwIGBg bmV3X2JpdG1hcGBgIG9uIG5vZGUNCj4gKyBgYGRyaXZlMGBgLiBJZiBgYG5ld19iaXRtYXBgYCB3 YXMgZW1wdHkgcHJpb3IgdG8gdGhpcyBjb21tYW5kLCB0aGlzIGFjaGlldmVzIGENCj4gKyBjb3B5 Lg0KPiArDQo+ICsgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7ICJleGVjdXRlIjogImJs b2NrLWRpcnR5LWJpdG1hcC1tZXJnZSIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAg ICAgICAgICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAidGFyZ2V0IjogIm5ld19iaXRt YXAiLA0KPiArICAgICAgICAgImJpdG1hcHM6IFsgImJpdG1hcDAiIF0NCj4gKyAgICAgICB9DQo+ ICsgICAgIH0NCj4gKw0KPiArICA8LSB7ICJyZXR1cm4iOiB7fSB9DQo+ICsNCj4gK1F1ZXJ5aW5n OiBxdWVyeS1ibG9jaw0KPiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICsNCj4gK2BxdWVyeS1i bG9jaw0KPiArPHFlbXUtcW1wLXJlZi5odG1sI2luZGV4LXF1ZXJ5XzAwMmRibG9jaz5gXzoNCj4g Kw0KPiArTm90IHN0cmljdGx5IGEgYml0bWFwcyBjb21tYW5kLCBidXQgd2lsbCByZXR1cm4gaW5m b3JtYXRpb24gYWJvdXQgYW55IGJpdG1hcHMNCj4gK2F0dGFjaGVkIHRvIG5vZGVzIHNlcnZpbmcg YXMgdGhlIHJvb3QgZm9yIGd1ZXN0IGRldmljZXMuDQoNCm5vdCBmb3IgYWxsIG5vZGVzPw0KDQo+ ICsNCj4gKy0gVGhlICJpbmNvbnNpc3RlbnQiIGJpdCB3aWxsIG5vdCBhcHBlYXIgd2hlbiBpdCBp cyBmYWxzZSwgYXBwZWFyaW5nIG9ubHkgd2hlbg0KPiArICB0aGUgdmFsdWUgaXMgdHJ1ZSB0byBp bmRpY2F0ZSB0aGVyZSBpcyBhIHByb2JsZW0uDQo+ICsNCj4gKy4uIGFkbW9uaXRpb246OiBFeGFt cGxlDQo+ICsNCj4gKyBRdWVyeSB0aGUgYmxvY2sgc3ViLXN5c3RlbSBvZiBRRU1VLiBUaGUgZm9s bG93aW5nIGpzb24gaGFzIHRyaW1tZWQgaXJyZWxldmFudA0KPiArIGtleXMgZnJvbSB0aGUgcmVz cG9uc2UgdG8gaGlnaGxpZ2h0IG9ubHkgdGhlIGJpdG1hcC1yZWxldmFudCBwb3J0aW9ucyBvZiB0 aGUNCj4gKyBBUEkuIFRoaXMgcmVzdWx0IGhpZ2hsaWdodHMgYSBiaXRtYXAgYGBiaXRtYXAwYGAg YXR0YWNoZWQgdG8gdGhlIHJvb3Qgbm9kZSBvZg0KPiArIGRldmljZSBgYGRyaXZlMGBgLg0KPiAr DQo+ICsgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAtPiB7DQo+ICsgICAgICAgImV4ZWN1dGUi OiAicXVlcnktYmxvY2siLA0KPiArICAgICAgICJhcmd1bWVudHMiOiB7fQ0KPiArICAgICB9DQo+ ICsNCj4gKyAgPC0gew0KPiArICAgICAgICJyZXR1cm4iOiBbIHsNCj4gKyAgICAgICAgICJkaXJ0 eS1iaXRtYXBzIjogWyB7DQo+ICsgICAgICAgICAgICJzdGF0dXMiOiAiYWN0aXZlIiwNCj4gKyAg ICAgICAgICAgImNvdW50IjogMCwNCj4gKyAgICAgICAgICAgImJ1c3kiOiBmYWxzZSwNCj4gKyAg ICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCIsDQo+ICsgICAgICAgICAgICJwZXJzaXN0ZW50Ijog ZmFsc2UsDQo+ICsgICAgICAgICAgICJyZWNvcmRpbmciOiB0cnVlLA0KPiArICAgICAgICAgICAi Z3JhbnVsYXJpdHkiOiA2NTUzNg0KPiArICAgICAgICAgfSBdLA0KPiArICAgICAgICAgImRldmlj ZSI6ICJkcml2ZTAiLA0KPiArICAgICAgIH0gXQ0KPiArICAgICB9DQo+ICsNCj4gK0JpdG1hcCBQ ZXJzaXN0ZW5jZQ0KPiArLS0tLS0tLS0tLS0tLS0tLS0tDQo+ICsNCj4gK0FzIG91dGxpbmVkIGlu IGBTdXBwb3J0ZWQgSW1hZ2UgRm9ybWF0c2BfLCBRRU1VIGNhbiBwZXJzaXN0IGJpdG1hcHMgdG8g cWNvdzINCj4gK2ZpbGVzLiBEZW1vbnN0cmF0ZWQgaW4gYENyZWF0aW9uOiBibG9jay1kaXJ0eS1i aXRtYXAtYWRkYF8sIHBhc3NpbmcNCj4gK2BgcGVyc2lzdGVudDogdHJ1ZWBgIHRvIGBgYmxvY2st ZGlydHktYml0bWFwLWFkZGBgIHdpbGwgcGVyc2lzdCB0aGF0IGJpdG1hcCB0bw0KPiArZGlzay4N Cj4gKw0KPiArUGVyc2lzdGVudCBiaXRtYXBzIHdpbGwgYmUgYXV0b21hdGljYWxseSBsb2FkZWQg aW50byBtZW1vcnkgdXBvbiBsb2FkLCBhbmQgd2lsbA0KPiArYmUgd3JpdHRlbiBiYWNrIHRvIGRp c2sgdXBvbiBjbG9zZS4gVGhlaXIgdXNhZ2Ugc2hvdWxkIGJlIG1vc3RseSB0cmFuc3BhcmVudC4N Cj4gKw0KPiArSG93ZXZlciwgaWYgUUVNVSBkb2VzIG5vdCBnZXQgYSBjaGFuY2UgdG8gY2xvc2Ug dGhlIGZpbGUgY2xlYW5seSwgdGhlIGJpdG1hcA0KPiArd2lsbCBiZSBtYXJrZWQgYXMgYGAraW5j b25zaXN0ZW50YGAgYW5kIGNvbnNpZGVyZWQgdW5zYWZlIHRvIHVzZSBmb3IgYW55DQo+ICtvcGVy YXRpb24uIEF0IHRoaXMgcG9pbnQsIHRoZSBvbmx5IHZhbGlkIG9wZXJhdGlvbiBvbiBzdWNoIGJp dG1hcHMgaXMNCj4gK2BgYmxvY2stZGlydHktYml0bWFwLXJlbW92ZWBgLg0KDQpOb3QgZXhhY3Rs eS4gSWYgd2UgZmFpbGVkIHRvIHNhdmUgYml0bWFwLCB0aGFuIHdlIHdpbGwgbm90IGNsZWFyIElO X1VTRSBiaXQgZnJvbSBxY293Mg0KZm9yIHRoaXMgYml0bWFwLCBhbmQgb24gX25leHRfIGxvYWQg cWVtdSB3aWxsIG1hcmsgdGhlIGJpdG1hcCBhcyBgYCtpbmNvbnNpc3RlbnRgYC4NCg0KPiArDQo+ ICtMb3NpbmcgYSBiaXRtYXAgaW4gdGhpcyB3YXkgZG9lcyBub3QgaW52YWxpZGF0ZSBhbnkgZXhp c3RpbmcgYml0bWFwcyB0aGF0IGhhdmUNCj4gK2JlZW4gbWFkZSwgYnV0IG5vIGZ1cnRoZXIgYmFj a3VwcyB3aWxsIGJlIGFibGUgdG8gYmUgaXNzdWVkIGZvciB0aGlzIGNoYWluLg0KDQpBbmQgeW91 IHNhaWQgbm90aGluZyBhYm91dCBhbnkgY2hhaW5zIGJlZm9yZS4uIE9oLCBpdCBzb3VuZHMgYmV0 dGVyIHdoZW4gSSB1bmRlcnN0YW5kDQp0aGF0IHMvZXhpc3RpbmcgYml0bWFwcy9leGlzdGluZyBi YWNrdXBzLw0KDQo+ICAgDQo+ICAgVHJhbnNhY3Rpb25zDQo+ICAgLS0tLS0tLS0tLS0tDQo+ICAg DQo+ICtUcmFuc2FjdGlvbnMgYXJlIGEgUU1QIGZlYXR1cmUgdGhhdCBhbGxvd3MgeW91IHRvIHN1 Ym1pdCBtdWx0aXBsZSBRTVAgY29tbWFuZHMNCj4gK2F0IG9uY2UsIGJlaW5nIGd1YXJhbnRlZWQg dGhhdCB0aGV5IHdpbGwgYWxsIHN1Y2NlZWQgb3IgZmFpbCBhdG9taWNhbGx5LA0KPiArdG9nZXRo ZXIuIFRoZSBpbnRlcmFjdGlvbiBvZiBiaXRtYXBzIGFuZCB0cmFuc2FjdGlvbnMgYXJlIGRlbW9u c3RyYXRlZCBiZWxvdy4NCj4gKw0KPiArU2VlIGB0cmFuc2FjdGlvbiA8cWVtdS1xbXAucmVmLmh0 bWwjaW5kZXgtdHJhbnNhY3Rpb24+YF8gaW4gdGhlIFFNUCByZWZlcmVuY2UNCj4gK2ZvciBtb3Jl IGRldGFpbHMuDQo+ICsNCj4gICBKdXN0aWZpY2F0aW9uDQo+ICAgfn5+fn5+fn5+fn5+fg0KPiAg IA0KPiAtQml0bWFwcyBjYW4gYmUgc2FmZWx5IG1vZGlmaWVkIHdoZW4gdGhlIFZNIGlzIHBhdXNl ZCBvciBoYWx0ZWQgYnkgdXNpbmcNCj4gLXRoZSBiYXNpYyBRTVAgY29tbWFuZHMuIEZvciBpbnN0 YW5jZSwgeW91IG1pZ2h0IHBlcmZvcm0gdGhlIGZvbGxvd2luZw0KPiAtYWN0aW9uczoNCj4gK0Jp dG1hcHMgY2FuIGdlbmVyYWxseSBiZSBtb2RpZmllZCBhdCBhbnkgdGltZSwgYnV0IGNlcnRhaW4g b3BlcmF0aW9ucyBvZnRlbiBvbmx5DQo+ICttYWtlIHNlbnNlIHdoZW4gcGFpcmVkIGRpcmVjdGx5 IHdpdGggb3RoZXIgY29tbWFuZHMuIFdoZW4gYSBWTSBpcyBwYXVzZWQsIGl0J3MNCj4gK2Vhc3kg dG8gZW5zdXJlIHRoYXQgbm8gZ3Vlc3Qgd3JpdGVzIG9jY3VyIGJldHdlZW4gaW5kaXZpZHVhbCBR TVAgY29tbWFuZHMuIFdoZW4NCj4gK2EgVk0gaXMgcnVubmluZywgdGhpcyBpcyBkaWZmaWN1bHQg dG8gYWNjb21wbGlzaCB3aXRoIGluZGl2aWR1YWwgUU1QIGNvbW1hbmRzDQo+ICt0aGF0IG1heSBh bGxvdyBndWVzdCB3cml0ZXMgdG8gb2NjdXIgaW5iZXR3ZWVuIGVhY2ggY29tbWFuZC4NCj4gICAN Cj4gLTEuIEJvb3QgdGhlIFZNIGluIGEgcGF1c2VkIHN0YXRlLg0KPiAtMi4gQ3JlYXRlIGEgZnVs bCBkcml2ZSBiYWNrdXAgb2YgZHJpdmUwLg0KPiAtMy4gQ3JlYXRlIGEgbmV3IGJpdG1hcCBhdHRh Y2hlZCB0byBkcml2ZTAuDQo+IC00LiBSZXN1bWUgZXhlY3V0aW9uIG9mIHRoZSBWTS4NCj4gLTUu IEluY3JlbWVudGFsIGJhY2t1cHMgYXJlIHJlYWR5IHRvIGJlIGNyZWF0ZWQuDQo+ICtGb3IgZXhh bXBsZSwgdXNpbmcgb25seSBpbmRpdmlkdWFsIFFNUCBjb21tYW5kcywgd2UgY291bGQ6DQo+ICsN Cj4gKyMuIEJvb3QgdGhlIFZNIGluIGEgcGF1c2VkIHN0YXRlLg0KPiArIy4gQ3JlYXRlIGEgZnVs bCBkcml2ZSBiYWNrdXAgb2YgZHJpdmUwLg0KPiArIy4gQ3JlYXRlIGEgbmV3IGJpdG1hcCBhdHRh Y2hlZCB0byBkcml2ZTAsIGNvbmZpZGVudCB0aGF0IG5vdGhpbmcgaGFzIGJlZW4NCj4gKyAgIHdy aXR0ZW4gdG8gZHJpdmUwIGluIHRoZSBtZWFudGltZS4NCj4gKyMuIFJlc3VtZSBleGVjdXRpb24g b2YgdGhlIFZNLg0KPiArIy4gQXQgYSBsYXRlciBwb2ludCwgaXNzdWUgaW5jcmVtZW50YWwgYmFj a3VwcyBmcm9tIGBgYml0bWFwMGBgLg0KPiAgIA0KPiAgIEF0IHRoaXMgcG9pbnQsIHRoZSBiaXRt YXAgYW5kIGRyaXZlIGJhY2t1cCB3b3VsZCBiZSBjb3JyZWN0bHkgaW4gc3luYywNCj4gICBhbmQg aW5jcmVtZW50YWwgYmFja3VwcyBtYWRlIGZyb20gdGhpcyBwb2ludCBmb3J3YXJkIHdvdWxkIGJl IGNvcnJlY3RseQ0KPiBAQCAtMTQwLDQxNiArNDkzLDk0NiBAQCBUaGlzIGlzIG5vdCBwYXJ0aWN1 bGFybHkgdXNlZnVsIGlmIHdlIGRlY2lkZSB3ZSB3YW50IHRvIHN0YXJ0DQo+ICAgaW5jcmVtZW50 YWwgYmFja3VwcyBhZnRlciB0aGUgVk0gaGFzIGJlZW4gcnVubmluZyBmb3IgYSB3aGlsZSwgZm9y IHdoaWNoDQo+ICAgd2Ugd2lsbCBuZWVkIHRvIHBlcmZvcm0gYWN0aW9ucyBzdWNoIGFzIHRoZSBm b2xsb3dpbmc6DQo+ICAgDQo+IC0xLiBCb290IHRoZSBWTSBhbmQgYmVnaW4gZXhlY3V0aW9uLg0K PiAtMi4gVXNpbmcgYSBzaW5nbGUgdHJhbnNhY3Rpb24sIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBv cGVyYXRpb25zOg0KPiArIy4gQm9vdCB0aGUgVk0gYW5kIGJlZ2luIGV4ZWN1dGlvbi4NCj4gKyMu IFVzaW5nIGEgc2luZ2xlIHRyYW5zYWN0aW9uLCBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgb3BlcmF0 aW9uczoNCj4gICANCj4gICAgICAtICBDcmVhdGUgYGBiaXRtYXAwYGAuDQo+ICAgICAgLSAgQ3Jl YXRlIGEgZnVsbCBkcml2ZSBiYWNrdXAgb2YgYGBkcml2ZTBgYC4NCj4gICANCj4gLTMuIEluY3Jl bWVudGFsIGJhY2t1cHMgYXJlIG5vdyByZWFkeSB0byBiZSBjcmVhdGVkLg0KPiArIy4gQXQgYSBs YXRlciBwb2ludCwgaXNzdWUgaW5jcmVtZW50YWwgYmFja3VwcyBmcm9tIGBgYml0bWFwMGBgLg0K DQoNCkludGVyZXN0aW5nIHdpbGwgaXQgd29yayBqdXN0IHdpdGhvdXQgYSB0cmFuc2FjdGlvbiwg Y3JlYXRlIGJpdG1hcCBmaXJzdCwgYW5kIHRoZW4gZnVsbCBiYWNrdXA/DQpJZiB3ZSdsbCBoYXZl IGFueSBpbnRlcm1lZGlhdGUgd3JpdGVzLCB0aGV5IHdpbGwgaW5jcmVhc2UgZXh0cmEgZGF0YSBp biBmaXJzdCBpbmNyZW1lbnRhbCBiYWNrdXANCmJpdCBpdCBpcyBub3Qgd3JvbmcuIEkgb25seSBk b3VidCBhYm91dCBzb21lIHVuZmluaXNoZWQgcmVxdWVzdHMuLiBEb2VzIHRyYW5zYWN0aW9uIGdp dmUgdXMNCmRyYWluZWQgcG9pbnQgYW5kIGRvIHdlIHJlYWxseSBuZWVkIGl0Pw0KDQo+ICAgDQo+ ICAgU3VwcG9ydGVkIEJpdG1hcCBUcmFuc2FjdGlvbnMNCj4gICB+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fg0KPiAgIA0KPiAgIC0gIGBgYmxvY2stZGlydHktYml0bWFwLWFkZGBgDQo+ICAg LSAgYGBibG9jay1kaXJ0eS1iaXRtYXAtY2xlYXJgYA0KPiArLSAgYGBibG9jay1kaXJ0eS1iaXRt YXAtZW5hYmxlYGANCj4gKy0gIGBgYmxvY2stZGlydHktYml0bWFwLWRpc2FibGVgYA0KPiArLSAg YGBibG9jay1kaXJ0eS1iaXRtYXAtbWVyZ2VgYA0KPiAgIA0KPiAtVGhlIHVzYWdlcyBhcmUgaWRl bnRpY2FsIHRvIHRoZWlyIHJlc3BlY3RpdmUgUU1QIGNvbW1hbmRzLCBidXQgc2VlIGJlbG93DQo+ IC1mb3IgZXhhbXBsZXMuDQo+ICtUaGUgdXNhZ2VzIGZvciB0aGVzZSBjb21tYW5kcyBhcmUgaWRl bnRpY2FsIHRvIHRoZWlyIHJlc3BlY3RpdmUgUU1QIGNvbW1hbmRzLA0KPiArYnV0IHNlZSB0aGUg ZXhhbXBsZXMgaW4gdGhlIHNlY3Rpb25zIGJlbG93IGZvciBjb25jcmV0ZSBleGFtcGxlcy4NCg0K c2VlIGV4YW1wbGVzIGZvciBleGFtcGxlcw0KDQo+ICAgDQo+IC1FeGFtcGxlOiBOZXcgSW5jcmVt ZW50YWwgQmFja3VwDQo+IC1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICtJbmNy ZW1lbnRhbCBCYWNrdXBzIC0gUHVzaCBNb2RlbA0KPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NCj4gICANCj4gLUFzIG91dGxpbmVkIGluIHRoZSBqdXN0aWZpY2F0aW9uLCBwZXJo YXBzIHdlIHdhbnQgdG8gY3JlYXRlIGEgbmV3DQo+IC1pbmNyZW1lbnRhbCBiYWNrdXAgY2hhaW4g YXR0YWNoZWQgdG8gYSBkcml2ZS4NCj4gK0luY3JlbWVudGFsIGJhY2t1cHMgYXJlIHNpbXBseSBw YXJ0aWFsIGRpc2sgaW1hZ2VzIHRoYXQgY2FuIGJlIGNvbWJpbmVkIHdpdGgNCj4gK290aGVyIHBh cnRpYWwgZGlzayBpbWFnZXMgb24gdG9wIG9mIGEgYmFzZSBpbWFnZSB0byByZWNvbnN0cnVjdCBh IGZ1bGwgYmFja3VwDQo+ICtmcm9tIHRoZSBwb2ludCBpbiB0aW1lIGF0IHdoaWNoIHRoZSBpbmNy ZW1lbnRhbCBiYWNrdXAgd2FzIGlzc3VlZC4NCj4gICANCj4gLS4uIGNvZGU6OiBqc29uDQo+ICtU aGUgIlB1c2ggTW9kZWwiIGhlcmUgcmVmZXJlbmNlcyB0aGUgZmFjdCB0aGF0IFFFTVUgaXMgInB1 c2hpbmciIHRoZSBtb2RpZmllZA0KPiArYmxvY2tzIG91dCB0byBhIGRlc3RpbmF0aW9uLiBXZSB3 aWxsIGJlIHVzaW5nIHRoZSBgZHJpdmUtYmFja3VwDQo+ICs8cWVtdS1xbXAtcmVmLmh0bWwjaW5k ZXgtZHJpdmVfMDAyZGJhY2t1cD5gXyBhbmQgYGJsb2NrZGV2LWJhY2t1cA0KPiArPHFlbXUtcW1w LXJlZi5odG1sI2luZGV4LWJsb2NrZGV2XzAwMmRiYWNrdXA+YF8gUU1QIGNvbW1hbmRzIHRvIGNy ZWF0ZSBib3RoDQo+ICtmdWxsIGFuZCBpbmNyZW1lbnRhbCBiYWNrdXBzLg0KPiAgIA0KPiAtICAg IHsgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiAtICAgICAgImFyZ3VtZW50cyI6IHsNCj4g LSAgICAgICAgImFjdGlvbnMiOiBbDQo+IC0gICAgICAgICAgeyJ0eXBlIjogImJsb2NrLWRpcnR5 LWJpdG1hcC1hZGQiLA0KPiAtICAgICAgICAgICAiZGF0YSI6IHsibm9kZSI6ICJkcml2ZTAiLCAi bmFtZSI6ICJiaXRtYXAwIn0gfSwNCj4gLSAgICAgICAgICB7InR5cGUiOiAiZHJpdmUtYmFja3Vw IiwNCj4gLSAgICAgICAgICAgImRhdGEiOiB7ImRldmljZSI6ICJkcml2ZTAiLCAidGFyZ2V0Ijog Ii9wYXRoL3RvL2Z1bGxfYmFja3VwLmltZyIsDQo+IC0gICAgICAgICAgICAgICAgICAgICJzeW5j IjogImZ1bGwiLCAiZm9ybWF0IjogInFjb3cyIn0gfQ0KPiAtICAgICAgICBdDQo+IC0gICAgICB9 DQo+IC0gICAgfQ0KPiArQm90aCBvZiB0aGVzZSBjb21tYW5kcyBhcmUgam9icywgd2hpY2ggaGF2 ZSB0aGVpciBvd24gUU1QIEFQSSBmb3IgcXVlcnlpbmcgYW5kDQo+ICttYW5hZ2VtZW50IGRvY3Vt ZW50ZWQgaW4gYEJhY2tncm91bmQgam9icw0KPiArPHFlbXUtcW1wLXJlZi5odG1sI0JhY2tncm91 bmQtam9icz5gXy4NCj4gICANCj4gICBFeGFtcGxlOiBOZXcgSW5jcmVtZW50YWwgQmFja3VwIEFu Y2hvciBQb2ludA0KPiAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+DQo+ICAgDQo+IC1NYXliZSB3ZSBqdXN0IHdhbnQgdG8gY3JlYXRlIGEgbmV3IGZ1bGwgYmFj a3VwIHdpdGggYW4gZXhpc3RpbmcgYml0bWFwDQo+IC1hbmQgd2FudCB0byByZXNldCB0aGUgYml0 bWFwIHRvIHRyYWNrIHRoZSBuZXcgY2hhaW4uDQo+ICtBcyBvdXRsaW5lZCBpbiB0aGUgVHJhbnNh Y3Rpb25zIC0gYEp1c3RpZmljYXRpb25gXyBzZWN0aW9uLCBwZXJoYXBzIHdlIHdhbnQgdG8NCj4g K2NyZWF0ZSBhIG5ldyBpbmNyZW1lbnRhbCBiYWNrdXAgY2hhaW4gYXR0YWNoZWQgdG8gYSBkcml2 ZS4NCj4gKw0KPiArVGhpcyBleGFtcGxlIGNyZWF0ZXMgYSBuZXcsIGZ1bGwgYmFja3VwIG9mICJk cml2ZTAiIGFuZCBhY2NvbXBhbmllcyBpdCB3aXRoIGENCj4gK25ldywgZW1wdHkgYml0bWFwIHRo YXQgcmVjb3JkcyBndWVzdCB3cml0ZXMgZnJvbSB0aGlzIHBvaW50IGluIHRpbWUgZm9yd2FyZC4N Cj4gKw0KPiArLi4gbm90ZTo6IEFueSBuZXcgd3JpdGVzIHRoYXQgaGFwcGVuIGFmdGVyIHRoaXMg Y29tbWFuZCBpcyBpc3N1ZWQsIGV2ZW4gd2hpbGUNCj4gKyAgICAgICAgICB0aGUgYmFja3VwIGpv YiBydW5zLCB3aWxsIGJlIHdyaXR0ZW4gbG9jYWxseSBhbmQgbm90IHRvIHRoZSBiYWNrdXANCj4g KyAgICAgICAgICBkZXN0aW5hdGlvbi4gVGhlc2Ugd3JpdGVzIHdpbGwgYmUgcmVjb3JkZWQgaW4g dGhlIGJpdG1hcCBhY2NvcmRpbmdseS4NCj4gICANCj4gICAuLiBjb2RlOjoganNvbg0KPiAgIA0K PiAtICAgIHsgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiAtICAgICAgImFyZ3VtZW50cyI6 IHsNCj4gLSAgICAgICAgImFjdGlvbnMiOiBbDQo+IC0gICAgICAgICAgeyJ0eXBlIjogImJsb2Nr LWRpcnR5LWJpdG1hcC1jbGVhciIsDQo+IC0gICAgICAgICAgICJkYXRhIjogeyJub2RlIjogImRy aXZlMCIsICJuYW1lIjogImJpdG1hcDAifSB9LA0KPiAtICAgICAgICAgIHsidHlwZSI6ICJkcml2 ZS1iYWNrdXAiLA0KPiAtICAgICAgICAgICAiZGF0YSI6IHsiZGV2aWNlIjogImRyaXZlMCIsICJ0 YXJnZXQiOiAiL3BhdGgvdG8vbmV3X2Z1bGxfYmFja3VwLmltZyIsDQo+IC0gICAgICAgICAgICAg ICAgICAgICJzeW5jIjogImZ1bGwiLCAiZm9ybWF0IjogInFjb3cyIn0gfQ0KPiAtICAgICAgICBd DQo+IC0gICAgICB9DQo+IC0gICAgfQ0KPiAtDQo+IC1JbmNyZW1lbnRhbCBCYWNrdXBzDQo+IC0t LS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0NCj4gLVRoZSBzdGFyIG9mIHRoZSBzaG93Lg0KPiAtDQo+ IC0qKk5vdGEgQmVuZSEqKiBPbmx5IGluY3JlbWVudGFsIGJhY2t1cHMgb2YgZW50aXJlIGRyaXZl cyBhcmUgc3VwcG9ydGVkDQo+IC1mb3Igbm93LiBTbyBkZXNwaXRlIHRoZSBmYWN0IHRoYXQgeW91 IGNhbiBhdHRhY2ggYSBiaXRtYXAgdG8gYW55DQo+IC1hcmJpdHJhcnkgbm9kZSwgdGhleSBhcmUg b25seSBjdXJyZW50bHkgdXNlZnVsIHdoZW4gYXR0YWNoZWQgdG8gdGhlIHJvb3QNCj4gLW5vZGUu IFRoaXMgaXMgYmVjYXVzZSBkcml2ZS1iYWNrdXAgb25seSBzdXBwb3J0cyBkcml2ZXMvZGV2aWNl cyBpbnN0ZWFkDQo+IC1vZiBhcmJpdHJhcnkgbm9kZXMuDQo+ICsgIC0+IHsNCj4gKyAgICAgICAi ZXhlY3V0ZSI6ICJ0cmFuc2FjdGlvbiIsDQo+ICsgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gKyAg ICAgICAgICJhY3Rpb25zIjogWw0KPiArICAgICAgICAgICB7DQo+ICsgICAgICAgICAgICAgInR5 cGUiOiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7 DQo+ICsgICAgICAgICAgICAgICAibm9kZSI6ICJkcml2ZTAiLA0KPiArICAgICAgICAgICAgICAg Im5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICAgICAgICB9DQo+ICsgICAgICAgICAgIH0sDQo+ ICsgICAgICAgICAgIHsNCj4gKyAgICAgICAgICAgICAidHlwZSI6ICJkcml2ZS1iYWNrdXAiLA0K PiArICAgICAgICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgICAgICAgImRldmljZSI6ICJk cml2ZTAiLA0KPiArICAgICAgICAgICAgICAgInRhcmdldCI6ICIvcGF0aC90by9mdWxsX2JhY2t1 cC5xY293MiIsDQo+ICsgICAgICAgICAgICAgICAic3luYyI6ICJmdWxsIiwNCj4gKyAgICAgICAg ICAgICAgICJmb3JtYXQiOiAicWNvdzIiDQo+ICsgICAgICAgICAgICAgfQ0KPiArICAgICAgICAg ICB9DQo+ICsgICAgICAgICBdDQo+ICsgICAgICAgfQ0KPiArICAgICB9DQo+ICsNCj4gKyAgPC0g eyAicmV0dXJuIjoge30gfQ0KPiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0YW1wIjog ew0KPiArICAgICAgICAgInNlY29uZHMiOiAxNTU1NDM2OTQ1LA0KPiArICAgICAgICAgIm1pY3Jv c2Vjb25kcyI6IDE3OTYyMA0KPiArICAgICAgIH0sDQo+ICsgICAgICAgImRhdGEiOiB7DQo+ICsg ICAgICAgICAic3RhdHVzIjogImNyZWF0ZWQiLA0KPiArICAgICAgICAgImlkIjogImRyaXZlMCIN Cj4gKyAgICAgICB9LA0KPiArICAgICAgICJldmVudCI6ICJKT0JfU1RBVFVTX0NIQU5HRSINCj4g KyAgICAgfQ0KPiArDQo+ICsgIC4uLg0KPiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0 YW1wIjogey4uLn0sDQo+ICsgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAiZGV2aWNlIjog ImRyaXZlMCIsDQo+ICsgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0KPiArICAgICAgICAgInNw ZWVkIjogMCwNCj4gKyAgICAgICAgICJsZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICJv ZmZzZXQiOiA2ODcxOTQ3NjczNg0KPiArICAgICAgIH0sDQo+ICsgICAgICAgImV2ZW50IjogIkJM T0NLX0pPQl9DT01QTEVURUQiDQo+ICsgICAgIH0NCj4gKw0KPiArICA8LSB7DQo+ICsgICAgICAg InRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgInN0 YXR1cyI6ICJjb25jbHVkZWQiLA0KPiArICAgICAgICAgImlkIjogImRyaXZlMCINCj4gKyAgICAg ICB9LA0KPiArICAgICAgICJldmVudCI6ICJKT0JfU1RBVFVTX0NIQU5HRSINCj4gKyAgICAgfQ0K PiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAg ImRhdGEiOiB7DQo+ICsgICAgICAgICAic3RhdHVzIjogIm51bGwiLA0KPiArICAgICAgICAgImlk IjogImRyaXZlMCINCj4gKyAgICAgICB9LA0KPiArICAgICAgICJldmVudCI6ICJKT0JfU1RBVFVT X0NIQU5HRSINCj4gKyAgICAgfQ0KPiArDQo+ICtBIGZ1bGwgZXhwbGFuYXRpb24gb2YgdGhlIGpv YiB0cmFuc2l0aW9uIHNlbWFudGljcyBhbmQgdGhlIEpPQl9TVEFUVVNfQ0hBTkdFDQo+ICtldmVu dCBhcmUgYmV5b25kIHRoZSBzY29wZSBvZiB0aGlzIGRvY3VtZW50IGFuZCB3aWxsIGJlIG9taXR0 ZWQgaW4gYWxsDQo+ICtzdWJzZXF1ZW50IGV4YW1wbGVzOyBhYm92ZSwgc2V2ZXJhbCBtb3JlIGV2 ZW50cyBoYXZlIGJlZW4gb21pdHRlZCBmb3IgYnJldml0eS4NCj4gKw0KPiArRXZlbnRzIGFib3Zl IGhhdmUgaGFkIHRoZWlyIHRpbWVzdGFtcCBvYmplY3RzIG9taXR0ZWQgZm9yIGJyZXZpdHkuDQoN CignInRpbWVzdGFtcCI6IHsuLi59JyBpcyBvYnZpb3VzIG5vdGF0aW9uLCBhbnl3YXksIGFuZCBh IGJpdCBpbiBjb25mbGljdCB3aXRoIGxhc3QNCnNlbnRlbmNlKQ0KDQo+ICsNCj4gKy4uIG5vdGU6 OiBTdWJzZXF1ZW50IGV4YW1wbGVzIHdpbGwgb21pdCBhbGwgZXZlbnRzIGV4Y2VwdCBCTE9DS19K T0JfQ09NUExFVEVEDQo+ICsgICAgICAgICAgZXhjZXB0IHdoZXJlIG5lY2Vzc2FyeSB0byBpbGx1 c3RyYXRlIHdvcmtmbG93IGRpZmZlcmVuY2VzLg0KPiArDQo+ICsgICAgICAgICAgT21pdHRlZCBl dmVudHMgYW5kIGpzb24gb2JqZWN0cyB3aWxsIGJlIHJlcHJlc2VudGVkIGJ5IGVsbGlwc2VzOg0K PiArICAgICAgICAgIGBgLi4uYGANCj4gKw0KPiArRXhhbXBsZTogUmVzZXR0aW5nIGFuIEluY3Jl bWVudGFsIEJhY2t1cCBBbmNob3IgUG9pbnQNCj4gK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICsNCj4gK0lmIHdlIHdhbnQgdG8gc3RhcnQg YSBuZXcgYmFja3VwIGNoYWluIHdpdGggYW4gZXhpc3RpbmcgYml0bWFwLCB3ZSBjYW4gYWxzbyB1 c2UNCj4gK2EgdHJhbnNhY3Rpb24gdG8gcmVzZXQgdGhlIGJpdG1hcCB3aGlsZSBtYWtpbmcgYSBu ZXcgZnVsbCBiYWNrdXA6DQo+ICsNCj4gKy4uIGNvZGU6OiBqc29uDQo+ICsNCj4gKyAgLT4gew0K PiArICAgICAgICJleGVjdXRlIjogInRyYW5zYWN0aW9uIiwNCj4gKyAgICAgICAiYXJndW1lbnRz Ijogew0KPiArICAgICAgICAgImFjdGlvbnMiOiBbDQo+ICsgICAgICAgICB7DQo+ICsgICAgICAg ICAgICJ0eXBlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1jbGVhciIsDQo+ICsgICAgICAgICAgICJk YXRhIjogew0KPiArICAgICAgICAgICAgICJub2RlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAg ICAgIm5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICAgICAgfQ0KPiArICAgICAgICAgfSwNCj4g KyAgICAgICAgIHsNCj4gKyAgICAgICAgICAgInR5cGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAg ICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTAiLA0K PiArICAgICAgICAgICAgICJ0YXJnZXQiOiAiL3BhdGgvdG8vbmV3X2Z1bGxfYmFja3VwLnFjb3cy IiwNCj4gKyAgICAgICAgICAgICAic3luYyI6ICJmdWxsIiwNCj4gKyAgICAgICAgICAgICAiZm9y bWF0IjogInFjb3cyIg0KPiArICAgICAgICAgICB9DQo+ICsgICAgICAgICB9DQo+ICsgICAgICAg XQ0KPiArICAgICB9DQo+ICsgICB9DQo+ICsNCj4gKyAgPC0geyAicmV0dXJuIjoge30gfQ0KPiAr DQo+ICsgIC4uLg0KPiArDQo+ICsgIDwtIHsNCj4gKyAgICAgICAidGltZXN0YW1wIjogey4uLn0s DQo+ICsgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ ICsgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0KPiArICAgICAgICAgInNwZWVkIjogMCwNCj4g KyAgICAgICAgICJsZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICJvZmZzZXQiOiA2ODcx OTQ3NjczNg0KPiArICAgICAgIH0sDQo+ICsgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9DT01Q TEVURUQiDQo+ICsgICAgIH0NCj4gKw0KPiArICAuLi4NCj4gKw0KPiArVGhlIHJlc3VsdCBvZiB0 aGlzIGV4YW1wbGUgaXMgaWRlbnRpY2FsIHRvIHRoZSBmaXJzdCwgYnV0IHdlIGNsZWFyIGFuIGV4 aXN0aW5nDQo+ICtiaXRtYXAgaW5zdGVhZCBvZiBhZGRpbmcgYSBuZXcgb25lLg0KPiArDQo+ICsu LiB0aXA6OiBJbiBib3RoIG9mIHRoZXNlIGV4YW1wbGVzLCAiYml0bWFwMCIgaXMgdGllZCBjb25j ZXB0dWFsbHkgdG8gdGhlDQo+ICsgICAgICAgICBjcmVhdGlvbiBvZiBuZXcsIGZ1bGwgYmFja3Vw cy4gVGhpcyByZWxhdGlvbnNoaXAgaXMgbm90IHNhdmVkIG9yDQo+ICsgICAgICAgICByZW1lbWJl cmVkIGJ5IFFFTVU7IGl0IGlzIHVwIHRvIHRoZSBvcGVyYXRvciBvciBtYW5hZ2VtZW50IGxheWVy IHRvDQo+ICsgICAgICAgICByZW1lbWJlciB3aGljaCBiaXRtYXBzIGFyZSBhc3NvY2lhdGVkIHdp dGggd2hpY2ggYmFja3Vwcy4NCj4gICANCj4gICBFeGFtcGxlOiBGaXJzdCBJbmNyZW1lbnRhbCBC YWNrdXANCj4gICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gICANCj4gLTEu IENyZWF0ZSBhIGZ1bGwgYmFja3VwIGFuZCBzeW5jIGl0IHRvIHRoZSBkaXJ0eSBiaXRtYXAsIGFz IGluIHRoZQ0KPiAtICAgdHJhbnNhY3Rpb25hbCBleGFtcGxlcyBhYm92ZTsgb3Igd2l0aCB0aGUg Vk0gb2ZmbGluZSwgbWFudWFsbHkgY3JlYXRlDQo+IC0gICBhIGZ1bGwgY29weSBhbmQgdGhlbiBj cmVhdGUgYSBuZXcgYml0bWFwIGJlZm9yZSB0aGUgVk0gYmVnaW5zDQo+IC0gICBleGVjdXRpb24u DQo+ICsjLiBDcmVhdGUgYSBmdWxsIGJhY2t1cCBhbmQgc3luYyBpdCB0byB0aGUgZGlydHkgYml0 bWFwIHVzaW5nIGVpdGhlciBvZiB0aGUgdHdvDQo+ICsgICBleGFtcGxlIG1ldGhvZHMgYWJvdmUs IG9yLCB3aXRoIHRoZSBWTSBvZmZsaW5lIGFzIHN1Z2dlc3RlZCBpbiB0aGUNCj4gKyAgIFRyYW5z YWN0aW9ucyBgSnVzdGlmaWNhdGlvbmBfIHNlY3Rpb24sIG1hbnVhbGx5IGNyZWF0ZSBhIGZ1bGwg Y29weSBhbmQgdGhlbg0KPiArICAgY3JlYXRlIGEgbmV3IGJpdG1hcCBiZWZvcmUgdGhlIFZNIGJl Z2lucyBleGVjdXRpb24uDQoNCkp1c3RpZmljYXRpb24gc3VnZ2VzdGVkIG5vdCBleGFjdGx5IHRo aXMsIGJ1dCBzdGFydCBpbiBwYXVzZWQgbW9kZSBhbmQgZG8gZnVsbCBiYWNrdXAuDQpTbywgYWN0 dWFsbHkgbWFudWFsIGNvcHkgd2hlbiBWTSBpcyBvZmZsaW5lLCB0aGVuIHN0YXJ0IGluIHBhdXNl IG1vZGUgYW5kIGNyZWF0ZSBiaXRtYXBzLA0KdGhlbiBzdGFydCAtIGlzIHlldCBhbm90aGVyIG1l dGhvZA0KDQo+ICAgDQo+IC0gICAtICBMZXQncyBhc3N1bWUgdGhlIGZ1bGwgYmFja3VwIGlzIG5h bWVkIGBgZnVsbF9iYWNrdXAuaW1nYGAuDQo+IC0gICAtICBMZXQncyBhc3N1bWUgdGhlIGJpdG1h cCB5b3UgY3JlYXRlZCBpcyBgYGJpdG1hcDBgYCBhdHRhY2hlZCB0bw0KPiArICAgLSBMZXQncyBh c3N1bWUgdGhlIGZ1bGwgYmFja3VwIGlzIG5hbWVkIGBgZnVsbF9iYWNrdXAucWNvdzJgYC4NCj4g KyAgIC0gTGV0J3MgYXNzdW1lIHRoZSBiaXRtYXAgd2UgY3JlYXRlZCBpcyBuYW1lZCBgYGJpdG1h cDBgYCwgYXR0YWNoZWQgdG8NCj4gICAgICAgICBgYGRyaXZlMGBgLg0KPiAgIA0KPiAtMi4gQ3Jl YXRlIGEgZGVzdGluYXRpb24gaW1hZ2UgZm9yIHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgdGhhdCB1 dGlsaXplcw0KPiArIy4gQ3JlYXRlIGEgZGVzdGluYXRpb24gaW1hZ2UgZm9yIHRoZSBpbmNyZW1l bnRhbCBiYWNrdXAgdGhhdCB1dGlsaXplcw0KPiAgICAgIHRoZSBmdWxsIGJhY2t1cCBhcyBhIGJh Y2tpbmcgaW1hZ2UuDQo+ICAgDQo+ICAgICAgLSAgTGV0J3MgYXNzdW1lIHRoZSBuZXcgaW5jcmVt ZW50YWwgaW1hZ2UgaXMgbmFtZWQNCj4gLSAgICAgIGBgaW5jcmVtZW50YWwuMC5pbWdgYC4NCj4g KyAgICAgIGBgaW5jcmVtZW50YWwuMC5xY293MmBgOg0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBi YXNoDQo+ICAgDQo+IC0gICAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50 YWwuMC5pbWcgLWIgZnVsbF9iYWNrdXAuaW1nIC1GIHFjb3cyDQo+ICsgICAgICAgJCBxZW11LWlt ZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50YWwuMC5xY293MiBcDQo+ICsgICAgICAgICAtYiBm dWxsX2JhY2t1cC5xY293MiAtRiBxY293Mg0KPiAgIA0KPiAtMy4gSXNzdWUgdGhlIGluY3JlbWVu dGFsIGJhY2t1cCBjb21tYW5kOg0KPiArIy4gSXNzdWUgYW4gaW5jcmVtZW50YWwgYmFja3VwIGNv bW1hbmQ6DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6IGpzb24NCj4gICANCj4gLSAgICAgICB7ICJl eGVjdXRlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgLT4gew0KPiArICAgICAgICAgImV4ZWN1 dGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gICAgICAgICAgICAiYXJndW1lbnRzIjogew0KPiAgICAg ICAgICAgICAgImRldmljZSI6ICJkcml2ZTAiLA0KPiAgICAgICAgICAgICAgImJpdG1hcCI6ICJi aXRtYXAwIiwNCj4gLSAgICAgICAgICAgInRhcmdldCI6ICJpbmNyZW1lbnRhbC4wLmltZyIsDQo+ ICsgICAgICAgICAgICJ0YXJnZXQiOiAiaW5jcmVtZW50YWwuMC5xY293MiIsDQo+ICAgICAgICAg ICAgICAiZm9ybWF0IjogInFjb3cyIiwNCj4gICAgICAgICAgICAgICJzeW5jIjogImluY3JlbWVu dGFsIiwNCj4gICAgICAgICAgICAgICJtb2RlIjogImV4aXN0aW5nIg0KPiAgICAgICAgICAgIH0N Cj4gICAgICAgICAgfQ0KPiAgIA0KPiArICAgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiAr ICAgIC4uLg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59 LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUw IiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIiwNCj4gKyAgICAgICAgICAgInNwZWVk IjogMCwNCj4gKyAgICAgICAgICAgImxlbiI6IDY4NzE5NDc2NzM2LA0KPiArICAgICAgICAgICAi b2Zmc2V0IjogNjg3MTk0NzY3MzYNCj4gKyAgICAgICAgIH0sDQo+ICsgICAgICAgICAiZXZlbnQi OiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICsNCj4gKyAgICAuLi4NCj4g Kw0KPiArVGhpcyBjb3BpZXMgYW55IGJsb2NrcyBtb2RpZmllZCBzaW5jZSB0aGUgZnVsbCBiYWNr dXAgd2FzIGNyZWF0ZWQgaW50byB0aGUNCj4gK2BgaW5jcmVtZW50YWwuMC5xY293MmBgIGZpbGUu IER1cmluZyB0aGUgb3BlcmF0aW9uLCBgYGJpdG1hcDBgYCBpcyBtYXJrZWQNCj4gK2BgK2J1c3lg YC4gSWYgdGhlIG9wZXJhdGlvbiBpcyBzdWNjZXNzZnVsLCBgYGJpdG1hcDBgYCB3aWxsIGJlIGNs ZWFyZWQgdG8NCj4gK3JlZmxlY3QgdGhlICJpbmNyZW1lbnRhbCIgYmFja3VwIHJlZ2ltZW4sIHdo aWNoIG9ubHkgY29waWVzIG91dCBuZXcgY2hhbmdlcw0KPiArZnJvbSBlYWNoIGluY3JlbWVudGFs IGJhY2t1cC4NCj4gKw0KPiArLi4gbm90ZTo6IEFueSBuZXcgd3JpdGVzIHRoYXQgb2NjdXIgYWZ0 ZXIgdGhlIGJhY2t1cCBvcGVyYXRpb24gc3RhcnRzIGRvIG5vdA0KPiArICAgICAgICAgIGdldCBj b3BpZWQgdG8gdGhlIGRlc3RpbmF0aW9uLiBUaGUgYmFja3VwJ3MgInBvaW50IGluIHRpbWUiIGlz IHdoZW4NCj4gKyAgICAgICAgICB0aGUgYmFja3VwIHN0YXJ0cywgbm90IHdoZW4gaXQgZW5kcy4g VGhlc2Ugd3JpdGVzIGFyZSByZWNvcmRlZCBpbiBhDQo+ICsgICAgICAgICAgc3BlY2lhbCBiaXRt YXAgdGhhdCBnZXRzIHJlLWFkZGVkIHRvIGJpdG1hcDAgd2hlbiB0aGUgYmFja3VwIGVuZHMgc28N Cj4gKyAgICAgICAgICB0aGF0IHRoZSBuZXh0IGluY3JlbWVudGFsIGJhY2t1cCBjYW4gY29weSB0 aGVtIG91dC4NCj4gKw0KPiAgIEV4YW1wbGU6IFNlY29uZCBJbmNyZW1lbnRhbCBCYWNrdXANCj4g ICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICAgDQo+IC0xLiBDcmVhdGUg YSBuZXcgZGVzdGluYXRpb24gaW1hZ2UgZm9yIHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgdGhhdCBw b2ludHMNCj4gLSAgIHRvIHRoZSBwcmV2aW91cyBvbmUsIGUuZy46IGBgaW5jcmVtZW50YWwuMS5p bWdgYA0KPiArIy4gQ3JlYXRlIGEgbmV3IGRlc3RpbmF0aW9uIGltYWdlIGZvciB0aGUgaW5jcmVt ZW50YWwgYmFja3VwIHRoYXQgcG9pbnRzDQo+ICsgICB0byB0aGUgcHJldmlvdXMgb25lLCBlLmcu OiBgYGluY3JlbWVudGFsLjEucWNvdzJgYA0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBiYXNoDQo+ ICAgDQo+IC0gICAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50YWwuMS5p bWcgLWIgaW5jcmVtZW50YWwuMC5pbWcgLUYgcWNvdzINCj4gKyAgICAgICAkIHFlbXUtaW1nIGNy ZWF0ZSAtZiBxY293MiBpbmNyZW1lbnRhbC4xLnFjb3cyIFwNCj4gKyAgICAgICAgIC1iIGluY3Jl bWVudGFsLjAucWNvdzIgLUYgcWNvdzINCj4gICANCj4gLTIuIElzc3VlIGEgbmV3IGluY3JlbWVu dGFsIGJhY2t1cCBjb21tYW5kLiBUaGUgb25seSBkaWZmZXJlbmNlIGhlcmUgaXMNCj4gKyMuIElz c3VlIGEgbmV3IGluY3JlbWVudGFsIGJhY2t1cCBjb21tYW5kLiBUaGUgb25seSBkaWZmZXJlbmNl IGhlcmUgaXMNCj4gICAgICB0aGF0IHdlIGhhdmUgY2hhbmdlZCB0aGUgdGFyZ2V0IGltYWdlIGJl bG93Lg0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBqc29uDQo+ICAgDQo+IC0gICAgICAgeyAiZXhl Y3V0ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiArICAgIC0+IHsNCj4gKyAgICAgICAgICJleGVjdXRl IjogImRyaXZlLWJhY2t1cCIsDQo+ICAgICAgICAgICAgImFyZ3VtZW50cyI6IHsNCj4gICAgICAg ICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gICAgICAgICAgICAgICJiaXRtYXAiOiAiYml0 bWFwMCIsDQo+IC0gICAgICAgICAgICJ0YXJnZXQiOiAiaW5jcmVtZW50YWwuMS5pbWciLA0KPiAr ICAgICAgICAgICAidGFyZ2V0IjogImluY3JlbWVudGFsLjEucWNvdzIiLA0KPiAgICAgICAgICAg ICAgImZvcm1hdCI6ICJxY293MiIsDQo+ICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRh bCIsDQo+ICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyINCj4gICAgICAgICAgICB9DQo+ ICAgICAgICAgIH0NCj4gICANCj4gLUVycm9ycw0KPiAtLS0tLS0tDQo+ICsgICAgPC0geyAicmV0 dXJuIjoge30gfQ0KPiAgIA0KPiAtLSAgSW4gdGhlIGV2ZW50IG9mIGFuIGVycm9yIHRoYXQgb2Nj dXJzIGFmdGVyIGEgYmFja3VwIGpvYiBpcw0KPiAtICAgc3VjY2Vzc2Z1bGx5IGxhdW5jaGVkLCBl aXRoZXIgYnkgYSBkaXJlY3QgUU1QIGNvbW1hbmQgb3IgYSBRTVANCj4gLSAgIHRyYW5zYWN0aW9u LCB0aGUgdXNlciB3aWxsIHJlY2VpdmUgYSBgYEJMT0NLX0pPQl9DT01QTEVURWBgIGV2ZW50IHdp dGgNCj4gLSAgIGEgZmFpbHVyZSBtZXNzYWdlLCBhY2NvbXBhbmllZCBieSBhIGBgQkxPQ0tfSk9C X0VSUk9SYGAgZXZlbnQuDQo+ICsgICAgLi4uDQo+ICsNCj4gKyAgICA8LSB7DQo+ICsgICAgICAg ICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAg ICAgImRldmljZSI6ICJkcml2ZTAiLA0KPiArICAgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0K PiArICAgICAgICAgICAic3BlZWQiOiAwLA0KPiArICAgICAgICAgICAibGVuIjogNjg3MTk0NzY3 MzYsDQo+ICsgICAgICAgICAgICJvZmZzZXQiOiA2ODcxOTQ3NjczNg0KPiArICAgICAgICAgfSwN Cj4gKyAgICAgICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0KPiArICAgICAgIH0N Cj4gKw0KPiArICAgIC4uLg0KPiArDQo+ICtCZWNhdXNlIHRoZSBmaXJzdCBpbmNyZW1lbnRhbCBi YWNrdXAgZnJvbSB0aGUgcHJldmlvdXMgZXhhbXBsZSBjb21wbGV0ZWQNCj4gK3N1Y2Nlc3NmdWxs eSwgYGBiaXRtYXAwYGAgd2FzIHN5bmNocm9uaXplZCB3aXRoIGBgaW5jcmVtZW50YWwuMC5xY293 MmBgLiBIZXJlLA0KPiArd2UgdXNlIGBgYml0bWFwMGBgIGFnYWluIHRvIGNyZWF0ZSBhIG5ldyBp bmNyZW1lbnRhbCBiYWNrdXAgdGhhdCB0YXJnZXRzIHRoZQ0KPiArcHJldmlvdXMgb25lLCBjcmVh dGluZyBhIGNoYWluIG9mIHRocmVlIGltYWdlczoNCj4gKw0KPiArLi4gYWRtb25pdGlvbjo6IERp YWdyYW0NCj4gKw0KPiArIC4uIGNvZGU6OiB0ZXh0DQo+ICsNCj4gKyAgICstLS0tLS0tLSsgICAr LS0tLS0tLS0tLS0tLS0tKyAgICstLS0tLS0tLS0tLS0tLS0rDQo+ICsgICB8ICAgICAgICB8ICAg fCAgICAgICAgICAgICAgIHwgICB8ICAgICAgICAgICAgICAgfA0KPiArICAgfCAgYmFzZSAgKzwt LSsgaW5jcmVtZW50YWwuMCArPC0tKyBpbmNyZW1lbnRhbC4xIHwNCj4gKyAgIHwgICAgICAgIHwg ICB8ICAgICAgICAgICAgICAgfCAgIHwgICAgICAgICAgICAgICB8DQo+ICsgICArLS0tLS0tLS0r ICAgKy0tLS0tLS0tLS0tLS0tLSsgICArLS0tLS0tLS0tLS0tLS0tKw0KPiArDQo+ICtFYWNoIG5l dyBpbmNyZW1lbnRhbCBiYWNrdXAgcmUtc3luY2hyb25pemVzIHRoZSBiaXRtYXAgdG8gdGhlIGxh dGVzdCBiYWNrdXANCj4gK2F1dGhvcmVkLCBhbGxvd2luZyBhIHVzZXIgdG8gY29udGludWUgdG8g ImNvbnN1bWUiIGl0IHRvIGNyZWF0ZSBuZXcgYmFja3Vwcw0KPiArb24gdG9wIG9mIGFuIGV4aXN0 aW5nIGNoYWluLg0KPiArDQo+ICtJbiB0aGUgYWJvdmUgZGlhZ3JhbSwgaW5jcmVtZW50YWwuMSBy ZXByZXNlbnRzIGluY3JlbWVudGFsLjEucWNvdzI7IGl0IGlzIG5vdCBhDQo+ICtjb21wbGV0ZSBp bWFnZSBieSBpdHNlbGYgYnV0IHJlbGllcyBvbiBiYWNraW5nIGZpbGVzIHRvIHJlY29uc3RydWN0 IGEgZnVsbA0KPiAraW1hZ2UuIGluY3JlbWVudGFsLjAgc2ltaWxhcmx5IHJlcXVpcmVzIHRoZSBm dWxsIGJhc2UgaW1hZ2UgdG8gcmVjb25zdHJ1Y3QgYQ0KPiArZnVuY3Rpb25pbmcgaW1hZ2UuDQo+ ICsNCj4gK0VhY2ggYmFja3VwIGluIHRoaXMgY2hhaW4gcmVtYWlucyBpbmRlcGVuZGVudCwgYW5k IGlzIHVuY2hhbmdlZCBieSBuZXcgZW50cmllcw0KPiArbWFkZSBsYXRlciBpbiB0aGUgY2hhaW4u IEZvciBpbnN0YW5jZSwgaW5jcmVtZW50YWwuMCByZW1haW5zIGEgcGVyZmVjdGx5IHZhbGlkDQo+ ICtiYWNrdXAgb2YgdGhlIGRpc2sgYXMgaXQgd2FzIHdoZW4gdGhlIGJhY2t1cCB3YXMgaXNzdWVk Lg0KPiArDQo+ICtFeGFtcGxlOiBJbmNyZW1lbnRhbCBQdXNoIEJhY2t1cHMgd2l0aG91dCBCYWNr aW5nIEZpbGVzDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+DQo+ICsNCj4gK0JhY2t1cCBpbWFnZXMgYXJlIGJlc3Qga2VwdCBvZmYtc2l0 ZSwgc28gd2Ugb2Z0ZW4gd2lsbCBub3QgaGF2ZSB0aGUgcHJlY2VkaW5nDQo+ICtiYWNrdXBzIGlu IGEgY2hhaW4gYXZhaWxhYmxlIHRvIGxpbmsgYWdhaW5zdC4gVGhpcyBpcyBub3QgYSBwcm9ibGVt IGF0IGJhY2t1cA0KPiArdGltZTsgd2Ugc2ltcGx5IGRvIG5vdCBzZXQgdGhlIGJhY2tpbmcgaW1h Z2Ugd2hlbiBjcmVhdGluZyB0aGUgZGVzdGluYXRpb24NCj4gK2ltYWdlOg0KPiArDQo+ICsjLiBD cmVhdGUgYSBuZXcgZGVzdGluYXRpb24gaW1hZ2Ugd2l0aCBubyBiYWNraW5nIGZpbGUgc2V0LiBX ZSB3aWxsIG5lZWQgdG8NCj4gKyAgIHNwZWNpZnkgdGhlIHNpemUgb2YgdGhlIGJhc2UgaW1hZ2Ug dGhpcyB0aW1lLCBiZWNhdXNlIGl0IGlzbid0IGF2YWlsYWJsZSBmb3INCj4gKyAgIFFFTVUgdG8g dXNlIHRvIGd1ZXNzOg0KDQpvciBqdXN0IGRyb3AgIm1vZGU6IGV4aXN0aW5nIg0KDQo+ICsNCj4g KyAgIC4uIGNvZGU6OiBiYXNoDQo+ICsNCj4gKyAgICAgICAkIHFlbXUtaW1nIGNyZWF0ZSAtZiBx Y293MiBpbmNyZW1lbnRhbC4yLnFjb3cyIDY0Rw0KPiArDQo+ICsjLiBJc3N1ZSBhIG5ldyBpbmNy ZW1lbnRhbCBiYWNrdXAgY29tbWFuZC4gQXBhcnQgZnJvbSB0aGUgbmV3IGRlc3RpbmF0aW9uIGlt YWdlLA0KPiArICAgdGhlcmUgaXMgbm8gZGlmZmVyZW5jZSBmcm9tIHRoZSBsYXN0IHR3byBleGFt cGxlcy4NCj4gKw0KPiArICAgLi4gY29kZTo6IGpzb24NCj4gKw0KPiArICAgIC0+IHsNCj4gKyAg ICAgICAgICJleGVjdXRlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAiYXJndW1lbnRz Ijogew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAgICJi aXRtYXAiOiAiYml0bWFwMCIsDQo+ICsgICAgICAgICAgICJ0YXJnZXQiOiAiaW5jcmVtZW50YWwu Mi5xY293MiIsDQo+ICsgICAgICAgICAgICJmb3JtYXQiOiAicWNvdzIiLA0KPiArICAgICAgICAg ICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICJtb2RlIjogImV4aXN0aW5n Ig0KPiArICAgICAgICAgfQ0KPiArICAgICAgIH0NCj4gKw0KPiArICAgIDwtIHsgInJldHVybiI6 IHt9IH0NCj4gKw0KPiArICAgIC4uLg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRp bWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICJk ZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIiwNCj4gKyAg ICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAgICAgICAgICAgImxlbiI6IDY4NzE5NDc2NzM2LA0K PiArICAgICAgICAgICAib2Zmc2V0IjogNjg3MTk0NzY3MzYNCj4gKyAgICAgICAgIH0sDQo+ICsg ICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICsN Cj4gKyAgICAuLi4NCj4gKw0KPiArVGhlIG9ubHkgZGlmZmVyZW5jZSBmcm9tIHRoZSBwZXJzcGVj dGl2ZSBvZiB0aGUgdXNlciBpcyB0aGF0IHlvdSB3aWxsIG5lZWQgdG8NCj4gK3NldCB0aGUgYmFj a2luZyBpbWFnZSB3aGVuIGF0dGVtcHRpbmcgdG8gcmVzdG9yZSB0aGUgYmFja3VwOg0KPiArDQo+ ICsuLiBjb2RlOjogYmFzaA0KPiArDQo+ICsgICAgJCBxZW11LWltZyByZWJhc2UgaW5jcmVtZW50 YWwuMi5xY293MiBcDQo+ICsgICAgICAtdSAtYiBpbmNyZW1lbnRhbC4xLnFjb3cyDQo+ICsNCj4g K1RoaXMgdXNlcyB0aGUgInVuc2FmZSIgcmViYXNlIG1vZGUgdG8gc2ltcGx5IHNldCB0aGUgYmFj a2luZyBmaWxlIHRvIGEgZmlsZSB0aGF0DQo+ICtpc24ndCBwcmVzZW50Lg0KDQpvciBqdXN0IGlu c3RydWN0IHVzZSAtLWltYWdlLW9wdHMgdG8gc3BlY2lmeSB0aGUgd2hvbGUgYmFja2luZyBjaGFp biBieSBoYW5kIGZvcg0KcWVtdS1pbWcgY29udmVydCBvciBxZW11LW5iZCAod2hpY2ggaXMgdXNl ZCBmb3IgcmVzdG9yZSkNCg0KPiArDQo+ICtFeGFtcGxlOiBNdWx0aS1kcml2ZSBJbmNyZW1lbnRh bCBCYWNrdXANCj4gK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiAr DQo+ICtBc3N1bWUgd2UgaGF2ZSBhIFZNIHdpdGggdHdvIGRyaXZlcywgImRyaXZlMCIgYW5kICJk cml2ZTEiIGFuZCB3ZSB3aXNoIHRvIGJhY2sNCj4gK2JvdGggb2YgdGhlbSB1cCBzdWNoIHRoYXQg dGhlIHR3byBiYWNrdXBzIHJlcHJlc2VudCB0aGUgc2FtZSBjcmFzaC1jb25zaXN0ZW50DQo+ICtw b2ludCBpbiB0aW1lLg0KPiArDQo+ICsjLiBGb3IgZWFjaCBkcml2ZSwgY3JlYXRlIGFuIGVtcHR5 IGltYWdlOg0KPiArDQo+ICsgICAuLiBjb2RlOjogYmFzaA0KPiArDQo+ICsgICAgJCBxZW11LWlt ZyBjcmVhdGUgLWYgcWNvdzIgZHJpdmUwLmZ1bGwucWNvdzIgNjRHDQo+ICsgICAgJCBxZW11LWlt ZyBjcmVhdGUgLWYgcWNvdzIgZHJpdmUxLmZ1bGwucWNvdzIgNjRHDQo+ICsNCj4gKyMuIENyZWF0 ZSBhIGZ1bGwgKGFuY2hvcikgYmFja3VwIGZvciBlYWNoIGRyaXZlLCB3aXRoIGFjY29tcGFueWlu ZyBiaXRtYXBzOg0KPiArDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgICAgLT4gew0K PiArICAgICAgICAgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiArICAgICAgICAgImFyZ3Vt ZW50cyI6IHsNCj4gKyAgICAgICAgICAgImFjdGlvbnMiOiBbDQo+ICsgICAgICAgICAgICAgew0K PiArICAgICAgICAgICAgICAgInR5cGUiOiAiYmxvY2stZGlydHktYml0bWFwLWFkZCIsDQo+ICsg ICAgICAgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAgICAgICAgICAgIm5vZGUiOiAiZHJp dmUwIiwNCj4gKyAgICAgICAgICAgICAgICAgIm5hbWUiOiAiYml0bWFwMCINCj4gKyAgICAgICAg ICAgICAgIH0NCj4gKyAgICAgICAgICAgICB9LA0KPiArICAgICAgICAgICAgIHsNCj4gKyAgICAg ICAgICAgICAgICJ0eXBlIjogImJsb2NrLWRpcnR5LWJpdG1hcC1hZGQiLA0KPiArICAgICAgICAg ICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgICAgICJub2RlIjogImRyaXZlMSIsDQo+ ICsgICAgICAgICAgICAgICAgICJuYW1lIjogImJpdG1hcDAiDQo+ICsgICAgICAgICAgICAgICB9 DQo+ICsgICAgICAgICAgICAgfSwNCj4gKyAgICAgICAgICAgICB7DQo+ICsgICAgICAgICAgICAg ICAidHlwZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiArICAgICAgICAgICAgICAgImRhdGEiOiB7DQo+ ICsgICAgICAgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAgICAgICAgICAg ICAgInRhcmdldCI6ICIvcGF0aC90by9kcml2ZTAuZnVsbC5xY293MiIsDQo+ICsgICAgICAgICAg ICAgICAgICJzeW5jIjogImZ1bGwiLA0KPiArICAgICAgICAgICAgICAgICAiZm9ybWF0IjogInFj b3cyIg0KPiArICAgICAgICAgICAgICAgfQ0KPiArICAgICAgICAgICAgIH0sDQo+ICsgICAgICAg ICAgICAgew0KPiArICAgICAgICAgICAgICAgInR5cGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAg ICAgICAgICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgICAgICAgICAiZGV2aWNlIjogImRy aXZlMSIsDQo+ICsgICAgICAgICAgICAgICAgICJ0YXJnZXQiOiAiL3BhdGgvdG8vZHJpdmUxLmZ1 bGwucWNvdzIiLA0KPiArICAgICAgICAgICAgICAgICAic3luYyI6ICJmdWxsIiwNCj4gKyAgICAg ICAgICAgICAgICAgImZvcm1hdCI6ICJxY293MiINCj4gKyAgICAgICAgICAgICAgIH0NCj4gKyAg ICAgICAgICAgICB9DQo+ICsgICAgICAgICAgIF0NCj4gKyAgICAgICAgIH0NCj4gKyAgICAgICB9 DQo+ICsNCj4gKyAgICA8LSB7ICJyZXR1cm4iOiB7fSB9DQo+ICsNCj4gKyAgICAuLi4NCj4gKw0K PiArICAgIDwtIHsNCj4gKyAgICAgICAgICJ0aW1lc3RhbXAiOiB7Li4ufSwNCj4gKyAgICAgICAg ICJkYXRhIjogew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAgICAg ICAgICJ0eXBlIjogImJhY2t1cCIsDQo+ICsgICAgICAgICAgICJzcGVlZCI6IDAsDQo+ICsgICAg ICAgICAgICJsZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICAgIm9mZnNldCI6IDY4NzE5 NDc2NzM2DQo+ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9D T01QTEVURUQiDQo+ICsgICAgICAgfQ0KPiArDQo+ICsgICAgLi4uDQo+ICsNCj4gKyAgICA8LSB7 DQo+ICsgICAgICAgICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsN Cj4gKyAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTEiLA0KPiArICAgICAgICAgICAidHlwZSI6 ICJiYWNrdXAiLA0KPiArICAgICAgICAgICAic3BlZWQiOiAwLA0KPiArICAgICAgICAgICAibGVu IjogNjg3MTk0NzY3MzYsDQo+ICsgICAgICAgICAgICJvZmZzZXQiOiA2ODcxOTQ3NjczNg0KPiAr ICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0K PiArICAgICAgIH0NCj4gKw0KPiArICAgIC4uLg0KPiArDQo+ICsjLiBMYXRlciwgY3JlYXRlIG5l dyBkZXN0aW5hdGlvbiBpbWFnZXMgZm9yIGVhY2ggb2YgdGhlIGluY3JlbWVudGFsIGJhY2t1cHMN Cj4gKyAgIHRoYXQgcG9pbnQgdG8gdGhlaXIgcmVzcGVjdGl2ZSBmdWxsIGJhY2t1cHM6DQo+ICsN Cj4gKyAgIC4uIGNvZGU6OiBiYXNoDQo+ICsNCj4gKyAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYg cWNvdzIgZHJpdmUwLmluYzAucWNvdzIgXA0KPiArICAgICAgIC1iIGRyaXZlMC5mdWxsLnFjb3cy IC1GIHFjb3cyDQo+ICsgICAgICQgcWVtdS1pbWcgY3JlYXRlIC1mIHFjb3cyIGRyaXZlMS5pbmMw LnFjb3cyIFwNCj4gKyAgICAgICAtYiBkcml2ZTEuZnVsbC5xY293MiAtRiBxY293Mg0KPiArDQo+ ICsjLiBJc3N1ZSBhIG11bHRpLWRyaXZlIGluY3JlbWVudGFsIHB1c2ggYmFja3VwIHRyYW5zYWN0 aW9uOg0KPiArDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgICAgLT4gew0KPiArICAg ICAgICAgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiArICAgICAgICAgImFyZ3VtZW50cyI6 IHsNCj4gKyAgICAgICAgICAgImFjdGlvbnMiOiBbDQo+ICsgICAgICAgICAgICAgew0KPiArICAg ICAgICAgICAgICAgInR5cGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAgICAgICAgICAgICAgICJk YXRhIjogew0KPiArICAgICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAg ICAgICAgICAgICAgICJiaXRtYXAiOiAiYml0bWFwMCIsDQo+ICsgICAgICAgICAgICAgICAgICJm b3JtYXQiOiAicWNvdzIiLA0KPiArICAgICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyIs DQo+ICsgICAgICAgICAgICAgICAgICJzeW5jIjogImluY3JlbWVudGFsIiwNCj4gKyAgICAgICAg ICAgICAgICAgInRhcmdldCI6ICJkcml2ZTAuaW5jMC5xY293MiINCj4gKyAgICAgICAgICAgICAg IH0NCj4gKyAgICAgICAgICAgICB9LA0KPiArICAgICAgICAgICAgIHsNCj4gKyAgICAgICAgICAg ICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAgICAgICAiZGF0YSI6IHsN Cj4gKyAgICAgICAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTEiLA0KPiArICAgICAgICAgICAg ICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAgICAgICAgICAgICAgICAiZm9ybWF0Ijog InFjb3cyIiwNCj4gKyAgICAgICAgICAgICAgICAgIm1vZGUiOiAiZXhpc3RpbmciLA0KPiArICAg ICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAgICAg ICJ0YXJnZXQiOiAiZHJpdmUxLmluYzAucWNvdzIiDQo+ICsgICAgICAgICAgICAgICB9DQo+ICsg ICAgICAgICAgICAgfSwNCj4gKyAgICAgICAgICAgXQ0KPiArICAgICAgICAgfQ0KPiArICAgICAg IH0NCj4gKw0KPiArICAgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gKw0KPiArICAgIC4uLg0KPiAr DQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAg ICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAg ICAgICAgInR5cGUiOiAiYmFja3VwIiwNCj4gKyAgICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAg ICAgICAgICAgImxlbiI6IDY4NzE5NDc2NzM2LA0KPiArICAgICAgICAgICAib2Zmc2V0IjogNjg3 MTk0NzY3MzYNCj4gKyAgICAgICAgIH0sDQo+ICsgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9C X0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICsNCj4gKyAgICAuLi4NCj4gKw0KPiArICAgIDwt IHsNCj4gKyAgICAgICAgICJ0aW1lc3RhbXAiOiB7Li4ufSwNCj4gKyAgICAgICAgICJkYXRhIjog ew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMSIsDQo+ICsgICAgICAgICAgICJ0eXBl IjogImJhY2t1cCIsDQo+ICsgICAgICAgICAgICJzcGVlZCI6IDAsDQo+ICsgICAgICAgICAgICJs ZW4iOiA2ODcxOTQ3NjczNiwNCj4gKyAgICAgICAgICAgIm9mZnNldCI6IDY4NzE5NDc2NzM2DQo+ ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9DT01QTEVURUQi DQo+ICsgICAgICAgfQ0KPiArDQo+ICsgICAgLi4uDQo+ICsNCj4gK1B1c2ggQmFja3VwIEVycm9y cyAmIFJlY292ZXJ5DQo+ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiArDQo+ICst ICBJbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IgdGhhdCBvY2N1cnMgYWZ0ZXIgYSBwdXNoIGJhY2t1 cCBqb2IgaXMgc3VjY2Vzc2Z1bGx5DQo+ICsgICBsYXVuY2hlZCwgZWl0aGVyIGJ5IGEgZGlyZWN0 IFFNUCBjb21tYW5kIG9yIGEgUU1QIHRyYW5zYWN0aW9uLCB0aGUgdXNlciB3aWxsDQo+ICsgICBy ZWNlaXZlIGEgYGBCTE9DS19KT0JfQ09NUExFVEVgYCBldmVudCB3aXRoIGEgZmFpbHVyZSBtZXNz YWdlLCBhY2NvbXBhbmllZCBieQ0KPiArICAgYSBgYEJMT0NLX0pPQl9FUlJPUmBgIGV2ZW50Lg0K PiAgIA0KPiAgIC0gIEluIHRoZSBjYXNlIG9mIGFuIGV2ZW50IGJlaW5nIGNhbmNlbGxlZCwgdGhl IHVzZXIgd2lsbCByZWNlaXZlIGENCg0Kcy9ldmVudC9qb2INCg0KPiAtICAgYGBCTE9DS19KT0Jf Q0FOQ0VMTEVEYGAgZXZlbnQgaW5zdGVhZCBvZiBhIHBhaXIgb2YgQ09NUExFVEUgYW5kIEVSUk9S DQo+IC0gICBldmVudHMuDQo+ICsgICBgYEJMT0NLX0pPQl9DQU5DRUxMRURgYCBldmVudCBpbnN0 ZWFkIG9mIGEgcGFpciBvZiBDT01QTEVURSBhbmQgRVJST1IgZXZlbnRzLg0KPiAgIA0KPiAtLSAg SW4gZWl0aGVyIGNhc2UsIHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgZGF0YSBjb250YWluZWQgd2l0 aGluIHRoZQ0KPiAtICAgYml0bWFwIGlzIHNhZmVseSByb2xsZWQgYmFjaywgYW5kIHRoZSBkYXRh IHdpdGhpbiB0aGUgYml0bWFwIGlzIG5vdA0KPiAtICAgbG9zdC4gVGhlIGltYWdlIGZpbGUgY3Jl YXRlZCBmb3IgdGhlIGZhaWxlZCBhdHRlbXB0IGNhbiBiZSBzYWZlbHkNCj4gLSAgIGRlbGV0ZWQu DQo+ICstICBJbiBlaXRoZXIgZmFpbHVyZSBjYXNlLCB0aGUgYml0bWFwIHVzZWQgZm9yIHRoZSBm YWlsZWQgb3BlcmF0aW9uIGlzIG5vdA0KPiArICAgY2xlYXJlZC4gSXQgd2lsbCBjb250YWluIGFs bCBvZiB0aGUgZGlydHkgYml0cyBpdCBkaWQgYXQgdGhlIHN0YXJ0IG9mIHRoZQ0KPiArICAgb3Bl cmF0aW9uLCBwbHVzIGFueSBuZXcgYml0cyB0aGF0IGdvdCBtYXJrZWQgZHVyaW5nIHRoZSBvcGVy YXRpb24uDQo+ICAgDQo+IC0tICBPbmNlIHRoZSB1bmRlcmx5aW5nIHByb2JsZW0gaXMgZml4ZWQg KGUuZy4gbW9yZSBzdG9yYWdlIHNwYWNlIGlzDQo+IC0gICBmcmVlZCB1cCksIHlvdSBjYW4gc2lt cGx5IHJldHJ5IHRoZSBpbmNyZW1lbnRhbCBiYWNrdXAgY29tbWFuZCB3aXRoDQo+IC0gICB0aGUg c2FtZSBiaXRtYXAuDQo+ICstICBFZmZlY3RpdmVseSwgdGhlICJwb2ludCBpbiB0aW1lIiB0aGF0 IGEgYml0bWFwIGlzIHJlY29yZGluZyBkaWZmZXJlbmNlcw0KPiArICAgYWdhaW5zdCBpcyByb2xs ZWQgYmFjayB0byB0aGUgaXNzdWFuY2Ugb2YgdGhlIGxhc3Qgc3VjY2Vzc2Z1bCBpbmNyZW1lbnRh bA0KPiArICAgYmFja3VwLCBpbnN0ZWFkIG9mIGJlaW5nIG1vdmVkIGZvcndhcmQgdG8gdGhlIHN0 YXJ0IG9mIHRoaXMgbm93LWZhaWxlZA0KPiArICAgYmFja3VwLg0KDQpyb2xsZWQgYmFjayBpbnN0 ZWFkIG9mIGJlaW5nIG1vdmVkIGZvcndhcmQgc291bmRzIHN0cmFuZ2UuDQoNCklmIHdlIGFyZSBu b3QgbW92aW5nIGZvcndhcmQgdGhlbiBub3RoaW5nIHRvIHJvbGwgYmFjay4NCg0KRm9yIG1lIGl0 IHdvdWxkIGJlIGNsZWFyZXIgc29tZXRoaW5nIGxpa2UgdGhpczoNCg0KRWZmZWN0aXZlbHksIGV2 ZXJ5dGhpbmcgd29ya3MgbGlrZSB0aGVyZSB3YXMgbm8gZmFpbGVkIGJhY2t1cCBhdCBhbGwgYW5k IHlvdSBjYW4NCnNhZmVseSByZXRyeSB0aGUgb3BlcmF0aW9uIHVzaW5nIHNhbWUgZGlydHkgYml0 bWFwIChleGNlcHQgeW91IGhhdmUgdG8gcmVtb3ZlIHRhcmdldA0KaW1hZ2UpLg0KDQoNCg0KaG1t LCBub3RpY2VkIGp1c3Qgbm93LCB0aGF0IHlvdSBzdG9wcGVkIHVzaW5nICIuLiBhZG1vbml0aW9u OjoiIHNlY3Rpb25zIGZvciBleGFtcGxlcy4uLg0KYWxzbywgaXQgd291bGQgc2ltcGxlciB0byBy ZXZpZXcsIGlmIHN0eWxlIGNoYW5nZXMgYW5kIHBhcmFncmFwaCByZWZsb3cgZ28gaW4gc2VwYXJh dGUNCnBhdGNoLi4NCg0KPiAgIA0KPiAtRXhhbXBsZQ0KPiAtfn5+fn5+fg0KPiArLSAgT25jZSB0 aGUgdW5kZXJseWluZyBwcm9ibGVtIGlzIGFkZHJlc3NlZCAoZS5nLiBtb3JlIHN0b3JhZ2Ugc3Bh Y2UgaXMNCj4gKyAgIGFsbG9jYXRlZCBvbiB0aGUgZGVzdGluYXRpb24pLCB0aGUgaW5jcmVtZW50 YWwgYmFja3VwIGNvbW1hbmQgY2FuIGJlIHJldHJpZWQNCj4gKyAgIHdpdGggdGhlIHNhbWUgYml0 bWFwLg0KPiAgIA0KPiAtMS4gQ3JlYXRlIGEgdGFyZ2V0IGltYWdlOg0KPiArRXhhbXBsZTogSW5k aXZpZHVhbCBGYWlsdXJlcw0KPiArfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiArDQo+ ICtCYWNrdXAgam9icyB0aGF0IGZhaWwgaW5kaXZpZHVhbGx5IGJlaGF2ZSBzaW1wbHkgYXMgZGVz Y3JpYmVkIGFib3ZlLiBUaGlzDQo+ICtleGFtcGxlIHNob3dzIHRoZSBzaW1wbGVzdCBjYXNlOg0K PiArDQo+ICsjLiBDcmVhdGUgYSB0YXJnZXQgaW1hZ2U6DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6 IGJhc2gNCj4gICANCj4gLSAgICAgICAkIHFlbXUtaW1nIGNyZWF0ZSAtZiBxY293MiBpbmNyZW1l bnRhbC4wLmltZyAtYiBmdWxsX2JhY2t1cC5pbWcgLUYgcWNvdzINCj4gKyAgICAgICAkIHFlbXUt aW1nIGNyZWF0ZSAtZiBxY293MiBpbmNyZW1lbnRhbC4wLnFjb3cgXA0KPiArICAgICAgICAgLWIg ZnVsbF9iYWNrdXAucWNvdyAtRiBxY293Mg0KPiAgIA0KPiAtMi4gQXR0ZW1wdCB0byBjcmVhdGUg YW4gaW5jcmVtZW50YWwgYmFja3VwIHZpYSBRTVA6DQo+ICsjLiBBdHRlbXB0IHRvIGNyZWF0ZSBh biBpbmNyZW1lbnRhbCBiYWNrdXAgdmlhIFFNUDoNCj4gICANCj4gICAgICAuLiBjb2RlOjoganNv bg0KPiAgIA0KPiAtICAgICAgIHsgImV4ZWN1dGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAgICAt PiB7DQo+ICsgICAgICAgICAiZXhlY3V0ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiAgICAgICAgICAg ICJhcmd1bWVudHMiOiB7DQo+ICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICAg ICAgICAgICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiAtICAgICAgICAgICAidGFyZ2V0Ijog ImluY3JlbWVudGFsLjAuaW1nIiwNCj4gKyAgICAgICAgICAgInRhcmdldCI6ICJpbmNyZW1lbnRh bC4wLnFjb3cyIiwNCj4gICAgICAgICAgICAgICJmb3JtYXQiOiAicWNvdzIiLA0KPiAgICAgICAg ICAgICAgInN5bmMiOiAiaW5jcmVtZW50YWwiLA0KPiAgICAgICAgICAgICAgIm1vZGUiOiAiZXhp c3RpbmciDQo+ICAgICAgICAgICAgfQ0KPiAgICAgICAgICB9DQo+ICAgDQo+IC0zLiBSZWNlaXZl IGFuIGV2ZW50IG5vdGlmeWluZyB1cyBvZiBmYWlsdXJlOg0KPiArICAgIDwtIHsgInJldHVybiI6 IHt9IH0NCj4gKw0KPiArICAgTm90ZSB0aGF0IHRoZSBqb2IgaXMgc3VjY2Vzc2Z1bGx5IGFjY2Vw dGVkLg0KPiArDQo+ICszLiBSZWNlaXZlIGFuIGV2ZW50IGluZGljYXRpbmcgZmFpbHVyZToNCg0K cy8zLyMgLCBhbmQgbGF0ZXIgc2V2ZXJhbCB0aW1lcw0KDQo+ICAgDQo+ICAgICAgLi4gY29kZTo6 IGpzb24NCj4gICANCj4gLSAgICAgICB7ICJ0aW1lc3RhbXAiOiB7ICJzZWNvbmRzIjogMTQyNDcw OTQ0MiwgIm1pY3Jvc2Vjb25kcyI6IDg0NDUyNCB9LA0KPiAtICAgICAgICAgImRhdGEiOiB7ICJz cGVlZCI6IDAsICJvZmZzZXQiOiAwLCAibGVuIjogNjcxMDg4NjQsDQo+IC0gICAgICAgICAgICAg ICAgICAgImVycm9yIjogIk5vIHNwYWNlIGxlZnQgb24gZGV2aWNlIiwNCj4gLSAgICAgICAgICAg ICAgICAgICAiZGV2aWNlIjogImRyaXZlMSIsICJ0eXBlIjogImJhY2t1cCIgfSwNCj4gLSAgICAg ICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIiB9DQo+ICsgICAgPC0gew0KPiArICAg ICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAg ICAgICAgICJzcGVlZCI6IDAsDQo+ICsgICAgICAgICAgICJvZmZzZXQiOiAwLA0KPiArICAgICAg ICAgICAibGVuIjogNjcxMDg4NjQsDQo+ICsgICAgICAgICAgICJlcnJvciI6ICJObyBzcGFjZSBs ZWZ0IG9uIGRldmljZSIsDQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAg ICAgICAgICAgInR5cGUiOiAiYmFja3VwIg0KPiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJl dmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0KPiArICAgICAgIH0NCg0KU2hvdWxkIG5vdCBC TE9DS19KT0JfRVJST1IgZ28gZmlyc3Q/DQoNCj4gICANCj4gLTQuIERlbGV0ZSB0aGUgZmFpbGVk IGluY3JlbWVudGFsLCBhbmQgcmUtY3JlYXRlIHRoZSBpbWFnZS4NCj4gKzQuIERlbGV0ZSB0aGUg ZmFpbGVkIGltYWdlLCBhbmQgcmUtY3JlYXRlIGl0Lg0KPiAgIA0KPiAgICAgIC4uIGNvZGU6OiBi YXNoDQo+ICAgDQo+IC0gICAgICAgJCBybSBpbmNyZW1lbnRhbC4wLmltZw0KPiAtICAgICAgICQg cWVtdS1pbWcgY3JlYXRlIC1mIHFjb3cyIGluY3JlbWVudGFsLjAuaW1nIC1iIGZ1bGxfYmFja3Vw LmltZyAtRiBxY293Mg0KPiArICAgICAgICQgcm0gaW5jcmVtZW50YWwuMC5xY293DQoNCnMvcWNv dy9xY293Mg0KDQo+ICsgICAgICAgJCBxZW11LWltZyBjcmVhdGUgLWYgcWNvdzIgaW5jcmVtZW50 YWwuMC5xY293MiBcDQo+ICsgICAgICAgICAtYiBmdWxsX2JhY2t1cC5xY293MiAtRiBxY293Mg0K PiAgIA0KPiAgIDUuIFJldHJ5IHRoZSBjb21tYW5kIGFmdGVyIGZpeGluZyB0aGUgdW5kZXJseWlu ZyBwcm9ibGVtLCBzdWNoIGFzDQo+ICAgICAgZnJlZWluZyB1cCBzcGFjZSBvbiB0aGUgYmFja3Vw IHZvbHVtZToNCj4gICANCj4gICAgICAuLiBjb2RlOjoganNvbg0KPiAgIA0KPiAtICAgICAgIHsg ImV4ZWN1dGUiOiAiZHJpdmUtYmFja3VwIiwNCj4gKyAgICAtPiB7DQo+ICsgICAgICAgICAiZXhl Y3V0ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiAgICAgICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICAg ICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICAgICAgICAgICAgICAiYml0bWFwIjog ImJpdG1hcDAiLA0KPiAtICAgICAgICAgICAidGFyZ2V0IjogImluY3JlbWVudGFsLjAuaW1nIiwN Cj4gKyAgICAgICAgICAgInRhcmdldCI6ICJpbmNyZW1lbnRhbC4wLnFjb3cyIiwNCj4gICAgICAg ICAgICAgICJmb3JtYXQiOiAicWNvdzIiLA0KPiAgICAgICAgICAgICAgInN5bmMiOiAiaW5jcmVt ZW50YWwiLA0KPiAgICAgICAgICAgICAgIm1vZGUiOiAiZXhpc3RpbmciDQo+ICAgICAgICAgICAg fQ0KPiAgICAgICAgICB9DQo+ICAgDQo+ICsgICAgPC0geyAicmV0dXJuIjoge30gfQ0KPiArDQo+ ICAgNi4gUmVjZWl2ZSBjb25maXJtYXRpb24gdGhhdCB0aGUgam9iIGNvbXBsZXRlZCBzdWNjZXNz ZnVsbHk6DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6IGpzb24NCj4gICANCj4gLSAgICAgICB7ICJ0 aW1lc3RhbXAiOiB7ICJzZWNvbmRzIjogMTQyNDcwOTY2OCwgIm1pY3Jvc2Vjb25kcyI6IDUyNjUy NSB9LA0KPiAtICAgICAgICAgImRhdGEiOiB7ICJkZXZpY2UiOiAiZHJpdmUxIiwgInR5cGUiOiAi YmFja3VwIiwNCj4gLSAgICAgICAgICAgICAgICAgICAic3BlZWQiOiAwLCAibGVuIjogNjcxMDg4 NjQsICJvZmZzZXQiOiA2NzEwODg2NH0sDQo+IC0gICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9C X0NPTVBMRVRFRCIgfQ0KPiArICAgIDwtIHsNCj4gKyAgICAgICAgICJ0aW1lc3RhbXAiOiB7Li4u fSwNCj4gKyAgICAgICAgICJkYXRhIjogew0KPiArICAgICAgICAgICAiZGV2aWNlIjogImRyaXZl MCIsDQo+ICsgICAgICAgICAgICJ0eXBlIjogImJhY2t1cCIsDQo+ICsgICAgICAgICAgICJzcGVl ZCI6IDAsDQo+ICsgICAgICAgICAgICJsZW4iOiA2NzEwODg2NCwNCj4gKyAgICAgICAgICAgIm9m ZnNldCI6IDY3MTA4ODY0DQo+ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJM T0NLX0pPQl9DT01QTEVURUQiDQo+ICsgICAgICAgfQ0KPiAgIA0KPiAtUGFydGlhbCBUcmFuc2Fj dGlvbmFsIEZhaWx1cmVzDQo+IC1+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4NCj4gK0V4 YW1wbGU6IFBhcnRpYWwgVHJhbnNhY3Rpb25hbCBGYWlsdXJlcw0KPiArfn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+DQo+ICAgDQo+IC0tICBTb21ldGltZXMsIGEgdHJhbnNh Y3Rpb24gd2lsbCBzdWNjZWVkIGluIGxhdW5jaGluZyBhbmQgcmV0dXJuDQo+IC0gICBzdWNjZXNz LCBidXQgdGhlbiBsYXRlciB0aGUgYmFja3VwIGpvYnMgdGhlbXNlbHZlcyBtYXkgZmFpbC4gSXQg aXMNCj4gLSAgIHBvc3NpYmxlIHRoYXQgYSBtYW5hZ2VtZW50IGFwcGxpY2F0aW9uIG1heSBoYXZl IHRvIGRlYWwgd2l0aCBhDQo+IC0gICBwYXJ0aWFsIGJhY2t1cCBmYWlsdXJlIGFmdGVyIGEgc3Vj Y2Vzc2Z1bCB0cmFuc2FjdGlvbi4NCj4gK1FNUCBjb21tYW5kcyBsaWtlIGBxdWVyeS1ibG9jayA8 cWVtdS1xbXAtcmVmLmh0bWwjaW5kZXgtcXVlcnlfMDAyZGJsb2NrPmBfDQoNCnF1ZXJ5LWJsb2Nr ID8NCg0KPiArY29uY2VwdHVhbGx5IG9ubHkgc3RhcnQgYSBqb2IsIGFuZCBzbyB0aGVzZSB0cmFu c2FjdGlvbnMgbWF5IHN1Y2NlZWQgZXZlbiBpZg0KPiArdGhlIGpvYiBsYXRlciBmYWlscy4gVGhp cyBtaWdodCBoYXZlIHN1cnByaXNpbmcgaW50ZXJhY3Rpb25zIHdpdGggbm90aW9ucyBvZg0KPiAr aG93IGEgInRyYW5zYWN0aW9uIiBvdWdodCB0byBiZWhhdmUuDQo+ICAgDQo+IC0tICBJZiBtdWx0 aXBsZSBiYWNrdXAgam9icyBhcmUgc3BlY2lmaWVkIGluIGEgc2luZ2xlIHRyYW5zYWN0aW9uLCB3 aGVuDQo+IC0gICBvbmUgb2YgdGhlbSBmYWlscywgaXQgd2lsbCBub3QgaW50ZXJhY3Qgd2l0aCB0 aGUgb3RoZXIgYmFja3VwIGpvYnMgaW4NCj4gLSAgIGFueSB3YXkuDQo+ICtUaGlzIGRpc3RpbmN0 aW9uIG1lYW5zIHRoYXQgb24gb2NjYXNpb24sIGEgdHJhbnNhY3Rpb24gY29udGFpbmluZyBzdWNo IGpvYg0KPiArbGF1bmNoaW5nIGNvbW1hbmRzIG1heSBhcHBlYXIgdG8gc3VjY2VlZCBhbmQgcmV0 dXJuIHN1Y2Nlc3MsIGJ1dCBsYXRlcg0KPiAraW5kaXZpZHVhbCBqb2JzIGFzc29jaWF0ZWQgd2l0 aCB0aGUgdHJhbnNhY3Rpb24gbWF5IGZhaWwuIEl0IGlzIHBvc3NpYmxlIHRoYXQgYQ0KPiArbWFu YWdlbWVudCBhcHBsaWNhdGlvbiBtYXkgaGF2ZSB0byBkZWFsIHdpdGggYSBwYXJ0aWFsIGJhY2t1 cCBmYWlsdXJlIGFmdGVyIGENCj4gKyJzdWNjZXNzZnVsIiB0cmFuc2FjdGlvbi4NCj4gICANCj4g LS0gIFRoZSBqb2IocykgdGhhdCBzdWNjZWVkZWQgd2lsbCBjbGVhciB0aGUgZGlydHkgYml0bWFw IGFzc29jaWF0ZWQgd2l0aA0KPiAtICAgdGhlIG9wZXJhdGlvbiwgYnV0IHRoZSBqb2IocykgdGhh dCBmYWlsZWQgd2lsbCBub3QuIEl0IGlzIG5vdCAic2FmZSINCj4gLSAgIHRvIGRlbGV0ZSBhbnkg aW5jcmVtZW50YWwgYmFja3VwcyB0aGF0IHdlcmUgY3JlYXRlZCBzdWNjZXNzZnVsbHkgaW4NCj4g LSAgIHRoaXMgc2NlbmFyaW8sIGV2ZW4gdGhvdWdoIG90aGVycyBmYWlsZWQuDQo+ICtJZiBtdWx0 aXBsZSBiYWNrdXAgam9icyBhcmUgc3BlY2lmaWVkIGluIGEgc2luZ2xlIHRyYW5zYWN0aW9uLCBp ZiBvbmUgb2YgdGhvc2UNCj4gK2pvYnMgZmFpbHMsIGl0IHdpbGwgbm90IGludGVyYWN0IHdpdGgg dGhlIG90aGVyIGJhY2t1cCBqb2JzIGluIGFueSB3YXkgYnkNCj4gK2RlZmF1bHQuIFRoZSBqb2Io cykgdGhhdCBzdWNjZWVkZWQgd2lsbCBjbGVhciB0aGUgZGlydHkgYml0bWFwIGFzc29jaWF0ZWQg d2l0aA0KPiArdGhlIG9wZXJhdGlvbiwgYnV0IHRoZSBqb2IocykgdGhhdCBmYWlsZWQgd2lsbCBu b3QuIEl0IGlzIHRoZXJlZm9yZSBub3Qgc2FmZSB0bw0KPiArZGVsZXRlIGFueSBpbmNyZW1lbnRh bCBiYWNrdXBzIHRoYXQgd2VyZSBjcmVhdGVkIHN1Y2Nlc3NmdWxseSBpbiB0aGlzIHNjZW5hcmlv LA0KPiArZXZlbiB0aG91Z2ggb3RoZXJzIGZhaWxlZC4NCj4gICANCj4gLUV4YW1wbGUNCj4gLV5e Xl5eXl4NCj4gK1RoaXMgZXhhbXBsZSBpbGx1c3RyYXRlcyBhIHRyYW5zYWN0aW9uIHdpdGggdHdv IGJhY2t1cCBqb2JzLCB3aGVyZSBvbmUgZmFpbHMNCj4gK2FuZCBvbmUgc3VjY2VlZHM6DQo+ICAg DQo+IC0tICBRTVAgZXhhbXBsZSBoaWdobGlnaHRpbmcgdHdvIGJhY2t1cCBqb2JzOg0KPiArIy4g SXNzdWUgdGhlIHRyYW5zYWN0aW9uIHRvIHN0YXJ0IGEgYmFja3VwIG9mIGJvdGggZHJpdmVzLiBO b3RlIHRoYXQgdGhlDQo+ICsgICB0cmFuc2FjdGlvbiBpcyBhY2NlcHRlZCwgaW5kaWNhdGluZyB0 aGF0IHRoZSBqb2JzIGFyZSBzdGFydGVkIHN1Y2Nlc2Z1bGx5Lg0KPiAgIA0KPiAgICAgIC4uIGNv ZGU6OiBqc29uDQo+ICAgDQo+IC0gICAgICAgeyAiZXhlY3V0ZSI6ICJ0cmFuc2FjdGlvbiIsDQo+ ICsgICAgLT4gew0KPiArICAgICAgICAgImV4ZWN1dGUiOiAidHJhbnNhY3Rpb24iLA0KPiAgICAg ICAgICAgICJhcmd1bWVudHMiOiB7DQo+ICAgICAgICAgICAgICAiYWN0aW9ucyI6IFsNCj4gLSAg ICAgICAgICAgICB7ICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+IC0gICAgICAgICAgICAgICAi ZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTAiLCAiYml0bWFwIjogImJpdG1hcDAiLA0KPiAtICAg ICAgICAgICAgICAgICAgICAgICAgICJmb3JtYXQiOiAicWNvdzIiLCAibW9kZSI6ICJleGlzdGlu ZyIsDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgInN5bmMiOiAiaW5jcmVtZW50YWwiLCAi dGFyZ2V0IjogImQwLWluY3ItMS5xY293MiIgfSB9LA0KPiAtICAgICAgICAgICAgIHsgInR5cGUi OiAiZHJpdmUtYmFja3VwIiwNCj4gLSAgICAgICAgICAgICAgICJkYXRhIjogeyAiZGV2aWNlIjog ImRyaXZlMSIsICJiaXRtYXAiOiAiYml0bWFwMSIsDQo+IC0gICAgICAgICAgICAgICAgICAgICAg ICAgImZvcm1hdCI6ICJxY293MiIsICJtb2RlIjogImV4aXN0aW5nIiwNCj4gLSAgICAgICAgICAg ICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsICJ0YXJnZXQiOiAiZDEtaW5jci0x LnFjb3cyIiB9IH0sDQo+IC0gICAgICAgICAgIF0NCj4gKyAgICAgICAgICAgew0KPiArICAgICAg ICAgICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7 DQo+ICsgICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsgICAgICAgICAgICAg ICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAgICAgICAgICAgICAgImZvcm1hdCI6ICJxY293 MiIsDQo+ICsgICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyIsDQo+ICsgICAgICAgICAg ICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAgICAidGFyZ2V0Ijog ImRyaXZlMC5pbmMwLnFjb3cyIg0KPiArICAgICAgICAgICAgIH0NCj4gKyAgICAgICAgICAgfSwN Cj4gKyAgICAgICAgICAgew0KPiArICAgICAgICAgICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIs DQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgICAiZGV2aWNlIjog ImRyaXZlMSIsDQo+ICsgICAgICAgICAgICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAg ICAgICAgICAgICAgImZvcm1hdCI6ICJxY293MiIsDQo+ICsgICAgICAgICAgICAgICAibW9kZSI6 ICJleGlzdGluZyIsDQo+ICsgICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ ICsgICAgICAgICAgICAgICAidGFyZ2V0IjogImRyaXZlMS5pbmMwLnFjb3cyIg0KPiArICAgICAg ICAgICAgIH0NCj4gKyAgICAgICAgICAgfV0NCj4gICAgICAgICAgICB9DQo+ICAgICAgICAgIH0N Cj4gICANCj4gLS0gIFFNUCBleGFtcGxlIHJlc3BvbnNlLCBoaWdobGlnaHRpbmcgb25lIHN1Y2Nl c3MgYW5kIG9uZSBmYWlsdXJlOg0KPiArICAgIDwtIHsgInJldHVybiI6IHt9IH0NCj4gICANCj4g LSAgIC0gIEFja25vd2xlZGdlbWVudCB0aGF0IHRoZSBUcmFuc2FjdGlvbiB3YXMgYWNjZXB0ZWQg YW5kIGpvYnMgd2VyZQ0KPiAtICAgICAgbGF1bmNoZWQ6DQo+ICsjLiBSZWNlaXZlIG5vdGljZSB0 aGF0IHRoZSBmaXJzdCBqb2IgaGFzIGNvbXBsZXRlZDoNCj4gICANCj4gLSAgICAgIC4uIGNvZGU6 OiBqc29uDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAg ICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAg ICAgICJkZXZpY2UiOiAiZHJpdmUwIiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIiwN Cj4gKyAgICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAgICAgICAgICAgImxlbiI6IDY3MTA4ODY0 LA0KPiArICAgICAgICAgICAib2Zmc2V0IjogNjcxMDg4NjQNCj4gKyAgICAgICAgIH0sDQo+ICsg ICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gKyAgICAgICB9DQo+ICAg DQo+IC0gICAgICAgICAgeyAicmV0dXJuIjoge30gfQ0KPiArIy4gUmVjZWl2ZSBub3RpY2UgdGhh dCB0aGUgc2Vjb25kIGpvYiBoYXMgZmFpbGVkOg0KPiAgIA0KPiAtICAgLSAgTGF0ZXIsIFFFTVUg c2VuZHMgbm90aWNlIHRoYXQgdGhlIGZpcnN0IGpvYiB3YXMgY29tcGxldGVkOg0KPiArICAgLi4g Y29kZTo6IGpzb24NCj4gICANCj4gLSAgICAgIC4uIGNvZGU6OiBqc29uDQo+ICsgICAgPC0gew0K PiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRhdGEiOiB7DQo+ ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAgICAgICAgImFjdGlvbiI6 ICJyZXBvcnQiLA0KPiArICAgICAgICAgICAib3BlcmF0aW9uIjogInJlYWQiDQo+ICsgICAgICAg ICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9FUlJPUiINCj4gKyAgICAgICB9 DQo+ICAgDQo+IC0gICAgICAgICAgeyAidGltZXN0YW1wIjogeyAic2Vjb25kcyI6IDE0NDcxOTIz NDMsICJtaWNyb3NlY29uZHMiOiA2MTU2OTggfSwNCj4gLSAgICAgICAgICAgICJkYXRhIjogeyAi ZGV2aWNlIjogImRyaXZlMCIsICJ0eXBlIjogImJhY2t1cCIsDQo+IC0gICAgICAgICAgICAgICAg ICAgICAgICJzcGVlZCI6IDAsICJsZW4iOiA2NzEwODg2NCwgIm9mZnNldCI6IDY3MTA4ODY0IH0s DQo+IC0gICAgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NPTVBMRVRFRCINCj4gLSAgICAg ICAgICB9DQo+ICsgICAgLi4uDQo+ICAgDQo+IC0gICAtICBMYXRlciB5ZXQsIFFFTVUgc2VuZHMg bm90aWNlIHRoYXQgdGhlIHNlY29uZCBqb2IgaGFzIGZhaWxlZDoNCj4gKyAgICA8LSB7DQo+ICsg ICAgICAgICAidGltZXN0YW1wIjogey4uLn0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAg ICAgICAgICAgInNwZWVkIjogMCwNCj4gKyAgICAgICAgICAgIm9mZnNldCI6IDAsDQo+ICsgICAg ICAgICAgICJsZW4iOiA2NzEwODg2NCwNCj4gKyAgICAgICAgICAgImVycm9yIjogIklucHV0L291 dHB1dCBlcnJvciIsDQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAg ICAgICAgInR5cGUiOiAiYmFja3VwIg0KPiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVu dCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIg0KPiArICAgICAgIH0NCj4gICANCj4gLSAgICAgIC4u IGNvZGU6OiBqc29uDQo+ICtBdCB0aGUgY29uY2x1c2lvbiBvZiB0aGUgYWJvdmUgZXhhbXBsZSwg YGBkcml2ZTAuaW5jMC5xY293MmBgIGlzIHZhbGlkIGFuZCBtdXN0DQo+ICtiZSBrZXB0LCBidXQg YGBkcml2ZTEuaW5jMC5xY293MmBgIGlzIGluY29tcGxldGUgYW5kIHNob3VsZCBiZSBkZWxldGVk LiBJZiBhDQo+ICtWTS13aWRlIGluY3JlbWVudGFsIGJhY2t1cCBvZiBhbGwgZHJpdmVzIGF0IGEg cG9pbnQtaW4tdGltZSBpcyB0byBiZSBtYWRlLCBuZXcNCj4gK2JhY2t1cHMgZm9yIGJvdGggZHJp dmVzIHdpbGwgbmVlZCB0byBiZSBtYWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoYXQgYSBuZXcN Cj4gK2luY3JlbWVudGFsIGJhY2t1cCBmb3IgZHJpdmUwIG5lZWRzIHRvIGJlIGJhc2VkIG9uIHRv cCBvZiBgYGRyaXZlMC5pbmMwLnFjb3cyYGAuDQo+ICAgDQo+IC0gICAgICAgICAgeyAidGltZXN0 YW1wIjogeyAic2Vjb25kcyI6IDE0NDcxOTIzOTksICJtaWNyb3NlY29uZHMiOiA2ODMwMTUgfSwN Cj4gLSAgICAgICAgICAgICJkYXRhIjogeyAiZGV2aWNlIjogImRyaXZlMSIsICJhY3Rpb24iOiAi cmVwb3J0IiwNCj4gLSAgICAgICAgICAgICAgICAgICAgICAib3BlcmF0aW9uIjogInJlYWQiIH0s DQo+IC0gICAgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0VSUk9SIiB9DQo+ICtJbiBvdGhl ciB3b3JkcywgYXQgdGhlIGNvbmNsdXNpb24gb2YgdGhlIGFib3ZlIGV4YW1wbGUsIHdlJ2QgaGF2 ZSBtYWRlIG9ubHkgYW4NCj4gK2luY3JlbWVudGFsIGJhY2t1cCBmb3IgZHJpdmUwIGJ1dCBub3Qg ZHJpdmUxLiBUaGUgbGFzdCBWTS13aWRlIGNyYXNoDQo+ICtjb25zaXN0ZW50IGJhY2t1cCB3ZSBo YXZlIGFjY2VzcyB0byBpbiB0aGlzIGNhc2UgaXMgdGhlIGFuY2hvciBwb2ludC4NCj4gICANCj4g LSAgICAgIC4uIGNvZGU6OiBqc29uDQo+ICsuLiBjb2RlOjogdGV4dA0KPiAgIA0KPiAtICAgICAg ICAgIHsgInRpbWVzdGFtcCI6IHsgInNlY29uZHMiOiAxNDQ3MTkyMzk5LCAibWljcm9zZWNvbmRz IjoNCj4gLSAgICAgICAgICA2ODU4NTMgfSwgImRhdGEiOiB7ICJzcGVlZCI6IDAsICJvZmZzZXQi OiAwLCAibGVuIjogNjcxMDg4NjQsDQo+IC0gICAgICAgICAgImVycm9yIjogIklucHV0L291dHB1 dCBlcnJvciIsICJkZXZpY2UiOiAiZHJpdmUxIiwgInR5cGUiOg0KPiAtICAgICAgICAgICJiYWNr dXAiIH0sICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVEIiB9DQo+ICsgICAgICAgICAgW2Ry aXZlMC5mdWxsLnFjb3cyXSA8LS0gW2RyaXZlMC5pbmMwLnFjb3cyXQ0KPiArICAgICAgICAgIFtk cml2ZTEuZnVsbC5xY293Ml0NCj4gICANCj4gLS0gIEluIHRoZSBhYm92ZSBleGFtcGxlLCBgYGQw LWluY3ItMS5xY293MmBgIGlzIHZhbGlkIGFuZCBtdXN0IGJlIGtlcHQsDQo+IC0gICBidXQgYGBk MS1pbmNyLTEucWNvdzJgYCBpcyBpbnZhbGlkIGFuZCBzaG91bGQgYmUgZGVsZXRlZC4gSWYgYSBW TS13aWRlDQo+IC0gICBpbmNyZW1lbnRhbCBiYWNrdXAgb2YgYWxsIGRyaXZlcyBhdCBhIHBvaW50 LWluLXRpbWUgaXMgdG8gYmUgbWFkZSwNCj4gLSAgIG5ldyBiYWNrdXBzIGZvciBib3RoIGRyaXZl cyB3aWxsIG5lZWQgdG8gYmUgbWFkZSwgdGFraW5nIGludG8gYWNjb3VudA0KPiAtICAgdGhhdCBh IG5ldyBpbmNyZW1lbnRhbCBiYWNrdXAgZm9yIGRyaXZlMCBuZWVkcyB0byBiZSBiYXNlZCBvbiB0 b3Agb2YNCj4gLSAgIGBgZDAtaW5jci0xLnFjb3cyYGAuDQo+ICtUbyByZXBhaXIgdGhpcywgaXNz dWUgYSBuZXcgaW5jcmVtZW50YWwgYmFja3VwIGFjcm9zcyBib3RoIGRyaXZlcy4gVGhlIHJlc3Vs dA0KPiArd2lsbCBiZSBiYWNrdXAgY2hhaW5zIHRoYXQgcmVzZW1ibGUgdGhlIGZvbGxvd2luZzoN Cj4gICANCj4gLUdyb3VwZWQgQ29tcGxldGlvbiBNb2RlDQo+IC1+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fg0KPiArLi4gY29kZTo6IHRleHQNCj4gICANCj4gLS0gIFdoaWxlIGpvYnMgbGF1bmNoZWQg YnkgdHJhbnNhY3Rpb25zIG5vcm1hbGx5IGNvbXBsZXRlIG9yIGZhaWwgb24NCj4gLSAgIHRoZWly IG93biwgaXQgaXMgcG9zc2libGUgdG8gaW5zdHJ1Y3QgdGhlbSB0byBjb21wbGV0ZSBvciBmYWls DQo+IC0gICB0b2dldGhlciBhcyBhIGdyb3VwLg0KPiArICAgICAgICAgIFtkcml2ZTAuZnVsbC5x Y293Ml0gPC0tIFtkcml2ZTAuaW5jMC5xY293Ml0gPC0tIFtkcml2ZTAuaW5jMS5xY293Ml0NCj4g KyAgICAgICAgICBbZHJpdmUxLmZ1bGwucWNvdzJdIDwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSBbZHJpdmUxLmluYzEucWNvdzJdDQo+ICAgDQo+IC0tICBRTVAgdHJhbnNhY3Rpb25zIHRha2Ug YW4gb3B0aW9uYWwgcHJvcGVydGllcyBzdHJ1Y3R1cmUgdGhhdCBjYW4NCj4gLSAgIGFmZmVjdCB0 aGUgc2VtYW50aWNzIG9mIHRoZSB0cmFuc2FjdGlvbi4NCj4gK0V4YW1wbGU6IEdyb3VwZWQgQ29t cGxldGlvbiBNb2RlDQo+ICt+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fg0KPiAgIA0K PiAtLSAgVGhlICJjb21wbGV0aW9uLW1vZGUiIHRyYW5zYWN0aW9uIHByb3BlcnR5IGNhbiBiZSBl aXRoZXIgImluZGl2aWR1YWwiDQo+IC0gICB3aGljaCBpcyB0aGUgZGVmYXVsdCwgbGVnYWN5IGJl aGF2aW9yIGRlc2NyaWJlZCBhYm92ZSwgb3IgImdyb3VwZWQsIg0KPiAtICAgYSBuZXcgYmVoYXZp b3IgZGV0YWlsZWQgYmVsb3cuDQo+ICtXaGlsZSBqb2JzIGxhdW5jaGVkIGJ5IHRyYW5zYWN0aW9u cyBub3JtYWxseSBjb21wbGV0ZSBvciBmYWlsIGluZGl2aWR1YWxseSwNCj4gK2l0J3MgcG9zc2li bGUgdG8gaW5zdHJ1Y3QgdGhlbSB0byBjb21wbGV0ZSBvciBmYWlsIHRvZ2V0aGVyIGFzIGEgZ3Jv dXAuIFFNUA0KPiArdHJhbnNhY3Rpb25zIHRha2UgYW4gb3B0aW9uYWwgcHJvcGVydGllcyBzdHJ1 Y3R1cmUgdGhhdCBjYW4gYWZmZWN0IHRoZQ0KPiArYmVoYXZpb3Igb2YgdGhlIHRyYW5zYWN0aW9u Lg0KPiAgIA0KPiAtLSAgRGVsYXllZCBDb21wbGV0aW9uOiBJbiBncm91cGVkIGNvbXBsZXRpb24g bW9kZSwgbm8gam9icyB3aWxsIHJlcG9ydA0KPiAtICAgc3VjY2VzcyB1bnRpbCBhbGwgam9icyBh cmUgcmVhZHkgdG8gcmVwb3J0IHN1Y2Nlc3MuDQo+ICtUaGUgYGBjb21wbGV0aW9uLW1vZGVgYCB0 cmFuc2FjdGlvbiBwcm9wZXJ0eSBjYW4gYmUgZWl0aGVyIGBgaW5kaXZpZHVhbGBgIHdoaWNoDQo+ ICtpcyB0aGUgZGVmYXVsdCBsZWdhY3kgYmVoYXZpb3IgZGVzY3JpYmVkIGFib3ZlLCBvciBgYGdy b3VwZWRgYCwgZGV0YWlsZWQgYmVsb3cuDQo+ICAgDQo+IC0tICBHcm91cGVkIGZhaWx1cmU6IElm IGFueSBqb2IgZmFpbHMgaW4gZ3JvdXBlZCBjb21wbGV0aW9uIG1vZGUsIGFsbA0KPiAtICAgcmVt YWluaW5nIGpvYnMgd2lsbCBiZSBjYW5jZWxsZWQuIEFueSBpbmNyZW1lbnRhbCBiYWNrdXBzIHdp bGwNCj4gLSAgIHJlc3RvcmUgdGhlaXIgZGlydHkgYml0bWFwIG9iamVjdHMgYXMgaWYgbm8gYmFj a3VwIGNvbW1hbmQgd2FzIGV2ZXINCj4gLSAgIGlzc3VlZC4NCj4gK0luIGBgZ3JvdXBlZGBgIGNv bXBsZXRpb24gbW9kZSwgbm8gam9icyB3aWxsIHJlcG9ydCBzdWNjZXNzIHVudGlsIGFsbCBqb2Jz IGFyZQ0KPiArcmVhZHkgdG8gcmVwb3J0IHN1Y2Nlc3MuIElmIGFueSBqb2IgZmFpbHMsIGFsbCBv dGhlciBqb2JzIHdpbGwgYmUgY2FuY2VsZWQuDQo+ICAgDQo+IC0gICAtICBSZWdhcmRsZXNzIG9m IGlmIFFFTVUgcmVwb3J0cyBhIHBhcnRpY3VsYXIgaW5jcmVtZW50YWwgYmFja3VwIGpvYg0KPiAt ICAgICAgYXMgQ0FOQ0VMTEVEIG9yIGFzIGFuIEVSUk9SLCB0aGUgaW4tbWVtb3J5IGJpdG1hcCB3 aWxsIGJlDQo+IC0gICAgICByZXN0b3JlZC4NCj4gK1JlZ2FyZGxlc3Mgb2YgaWYgYSBwYXJ0aWNp cGF0aW5nIGluY3JlbWVudGFsIGJhY2t1cCBqb2IgZmFpbGVkIG9yIHdhcyBjYW5jZWxlZCwNCj4g K3RoZWlyIGFzc29jaWF0ZWQgYml0bWFwcyB3aWxsIGFsbCBiZSByb2xsZWQgYmFjayBhcyBpbiBp bmRpdmlkdWFsIGZhaWx1cmUNCj4gK2Nhc2VzLg0KPiAgIA0KPiAtRXhhbXBsZQ0KPiAtXl5eXl5e Xg0KPiArSGVyZSdzIHRoZSBzYW1lIG11bHRpLWRyaXZlIGJhY2t1cCBzY2VuYXJpbyBmcm9tIGBF eGFtcGxlOiBQYXJ0aWFsDQo+ICtUcmFuc2FjdGlvbmFsIEZhaWx1cmVzYF8sIGJ1dCB3aXRoIHRo ZSBgYGdyb3VwZWRgYCBjb21wbGV0aW9uLW1vZGUgcHJvcGVydHkNCj4gK2FwcGxpZWQ6DQo+ICAg DQo+IC0tICBIZXJlJ3MgdGhlIHNhbWUgZXhhbXBsZSBzY2VuYXJpbyBmcm9tIGFib3ZlIHdpdGgg dGhlIG5ldyBwcm9wZXJ0eToNCj4gKyMuIElzc3VlIHRoZSBtdWx0aS1kcml2ZSBpbmNyZW1lbnRh bCBiYWNrdXAgdHJhbnNhY3Rpb246DQo+ICAgDQo+ICAgICAgLi4gY29kZTo6IGpzb24NCj4gICAN Cj4gLSAgICAgICB7ICJleGVjdXRlIjogInRyYW5zYWN0aW9uIiwNCj4gKyAgICAtPiB7DQo+ICsg ICAgICAgICAiZXhlY3V0ZSI6ICJ0cmFuc2FjdGlvbiIsDQo+ICAgICAgICAgICAgImFyZ3VtZW50 cyI6IHsNCj4gLSAgICAgICAgICAgImFjdGlvbnMiOiBbDQo+IC0gICAgICAgICAgICAgeyAidHlw ZSI6ICJkcml2ZS1iYWNrdXAiLA0KPiAtICAgICAgICAgICAgICAgImRhdGEiOiB7ICJkZXZpY2Ui OiAiZHJpdmUwIiwgImJpdG1hcCI6ICJiaXRtYXAwIiwNCj4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAiZm9ybWF0IjogInFjb3cyIiwgIm1vZGUiOiAiZXhpc3RpbmciLA0KPiAtICAgICAgICAg ICAgICAgICAgICAgICAgICJzeW5jIjogImluY3JlbWVudGFsIiwgInRhcmdldCI6ICJkMC1pbmNy LTEucWNvdzIiIH0gfSwNCj4gLSAgICAgICAgICAgICB7ICJ0eXBlIjogImRyaXZlLWJhY2t1cCIs DQo+IC0gICAgICAgICAgICAgICAiZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTEiLCAiYml0bWFw IjogImJpdG1hcDEiLA0KPiAtICAgICAgICAgICAgICAgICAgICAgICAgICJmb3JtYXQiOiAicWNv dzIiLCAibW9kZSI6ICJleGlzdGluZyIsDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgInN5 bmMiOiAiaW5jcmVtZW50YWwiLCAidGFyZ2V0IjogImQxLWluY3ItMS5xY293MiIgfSB9LA0KPiAt ICAgICAgICAgICBdLA0KPiAgICAgICAgICAgICAgInByb3BlcnRpZXMiOiB7DQo+ICAgICAgICAg ICAgICAgICJjb21wbGV0aW9uLW1vZGUiOiAiZ3JvdXBlZCINCj4gLSAgICAgICAgICAgfQ0KPiAr ICAgICAgICAgICB9LA0KPiArICAgICAgICAgICAiYWN0aW9ucyI6IFsNCj4gKyAgICAgICAgICAg ew0KPiArICAgICAgICAgICAgICJ0eXBlIjogImRyaXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAg ICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAgICAiZGV2aWNlIjogImRyaXZlMCIsDQo+ICsg ICAgICAgICAgICAgICAiYml0bWFwIjogImJpdG1hcDAiLA0KPiArICAgICAgICAgICAgICAgImZv cm1hdCI6ICJxY293MiIsDQo+ICsgICAgICAgICAgICAgICAibW9kZSI6ICJleGlzdGluZyIsDQo+ ICsgICAgICAgICAgICAgICAic3luYyI6ICJpbmNyZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAg ICAidGFyZ2V0IjogImRyaXZlMC5pbmMwLnFjb3cyIg0KPiArICAgICAgICAgICAgIH0NCj4gKyAg ICAgICAgICAgfSwNCj4gKyAgICAgICAgICAgew0KPiArICAgICAgICAgICAgICJ0eXBlIjogImRy aXZlLWJhY2t1cCIsDQo+ICsgICAgICAgICAgICAgImRhdGEiOiB7DQo+ICsgICAgICAgICAgICAg ICAiZGV2aWNlIjogImRyaXZlMSIsDQo+ICsgICAgICAgICAgICAgICAiYml0bWFwIjogImJpdG1h cDAiLA0KPiArICAgICAgICAgICAgICAgImZvcm1hdCI6ICJxY293MiIsDQo+ICsgICAgICAgICAg ICAgICAibW9kZSI6ICJleGlzdGluZyIsDQo+ICsgICAgICAgICAgICAgICAic3luYyI6ICJpbmNy ZW1lbnRhbCIsDQo+ICsgICAgICAgICAgICAgICAidGFyZ2V0IjogImRyaXZlMS5pbmMwLnFjb3cy Ig0KPiArICAgICAgICAgICAgIH0NCj4gKyAgICAgICAgICAgfV0NCj4gICAgICAgICAgICB9DQo+ ICAgICAgICAgIH0NCj4gICANCj4gLS0gIFFNUCBleGFtcGxlIHJlc3BvbnNlLCBoaWdobGlnaHRp bmcgYSBmYWlsdXJlIGZvciBgYGRyaXZlMmBgOg0KPiAtDQo+IC0gICAtICBBY2tub3dsZWRnZW1l bnQgdGhhdCB0aGUgVHJhbnNhY3Rpb24gd2FzIGFjY2VwdGVkIGFuZCBqb2JzIHdlcmUNCj4gLSAg ICAgIGxhdW5jaGVkOg0KPiAtDQo+IC0gICAgICAuLiBjb2RlOjoganNvbg0KPiAtDQo+IC0gICAg ICAgICAgeyAicmV0dXJuIjoge30gfQ0KPiAtDQo+IC0gICAtICBMYXRlciwgUUVNVSBzZW5kcyBu b3RpY2UgdGhhdCB0aGUgc2Vjb25kIGpvYiBoYXMgZXJyb3JlZCBvdXQsIGJ1dA0KPiAtICAgICAg dGhhdCB0aGUgZmlyc3Qgam9iIHdhcyBhbHNvIGNhbmNlbGxlZDoNCj4gLQ0KPiAtICAgICAgLi4g Y29kZTo6IGpzb24NCj4gLQ0KPiAtICAgICAgICAgIHsgInRpbWVzdGFtcCI6IHsgInNlY29uZHMi OiAxNDQ3MTkzNzAyLCAibWljcm9zZWNvbmRzIjogNjMyMzc3IH0sDQo+IC0gICAgICAgICAgICAi ZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTEiLCAiYWN0aW9uIjogInJlcG9ydCIsDQo+IC0gICAg ICAgICAgICAgICAgICAgICAgIm9wZXJhdGlvbiI6ICJyZWFkIiB9LA0KPiAtICAgICAgICAgICAg ImV2ZW50IjogIkJMT0NLX0pPQl9FUlJPUiIgfQ0KPiAtDQo+IC0gICAgICAuLiBjb2RlOjoganNv bg0KPiAtDQo+IC0gICAgICAgICAgeyAidGltZXN0YW1wIjogeyAic2Vjb25kcyI6IDE0NDcxOTM3 MDIsICJtaWNyb3NlY29uZHMiOiA2NDAwNzQgfSwNCj4gLSAgICAgICAgICAgICJkYXRhIjogeyAi c3BlZWQiOiAwLCAib2Zmc2V0IjogMCwgImxlbiI6IDY3MTA4ODY0LA0KPiAtICAgICAgICAgICAg ICAgICAgICAgICJlcnJvciI6ICJJbnB1dC9vdXRwdXQgZXJyb3IiLA0KPiAtICAgICAgICAgICAg ICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwgInR5cGUiOiAiYmFja3VwIiB9LA0KPiAtICAg ICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9DT01QTEVURUQiIH0NCj4gLQ0KPiAtICAgICAg Li4gY29kZTo6IGpzb24NCj4gLQ0KPiAtICAgICAgICAgIHsgInRpbWVzdGFtcCI6IHsgInNlY29u ZHMiOiAxNDQ3MTkzNzAyLCAibWljcm9zZWNvbmRzIjogNjQwMTYzIH0sDQo+IC0gICAgICAgICAg ICAiZGF0YSI6IHsgImRldmljZSI6ICJkcml2ZTAiLCAidHlwZSI6ICJiYWNrdXAiLCAic3BlZWQi OiAwLA0KPiAtICAgICAgICAgICAgICAgICAgICAgICJsZW4iOiA2NzEwODg2NCwgIm9mZnNldCI6 IDE2Nzc3MjE2IH0sDQo+IC0gICAgICAgICAgICAiZXZlbnQiOiAiQkxPQ0tfSk9CX0NBTkNFTExF RCIgfQ0KPiArIy4gUmVjZWl2ZSBhY2tub3dsZWRnZW1lbnQgdGhhdCB0aGUgVHJhbnNhY3Rpb24g d2FzIGFjY2VwdGVkLCBhbmQgam9icyB3ZXJlDQo+ICsgICBsYXVuY2hlZDoNCj4gKw0KPiArICAg IDwtIHsgInJldHVybiI6IHt9IH0NCg0KaW4gcHJldmlvdXMgZXhhbXBsZSwgeW91IGluc3RlYWQg YWRkIGEgbm90ZToNCiAgIE5vdGUgdGhhdCB0aGUNCiAgIHRyYW5zYWN0aW9uIGlzIGFjY2VwdGVk LCBpbmRpY2F0aW5nIHRoYXQgdGhlIGpvYnMgYXJlIHN0YXJ0ZWQgc3VjY2VzZnVsbHkuDQoNCj4g Kw0KPiArIy4gUmVjZWl2ZSBub3RpZmljYXRpb24gdGhhdCB0aGUgYmFja3VwIGpvYiBmb3IgYGBk cml2ZTFgYCBoYXMgZmFpbGVkOg0KPiArDQo+ICsgICAuLiBjb2RlOjoganNvbg0KPiArDQo+ICsg ICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59LA0KPiArICAgICAgICAgImRh dGEiOiB7DQo+ICsgICAgICAgICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAgICAgICAg ImFjdGlvbiI6ICJyZXBvcnQiLA0KPiArICAgICAgICAgICAib3BlcmF0aW9uIjogInJlYWQiDQo+ ICsgICAgICAgICB9LA0KPiArICAgICAgICAgImV2ZW50IjogIkJMT0NLX0pPQl9FUlJPUiINCj4g KyAgICAgICB9DQo+ICsNCj4gKyAgICA8LSB7DQo+ICsgICAgICAgICAidGltZXN0YW1wIjogey4u Ln0sDQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAgICAgInNwZWVkIjogMCwNCj4g KyAgICAgICAgICAgIm9mZnNldCI6IDAsDQo+ICsgICAgICAgICAgICJsZW4iOiA2NzEwODg2NCwN Cj4gKyAgICAgICAgICAgImVycm9yIjogIklucHV0L291dHB1dCBlcnJvciIsDQo+ICsgICAgICAg ICAgICJkZXZpY2UiOiAiZHJpdmUxIiwNCj4gKyAgICAgICAgICAgInR5cGUiOiAiYmFja3VwIg0K PiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVudCI6ICJCTE9DS19KT0JfQ09NUExFVEVE Ig0KPiArICAgICAgIH0NCj4gKw0KPiArIy4gUmVjZWl2ZSBub3RpZmljYXRpb24gdGhhdCB0aGUg am9iIGZvciBgYGRyaXZlMGBgIGhhcyBiZWVuIGNhbmNlbGVkOg0KPiArDQo+ICsgICAuLiBjb2Rl OjoganNvbg0KPiArDQo+ICsgICAgPC0gew0KPiArICAgICAgICAgInRpbWVzdGFtcCI6IHsuLi59 DQo+ICsgICAgICAgICAiZGF0YSI6IHsNCj4gKyAgICAgICAgICAgImRldmljZSI6ICJkcml2ZTAi LA0KPiArICAgICAgICAgICAidHlwZSI6ICJiYWNrdXAiLA0KPiArICAgICAgICAgICAic3BlZWQi OiAwLA0KPiArICAgICAgICAgICAibGVuIjogNjcxMDg4NjQsDQo+ICsgICAgICAgICAgICJvZmZz ZXQiOiAxNjc3NzIxNg0KPiArICAgICAgICAgfSwNCj4gKyAgICAgICAgICJldmVudCI6ICJCTE9D S19KT0JfQ0FOQ0VMTEVEIg0KPiArICAgICAgIH0NCj4gICANCg0KR29vZCB0byBhZGQgaGVyZSBz b21lIGNvbmNsdXNpb24gZm9yIGV4YW1wbGUsIGxpa2UgcmVtb3ZpbmcgZmFpbGVkIHRhcmdldCBp bWFnZXMNCmFuZCBub3RlIHRoZSB0aGUgdHJhbnNhY3Rpb24gb3BlcmF0aW9uIG1heSBiZSBzYWZl bHkgcmV0cmllZC4NCg0KDQo+ICAgLi4gcmF3OjogaHRtbA0KPiAgIA0KPiAgICAgIDwhLS0NCj4g ICAgICBUaGUgRnJlZUJTRCBEb2N1bWVudGF0aW9uIExpY2Vuc2UNCj4gICANCj4gLSAgIFJlZGlz dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIChNYXJrZG93bikgYW5kICdjb21waWxlZCcgZm9y bXMgKFNHTUwsIEhUTUwsDQo+IC0gICBQREYsIFBvc3RTY3JpcHQsIFJURiBhbmQgc28gZm9ydGgp IHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQNCj4gLSAgIHByb3Zp ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6DQo+ICsgICBSZWRpc3Ry aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSAoUmVTVCkgYW5kICdjb21waWxlZCcgZm9ybXMgKFNH TUwsIEhUTUwsDQo+ICsgICBQREYsIFBvc3RTY3JpcHQsIFJURiBhbmQgc28gZm9ydGgpIHdpdGgg b3Igd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZQ0KPiArICAgcGVybWl0dGVkIHByb3ZpZGVkIHRo YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6DQo+ICAgDQo+IC0gICBSZWRpc3Ry aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgKE1hcmtkb3duKSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg Y29weXJpZ2h0DQo+IC0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg Zm9sbG93aW5nIGRpc2NsYWltZXIgb2YgdGhpcyBmaWxlDQo+IC0gICB1bm1vZGlmaWVkLg0KPiAr ICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIChSZVNUKSBtdXN0IHJldGFpbiB0aGUg YWJvdmUgY29weXJpZ2h0IG5vdGljZSwNCj4gKyAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgb2YgdGhpcyBmaWxlIHVubW9kaWZpZWQuDQo+ICAg DQo+IC0gICBSZWRpc3RyaWJ1dGlvbnMgaW4gY29tcGlsZWQgZm9ybSAodHJhbnNmb3JtZWQgdG8g b3RoZXIgRFREcywgY29udmVydGVkIHRvIFBERiwNCj4gLSAgIFBvc3RTY3JpcHQsIFJURiBhbmQg b3RoZXIgZm9ybWF0cykgbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2Us DQo+IC0gICB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vcg0KPiAtICAgb3RoZXIgbWF0ZXJpYWxzIHBy b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4NCj4gKyAgIFJlZGlzdHJpYnV0aW9ucyBpbiBj b21waWxlZCBmb3JtICh0cmFuc2Zvcm1lZCB0byBvdGhlciBEVERzLCBjb252ZXJ0ZWQgdG8NCj4g KyAgIFBERiwgUG9zdFNjcmlwdCwgUlRGIGFuZCBvdGhlciBmb3JtYXRzKSBtdXN0IHJlcHJvZHVj ZSB0aGUgYWJvdmUgY29weXJpZ2h0DQo+ICsgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlDQo+ICsgICBkb2N1bWVudGF0 aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u Lg0KPiAgIA0KPiAtICAgVEhJUyBET0NVTUVOVEFUSU9OIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyINCj4gLSAgIEFORCBBTlkgRVhQ UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP LCBUSEUNCj4gLSAgIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ VE5FU1MgRk9SIEEgUEFSVElDVUxBUiAgUFVSUE9TRSBBUkUNCj4gLSAgIERJU0NMQUlNRUQuIElO IE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyAgQkUg TElBQkxFDQo+IC0gICBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTA0KPiAtICAgREFNQUdFUyAoSU5DTFVESU5H LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IN Cj4gLSAgIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F U1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSDQo+IC0gICBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLA0KPiAt ICAgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YNCj4gLSAgIFRISVMgRE9DVU1FTlRBVElPTiwgRVZF TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4NCj4gKyAgIFRI SVMgRE9DVU1FTlRBVElPTiBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E IENPTlRSSUJVVE9SUyAiQVMNCj4gKyAgIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFDQo+ICsgICBJTVBM SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRQ0KPiArICAgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI RSBDT1BZUklHSFQgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRQ0KPiArICAgTElBQkxFIEZPUiBB TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUg0K PiArICAgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU TywgUFJPQ1VSRU1FTlQgT0YNCj4gKyAgIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUw0KPiArICAgSU5URVJSVVBU SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI RVIgSU4NCj4gKyAgIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpDQo+ICsgICBBUklTSU5HIElOIEFOWSBXQVkgT1VU IE9GIFRIRSBVU0UgT0YgVEhJUyBET0NVTUVOVEFUSU9OLCBFVkVOIElGIEFEVklTRUQgT0YNCj4g KyAgIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4NCj4gICAgICAtLT4NCj4gZGlmZiAt LWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUNCj4gaW5kZXggMDRhMGQ0NTA1MC4uZmY5Y2UyZWQ0 YyAxMDA2NDQNCj4gLS0tIGEvTWFrZWZpbGUNCj4gKysrIGIvTWFrZWZpbGUNCj4gQEAgLTg5OSw3 ICs4OTksNyBAQCBkb2NzL3ZlcnNpb24udGV4aTogJChTUkNfUEFUSCkvVkVSU0lPTg0KPiAgIHNw aGlueGRvY3M6ICQoTUFOVUFMX0JVSUxERElSKS9kZXZlbC9pbmRleC5odG1sICQoTUFOVUFMX0JV SUxERElSKS9pbnRlcm9wL2luZGV4Lmh0bWwNCj4gICANCj4gICAjIENhbm5lZCBjb21tYW5kIHRv IGJ1aWxkIGEgc2luZ2xlIG1hbnVhbA0KPiAtYnVpbGQtbWFudWFsID0gJChjYWxsIHF1aWV0LWNv bW1hbmQsc3BoaW54LWJ1aWxkICQoaWYgJChWKSwsLXEpIC1iIGh0bWwgLUQgdmVyc2lvbj0kKFZF UlNJT04pIC1EIHJlbGVhc2U9IiQoRlVMTF9WRVJTSU9OKSIgLWQgLmRvY3RyZWVzLyQxICQoU1JD X1BBVEgpL2RvY3MvJDEgJChNQU5VQUxfQlVJTERESVIpLyQxICwiU1BISU5YIiwiJChNQU5VQUxf QlVJTERESVIpLyQxIikNCj4gK2J1aWxkLW1hbnVhbCA9ICQoY2FsbCBxdWlldC1jb21tYW5kLHNw aGlueC1idWlsZCAkKGlmICQoViksLC1xKSAtbiAtYiBodG1sIC1EIHZlcnNpb249JChWRVJTSU9O KSAtRCByZWxlYXNlPSIkKEZVTExfVkVSU0lPTikiIC1kIC5kb2N0cmVlcy8kMSAkKFNSQ19QQVRI KS9kb2NzLyQxICQoTUFOVUFMX0JVSUxERElSKS8kMSAsIlNQSElOWCIsIiQoTUFOVUFMX0JVSUxE RElSKS8kMSIpDQoNCndoYXQgaXMgJy1uJz8NCg0KPiAgICMgV2UgYXNzdW1lIGFsbCBSU1QgZmls ZXMgaW4gdGhlIG1hbnVhbCdzIGRpcmVjdG9yeSBhcmUgdXNlZCBpbiBpdA0KPiAgIG1hbnVhbC1k ZXBzID0gJCh3aWxkY2FyZCAkKFNSQ19QQVRIKS9kb2NzLyQxLyoucnN0KSAkKFNSQ19QQVRIKS9k b2NzLyQxL2NvbmYucHkgJChTUkNfUEFUSCkvZG9jcy9jb25mLnB5DQo+ICAgDQo+IA0KDQoNCi0t IA0KQmVzdCByZWdhcmRzLA0KVmxhZGltaXINCg==