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=-2.4 required=3.0 tests=DKIM_ADSP_ALL,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no 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 09815C3A59D for ; Thu, 22 Aug 2019 10:20:31 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C10B421726 for ; Thu, 22 Aug 2019 10:20:30 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amazon.de header.i=@amazon.de header.b="isn60ZJY" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C10B421726 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=amazon.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i0kCV-0007fU-Hn; Thu, 22 Aug 2019 10:20:15 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i0kCU-0007fJ-Dq for xen-devel@lists.xen.org; Thu, 22 Aug 2019 10:20:14 +0000 X-Inumbo-ID: 6d437f4a-c4c6-11e9-8980-bc764e2007e4 Received: from smtp-fw-9102.amazon.com (unknown [207.171.184.29]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 6d437f4a-c4c6-11e9-8980-bc764e2007e4; Thu, 22 Aug 2019 10:20:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.de; i=@amazon.de; q=dns/txt; s=amazon201209; t=1566469213; x=1598005213; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=0pgg/YBLa/14oczVY19CFC4Igb5v5Xb9vQ7uQuyL8DE=; b=isn60ZJYeZ10sJj5RqZVelZPCk8BdjpIYZuqCcOLNLbJ6Ymhfld4Veq7 jQflZ5Pd6vzxJWFIaVoLrGv4+oRdcseGbaswNO480QxkzTL2ZALDGC+la iudPHK+04eqcvIdUqrZ1TXVg4yqSIcDXSAluEA5leJkLqKCVyL/Mw0Wiz A=; X-IronPort-AV: E=Sophos;i="5.64,416,1559520000"; d="scan'208,217";a="696423619" Received: from sea3-co-svc-lb6-vlan3.sea.amazon.com (HELO email-inbound-relay-2b-55156cd4.us-west-2.amazon.com) ([10.47.22.38]) by smtp-border-fw-out-9102.sea19.amazon.com with ESMTP; 22 Aug 2019 10:20:09 +0000 Received: from EX13MTAUEA001.ant.amazon.com (pdx4-ws-svc-p6-lb7-vlan2.pdx.amazon.com [10.170.41.162]) by email-inbound-relay-2b-55156cd4.us-west-2.amazon.com (Postfix) with ESMTPS id F0F8EA1F1D; Thu, 22 Aug 2019 10:20:08 +0000 (UTC) Received: from EX13D05EUB004.ant.amazon.com (10.43.166.115) by EX13MTAUEA001.ant.amazon.com (10.43.61.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Thu, 22 Aug 2019 10:20:08 +0000 Received: from EX13D05EUB004.ant.amazon.com (10.43.166.115) by EX13D05EUB004.ant.amazon.com (10.43.166.115) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Thu, 22 Aug 2019 10:20:07 +0000 Received: from EX13D05EUB004.ant.amazon.com ([10.43.166.115]) by EX13D05EUB004.ant.amazon.com ([10.43.166.115]) with mapi id 15.00.1367.000; Thu, 22 Aug 2019 10:20:07 +0000 From: "Wieczorkiewicz, Pawel" To: Julien Grall Thread-Topic: [PATCH 09/14] livepatch: Add per-function applied/reverted state tracking marker Thread-Index: AQHVV/lI+OhiRe5NgkKqw74UV0kjMKcGIIkAgACqd4CAACfdgIAAA4YA Date: Thu, 22 Aug 2019 10:20:07 +0000 Message-ID: <485AB113-81CD-4700-8A29-F2939F125EA6@amazon.com> References: <20190821081931.90887-1-wipawel@amazon.de> <20190821081931.90887-10-wipawel@amazon.de> <680c5b24-b3fd-97b6-c048-49a2bdba4a3d@arm.com> <5526b464-24a6-6aca-a9f3-095492abecdd@arm.com> In-Reply-To: <5526b464-24a6-6aca-a9f3-095492abecdd@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.43.166.63] MIME-Version: 1.0 Precedence: Bulk Subject: Re: [Xen-devel] [PATCH 09/14] livepatch: Add per-function applied/reverted state tracking marker X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Tim Deegan , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ross Lagerwall , Ian Jackson , xen-devel , "Pohlack, Martin" , "Wieczorkiewicz, Pawel" , Jan Beulich , xen-devel , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= Content-Type: multipart/mixed; boundary="===============8181706203053162217==" Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" --===============8181706203053162217== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_485AB11381CD47008A29F2939F125EA6amazoncom_" --_000_485AB11381CD47008A29F2939F125EA6amazoncom_ Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 DQpPbiAyMi4gQXVnIDIwMTksIGF0IDEyOjA3LCBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBh cm0uY29tPG1haWx0bzpqdWxpZW4uZ3JhbGxAYXJtLmNvbT4+IHdyb3RlOg0KDQpIaSwNCg0KT24g MjIvMDgvMjAxOSAwODo0NCwgV2llY3pvcmtpZXdpY3osIFBhd2VsIHdyb3RlOg0KDQoNCuKApnNu aXAuLi4NCg0KDQpJcyB0aGlzIGdvaW5nIHRvIGJyZWFrIGxpdmVwYXRjaCBvbiBBcm0/IElmIHNv LCBkbyB5b3UgaGF2ZSBhbnkgcGxhbiB0byBmaXggaXQ/DQoNCk5vLCBJIGRvIG5vdCB0aGluayBp dCBpcy4gQnV0LCBJIGFtIHVuYWJsZSB0byB0ZXN0IG9uIEFybSAoTm8gYWNjZXNzIHRvIEhXIGFu ZCBTVyksDQpzbyBJIHRvb2sgdGhlIGNvbnNlcnZhdGl2ZSBhcHByb2FjaCBoZXJlLg0KQXJtIHBy b3ZpZGVzIGRlY2VudCBmcmVlIG1vZGVsIChzZWUgRm91bmRhdGlvbk1vZGVsKSB0aGF0IHlvdSBj YW4gdXNlIGZvciBiYXNpYyB0ZXN0aW5nLiBBbHRlcm5hdGl2ZWx5LCB5b3UgUUVNVSBhbHNvIHN1 cHBvcnQgdmlydHVhbGl6YXRpb24gZXh0ZW5zaW9uLg0KDQpMZXQgbWUgaGF2ZSBhIGxvb2sgYXQg dGhlIGNvZGUgKEkgd2lsbCBhbnN3ZXIgc2VwYXJhdGVseSkgdG8gc2VlIGlmIEkgY2FuIHNwb3Qg YW55dGhpbmcuDQoNClsuLi5dDQoNCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vbGl2ZXBh dGNoLmggYi94ZW4vaW5jbHVkZS94ZW4vbGl2ZXBhdGNoLmgNCmluZGV4IDJhZWM1MzJlZTIuLmE5 MzEyNmY2MzEgMTAwNjQ0DQotLS0gYS94ZW4vaW5jbHVkZS94ZW4vbGl2ZXBhdGNoLmgNCisrKyBi L3hlbi9pbmNsdWRlL3hlbi9saXZlcGF0Y2guaA0KQEAgLTExNyw3ICsxMTcsNyBAQCBpbnQgYXJj aF9saXZlcGF0Y2hfcXVpZXNjZSh2b2lkKTsNCiB2b2lkIGFyY2hfbGl2ZXBhdGNoX3Jldml2ZSh2 b2lkKTsNCiAgIHZvaWQgYXJjaF9saXZlcGF0Y2hfYXBwbHkoc3RydWN0IGxpdmVwYXRjaF9mdW5j ICpmdW5jKTsNCi12b2lkIGFyY2hfbGl2ZXBhdGNoX3JldmVydChjb25zdCBzdHJ1Y3QgbGl2ZXBh dGNoX2Z1bmMgKmZ1bmMpOw0KK3ZvaWQgYXJjaF9saXZlcGF0Y2hfcmV2ZXJ0KHN0cnVjdCBsaXZl cGF0Y2hfZnVuYyAqZnVuYyk7DQoNCkkgZG91YnQgbGl2ZXBhdGNoIG9uIEFybSB3aWxsIGNvbXBp bGUgYWZ0ZXIgdGhpcyBjaGFuZ2UuDQoNCldoYXQgd291bGQgYmUgeW91IHN1Z2dlc3Rpb24gdGhl bj8NCg0KQ3Jvc3MtY29tcGlsZXIgYXJlIG5vd2FkYXlzIHdpZGVseSBhdmFpbGFibGUuIFNvIGJ1 aWxkIHRlc3RpbmcgeW91ciBjaGFuZ2VzIGluIGNvbW1vbiBjb2RlIHdvdWxkIGJlIHRoZSBtaW5p bXVtLg0KDQoNCkkgd2lzaCBpdCB3YXMgdGhhdCBzaW1wbGUuIE5ldmVydGhlbGVzcywgSSB3aWxs IHRyeSB0byBwcmVwYXJlIGFuIGVudmlyb25tZW50IHRvIHBlcmZvcm0gc3VjaCBidWlsZHMuDQoN CkluIHRoaXMgY2FzZSwgYXMgeW91IGRyb3BwZWQgdGhlIGNvbnN0IGZyb20gdGhlIHByb3RvdHlw ZSwgeW91IHdpbGwgbmVlZCB0byBkbyB0aGUgc2FtZSBpbiB0aGUgZGVjbGFyYXRpb24uDQoNCg0K WWVzLCBidXQgSSBzZWUgMiBvcHRpb25zIGhlcmU6DQotIEVuYWJsZSB0aGUgZmVhdHVyZSBhbHNv IGZvciBBcm0gKEkgcHJlZmVyIHRoYXQsIGJ1dCB3aWxsIG5vdCBiZSBhYmxlIHRvIHRlc3QgdGhh dCBpbiBuZWFyZXN0IGZ1dHVyZSkNCi0gS2VlcCBBcm0gZXhjbHVkZWQgYW5kIHNwcmlua2xlIGNv ZGUgd2l0aCAjaWZkZWYgQ09ORklHX1g4Ng0KDQpTaGFsbCBJIGxpbWl0IHRoZSBjaGFuZ2UgdG8g WDg2IGV2ZXJ5d2hlcmUNCiBPciBtYXliZSBkcm9wIHRoZSBjb21waWxhdGlvbiBmbGFnIGNvbXBs ZXRlbHk/DQoNCkkgYW0gYSBiaXQgY29uZnVzZWQuIFdoaWNoIGNvbXBpbGF0aW9uIGZsYWcgZG8g eW91IHJlZmVyIHRvPw0KDQoNCkNPTkZJR19YODYNCg0KQ2hlZXJzLA0KDQotLQ0KSnVsaWVuIEdy YWxsDQoNCkJlc3QgUmVnYXJkcywNClBhd2VsIFdpZWN6b3JraWV3aWN6DQoNCg0KDQoKCgpBbWF6 b24gRGV2ZWxvcG1lbnQgQ2VudGVyIEdlcm1hbnkgR21iSApLcmF1c2Vuc3RyLiAzOAoxMDExNyBC ZXJsaW4KR2VzY2hhZWZ0c2Z1ZWhydW5nOiBDaHJpc3RpYW4gU2NobGFlZ2VyLCBSYWxmIEhlcmJy aWNoCkVpbmdldHJhZ2VuIGFtIEFtdHNnZXJpY2h0IENoYXJsb3R0ZW5idXJnIHVudGVyIEhSQiAx NDkxNzMgQgpTaXR6OiBCZXJsaW4KVXN0LUlEOiBERSAyODkgMjM3IDg3OQoKCg== --_000_485AB11381CD47008A29F2939F125EA6amazoncom_ Content-Type: text/html; charset="utf-8" Content-ID: MIME-Version: 1.0 Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3b3JkLXdy YXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgbGluZS1icmVhazogYWZ0 ZXItd2hpdGUtc3BhY2U7IiBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCjxkaXY+DQo8YmxvY2tx dW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj4NCjxkaXYgY2xhc3M9IiI+T24gMjIuIEF1ZyAyMDE5 LCBhdCAxMjowNywgSnVsaWVuIEdyYWxsICZsdDs8YSBocmVmPSJtYWlsdG86anVsaWVuLmdyYWxs QGFybS5jb20iIGNsYXNzPSIiPmp1bGllbi5ncmFsbEBhcm0uY29tPC9hPiZndDsgd3JvdGU6PC9k aXY+DQo8YnIgY2xhc3M9IkFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUiPg0KPGRpdiBjbGFzcz0i Ij4NCjxkaXYgY2xhc3M9IiI+SGksPGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KT24gMjIv MDgvMjAxOSAwODo0NCwgV2llY3pvcmtpZXdpY3osIFBhd2VsIHdyb3RlOjxiciBjbGFzcz0iIj4N CjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0 ZSIgY2xhc3M9IiI+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj48YnIgY2xhc3M9 IiI+DQo8L2Jsb2NrcXVvdGU+DQo8L2Jsb2NrcXVvdGU+DQo8L2Jsb2NrcXVvdGU+DQo8L2Rpdj4N CjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPGRpdj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXY+ 4oCmc25pcC4uLjwvZGl2Pg0KPGJyIGNsYXNzPSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIg Y2xhc3M9IiI+DQo8ZGl2IGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0iIj4NCjxibG9ja3F1b3RlIHR5 cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+PGJy IGNsYXNzPSIiPg0KSXMgdGhpcyBnb2luZyB0byBicmVhayBsaXZlcGF0Y2ggb24gQXJtPyBJZiBz bywgZG8geW91IGhhdmUgYW55IHBsYW4gdG8gZml4IGl0PzxiciBjbGFzcz0iIj4NCjxiciBjbGFz cz0iIj4NCjwvYmxvY2txdW90ZT4NCk5vLCBJIGRvIG5vdCB0aGluayBpdCBpcy4gQnV0LCBJIGFt IHVuYWJsZSB0byB0ZXN0IG9uIEFybSAoTm8gYWNjZXNzIHRvIEhXIGFuZCBTVyksPGJyIGNsYXNz PSIiPg0Kc28gSSB0b29rIHRoZSBjb25zZXJ2YXRpdmUgYXBwcm9hY2ggaGVyZS48YnIgY2xhc3M9 IiI+DQo8L2Jsb2NrcXVvdGU+DQpBcm0gcHJvdmlkZXMgZGVjZW50IGZyZWUgbW9kZWwgKHNlZSBG b3VuZGF0aW9uTW9kZWwpIHRoYXQgeW91IGNhbiB1c2UgZm9yIGJhc2ljIHRlc3RpbmcuIEFsdGVy bmF0aXZlbHksIHlvdSBRRU1VIGFsc28gc3VwcG9ydCB2aXJ0dWFsaXphdGlvbiBleHRlbnNpb24u PGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KTGV0IG1lIGhhdmUgYSBsb29rIGF0IHRoZSBj b2RlIChJIHdpbGwgYW5zd2VyIHNlcGFyYXRlbHkpIHRvIHNlZSBpZiBJIGNhbiBzcG90IGFueXRo aW5nLjxiciBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUi IGNsYXNzPSIiPg0KPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2xhc3M9IiI+Wy4uLl08YnIgY2xh c3M9IiI+DQo8YnIgY2xhc3M9IiI+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj5k aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL2xpdmVwYXRjaC5oIGIveGVuL2luY2x1ZGUveGVu L2xpdmVwYXRjaC5oPGJyIGNsYXNzPSIiPg0KaW5kZXggMmFlYzUzMmVlMi4uYTkzMTI2ZjYzMSAx MDA2NDQ8YnIgY2xhc3M9IiI+DQotLS0gYS94ZW4vaW5jbHVkZS94ZW4vbGl2ZXBhdGNoLmg8YnIg Y2xhc3M9IiI+DQomIzQzOyYjNDM7JiM0MzsgYi94ZW4vaW5jbHVkZS94ZW4vbGl2ZXBhdGNoLmg8 YnIgY2xhc3M9IiI+DQpAQCAtMTE3LDcgJiM0MzsxMTcsNyBAQCBpbnQgYXJjaF9saXZlcGF0Y2hf cXVpZXNjZSh2b2lkKTs8YnIgY2xhc3M9IiI+DQombmJzcDt2b2lkIGFyY2hfbGl2ZXBhdGNoX3Jl dml2ZSh2b2lkKTs8YnIgY2xhc3M9IiI+DQombmJzcDsmbmJzcDsmbmJzcDt2b2lkIGFyY2hfbGl2 ZXBhdGNoX2FwcGx5KHN0cnVjdCBsaXZlcGF0Y2hfZnVuYyAqZnVuYyk7PGJyIGNsYXNzPSIiPg0K LXZvaWQgYXJjaF9saXZlcGF0Y2hfcmV2ZXJ0KGNvbnN0IHN0cnVjdCBsaXZlcGF0Y2hfZnVuYyAq ZnVuYyk7PGJyIGNsYXNzPSIiPg0KJiM0Mzt2b2lkIGFyY2hfbGl2ZXBhdGNoX3JldmVydChzdHJ1 Y3QgbGl2ZXBhdGNoX2Z1bmMgKmZ1bmMpOzxiciBjbGFzcz0iIj4NCjwvYmxvY2txdW90ZT4NCjxi ciBjbGFzcz0iIj4NCkkgZG91YnQgbGl2ZXBhdGNoIG9uIEFybSB3aWxsIGNvbXBpbGUgYWZ0ZXIg dGhpcyBjaGFuZ2UuPGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNzPSIiPg0KPC9ibG9ja3F1b3RlPg0K V2hhdCB3b3VsZCBiZSB5b3Ugc3VnZ2VzdGlvbiB0aGVuPzxiciBjbGFzcz0iIj4NCjwvYmxvY2tx dW90ZT4NCjxiciBjbGFzcz0iIj4NCkNyb3NzLWNvbXBpbGVyIGFyZSBub3dhZGF5cyB3aWRlbHkg YXZhaWxhYmxlLiBTbyBidWlsZCB0ZXN0aW5nIHlvdXIgY2hhbmdlcyBpbiBjb21tb24gY29kZSB3 b3VsZCBiZSB0aGUgbWluaW11bS48YnIgY2xhc3M9IiI+DQo8YnIgY2xhc3M9IiI+DQo8L2Rpdj4N CjwvZGl2Pg0KPC9ibG9ja3F1b3RlPg0KPGRpdj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXY+ SSB3aXNoIGl0IHdhcyB0aGF0IHNpbXBsZS4gTmV2ZXJ0aGVsZXNzLCBJIHdpbGwgdHJ5IHRvIHBy ZXBhcmUgYW4gZW52aXJvbm1lbnQgdG8gcGVyZm9ybSBzdWNoIGJ1aWxkcy48L2Rpdj4NCjxiciBj bGFzcz0iIj4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0i Ij4NCjxkaXYgY2xhc3M9IiI+SW4gdGhpcyBjYXNlLCBhcyB5b3UgZHJvcHBlZCB0aGUgY29uc3Qg ZnJvbSB0aGUgcHJvdG90eXBlLCB5b3Ugd2lsbCBuZWVkIHRvIGRvIHRoZSBzYW1lIGluIHRoZSBk ZWNsYXJhdGlvbi48YnIgY2xhc3M9IiI+DQo8YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjwvZGl2Pg0K PC9ibG9ja3F1b3RlPg0KPGRpdj48YnIgY2xhc3M9IiI+DQo8L2Rpdj4NCjxkaXY+WWVzLCBidXQg SSBzZWUgMiBvcHRpb25zIGhlcmU6PC9kaXY+DQo8ZGl2Pi0gRW5hYmxlIHRoZSBmZWF0dXJlIGFs c28gZm9yIEFybSAoSSBwcmVmZXIgdGhhdCwgYnV0IHdpbGwgbm90IGJlIGFibGUgdG8gdGVzdCB0 aGF0IGluIG5lYXJlc3QgZnV0dXJlKTwvZGl2Pg0KPGRpdj4tIEtlZXAgQXJtIGV4Y2x1ZGVkIGFu ZCBzcHJpbmtsZSBjb2RlIHdpdGggI2lmZGVmIENPTkZJR19YODY8L2Rpdj4NCjxiciBjbGFzcz0i Ij4NCjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0iIj4NCjxk aXYgY2xhc3M9IiI+DQo8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjbGFzcz0iIj5TaGFsbCBJIGxp bWl0IHRoZSBjaGFuZ2UgdG8gWDg2IGV2ZXJ5d2hlcmU8YnIgY2xhc3M9IiI+DQombmJzcDtPciBt YXliZSBkcm9wIHRoZSBjb21waWxhdGlvbiBmbGFnIGNvbXBsZXRlbHk/PGJyIGNsYXNzPSIiPg0K PC9ibG9ja3F1b3RlPg0KPGJyIGNsYXNzPSIiPg0KSSBhbSBhIGJpdCBjb25mdXNlZC4gV2hpY2gg Y29tcGlsYXRpb24gZmxhZyBkbyB5b3UgcmVmZXIgdG8/PGJyIGNsYXNzPSIiPg0KPGJyIGNsYXNz PSIiPg0KPC9kaXY+DQo8L2Rpdj4NCjwvYmxvY2txdW90ZT4NCjxkaXY+PGJyIGNsYXNzPSIiPg0K PC9kaXY+DQo8ZGl2PkNPTkZJR19YODY8L2Rpdj4NCjxiciBjbGFzcz0iIj4NCjxibG9ja3F1b3Rl IHR5cGU9ImNpdGUiIGNsYXNzPSIiPg0KPGRpdiBjbGFzcz0iIj4NCjxkaXYgY2xhc3M9IiI+Q2hl ZXJzLDxiciBjbGFzcz0iIj4NCjxiciBjbGFzcz0iIj4NCi0tIDxiciBjbGFzcz0iIj4NCkp1bGll biBHcmFsbDxiciBjbGFzcz0iIj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Jsb2NrcXVvdGU+DQo8L2Rp dj4NCjxiciBjbGFzcz0iIj4NCjxkaXYgY2xhc3M9IiI+DQo8ZGl2IGRpcj0iYXV0byIgc3R5bGU9 IndvcmQtd3JhcDogYnJlYWstd29yZDsgLXdlYmtpdC1uYnNwLW1vZGU6IHNwYWNlOyBsaW5lLWJy ZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsiIGNsYXNzPSIiPg0KPGRpdiBzdHlsZT0iY2FyZXQtY29s b3I6IHJnYigwLCAwLCAwKTsgY29sb3I6IHJnYigwLCAwLCAwKTsgZm9udC1mYW1pbHk6IEhlbHZl dGljYTsgZm9udC1zaXplOiAxMnB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtdmFyaWFudC1j YXBzOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7 IHRleHQtYWxpZ246IHN0YXJ0OyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm9ybTogbm9u ZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4dC1z dHJva2Utd2lkdGg6IDBweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyI+DQpCZXN0IFJlZ2FyZHMs PGJyIGNsYXNzPSIiPg0KUGF3ZWwgV2llY3pvcmtpZXdpY3o8L2Rpdj4NCjxiciBjbGFzcz0iQXBw bGUtaW50ZXJjaGFuZ2UtbmV3bGluZSI+DQo8L2Rpdj4NCjxiciBjbGFzcz0iQXBwbGUtaW50ZXJj aGFuZ2UtbmV3bGluZSI+DQo8L2Rpdj4NCjxiciBjbGFzcz0iIj4NCjxicj48YnI+PGJyPkFtYXpv biBEZXZlbG9wbWVudCBDZW50ZXIgR2VybWFueSBHbWJICjxicj5LcmF1c2Vuc3RyLiAzOAo8YnI+ MTAxMTcgQmVybGluCjxicj5HZXNjaGFlZnRzZnVlaHJ1bmc6IENocmlzdGlhbiBTY2hsYWVnZXIs IFJhbGYgSGVyYnJpY2gKPGJyPkVpbmdldHJhZ2VuIGFtIEFtdHNnZXJpY2h0IENoYXJsb3R0ZW5i dXJnIHVudGVyIEhSQiAxNDkxNzMgQgo8YnI+U2l0ejogQmVybGluCjxicj5Vc3QtSUQ6IERFIDI4 OSAyMzcgODc5Cjxicj48YnI+PGJyPgo8L2JvZHk+DQo8L2h0bWw+DQo= --_000_485AB11381CD47008A29F2939F125EA6amazoncom_-- --===============8181706203053162217== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0 cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA== --===============8181706203053162217==--