Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id D9E86200B83 for ; Sat, 3 Sep 2016 03:57:51 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id D82D4160ACB; Sat, 3 Sep 2016 01:57:51 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id A6229160A8C for ; Sat, 3 Sep 2016 03:57:50 +0200 (CEST) Received: (qmail 2715 invoked by uid 500); 3 Sep 2016 01:57:49 -0000 Mailing-List: contact dev-help@aurora.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@aurora.apache.org Delivered-To: mailing list dev@aurora.apache.org Delivered-To: moderator for dev@aurora.apache.org Received: (qmail 60208 invoked by uid 99); 2 Sep 2016 23:43:02 -0000 X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.703 X-Spam-Level: X-Spam-Status: No, score=0.703 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=hotmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=xSe9JDpMf0s+i3wOP81aGYQ0V2OFG23FMhdgL9RNbO8=; b=IBUOTteYOIwqJxP9HW5cTHn3gPsMSbMLcHjiXIQmPvHrT6OlnnU7J9wLfuubLHmYUFGycPfnjABfap/u0YgFejJpP9JQwrRuk6jj2W4dhkZnjxKABDEPnBzesaaswzuxqF/u7nxyImndPcijGbruGEOqdICfl6sXZ44Xzds8OZNbiYbecbR1LXu+eI2mU9+A97fDc3WQXXLeQatCZUWcM6v3wMphxbi/5P4iM7rHipDxjFZBZNq4pTuzUkipZ0ZihnEJw0N8bgc2RZ3cNvJrxhmJx/0IHDsTJEYti7f8pwtzIr5fL+bzZuHH1HknKd3XpTruJZ/ywh1vDYpximaK0w== From: =?gb2312?B?u8Ygv60=?= To: Zameer Manji , "dev@aurora.apache.org" CC: Joshua Cohen , "serb@apache.org" , "caldima@gmail.com" , "rdelval1@binghamton.edu" Subject: =?gb2312?B?tPC4tDogRGlzY3Vzc2lvbiBvbiByZXZpZXcgcmVxdWVzdCA1MTUzNg==?= Thread-Topic: Discussion on review request 51536 Thread-Index: AQHSBWC0HR/VJjlSCESebKr4D843h6BmxtgAgAAIFQCAAAKdcoAACeuc Date: Fri, 2 Sep 2016 23:42:45 +0000 Message-ID: References: ,, In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=softfail (sender IP is 10.152.248.58) smtp.mailfrom=hotmail.com; apache.org; dkim=none (message not signed) header.d=none;apache.org; dmarc=fail action=none header.from=hotmail.com; received-spf: SoftFail (protection.outlook.com: domain of transitioning hotmail.com discourages use of 10.152.248.58 as permitted sender) x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [WaE4QZuSMBZgvZ9/uMgZSp9rCndsIsuu] x-eopattributedmessage: 0 x-forefront-antispam-report: CIP:10.152.248.58;IPV:NLI;CTRY:;EFV:NLI;SFV:NSPM;SFS:(10019020)(98900003);DIR:OUT;SFP:1102;SCL:1;SRVR:HK2APC01HT042;H:HK2PR04MB0995.apcprd04.prod.outlook.com;FPR:;SPF:None;LANG:en; x-microsoft-exchange-diagnostics: 1;HK2APC01HT042;6:fMUS1yk/ECcFVLcu/K3Hwn5j9/XIbqfs4qxxisr9tYazClfP48Jyb36lTl1AqEyjN9wN28aBWTjDtqz+jiIv/ZONiHKeA3wHBV52pr1/DGQNk40QgR70KaZRMvEVDnLYrwM0tqufvn9srPXonjXZLv6TraPtnNrW/1KELslCVPJL+YhNSUuu/Y1WmMhxe+2Id/cfvT9nJAaNZnD7XGgtQq+iMaL0XBR33rZRIkQuKqTd7UDCecl9p1tGVZLh3c3pxDvEjOB3KPmY6kLKG8zB9ZFFk0QeZkqbJXtXxwPN10KaVPK7n6poyLXWVEumEbWh;5:8Gzt1HvZ/6TtfZiHYXel1Jn4Infl1iaSbeq9Kg0MnwHcwVIAdd36yyzSdaloPacCK00eU8H8/Qmb+pjobjyX3fP8zwqG2pz9Z/fWqoWsn7x5t/V+Hgqg9xXxbtoqPubTlWz5OMQ19WEOt/VzrPU6ig==;24:h3DIy0becB87aDAWwZYocD2OWTYilymx/dCX6d4GEuZ3fBGOhHjD/k7l6QcIflSq3u9P1suJP5/ARWmX/EhXY37I1M1s724iL90CzqGjvsc=;7:0NtHzdGkkRGev7mIndTsaFulHOEco42uqfbVwIgZJ0XG4yAVQXQfvfjJxw9VZx5tLHtQzqavCdy4ilRaXeiJ99Pu+svJhE1BrcqwQ2EvZJdnQsrFUhVP/N2NgLNQS9HbIGjkd98zrWWD8R6QVEyYDuwZxDD3BZMTRJEvMRBtUOxU4+naK0gvluo3WnsXsb7iS/p94TDaUqv8EU7si++jGVmhzJnfxBv311M7aa/MQuOBf0LjWC/P4YC0NBDG+zqj x-ms-office365-filtering-correlation-id: 9914c3df-d18c-4a86-0edb-08d3d38ad6e1 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(1601124038)(1603103081)(1601125047);SRVR:HK2APC01HT042; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(432015012)(82015046);SRVR:HK2APC01HT042;BCL:0;PCL:0;RULEID:;SRVR:HK2APC01HT042; x-forefront-prvs: 00531FAC2C spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: multipart/alternative; boundary="_000_HK2PR04MB099594EC7117E4973FB6AF5EC7E50HK2PR04MB0995apcp_" MIME-Version: 1.0 X-OriginatorOrg: hotmail.com X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Sep 2016 23:42:45.1651 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: HK2APC01HT042 X-OriginalArrivalTime: 02 Sep 2016 23:42:48.0144 (UTC) FILETIME=[B6160500:01D20573] archived-at: Sat, 03 Sep 2016 01:57:52 -0000 --_000_HK2PR04MB099594EC7117E4973FB6AF5EC7E50HK2PR04MB0995apcp_ Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 QW5vdGhlciBjb25jZXJuIGlzIHRoYXQgb25jZSB3ZSByb2xsZWQgb3V0IHRoZSBuZXcgZXhlY3V0 b3IsIHdlIHNob3VsZCByb2xsZWQgb3V0IGEgbmV3IGNsaWVudCBpbiBvcmRlciB0byB1c2UgdGhl IGhlYWx0aC1jaGVjayBmZWF0dXJlLiBIZW5jZSB0aGUgZXhlY3V0b3IgYW5kIGNsaWVudCByb2xs aW5nIG91dCBwcm9jZXNzIHNlZW0gdG8gYmUgY291cGxlZC4NCg0KDQoNCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fDQq3orz+yMs6ILvGIL+tIDx0ZXhhc3JlZDIwMTNAaG90bWFpbC5j b20+DQq3osvNyrG85DogMjAxNsTqOdTCM8jVIDc6MjMNCsrVvP7IyzogWmFtZWVyIE1hbmppOyBk ZXZAYXVyb3JhLmFwYWNoZS5vcmcNCrOty806IEpvc2h1YSBDb2hlbjsgc2VyYkBhcGFjaGUub3Jn OyBjYWxkaW1hQGdtYWlsLmNvbTsgcmRlbHZhbDFAYmluZ2hhbXRvbi5lZHUNCtb3zOI6ILTwuLQ6 IERpc2N1c3Npb24gb24gcmV2aWV3IHJlcXVlc3QgNTE1MzYNCg0KDQpUaGFua3MgZm9yIHRoZSBu ZXcgcHJvcG9zYWwsIFphbWVlci4gSXQgc291bmRzIGdvb2QgdG8gbWUuIFRoZSBiZW5lZml0IGlz IHRoYXQgaXQgZG9lcyBub3QgYWx0ZXIgdGhlIGN1cnJlbnQgaW5mcmFzdHJ1Y3R1cmUgdG9vIG11 Y2guDQoNCg0KSG93ZXZlciwgdGhlcmUgaXMgb25lIHRoaW5nIHRvIGtlZXAgaW4gbWluZDoNCg0K d2UgY3VycmVudGx5IGRvIGEgY2hlY2sgdG8gZW5zdXJlIHdhdGNoX3NlYyBpcyBsb25nZXIgdGhh biBpbml0aWFsX2ludGVydmFsX3NlY3MuIFdlIHdpbGwgaGF2ZSB0byByZW1vdmUgdGhlIGFsZXJ0 IG1lc3NhZ2UgaWYgd2UgY2hvb3NlIHRvIHNraXAgd2F0Y2hfc2VjIGJ5IHNldHRpbmcgaXQgYXMg emVyby4NCg0KDQpTbyB0aGUgbmV3IGNvbmZpZ3VyYXRpb24gd2lsbCBub3Qgc3VwcG9ydCBleGVj dXRvci1kcml2ZW4gaGVhbHRoIGNoZWNrIHVubGVzcyB0aGUgZXhlY3V0b3JzIGFyZSByb2xsZWQg b3V0IDEwMCUuDQoNCg0KRG9lcyB0aGlzIHRyYWRlb2ZmIHNlZW1zIE9LIGZvciB1cywgTWF4aW0/ DQoNCg0KS2FpDQoNCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCreivP7Iyzog WmFtZWVyIE1hbmppIDx6bWFuamlAdWJlci5jb20+DQq3osvNyrG85DogMjAxNsTqOdTCM8jVIDY6 NTMNCsrVvP7IyzogZGV2QGF1cm9yYS5hcGFjaGUub3JnDQqzrcvNOiC7xiC/rTsgSm9zaHVhIENv aGVuOyBzZXJiQGFwYWNoZS5vcmc7IGNhbGRpbWFAZ21haWwuY29tOyByZGVsdmFsMUBiaW5naGFt dG9uLmVkdQ0K1vfM4jogUmU6IERpc2N1c3Npb24gb24gcmV2aWV3IHJlcXVlc3QgNTE1MzYNCg0K DQoNCk9uIEZyaSwgU2VwIDIsIDIwMTYgYXQgMzoyNCBQTSwgTWF4aW0gS2h1dG9ybmVua28gPG1h eGltQGFwYWNoZS5vcmc8bWFpbHRvOm1heGltQGFwYWNoZS5vcmc+PiB3cm90ZToNCk5lZWQgdG8g Y29ycmVjdCBhIGZldyBwcmV2aW91cyBzdGF0ZW1lbnRzOg0KDQo+IEFsc28gd2UgZG8gbm90IHdh bnQgdG8gZXhwb3NlIHRoaXMgbWVzc2FnZSB0byB1c2Vycy4NClRoaXMgaXMgaW5jb3JyZWN0LiBU aGUgb3JpZ2luYWwgZGVzaWduIHByb3Bvc2FsIHN1Z2dlc3RlZCB0byBzaG93IHRoaXMNCm1lc3Nh Z2UgaW4gdGhlIFVJIGFzOiAiVGFzayBpcyBoZWFsdGh5Ig0KDQpEb2VzIHRoaXMgbWVhbiB0aGUg bWVzc2FnZSBpbiB0aGUgc3RhdHVzIHVwZGF0ZSBpcyBnb2luZyB0byBiZSBleGFjdGx5LCAiVGFz ayBpcyBoZWFsdGh5IiBhbmQgdGhlIHNjaGVkdWxlciBpcyBnb2luZyB0byBjaGVjayBmb3IgdGhp cyBzdHJpbmcgaW4gdGhlIGBUQVNLX1JVTk5JTkdgIHN0YXR1cyB1cGRhdGU/IFRoaXMgbWVhbnMg d2UgYXJlIGdvaW5nIHRvIGVzdGFibGlzaCBhIGNvbW11bmljYXRpb24NCm1lY2hhbmlzbSBiZXR3 ZWVuIHRoZSBleGVjdXRvciBhbmQgc2NoZWR1bGVyIHRoYXQncyBub3QgZGVmaW5lZCBieSBhIHNj aGVtYS4gSSBmZWVsIHRoYXQncyB3b3JzZSB0aGFuIHB1dHRpbmcgSlNPTiBpbiB0aGVyZSBhbmQg aGF2aW5nIHRoZSBzY2hlZHVsZXIgcGFyc2UgaXQuDQoNCj4gVGhlIE1lc29zIEFQSSBpc24ndCBk ZXNpZ25lZCBmb3IgcGFja2luZyBhcmJpdHJhcnkgZGF0YQ0KPiBpbiB0aGUgc3RhdHVzIHVwZGF0 ZSBtZXNzYWdlLg0KRG9uJ3QgdGhpbmsgSSBhZ3JlZSwgdGhpcyBpcyBleGFjdGx5IHdoYXQgdGhp cyBmaWVsZCBpcyBmb3IgWzFdIGFuZCB3ZQ0KYWxyZWFkeSB1c2UgaXQgZm9yIG90aGVyIHN0YXRl cyBbMl0uDQoNCkkgZ3Vlc3MgSSBzaG91bGQgaGF2ZSBzYWlkICdzdHJ1Y3R1cmVkIGFyYml0cmFy eSBkYXRhJy4gVGhlIGluZm9ybWF0aW9uYWwsIG1lc3NhZ2VzIGFyZSBmaW5lIGFuZCB3ZSBwbHVt YiB0aGVtIGJsaW5kbHkgaW50byBvdXIgbG9nZ2luZyBhbmQgVUkuIEknbSBub3QgY29udmluY2Vk IHdlIHNob3VsZCBzdGFydCBwdXR0aW5nIEpTT04gb3Igc29tZXRoaW5nIG1vcmUgc3RydWN0dXJl ZCBpbiB0aGVyZS4gVGhhdCdzIHlldCBhbm90aGVyIHNjaGVtYSB3ZSBoYXZlIGFuZCB5ZXQgYW5v dGhlciB2ZXJzaW9uaW5nIHN0b3J5IHdlIGhhdmUgdG8gZ28gdGhvdWdoLiBUaGlzIGFsc28gY29t cGxpY2F0ZXMgbWF0dGVycyBmb3IgY3VzdG9tIGV4ZWN1dG9yIGF1dGhvcnMuDQoNCg0KPiBJIHdv dWxkIGJlIG9wZW4gdG8ganVzdCBzYXlpbmcgdGhhdCBzY2hlZHVsZXIgdmVyc2lvbg0KPiAwLjE2 IChvciAwLjE3KSBqdXN0IGFzc3VtZXMgdGhlIGV4ZWN1dG9yIHRyYW5zaXRpb25zIHRvDQo+IFJV Tk5JTkcgb25jZSBhIHRhc2sgaXMgaGVhbHRoeSBhbmQgZHJvcHBpbmcNCj4gYHdhdGNoX3NlY3Ng ZW50aXJlbHkuDQpXZSBjYW4ndCBkcm9wICd3YXRjaF9zZWNzJyBlbnRpcmVseSBhcyB3ZSBzdGls bCBoYXZlIHRvIGJhYnlzaXQgam9iDQp1cGRhdGVzIHRoYXQgZG9uJ3QgaGF2ZSBoZWFsdGggY2hl Y2tzIGVuYWJsZWQuDQoNClVuZGVyc3Rvb2QuIEkgZ3Vlc3Mgd2UgY2FuIGtlZXAgaXQgYnV0IEkn bSBub3cgZnJ1c3RyYXRlZCB0aGF0IHdlIGhhdmUgYSBwYXJhbWV0ZXIgdGhhdCBpcyBpZ25vcmVk IGlmIHdlIHNldCBzb21lIGpzb24gaW4gRXhlY3V0b3JDb25maWcuZGF0YS4gSWRlYWxseSwgd2Ug ZG9uJ3QgYWNjZXB0IGB3YXRjaF9zZWNzYCBpZiB3ZSB3YW50IGhlYWx0aCBjaGVjayBkcml2ZW4g dXBkYXRlcy4gQXMgbWVudGlvbmVkIGJlZm9yZSBJIGRvbid0IGxpa2UgdGhpcyBpbXBsaWNpdCB0 aWdodGVuaW5nIG9mIHRoZSBleGVjdXRvciBhbmQgdGhlIHNjaGVkdWxlci4NCg0KDQpBcyBmb3Ig bXkgdGFrZSBvbiB0aGUgYWJvdmUsIEkgZmF2b3IgIzEgYXMgdGhlIHNpbXBsZXN0IGFuc3dlciB0 byBhbg0KYWxyZWFkeSBzaW1wbGUgcXVlc3Rpb246ICJTaG91bGQgd2UgdXNlIHdhdGNoX3NlY3Mg Zm9yIHRoaXMgaW5zdGFuY2UNCm9yIG5vdD8iLiBUaGF0J3MgcHJldHR5IG11Y2ggaXQuIFNjaGVk dWxlciBkb2VzIG5vdCBuZWVkIGFueSBzY2hlbWENCmNoYW5nZXMsIGtub3cgd2hhdCBoZWFsdGgg Y2hlY2tzIGFyZSBvciBpZiBhIGpvYiBoYXMgdGhlbSBlbmFibGVkLiBBdA0KbGVhc3Qgbm90IHVu dGlsIHdlIGF0dGVtcHQgdG8gbW92ZSB0byBjZW50cmFsaXplZCBoZWFsdGggY2hlY2tzDQooQVVS T1JBLTI3OSkgYnV0IHRoYXQgd2lsbCBiZSBhbiBlbnRpcmVseSBkaWZmZXJlbnQgZGVzaWduIGRp c2N1c3Npb24uDQoNClsxXSAtIGh0dHBzOi8vZ2l0aHViLmNvbS9hcGFjaGUvbWVzb3MvYmxvYi9t YXN0ZXIvaW5jbHVkZS9tZXNvcy9tZXNvcy5wcm90byNMMTYwNS4NClsyXSAtIGh0dHBzOi8vZ2l0 aHViLmNvbS9hcGFjaGUvYXVyb3JhL2Jsb2IvNWNhZDA0NmZjMGYwYzRiYjc5YTQ1NjNjZmNmZjA0 NDJiN2JmODM4My9zcmMvbWFpbi9weXRob24vYXBhY2hlL2F1cm9yYS9leGVjdXRvci9hdXJvcmFf ZXhlY3V0b3IucHkjTDk3DQoNCg0KV2l0aCBhbGwgb2YgdGhpcyBpbiBtaW5kLCBJIGhhdmUgYW5v dGhlciBwcm9wb3NhbC4gV2h5IGNhbid0IHdlIGhhdmUgdGhlIGV4ZWN1dG9yIGNoYW5nZXMgKHdh aXQgdW50aWwgdGhlIHRhc2sgaXMgaGVhbHRoeSBmb3IgUlVOTklORykgKmFuZCogcmVhZCBgd2F0 Y2hfc2Vjc2AgaWYgaXQgaXMgc2V0PyBXaHkgbm90IGhhdmUgYm90aCBvZiB0aGVzZSBmZWF0dXJl cyBhbmQgaWYgdXNlcnMgd2FudCBwdXJlbHkgaGVhbHRoIGNoZWNraW5nIGRyaXZlbiB1cGRhdGVz IHRoZXkgY2FuIHNldCB0aGlzIHZhbHVlIHRvIDAgYW5kIGVuYWJsZSBoZWFsdGggY2hlY2tzLiBJ ZiB0aGV5IHdhbnQgdG8gaGF2ZSBib3RoIGhlYWx0aCBjaGVja2luZyBhbmQgdGltZSBkcml2ZW4g dXBkYXRlcyB0aGV5IGNhbiBzZXQgdGhpcyB0byB2YWx1ZSB0byB0aGUgdGltZSB0aGF0IHRoZXkg Y2FyZSBhYm91dC4gSWYgdGhleSBqdXN0IHdhbnQgdGltZSBkcml2ZW4gdXBkYXRlcyB0aGV5IGNh biBkaXNhYmxlIGhlYWx0aCBjaGVja2luZyBhbmQgc2V0IHRoaXMgdmFsdWUuDQoNClRoZW4gdGhl cmUgaXMgbm8gY291cGxpbmcgYmV0d2VlbiB0aGUgZXhlY3V0b3IgYW5kIHRoZSBzY2hlZHVsZXIg ZXhjZXB0IGZvciBzdGF0dXMgdXBkYXRlcyBhbmQgdGhlcmUgaXMgbm8gZGVwZW5kZW5jeSBvbiB0 aGUgYG1lc3NhZ2VgIGZpZWxkIG9mIHRoZSBzdGF0dXMgdXBkYXRlLg0KDQpXZSBjb3VsZCBldmVu IHRyZWF0IGB3YXRjaF9zZWNzYCBhcyBtaW5pbXVtIHRpbWUgaW4gU1RBUlRJTkcgKyBSVU5OSU5H IGluc3RlYWQgb2YgUlVOTklORyB3aXRoIHRoaXMgY2hhbmdlIGFuZCBpdCBiZWNvbWVzIHRoZSBs b3dlciBib3VuZCBpbiB0aGUgdXBkYXRlIHRyYW5zaXRpb24gc3BlZWQuIFRoaXMgY2FuIGVuc3Vy ZSB0aGF0IHVzZXJzIGRvbid0IGRlcGxveSAidG9vIGZhc3QiIGFuZCBlbmQgdXAgb3ZlcndoZWxt aW5nIG90aGVyIHNlcnZpY2VzIGlmIHRoZXkgYXJlIGRlcGxveWVkIHRvbyBxdWlja2x5Lg0KDQoN Cg0KDQpPbiBGcmksIFNlcCAyLCAyMDE2IGF0IDI6MjYgUE0sIFphbWVlciBNYW5qaSA8em1hbmpp QGFwYWNoZS5vcmc8bWFpbHRvOnptYW5qaUBhcGFjaGUub3JnPj4gd3JvdGU6DQo+ICpjYzogUmVu YW4qDQo+DQo+IEkgdGhpbmsgdGhlcmUgaXMgc29tZSBkaXNhZ3JlZW1lbnQvZGlzY3Vzc2lvbiBv biB0aGUgcmV2aWV3IGJlY2F1c2Ugd2UgaGF2ZQ0KPiBub3QgYWNoaWV2ZWQgY29uc2Vuc3VzIG9u IHRoZSBkZXNpZ24uIFNpbmNlIHRoZSBkZXNpZ24gZG9jIHdhcyB3cml0dGVuLA0KPiBBdXJvcmEg YWRvcHRlZCBtdWx0aXBsZSBleGVjdXRvciBzdXBwb3J0IGFzIHdlbGwgbm9uIEhUVFAgYmFzZWQN Cj4gaGVhbHRoY2hlY2tpbmcuIFRoaXMgaW52YWxpZGF0ZXMgc29tZSBwYXJ0cyBvZiB0aGUgb3Jp Z2luYWwgZGVzaWduLiBJIHRoaW5rDQo+IGFsbCBvZiB0aGUgc29sdXRpb25zIGhlcmUgYXJlIHBv c3NpYmxlIGFtZW5kbWVudHMgdG8gdGhlIGRlc2lnbiBkb2MuDQo+DQo+IEkgYW0gbm90IGluIGZh dm9yIG9mIFNvbHV0aW9uIDIgYXQgYWxsIGJlY2F1c2Ugc3RhdHVzIHVwZGF0ZXMgYmV0d2Vlbg0K PiBleGVjdXRvciA8LT4gYWdlbnQgPC0+IG1hc3RlciA8LT4gc2NoZWR1bGVyIGFyZSBkZXNpZ25l ZCB0byB1cGRhdGUgdGhlDQo+IGZyYW1ld29yayBvZiB1cGRhdGVzIHRvIHRoZSB0YXNrIGFuZCBu b3QgcmVhbGx5IGRlc2lnbmVkIHRvIHNlbmQgYXJiaXRyYXJ5DQo+IGluZm9ybWF0aW9uLiBKdXN0 IGJlY2F1c2UgdGhlIE1lc29zIEFQSSBwcm92aWRlcyB1cyB3aXRoIGEgc3RyaW5nIGZpZWxkDQo+ IGRvZXNuJ3QgbWVhbiB3ZSBzaG91bGQgdHJ5IHRvIHBhY2sgaW4gYXJiaXRyYXJ5IGRhdGEuIEFs c28sIGl0IGlzbid0IGNsZWFyDQo+IHdoYXQgb3RoZXIgY2FwYWJpbGl0aWVzIHdlIG1pZ2h0IGFk ZCBpbiB0aGUgZnV0dXJlIHNvIEknbSB1bmNvbnZpbmNlZCB0aGF0DQo+IGNhcGFiaWxpdGllcyBu ZWVkcyB0byBleGlzdCBhdCBhbGwuIE15IGZlYXIgaXMgdGhhdCB3ZSB3aWxsIGNyZWF0ZSB0aGUN Cj4gaW5mcmFzdHJ1Y3R1cmUgZm9yIGNhcGFiaWxpdGllcyBqdXN0IHRvIHNlcnZlIHRoaXMgbmVl ZCBhbmQgbm90aGluZyBlbHNlLg0KPg0KPiBJIG9iamVjdCB0byBTb2x1dGlvbiAxIGFsb25nIHRo ZSBzYW1lIGxpbmVzLiBUaGUgTWVzb3MgQVBJIGlzbid0IGRlc2lnbmVkDQo+IGZvciBwYWNraW5n IGFyYml0cmFyeSBkYXRhIGluIHRoZSBzdGF0dXMgdXBkYXRlIG1lc3NhZ2UgYW5kIEkgZG9uJ3Qg dGhpbmsNCj4gd2Ugc2hvdWxkIGFidXNlIHRoYXQgYW5kIHJlbHkgb24gdGhhdC4gQWxzbyBvdXIg Y3VycmVudCBpbmZyYXN0cnVjdHVyZSBqdXN0DQo+IHBsdW1icyB0aGUgbWVzc2FnZSB0byB0aGUg VUkgYW5kIEkgdGhpbmsgZGlzcGxheWluZyBjYXBhYmlsaXRpZXMgaXMgbm90DQo+IHNvbWV0aGlu ZyB3ZSBzaG91bGQgZG8uDQo+DQo+IEkgYW0gaW4gZmF2b3Igb2YgU29sdXRpb24gMyB3aGljaCBp cyBhcyBjbG9zZSBhcyBwb3NzaWJsZSB0byB0aGUgb3JpZ2luYWwNCj4gZGVzaWduIGluIHRoZSBk ZXNpZ24gZG9jLiBUaGUgZGVzaWduIGRvYyBzYXlzIHRoZSBmb2xsb3dpbmc6DQo+DQo+IFNjaGVk dWxlciB1cGRhdGVyIHdpbGwgc2tpcCB0aGUgbWluV2FpdEluSW5zdGFuY2VNcyAoYWthIHdhdGNo X3NlY3MNCj4+IDxodHRwczovL2dpdGh1Yi5jb20vYXBhY2hlL2F1cm9yYS9ibG9iLzRiNDMzMDVi MzNjZDhiZWJkZDgwMjI1YTM5ODdiN2NjN2E4Mzg5YTIvZG9jcy9jb25maWd1cmF0aW9uLXJlZmVy ZW5jZS5tZCN1cGRhdGVjb25maWctb2JqZWN0cz4pDQo+PiBncmFjZSBwZXJpb2QgYW55IHRpbWUg aXQgZGV0ZWN0cyBhIG5hbWVkIHBvcnQgoa5oZWFsdGihryBpbiB0YXNrDQo+PiBjb25maWd1cmF0 aW9uLiBBIFJVTk5JTkcgaW5zdGFuY2Ugc3RhdHVzIHdpbGwgc2lnbmlmeSB0aGUgZW5kIG9mIGlu c3RhbmNlDQo+PiB1cGRhdGUuDQo+DQo+DQo+IEluc3RlYWQgb2YgZGV0ZWN0aW5nIHRoZSAnaGVh bHRoJyBwb3J0IGluIHRoZSB0YXNrIGNvbmZpZ3VyYXRpb24sIHdlIG1ha2UNCj4gZW5hYmxpbmcg dGhpcyBmZWF0dXJlIGV4cGxpY2l0bHkgYnkgZW5hYmxpbmcgYSBiaXQgaW4gdGhlIHRhc2sNCj4g Y29uZmlndXJhdGlvbiB3aXRoIHRoZSBgZXhlY3V0b3JEcml2ZW5VcGRhdGVzYCBiaXQuDQo+DQo+ IEkgdW5kZXJzdGFuZCB0aGlzIG9wdGlvbiBtYWtlcyB0aGlzIGZlYXR1cmUgbW9yZSBjb21wbGV4 IGJlY2F1c2UgaXQNCj4gcmVxdWlyZXMgYSBzY2hlbWEgY2hhbmdlIGFuZCByZXF1aXJlcyBvcGVy YXRvcnMgdG8gZGVwbG95IHRoZSBleGVjdXRvciB0bw0KPiBhbGwgYWdlbnRzIGJlZm9yZSB1cGdy YWRpbmcgdGhlIGNsaWVudC4gSG93ZXZlciwgSSB0aGluayB0aGF0J3MgYSBvbmUgdGltZQ0KPiBv cGVyYXRpb25hbCBjb3N0IGFzIGEgb3Bwb3NlZCB0byBsb25nIGxpdmVkIGRlc2lnbiBjaG9pY2Vz IHRoYXQgd2lsbCBhZmZlY3QNCj4gdGhlIGNvZGUuDQo+DQo+IEZ1cnRoZXIgU29sdXRpb24gMyBp cyB0aGUgbW9zdCBhbWVuYWJsZSB0byBjdXN0b20gZXhlY3V0b3JzIGFuZCBjb250aW51ZXMNCj4g b3VyIHRyYWRpdGlvbiBvZiB0cmVhdGluZyBleGVjdXRvcnMgYXMgb3BhcXVlIGJsYWNrIGJveGVz LiBJIHRoaW5rIHRoZXJlIGlzDQo+IGEgbG90IG9mIHZhbHVlIGluIHRyZWF0aW5nIGV4ZWN1dG9y cyBhcyBibGFjayBib3hlcyBhcyBpdCBsZWF2ZXMgdGhlIGRvb3INCj4gb3BlbiB0byBzd2l0Y2hp bmcgb3VyIGV4ZWN1dG9yIHRvIHNvbWV0aGluZyBlbHNlIGFuZCBkb2Vzbid0IGltcG9zZSBhDQo+ IGJ1cmRlbiB0byBvdGhlcnMgdGhhdCB3YW50IHRvIHdyaXRlIHRoZWlyIG93bi4NCj4NCj4gQWx0 ZXJuYXRpdmVseSwgaWYgYW1lbmRpbmcgdGhlIHNjaGVtYSBpcyB0b28gbXVjaCB3b3JrLCBJIHdv dWxkIGJlIG9wZW4gdG8NCj4ganVzdCBzYXlpbmcgdGhhdCBzY2hlZHVsZXIgdmVyc2lvbiAwLjE2 IChvciAwLjE3KSBqdXN0IGFzc3VtZXMgdGhlIGV4ZWN1dG9yDQo+IHRyYW5zaXRpb25zIHRvIFJV Tk5JTkcgb25jZSBhIHRhc2sgaXMgaGVhbHRoeSBhbmQgZHJvcHBpbmcgYHdhdGNoX3NlY3NgDQo+ IGVudGlyZWx5LiBXZSBjYW4gcHV0IGl0IGluIHRoZSByZWxlYXNlIG5vdGVzIHRoYXQgb3BlcmF0 b3JzIG11c3QgZGVwbG95IHRoZQ0KPiBleGVjdXRvciB0byAxMDAlIGJlZm9yZSBkZXBsb3lpbmcg dGhlIHNjaGVkdWxlci4NCj4NCj4NCj4gT24gVGh1LCBTZXAgMSwgMjAxNiBhdCA2OjQwIFBNLCC7 xiC/rSA8dGV4YXNyZWQyMDEzQGhvdG1haWwuY29tPG1haWx0bzp0ZXhhc3JlZDIwMTNAaG90bWFp bC5jb20+PiB3cm90ZToNCj4NCj4+IEhpIEZvbGtzLA0KPj4NCj4+IEknbSBjdXJyZW50bHkgd29y a2luZyBvbiBhIGZlYXR1cmUgb24gYXVyb3JhIHNjaGVkdWxlciBhbmQgZXhlY3V0b3IuIFRoZQ0K Pj4gaW1wbGVtZW50YXRpb24gc3RyYXRlZ3kgYmVjYW1lIGNvbnRyb3ZlcnNpYWwgb24gdGhlIHJl dmlldyBib2FyZCwgc28gSSB3YXMNCj4+IHdvbmRlcmluZyBpZiBJIHNob3VsZCBicm9hZGNhc3Qg aXQgdG8gbW9yZSBhdWRpZW5jZSBhbmQgaW5pdGlhdGUgYQ0KPj4gZGlzY3Vzc2lvbi4gUGxlYXNl IGZlZWwgZnJlZSB0byBsZXQgbWUga25vdyB5b3VyIHRob3VnaHRzLCB5b3VyIGhlbHAgaXMNCj4+ IGdyZWF0bHkgYXBwcmVjaWF0ZWQhDQo+Pg0KPj4gVGhlIGhpZ2ggbGV2ZWwgZ29hbCBvZiB0aGlz IGZlYXR1cmUgaXMgdG8gaW1wcm92ZSByZWxpYWJpbGl0eSBhbmQNCj4+IHBlcmZvcm1hbmNlIG9m IHRoZSBBdXJvcmEgc2NoZWR1bGVyIGpvYiB1cGRhdGVyLCBieSByZWx5aW5nIG9uIGhlYWx0aCBj aGVjaw0KPj4gc3RhdHVzIHJhdGhlciB0aGFuIHdhdGNoX3NlY3MgdGltZW91dCB3aGVuIGRlY2lk aW5nIGFuIGluZGl2aWR1YWwgaW5zdGFuY2UNCj4+IHVwZGF0ZSBzdGF0ZS4NCj4+DQo+PiBQbGVh c2Ugc2VlIHRoZSBvcmlnaW5hbCByZXZpZXcgcmVxdWVzdCAqaHR0cHM6Ly9yZXZpZXdzLmFwYWNo ZS5vcmcvci81MTUzNi8NCj4+IDxodHRwczovL3Jldmlld3MuYXBhY2hlLm9yZy9yLzUxNTM2Lz4g Kg0KPj4gYXVyb3JhIEpJUkEgdGlja2V0ICpodHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEv YnJvd3NlL0FVUk9SQS04OTQNCj4+IDxodHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEvYnJv d3NlL0FVUk9SQS04OTQ+Kg0KPj4gZGVzaWduIGRvYyAqaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20v ZG9jdW1lbnQvZC8xWmRnVzhTNHhNaHZLVzdpUVVYOTl4Wm0xME5YU3hFV1IwYS0yMUZQNWQ5NC9l ZGl0Iw0KPj4gPGh0dHBzOi8vZG9jcy5nb29nbGUuY29tL2RvY3VtZW50L2QvMVpkZ1c4UzR4TWh2 S1c3aVFVWDk5eFptMTBOWFN4RVdSMGEtMjFGUDVkOTQvZWRpdCM+Kg0KPj4gZm9yIG1vcmUgZGV0 YWlscyBhbmQgYmFja2dyb3VuZC4NCj4+DQo+PiBOb3RlOiBUaGUgZGVzaWduIGRvYyBiZWNvbWVz IGEgbGl0dGxlIGJpdCBvdXRkYXRlZCBvbiB0aGUgInNjaGVkdWxlcg0KPj4gY2hhbmdlIHN1bW1h cnkiIHBhcnQgKHRoaXMgaXMgd2hhdCB0aGUgcmV2aWV3IHJlcXVlc3QgdHJ5aW5nIHRvIGFkZHJl c3MpLg0KPj4gQXMgYSByZXN1bHQsIEkndmUgbGVmdCBzb21lIGNvbW1lbnQgdG8gY2xhcmlmeSB0 aGUgbGF0ZXN0IHByb3Bvc2VkDQo+PiBpbXBsZW1lbnRhdGlvbiBwbGFuIGZvciBzY2hlZHVsZXIg Y2hhbmdlLg0KPj4NCj4+IFRoZXJlIGFyZSB0d28gcXVlc3Rpb25zIEknbSB0cnlpbmcgdG8gYWRk cmVzcyBoZXJlOg0KPj4gKjEuIEhvdyBkb2VzIHRoZSBzY2hlZHVsZXIgaW5mZXIgdGhlIGV4ZWN1 dG9yIHZlcnNpb24gYW5kIGJlIGJhY2t3YXJkDQo+PiBjb21wYXRpYmxlPyoNCj4+ICoyLiBXaGVy ZSBkbyB3ZSBkZXRlcm1pbmUgaWYgaGVhbHRoIGNoZWNrIGlzIGVuYWJsZWQ/Kg0KPj4NCj4+IElu IHNob3J0LCB0aGVyZSBhcmUgMyBkaWZmZXJlbnQgc29sdXRpb25zIHByb3Bvc2VkIG9uIHRoZSBy ZXZpZXcgYm9hcmQuDQo+Pg0KPj4gSW4gdGhlIGZpcnN0IHR3byBhcHByb2FjaGVzLCB0aGUgc2No ZWR1bGVyIHdpbGwgcmVseSBvbiBhIHN0cmluZyB0bw0KPj4gZGV0ZXJtaW5lIHRoZSBleGVjdXRv ciB2ZXJzaW9uLiBXZSBkZXRlcm1pbmUgd2hldGhlciBoZWFsdGggY2hlY2sgaXMNCj4+IGVuYWJs ZWQgbWVyZWx5IG9uIGV4ZWN1dG9yIHNpZGUuIFRoZXJlIHdpbGwgYmUgY29tbXVuaWNhdGlvbiBi ZXR3ZWVuIHRoZQ0KPj4gZXhlY3V0b3IgYW5kIHRoZSBzY2hlZHVsZXIuDQo+PiAqU29sdXRpb24g MTogKg0KPj4gKnZDdXJyZW50IGV4ZWN1dG9yIHNlbmRzIGEgbWVzc2FnZSBpbiBpdHMgaGVhbHRo IGNoZWNrIHRocmVhZCBkdXJpbmcNCj4+IFJVTk5JTkcgc3RhdGUgdHJhbnNpdGlvbiwgYW5kIHRo ZSB2Q3VycmVudCB1cGRhdGVyIHdpbGwgaW5mZXIgdGhlIGV4ZWN1dG9yDQo+PiB2ZXJzaW9uIGZy b20gdGhlIHByZXNlbmNlIG9mIHRoaXMgbWVzc2FnZSwgYW5kIHNraXAgdGhlIHdhdGNoX3NlY3Mg aWYNCj4+IG5lY2Vzc2FyeS4qDQo+Pg0KPj4gKlNvbHV0aW9uIDI6Kg0KPj4gKkluc3RlYWQgb2Yg cmVseWluZyBvbiB0aGUgcHJlc2VuY2Ugb2YgYW4gYXJiaXRyYXJ5IHN0cmluZyBpbiB0aGUgbWVz c2FnZSwNCj4+IHJlbHkgb24gdGhlIHByZXNlbmNlIG9mIGEgc3RyaW5nIGxpa2U6DQo+PiAiY2Fw YWJpbGl0aWVzOkNBUEFCSUxJVFlfMSxDQVBBQklMSVRZLTIiIHdoZXJlIENBUEFCSUxJVFlfMSBh bmQNCj4+IENBUEFCSUxJVFlfMiAoZXRjLikgYXJlIGNvbnN0YW50cyBkZWZpbmVkIGluIGFwaS50 aHJpZnQuIEJhc2ljYWxseSBqdXN0DQo+PiBmb3JtYWxpemluZyB0aGUgbWVjaGFuaXNtIGFuZCBt YWtpbmcgaXQgYSBiaXQgbW9yZSBmdXR1cmUgcHJvb2YuKg0KPj4NCj4+IEluIHRoZSB0aGlyZCBz b2x1dGlvbiwgdGhlIHNjaGVkdWxlciBpbmZlcnMgdGhlIGV4ZWN1dG9yIHZlcnNpb24gZnJvbSB0 aGUNCj4+IEpvYlVwZGF0ZVNldHRpbmdzIG9uIHNjaGVkdWxlciBzaWRlLg0KPj4gKlNvbHV0aW9u IDM6Kg0KPj4gKkFkZGluZyBhIGJpdCB0byBKb2JVcGRhdGVTZXR0aW5ncyB3aGljaCBpcyChrmV4 ZWN1dG9yRHJpdmVuVXBkYXRlcycsIGlmDQo+PiB0aGF0IGlzIHNldCwgdGhlIHNjaGVkdWxlciBh c3N1bWVzIHRoYXQgdGhlIHRyYW5zaXRpb24gZnJvbSBTVEFSVElORyAtPg0KPj4gUlVOTklORyBt YWtlcyB0aGUgZXhlY3V0b3IgaGVhbHRoeSBhbmQgY29uY3VycmVudGx5LCB3ZSByZWxlYXNlIHRo ZXJtb3MgYW5kDQo+PiBjaGFuZ2UgSGVhbHRoQ2hlY2tDb25maWcgdG8gc2F5IHRoYXQgaXQgc2hv dWxkIG9ubHkgZ28gdG8gcnVubmluZyBhZnRlcg0KPj4gaGVhbHRoeSouDQo+Pg0KPj4gKlByb3Mg YW5kIENvbnM6Kg0KPj4gVGhlIG1haW4gYmVuZWZpdCBvZiBTb2x1dGlvbiAxIGlzOg0KPj4gMS4g QnkgdXNpbmcgdGhlIG1lc3NhZ2UgaW4gdGFzayBzdGF0dXMgdXBkYXRlLCB3ZSBkb24ndCBoYXZl IHRvIG1ha2UgYW55DQo+PiBzY2hlbWEgY2hhbmdlLCB3aGljaCBtYWtlcyB0aGUgZGVzaWduIHNp bXBsZS4NCj4+IDIuIFRoZSBmZWF0dXJlIGlzIGZ1bGx5IGJhY2t3YXJkLWNvbXBhdGlibGUuIFdo ZW4gd2Ugcm9sbCBvdXQgdGhlIHZDdXJyZW50DQo+PiBzY2hlZHVsZXJzIGFuZCBleGVjdXRvcnMs IHdlIGRvIG5vdCBoYXZlIHRvIGluc3RydWN0IHRoZSB1c2VycyB0byBwcm92aWRlDQo+PiBhZGRp dGlvbmFsIGZpZWxkIGluIHRoZSBKb2Igb3IgVXBkYXRlIGNvbmZpZ3MsIHdoaWNoIGNvdWxkIGNv bmZ1c2VzDQo+PiBjdXN0b21lcnMgd2hlbiB0aGUgdlByZXYgYW5kIHZDdXJyZW50IGV4ZWN1dG9y IGNvZXhpc3QgaW4gdGhlIGNsdXN0ZXIuDQo+Pg0KPj4gQ29uY2VybnM6DQo+PiBSZWx5aW5nIG9u IHRoZSBwcmVzZW5jZSBvZiBhIG1lc3NhZ2UgbWFrZXMgdGhpbmdzIGJyaXR0bGUuIEFsc28gd2Ug ZG8gbm90DQo+PiB3YW50IHRvIGV4cG9zZSB0aGlzIG1lc3NhZ2UgdG8gdXNlcnMuDQo+Pg0KPj4g VGhlIGJlbmVmaXQgb2YgU29sdXRpb24gMiBpcyBtYWtpbmcgdGhlIGZlYXR1cmUgbW9yZSBmdXR1 cmUgcHJvb2YuDQo+PiBIb3dldmVyLCBpZiB3ZSBkbyBub3QgZW52aXNpb24gYSBuZXcgZXhlY3V0 b3IgZmVhdHVyZSBpbiB0aGUgc2hvcnQgdGVybSwNCj4+IGl0J3Mgbm90IHRvbyBtdWNoIGRpZmZl cmVudCBmcm9tIFNvbHV0aW9uIDEuDQo+Pg0KPj4gVGhlIGJlbmVmaXRzIG9mIFNvbHV0aW9uIDMg aW5jbHVkZToNCj4+IDEuIFdlIHN1cHBvcnQgbW9yZSB0aGFuIGp1c3QgdGhlcm1vcyBub3cgKGFu ZCBvdGhlcnMgcmVseSBvbiBjdXN0b20NCj4+IGV4ZWN1dG9ycykuDQo+PiAyLiBBIGxvdCBvZiB0 aGluZ3MgaW4gQXVyb3JhIHRyZWF0IHRoZSBleGVjdXRvciBhcyBvcGFxdWUuIFRoZSBzdGF0dXMN Cj4+IHVwZGF0ZSBtZXNzYWdlIHNlbnQgYnkgZXhlY3V0b3Igc2hvdWxkIG5vdCBiZSB2aXNpYmxl IHRvIHVzZXJzIG9ubHkgaWYgaXQncw0KPj4gYW4gZXJyb3IgbWVzc2FnZS4NCj4+DQo+PiBDb25j ZXJuczoNCj4+IDEuIEluIGFkZGl0aW9uIHRvIHRoZSChrmV4ZWN1dG9yRHJpdmVuVXBkYXRlcycg Yml0IHRoYXQgaWRlbnRpZmllcyB0aGUNCj4+IGV4ZWN1dG9yIHZlcnNpb24sIHdlIHN0aWxsIG5l ZWQgdG8gbm90aWZ5IHRoZSBzY2hlZHVsZXIgaWYgaGVhbHRoIGNoZWNrIGlzDQo+PiBlbmFibGVk IG9uIHZDdXJyZW50IGV4ZWN1dG9yLCBpZiBub3QsIHRoZSBzY2hlZHVsZXIgbXVzdCBiZSBhYmxl IHRvIGZhbGwNCj4+IGJhY2sgdG8gdXNlIHdhdGNoX3NlY3MuDQo+PiAyLiBUaGUgdXNlcnMgaGF2 ZSB0byBwcm92aWRlIGFuIGFkZGl0aW9uYWwgZmllbGQgaW4gdGhlaXIgLmF1cm9yYSBjb25maWcN Cj4+IGZpbGVzLiBUaGUgZmVhdHVyZSB3b3VsZG4ndCBiZSBhdmFpbGFibGUgdW5sZXNzIG5ldyBj bGllbnRzIGFyZSByb2xsZWQgb3V0DQo+PiBhcyB3ZWxsLg0KPj4NCj4+IFBsZWFzZSBsZXQgbWUg a25vdyBpZiBJIHVuZGVyc3RhbmQgeW91ciBzdWdnZXN0aW9ucyBjb3JyZWN0bHkgYW5kDQo+PiBo b3BlZnVsbHkgZXZlcnlvbmUgaXMgb24gdGhlIHNhbWUgcGFnZSENCj4+DQo+PiBUaGFua3MsDQo+ Pg0KPj4gS2FpDQo+Pg0KDQoNCg0KLS0NClphbWVlciBNYW5qaQ0K --_000_HK2PR04MB099594EC7117E4973FB6AF5EC7E50HK2PR04MB0995apcp_--