Return-Path: X-Original-To: apmail-drill-dev-archive@www.apache.org Delivered-To: apmail-drill-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 449B918905 for ; Wed, 23 Mar 2016 12:34:19 +0000 (UTC) Received: (qmail 57373 invoked by uid 500); 23 Mar 2016 12:34:19 -0000 Delivered-To: apmail-drill-dev-archive@drill.apache.org Received: (qmail 57329 invoked by uid 500); 23 Mar 2016 12:34:18 -0000 Mailing-List: contact dev-help@drill.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@drill.apache.org Delivered-To: mailing list dev@drill.apache.org Delivered-To: moderator for dev@drill.apache.org Received: (qmail 19049 invoked by uid 99); 23 Mar 2016 05:10:09 -0000 X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.997 X-Spam-Level: * X-Spam-Status: No, score=1.997 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (1024-bit key) header.d=dsiq.onmicrosoft.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dsiq.onmicrosoft.com; s=selector1-dsiq-com0e; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=drUZ+RC/6BD/e9LXWxOfsBhb5NQZQtOxaawxXB+pXyg=; b=lzaeQoZJU2KkQc98/ey5hFVm2E8oOb/J64qPfT6b1SoIF1gg2YLQNIbkjK+fliNfIekXZCungX6XXLFRI597aRDEH3Ickae0l7xYirtY3h9Cg/d0wFX+r66hk2IW7e46uzR0IuyfDL1bBhjPT8B5ASCIC2spoIs+xFLJ2EML42s= From: Kumiko Yada To: "adityakishore@gmail.com" , Kevin Verhoeven CC: "user@drill.apache.org" , "dev@drill.apache.org" , "altekrusejason@gmail.com" , Ki Kang Subject: RE: Drill query does not return all results from HBase Thread-Topic: Drill query does not return all results from HBase Thread-Index: AdE8HTvIxYTGlNNcRnixjVGbo8eMSQMsKIpQASDYyYAABenPAAAO9I6AAAIc6YAALelZQAADO6gQAAA5twAAABDTkAAAdSOAAAF5g4AAABwDUAAg2uoQAATkIQAABMpFYAcL095gAACUoIAFUAudkAAAYzmAAAB4miAAppYtAAAYNWUAAABCA4AAAltZAAABZ5GAAAHmOQAAROcLwA== Date: Wed, 23 Mar 2016 05:09:53 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=ds-iq.com; x-originating-ip: [4.31.103.98] x-ms-office365-filtering-correlation-id: be3b1ade-aac2-471f-5463-08d352d95e5b x-microsoft-exchange-diagnostics: 1;BY2PR0401MB0998;5:wqS2hPH43lYy2DTmT65Et0erQYuNvhJBZpGHmE0BfraB2yiYBIioZlnBVuqa+nJFlQI2PYn6eZd8nICwDjFaMsmGz2kKFgkYV1ZE9EdaiHBHkZMlCkVkJ+XSRE+kd0VuYESKDdtplPc6GXWXPtZ1pw==;24:w1kLTtAVWYi68Y+q8sFDo39kVn/pCTaMwZTVw8aWRjMKQvdTUUaBOl8Pc1ywl544/1Q1OuG1jbsi+iZl2211b6CwbY93Ti8ccbUsUJE9gqE= x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0401MB0998; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040046)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041046)(6043046);SRVR:BY2PR0401MB0998;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0401MB0998; x-forefront-prvs: 08902E536D x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(40764003)(377454003)(52604005)(51914003)(164054003)(24454002)(13464003)(377424004)(5003600100002)(4001430100002)(19609705001)(19300405004)(1096002)(33656002)(189998001)(81166005)(345774005)(122556002)(2501003)(2950100001)(2900100001)(19625215002)(586003)(11100500001)(92566002)(5008740100001)(4001450100002)(66066001)(5001770100001)(5004730100002)(1220700001)(74316001)(561924002)(19617315012)(5002640100001)(107886002)(3660700001)(4326007)(87936001)(3846002)(50986999)(76176999)(77096005)(16601075003)(16236675004)(6116002)(102836003)(86362001)(2906002)(54356999)(76576001)(93886004)(10400500002)(3280700002)(15975445007)(19580395003)(19580405001)(790700001)(5890100001)(579004);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR0401MB0998;H:SN1PR0401MB1792.namprd04.prod.outlook.com;FPR:;SPF:None;MLV:sfv;LANG:en; Content-Type: multipart/alternative; boundary="_000_SN1PR0401MB17924B0D3CA1871C98CFC872BA810SN1PR0401MB1792_" MIME-Version: 1.0 X-OriginatorOrg: ds-iq.com X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Mar 2016 05:09:53.1921 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 14ea3e2d-a67c-4c86-821b-51e6745fd11d X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0401MB0998 X-MS-Exchange-CrossPremises-AuthAs: Internal X-MS-Exchange-CrossPremises-AuthMechanism: 04 X-MS-Exchange-CrossPremises-AuthSource: SN1PR0401MB1792.namprd04.prod.outlook.com X-MS-Exchange-CrossPremises-SCL: 1 X-MS-Exchange-CrossPremises-messagesource: StoreDriver X-MS-Exchange-CrossPremises-BCC: X-MS-Exchange-CrossPremises-originalclientipaddress: 4.31.103.98 X-MS-Exchange-CrossPremises-avstamp-service: 1.0 X-MS-Exchange-CrossPremises-antispam-scancontext: DIR:Originating;SFV:NSPM;SKIP:0; X-MS-Exchange-CrossPremises-processed-by-journaling: Journal Agent X-OrganizationHeadersPreserved: BY2PR0401MB0998.namprd04.prod.outlook.com --_000_SN1PR0401MB17924B0D3CA1871C98CFC872BA810SN1PR0401MB1792_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmsgeW91IGZvciB5b3VyIGhlbHAsIEFkaXR5YSEgIFdlIHdlcmUgYWJsZSB0byB3b3JrYXJv dW5kIHRoaXMuDQoNCldlIHJlcGxhY2VkIHRoZSBpbmNsdWRlZCBoYmFzZSBjbGllbnQgamFyIGlu IHRoZSBEcmlsbCBkaXN0cmlidXRhYmxlIHRhcmJhbGwgdG8gd29ya2Fyb3VuZCB0aGUgYnVnIGlu IGh0dHBzOi8vaXNzdWVzLmFwYWNoZS5vcmcvamlyYS9icm93c2UvSEJBU0UtMTMyNjIuIFRoZSBm aXggb24gdGhlIGNsaWVudCBzaWRlIGlzIGluID49IDAuOTguMTIuIFdlIGluaXRpYWxseSB0ZXN0 ZWQgd2l0aCAwLjk4LjE3IChsYXRlc3QgYXZhaWxhYmxlIGFydGlmYWN0IGluIHB1YmxpYyBtdm4g cmVwb3NpdG9yeSkgYnV0IHRoYXQgdGhlIGRyaWxsIGNvZGUgZW5jb3VudGVyZWQgYSBkZWFkbG9j ayB3aGVuIHVzaW5nIGl0LiBXZW50IGFoZWFkIHdpdGggMC45OC4xMy5qYXIgaW5zdGVhZCB0byBt aW5pbWl6ZSBjaGFuZ2VzIGluIGludGVyYWN0aW9uIHdpdGggRHJpbGwuDQpGaWxlcyBhZmZlY3Rl ZDoNCi9vcHQvYXBhY2hlLWRyaWxsL2phcnMvM3JkcGFydHkvDQogICAgICAgICAgICAgICAgaGJh c2UtYW5ub3RhdGlvbnMtMC45OC4xMy1oYWRvb3AyLmphcg0KICAgICAgICAgICAgICAgIGhiYXNl LWNsaWVudC0wLjk4LjEzLWhhZG9vcDIuamFyDQogICAgICAgICAgICAgICAgaGJhc2UtY29tbW9u LTAuOTguMTMtaGFkb29wMi5qYXINCiAgICAgICAgICAgICAgICBoYmFzZS1wcm90b2NvbC0wLjk4 LjEzLWhhZG9vcDIuamFyDQpBbm90aGVyIHdvcmthcm91bmQgZm9yIHRoZSBidWcgaXMgdG8gY29u ZmlndXJlIHRoZSBjbGllbnQgc2Nhbm5lcnMgdG8gaGF2ZSBhIG1heCBiYXRjaCBzaXplIG9mIDw9 IHRoZSBzZXJ2ZXIncyBkZWZhdWx0IGJhdGNoIHNpemUgKHdoaWNoIHZhcmllcyBiZXR3ZWVuIDk4 IGFuZCAxLngpLg0KQWRkIHRoaXMgbGluZSBpbiB0aGUgaGJhc2Ugc3RvcmFnZSBwbHVnaW4gdGhy b3VnaCB0aGUgRHJpbGwgVUk6DQoiaGJhc2UuY2xpZW50LnNjYW5uZXIubWF4LnJlc3VsdC5zaXpl IjogIjEiDQpJdCBzaG91bGQgYmUgd2l0aGluIHRoZSBjb25maWcgZGljdGlvbmFyeSB0aGF0IGFs c28gaG9sZHMgdGhlIGhiYXNlLnpvb2tlZXBlci5xdW9ydW0gcHJvcGVydHkuDQoNCi1LdW1pa28N Cg0KRnJvbTogQWRpdHlhIFttYWlsdG86YWRpdHlha2lzaG9yZUBnbWFpbC5jb21dDQpTZW50OiBN b25kYXksIE1hcmNoIDIxLCAyMDE2IDE6MDggUE0NClRvOiBLZXZpbiBWZXJob2V2ZW4gPEtldmlu LlZlcmhvZXZlbkBkcy1pcS5jb20+DQpDYzogdXNlckBkcmlsbC5hcGFjaGUub3JnOyBLdW1pa28g WWFkYSA8S3VtaWtvLllhZGFAZHMtaXEuY29tPjsgZGV2QGRyaWxsLmFwYWNoZS5vcmc7IGFsdGVr cnVzZWphc29uQGdtYWlsLmNvbTsgS2kgS2FuZyA8S2kuS2FuZ0Bkcy1pcS5jb20+DQpTdWJqZWN0 OiBSZTogRHJpbGwgcXVlcnkgZG9lcyBub3QgcmV0dXJuIGFsbCByZXN1bHRzIGZyb20gSEJhc2UN Cg0KSSBkaWQgbm90IHNlZSBhbnkgaXNzdWUgd2hlbiBydW5uaW5nIHdpdGggSEJhc2UgMC45OC43 IGNsaWVudCBidW5kbGVkIHdpdGggRHJpbGwgYWdhaW5zdCBIQmFzZSAxLjEgc2VydmVycy4NCkkg aGF2ZSBqdXN0IGFzc2lnbmVkIERSSUxMLTQxOTlbMV0gdG8gbXlzZWxmIHRvIGV2YWx1YXRlIG1v dmluZyB0byBIQmFzZSAxLjEgaW4gbmV4dCBEcmlsbCByZWxlYXNlLg0KDQpbMV0gaHR0cHM6Ly9p c3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9EUklMTC00MTk5DQoNCk9uIE1vbiwgTWFyIDIx LCAyMDE2IGF0IDEyOjEzIFBNLCBLZXZpbiBWZXJob2V2ZW4gPEtldmluLlZlcmhvZXZlbkBkcy1p cS5jb208bWFpbHRvOktldmluLlZlcmhvZXZlbkBkcy1pcS5jb20+PiB3cm90ZToNCkFkaXR5YSwN Cg0KTG9va2luZyBpbnRvIHRoZSBidWcgd2UgcmVhZCB0aGF0IHRoZSBiZWhhdmlvciB3aWxsIHN0 aWxsIG9jY3VyIGlmIHRoZSBoYmFzZS1jbGllbnQgdmVyc2lvbiBkb2VzIG5vdCBpbmNsdWRlIHRo ZSBmaXggKGJldHdlZW4gYSAwLjk4IGNsaWVudCBhbmQgMS4wIHNlcnZlcikuIFRoZSBoYmFzZS1j bGllbnQgdXNlZCBieSBEcmlsbCB1bmRlciBqYXJzLzNyZHBhcnR5IGlzIGhiYXNlLWNsaWVudC0w Ljk4LjctaGFkb29wMi5qYXIgd2hpY2ggZG9lcyBub3QgaW5jbHVkZSB0aGUgZml4LiBJIHVwZGF0 ZWQgdGhlIGhiYXNlLWNsaWVudCBqYXIgd2l0aCBoYmFzZS1jbGllbnQtMC45OC4xNy1oYWRvb3Ay LmphciwgYnV0IEkgcmVjZWl2ZSBhIGphdmEubGFuZy5Ob0NsYXNzRGVmRm91bmRFcnJvciBlcnJv ci4gQXJlIHlvdSBhYmxlIHRvIHRlc3QgRHJpbGwgd2l0aCBhbiB1cGRhdGVkIGhiYXNlLWNsaWVu dCBqYXIgYWdhaW5zdCBDREg/IEhlcmUgaXMgdGhlIGVycm9yIEkgcmVjZWl2ZWQ6DQoNCjIwMTYt MDMtMjEgMTg6NTg6MzYsODc0IFtVU0VSLXJwYy1ldmVudC1xdWV1ZV0gRVJST1Igby5hLmQuZXhl Yy5zZXJ2ZXIucmVzdC5RdWVyeVdyYXBwZXIgLSBRdWVyeSBGYWlsZWQNCm9yZy5hcGFjaGUuZHJp bGwuY29tbW9uLmV4Y2VwdGlvbnMuVXNlclJlbW90ZUV4Y2VwdGlvbjogREFUQV9SRUFEIEVSUk9S OiBGYWlsdXJlIHdoaWxlIGxvYWRpbmcgdGFibGUgdGVzdDZjIGluIGRhdGFiYXNlIGhiYXNlLg0K TWVzc2FnZTogIGNvbS5nb29nbGUucHJvdG9idWYuU2VydmljZUV4Y2VwdGlvbjogamF2YS5sYW5n Lk5vQ2xhc3NEZWZGb3VuZEVycm9yOiBjb20veWFtbWVyL21ldHJpY3MvY29yZS9HYXVnZQ0KDQog ICAgICAgIGF0IG9yZy5hcGFjaGUuZHJpbGwuZXhlYy5ycGMudXNlci5RdWVyeVJlc3VsdEhhbmRs ZXIucmVzdWx0QXJyaXZlZChRdWVyeVJlc3VsdEhhbmRsZXIuamF2YToxMTkpIFtkcmlsbC1qYXZh LWV4ZWMtMS40LjAuamFyOjEuNC4wXQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLmRyaWxsLmV4ZWMu cnBjLnVzZXIuVXNlckNsaWVudC5oYW5kbGVSZXBvbnNlKFVzZXJDbGllbnQuamF2YToxMTMpIFtk cmlsbC1qYXZhLWV4ZWMtMS40LjAuamFyOjEuNC4wXQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLmRy aWxsLmV4ZWMucnBjLkJhc2ljQ2xpZW50V2l0aENvbm5lY3Rpb24uaGFuZGxlKEJhc2ljQ2xpZW50 V2l0aENvbm5lY3Rpb24uamF2YTo0NikgW2RyaWxsLXJwYy0xLjQuMC5qYXI6MS40LjBdDQogICAg ICAgIGF0IG9yZy5hcGFjaGUuZHJpbGwuZXhlYy5ycGMuQmFzaWNDbGllbnRXaXRoQ29ubmVjdGlv bi5oYW5kbGUoQmFzaWNDbGllbnRXaXRoQ29ubmVjdGlvbi5qYXZhOjMxKSBbZHJpbGwtcnBjLTEu NC4wLmphcjoxLjQuMF0NCiAgICAgICAgYXQgb3JnLmFwYWNoZS5kcmlsbC5leGVjLnJwYy5ScGNC dXMuaGFuZGxlKFJwY0J1cy5qYXZhOjY5KSBbZHJpbGwtcnBjLTEuNC4wLmphcjoxLjQuMF0NCiAg ICAgICAgYXQgb3JnLmFwYWNoZS5kcmlsbC5leGVjLnJwYy5ScGNCdXMkUmVxdWVzdEV2ZW50LnJ1 bihScGNCdXMuamF2YTo0MDApIFtkcmlsbC1ycGMtMS40LjAuamFyOjEuNC4wXQ0KICAgICAgICBh dCBvcmcuYXBhY2hlLmRyaWxsLmNvbW1vbi5TZXJpYWxpemVkRXhlY3V0b3IkUnVubmFibGVQcm9j ZXNzb3IucnVuKFNlcmlhbGl6ZWRFeGVjdXRvci5qYXZhOjEwNSkgW2RyaWxsLXJwYy0xLjQuMC5q YXI6MS40LjBdDQogICAgICAgIGF0IG9yZy5hcGFjaGUuZHJpbGwuZXhlYy5ycGMuUnBjQnVzJFNh bWVFeGVjdXRvci5leGVjdXRlKFJwY0J1cy5qYXZhOjI2NCkgW2RyaWxsLXJwYy0xLjQuMC5qYXI6 MS40LjBdDQogICAgICAgIGF0IG9yZy5hcGFjaGUuZHJpbGwuY29tbW9uLlNlcmlhbGl6ZWRFeGVj dXRvci5leGVjdXRlKFNlcmlhbGl6ZWRFeGVjdXRvci5qYXZhOjE0MikgW2RyaWxsLXJwYy0xLjQu MC5qYXI6MS40LjBdDQogICAgICAgIGF0IG9yZy5hcGFjaGUuZHJpbGwuZXhlYy5ycGMuUnBjQnVz JEluYm91bmRIYW5kbGVyLmRlY29kZShScGNCdXMuamF2YToyOTgpIFtkcmlsbC1ycGMtMS40LjAu amFyOjEuNC4wXQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLmRyaWxsLmV4ZWMucnBjLlJwY0J1cyRJ bmJvdW5kSGFuZGxlci5kZWNvZGUoUnBjQnVzLmphdmE6MjY5KSBbZHJpbGwtcnBjLTEuNC4wLmph cjoxLjQuMF0NCiAgICAgICAgYXQgaW8ubmV0dHkuaGFuZGxlci5jb2RlYy5NZXNzYWdlVG9NZXNz YWdlRGVjb2Rlci5jaGFubmVsUmVhZChNZXNzYWdlVG9NZXNzYWdlRGVjb2Rlci5qYXZhOjg5KSBb bmV0dHktY29kZWMtNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmluYWxdDQogICAgICAgIGF0IGlv Lm5ldHR5LmNoYW5uZWwuQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRleHQuaW52b2tlQ2hhbm5l bFJlYWQoQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRleHQuamF2YTozMzkpIFtuZXR0eS10cmFu c3BvcnQtNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmluYWxdDQogICAgICAgIGF0IGlvLm5ldHR5 LmNoYW5uZWwuQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRleHQuZmlyZUNoYW5uZWxSZWFkKEFi c3RyYWN0Q2hhbm5lbEhhbmRsZXJDb250ZXh0LmphdmE6MzI0KSBbbmV0dHktdHJhbnNwb3J0LTQu MC4yNy5GaW5hbC5qYXI6NC4wLjI3LkZpbmFsXQ0KICAgICAgICBhdCBpby5uZXR0eS5oYW5kbGVy LnRpbWVvdXQuSWRsZVN0YXRlSGFuZGxlci5jaGFubmVsUmVhZChJZGxlU3RhdGVIYW5kbGVyLmph dmE6MjU0KSBbbmV0dHktaGFuZGxlci00LjAuMjcuRmluYWwuamFyOjQuMC4yNy5GaW5hbF0NCiAg ICAgICAgYXQgaW8ubmV0dHkuY2hhbm5lbC5BYnN0cmFjdENoYW5uZWxIYW5kbGVyQ29udGV4dC5p bnZva2VDaGFubmVsUmVhZChBYnN0cmFjdENoYW5uZWxIYW5kbGVyQ29udGV4dC5qYXZhOjMzOSkg W25ldHR5LXRyYW5zcG9ydC00LjAuMjcuRmluYWwuamFyOjQuMC4yNy5GaW5hbF0NCiAgICAgICAg YXQgaW8ubmV0dHkuY2hhbm5lbC5BYnN0cmFjdENoYW5uZWxIYW5kbGVyQ29udGV4dC5maXJlQ2hh bm5lbFJlYWQoQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRleHQuamF2YTozMjQpIFtuZXR0eS10 cmFuc3BvcnQtNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmluYWxdDQogICAgICAgIGF0IGlvLm5l dHR5LmhhbmRsZXIuY29kZWMuTWVzc2FnZVRvTWVzc2FnZURlY29kZXIuY2hhbm5lbFJlYWQoTWVz c2FnZVRvTWVzc2FnZURlY29kZXIuamF2YToxMDMpIFtuZXR0eS1jb2RlYy00LjAuMjcuRmluYWwu amFyOjQuMC4yNy5GaW5hbF0NCiAgICAgICAgYXQgaW8ubmV0dHkuY2hhbm5lbC5BYnN0cmFjdENo YW5uZWxIYW5kbGVyQ29udGV4dC5pbnZva2VDaGFubmVsUmVhZChBYnN0cmFjdENoYW5uZWxIYW5k bGVyQ29udGV4dC5qYXZhOjMzOSkgW25ldHR5LXRyYW5zcG9ydC00LjAuMjcuRmluYWwuamFyOjQu MC4yNy5GaW5hbF0NCiAgICAgICAgYXQgaW8ubmV0dHkuY2hhbm5lbC5BYnN0cmFjdENoYW5uZWxI YW5kbGVyQ29udGV4dC5maXJlQ2hhbm5lbFJlYWQoQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRl eHQuamF2YTozMjQpIFtuZXR0eS10cmFuc3BvcnQtNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmlu YWxdDQogICAgICAgIGF0IGlvLm5ldHR5LmhhbmRsZXIuY29kZWMuQnl0ZVRvTWVzc2FnZURlY29k ZXIuY2hhbm5lbFJlYWQoQnl0ZVRvTWVzc2FnZURlY29kZXIuamF2YToyNDIpIFtuZXR0eS1jb2Rl Yy00LjAuMjcuRmluYWwuamFyOjQuMC4yNy5GaW5hbF0NCiAgICAgICAgYXQgaW8ubmV0dHkuY2hh bm5lbC5BYnN0cmFjdENoYW5uZWxIYW5kbGVyQ29udGV4dC5pbnZva2VDaGFubmVsUmVhZChBYnN0 cmFjdENoYW5uZWxIYW5kbGVyQ29udGV4dC5qYXZhOjMzOSkgW25ldHR5LXRyYW5zcG9ydC00LjAu MjcuRmluYWwuamFyOjQuMC4yNy5GaW5hbF0NCiAgICAgICAgYXQgaW8ubmV0dHkuY2hhbm5lbC5B YnN0cmFjdENoYW5uZWxIYW5kbGVyQ29udGV4dC5maXJlQ2hhbm5lbFJlYWQoQWJzdHJhY3RDaGFu bmVsSGFuZGxlckNvbnRleHQuamF2YTozMjQpIFtuZXR0eS10cmFuc3BvcnQtNC4wLjI3LkZpbmFs Lmphcjo0LjAuMjcuRmluYWxdDQogICAgICAgIGF0IGlvLm5ldHR5LmNoYW5uZWwuQ2hhbm5lbElu Ym91bmRIYW5kbGVyQWRhcHRlci5jaGFubmVsUmVhZChDaGFubmVsSW5ib3VuZEhhbmRsZXJBZGFw dGVyLmphdmE6ODYpIFtuZXR0eS10cmFuc3BvcnQtNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmlu YWxdDQogICAgICAgIGF0IGlvLm5ldHR5LmNoYW5uZWwuQWJzdHJhY3RDaGFubmVsSGFuZGxlckNv bnRleHQuaW52b2tlQ2hhbm5lbFJlYWQoQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRleHQuamF2 YTozMzkpIFtuZXR0eS10cmFuc3BvcnQtNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmluYWxdDQog ICAgICAgIGF0IGlvLm5ldHR5LmNoYW5uZWwuQWJzdHJhY3RDaGFubmVsSGFuZGxlckNvbnRleHQu ZmlyZUNoYW5uZWxSZWFkKEFic3RyYWN0Q2hhbm5lbEhhbmRsZXJDb250ZXh0LmphdmE6MzI0KSBb bmV0dHktdHJhbnNwb3J0LTQuMC4yNy5GaW5hbC5qYXI6NC4wLjI3LkZpbmFsXQ0KICAgICAgICBh dCBpby5uZXR0eS5jaGFubmVsLkRlZmF1bHRDaGFubmVsUGlwZWxpbmUuZmlyZUNoYW5uZWxSZWFk KERlZmF1bHRDaGFubmVsUGlwZWxpbmUuamF2YTo4NDcpIFtuZXR0eS10cmFuc3BvcnQtNC4wLjI3 LkZpbmFsLmphcjo0LjAuMjcuRmluYWxdDQogICAgICAgIGF0IGlvLm5ldHR5LmNoYW5uZWwuZXBv bGwuQWJzdHJhY3RFcG9sbFN0cmVhbUNoYW5uZWwkRXBvbGxTdHJlYW1VbnNhZmUuZXBvbGxJblJl YWR5KEFic3RyYWN0RXBvbGxTdHJlYW1DaGFubmVsLmphdmE6NjE4KSBbbmV0dHktdHJhbnNwb3J0 LW5hdGl2ZS1lcG9sbC00LjAuMjcuRmluYWwtbGludXgteDg2XzY0LmphcjpuYV0NCiAgICAgICAg YXQgaW8ubmV0dHkuY2hhbm5lbC5lcG9sbC5FcG9sbEV2ZW50TG9vcC5wcm9jZXNzUmVhZHkoRXBv bGxFdmVudExvb3AuamF2YTozMjkpIFtuZXR0eS10cmFuc3BvcnQtbmF0aXZlLWVwb2xsLTQuMC4y Ny5GaW5hbC1saW51eC14ODZfNjQuamFyOm5hXQ0KICAgICAgICBhdCBpby5uZXR0eS5jaGFubmVs LmVwb2xsLkVwb2xsRXZlbnRMb29wLnJ1bihFcG9sbEV2ZW50TG9vcC5qYXZhOjI1MCkgW25ldHR5 LXRyYW5zcG9ydC1uYXRpdmUtZXBvbGwtNC4wLjI3LkZpbmFsLWxpbnV4LXg4Nl82NC5qYXI6bmFd DQogICAgICAgIGF0IGlvLm5ldHR5LnV0aWwuY29uY3VycmVudC5TaW5nbGVUaHJlYWRFdmVudEV4 ZWN1dG9yJDIucnVuKFNpbmdsZVRocmVhZEV2ZW50RXhlY3V0b3IuamF2YToxMTEpIFtuZXR0eS1j b21tb24tNC4wLjI3LkZpbmFsLmphcjo0LjAuMjcuRmluYWxdDQogICAgICAgIGF0IGphdmEubGFu Zy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjc0NSkgW25hOjEuNy4wXzcxXQ0KDQpUaGFua3MsDQoN CktldmluDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBLZXZpbiBWZXJob2V2 ZW4gW21haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPG1haWx0bzpLZXZpbi5WZXJob2V2 ZW5AZHMtaXEuY29tPl0NClNlbnQ6IE1vbmRheSwgTWFyY2ggMjEsIDIwMTYgMTE6MzMgQU0NClRv OiBhZGl0eWFraXNob3JlQGdtYWlsLmNvbTxtYWlsdG86YWRpdHlha2lzaG9yZUBnbWFpbC5jb20+ DQpDYzogS3VtaWtvIFlhZGEgPEt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllh ZGFAZHMtaXEuY29tPj47IHVzZXJAZHJpbGwuYXBhY2hlLm9yZzxtYWlsdG86dXNlckBkcmlsbC5h cGFjaGUub3JnPjsgZGV2QGRyaWxsLmFwYWNoZS5vcmc8bWFpbHRvOmRldkBkcmlsbC5hcGFjaGUu b3JnPjsgYWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFp bC5jb20+OyBLaSBLYW5nIDxLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2kuS2FuZ0Bkcy1pcS5j b20+Pg0KU3ViamVjdDogUkU6IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJldHVybiBhbGwgcmVzdWx0 cyBmcm9tIEhCYXNlDQoNClRoYW5rcyBBZGl0eWEsDQoNCkkgYWxzbyBzZWUgdGhhdCB0aGUgYnVn IHdhcyBiYWNrcG9ydGVkIGluIENESCA1LjQuMzogaHR0cHM6Ly9hcmNoaXZlLmNsb3VkZXJhLmNv bS9jZGg1L2NkaC81L2hiYXNlLTEuMC4wLWNkaDUuNC4zLnJlbGVhc2Vub3Rlcy5odG1sLiBJIHRl c3RlZCBEcmlsbCBvbiBDREggdmVyc2lvbiA1LjQuMiwgNS40LjMsIDUuNC43LCBhbmQgNS41LjIg YW5kIHNlZSB0aGUgc2FtZSBiZWhhdmlvci4NCg0KS2V2aW4NCg0KRnJvbTogQWRpdHlhIFttYWls dG86YWRpdHlha2lzaG9yZUBnbWFpbC5jb208bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21haWwuY29t Pl0NClNlbnQ6IE1vbmRheSwgTWFyY2ggMjEsIDIwMTYgMTA6MjYgQU0NClRvOiBLZXZpbiBWZXJo b2V2ZW4gPEtldmluLlZlcmhvZXZlbkBkcy1pcS5jb208bWFpbHRvOktldmluLlZlcmhvZXZlbkBk cy1pcS5jb20+Pg0KQ2M6IEt1bWlrbyBZYWRhIDxLdW1pa28uWWFkYUBkcy1pcS5jb208bWFpbHRv Okt1bWlrby5ZYWRhQGRzLWlxLmNvbT4+OyB1c2VyQGRyaWxsLmFwYWNoZS5vcmc8bWFpbHRvOnVz ZXJAZHJpbGwuYXBhY2hlLm9yZz47IGRldkBkcmlsbC5hcGFjaGUub3JnPG1haWx0bzpkZXZAZHJp bGwuYXBhY2hlLm9yZz47IGFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNl amFzb25AZ21haWwuY29tPjsgS2kgS2FuZyA8S2kuS2FuZ0Bkcy1pcS5jb208bWFpbHRvOktpLkth bmdAZHMtaXEuY29tPj4NClN1YmplY3Q6IFJlOiBEcmlsbCBxdWVyeSBkb2VzIG5vdCByZXR1cm4g YWxsIHJlc3VsdHMgZnJvbSBIQmFzZQ0KDQpTaW5jZSBJIHN1c3BlY3RlZCB0aGF0IGl0IHdhcyBh IGJ1ZyBpbiBIQmFzZSwgSSB0cmllZCBpdCB3aXRoIHRoZSBvcmlnaW5hbCB2ZXJzaW9uIHlvdSBy ZXBvcnRlZCBpbiB0aGUgZmlyc3QgcG9zdCBpbiB0aGlzIHRocmVhZCwgaS5lLiBDREggNS40LjMu DQpJZiBpdCB3YXMgYmFjay1wb3J0ZWQgdG8gNS40LjcsIHVwZ3JhZGluZyBzaG91bGQgZml4IHRo aXMgaXNzdWUuDQoNCk9uIE1vbiwgTWFyIDIxLCAyMDE2IGF0IDEwOjE4IEFNLCBLZXZpbiBWZXJo b2V2ZW4gPEtldmluLlZlcmhvZXZlbkBkcy1pcS5jb208bWFpbHRvOktldmluLlZlcmhvZXZlbkBk cy1pcS5jb20+PG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPG1haWx0bzpLZXZpbi5W ZXJob2V2ZW5AZHMtaXEuY29tPj4+IHdyb3RlOg0KQWRpdHlhLA0KDQpUaGFuayB5b3UgZm9yIHlv dXIgaGVscC4gV2hhdCB2ZXJzaW9uIG9mIENESCBhcmUgeW91IHJ1bm5pbmc/IEkgY29udGFjdGVk IENsb3VkZXJhIGFuZCB0aGV5IHN0YXRlZCB0aGF0IGJ1ZyBIQkFTRS0xMzI2MiBpcyBiYWNrcG9y dGVkIGludG8gQ0RIIDUuNC43Lg0KDQpUaGFua3MsDQoNCktldmluDQoNCkZyb206IEFkaXR5YSBb bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21haWwuY29tPG1haWx0bzphZGl0eWFraXNob3JlQGdtYWls LmNvbT48bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21haWwuY29tPG1haWx0bzphZGl0eWFraXNob3Jl QGdtYWlsLmNvbT4+XQ0KU2VudDogU3VuZGF5LCBNYXJjaCAyMCwgMjAxNiAxMDo0NSBQTQ0KDQpU bzogS3VtaWtvIFlhZGEgPEt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllhZGFA ZHMtaXEuY29tPjxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1pa28uWWFk YUBkcy1pcS5jb20+Pj4NCkNjOiB1c2VyQGRyaWxsLmFwYWNoZS5vcmc8bWFpbHRvOnVzZXJAZHJp bGwuYXBhY2hlLm9yZz48bWFpbHRvOnVzZXJAZHJpbGwuYXBhY2hlLm9yZzxtYWlsdG86dXNlckBk cmlsbC5hcGFjaGUub3JnPj47IGRldkBkcmlsbC5hcGFjaGUub3JnPG1haWx0bzpkZXZAZHJpbGwu YXBhY2hlLm9yZz48bWFpbHRvOmRldkBkcmlsbC5hcGFjaGUub3JnPG1haWx0bzpkZXZAZHJpbGwu YXBhY2hlLm9yZz4+OyBhbHRla3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVzZWph c29uQGdtYWlsLmNvbT48bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0 ZWtydXNlamFzb25AZ21haWwuY29tPj47IEtpIEthbmcgPEtpLkthbmdAZHMtaXEuY29tPG1haWx0 bzpLaS5LYW5nQGRzLWlxLmNvbT48bWFpbHRvOktpLkthbmdAZHMtaXEuY29tPG1haWx0bzpLaS5L YW5nQGRzLWlxLmNvbT4+PjsgS2V2aW4gVmVyaG9ldmVuIDxLZXZpbi5WZXJob2V2ZW5AZHMtaXEu Y29tPG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPjxtYWlsdG86S2V2aW4uVmVyaG9l dmVuQGRzLWlxLmNvbTxtYWlsdG86S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbT4+Pg0KU3ViamVj dDogUmU6IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJldHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNl DQoNCkZpbmFsbHkgbWFuYWdlZCB0byByZXByb2R1Y2UgaXQgd2l0aCBDREggZGlzdHJpYnV0aW9u IChTbyBmYXIgSSB3YXMgdGVzdGluZyB3aXRoIEhCYXNlIDEuMSBkaXN0cmlidXRlZCB3aXRoIE1h cFIsIHdoaWNoIGRvZXMgbm90IGhhdmUgdGhpcyBidWcpLg0KVGhpcyBpcyBlc3NlbnRpYWxseSBh biBIQmFzZSBidWcsIEhCQVNFLTEzMjYyWzFdLCB3aGljaCBoYXMgYmVlbiBmaXhlZCBpbiAxLjAu MSwgMS4xLjAuDQpQbGVhc2UgdXBkYXRlIHlvdXIgSEJhc2UgZGlzdHJpYnV0aW9uLg0KDQpbMV0g aHR0cHM6Ly9pc3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9IQkFTRS0xMzI2Mg0KDQpPbiBU aHUsIE1hciAxNywgMjAxNiBhdCAzOjE5IFBNLCBLdW1pa28gWWFkYSA8S3VtaWtvLllhZGFAZHMt aXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5jb20+PG1haWx0bzpLdW1pa28uWWFkYUBk cy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbT4+PiB3cm90ZToNCkFkaXR5YSwN Cg0KV2hlbiB3ZSB3ZXJlIGV4Y2hhbmdpbmcgdGhlIGVtYWlscywgeW91IG1lbnRpb25lZCB0byBt ZSB0aGF0IHlvdSBkaXNjb3ZlcmVkIGFub3RoZXIgaXNzdWUgaW4gY2FzZSB3aGVyZSB0aGUgdGFi bGUgaXMgc3BpdCBpbnRvIG11bHRpcGxlIHJlZ2lvbnMgYW5kIHRoZSBmaXJzdCByZWdpb24gcmV0 dXJuZWQgdG8gdGhlIGNsaWVudCBkaWQgbm90IGhhdmUgYW55IHJvd3MuICBJIHRoaW5rIHRoaXMg aXNzdWUgaXMgcmVsYXRlZCB0byB0aGUgaXNzdWUgdGhhdCBJ4oCZbSBzZWVpbmcuICBIYXZlIHlv dSBvcGVuZWQgdGhlIEpJUkEgZm9yIHRoaXMgaXNzdWU/ICBIYXZlIHlvdSBpbnZlc3RpZ2F0ZWQv Zml4ZWQgdGhpcyBpc3N1ZT8NCg0KVGhhbmtzDQpLdW1pa28NCg0KRnJvbTogQWRpdHlhIFttYWls dG86YWRpdHlha2lzaG9yZUBnbWFpbC5jb208bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21haWwuY29t PjxtYWlsdG86YWRpdHlha2lzaG9yZUBnbWFpbC5jb208bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21h aWwuY29tPj5dDQpTZW50OiBUaHVyc2RheSwgTWFyY2ggMTcsIDIwMTYgMzowMiBQTQ0KVG86IEt1 bWlrbyBZYWRhIDxLdW1pa28uWWFkYUBkcy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlx LmNvbT48bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllhZGFAZHMt aXEuY29tPj4+DQpDYzogdXNlckBkcmlsbC5hcGFjaGUub3JnPG1haWx0bzp1c2VyQGRyaWxsLmFw YWNoZS5vcmc+PG1haWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc8bWFpbHRvOnVzZXJAZHJpbGwu YXBhY2hlLm9yZz4+OyBkZXZAZHJpbGwuYXBhY2hlLm9yZzxtYWlsdG86ZGV2QGRyaWxsLmFwYWNo ZS5vcmc+PG1haWx0bzpkZXZAZHJpbGwuYXBhY2hlLm9yZzxtYWlsdG86ZGV2QGRyaWxsLmFwYWNo ZS5vcmc+PjsgYWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2VqYXNvbkBn bWFpbC5jb20+PG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVz ZWphc29uQGdtYWlsLmNvbT4+OyBLaSBLYW5nIDxLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2ku S2FuZ0Bkcy1pcS5jb20+PG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2kuS2FuZ0Bk cy1pcS5jb20+Pj47IEtldmluIFZlcmhvZXZlbiA8S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbTxt YWlsdG86S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbT48bWFpbHRvOktldmluLlZlcmhvZXZlbkBk cy1pcS5jb208bWFpbHRvOktldmluLlZlcmhvZXZlbkBkcy1pcS5jb20+Pj4NCg0KU3ViamVjdDog UmU6IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJldHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNlDQoN CkhpIEt1bWlrbywNCg0KSSBoYXZlIHRyaWVkIHRvIHJlcHJvZHVjZSB0aGlzIGxvY2FsbHkgd2l0 aCBBcGFjaGUgMS54IHJlbGVhc2UgYnV0IGhhdmUgZmFpbGVkIHNvIGZhci4NCkZyb20gbXkgbWFp bCBleGNoYW5nZSB3aXRoIEtldmluIG9uIGFub3RoZXIgdGhyZWFkLCBpdCBhcHBlYXJzIHRoYXQg dGhlIEhCYXNlIHNjYW5uZXIgc3RvcHMgcmV0dXJuaW5nIHJvd3MgYWZ0ZXIgYSB3aGlsZSB3aGlj aCBzZWVtIG9kZC4NClByb2JhYmx5IGl0IGlzIHVuaXF1ZSB0byBDREggZGlzdHJpYnV0aW9uLiBJ IGFtIHBsYW5uaW5nIHRvIHNldHVwIGEgc2luZ2xlIG5vZGUgQ0RIIGNsdXN0ZXIgdG8gc2VlIGlm IGl0IEkgY2FuIHJlcHJvZHVjZSBpdCB0aGVyZS4NCg0KT24gVGh1LCBNYXIgMTcsIDIwMTYgYXQg Mjo1NiBQTSwgS3VtaWtvIFlhZGEgPEt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtv LllhZGFAZHMtaXEuY29tPjxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1p a28uWWFkYUBkcy1pcS5jb20+Pj4gd3JvdGU6DQpIZWxsbywNCg0KSSBwcm92aWRlZCBhbGwgaW5m b3JtYXRpb24gdGhhdCB3YXMgcmVxdWVzdGVkOyBob3dldmVyLCBJIGhhdmVuJ3QgaGVhcmQgYmFj ayBhbnl0aGluZyBzaW5jZSBGZWJydWFyeSAyNC4NCg0KSXMgYW55b25lIHRha2luZyBsb29rIGF0 IHRoaXM/ICBBcmUgdGhlcmUgYW55IHdvcmthcm91bmRzPw0KDQpodHRwczovL2lzc3Vlcy5hcGFj aGUub3JnL2ppcmEvYnJvd3NlL0RSSUxMLTQyNzENCg0KVGhhbmtzDQpLdW1pa28NCg0KLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IEFkaXR5YSBbbWFpbHRvOmFkaXR5YWtpc2hvcmVA Z21haWwuY29tPG1haWx0bzphZGl0eWFraXNob3JlQGdtYWlsLmNvbT48bWFpbHRvOmFkaXR5YWtp c2hvcmVAZ21haWwuY29tPG1haWx0bzphZGl0eWFraXNob3JlQGdtYWlsLmNvbT4+XQ0KU2VudDog RnJpZGF5LCBGZWJydWFyeSAxOSwgMjAxNiAxMjo0OCBQTQ0KVG86IHVzZXIgPHVzZXJAZHJpbGwu YXBhY2hlLm9yZzxtYWlsdG86dXNlckBkcmlsbC5hcGFjaGUub3JnPjxtYWlsdG86dXNlckBkcmls bC5hcGFjaGUub3JnPG1haWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc+Pj4NCkNjOiBhbHRla3J1 c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbT48bWFpbHRv OmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNlamFzb25AZ21haWwuY29t Pj47IEtpIEthbmcgPEtpLkthbmdAZHMtaXEuY29tPG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbT48 bWFpbHRvOktpLkthbmdAZHMtaXEuY29tPG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbT4+PjsgS2V2 aW4gVmVyaG9ldmVuIDxLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPG1haWx0bzpLZXZpbi5WZXJo b2V2ZW5AZHMtaXEuY29tPjxtYWlsdG86S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbTxtYWlsdG86 S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbT4+Pg0KU3ViamVjdDogUmU6IERyaWxsIHF1ZXJ5IGRv ZXMgbm90IHJldHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNlDQoNCkhpIEt1bWlrbywNCg0KSSBh cG9sb2dpZXMgZm9yIG5vdCBjaGltaW5nIGluIHVudGlsIG5vdywgY29uc2lkZXJpbmcgdGhhdCBp ZiB0aGVyZSBpcyBhIGJ1ZyBoZXJlIGl0IGlzIG1vc3QgcHJvYmFibHkgcHV0IGluIGJ5IG1lIDop DQoNCkkndmUgYXNzaWduZWQgdGhlIEpJUkEgdG8gbXlzZWxmIGFuZCBnb2luZyB0byB0YWtlIGEg bCBsb29rLg0KDQpXb3VsZCBpdCBiZSBwb3NzaWJsZSBmb3IgeW91IHRvIGVpdGhlciBhdHRhY2gg dG8gdGhlIEpJUkEgb3Igc2VuZCBtZSBwcml2YXRlbHkgdGhlIERyaWxsIHF1ZXJ5IHByb2ZpbGVz IGZvcm0gYm90aCB0aGUgY29ycmVjdCBhbmQgdGhlIGluY29ycmVjdCBleGVjdXRpb25zPw0KDQpS ZWdhcmRzLA0KYWRpdHlhLi4uDQoNCk9uIEZyaSwgRmViIDE5LCAyMDE2IGF0IDEyOjM0IFBNLCBL dW1pa28gWWFkYSA8S3VtaWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1p cS5jb20+PG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRz LWlxLmNvbT4+PiB3cm90ZToNCg0KPiBIZWxsbywNCj4NCj4gRG9lcyBhbnlvbmUgaGF2ZSBhbnkg dXBkYXRlIG9uIHRoaXMgaXNzdWUsDQo+IGh0dHBzOi8vaXNzdWVzLmFwYWNoZS5vcmcvamlyYS9i cm93c2UvRFJJTEwtNDI3MT8gIEFyZSB0aGVyZSBhbnkgcGxhbg0KPiB0aGF0IHRoaXMgd291bGQg YmUgaW52ZXN0aWdhdGVkL2ZpeGVkPw0KPg0KPiBUaGFua3MNCj4gS3VtaWtvDQo+DQo+IC0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEt1bWlrbyBZYWRhDQo+IFttYWlsdG86S3Vt aWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5jb20+PG1haWx0bzpL dW1pa28uWWFkYUBkcy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbT4+XQ0KPiBT ZW50OiBUaHVyc2RheSwgSmFudWFyeSAxNCwgMjAxNiAzOjQ0IFBNDQo+IFRvOiB1c2VyQGRyaWxs LmFwYWNoZS5vcmc8bWFpbHRvOnVzZXJAZHJpbGwuYXBhY2hlLm9yZz48bWFpbHRvOnVzZXJAZHJp bGwuYXBhY2hlLm9yZzxtYWlsdG86dXNlckBkcmlsbC5hcGFjaGUub3JnPj47DQo+IGFsdGVrcnVz ZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNlamFzb25AZ21haWwuY29tPjxtYWlsdG86 YWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5jb20+ Pg0KPiBTdWJqZWN0OiBSRTogRHJpbGwgcXVlcnkgZG9lcyBub3QgcmV0dXJuIGFsbCByZXN1bHRz IGZyb20gSEJhc2UNCj4NCj4gVGhlIHF1ZXJ5IHRpbWUgd2FzIHZlcnkgc2hvcnQgb24gdGhlIG9u ZSB3aXRoIHRoZSBpbmNvcnJlY3QgcmVzdWx0Lg0KPg0KPiBUaGFua3MNCj4gS3VtaWtvDQo+DQo+ IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEphc29uIEFsdGVrcnVzZQ0KPiBb bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNlamFzb25AZ21h aWwuY29tPjxtYWlsdG86YWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2Vq YXNvbkBnbWFpbC5jb20+Pl0NCj4gU2VudDogVGh1cnNkYXksIEphbnVhcnkgMTQsIDIwMTYgMToy NSBQTQ0KPiBUbzogdXNlciA8dXNlckBkcmlsbC5hcGFjaGUub3JnPG1haWx0bzp1c2VyQGRyaWxs LmFwYWNoZS5vcmc+PG1haWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc8bWFpbHRvOnVzZXJAZHJp bGwuYXBhY2hlLm9yZz4+Pg0KPiBTdWJqZWN0OiBGd2Q6IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJl dHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNlDQo+DQo+IFRoYW5rcyBmb3IgdGhlIHVwZGF0ZSwg SSdtIGZvcndhcmRpbmcgeW91ciBtZXNzYWdlIGJhY2sgdG8gdGhlIGxpc3QuDQo+DQo+IEp1c3Qg dG8gY29uZmlybSwgd2FzIHRoZSBxdWVyeSB0aW1lIGxvbmdlciBvbiB0aGUgdGhlIG9uZSB3aXRo IHRoZQ0KPiBpbmNvcnJlY3QgcmVzdWx0PyBJbiB0aGUgaW5jb3JyZWN0IGNhc2UgSSB0aGluayB3 ZSBhcmUganVzdCBtaXNyZWFkaW5nDQo+IHRoZSBIQmFzZSBtZXRhZGF0YSBkdXJpbmcgb3VyIG9w dGltaXphdGlvbiB0byByZXR1cm4gcm93IGNvdW50cw0KPiB3aXRob3V0IHJlYWRpbmcgYW55IGRh dGEuIFRoaXMgc2hvdWxkIGJlIHJlYWxseSBmYXN0LCBhbmQgbm90aWNlYWJseQ0KPiBkaWZmZXJl bnQgdGhhbiBydW5uaW5nIGEgY29tcGxldGUgcXVlcnksIGV2ZW4gd2l0aCBhIHNtYWxsIGRhdGFz ZXQgYXMNCj4gd2UgaGF2ZSB0byByZWFkIGluIHlvdXIgdGFibGUgYW5kIHJ1biBhbiBhZ2dyZWdh dGlvbiBvdmVyIGl0Lg0KPg0KPiBUaGlzIHdvdWxkIGp1c3QgYmUgYSBmaW5hbCBjb25maXJtYXRp b24gb2Ygd2hlcmUgdGhlIGlzc3VlIGlzDQo+IG9jY3VycmluZywgSSB3aWxsIGhvcGVmdWxseSBo YXZlIHRpbWUgc29vbiB0byBnZXQgdGhpcyBmaXhlZCBidXQgSSdtDQo+IHdyYXBwaW5nIHVwIHNv bWUgb3RoZXIgdGhpbmdzIHJpZ2h0IG5vdy4NCj4NCj4NCj4gLS0tLS0tLS0tLSBGb3J3YXJkZWQg bWVzc2FnZSAtLS0tLS0tLS0tDQo+IEZyb206IEt1bWlrbyBZYWRhDQo+IDxLdW1pa28uWWFkYUBk cy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbT48bWFpbHRvOkt1bWlrby5ZYWRh QGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29tPj4+DQo+IERhdGU6IFRodSwg SmFuIDE0LCAyMDE2IGF0IDEyOjUzIFBNDQo+IFN1YmplY3Q6IFJFOiBEcmlsbCBxdWVyeSBkb2Vz IG5vdCByZXR1cm4gYWxsIHJlc3VsdHMgZnJvbSBIQmFzZQ0KPiBUbzogSmFzb24gQWx0ZWtydXNl DQo+IDxhbHRla3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWls LmNvbT48bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNlamFz b25AZ21haWwuY29tPj4+DQo+DQo+DQo+IEphc29uLA0KPg0KPg0KPg0KPiBJ4oCZbSBzb3JyeS4g IE15IHRlc3Rpbmcgd2FzIGluY29ycmVjdCBsYXN0IG5pZ2h0LiAgSeKAmW0gbm90IHN1cmUgd2hh dCBJDQo+IGRpZCBkaWZmZXJlbnRseTsgaG93ZXZlciB5b3VyIGd1ZXNzIHdlcmUgY29ycmVjdC4g IFdoZW4gSSBkaWQgdGhlIG9uZQ0KPiBjb2x1bW4gY291bnQsIHRoZSByb3cgY291bnQgd2FzIGNv cnJlY3QuICBIZXJlIGlzIHRoZSBhZGRpdGlvbmFsIHRlc3RpbmcgcmVzdWx0cy4NCj4NCj4NCj4N Cj4gTXkgY29tcGFueSBoYXMgYmVlbiBpbnZlc3RlZCB0byB1c2UgdGhlIGRyaWxsLCBhbmQgaXTi gJlzIHZlcnkgaW1wb3J0YW50DQo+IGZvciB1cyB0aGF0IHRoaXMgaXMgZml4ZWQuICBMZXQgbWUg a25vdyBpZiBJIGNhbiBkbyBhbnl0aGluZyB0byBnZXQNCj4gdGhpcyBpc3N1ZSB0byBiZSBmaXhl ZC4gIEkgcmVhbGx5IGFwcHJlY2lhdGUgeW91IHRoYXQgeW91IGFyZSBsb29raW5nIGludG8gaXNz dWUhDQo+DQo+IEhiYXNlIHRhYmxlICgxIGNvbHVtbiBmYW1pbHksIDUgY29sdW1ucywgMTAwMDAw MDAgcm93cykNCj4NCj4gQ09VTlQoKikgLSByb3cgY291bnQgaXMgY29ycmVjdA0KPg0KPiAxIGNv bHVtbiBjb3VudCAtIHJvdyBjb3VudCBpcyBjb3JyZWN0DQo+DQo+ICpIYmFzZSB0YWJsZSAoMSBj b2x1bW4gZmFtaWx5LCA2IGNvbHVtbnMsICAxMDAwMDAwMCByb3dzKSoNCj4NCj4gKkNPVU5UKCop IC0gcm93IGNvdW50IGlzIGluY29ycmVjdCAoKipyZXR1cm5lZCA2NzI0IHJvd3MpKg0KPg0KPiAx IGNvbHVtbiBjb3VudCAtIHJvdyBjb3VudCBpcyBjb3JyZWN0DQo+DQo+ICpIYmFzZSB0YWJsZSAo MiBjb2x1bW4gZmFtaWx5LCA2IGNvbHVtbnMgaW4gZWFjaCBjb2x1bW5zIGZhbWlseSwNCj4gMTAw MDAwMDANCj4gcm93cykqDQo+DQo+ICpDT1VOVCgqKSAtIHJvdyBjb3VudCBpcyBpbmNvcnJlY3Qg KHJldHVybmVkIDMzNjIgcm93cykqDQo+DQo+IDEgY29sdW1uIGNvdW50IC0gcm93IGNvdW50IGlz IGNvcnJlY3QNCj4NCj4gSGJhc2UgdGFibGUgKDIgY29sdW1uIGZhbWlseSwgMiBjb2x1bW5zIGlu IGVhY2ggY29sdW1ucyBmYW1pbHksDQo+IDEwMDAwMDAwDQo+IHJvd3MpDQo+DQo+IENPVU5UKCop IC0gcm93IGNvdW50IGlzIGNvcnJlY3QNCj4NCj4gMSBjb2x1bW4gY291bnQgLSByb3cgY291bnQg aXMgY29ycmVjdA0KPg0KPiAqSGJhc2V0YWJsZSAoMiBjb2x1bW4gZmFtaWx5LCA0IGNvbHVtbnMg aW4gb25lIGNvbHVtbiBmYW1pbHkgYW5kIDINCj4gY29sdW1ucyBpbiBvdGhlciBjb2x1bW4gZmFt aWx5LCAxMDAwMDAwMCByb3dzKSoNCj4NCj4gKkNPVU5UKCopIC0gcm93IGNvdW50IGlzIGluY29y cmVjdCAocmV0dXJuZWQgNjcyMyByb3dzKSoNCj4NCj4gMSBjb2x1bW4gY291bnQgLSByb3cgY291 bnQgaXMgY29ycmVjdA0KPg0KPiBIYmFzZXRhYmxlICgyIGNvbHVtbiBmYW1pbHksIDEgY29sdW1u IGluIG9uZSBjb2x1bW4gZmFtaWx5IGFuZCAzDQo+IGNvbHVtbnMgaW4gb3RoZXIgY29sdW1uIGZh bWlseSwgMTAwMDAwMDAgcm93cykNCj4NCj4gQ09VTlQoKikgLSByb3cgY291bnQgaXMgY29ycmVj dA0KPg0KPiAxIGNvbHVtbiBjb3VudCAtIHJvdyBjb3VudCBpcyBjb3JyZWN0DQo+DQo+DQo+DQo+ IFRoYW5rcw0KPg0KPiBLdW1pa28NCj4NCj4NCj4NCj4gKkZyb206KiBLdW1pa28gWWFkYQ0KPiAq U2VudDoqIFdlZG5lc2RheSwgSmFudWFyeSAxMywgMjAxNiA3OjI4IFBNDQo+ICpUbzoqICdKYXNv biBBbHRla3J1c2UnDQo+IDxhbHRla3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVz ZWphc29uQGdtYWlsLmNvbT48bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86 YWx0ZWtydXNlamFzb25AZ21haWwuY29tPj4+DQo+ICpDYzoqIEtpIEthbmcgPEtpLkthbmdAZHMt aXEuY29tPG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbT48bWFpbHRvOktpLkthbmdAZHMtaXEuY29t PG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbT4+PjsgS2V2aW4NCj4gVmVyaG9ldmVuIDwNCj4gS2V2 aW4uVmVyaG9ldmVuQGRzLWlxLmNvbTxtYWlsdG86S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbT48 bWFpbHRvOktldmluLlZlcmhvZXZlbkBkcy1pcS5jb208bWFpbHRvOktldmluLlZlcmhvZXZlbkBk cy1pcS5jb20+Pj4NCj4gKlN1YmplY3Q6KiBSRTogRHJpbGwgcXVlcnkgZG9lcyBub3QgcmV0dXJu IGFsbCByZXN1bHRzIGZyb20gSEJhc2UNCj4NCj4NCj4NCj4gSSBhbHNvIHJ1biB0aGUgcXVlcnkg dG8gZGlzcGxheSBvbmx5IDEgY29sdW1uIHdpdGggbm8gbGltaXQgdG8gdHJ5DQo+IGZvcmNlIGEg ZnVsbCBzY2FuLCBidXQgdGhlIHJlc3VsdCB3YXMgdGhlIHNhbWUsIGp1c3QgMTAwMDAgcm93cw0K PiBzZWxlY3RlZC4gIFdpdGggdGhlIHNhbWUgdGFibGUgKGNvbnRhaW5zIDYgY29sdW1ucyksIEkg cnVuIHRoZSBxdWVyeQ0KPiB0byBkaXNwbGF5IHRoZSByb3dfa2V5LCBhbmQgaXQgZGlzcGxheSBh bGwgcmVjb3JkcywgMTAsMDAwLDAwMCByb3dzLg0KPg0KPg0KPg0KPiAtS3VtaWtvDQo+DQo+DQo+ DQo+ICpGcm9tOiogS3VtaWtvIFlhZGENCj4gKlNlbnQ6KiBXZWRuZXNkYXksIEphbnVhcnkgMTMs IDIwMTYgNzoyNCBQTQ0KPiAqVG86KiAnSmFzb24gQWx0ZWtydXNlJw0KPiA8YWx0ZWtydXNlamFz b25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5jb20+PG1haWx0bzphbHRl a3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbT4+Pg0K PiAqQ2M6KiBLaSBLYW5nIDxLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2kuS2FuZ0Bkcy1pcS5j b20+PG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2kuS2FuZ0Bkcy1pcS5jb20+Pj47 IEtldmluDQo+IFZlcmhvZXZlbiA8DQo+IEtldmluLlZlcmhvZXZlbkBkcy1pcS5jb208bWFpbHRv OktldmluLlZlcmhvZXZlbkBkcy1pcS5jb20+PG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEu Y29tPG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPj4+DQo+ICpTdWJqZWN0OiogUkU6 IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJldHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNlDQo+DQo+ DQo+DQo+IEphc29uDQo+DQo+DQo+DQo+IEkgcnVuIHRoZSBxdWVyeSB0byBkaXNwbGF5IG9ubHkg MSBjb2x1bW4gZm9yIDEwMDAwMCByb3dzLCBhbmQgaXQgb25seQ0KPiByZXR1cm5lZCAxMDAwMCBy b3dzLg0KPg0KPg0KPg0KPiAtS3VtaWtvDQo+DQo+DQo+DQo+ICpGcm9tOiogSmFzb24gQWx0ZWty dXNlDQo+IFttYWlsdG86YWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2Vq YXNvbkBnbWFpbC5jb20+PG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFs dGVrcnVzZWphc29uQGdtYWlsLmNvbT4+IDwNCj4gYWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1h aWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5jb20+PG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFp bC5jb208bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbT4+Pl0NCj4gKlNlbnQ6KiBXZWRu ZXNkYXksIEphbnVhcnkgMTMsIDIwMTYgNjozOSBQTQ0KPiAqVG86KiBLdW1pa28gWWFkYQ0KPiA8 S3VtaWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5jb20+PG1haWx0 bzpLdW1pa28uWWFkYUBkcy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbT4+Pg0K PiAqQ2M6KiBLaSBLYW5nIDxLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2kuS2FuZ0Bkcy1pcS5j b20+PG1haWx0bzpLaS5LYW5nQGRzLWlxLmNvbTxtYWlsdG86S2kuS2FuZ0Bkcy1pcS5jb20+Pj47 IEtldmluDQo+IFZlcmhvZXZlbiA8DQo+IEtldmluLlZlcmhvZXZlbkBkcy1pcS5jb208bWFpbHRv OktldmluLlZlcmhvZXZlbkBkcy1pcS5jb20+PG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEu Y29tPG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPj4+DQo+DQo+ICpTdWJqZWN0Oiog UmU6IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJldHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNlDQo+ DQo+DQo+DQo+IEkga25vdyBpbiBhIG51bWJlciBvZiBjYXNlcyB3ZSBoYXZlIHNwZWNpYWwgb3B0 aW1pemVyIHJ1bGVzIHRoYXQgdHJ5DQo+IHRvIHNraXAgcmVhZGluZyB0aGUgZGF0YXNldCBhbGwg dG9nZXRoZXIgaWYgd2UgaGF2ZSBtZXRhZGF0YSBmb3IgdGhlDQo+IG51bWJlciBvZiByb3dzIGFu ZCBhbGwgdGhhdCBpcyByZXF1ZXN0ZWQgaXMgYSBjb3VudCgqKS4gSSBhc3N1bWUgdGhhdA0KPiB0 aGlzIGlzIHRoZSBjYXNlIHdpdGggSEJhc2UsIGFuZCB0aGlzIG1heSBiZSB3aGVyZSB3ZSBhcmVu J3QgZG9pbmcgc29tZXRoaW5nIGNvcnJlY3RseS4NCj4gQ2FuIHlvdSB0cnkgdG8gcnVuIGEgJ3N1 bScsIG9yIG90aGVyIGFnZ3JlZ2F0ZSBxdWVyeSBvbiBvbmUgb2YgdGhlDQo+IGNvbHVtbnMgdG8g c2VlIGlmIGEgZnVsbCBzY2FuIG9mIHRoZSBkYXRhIGlzIG9wZXJhdGluZyBjb3JyZWN0bHk/DQo+ DQo+DQo+DQo+IE9uIFdlZCwgSmFuIDEzLCAyMDE2IGF0IDY6MjcgUE0sIEt1bWlrbyBZYWRhDQo+ IDxLdW1pa28uWWFkYUBkcy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbT48bWFp bHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29tPj4+ DQo+IHdyb3RlOg0KPg0KPiBUaGFuayB5b3UsIEphc29uIQ0KPg0KPiBMZXQgbWUga25vdyBpZiB5 b3UgbmVlZCBhbnkgaGVscCBvbiB0aGlzLiBJIHdpbGwgYmUgZ2xhZCB0byBoZWxwIG9uDQo+IHJl cHJvIGFuZC9vciB0ZXN0IHRoZSBmaXguDQo+DQo+IFRoYW5rcw0KPiBLdW1pa28NCj4NCj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSmFzb24gQWx0ZWtydXNlDQo+IFttYWls dG86YWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5j b20+PG1haWx0bzphbHRla3J1c2VqYXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVzZWphc29u QGdtYWlsLmNvbT4+XQ0KPiBTZW50OiBXZWRuZXNkYXksIEphbnVhcnkgMTMsIDIwMTYgNjoyNCBQ TQ0KPiBUbzogdXNlciA8dXNlckBkcmlsbC5hcGFjaGUub3JnPG1haWx0bzp1c2VyQGRyaWxsLmFw YWNoZS5vcmc+PG1haWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc8bWFpbHRvOnVzZXJAZHJpbGwu YXBhY2hlLm9yZz4+Pg0KPg0KPiBDYzogQWRpdHlhIEtpc2hvcmUNCj4gPGFkaXR5YWtpc2hvcmVA Z21haWwuY29tPG1haWx0bzphZGl0eWFraXNob3JlQGdtYWlsLmNvbT48bWFpbHRvOmFkaXR5YWtp c2hvcmVAZ21haWwuY29tPG1haWx0bzphZGl0eWFraXNob3JlQGdtYWlsLmNvbT4+PjsgS2V2aW4N Cj4gVmVyaG9ldmVuIDwNCj4gS2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbTxtYWlsdG86S2V2aW4u VmVyaG9ldmVuQGRzLWlxLmNvbT48bWFpbHRvOktldmluLlZlcmhvZXZlbkBkcy1pcS5jb208bWFp bHRvOktldmluLlZlcmhvZXZlbkBkcy1pcS5jb20+Pj4NCj4gU3ViamVjdDogUmU6IERyaWxsIHF1 ZXJ5IGRvZXMgbm90IHJldHVybiBhbGwgcmVzdWx0cyBmcm9tIEhCYXNlDQo+DQo+IFRoYW5rcyBm b3IgZmlsaW5nIHRoZSBpc3N1ZS4gSSBoYXZlbid0IHdvcmtlZCBtdWNoIHdpdGggSEJhc2UsIGJ1 dA0KPiB0aGlzIGlzIGEgY3JpdGljYWwgd3JvbmcgcmVzdWx0cyBpc3N1ZXMsIHNvIEkgd2lsbCBi ZSB0YWtpbmcgYSBsb29rIGF0DQo+IHRoaXMgc29vbiBpZiBubyBvbmUgZWxzZSByYWlzZXMgdGhl aXIgaGFuZC4NCj4NCj4gT24gV2VkLCBKYW4gMTMsIDIwMTYgYXQgNjoyMCBQTSwgS3VtaWtvIFlh ZGENCj4gPEt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29t PjxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5j b20+Pj4NCj4gd3JvdGU6DQo+DQo+ID4gSSBvcGVuZWQgdGhlIGJ1ZyBvbiB0aGlzLiAgVGhlIGRy aWxsIGlzIHJldHVybmluZyB0aGUgY29ycmVjdCByb3dzDQo+ID4gd2hlbiB0aGUgaGJhc2UgY29u dGFpbnMgNSBvciBsZXNzIGNvbHVtbnMsIGJ1dCBub3QgNiBvciBtb3JlIGNvbHVtbnMuDQo+ID4N Cj4gPiBodHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEvYnJvd3NlL0RSSUxMLTQyNzENCj4g Pg0KPiA+IFRoYW5rcw0KPiA+IEt1bWlrbw0KPiA+DQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdl LS0tLS0NCj4gPiBGcm9tOiBLdW1pa28gWWFkYQ0KPiA+IFttYWlsdG86S3VtaWtvLllhZGFAZHMt aXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5jb20+PG1haWx0bzpLdW1pa28uWWFkYUBk cy1pcS5jb208bWFpbHRvOkt1bWlrby5ZYWRhQGRzLWlxLmNvbT4+XQ0KPiA+IFNlbnQ6IFdlZG5l c2RheSwgSmFudWFyeSAxMywgMjAxNiA0OjUyIFBNDQo+ID4gVG86IHVzZXJAZHJpbGwuYXBhY2hl Lm9yZzxtYWlsdG86dXNlckBkcmlsbC5hcGFjaGUub3JnPjxtYWlsdG86dXNlckBkcmlsbC5hcGFj aGUub3JnPG1haWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc+Pg0KPiA+IENjOiBBZGl0eWEgS2lz aG9yZQ0KPiA+IDxhZGl0eWFraXNob3JlQGdtYWlsLmNvbTxtYWlsdG86YWRpdHlha2lzaG9yZUBn bWFpbC5jb20+PG1haWx0bzphZGl0eWFraXNob3JlQGdtYWlsLmNvbTxtYWlsdG86YWRpdHlha2lz aG9yZUBnbWFpbC5jb20+Pj47IEtldmluDQo+ID4gVmVyaG9ldmVuIDwNCj4gPiBLZXZpbi5WZXJo b2V2ZW5AZHMtaXEuY29tPG1haWx0bzpLZXZpbi5WZXJob2V2ZW5AZHMtaXEuY29tPjxtYWlsdG86 S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbTxtYWlsdG86S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNv bT4+Pg0KPiA+IFN1YmplY3Q6IFJFOiBEcmlsbCBxdWVyeSBkb2VzIG5vdCByZXR1cm4gYWxsIHJl c3VsdHMgZnJvbSBIQmFzZQ0KPiA+DQo+ID4gV2UgYXJlIHVzaW5nIHRoZSBIQmFzZSAxLjAuMC4g JiBDREggNS40LiAgSSBmb3VuZCBvdXQgdGhlIGNvcnJlY3QNCj4gPiByb3cgY291bnQgcmV0dXJu ZWQgd2hlbiB0aGUgSGJhc2UgdGFibGUgY29udGFpbnMgb25seSAxIGNvbHVtbg0KPiA+IGZhbWls eSwgMSBjb2x1bW4sIGJ1dCB0aGUgaW5jb3JyZWN0IHJvdyBjb3VudCBpcyByZXR1cm5lZCBmb3Ig dGhlDQo+ID4gSGJhc2UgdGFibGUgY29udGFpbnMgMSBjb2x1bW4gZmFtaWx5LCA2IGNvbHVtbnMu DQo+ID4NCj4gPiBUaGlzIGxvb2tzIGxpa2UgdGhlIERyaWxsIGlzc3VlLiAgSGFzIGFueW9uZSBm b3VuZCBhbnkgd29ya2Fyb3VuZD8NCj4gPg0KPiA+IFRoYW5rcw0KPiA+IEt1bWlrbw0KPiA+DQo+ ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBBYmhpc2hlayBHaXJpc2gN Cj4gPiBbbWFpbHRvOmFiaGlzaGVrLmdpcmlzaEBnbWFpbC5jb208bWFpbHRvOmFiaGlzaGVrLmdp cmlzaEBnbWFpbC5jb20+PG1haWx0bzphYmhpc2hlay5naXJpc2hAZ21haWwuY29tPG1haWx0bzph Ymhpc2hlay5naXJpc2hAZ21haWwuY29tPj5dDQo+ID4gU2VudDogVHVlc2RheSwgSmFudWFyeSAx MiwgMjAxNiA2OjUxIFBNDQo+ID4gVG86IHVzZXIgPHVzZXJAZHJpbGwuYXBhY2hlLm9yZzxtYWls dG86dXNlckBkcmlsbC5hcGFjaGUub3JnPjxtYWlsdG86dXNlckBkcmlsbC5hcGFjaGUub3JnPG1h aWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc+Pj4NCj4gPiBDYzogQWRpdHlhIEtpc2hvcmUNCj4g PiA8YWRpdHlha2lzaG9yZUBnbWFpbC5jb208bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21haWwuY29t PjxtYWlsdG86YWRpdHlha2lzaG9yZUBnbWFpbC5jb208bWFpbHRvOmFkaXR5YWtpc2hvcmVAZ21h aWwuY29tPj4+DQo+ID4gU3ViamVjdDogUmU6IERyaWxsIHF1ZXJ5IGRvZXMgbm90IHJldHVybiBh bGwgcmVzdWx0cyBmcm9tIEhCYXNlDQo+ID4NCj4gPiBXZWxsLCB0aGUgbWFqb3IgdmVyc2lvbiBk aW4ndCBjaGFuZ2UgaWYgSSByZW1lbWJlciBpdCByaWdodCwgaGVuY2UNCj4gPiBkaWQgbm90IHNo YXJlIHRoZSBpbmZvIGluIG15IHByZXZpb3VzIG1haWwuIEknbSBvbiBIQmFzZSAxLjEuMSByaWdo dA0KPiA+IG5vdyBhbmQgZG9uJ3Qgc2VlIHRoZSBpc3N1ZS4gQWxzbywgSSBhbSBvbiBhIE1hcFIg c2V0dXAsIHdoaWNoIG1pZ2h0DQo+ID4gbm90IGJlIGNvbXBhcmFibGUgd2l0aCB0aGVpciBDREgg c2V0dXBzLg0KPiA+DQo+ID4gT24gVHVlLCBKYW4gMTIsIDIwMTYgYXQgNTo1MCBQTSwgSmFzb24g QWx0ZWtydXNlDQo+ID4gPGFsdGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNl amFzb25AZ21haWwuY29tPjxtYWlsdG86YWx0ZWtydXNlamFzb25AZ21haWwuY29tPG1haWx0bzph bHRla3J1c2VqYXNvbkBnbWFpbC5jb20+Pg0KPiA+ID4NCj4gPiB3cm90ZToNCj4gPg0KPiA+ID4g QWJoaXNoZWssDQo+ID4gPg0KPiA+ID4gV2hhdCB2ZXJzaW9uIG9mIEhCYXNlIGRpZCB5b3UgaGF2 ZSB0aGUgcHJvYmxlbSB3aXRoLCBhbmQgd2hhdA0KPiA+ID4gdmVyc2lvbiBkaWQgeW91IHVwZ3Jh ZGUgdG8gdGhhdCBzb2x2ZWQgdGhlIHByb2JsZW0/IEkgYXNzdW1lIHRoaXMNCj4gPiA+IHdvdWxk IGJlIHVzZWZ1bCBpbmZvcm1hdGlvbiB0byBjb21wYXJlIHlvdXIgc2V0dXAgd2l0aCBLZXZpbidz IGFuZA0KPiBLdW1pa28ncy4NCj4gPiA+DQo+ID4gPiAtIEphc29uDQo+ID4gPg0KPiA+ID4gT24g VHVlLCBKYW4gMTIsIDIwMTYgYXQgMTA6NDEgQU0sIEFiaGlzaGVrIEdpcmlzaCA8DQo+ID4gPiBh Ymhpc2hlay5naXJpc2hAZ21haWwuY29tPG1haWx0bzphYmhpc2hlay5naXJpc2hAZ21haWwuY29t PjxtYWlsdG86YWJoaXNoZWsuZ2lyaXNoQGdtYWlsLmNvbTxtYWlsdG86YWJoaXNoZWsuZ2lyaXNo QGdtYWlsLmNvbT4+DQo+ID4gPiA+IHdyb3RlOg0KPiA+ID4NCj4gPiA+ID4gSSBoaXQgYSB2ZXJ5 IHNpbWlsYXIgaXNzdWUgcmVjZW50bHkuIFZpYSBIQmFzZSBzaGVsbCwgaSB3YXMgYWJsZQ0KPiA+ ID4gPiB0byBmZXRjaCBhbGwgcmVjb3Jkcywgd2hlcmVhcyBJIHdhcyBvbmx5IGFibGUgdG8gc2Vl IGEgc21hbGwNCj4gPiA+ID4gc3Vic2V0IG9mIHJlY29yZHMNCj4gPiA+IHdoZW4NCj4gPiA+ID4g cXVlcmllZCBmcm9tIERyaWxsLiBFYWNoIHRpbWUgSSBpbnNlcnRlZCAxMDAwIHJlY29yZHMsIG9u bHkNCj4gPiA+ID4gYWJvdXQNCj4gPiA+ID4gNTAgb2YgdGhvc2Ugd291bGQgc2hvdyB1cC4NCj4g PiA+ID4NCj4gPiA+ID4gQWx0aG91Z2ggSSBjb3VsZCByZXBybycgdGhlIHByb2JsZW0gY29uc2lz dGVudGx5LCBpdCB3YXMNCj4gPiA+ID4gcmVzb2x2ZWQgb25jZSBpIHVwZGF0ZWQgbXkgSGFkb29w IHNldHVwLiBNeSBndWVzcyBpcyB0aGF0IGl0IHdhcw0KPiA+ID4gPiBhIEhCYXNlIGJ1ZyB3aGlj aCBnb3QgcmVzb2x2ZWQuIEFsdGhvdWdoIHN0cmFuZ2UgYXMgaXQgc2VlbXMsIGl0DQo+ID4gPiA+ IG1pZ2h0IG5vdCBoYXZlIHRvIGRvIHdpdGgNCj4gPiA+IERyaWxsDQo+ID4gPiA+IGl0c2VsZi4N Cj4gPiA+ID4NCj4gPiA+ID4gLUFiaGlzaGVrDQo+ID4gPiA+DQo+ID4gPiA+IE9uIFR1ZSwgSmFu IDEyLCAyMDE2IGF0IDc6NTIgQU0sIEphc29uIEFsdGVrcnVzZSA8DQo+ID4gPiBhbHRla3J1c2Vq YXNvbkBnbWFpbC5jb208bWFpbHRvOmFsdGVrcnVzZWphc29uQGdtYWlsLmNvbT48bWFpbHRvOmFs dGVrcnVzZWphc29uQGdtYWlsLmNvbTxtYWlsdG86YWx0ZWtydXNlamFzb25AZ21haWwuY29tPj4N Cj4gPiA+ID4gPg0KPiA+ID4gPiB3cm90ZToNCj4gPiA+ID4NCj4gPiA+ID4gPiBJJ20gbm90IHN1 cmUgd2h5IHRoaXMgaXMgaGFwcGVuaW5nLCB3ZSBoYXZlIHRlc3RzIGluIG91cg0KPiA+ID4gPiA+ IGF1dG9tYXRlZA0KPiA+ID4gc3VpdGUNCj4gPiA+ID4gPiB0aGF0IEkgYmVsaWV2ZSBydW4gc29t ZSBwcmV0dHkgbGFyZ2UgcXVlcmllcyBhZ2FpbnN0IEhiYXNlIGFuZA0KPiA+ID4gPiA+IHZlcmlm eQ0KPiA+ID4gdGhlDQo+ID4gPiA+ID4gcmVzdWx0cy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEFk aXR5YSwgZG8geW91IGhhdmUgc29tZSB0aW1lIGF2YWlsYWJsZSB0byB0cnkgdG8gcmVwcm9kdWNl DQo+ID4gPiA+ID4gdGhpcyBhbmQgZGlhZ25vc2UgdGhlIHByb2JsZW0/DQo+ID4gPiA+ID4NCj4g PiA+ID4gPiBPbiBXZWQsIEphbiA2LCAyMDE2IGF0IDI6MDMgUE0sIEt1bWlrbyBZYWRhDQo+ID4g PiA+ID4gPEt1bWlrby5ZYWRhQGRzLWlxLmNvbTxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29t PjxtYWlsdG86S3VtaWtvLllhZGFAZHMtaXEuY29tPG1haWx0bzpLdW1pa28uWWFkYUBkcy1pcS5j b20+Pj4NCj4gPiA+ID4gd3JvdGU6DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IEknbSBoYXZpbmcg dGhlIHNhbWUgaXNzdWUuICBJcyB0aGVyZSBhbnkgd29ya2Fyb3VuZCBmb3IgdGhpcz8NCj4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiBUaGFua3MNCj4gPiA+ID4gPiA+IEt1bWlrbw0KPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+ID4gPiBG cm9tOiBLZXZpbiBWZXJob2V2ZW4NCj4gPiA+ID4gPiA+IFttYWlsdG86S2V2aW4uVmVyaG9ldmVu QGRzLWlxLmNvbTxtYWlsdG86S2V2aW4uVmVyaG9ldmVuQGRzLWlxLmNvbT48bWFpbHRvOktldmlu LlZlcmhvZXZlbkBkcy08bWFpbHRvOktldmluLlZlcmhvZXZlbkBkcy0+DQo+ID4gPiA+ID4gPiBp cS5jb208aHR0cDovL2lxLmNvbT4+XQ0KPiA+ID4gPiA+ID4gU2VudDogTW9uZGF5LCBEZWNlbWJl ciAyMSwgMjAxNSAxMDozNyBBTQ0KPiA+ID4gPiA+ID4gVG86IHVzZXJAZHJpbGwuYXBhY2hlLm9y ZzxtYWlsdG86dXNlckBkcmlsbC5hcGFjaGUub3JnPjxtYWlsdG86dXNlckBkcmlsbC5hcGFjaGUu b3JnPG1haWx0bzp1c2VyQGRyaWxsLmFwYWNoZS5vcmc+Pg0KPiA+ID4gPiA+ID4gU3ViamVjdDog RHJpbGwgcXVlcnkgZG9lcyBub3QgcmV0dXJuIGFsbCByZXN1bHRzIGZyb20gSEJhc2UNCj4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiBXZSBoYXZlIGEgcHJvYmxlbSB3aGVyZSBhIERyaWxsIHF1ZXJ5 IGFnYWluc3QgSEJhc2UgZG9lcyBub3QNCj4gPiA+ID4gPiA+IHJldHVybg0KPiA+ID4gYWxsDQo+ ID4gPiA+ID4gPiByZXN1bHRzLiBUaGUgZm9sbG93aW5nIHF1ZXJ5IHNob3VsZCByZXR1cm4gb3Zl ciAxMDAsMDAwDQo+ID4gPiA+ID4gPiByb3dzLCBidXQgd2UNCj4gPiA+ID4gb25seQ0KPiA+ID4g PiA+ID4gZ2V0IGFib3V0IDEsMDMwIGJhY2suDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gU0VM RUNUIHJvd19rZXkgRlJPTSBgaGJhc2VgLmBjdXN0b21lcl9zdGFnZWRgIFdIRVJFDQo+ID4gPiA+ ID4gPiBjdXN0b21lcl9udW1iZXIgPQ0KPiA+ID4gPiA4MDANCj4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiBJZiB3ZSBzY2FuIGRpcmVjdGx5IHVzaW5nIHRoZSBoYmFzZSBzaGVsbCB3ZSBzZWUgb3Zl cg0KPiA+ID4gPiA+ID4gMTAwLDAwMCByb3dzLA0KPiA+ID4gYnV0DQo+ID4gPiA+ID4gPiB0aGUg c2FtZSBEcmlsbCBxdWVyeSBkb2VzIG5vdCByZXR1cm4gYSBmcmFjdGlvbiBvZiB0aGUNCj4gPiA+ ID4gPiA+IGV4cGVjdGVkDQo+ID4gPiA+IHJlc3VsdHMuDQo+ID4gPiA+ID4gV2UNCj4gPiA+ID4g PiA+IGhhdmUgYWxzbyBydW4gYSBjb3VudCBhZ2FpbnN0IHRoZSB0YWJsZSBhbmQgRHJpbGwgcmV0 dXJucw0KPiA+ID4gPiA+ID4gdGhlIHNhbWUNCj4gPiA+ID4gMSwwMzANCj4gPiA+ID4gPiA+IG51 bWJlciwgd2hpY2ggaXMgZmFyIGxlc3MgdGhhbiBleHBlY3QuIFdoYXQgY291bGQgYmUgZ29pbmcg d3Jvbmc/DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gV2UgYXJlIHJ1bm5pbmcgRHJpbGwgMS4y IG9uIFVidW50dSAxNC4wNCBhZ2FpbnN0IENESCA1LjQuMw0KPiA+ID4gPiA+ID4gKEhCYXNlDQo+ ID4gPiAxLjApLg0KPiA+ID4gPiA+IFdlDQo+ID4gPiA+ID4gPiBydW4gSEJhc2Ugb24gc2l4IFJl Z2lvblNlcnZlcnMsIHRoZSB0YWJsZSBoYXMgYWJvdXQgMS4zDQo+ID4gPiA+ID4gPiBiaWxsaW9u DQo+ID4gcm93cy4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBUaGFua3MsDQo+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gS2V2aW4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ DQo+ID4gPiA+DQo+ID4gPg0KPiA+DQo+DQoNCg0KDQo= --_000_SN1PR0401MB17924B0D3CA1871C98CFC872BA810SN1PR0401MB1792_--