From dev-return-5008-archive-asf-public=cust-asf.ponee.io@royale.apache.org Thu Jun 7 21:44:23 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 56266180663 for ; Thu, 7 Jun 2018 21:44:22 +0200 (CEST) Received: (qmail 26971 invoked by uid 500); 7 Jun 2018 19:44:21 -0000 Mailing-List: contact dev-help@royale.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@royale.apache.org Delivered-To: mailing list dev@royale.apache.org Received: (qmail 26959 invoked by uid 99); 7 Jun 2018 19:44:20 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 07 Jun 2018 19:44:20 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 30357180857 for ; Thu, 7 Jun 2018 19:44:20 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.148 X-Spam-Level: X-Spam-Status: No, score=0.148 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, KAM_LOTSOFHASH=0.25, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (1024-bit key) header.d=adobe.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id LafZlyPMWRox for ; Thu, 7 Jun 2018 19:44:16 +0000 (UTC) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0087.outbound.protection.outlook.com [104.47.37.87]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 252105F522 for ; Thu, 7 Jun 2018 19:44:15 +0000 (UTC) Received: from BL0PR02MB4611.namprd02.prod.outlook.com (10.167.181.24) by BL0PR02MB4610.namprd02.prod.outlook.com (10.167.181.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Thu, 7 Jun 2018 19:44:07 +0000 Received: from BL0PR02MB4611.namprd02.prod.outlook.com ([fe80::697c:ff3b:6b22:6f55]) by BL0PR02MB4611.namprd02.prod.outlook.com ([fe80::697c:ff3b:6b22:6f55%5]) with mapi id 15.20.0820.015; Thu, 7 Jun 2018 19:44:07 +0000 From: Alex Harui To: "dev@royale.apache.org" Subject: Re: [royale-asjs] branch develop updated: Fixes #258. But is that a proper fix? Thread-Topic: [royale-asjs] branch develop updated: Fixes #258. But is that a proper fix? Thread-Index: AQHT+yNri4l38DluDUSrHp0MWLayl6ROUgiAgAABFACAAV+1gIAABjSAgACAawD//45sAIAAd6eA//+R5QCAAHahgP//jNYAABdh3wAAANR+AAACP3sAAESbGwAAA3JMgAAQKZsA//+TT4CAAJOugP//j7IAgACMEgCAABLmAP//kUQAgAE6MoCAAEFlAP//0A4AABDrWoAAASB9gAAONpCAAA1xtwAAKMmIAA== Date: Thu, 7 Jun 2018 19:44:07 +0000 Message-ID: References: <1528098175003-0.post@n8.nabble.com> <1528125752029-0.post@n8.nabble.com> <27028CEC-8A47-4795-B891-2DD12E00BEF5@adobe.com> <305DBE66-F080-448C-8969-350756369D5B@gmail.com> <334F9820-3150-4FC7-8AEA-AD118D966636@adobe.com> <5827E569-A952-407E-B6F1-7903A257004A@adobe.com> <6454EF75-ED39-46A7-B682-23561A0A3293@gmail.com> <638D2EEC-5DDB-4BC9-A0EC-10810B6CF7BE@adobe.com> <696877F2-C82C-4088-930F-D3B1A03BE46B@gmail.com> <1379D039-7D55-4B24-9948-192C75968A27@gmail.com> <17BE6FA2-DC72-4A87-BB19-7995FFFA6607@gmail.com> <05A760F8-FCA7-47AF-B71B-66E8099158CB@gmail.com> In-Reply-To: <05A760F8-FCA7-47AF-B71B-66E8099158CB@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/10.d.1.180523 authentication-results: spf=none (sender IP is ) smtp.mailfrom=aharui@adobe.com; x-originating-ip: [2601:600:c580:41f0:1889:9198:bfc1:e51a] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;BL0PR02MB4610;7:HQYyS66jGghv7pPcoLB7j06zrCVNjVPRfyHAr7fCsCBggLSOMWroOyjd+cqQtEeuh0AbRhoejeWh3bCn1BTaz6xJe7J+/ssBY+B9dN5UIHS142Dyz89PjCPT+/Q6TfFl48m19969b4CkNrQjKt8KmysApWWLYKBwm4+TwLH254X1GjPa6NNy4xtUrAKsBRKFP2SOBPRUCkOUIO6EguoUUy7YZzUxKak1iLkyOUsxKLOoBPNcEEHtuO2ZAeI2iv29 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(8989080)(5600026)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(8990040)(2017052603328)(7153060)(7193020);SRVR:BL0PR02MB4610; x-ms-traffictypediagnostic: BL0PR02MB4610: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(189930954265078)(131327999870524)(85827821059158)(219752817060721); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(10201501046)(3002001)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016);SRVR:BL0PR02MB4610;BCL:0;PCL:0;RULEID:;SRVR:BL0PR02MB4610; x-forefront-prvs: 06968FD8C4 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(396003)(346002)(376002)(39380400002)(366004)(39860400002)(51444003)(189003)(199004)(6512007)(6306002)(3660700001)(97736004)(2906002)(486006)(446003)(2616005)(6506007)(476003)(59450400001)(76176011)(99286004)(53546011)(11346002)(106356001)(102836004)(105586002)(186003)(36756003)(3280700002)(5250100002)(2501003)(33656002)(10090500001)(316002)(93886005)(83716003)(68736007)(14454004)(6916009)(6116002)(478600001)(45080400002)(229853002)(6486002)(82746002)(25786009)(6436002)(5640700003)(2900100001)(58126008)(53936002)(8676002)(15650500001)(305945005)(81166006)(7736002)(5660300001)(81156014)(2351001)(1730700003)(46003)(8936002)(6246003)(86362001)(53946003);DIR:OUT;SFP:1101;SCL:1;SRVR:BL0PR02MB4610;H:BL0PR02MB4611.namprd02.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: adobe.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: ZS6nxPCD+2cY/IUHA4+AfHmUbsjT0wP3IRmy3PKTENQU6UYc9iN/UnzhrQtZUHAV7kbdx6R3pXYLm4WRSIb/MdO5befImY6MDYO1E7ia01MARwgPZcc367MT6qgl4hvaS02HvCig8GVC6y3v8eAslt3n1Pko1eImmVWNK+iZVIXaVLDnSEDLn9Jnmkgg+L2/ spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: c4f6244d-763d-4a56-fddc-08d5ccaf0859 X-OriginatorOrg: adobe.com X-MS-Exchange-CrossTenant-Network-Message-Id: c4f6244d-763d-4a56-fddc-08d5ccaf0859 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jun 2018 19:44:07.2680 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fa7b1b5a-7b34-4387-94ae-d2c178decee1 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR02MB4610 QXJlIHlvdSB0ZXN0aW5nIHdpdGggdGhlIHNlbGVjdG9yIHRoYXQgc2V0cyBwb3NpdGlvbiE9c3Rh dGljIHRocm91Z2hvdXQgdGhlIERPTT8NCg0KSWYgbm90LCB0aGVuIEkgdGhpbmsgdGhhdCB0aGUg ImdldCB3aGF0IHlvdSBzZXQiIHJ1bGUgaGFzIHRvIGFwcGx5IGFuZCBJIHdvdWxkIHRoaW5rIHRo YXQgY29kZSBpcyBuZWNlc3NhcnkuICBUaGF0IHdhcyBhbHNvIGEgcnVsZSBpbiBGbGV4LiAgVGhl IGZvbGxvd2luZyB3YXMgYWx3YXlzIHRydWU6DQoNClZhciB2YWx1ZTppbnQgPSAxMDsNCnNvbWVX aWRnZXQueCA9IHZhbHVlOw0KdmFsdWUgPT0gc29tZVdpZGdldC54OyAvLyB0aGlzIHdhcyBhbHdh eXMgdHJ1ZS4NCg0KT3RoZXJ3aXNlLCBJIHRoaW5rIHNpbXBsZSBhbmltYXRpb24gY29kZSBtaWdo dCBmYWlsOg0KDQpGdW5jdGlvbiB0aW1lckhhbmRsZXIoKTp2b2lkDQp7DQogIHNvbWVXaWRnZXQu eCArPSAxMDsNCn0NCg0KVGhlIGFib3ZlIHJlYWRzICB4IGFuZCBzZXRzIGl0IHRvIHgrMTAuDQoN Ckl0IGlzIG5vdCBQQVlHIHRvIHdvcnJ5IGFib3V0IHRoZSBwZXJmb3JtYW5jZSBvZiBhbiBBUEkg dGhhdCBpcyByYXJlbHkgdXNlZC4gIFRoYXQgaXMgaG93IFBBWUcgd29ya3MuICBZb3UgcGF5IGZv ciBpdCB3aGVuIHlvdSB1c2UgaXQuICBJZiB5b3UgY2FuIGxvd2VyIHRoZSBjb3N0IHdpdGhvdXQg bWFraW5nIGV2ZXJ5b25lIHBheSBmb3IgaXQsIGdyZWF0LCBidXQgdGhlIG1vc3QgaW1wb3J0YW50 IHByaW5jaXBsZSBpcyB0aGF0IHlvdSBjYW5ub3QgbWFrZSBldmVyeW9uZSBwYXkgZm9yIGl0IGp1 c3QtaW4tY2FzZS4gIE1pZ3JhdGluZyBhcHBzIG1heSBwYXkgbW9yZSBpbiBvcmRlciB0byBjaGFu Z2UgbGVzcyBjb2RlLCBidXQgQUlVSSwgdGhlIHRyZW5kIGluIFVJIGRlc2lnbiBpbiBnZW5lcmFs IGlzIHRvIGdldCBhd2F5IGZyb20gYWJzb2x1dGUgcG9zaXRpb25pbmcgYW5kIHVzZSBmbGV4Ym94 IGFuZCBDU1NHcmlkIGluIG9yZGVyIHRvIGhhdmUgcmVzcG9uc2l2ZSBVSXMsIHNvIEkgZG9uJ3Qg c2VlIHgseSBwZXJmb3JtYW5jZSBhcyBpbXBvcnRhbnQuDQoNCkkgdGhpbmsgeW91IGFyZSBzYXlp bmcgdGhlcmUgaXMgYSBidWcgaW4gdGhlIGN1cnJlbnQgY29kZSwgYnV0IGl0IHNvbWVob3cgaW52 b2x2ZXMgb2Zmc2V0UGFyZW50IGNoYW5naW5nLiAgQ2FuIHlvdSBleHBsYWluIHdoYXQgY2F1c2Vz IG9mZnNldFBhcmVudCB0byBjaGFuZ2U/DQoNClRoYW5rcywNCi1BbGV4DQoNCu+7v09uIDYvNy8x OCwgMTI6MjIgUE0sICJIYXJicyIgPGhhcmJzLmxpc3RzQGdtYWlsLmNvbT4gd3JvdGU6DQoNCiAg ICA+ICBJIGhvcGUgdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gdHJpZXMgdG8gbWltaWMgRmxh c2gvRmxleCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSByZWFzb25zLiANCiAgICANCiAgICBI ZXJl4oCZcyB0aGUga2lja2VyOg0KICAgIA0KICAgIEkgaGF2ZSBub3QgeWV0IGZvdW5kIGEgKlNJ TkdMRSogY2FzZSB5ZXQgd2hlcmUgdGhpcyBhdHRlbXB0IHRvIG1pbWljIHRoZSBGbGFzaC9GbGV4 IGJlaGF2aW9yIGlzIG5lY2Vzc2FyeSB0byAqR0VUIFRIRSBTQU1FIFJFU1VMVCouIEJvdGggbXkg b3duIGFwcCBhbmQgdGhlIGV4YW1wbGVzIHRoYXQgSeKAmXZlIHRlc3RlZCBzZWVtIHRvIHdvcmsg cGVyZmVjdGx5IHdpdGhvdXQgdGhlIG9mZnNldFBhcmVudCBjb2RlLiBUaGUgKk9OTFkqIGVmZmVj dCBJ4oCZdmUgc2VlbiBmcm9tIHRoaXMgY29kZSBpcyB0aGF0IGl0Og0KICAgIA0KICAgIDEuIENh dXNlcyBidWdzIGluIHRoZSBsYXlvdXQgbGlmZWN5Y2xlLg0KICAgIDIuIENhdXNlcyBhIHNpZ25p ZmljYW50IHBlcmZvcm1hbmNlIGhpdCB3aGVuIHdyaXRpbmcgeCBhbmQgeSB2YWx1ZXMuDQogICAg DQogICAgU28sIHRvIG1lIHRoZSBxdWVzdGlvbiBpcyAqV0hBVCBJUyBUSEUgQ0FTRSBXSEVSRSBU SElTIENPREUgSVMgQUNUVUFMTFkgTkVFREVEKj8gU3VyZS4gSSB1bmRlcnN0YW5kIHRoZW9yZXRp Y2FsbHkgd2h5IGl04oCZcyBuZWVkZWQsIGJ1dCBJIGRvbuKAmXQgc2VlIGFuICpBQ1RVQUwqIHBy b2JsZW0gd2l0aCByZW1vdmluZyB0aGUgY29kZS4gSXQgc2VlbXMgdG8gbWUgbGlrZSB0aGUgdGhl b3JldGljYWwgY2FzZSBjYW4gYmUgaGFuZGxlZCB3aXRoIHV0aWxpdHkgZnVuY3Rpb25zLg0KICAg IA0KICAgIEnigJlsbCB0cnkgdG8gZG8gc29tZSBtb3JlIHRlc3RpbmcsIGJ1dCBhZnRlciBteSBp bml0aWFsIHRlc3RzLCBJ4oCZbSBxdWVzdGlvbmluZyB3aGV0aGVyIHRoaXMgY29kZSBpcyBzZXJ2 aW5nIGEgZnVuY3Rpb24gYW55bW9yZS4gSSByZW1lbWJlciBpdCBiZWluZyBuZWVkZWQgYXQgc29t ZSBwb2ludCBpbiB0aGUgcGFzdCwgYnV0IGl0IGNvdWxkIGJlIGl04oCZcyBsZWdhY3kgY29kZSB3 aGljaCBpcyBubyBsb25nZXIgdXNlZnVsLg0KICAgIA0KICAgIEhhcmJzDQogICAgDQogICAgPiBP biBKdW4gNywgMjAxOCwgYXQgMTA6MTMgUE0sIEFsZXggSGFydWkgPGFoYXJ1aUBhZG9iZS5jb20u SU5WQUxJRD4gd3JvdGU6DQogICAgPiANCiAgICA+IEknbSBub3Qgc3VyZSBJJ20gdW5kZXJzdGFu ZGluZy4NCiAgICA+IA0KICAgID4gVGhlcmUgaXMgbm8geCx5IGluIEhUTUwvSlMsIHNvIHdlIGNh biBtYWtlIGl0IG1lYW4gYW55dGhpbmcgd2Ugd2FudCBpdCB0by4gIEkgaG9wZSB0aGUgY3VycmVu dCBpbXBsZW1lbnRhdGlvbiB0cmllcyB0byBtaW1pYyBGbGFzaC9GbGV4IGZvciBiYWNrd2FyZCBj b21wYXRpYmlsaXR5IHJlYXNvbnMuICBXZSBjb3VsZCBhZ3JlZSB0byBjaGFuZ2UgdGhhdCBpZiB3 ZSByZWFsbHkgd2FudCB0bywgYnV0IEkgdGhpbmsgYmFja3dhcmQtY29tcGF0aWJpbGl0eSBpcyB1 c2VmdWwgaGVyZS4NCiAgICA+IA0KICAgID4gSW4gRmxleC9GbGFzaCwgaWYgeW91IHNldCB0aGUg eCx5IHRvIDEwLDEwLCB0aGVuIHRoZSBvYmplY3QgaXMgb2Zmc2V0IGJ5IDEwIHBpeGVscyBmcm9t IHRoZSB0b3AtbGVmdCBvZiB0aGUgcGFyZW50LiAgSWYgeW91IHJlYWQgYmFjayB4LHkgaXQgd2ls bCBiZSAxMCwxMC4gIEhvd2V2ZXIsIGluIFJveWFsZSwgd2UgbWFwIHgseSB0byB0aGUgImxlZnQi IGFuZCAidG9wIiBzdHlsZXMuICBpZiB0aGUgcGFyZW50Tm9kZSBoYXMgcG9zaXRpb249c3RhdGlj LCB0aGVuIHdlIG5lZWQgY29kZSB0byBjb21wZW5zYXRlIGZvciB0aGF0Lg0KICAgID4gDQogICAg PiBPbmUgd2F5IGlzIHRvIG1ha2Ugc3VyZSBub2JvZHkgaGFzIHBvc2l0aW9uPXN0YXRpYy4gIFRo YXQgZG9lc24ndCBzZWVtIFBBWUcsIG1pZ2h0IGJyZWFrIHNuaXBwZXRzIGZyb20gdGhlIGludGVy bmV0LCBhbmQgY2FuIGJlIG92ZXJyaWRkZW4gYnkgc29tZW9uZSBzZXR0aW5nIHBvc2l0aW9uPXN0 YXRpYyBvbiBhbiBlbGVtZW50IChub3Qgc3VyZSB3aHkgYW55b25lIHdvdWxkIGRvIHRoYXQpLg0K ICAgID4gDQogICAgPiBBbm90aGVyIHdheSBpcywgd2hlbiB5b3Ugc2V0IHgseSwgd2Ugc2V0IHBv c2l0aW9uIT1zdGF0aWMgb24gdGhlIHBhcmVudC4gIEkgdGhpbmsgd2UgdHJpZWQgdGhhdCBhbmQg dGhlcmUgd2FzIHNvbWUgcHJvYmxlbSwgYnV0IG1heWJlIHdlIHNob3VsZCB0cnkgdGhhdCBhZ2Fp bi4gIFRoYXQgd291bGQgYmUgUEFZRywgSU1PLiAgSXQgaXMgb25seSBhcHBsaWVkIHdoZW4gdXNl ZC4NCiAgICA+IA0KICAgID4gQnV0IGFnYWluLCBJIHdhbnQgdG8gdW5kZXJzdGFuZCB0aGUgZnVu ZGFtZW50YWwgdXNlIGNhc2VzLiAgVGhlIG9uZSB5b3UgY2l0ZWQgaW4gUm95YWxlU3RvcmUgdHVy bmVkIG91dCB0byBiZSBhbiB1bi1uZWVkZWQgaGFjay4gIFdoYXQgYXJlIHRoZSByZWFsIHVzZSBj YXNlcyB3ZSBuZWVkIHRvIGNvbnNpZGVyPyAgSG93IGltcG9ydGFudC9wcmV2YWxlbnQgaXMgc2V0 dGluZyB4LHkgb3V0c2lkZSBvZiBlZmZlY3RzLCBwb3B1cHMsIGFuZCBhYnNvbHV0ZSBsYXlvdXQg Z29pbmcgdG8gYmU/ICAgT3RoZXJ3aXNlLCB0aGUgY29kZSBjYW4gYmUgaW5lZmZpY2llbnQgYmVj YXVzZSB5b3Ugb25seSBwYXkgZm9yIGl0IGluIHJhcmUgY2FzZXMsIHdoaWNoIGlzIG1vcmUgUEFZ RyB0aGVuIG1ha2luZyBldmVyeSBub2RlIHBheSBmb3IgaXQgImp1c3QtaW4tY2FzZSIuDQogICAg PiANCiAgICA+IE15IDIgY2VudHMsDQogICAgPiAtQWxleA0KICAgID4gDQogICAgPiBPbiA2Lzcv MTgsIDEyOjAwIFBNLCAiSGFyYnMiIDxoYXJicy5saXN0c0BnbWFpbC5jb20gPG1haWx0bzpoYXJi cy5saXN0c0BnbWFpbC5jb20+PiB3cm90ZToNCiAgICA+IA0KICAgID4gICAgSSBkb27igJl0IHRo aW5rIEkgd2FzIGNsZWFyIGVub3VnaC4gVGhlIG9yaWdpbmFsIGlzc3VlIHRoYXQgc3RhcnRlZCB0 aGlzIHRocmVhZCBpcyBhY3R1YWxseSBjYXVzZWQgYnkgdGhlIGNvZGUgd2hpY2ggc2V0cyB0aGUg eSB2YWx1ZSBiYXNlZCBvbiB0aGUgcGFyZW50T2Zmc2V0LiBJZiB0aGUgcGFyZW50T2Zmc2V0IGlz IGlnbm9yZWQsIHRoZSBpc3N1ZSBnb2VzIGF3YXkgYW5kIHdlIGRvbuKAmXQgaGF2ZSB0byBjYXJl IGFib3V0IGxheW91dCBsaWZlY3ljbGVzLg0KICAgID4gDQogICAgPiAgICBGb3IgdGhlIGZldyBj YXNlcyB3aGVyZSB3ZSBuZWVkIHRvIHJlYWQgYW5kIHNldCB0aGUgKmFjdHVhbCBvYnNlcnZlZCog eCBhbmQgeSBwb3NpdGlvbnMgYmFzZWQgb24gdGhlIG9mZnNldFBhcmVudCB3aGljaCBtaWdodCBi ZSBkaWZmZXJlbnQgdGhhbiB0aGUgYWN0dWFsIHBhcmVudCwgd2UgY2FuIHVzZSB1dGlsaXR5IGZ1 bmN0aW9ucyB0byBnZXQgYW5kIHNldCB0aGVzZSB2YWx1ZXMuDQogICAgPiANCiAgICA+PiBPbiBK dW4gNywgMjAxOCwgYXQgOToyNyBQTSwgSGFyYnMgPGhhcmJzLmxpc3RzQGdtYWlsLmNvbT4gd3Jv dGU6DQogICAgPj4gDQogICAgPj4+IFNvLCBpZiB3ZSBkb24ndCBmb3JjZSBwb3NpdGlvbiE9c3Rh dGljIHRocm91Z2hvdXQgdGhlIERPTSwgdGhlbiB5b3UgaGF2ZSB0byBoYXZlIGNvZGUgdGhhdCBj b21wZW5zYXRlcyBmb3IgdGhhdCBkaWZmZXJlbmNlLg0KICAgID4+IA0KICAgID4+IEkgZG9u4oCZ dCB0aGluayBJIGFncmVlLiBSaWdodCBub3cgd2XigJlyZSBtb2RpZnlpbmcgdGhlIHggYW5kIHkg dmFsdWVzIGJlY2F1c2Ugd2UgKm1pZ2h0KiBjYXJlIGFib3V0IHRoZSBvZmZzZXRQYXJlbnQuIFRo YXTigJlzIG5vdCBQQVlHLiBJbiBmYWN0LCB0aGUgc2V0IHZhbHVlcyB3aWxsIGJlICp3cm9uZyog aWYgdGhlIHBvc2l0aW9uIG9mIHRoZSBwYXJlbnQgaXMgY2hhbmdlZCBhZnRlciB0aGUgeCBhbmQg eSB2YWx1ZXMgb2YgdGhlIGNoaWxkIGFyZSBzZXQuDQogICAgPj4gDQogICAgPj4gQmFzZWQgb24g bXkgb2JzZXJ2YXRpb25zLCBtb3N0IGFwcHMgd2lsbCBub3QgbmVlZCB0byBzZXQgdGhlIHZhbHVl cyBiYXNlZCBvbiB0aGUgb2Zmc2V0UGFyZW50LCBzbyBoYXJkLXdpcmluZyB0aGF0IGNvZGUgaW4g aXMgbm90IFBBWUcuIFRoaXMgaXMgZXNwZWNpYWxseSB0cnVlIHNpbmNlIHNldHRpbmcgeCBhbmQg eSBjdXJyZW50bHkgZm9yY2VzIGEgcmVmbG93IG9mIEhUTUwuIFdl4oCZcmUgc3VmZmVyaW5nIGEg bWFqb3IgcGVyZm9ybWFuY2UgaGl0IGZvciBubyByZWFzb24uDQogICAgPj4gDQogICAgPj4gSW4g Y2FzZXMgd2hlcmUgd2UgY2FyZSBhYm91dCB0aGUgcGFyZW50T2Zmc2V0LCB3ZSBjYW4gdXNlIG9i c2VydmVkWCBhbmQgb2JzZXJ2ZWRZIHV0aWxpdHkgbWV0aG9kcyB3aGljaCBhY2NvdW50IGZvciBv ZmZzZXRQYXJlbnQuIFRoYXQgc2VlbXMgbXVjaCBtb3JlIFBBWUcgdG8gbWUuDQogICAgPj4gDQog ICAgPj4gUmVtb3ZpbmcgdGhlIGFzc3VtcHRpb25zIG9mIHJlbGlhbmNlIG9uIG9mZnNldFBhcmVu dCBzZWVtcyB0byBlbGltaW5hdGUgYWxsIG5lZWRzIHRvIGNhcmUgYWJvdXQgcGFyZW50IHBvc2l0 aW9uaW5nLg0KICAgID4+IA0KICAgID4+IE15ICQwLjAyLA0KICAgID4+IEhhcmJzDQogICAgPj4g DQogICAgPj4+IE9uIEp1biA3LCAyMDE4LCBhdCA4OjIzIFBNLCBBbGV4IEhhcnVpIDxhaGFydWlA YWRvYmUuY29tLklOVkFMSUQgPG1haWx0bzphaGFydWlAYWRvYmUuY29tLklOVkFMSUQ+IDxtYWls dG86YWhhcnVpQGFkb2JlLmNvbS5JTlZBTElEIDxtYWlsdG86YWhhcnVpQGFkb2JlLmNvbS5JTlZB TElEPj4+IHdyb3RlOg0KICAgID4+PiANCiAgICA+Pj4gSUlSQywgdGhlIHBhcmVudE5vZGUgaXMg YWx3YXlzIHRoZSBwYXJlbnQgb2YgdGhlIGNoaWxkIGlmIHlvdSBleGFtaW5lIHRoZSBET00uICBv ZmZzZXRQYXJlbnQgaXMgdGhlIHBhcmVudCBvciBncmFuZHBhcmVudCwgZXRjLCB0aGF0IGhhcyBw b3NpdGlvbiAhPSBzdGF0aWMsIGFuZCBsZWZ0L3RvcC9yaWdodC9ib3R0b20gc3R5bGVzIGFyZSBh bHdheXMgcmVsYXRpdmUgdG8gb2Zmc2V0UGFyZW50LiAgU28sIGlmIHdlIGRvbid0IGZvcmNlIHBv c2l0aW9uIT1zdGF0aWMgdGhyb3VnaG91dCB0aGUgRE9NLCB0aGVuIHlvdSBoYXZlIHRvIGhhdmUg Y29kZSB0aGF0IGNvbXBlbnNhdGVzIGZvciB0aGF0IGRpZmZlcmVuY2UuDQogICAgPj4+IA0KICAg ID4+PiBJTU8sIHRoZSBrZXkgaXNzdWUgaXMgd2hldGhlciBpdCBpcyAib2siIHRvIGZvcmNlIHBv c2l0aW9uIT1zdGF0aWMgdGhyb3VnaG91dCB0aGUgRE9NLiAgQ2FuIHNvbWVvbmUgbG9vayBhdCBv dGhlciBKUyBmcmFtZXdvcmtzPyAgSSdsbCBiZXQgbW9zdCBvZiB0aGVtIHVzZSBib3JkZXItYm94 IGxpa2Ugd2UgZG8uICBJZiB0aGUgbWFqb3IgSlMgZnJhbWV3b3JrcyBoYXZlIG9wdGVkIGZvciBw b3NpdGlvbiE9c3RhdGljLCB0aGVuIGl0IG1pZ2h0IGJlIHRoZSByaWdodCB0aGluZyBmb3IgdXMg dG8gZG8gYXMgd2VsbC4gIElNTywgd2Ugd291bGQgbGlrZSB0byBtYWtlIGl0IGVhc3kgZm9yIHNu aXBwZXRzIGZvdW5kIG9uIHRoZSBpbnRlcm5ldCB0byB3b3JrIGluIFJveWFsZSBhbmQgdGhleSBt YXkgbm90IGFsbCBwcmVzdW1lIHBvc2l0aW9uIS1zdGF0aWMuDQogICAgPj4+IA0KICAgID4+PiBB bHNvLCBJTU8sIG91ciBDb250YWluZXJzIHNob3VsZCBub3QgcHJlc3VtZSBwb3NpdGlvbiE9c3Rh dGljLiAgQ29udGFpbmVycyBhY2NlcHQgYXNzaWduYWJsZSBMYXlvdXRzIGFuZCB0aGUgTGF5b3V0 cyBjYW4gc2V0IHBvc2l0aW9uIT1zdGF0aWMgb24gdGhlIGNoaWxkcmVuIGFuZCBiZSBhcHByb3By aWF0ZWx5IG5hbWVkIChWZXJ0aWNhbExheW91dFdpdGhYWVN1cHBvcnQpLiAgVGhhdCdzIFBBWUcg dG8gbWUuICBSZW1lbWJlciB0aGF0IFRMQ3Mgc2hvdWxkIGhhdmUgdmVyeSBsaXR0bGUgYXNzdW1w dGlvbnMgYXMgaWxsdXN0cmF0ZWQgaW4gdGhlIEV4cGxvZGVkQ29tcG9uZW50IGV4YW1wbGUuICBU aGUgYmVhZHMgY2FuIG1ha2UgYXNzdW1wdGlvbnMgYW5kIGJlIGFwcHJvcHJpYXRlbHkgbmFtZWQg YW5kIGRvY3VtZW50ZWQuDQogICAgPj4+IA0KICAgID4+PiBNeSAyIGNlbnRzLA0KICAgID4+PiAt QWxleA0KICAgID4+PiANCiAgICA+Pj4gT24gNi83LzE4LCA2OjE1IEFNLCAiSGFyYnMiIDxoYXJi cy5saXN0c0BnbWFpbC5jb20gPG1haWx0bzpoYXJicy5saXN0c0BnbWFpbC5jb20+IDxtYWlsdG86 aGFyYnMubGlzdHNAZ21haWwuY29tIDxtYWlsdG86aGFyYnMubGlzdHNAZ21haWwuY29tPj4+IHdy b3RlOg0KICAgID4+PiANCiAgICA+Pj4gICBJIGNyZWF0ZWQgYSDigJxzaW1wbGlmeS1wb3NpdGlv buKAnSBmZWF0dXJlIGJyYW5jaCB3aGljaCBkb2VzIGF3YXkgd2l0aCB0aGUgb2Zmc2V0UGFyZW50 IGxvZ2ljIGluIFVJQmFzZS4gSXQgZG9lcyBub3QgY2hhbmdlIGFueXRoaW5nIHJlZ2FyZGluZyBw b3NpdGlvbjogc3RhdGljLg0KICAgID4+PiANCiAgICA+Pj4gICBJIGhhdmUgdGVzdGVkIHdpdGgg bXkgb3duIGFwcCBhbmQgYSBudW1iZXIgb2YgdGhlIGV4YW1wbGVzLiBJIGhhdmVu4oCZdCBmb3Vu ZCBhbnkgcHJvYmxlbXMgeWV0Lg0KICAgID4+PiANCiAgICA+Pj4gICBJbnB1dCB3ZWxjb21l4oCm DQogICAgPj4+IA0KICAgID4+PiAgIEhhcmJzDQogICAgPj4+IA0KICAgID4+Pj4gT24gSnVuIDcs IDIwMTgsIGF0IDEyOjIwIFBNLCBIYXJicyA8aGFyYnMubGlzdHNAZ21haWwuY29tIDxtYWlsdG86 aGFyYnMubGlzdHNAZ21haWwuY29tPiA8bWFpbHRvOmhhcmJzLmxpc3RzQGdtYWlsLmNvbSA8bWFp bHRvOmhhcmJzLmxpc3RzQGdtYWlsLmNvbT4+PiB3cm90ZToNCiAgICA+Pj4+IA0KICAgID4+Pj4+ IFNvLCBJTU8sIGl0IHdvdWxkIGJlIG5pY2UgdG8gZG8gYSBzaW1pbGFyIGludmVzdGlnYXRpb24g b2YgY29udHJvbHNQYWxsZXR0ZS4NCiAgICA+Pj4+IA0KICAgID4+Pj4gWW91IGFyZSByaWdodC4g UmVtb3ZpbmcgdGhlIHkgdmFsdWUgaGFzIG5vIGVmZmVjdC4NCiAgICA+Pj4+IA0KICAgID4+Pj4g SSBhbSB3b25kZXJpbmcgdGhhdCBtYXliZSBpdCBtYWtlcyBzZW5zZSB0byBhcHBseSByZWxhdGl2 ZSB0byB0aGUgQ29udGFpbmVyIENTUyBzZWxlY3RvciBhbmQgcG9zc2libHkgYSBmZXcgb3RoZXJz Lg0KICAgID4+Pj4gDQogICAgPj4+PiBJ4oCZbSB0cnlpbmcgdG8gdW5kZXJzdGFuZCB0aGUgc3Bl Y2lmaWMgY2FzZXMgd2hlcmU6DQogICAgPj4+PiAgICAgICAgICAgICAgIGlmIChwb3NpdGlvbmVy LnBhcmVudE5vZGUgIT0gcG9zaXRpb25lci5vZmZzZXRQYXJlbnQpDQogICAgPj4+PiANCiAgICA+ Pj4+IElzIHJlcXVpcmVkIGluIHNldFgsIGdldCB4IGFuZCBzZXRZLCBnZXQgeSBpbiBVSUJhc2Uu IEkgd291bGQgKnJlYWxseSogbGlrZSB0byBnZXQgcmlkIG9mIHRoYXQgY29kZSwgYW5kIEnigJlt LCB3b25kZXJpbmcgd2hhdCBkb2luZyBzbyB3b3VsZCBjYXVzZS4NCiAgICA+Pj4+IA0KICAgID4+ Pj4+IE9uIEp1biA3LCAyMDE4LCBhdCAxMjozNiBBTSwgQWxleCBIYXJ1aSA8YWhhcnVpQGFkb2Jl LmNvbS5JTlZBTElEIDxtYWlsdG86YWhhcnVpQGFkb2JlLmNvbS5JTlZBTElEPiA8bWFpbHRvOmFo YXJ1aUBhZG9iZS5jb20uSU5WQUxJRCA8bWFpbHRvOmFoYXJ1aUBhZG9iZS5jb20uSU5WQUxJRD4+ IDxtYWlsdG86YWhhcnVpQGFkb2JlLmNvbS5JTlZBTElEIDxtYWlsdG86YWhhcnVpQGFkb2JlLmNv bS5JTlZBTElEPjxtYWlsdG86YWhhcnVpQGFkb2JlLmNvbS5JTlZBTElEIDxtYWlsdG86YWhhcnVp QGFkb2JlLmNvbS5JTlZBTElEPj4+PiB3cm90ZToNCiAgICA+Pj4+PiANCiAgICA+Pj4+PiBJbiB0 aGUgY2FzZSBvZiB0aGUgY29udHJvbHNQYWxsZXR0ZSwgaG93IGRpZCBpdCBnZXQgaXRzIHNpemU/ ICBJIGNvdWxkIGNlcnRhaW5seSB1bmRlcnN0YW5kIHRoYXQgaWYgeW91IGRpZG4ndCBoYXZlIHBv c2l0aW9uIT1zdGF0aWMsIHRoYXQgc2V0dGluZyB0b3Agb24gdGhlIGRvY2tBbmRPdXRlckNvbnRh aW5lciB3b3VsZCBoYXZlIG5vIGVmZmVjdCwgYnV0IHlvdSBzaG91bGRuJ3QgaGF2ZSBoYWQgdG8g c2V0IHkgb3IgdG9wIGluIHRoZSBmaXJzdCBwbGFjZS4gIElJUkMsIHlvdSBjb3VsZG4ndCB1c2Ug eCx5IGluIEZsZXggbGF5b3V0cyBsaWtlIFZlcnRpY2FsTGF5b3V0L0hvcml6b250YWxMYXlvdXQg c28gbWlncmF0aW5nIGNvZGUgc2hvdWxkbid0IGJlIHVzaW5nIGl0LiAgSXQgaXMgZmluZSB0byBj cmVhdGUgb3RoZXIgbGF5b3V0cyB0aGF0IHN1cHBvcnQgeCx5IGFzIGV4Y2VwdGlvbnMuDQogICAg Pj4+Pj4gDQogICAgPj4+Pj4gSW4gZ2VuZXJhbCwgZm9yIGEgZnJhbWV3b3JrLCB3ZSB3YW50IHRv IG1ha2Ugc3VyZSB3ZSB1bmRlcnN0YW5kIGFuZCBmaXggdGhlIGZ1bmRhbWVudGFsIHByb2JsZW0g YmVmb3JlIHdlIGFkZHJlc3MgYW55IGhhY2tzL2V4Y2VwdGlvbnMuICBJTU8sIHRoZSBmdW5kYW1l bnRhbCBwcm9ibGVtIGluIHRoZSBzY2VuYXJpb3MgeW91J3ZlIHByb3ZpZGVkIHNvIGZhciBpcyB0 aGF0IHRoZSBsYXlvdXQgZGlkIG5vdCBkbyB3aGF0IHdhcyBleHBlY3RlZCBzbyBzb21lb25lIHRy aWVkIHVzaW5nIHgseSB0byBmaXggaXQuICBGaXJzdCB3ZSBuZWVkIHRoYXQgbGF5b3V0IGRvIHdo YXQgaXMgZXhwZWN0ZWQsIHRoZW4gd29ycnkgYWJvdXQgaG93IGZvbGtzIG1pZ2h0IHJlc29sdmUg b3RoZXIgaXNzdWVzLCBpZiBhbnkuDQogICAgPj4+Pj4gDQogICAgPj4+Pj4gSW4gUHJvZHVjdHNW aWV3IGluIFJveWFsZVN0b3JlLCB0aGUgZ3JpcCBpcyBhbiBpbWFnZSBsb2FkZWQgbGF0ZXIsIHNv IHRoZXJlIG1pZ2h0IGhhdmUgYmVlbiBhbiBpc3N1ZSB0aGVyZSwgZXNwZWNpYWxseSBvbiB0aGUg U1dGIHNpZGUsIGJ1dCBJIHdvdWxkIGV4cGVjdCB0aGUgYnJvd3NlciB0byBhdXRvbWF0aWNhbGx5 IHJlLWxheW91dCBvbmNlIHRoZSBncmlwIGltYWdlIGxvYWRlZC4gIEkgZHVnIHRocm91Z2ggR2l0 IGhpc3RvcnkgYW5kIGZvdW5kIHRoYXQgSSB3YXMgdGhlIG9uZSB3aG8gaGFja2VkIGluIHRoZSB4 LHkuICBJdCBjb3VsZCBiZSB0aGF0IGVhcmx5IG9uLCB0aGUgbGF5b3V0IGRpZCBub3QgdXNlIEZs ZXhCb3ggc28gd2UgaGFkIGEgc2ltaWxhciBwcm9ibGVtIG9mIHJlc3BvbmRpbmcgdG8gdGhlIGdy aXAgaW1hZ2UgbG9hZGluZyBsYXRlLiAgQnV0IHdlIHNob3VsZCByZW1vdmUgdGhlIHgseSBhbmQg c2VlIGlmIHRoZXJlIGlzIHN0aWxsIGEgcHJvYmxlbSBhbmQgcG9uZGVyIHRoZSByaWdodCBmaXgg Zm9yIHRoYXQuICBQcm9kdWN0c1ZpZXcgc2hvdWxkIG5vdCBuZWVkIHRvIGJlIHNldHRpbmcgeCx5 Lg0KICAgID4+Pj4+IA0KICAgID4+Pj4+IFNvLCBJTU8sIGl0IHdvdWxkIGJlIG5pY2UgdG8gZG8g YSBzaW1pbGFyIGludmVzdGlnYXRpb24gb2YgY29udHJvbHNQYWxsZXR0ZS4gIElNTywgaWYgeW91 IGV4YW1pbmUgdGhhdCBkaXYsIGl0J3Mgb2Zmc2V0SGVpZ2h0IHNob3VsZCBiZSA0MCBhbmQgaWYg aXQgaXMgdGhlbiB5b3Ugc2hvdWxkbid0IG5lZWQgdG8gc2V0IHN0eWxlLnRvcD00MCBvbiBkb2NB bmRPdXRlckNvbnRhaW5lciB3aGljaCBtZWFucyB0aGF0IGl0IHNob3VsZG4ndCBtYXR0ZXIgd2hh dCBzdHlsZS5wb3NpdGlvbiBpcy4NCiAgICA+Pj4+PiANCiAgICA+Pj4+PiBNeSAyIGNlbnRzLA0K ICAgID4+Pj4+IC1BbGV4DQogICAgPj4+Pj4gDQogICAgPj4+Pj4gT24gNi82LzE4LCAyOjEyIFBN LCAiSGFyYnMiIDxoYXJicy5saXN0c0BnbWFpbC5jb20gPG1haWx0bzpoYXJicy5saXN0c0BnbWFp bC5jb20+IDxtYWlsdG86aGFyYnMubGlzdHNAZ21haWwuY29tIDxtYWlsdG86aGFyYnMubGlzdHNA Z21haWwuY29tPj4gPG1haWx0bzpoYXJicy5saXN0c0BnbWFpbC5jb20gPG1haWx0bzpoYXJicy5s aXN0c0BnbWFpbC5jb20+IDxtYWlsdG86aGFyYnMubGlzdHNAZ21haWwuY29tIDxtYWlsdG86aGFy YnMubGlzdHNAZ21haWwuY29tPj4+PiB3cm90ZToNCiAgICA+Pj4+PiANCiAgICA+Pj4+PiANCiAg ICA+Pj4+Pj4gT24gSnVuIDYsIDIwMTgsIGF0IDExOjA1IFBNLCBIYXJicyA8aGFyYnMubGlzdHNA Z21haWwuY29tIDxtYWlsdG86aGFyYnMubGlzdHNAZ21haWwuY29tPiA8bWFpbHRvOmhhcmJzLmxp c3RzQGdtYWlsLmNvbSA8bWFpbHRvOmhhcmJzLmxpc3RzQGdtYWlsLmNvbT4+IDxtYWlsdG86aGFy YnMubGlzdHNAZ21haWwuY29tIDxtYWlsdG86aGFyYnMubGlzdHNAZ21haWwuY29tPjxtYWlsdG86 aGFyYnMubGlzdHNAZ21haWwuY29tIDxtYWlsdG86aGFyYnMubGlzdHNAZ21haWwuY29tPj4+PiB3 cm90ZToNCiAgICA+Pj4+Pj4gDQogICAgPj4+Pj4+IAkJPGpzOkxhYmVsIHg9IjIwIiB5PSIyMCIN CiAgICA+Pj4+Pj4gCQkJCSAgdGV4dD0ie2xvY1N0ci5VUExPQURfWU9VUl9JTUFHRX0iLz4NCiAg ICA+Pj4+Pj4gDQogICAgPj4+Pj4gDQogICAgPj4+Pj4gIEl0IGFjdHVhbGx5LCBsb29rcyBsaWtl IHRoZSB4IGFuZCB5IHZhbHVlcyBubyBsb25nZXIgaGF2ZSBhbiBlZmZlY3Qgb24gdGhpcyBwYXJ0 aWN1bGFyIGNvbXBvbmVudCwgYnV0IHRoZXJlIHdhcyBjbGVhcmx5IGEgcmVhc29uIHRoZXkgd2Vy ZSBuZWVkZWQgdG8gYmUgc3BlY2lmaWVkIGF0IHNvbWUgcG9pbnTigKYNCiAgICA+Pj4+PiANCiAg ICA+Pj4+PiAgQW5vdGhlciBvbmUuIEkgaGF2ZSBhbiBpbWFnZSB3aGljaCBuZWVkcyB0byBzdGlj ayB0byB0aGUgYm90dG9tIHJpZ2h0IG9mIHRoZSBhcHAuIFRvIGRvIHRoYXQgSSBuZWVkZWQgdG8g Zm9sbG93aW5nOg0KICAgID4+Pj4+IA0KICAgID4+Pj4+ICAgIHRvcDogY2FsYygxMDAlIC0gMjFw eCk7DQogICAgPj4+Pj4gICAgbGVmdDogY2FsYygxMDAlIC0gMTg3cHgpOw0KICAgID4+Pj4+ICAg IHBvc2l0aW9uOiBmaXhlZDsNCiAgICA+Pj4+PiANCiAgICA+Pj4+PiAgV2l0aCBhIGRlZmF1bHQg b2YgcG9zaXRpb246IHJlbGF0aXZlLCBJ4oCZbSBhYmxlIHRvIGRvIHRoaXM6DQogICAgPj4+Pj4g DQogICAgPj4+Pj4gICAgICB0b3A6IC0yMXB4Ow0KICAgID4+Pj4+ICAgICAgZmxvYXQ6IHJpZ2h0 Ow0KICAgID4+Pj4+ICAgICAgcmlnaHQ6IDEwcHg7DQogICAgPj4+Pj4gDQogICAgPj4+Pj4gIFRo aXMgYmVpbmcgc2FpZCwgaXQgYWN0dWFsbHkgbG9va3MgbGlrZSBJ4oCZbSB3cm9uZyBhYm91dCB0 aGUgd2F5IHRvIHNldCB0aGUgZGVmYXVsdHMgYmVpbmcgLkFwcGxpY2F0aW9uICp7fS4gVGhpcyBh Y3R1YWxseSBoYXMgYSAqaGlnaGVyKiBzcGVjaWZpY2l0eSB0aGFuIC5mb297fS5bMV0NCiAgICA+ Pj4+PiANCiAgICA+Pj4+PiAgSSB0aGluayB0aGUgb25seSB3YXkgdG8gZ3VhcmFudGVlIHRoYXQg aXTigJlsbCBoYXZlIGEgbG93ZXIgc3BlY2lmaWNpdHkgdGhhbiBvdGhlciBzZWxlY3RvcnMgaXMg dG8gdXNlOg0KICAgID4+Pj4+IA0KICAgID4+Pj4+ICAqew0KICAgID4+Pj4+ICBwb3NpdGlvbjog cmVsYXRpdmU7DQogICAgPj4+Pj4gIH0NCiAgICA+Pj4+PiANCiAgICA+Pj4+PiAgSeKAmW0gbGVz cyBoYXBweSBhYm91dCB0aGlzIG9wdGlvbiB0aGFuIC4iQXBwbGljYXRpb24gKuKAnSBiZWNhdXNl IGl04oCZbGwgZWZmZWN0IGVsZW1lbnRzIG91dHNpZGUgdGhlIFJveWFsZSBhcHAgaWYgaXTigJlz IG5vdCBpbiBhbiBpZnJhbWUuDQogICAgPj4+Pj4gDQogICAgPj4+Pj4gIEhhcmJzDQogICAgPj4+ Pj4gDQogICAgPj4+Pj4gIFsxXWh0dHBzOi8vbmEwMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRs b29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tJTJGMjAw NyUyRjA3JTJGY3NzLXNwZWNpZmljaXR5LXRoaW5ncy15b3Utc2hvdWxkLWtub3clMkYmZGF0YT0w MiU3QzAxJTdDYWhhcnVpJTQwYWRvYmUuY29tJTdDMzZjMmViOTliZjJlNGI0NWM0NGQwOGQ1Y2Jm MjQyMmYlN0NmYTdiMWI1YTdiMzQ0Mzg3OTRhZWQyYzE3OGRlY2VlMSU3QzAlN0MwJTdDNjM2NjM5 MTYzNzEwNjI3NzY1JnNkYXRhPTFZUEpMZm16Y2FlRmxoJTJCdTJGVG1iVEhndkl2UzZuJTJCaFZR aVpoaXVjSnFzJTNEJnJlc2VydmVkPTAgPGh0dHBzOi8vbmEwMS5zYWZlbGlua3MucHJvdGVjdGlv bi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGd3d3LnNtYXNoaW5nbWFnYXppbmUuY29t JTJGMjAwNyUyRjA3JTJGY3NzLXNwZWNpZmljaXR5LXRoaW5ncy15b3Utc2hvdWxkLWtub3clMkYm ZGF0YT0wMiU3QzAxJTdDYWhhcnVpJTQwYWRvYmUuY29tJTdDMzZjMmViOTliZjJlNGI0NWM0NGQw OGQ1Y2JmMjQyMmYlN0NmYTdiMWI1YTdiMzQ0Mzg3OTRhZWQyYzE3OGRlY2VlMSU3QzAlN0MwJTdD NjM2NjM5MTYzNzEwNjI3NzY1JnNkYXRhPTFZUEpMZm16Y2FlRmxoJTJCdTJGVG1iVEhndkl2UzZu JTJCaFZRaVpoaXVjSnFzJTNEJnJlc2VydmVkPTA+IDxodHRwczovL25hMDEuc2FmZWxpbmtzLnBy b3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnd3dy5zbWFzaGluZ21hZ2F6 aW5lLmNvbSUyRjIwMDclMkYwNyUyRmNzcy1zcGVjaWZpY2l0eS10aGluZ3MteW91LXNob3VsZC1r bm93JTJGJmRhdGE9MDIlN0MwMSU3Q2FoYXJ1aSU0MGFkb2JlLmNvbSU3QzM2YzJlYjk5YmYyZTRi NDVjNDRkMDhkNWNiZjI0MjJmJTdDZmE3YjFiNWE3YjM0NDM4Nzk0YWVkMmMxNzhkZWNlZTElN0Mw JTdDMCU3QzYzNjYzOTE2MzcxMDYyNzc2NSZzZGF0YT0xWVBKTGZtemNhZUZsaCUyQnUyRlRtYlRI Z3ZJdlM2biUyQmhWUWlaaGl1Y0pxcyUzRCZyZXNlcnZlZD0wIDxodHRwczovL25hMDEuc2FmZWxp bmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnd3dy5zbWFzaGlu Z21hZ2F6aW5lLmNvbSUyRjIwMDclMkYwNyUyRmNzcy1zcGVjaWZpY2l0eS10aGluZ3MteW91LXNo b3VsZC1rbm93JTJGJmRhdGE9MDIlN0MwMSU3Q2FoYXJ1aSU0MGFkb2JlLmNvbSU3QzM2YzJlYjk5 YmYyZTRiNDVjNDRkMDhkNWNiZjI0MjJmJTdDZmE3YjFiNWE3YjM0NDM4Nzk0YWVkMmMxNzhkZWNl ZTElN0MwJTdDMCU3QzYzNjYzOTE2MzcxMDYyNzc2NSZzZGF0YT0xWVBKTGZtemNhZUZsaCUyQnUy RlRtYlRIZ3ZJdlM2biUyQmhWUWlaaGl1Y0pxcyUzRCZyZXNlcnZlZD0wPj4gPGh0dHBzOi8vbmEw MS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGd3d3 LnNtYXNoaW5nbWFnYXppbmUuY29tJTJGMjAwNyUyRjA3JTJGY3NzLXNwZWNpZmljaXR5LXRoaW5n cy15b3Utc2hvdWxkLWtub3clMkYmZGF0YT0wMiU3QzAxJTdDYWhhcnVpJTQwYWRvYmUuY29tJTdD MzZjMmViOTliZjJlNGI0NWM0NGQwOGQ1Y2JmMjQyMmYlN0NmYTdiMWI1YTdiMzQ0Mzg3OTRhZWQy YzE3OGRlY2VlMSU3QzAlN0MwJTdDNjM2NjM5MTYzNzEwNjI3NzY1JnNkYXRhPTFZUEpMZm16Y2Fl RmxoJTJCdTJGVG1iVEhndkl2UzZuJTJCaFZRaVpoaXVjSnFzJTNEJnJlc2VydmVkPTAgPGh0dHBz Oi8vbmEwMS5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJG JTJGd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tJTJGMjAwNyUyRjA3JTJGY3NzLXNwZWNpZmljaXR5 LXRoaW5ncy15b3Utc2hvdWxkLWtub3clMkYmZGF0YT0wMiU3QzAxJTdDYWhhcnVpJTQwYWRvYmUu Y29tJTdDMzZjMmViOTliZjJlNGI0NWM0NGQwOGQ1Y2JmMjQyMmYlN0NmYTdiMWI1YTdiMzQ0Mzg3 OTRhZWQyYzE3OGRlY2VlMSU3QzAlN0MwJTdDNjM2NjM5MTYzNzEwNjI3NzY1JnNkYXRhPTFZUEpM Zm16Y2FlRmxoJTJCdTJGVG1iVEhndkl2UzZuJTJCaFZRaVpoaXVjSnFzJTNEJnJlc2VydmVkPTA+ IDxodHRwczovL25hMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRw cyUzQSUyRiUyRnd3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbSUyRjIwMDclMkYwNyUyRmNzcy1zcGVj aWZpY2l0eS10aGluZ3MteW91LXNob3VsZC1rbm93JTJGJmRhdGE9MDIlN0MwMSU3Q2FoYXJ1aSU0 MGFkb2JlLmNvbSU3QzM2YzJlYjk5YmYyZTRiNDVjNDRkMDhkNWNiZjI0MjJmJTdDZmE3YjFiNWE3 YjM0NDM4Nzk0YWVkMmMxNzhkZWNlZTElN0MwJTdDMCU3QzYzNjYzOTE2MzcxMDYyNzc2NSZzZGF0 YT0xWVBKTGZtemNhZUZsaCUyQnUyRlRtYlRIZ3ZJdlM2biUyQmhWUWlaaGl1Y0pxcyUzRCZyZXNl cnZlZD0wIDxodHRwczovL25hMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3Vy bD1odHRwcyUzQSUyRiUyRnd3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbSUyRjIwMDclMkYwNyUyRmNz cy1zcGVjaWZpY2l0eS10aGluZ3MteW91LXNob3VsZC1rbm93JTJGJmRhdGE9MDIlN0MwMSU3Q2Fo YXJ1aSU0MGFkb2JlLmNvbSU3QzM2YzJlYjk5YmYyZTRiNDVjNDRkMDhkNWNiZjI0MjJmJTdDZmE3 YjFiNWE3YjM0NDM4Nzk0YWVkMmMxNzhkZWNlZTElN0MwJTdDMCU3QzYzNjYzOTE2MzcxMDYyNzc2 NSZzZGF0YT0xWVBKTGZtemNhZUZsaCUyQnUyRlRtYlRIZ3ZJdlM2biUyQmhWUWlaaGl1Y0pxcyUz RCZyZXNlcnZlZD0wPj4+IDxodHRwczovL25hMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9v ay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnd3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbSUyRjIwMDcl MkYwNyUyRmNzcy1zcGVjaWZpY2l0eS10aGluZ3MteW91LXNob3VsZC1rbm93JTJGJmRhdGE9MDIl N0MwMSU3Q2FoYXJ1aSU0MGFkb2JlLmNvbSU3QzM2YzJlYjk5YmYyZTRiNDVjNDRkMDhkNWNiZjI0 MjJmJTdDZmE3YjFiNWE3YjM0NDM4Nzk0YWVkMmMxNzhkZWNlZTElN0MwJTdDMCU3QzYzNjYzOTE2 MzcxMDYyNzc2NSZzZGF0YT0xWVBKTGZtemNhZUZsaCUyQnUyRlRtYlRIZ3ZJdlM2biUyQmhWUWla aGl1Y0pxcyUzRCZyZXNlcnZlZD0wIDxodHRwczovL25hMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24u b3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnd3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbSUy RjIwMDclMkYwNyUyRmNzcy1zcGVjaWZpY2l0eS10aGluZ3MteW91LXNob3VsZC1rbm93JTJGJmRh dGE9MDIlN0MwMSU3Q2FoYXJ1aSU0MGFkb2JlLmNvbSU3QzM2YzJlYjk5YmYyZTRiNDVjNDRkMDhk NWNiZjI0MjJmJTdDZmE3YjFiNWE3YjM0NDM4Nzk0YWVkMmMxNzhkZWNlZTElN0MwJTdDMCU3QzYz NjYzOTE2MzcxMDYyNzc2NSZzZGF0YT0xWVBKTGZtemNhZUZsaCUyQnUyRlRtYlRIZ3ZJdlM2biUy QmhWUWlaaGl1Y0pxcyUzRCZyZXNlcnZlZD0wPiA8aHR0cHM6Ly9uYTAxLnNhZmVsaW5rcy5wcm90 ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZ3d3cuc21hc2hpbmdtYWdhemlu ZS5jb20lMkYyMDA3JTJGMDclMkZjc3Mtc3BlY2lmaWNpdHktdGhpbmdzLXlvdS1zaG91bGQta25v dyUyRiZkYXRhPTAyJTdDMDElN0NhaGFydWklNDBhZG9iZS5jb20lN0MzNmMyZWI5OWJmMmU0YjQ1 YzQ0ZDA4ZDVjYmYyNDIyZiU3Q2ZhN2IxYjVhN2IzNDQzODc5NGFlZDJjMTc4ZGVjZWUxJTdDMCU3 QzAlN0M2MzY2MzkxNjM3MTA2Mjc3NjUmc2RhdGE9MVlQSkxmbXpjYWVGbGglMkJ1MkZUbWJUSGd2 SXZTNm4lMkJoVlFpWmhpdWNKcXMlM0QmcmVzZXJ2ZWQ9MCA8aHR0cHM6Ly9uYTAxLnNhZmVsaW5r cy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZ3d3cuc21hc2hpbmdt YWdhemluZS5jb20lMkYyMDA3JTJGMDclMkZjc3Mtc3BlY2lmaWNpdHktdGhpbmdzLXlvdS1zaG91 bGQta25vdyUyRiZkYXRhPTAyJTdDMDElN0NhaGFydWklNDBhZG9iZS5jb20lN0MzNmMyZWI5OWJm MmU0YjQ1YzQ0ZDA4ZDVjYmYyNDIyZiU3Q2ZhN2IxYjVhN2IzNDQzODc5NGFlZDJjMTc4ZGVjZWUx JTdDMCU3QzAlN0M2MzY2MzkxNjM3MTA2Mjc3NjUmc2RhdGE9MVlQSkxmbXpjYWVGbGglMkJ1MkZU bWJUSGd2SXZTNm4lMkJoVlFpWmhpdWNKcXMlM0QmcmVzZXJ2ZWQ9MD4+IDxodHRwczovL25hMDEu c2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUyRnd3dy5z bWFzaGluZ21hZ2F6aW5lLmNvbSUyRjIwMDclMkYwNyUyRmNzcy1zcGVjaWZpY2l0eS10aGluZ3Mt eW91LXNob3VsZC1rbm93JTJGJmRhdGE9MDIlN0MwMSU3Q2FoYXJ1aSU0MGFkb2JlLmNvbSU3QzM2 YzJlYjk5YmYyZTRiNDVjNDRkMDhkNWNiZjI0MjJmJTdDZmE3YjFiNWE3YjM0NDM4Nzk0YWVkMmMx NzhkZWNlZTElN0MwJTdDMCU3QzYzNjYzOTE2MzcxMDYyNzc2NSZzZGF0YT0xWVBKTGZtemNhZUZs aCUyQnUyRlRtYlRIZ3ZJdlM2biUyQmhWUWlaaGl1Y0pxcyUzRCZyZXNlcnZlZD0wIDxodHRwczov L25hMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUyRiUy Rnd3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbSUyRjIwMDclMkYwNyUyRmNzcy1zcGVjaWZpY2l0eS10 aGluZ3MteW91LXNob3VsZC1rbm93JTJGJmRhdGE9MDIlN0MwMSU3Q2FoYXJ1aSU0MGFkb2JlLmNv bSU3QzM2YzJlYjk5YmYyZTRiNDVjNDRkMDhkNWNiZjI0MjJmJTdDZmE3YjFiNWE3YjM0NDM4Nzk0 YWVkMmMxNzhkZWNlZTElN0MwJTdDMCU3QzYzNjYzOTE2MzcxMDYyNzc2NSZzZGF0YT0xWVBKTGZt emNhZUZsaCUyQnUyRlRtYlRIZ3ZJdlM2biUyQmhWUWlaaGl1Y0pxcyUzRCZyZXNlcnZlZD0wPiA8 aHR0cHM6Ly9uYTAxLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMl M0ElMkYlMkZ3d3cuc21hc2hpbmdtYWdhemluZS5jb20lMkYyMDA3JTJGMDclMkZjc3Mtc3BlY2lm aWNpdHktdGhpbmdzLXlvdS1zaG91bGQta25vdyUyRiZkYXRhPTAyJTdDMDElN0NhaGFydWklNDBh ZG9iZS5jb20lN0MzNmMyZWI5OWJmMmU0YjQ1YzQ0ZDA4ZDVjYmYyNDIyZiU3Q2ZhN2IxYjVhN2Iz NDQzODc5NGFlZDJjMTc4ZGVjZWUxJTdDMCU3QzAlN0M2MzY2MzkxNjM3MTA2Mjc3NjUmc2RhdGE9 MVlQSkxmbXpjYWVGbGglMkJ1MkZUbWJUSGd2SXZTNm4lMkJoVlFpWmhpdWNKcXMlM0QmcmVzZXJ2 ZWQ9MCA8aHR0cHM6Ly9uYTAxLnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9 aHR0cHMlM0ElMkYlMkZ3d3cuc21hc2hpbmdtYWdhemluZS5jb20lMkYyMDA3JTJGMDclMkZjc3Mt c3BlY2lmaWNpdHktdGhpbmdzLXlvdS1zaG91bGQta25vdyUyRiZkYXRhPTAyJTdDMDElN0NhaGFy dWklNDBhZG9iZS5jb20lN0MzNmMyZWI5OWJmMmU0YjQ1YzQ0ZDA4ZDVjYmYyNDIyZiU3Q2ZhN2Ix YjVhN2IzNDQzODc5NGFlZDJjMTc4ZGVjZWUxJTdDMCU3QzAlN0M2MzY2MzkxNjM3MTA2Mjc3NjUm c2RhdGE9MVlQSkxmbXpjYWVGbGglMkJ1MkZUbWJUSGd2SXZTNm4lMkJoVlFpWmhpdWNKcXMlM0Qm cmVzZXJ2ZWQ9MD4+Pj4NCiAgICANCiAgICANCg0K