Return-Path: X-Original-To: apmail-storm-user-archive@minotaur.apache.org Delivered-To: apmail-storm-user-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 546DE184E5 for ; Fri, 19 Feb 2016 16:54:16 +0000 (UTC) Received: (qmail 50212 invoked by uid 500); 19 Feb 2016 16:54:14 -0000 Delivered-To: apmail-storm-user-archive@storm.apache.org Received: (qmail 50164 invoked by uid 500); 19 Feb 2016 16:54:14 -0000 Mailing-List: contact user-help@storm.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@storm.apache.org Delivered-To: mailing list user@storm.apache.org Received: (qmail 50154 invoked by uid 99); 19 Feb 2016 16:54:14 -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; Fri, 19 Feb 2016 16:54:14 +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 F009A180518 for ; Fri, 19 Feb 2016 16:54:13 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -5.451 X-Spam-Level: X-Spam-Status: No, score=-5.451 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.329, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=jpmchase.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id uBIaKWJZPJAE for ; Fri, 19 Feb 2016 16:54:10 +0000 (UTC) Received: from sj1.jpmchase.com (sj1.jpmchase.com [159.53.110.137]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 74E2E5FAD4 for ; Fri, 19 Feb 2016 16:54:10 +0000 (UTC) Received: from se4.svr.bankone.net (se4.svr.bankone.net [155.180.234.125]) by sj1.jpmchase.com (Switch-3.4.4/Switch-3.4.4) with ESMTP id u1JGs3G7019976 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Fri, 19 Feb 2016 16:54:03 GMT X-DKIM: OpenDKIM Filter v2.1.3 sj1.jpmchase.com u1JGs3G7019976 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jpmchase.com; s=d2048-1; t=1455900843; bh=pSLdD4KhZJQLw1yZP5S6SKQ8/BL72/joVJoInpQciec=; h=From:To:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:content-transfer-encoding:MIME-Version; b=Wjk8j12FQQPvTTX2I/kNF1VM2XWaHc64ixpRacKOxR9SlmLybKe6vN1kf+Frb/oYe lEgwWD73vsgb/4M/M70GrhXIU+km750AdHveX5KzsECSBbh2NOwaccQ2sIco2D2/w4 8Pcb9CDYhGb1YCrZTcNIuVCVaZh3M88GtFSKzcfAmJWGctqZ57fHj32xN3PDE3ej56 ZMdPkC4vE4ZEq21GLNCoxd4jW5g8xYWWIEDSoFmoohZ4e0yDzRHGauPkqwYyv8Wk1h ak5jTVnNBDc2tZhuHEWpDcKkKH2eXnapIzGnWncE/U8y+bynrgtaaflWDq6C2gvmms m0hpZugroBKXg== Received: from smgj3.svr.us.jpmchase.net (smgj3.svr.us.jpmchase.net [169.89.220.172]) by se4.svr.bankone.net (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id u1JGraLM027678 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Fri, 19 Feb 2016 16:54:02 GMT X-AuditID: a959dcac-f79d76d0000060ca-c0-56c748a7ecb8 Received: from SCAHHB001.exchad.jpmchase.net ( [155.180.52.13]) by smgj3.svr.us.jpmchase.net (Symantec Messaging Gateway) with SMTP id 64.48.24778.7A847C65; Fri, 19 Feb 2016 16:54:00 +0000 (GMT) Received: from SBECDI005.exchad.jpmchase.net (169.83.4.241) by SCAHHB001.exchad.jpmchase.net (169.83.186.249) with Microsoft SMTP Server (TLS) id 14.3.210.3; Fri, 19 Feb 2016 11:53:59 -0500 Received: from SBECMX004.exchad.jpmchase.net ([169.254.8.190]) by SBECDI005.exchad.jpmchase.net ([169.83.4.241]) with mapi id 14.03.0210.003; Fri, 19 Feb 2016 11:53:58 -0500 From: "Kazansky, Michael" To: "user@storm.apache.org" Subject: RE: submit topology using NimbusClient Thread-Topic: submit topology using NimbusClient Thread-Index: AdFqgOdjS+3W4Kg5Sb+eFOkjxr4ATAAOqgmAAApntWAAEFSygAADyuaw Date: Fri, 19 Feb 2016 16:53:57 +0000 Message-ID: References: <56C6E821.10208@apache.org> In-Reply-To: <56C6E821.10208@apache.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.196.144.186] x-jpmc-sendertrust: JPMC Content-Type: text/plain; charset="utf-8" content-transfer-encoding: base64 MIME-Version: 1.0 X-DLP-FWD: Yes X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrLKsWRmVeSWpSXmKPExsUye4sJr+4Kj+NhBldmill8efmM1YHRY+Gi JewBjFENjDaJeXn5JYklqQopqcXJtkoumcXJOYmZualFCroKXgW5yRmJxal6yfm5SgqZKbZK xkoKBTmJyam5qXkltkqJBQWpeSlKdlwKGMAGqCwzTyE1Lzk/JTMv3VbJM9hf18LC1FLXUMku JCOzWAFoZm5pXsI9hYyXvXPYCzbMZKzo3dDG2sC4YypjFyMHh4SAicS0wwpdjJxAppjEhXvr 2boYuTiEBI4wSszevogFwjnIKLHm/llGCGcjo8S8pzfYQVrYBCwlFv+5wwxiiwgYS3xvP84C YgsL6Eu0LjvODLJBRMBA4vVOI4gSN4nP62exgdgsAqoSr8/3soLYvAIhEj8eL2KHmN/CJNF/ 4wXYHE4BDYnOppdMIDYj0HnfT60Bs5kFxCVuPZnPBHG2gMSSPeeZIWxRiZeP/7FC2EoSLz4/ gIpLSNx4PJsN5B5mAU2J9bv0IcYoSkzpfsgOcYOgxMmZT8DWCgloSVxeegMaQHwS29uqJzBK zkKyeBbCoFlIBs1CMmgBI8sqRsni3PQsY73isiK90mK9LFhM56WWbGIEppqVkXfW7GC822d7 iFGAg1GJh7dC71iYEGtiWXFl7iFGCQ5mJRHe90bHw4R4UxIrq1KL8uOLSnNSiw8xVgHDbyKz lGhyPjAN5pXEGxqbWRgaGBtZGpgbGVFFWEmcN4lrX5iQQDow2WanphakFsEsZ+LglGpgtJb8 qn/o2Y2Masms5OCVmXevPVr/47TLro+Hr5gF/fre6pQzf0XupGNLVTe9ma6wu/XKOgVV5286 q87INE/pXvpc5cGXXp/ipoZJirXb8rKOOP75/nzysWlpgd2S3CcTp3U81cu08+iY2c729n/b lunZZRtvGTr3vD/vUXbuS8rtXTGsE0qjriqxFGckGmoxFxUnAgBU/IzDkAMAAA== VGhhbmtzIE1hdHRoaWFzIGJ1dCBpdCBkaWQgbm90IGhlbHANCg0KSGVyZSBpcyB0aGUgY29k ZQ0KDQpCb29sZWFuIHN1Y2Nlc3MgPSBmYWxzZTsNCiAgICAgICAgdHJ5IHsgICAgICAgICAg IA0KICAgICAgICAgICAgLy91cGRhdGUgc3Rvcm0gcHJvcGVydGllcyB0byBoYXZlIGR5bmFt aWNhbGx5IGNoYW5nZWQgbnVtYmVyIG9mIHNwb3V0cw0KICAgICAgICAgICAgQ29uZmlnIGNv bmYgPSBuZXcgQ29uZmlnKCk7DQogICAgICAgICAgICBUb3BvbG9neUJ1aWxkZXIgdG9wb0J1 aWxkZXIgPSBuZXcgVG9wb2xvZ3lCdWlsZGVyKCk7DQogICAgICAgICAgICBjb25mLnB1dChD b25maWcuTklNQlVTX0hPU1QsIHRvcG9sb2d5TW9kZWwuZ2V0SG9zdCgpKTsNCiAgICAgICAg ICAgIGNvbmYuc2V0RGVidWcodHJ1ZSk7DQogICAgICAgICAgICBNYXAgc3Rvcm1Db25mID0g VXRpbHMucmVhZFN0b3JtQ29uZmlnKCk7DQogICAgICAgICAgICBzdG9ybUNvbmYucHV0KENv bmZpZy5OSU1CVVNfSE9TVCwgdG9wb2xvZ3lNb2RlbC5nZXRIb3N0KCkpOw0KICAgICAgICAg ICAgDQogICAgICAgICAgICAvLyB0b3BvbG9neSBzdWJtaXQNCiAgICAgICAgICAgIC8vTmlt YnVzQ2xpZW50IG5pbWJ1cyA9IG5ldyBOaW1idXNDbGllbnQoc3Rvcm1Db25mLCB0b3BvbG9n eU1vZGVsLmdldEhvc3QoKSwgbnVsbCAhPSB0b3BvbG9neU1vZGVsLmdldE5pbWJ1c1BvcnQo KSA/IHRvcG9sb2d5TW9kZWwuZ2V0TmltYnVzUG9ydCgpIDogNjYyNyk7DQogICAgICAgICAg ICAvL1N0cmluZyB1cGxvYWRlZEphckxvY2F0aW9uID0gU3Rvcm1TdWJtaXR0ZXIuc3VibWl0 SmFyKHN0b3JtQ29uZiwgdG9wb2xvZ3lNb2RlbC5nZXRBcnRpZmFjdFVybCgpKTsNCiAgICAg ICAgICAgIC8vbG9jYWxqYXINCiAgICAgICAgICAgIFN5c3RlbS5zZXRQcm9wZXJ0eSgic3Rv cm0uamFyIiwgdG9wb2xvZ3lNb2RlbC5nZXRBcnRpZmFjdFVybCgpKTsNCiAgICAgICAgICAg IC8vU3RyaW5nIGpzb25Db25mID0gSlNPTlZhbHVlLnRvSlNPTlN0cmluZyhzdG9ybUNvbmYp Ow0KICAgICAgICAgICAgLy9sb2cuaW5mbygiUkVtb3RlIGphciAiICsgdG9wb2xvZ3lNb2Rl bC5nZXRBcnRpZmFjdFVybCgpKTsNCiAgICAgICAgICAgIC8vU3Rvcm1Ub3BvbG9neSB0b3Bv bG9neSA9IGJ1aWxkVG9wbG9neSh0b3BvbG9neU1vZGVsKTsNCiAgICAgICAgICAgIC8vU3Vi bWl0T3B0aW9ucyBvcHRpb25zID0gbmV3IFN1Ym1pdE9wdGlvbnMoKTsNCiAgICAgICAgICAg IC8vbmltYnVzLmdldENsaWVudCgpLnN1Ym1pdFRvcG9sb2d5KHRvcG9sb2d5TW9kZWwuZ2V0 VG9wb2xvZ3lOYW1lKCksIHVwbG9hZGVkSmFyTG9jYXRpb24sIGpzb25Db25mLCB0b3BvQnVp bGRlci5jcmVhdGVUb3BvbG9neSgpKTsNCiAgICAgICAgICAgIFN0b3JtU3VibWl0dGVyLnN1 Ym1pdFRvcG9sb2d5KHRvcG9sb2d5TW9kZWwuZ2V0VG9wb2xvZ3lOYW1lKCksIHN0b3JtQ29u ZiwgdG9wb0J1aWxkZXIuY3JlYXRlVG9wb2xvZ3koKSk7DQogICAgICAgICAgICBzdWNjZXNz ID0gdHJ1ZTsNCg0KDQogIExvZyBmcm9tIEpVbml0VGVzdA0KDQogIFsyMDE2LTAyLTE5IDEx OjIyOjM0LDA1OV0gW21haW5dIEphciBub3QgdXBsb2FkZWQgdG8gbWFzdGVyIHlldC4gU3Vi bWl0dGluZyBqYXIuLi4NClsyMDE2LTAyLTE5IDExOjIyOjM0LDE0M10gW21haW5dIFVwbG9h ZGluZyB0b3BvbG9neSBqYXIgPHBhdGhfdG9famFyPi90YXJnZXQvdGVzdC1jbGFzc2VzL3Np bi1leGFtcGxlLmphciB0byBhc3NpZ25lZCBsb2NhdGlvbjogPHJlbW90ZV9uaW1idXNfcGF0 aD4vbmltYnVzL2luYm94L3N0b3JtamFyLWYwYjY5OWM2LTg4ZjctNDJjYS1hMGE5LTk1ZDlj YWQ2MWMxOC5qYXINClsyMDE2LTAyLTE5IDExOjIyOjQzLDE2OF0gW21haW5dIFN1Y2Nlc3Nm dWxseSB1cGxvYWRlZCB0b3BvbG9neSBqYXIgdG8gYXNzaWduZWQgbG9jYXRpb246IDxyZW1v dGVfbmltYnVzX3BhdGg+L25pbWJ1cy9pbmJveC9zdG9ybWphci1mMGI2OTljNi04OGY3LTQy Y2EtYTBhOS05NWQ5Y2FkNjFjMTguamFyDQpbMjAxNi0wMi0xOSAxMToyMjo0MywxNjldIFtt YWluXSBTdWJtaXR0aW5nIHRvcG9sb2d5IGV4YW1wbGUtdG9wb2xvZ3ktMSBpbiBkaXN0cmli dXRlZCBtb2RlIHdpdGggY29uZiB7InN0b3JtLm1lc3NhZ2luZy5uZXR0eS5taW5fd2FpdF9t cyI6MTAwLCJ0b3BvbG9neS5lbmFibGUubWVzc2FnZS50aW1lb3V0cyI6dHJ1ZSwic3Rvcm0u bWVzc2FnaW5nLm5ldHR5LmJ1ZmZlcl9zaXplIjo1MjQyODgwLCJzdG9ybS5tZXNzYWdpbmcu bmV0dHkudHJhbnNmZXIuYmF0Y2guc2l6ZSI6MjYyMTQ0LCJzdG9ybS5tZXNzYWdpbmcubmV0 dHkuY2xpZW50X3dvcmtlcl90aHJlYWRzIjoxLCJ0b3BvbG9neS50YXNrcyI6bnVsbCwidHJh bnNhY3Rpb25hbC56b29rZWVwZXIucm9vdCI6IlwvdHJhbnNhY3Rpb25hbCIsInRvcG9sb2d5 LnR1cGxlLnNlcmlhbGl6ZXIiOiJiYWNrdHlwZS5zdG9ybS5zZXJpYWxpemF0aW9uLnR5cGVz Lkxpc3REZWxlZ2F0ZVNlcmlhbGl6ZXIiLCJ0b3BvbG9neS5zcG91dC53YWl0LnN0cmF0ZWd5 IjoiYmFja3R5cGUuc3Rvcm0uc3BvdXQuU2xlZXBTcG91dFdhaXRTdHJhdGVneSIsImRycGMu cG9ydCI6Mzc3MiwidG9wb2xvZ3kubWF4LnNwb3V0LnBlbmRpbmciOm51bGwsInRvcG9sb2d5 LnRyYW5zZmVyLmJ1ZmZlci5zaXplIjoxMDI0LCJzdXBlcnZpc29yLndvcmtlci50aW1lb3V0 LnNlY3MiOjMwLCJ0b3BvbG9neS53b3JrZXIucmVjZWl2ZXIudGhyZWFkLmNvdW50IjoxLCJs b2d2aWV3ZXIucG9ydCI6ODAwMCwid29ya2VyLmNoaWxkb3B0cyI6Ii1YbXg3NjhtIiwibmlt YnVzLmZpbGUuY29weS5leHBpcmF0aW9uLnNlY3MiOjYwMCwiZHJwYy5jaGlsZG9wdHMiOiIt WG14NzY4bSIsIm5pbWJ1cy50YXNrLmxhdW5jaC5zZWNzIjoxMjAsImxvZ3ZpZXdlci5jaGls ZG9wdHMiOiItWG14MTI4bSIsInN0b3JtLnpvb2tlZXBlci5zZXJ2ZXJzIjpbImxvY2FsaG9z dCJdLCJzdG9ybS5tZXNzYWdpbmcudHJhbnNwb3J0IjoiYmFja3R5cGUuc3Rvcm0ubWVzc2Fn aW5nLm5ldHR5LkNvbnRleHQiLCJ0b3BvbG9neS53b3JrZXJzIjoxLCJzdG9ybS5tZXNzYWdp bmcubmV0dHkuZmx1c2guY2hlY2suaW50ZXJ2YWwubXMiOjEwLCJ0b3BvbG9neS5lbnZpcm9u bWVudCI6bnVsbCwiZHJwYy5pbnZvY2F0aW9ucy5wb3J0IjozNzczLCJ0b3BvbG9neS5rcnlv LmZhY3RvcnkiOiJiYWNrdHlwZS5zdG9ybS5zZXJpYWxpemF0aW9uLkRlZmF1bHRLcnlvRmFj dG9yeSIsIm5pbWJ1cy5jbGVhbnVwLmluYm94LmZyZXEuc2VjcyI6NjAwLCJ0b3BvbG9neS5m YWxsLmJhY2sub24uamF2YS5zZXJpYWxpemF0aW9uIjp0cnVlLCJsb2d2aWV3ZXIuYXBwZW5k ZXIubmFtZSI6IkExIiwic3Rvcm0ubWVzc2FnaW5nLm5ldHR5LnNlcnZlcl93b3JrZXJfdGhy ZWFkcyI6MSwic3VwZXJ2aXNvci5zbG90cy5wb3J0cyI6WzY3MDAsNjcwMSw2NzAyLDY3MDNd LCJzdG9ybS56b29rZWVwZXIuY29ubmVjdGlvbi50aW1lb3V0IjoxNTAwMCwidG9wb2xvZ3ku dGljay50dXBsZS5mcmVxLnNlY3MiOm51bGwsInRvcG9sb2d5LnN0YXRzLnNhbXBsZS5yYXRl IjowLjA1LCJzdG9ybS5sb2NhbC5kaXIiOiJzdG9ybS1sb2NhbCIsIm5pbWJ1cy5pbmJveC5q YXIuZXhwaXJhdGlvbi5zZWNzIjozNjAwLCJzdG9ybS5tZXNzYWdpbmcubmV0dHkubWF4X3Jl dHJpZXMiOjMwMCwidG9wb2xvZ3kuZGVidWciOmZhbHNlLCJzdG9ybS56b29rZWVwZXIucmV0 cnkuaW50ZXJ2YWwiOjEwMDAsInRvcG9sb2d5LnJlY2VpdmVyLmJ1ZmZlci5zaXplIjo4LCJz dG9ybS56b29rZWVwZXIucmV0cnkudGltZXMiOjUsImphdmEubGlicmFyeS5wYXRoIjoiXC91 c3JcL2xvY2FsXC9saWI6XC9vcHRcL2xvY2FsXC9saWI6XC91c3JcL2xpYiIsInptcS5saW5n ZXIubWlsbGlzIjo1MDAwLCJ0b3BvbG9neS5tdWx0aWxhbmcuc2VyaWFsaXplciI6ImJhY2t0 eXBlLnN0b3JtLm11bHRpbGFuZy5Kc29uU2VyaWFsaXplciIsImRycGMucmVxdWVzdC50aW1l b3V0LnNlY3MiOjYwMCwiem1xLnRocmVhZHMiOjEsInRvcG9sb2d5LnN0YXRlLnN5bmNocm9u aXphdGlvbi50aW1lb3V0LnNlY3MiOjYwLCJ0b3BvbG9neS53b3JrZXIuc2hhcmVkLnRocmVh ZC5wb29sLnNpemUiOjQsInRvcG9sb2d5LmV4ZWN1dG9yLnJlY2VpdmUuYnVmZmVyLnNpemUi OjEwMjQsInN1cGVydmlzb3IubW9uaXRvci5mcmVxdWVuY3kuc2VjcyI6MywibmltYnVzLmhv c3QiOiJjaWIybDQyODAuc3ZyLnVzLmpwbWNoYXNlLm5ldCIsInRyYW5zYWN0aW9uYWwuem9v a2VlcGVyLnBvcnQiOm51bGwsInN0b3JtLnpvb2tlZXBlci5wb3J0IjoyMTgxLCJzdG9ybS56 b29rZWVwZXIucmV0cnkuaW50ZXJ2YWxjZWlsaW5nLm1pbGxpcyI6MzAwMDAsIm5pbWJ1cy50 aHJpZnQucG9ydCI6NjYyNywidG9wb2xvZ3kuY2xhc3NwYXRoIjpudWxsLCJ0b3BvbG9neS53 b3JrZXIuY2hpbGRvcHRzIjpudWxsLCJ0b3BvbG9neS5tYXgudGFzay5wYXJhbGxlbGlzbSI6 bnVsbCwidG9wb2xvZ3kuYWNrZXIuZXhlY3V0b3JzIjpudWxsLCJzdXBlcnZpc29yLndvcmtl ci5zdGFydC50aW1lb3V0LnNlY3MiOjEyMCwibmltYnVzLnJlYXNzaWduIjp0cnVlLCJzdXBl cnZpc29yLmhlYXJ0YmVhdC5mcmVxdWVuY3kuc2VjcyI6NSwidG9wb2xvZ3kudHJpZGVudC5i YXRjaC5lbWl0LmludGVydmFsLm1pbGxpcyI6NTAwLCJ0YXNrLmhlYXJ0YmVhdC5mcmVxdWVu Y3kuc2VjcyI6Mywic3VwZXJ2aXNvci5lbmFibGUiOnRydWUsInN0b3JtLnRocmlmdC50cmFu c3BvcnQiOiJiYWNrdHlwZS5zdG9ybS5zZWN1cml0eS5hdXRoLlNpbXBsZVRyYW5zcG9ydFBs dWdpbiIsImRycGMud29ya2VyLnRocmVhZHMiOjY0LCJ1aS5wb3J0Ijo4MDgwLCJkcnBjLnF1 ZXVlLnNpemUiOjEyOCwidG9wb2xvZ3kubWVzc2FnZS50aW1lb3V0LnNlY3MiOjMwLCJ0b3Bv bG9neS5lcnJvci50aHJvdHRsZS5pbnRlcnZhbC5zZWNzIjoxMCwibmltYnVzLmNoaWxkb3B0 cyI6Ii1YbXgxMDI0bSIsInRvcG9sb2d5LmJ1aWx0aW4ubWV0cmljcy5idWNrZXQuc2l6ZS5z ZWNzIjo2MCwibmltYnVzLm1vbml0b3IuZnJlcS5zZWNzIjoxMCwidG9wb2xvZ3kuZXhlY3V0 b3Iuc2VuZC5idWZmZXIuc2l6ZSI6MTAyNCwic3Rvcm0ubG9jYWwubW9kZS56bXEiOmZhbHNl LCJ0cmFuc2FjdGlvbmFsLnpvb2tlZXBlci5zZXJ2ZXJzIjpudWxsLCJuaW1idXMudGFzay50 aW1lb3V0LnNlY3MiOjMwLCJzdG9ybS5tZXRhLnNlcmlhbGl6YXRpb24uZGVsZWdhdGUiOiJi YWNrdHlwZS5zdG9ybS5zZXJpYWxpemF0aW9uLkRlZmF1bHRTZXJpYWxpemF0aW9uRGVsZWdh dGUiLCJkZXYuem9va2VlcGVyLnBhdGgiOiJcL3RtcFwvZGV2LXN0b3JtLXpvb2tlZXBlciIs Im5pbWJ1cy5zdXBlcnZpc29yLnRpbWVvdXQuc2VjcyI6NjAsInRvcG9sb2d5LnNraXAubWlz c2luZy5rcnlvLnJlZ2lzdHJhdGlvbnMiOmZhbHNlLCJzdG9ybS56b29rZWVwZXIucm9vdCI6 Ilwvc3Rvcm0iLCJzdG9ybS56b29rZWVwZXIuc2Vzc2lvbi50aW1lb3V0IjoyMDAwMCwiem1x Lmh3bSI6MCwidG9wb2xvZ3kuZGlzcnVwdG9yLndhaXQuc3RyYXRlZ3kiOiJjb20ubG1heC5k aXNydXB0b3IuQmxvY2tpbmdXYWl0U3RyYXRlZ3kiLCJ0b3BvbG9neS5zbGVlcC5zcG91dC53 YWl0LnN0cmF0ZWd5LnRpbWUubXMiOjEsIm5pbWJ1cy50b3BvbG9neS52YWxpZGF0b3IiOiJi YWNrdHlwZS5zdG9ybS5uaW1idXMuRGVmYXVsdFRvcG9sb2d5VmFsaWRhdG9yIiwic3Rvcm0u Y2x1c3Rlci5tb2RlIjoiZGlzdHJpYnV0ZWQiLCJ1aS5jaGlsZG9wdHMiOiItWG14NzY4bSIs InRhc2sucmVmcmVzaC5wb2xsLnNlY3MiOjEwLCJzdXBlcnZpc29yLmNoaWxkb3B0cyI6Ii1Y bXgyNTZtIiwid29ya2VyLmhlYXJ0YmVhdC5mcmVxdWVuY3kuc2VjcyI6MSwic3Rvcm0ubWVz c2FnaW5nLm5ldHR5Lm1heF93YWl0X21zIjoxMDAwLCJ0b3BvbG9neS5tYXguZXJyb3IucmVw b3J0LnBlci5pbnRlcnZhbCI6NSwibmltYnVzLnRocmlmdC5tYXhfYnVmZmVyX3NpemUiOjEw NDg1NzZ9DQpbMjAxNi0wMi0xOSAxMToyMjo0NiwxMjddIFttYWluXSBGaW5pc2hlZCBzdWJt aXR0aW5nIHRvcG9sb2d5OiBleGFtcGxlLXRvcG9sb2d5LTENClRlc3RzIHJ1bjogMSwgRmFp bHVyZXM6IDAsIEVycm9yczogMCwgU2tpcHBlZDogMCwgVGltZSBlbGFwc2VkOiAxOS42MDUg c2VjDQoNCg0KSSBzZWUgdGhhdCBqYXIgb24gcmVtb3RlIG1hY2hpbmUgaGFzIGNvcnJlY3Qg c2l6ZS4gQnV0IGluIFN0b3JtIFVJIEkgc3RpbGwgZG8gIG5vdCBzZWUgYW55IEJvbHRzIGFu ZCBTcG91dHMuDQoNCkkgd2lzaCBTdG9ybSBoYWQgZWFzeSB3YXkgdG8gc3VibWl0IHRvcG9s b2dpZXMgZnJvbSwgd2hpY2ggYXJlIGluc2lkZSB0aGUgamFyLiBUaGUgc2FtZSB3YXkgbGlr ZSBjb21tYW5kIGxpbmUgZG8uIEkgYWxzbyBhZGRlZCBNYWluLUNsYXNzIHRvIE1BTklGRVNU Lk1GIGhvcGluZyBpdCB3b3VsZCBoZWxwIGJ1dCBpdCBkaWQgbm90Lg0KDQpUaGFua3MsDQpN aWNoYWVsIEthemFuc2t5DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBN YXR0aGlhcyBKLiBTYXggW21haWx0bzptanNheEBhcGFjaGUub3JnXSANClNlbnQ6IEZyaWRh eSwgRmVicnVhcnkgMTksIDIwMTYgNTowMiBBTQ0KVG86IHVzZXJAc3Rvcm0uYXBhY2hlLm9y Zw0KU3ViamVjdDogUmU6IHN1Ym1pdCB0b3BvbG9neSB1c2luZyBOaW1idXNDbGllbnQNCg0K V2h5IGRvIHlvdSBub3Qgc3VibWl0IHZpYSBTdG9ybVN1Ym1pdHRlciBpbnN0ZWFkIG9mIE5p bWJ1c0NsaWVudD8/DQoNCj4gU3Rvcm1TdWJtaXR0ZXIuc3VibWl0VG9wb2xvZ3koInRvcG9s b2d5TmFtZSIsIGNvbmYsIA0KPiBidWlsZGVyLmNyZWF0ZVRvcG9sb2d5KCkpOw0KDQpGb3Ig dGhpcywgeW91IGFsc28gbmVlZCB0byBzZXQgc3lzdGVtIHByb3BlcnR5ICJzdG9ybS5qYXIi IHdoaWNoIG11c3QgcG9pbnQgdG8gdGhlICpjbGllbnQgbG9jYWwqIHBhdGggdG8gdGhlIHRv cG9sb2d5IGphciBmaWxlLg0KDQotTWF0dGhpYXMNCg0KT24gMDIvMTgvMjAxNiAxMDoyMiBQ TSwgS2F6YW5za3ksIE1pY2hhZWwgd3JvdGU6DQo+IFllYWggYnV0IGl0IGlzIG5vdCBnb2lu ZyB0byB3b3JrIGZvciBtZS4gV2UgYWxyZWFkeSBoYXZlIGRpcmVjdCANCj4gdG9wb2xvZ3kg c3VibWlzc2lvbiBieSBjYWxsaW5nIHB5dGhvbiBzY3JpcHQgZnJvbSBKYXZhIGFwcC4NCj4g DQo+IFRoaXMgcmVxdWlyZXMgdG8ga25vdyBsb2NhdGlvbiBvZiB0aGUgc2NyaXB0IG9uIHRo ZSBuaW1idXMgbWFjaGluZS4gV2UgDQo+IGFyZSB0cnlpbmcgdG8gYXZvaWQgdGhhdC4NCj4g DQo+ICANCj4gDQo+IFRoYW5rcywNCj4gDQo+IE1pY2hhZWwgS2F6YW5za3kNCj4gDQo+ICAN Cj4gDQo+ICpGcm9tOipSYWh1bCBSIFttYWlsdG86cmFodWw4NTkwQGdtYWlsLmNvbV0NCj4g KlNlbnQ6KiBUaHVyc2RheSwgRmVicnVhcnkgMTgsIDIwMTYgNDoxNyBQTQ0KPiAqVG86KiB1 c2VyQHN0b3JtLmFwYWNoZS5vcmcNCj4gKlN1YmplY3Q6KiBSZTogc3VibWl0IHRvcG9sb2d5 IHVzaW5nIE5pbWJ1c0NsaWVudA0KPiANCj4gIA0KPiANCj4gSSBoYWQgYSBzaW1pbGFyIHVz ZSBjYXNlLiAgSSBqdXN0IGNyZWF0ZWQgYSBmb3JtIHRvIHVwbG9hZCB0aGUgamFyIGFzIA0K PiBhIGZpbGUgdXBsb2FkIGFuZCBleGVjdXRlIGl0IG9uIG5pbWJ1cyBob3N0cy4NCj4gDQo+ IC4vUg0KPiANCj4gIA0KPiANCj4gT24gVGh1LCBGZWIgMTgsIDIwMTYgYXQgMTE6MTYgQU0s IEthemFuc2t5LCBNaWNoYWVsIA0KPiA8bWljaGFlbC5rYXphbnNreUBqcG1jaGFzZS5jb20g PG1haWx0bzptaWNoYWVsLmthemFuc2t5QGpwbWNoYXNlLmNvbT4+DQo+IHdyb3RlOg0KPiAN Cj4gSGkgU3Rvcm0gZ3VydXMsDQo+IA0KPiBJIGFtIHdvcmtpbmcgb24gdGhlIHByb2plY3Qg d2hpY2ggc2hvdWxkIGFsbG93IHVzZXJzIHRvIHN1Ym1pdCB0aGVpciANCj4gdG9wb2xvZ3kg amFycyB0byBTdG9ybS4gV2Ugc3VjY2Vzc2Z1bGx5IHVzaW5nIGNvbW1hbmQgbGluZSBidXQg bm93IEkgDQo+IG5lZWQgdG8gd3JpdGUgYXBwbGljYXRpb24gd2hpY2ggYWxsb3dzIHVzZXIg dG8gc3VibWl0IGphciB0aHJvdWdoIGxldCANCj4gc2F5IGJyb3dzZXIuDQo+IA0KPiBIZXJl IGlzIHdoYXQgSSBhbSB0cnlpbmcgdG8gZG8NCj4gDQo+ICANCj4gDQo+ICAgICAgICAgICAg Q29uZmlnIGNvbmYgPSBuZXcgQ29uZmlnKCk7DQo+IA0KPiAgICAgICAgICAgICBUb3BvbG9n eUJ1aWxkZXIgdG9wb0J1aWxkZXIgPSBuZXcgVG9wb2xvZ3lCdWlsZGVyKCk7DQo+IA0KPiAg ICAgICAgICAgICBjb25mLnB1dChDb25maWcuTklNQlVTX0hPU1QsIHRvcG9sb2d5TW9kZWwu Z2V0SG9zdCgpKTsNCj4gDQo+ICAgICAgICAgICAgIGNvbmYuc2V0RGVidWcodHJ1ZSk7DQo+ IA0KPiAgICAgICAgICAgICBNYXAgc3Rvcm1Db25mID0gVXRpbHMucmVhZFN0b3JtQ29uZmln KCk7DQo+IA0KPiAgICAgICAgICAgICBzdG9ybUNvbmYucHV0KENvbmZpZy5OSU1CVVNfSE9T VCwgDQo+IHRvcG9sb2d5TW9kZWwuZ2V0SG9zdCgpKTsNCj4gDQo+ICAgICAgICAgICAgDQo+ IA0KPiAgICAgICAgICAgICAvLyB0b3BvbG9neSBzdWJtaXQNCj4gDQo+ICAgICAgICAgICAg IE5pbWJ1c0NsaWVudCBuaW1idXMgPSBuZXcgTmltYnVzQ2xpZW50KHN0b3JtQ29uZiwgDQo+ IHRvcG9sb2d5TW9kZWwuZ2V0SG9zdCgpLCBudWxsICE9IHRvcG9sb2d5TW9kZWwuZ2V0Tmlt YnVzUG9ydCgpID8NCj4gdG9wb2xvZ3lNb2RlbC5nZXROaW1idXNQb3J0KCkgOiA2NjI3KTsN Cj4gDQo+ICAgICAgICAgICAgIFN0cmluZyB1cGxvYWRlZEphckxvY2F0aW9uID0gDQo+IFN0 b3JtU3VibWl0dGVyLnN1Ym1pdEphcihzdG9ybUNvbmYsIHRvcG9sb2d5TW9kZWwuZ2V0QXJ0 aWZhY3RVcmwoKSk7DQo+IA0KPiAgICAgICAgICAgICBTeXN0ZW0uc2V0UHJvcGVydHkoInN0 b3JtLmphciIsIHVwbG9hZGVkSmFyTG9jYXRpb24uY29uY2F0KCINCj4gIikuY29uY2F0KHRv cG9sb2d5TW9kZWwuZ2V0TWFpbkNsYXNzKCkpKTsNCj4gDQo+ICAgICAgICAgICAgIFN0cmlu ZyBqc29uQ29uZiA9IEpTT05WYWx1ZS50b0pTT05TdHJpbmcoc3Rvcm1Db25mKTsNCj4gDQo+ ICAgICAgICAgICAgIC8vU3Rvcm1Ub3BvbG9neSB0b3BvbG9neSA9IGJ1aWxkVG9wbG9neSh0 b3BvbG9neU1vZGVsKTsNCj4gDQo+ICAgICAgICAgICAgIC8vU3VibWl0T3B0aW9ucyBvcHRp b25zID0gbmV3IFN1Ym1pdE9wdGlvbnMoKTsNCj4gDQo+ICAgICAgICAgICAgIC8vY2xpZW50 LmphcnRyYW5zZm9ybWVyLmNsYXNzDQo+IA0KPiAgICAgICAgICAgIA0KPiBuaW1idXMuZ2V0 Q2xpZW50KCkuc3VibWl0VG9wb2xvZ3kodG9wb2xvZ3lNb2RlbC5nZXRUb3BvbG9neU5hbWUo KSwNCj4gdXBsb2FkZWRKYXJMb2NhdGlvbiwganNvbkNvbmYsIHRvcG9CdWlsZGVyLmNyZWF0 ZVRvcG9sb2d5KCkpOw0KPiANCj4gICAgICAgICAgICAgc3VjY2VzcyA9IHRydWU7DQo+IA0K PiAgDQo+IA0KPiAgDQo+IA0KPiBJIGxvb2tlZCBhdCB0aGUgc3Rvcm0gcHl0aG9uIHNjcmlw dCBhbmQgc2F3IHRoYXQgbWFpbiBjbGFzcyBuYW1lIGlzIA0KPiBjb25jYXRlbmF0ZWQgdG8g SlZNX09QVFMNCj4gDQo+IFRoYXTigJlzIHdoeSBJIGFkZGVkIHRoaXMgbGluZQ0KPiANCj4g IA0KPiANCj4gU3lzdGVtLnNldFByb3BlcnR5KCJzdG9ybS5qYXIiLCB1cGxvYWRlZEphckxv Y2F0aW9uLmNvbmNhdCgiDQo+ICIpLmNvbmNhdCh0b3BvbG9neU1vZGVsLmdldE1haW5DbGFz cygpKSk7DQo+IA0KPiAgDQo+IA0KPiBCdXQgd2hlbiBJIGV4ZWN1dGUgdGhlIGNvZGUgaW4g dGVzdCBJIG9ubHkgc2VlIGVtcHR5IHRvcG9sb2d5IHdpdGhvdXQgDQo+IHNwb3V0cyBhbmQg Ym9sdHMgaW4gU3Rvcm0gVUkgd2l0aCBvbmx5IG9uZSB3b3JrZXIgYW5kIG9uZSBleGVjdXRv ci4NCj4gTWFpbiBjbGFzcyBpbiB0aGUgamFyIGhhcyB0aGUgY29kZSB0byBzdWJtaXQgc3Bv dXRzIGFuZCBib2x0cyB3aXRoIA0KPiBwYXJhbGxlbGlzbSAzIHNvIG1vc3QgZGVmaW5pdGVs eSBtYWluIGNsYXNzIHdhc27igJl0IHBpY2tlZCB1cC4NCj4gDQo+IElzIHRoZXJlIGFueSB3 YXkgdG8gaW1wbGVtZW50IHRoaXMgY29tbWFuZCBweXRob24gDQo+ICR7c3Rvcm1faG9tZX0v YmluL3N0b3JtIGphciAke2RzbF9hcHBzX2Rpcn0vZGlzdC8ke2phcm5hbWV9ICRtYWluY2xh c3MgDQo+IGluIEphdmEgYmVzaWRlcyBjYWxsaW5nIGl0ICh3aGljaCBpcyBhbHJlYWR5IGRv bmUpIGRpcmVjdGx5Pw0KPiANCj4gIA0KPiANCj4gIA0KPiANCj4gVGhhbmtzLA0KPiANCj4g TWljaGFlbCBLYXphbnNreQ0KPiANCj4gIA0KPiANCj4gVGhpcyBjb21tdW5pY2F0aW9uIGlz IGZvciBpbmZvcm1hdGlvbmFsIHB1cnBvc2VzIG9ubHkuIEl0IGlzIG5vdCANCj4gaW50ZW5k ZWQgYXMgYW4gb2ZmZXIgb3Igc29saWNpdGF0aW9uIGZvciB0aGUgcHVyY2hhc2Ugb3Igc2Fs ZSBvZiBhbnkgDQo+IGZpbmFuY2lhbCBpbnN0cnVtZW50IG9yIGFzIGFuIG9mZmljaWFsIGNv bmZpcm1hdGlvbiBvZiBhbnkgdHJhbnNhY3Rpb24uDQo+IEFsbCBtYXJrZXQgcHJpY2VzLCBk YXRhIGFuZCBvdGhlciBpbmZvcm1hdGlvbiBhcmUgbm90IHdhcnJhbnRlZCBhcyB0byANCj4g Y29tcGxldGVuZXNzIG9yIGFjY3VyYWN5IGFuZCBhcmUgc3ViamVjdCB0byBjaGFuZ2Ugd2l0 aG91dCBub3RpY2UuIEFueSANCj4gY29tbWVudHMgb3Igc3RhdGVtZW50cyBtYWRlIGhlcmVp biBkbyBub3QgbmVjZXNzYXJpbHkgcmVmbGVjdCB0aG9zZSBvZiANCj4gSlBNb3JnYW4gQ2hh c2UgJiBDby4sIGl0cyBzdWJzaWRpYXJpZXMgYW5kIGFmZmlsaWF0ZXMgKGNvbGxlY3RpdmVs eSwgDQo+ICJKUE1DIikuIFRoaXMgdHJhbnNtaXNzaW9uIG1heSBjb250YWluIGluZm9ybWF0 aW9uIHRoYXQgaXMgDQo+IHByb3ByaWV0YXJ5LCBwcml2aWxlZ2VkLCBjb25maWRlbnRpYWwg YW5kL29yIGV4ZW1wdCBmcm9tIGRpc2Nsb3N1cmUgDQo+IHVuZGVyIGFwcGxpY2FibGUgbGF3 LiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCB5b3UgYXJlIA0KPiBo ZXJlYnkgbm90aWZpZWQgdGhhdCBhbnkgZGlzY2xvc3VyZSwgY29weWluZywgZGlzdHJpYnV0 aW9uLCBvciB1c2Ugb2YgDQo+IHRoZSBpbmZvcm1hdGlvbiBjb250YWluZWQgaGVyZWluIChp bmNsdWRpbmcgYW55IHJlbGlhbmNlIHRoZXJlb24pIGlzIA0KPiBTVFJJQ1RMWSBQUk9ISUJJ VEVELiBJZiB5b3UgcmVjZWl2ZWQgdGhpcyB0cmFuc21pc3Npb24gaW4gZXJyb3IsIA0KPiBw bGVhc2UgaW1tZWRpYXRlbHkgY29udGFjdCB0aGUgc2VuZGVyIGFuZCBkZXN0cm95IHRoZSBt YXRlcmlhbCBpbiBpdHMgDQo+IGVudGlyZXR5LCB3aGV0aGVyIGluIGVsZWN0cm9uaWMgb3Ig aGFyZCBjb3B5IGZvcm1hdC4gQWx0aG91Z2ggdGhpcyANCj4gdHJhbnNtaXNzaW9uIGFuZCBh bnkgYXR0YWNobWVudHMgYXJlIGJlbGlldmVkIHRvIGJlIGZyZWUgb2YgYW55IHZpcnVzIA0K PiBvciBvdGhlciBkZWZlY3QgdGhhdCBtaWdodCBhZmZlY3QgYW55IGNvbXB1dGVyIHN5c3Rl bSBpbnRvIHdoaWNoIGl0IGlzIA0KPiByZWNlaXZlZCBhbmQgb3BlbmVkLCBpdCBpcyB0aGUg cmVzcG9uc2liaWxpdHkgb2YgdGhlIHJlY2lwaWVudCB0byANCj4gZW5zdXJlIHRoYXQgaXQg aXMgdmlydXMgZnJlZSBhbmQgbm8gcmVzcG9uc2liaWxpdHkgaXMgYWNjZXB0ZWQgYnkgSlBN QyANCj4gZm9yIGFueSBsb3NzIG9yIGRhbWFnZSBhcmlzaW5nIGluIGFueSB3YXkgZnJvbSBp dHMgdXNlLiBQbGVhc2Ugbm90ZSANCj4gdGhhdCBhbnkgZWxlY3Ryb25pYyBjb21tdW5pY2F0 aW9uIHRoYXQgaXMgY29uZHVjdGVkIHdpdGhpbiBvciB0aHJvdWdoIA0KPiBKUE1DJ3Mgc3lz dGVtcyBpcyBzdWJqZWN0IHRvIGludGVyY2VwdGlvbiwgbW9uaXRvcmluZywgcmV2aWV3LCAN Cj4gcmV0ZW50aW9uIGFuZCBleHRlcm5hbCBwcm9kdWN0aW9uIGluIGFjY29yZGFuY2Ugd2l0 aCBKUE1DJ3MgcG9saWN5IGFuZCANCj4gbG9jYWwgbGF3cywgcnVsZXMgYW5kIHJlZ3VsYXRp b25zOyBtYXkgYmUgc3RvcmVkIG9yIG90aGVyd2lzZSANCj4gcHJvY2Vzc2VkIGluIGNvdW50 cmllcyBvdGhlciB0aGFuIHRoZSBjb3VudHJ5IGluIHdoaWNoIHlvdSBhcmUgDQo+IGxvY2F0 ZWQ7IGFuZCB3aWxsIGJlIHRyZWF0ZWQgaW4gYWNjb3JkYW5jZSB3aXRoIEpQTUMgcG9saWNp ZXMgYW5kIGFwcGxpY2FibGUgbGF3cyBhbmQgcmVndWxhdGlvbnMuDQo+IFBsZWFzZSByZWZl ciB0byBodHRwOi8vd3d3LmpwbW9yZ2FuLmNvbS9wYWdlcy9kaXNjbG9zdXJlcyBmb3IgDQo+ IGRpc2Nsb3N1cmVzIHJlbGF0aW5nIHRvIEV1cm9wZWFuIGxlZ2FsIGVudGl0aWVzLg0KPiAN Cj4gIA0KPiANCj4gVGhpcyBjb21tdW5pY2F0aW9uIGlzIGZvciBpbmZvcm1hdGlvbmFsIHB1 cnBvc2VzIG9ubHkuIEl0IGlzIG5vdCANCj4gaW50ZW5kZWQgYXMgYW4gb2ZmZXIgb3Igc29s aWNpdGF0aW9uIGZvciB0aGUgcHVyY2hhc2Ugb3Igc2FsZSBvZiBhbnkgDQo+IGZpbmFuY2lh bCBpbnN0cnVtZW50IG9yIGFzIGFuIG9mZmljaWFsIGNvbmZpcm1hdGlvbiBvZiBhbnkgdHJh bnNhY3Rpb24uDQo+IEFsbCBtYXJrZXQgcHJpY2VzLCBkYXRhIGFuZCBvdGhlciBpbmZvcm1h dGlvbiBhcmUgbm90IHdhcnJhbnRlZCBhcyB0byANCj4gY29tcGxldGVuZXNzIG9yIGFjY3Vy YWN5IGFuZCBhcmUgc3ViamVjdCB0byBjaGFuZ2Ugd2l0aG91dCBub3RpY2UuIEFueSANCj4g Y29tbWVudHMgb3Igc3RhdGVtZW50cyBtYWRlIGhlcmVpbiBkbyBub3QgbmVjZXNzYXJpbHkg cmVmbGVjdCB0aG9zZSBvZiANCj4gSlBNb3JnYW4gQ2hhc2UgJiBDby4sIGl0cyBzdWJzaWRp YXJpZXMgYW5kIGFmZmlsaWF0ZXMgKGNvbGxlY3RpdmVseSwgDQo+ICJKUE1DIikuIFRoaXMg dHJhbnNtaXNzaW9uIG1heSBjb250YWluIGluZm9ybWF0aW9uIHRoYXQgaXMgDQo+IHByb3By aWV0YXJ5LCBwcml2aWxlZ2VkLCBjb25maWRlbnRpYWwgYW5kL29yIGV4ZW1wdCBmcm9tIGRp c2Nsb3N1cmUgDQo+IHVuZGVyIGFwcGxpY2FibGUgbGF3LiBJZiB5b3UgYXJlIG5vdCB0aGUg aW50ZW5kZWQgcmVjaXBpZW50LCB5b3UgYXJlIA0KPiBoZXJlYnkgbm90aWZpZWQgdGhhdCBh bnkgZGlzY2xvc3VyZSwgY29weWluZywgZGlzdHJpYnV0aW9uLCBvciB1c2Ugb2YgDQo+IHRo ZSBpbmZvcm1hdGlvbiBjb250YWluZWQgaGVyZWluIChpbmNsdWRpbmcgYW55IHJlbGlhbmNl IHRoZXJlb24pIGlzIA0KPiBTVFJJQ1RMWSBQUk9ISUJJVEVELiBJZiB5b3UgcmVjZWl2ZWQg dGhpcyB0cmFuc21pc3Npb24gaW4gZXJyb3IsIA0KPiBwbGVhc2UgaW1tZWRpYXRlbHkgY29u dGFjdCB0aGUgc2VuZGVyIGFuZCBkZXN0cm95IHRoZSBtYXRlcmlhbCBpbiBpdHMgDQo+IGVu dGlyZXR5LCB3aGV0aGVyIGluIGVsZWN0cm9uaWMgb3IgaGFyZCBjb3B5IGZvcm1hdC4gQWx0 aG91Z2ggdGhpcyANCj4gdHJhbnNtaXNzaW9uIGFuZCBhbnkgYXR0YWNobWVudHMgYXJlIGJl bGlldmVkIHRvIGJlIGZyZWUgb2YgYW55IHZpcnVzIA0KPiBvciBvdGhlciBkZWZlY3QgdGhh dCBtaWdodCBhZmZlY3QgYW55IGNvbXB1dGVyIHN5c3RlbSBpbnRvIHdoaWNoIGl0IGlzIA0K PiByZWNlaXZlZCBhbmQgb3BlbmVkLCBpdCBpcyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhl IHJlY2lwaWVudCB0byANCj4gZW5zdXJlIHRoYXQgaXQgaXMgdmlydXMgZnJlZSBhbmQgbm8g cmVzcG9uc2liaWxpdHkgaXMgYWNjZXB0ZWQgYnkgSlBNQyANCj4gZm9yIGFueSBsb3NzIG9y IGRhbWFnZSBhcmlzaW5nIGluIGFueSB3YXkgZnJvbSBpdHMgdXNlLiBQbGVhc2Ugbm90ZSAN Cj4gdGhhdCBhbnkgZWxlY3Ryb25pYyBjb21tdW5pY2F0aW9uIHRoYXQgaXMgY29uZHVjdGVk IHdpdGhpbiBvciB0aHJvdWdoIA0KPiBKUE1DJ3Mgc3lzdGVtcyBpcyBzdWJqZWN0IHRvIGlu dGVyY2VwdGlvbiwgbW9uaXRvcmluZywgcmV2aWV3LCANCj4gcmV0ZW50aW9uIGFuZCBleHRl cm5hbCBwcm9kdWN0aW9uIGluIGFjY29yZGFuY2Ugd2l0aCBKUE1DJ3MgcG9saWN5IGFuZCAN Cj4gbG9jYWwgbGF3cywgcnVsZXMgYW5kIHJlZ3VsYXRpb25zOyBtYXkgYmUgc3RvcmVkIG9y IG90aGVyd2lzZSANCj4gcHJvY2Vzc2VkIGluIGNvdW50cmllcyBvdGhlciB0aGFuIHRoZSBj b3VudHJ5IGluIHdoaWNoIHlvdSBhcmUgDQo+IGxvY2F0ZWQ7IGFuZCB3aWxsIGJlIHRyZWF0 ZWQgaW4gYWNjb3JkYW5jZSB3aXRoIEpQTUMgcG9saWNpZXMgYW5kIGFwcGxpY2FibGUgbGF3 cyBhbmQgcmVndWxhdGlvbnMuDQo+IFBsZWFzZSByZWZlciB0byBodHRwOi8vd3d3LmpwbW9y Z2FuLmNvbS9wYWdlcy9kaXNjbG9zdXJlcyBmb3IgDQo+IGRpc2Nsb3N1cmVzIHJlbGF0aW5n IHRvIEV1cm9wZWFuIGxlZ2FsIGVudGl0aWVzLg0KPiANCg0KDQpUaGlzIGNvbW11bmljYXRp b24gaXMgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4gIEl0IGlzIG5vdCBpbnRl bmRlZCBhcyBhbiBvZmZlciBvciBzb2xpY2l0YXRpb24gZm9yIHRoZSBwdXJjaGFzZSBvciBz YWxlIG9mIGFueSBmaW5hbmNpYWwgaW5zdHJ1bWVudCBvciBhcyBhbiBvZmZpY2lhbCBjb25m aXJtYXRpb24gb2YgYW55IHRyYW5zYWN0aW9uLiAgQWxsIG1hcmtldCBwcmljZXMsIGRhdGEg YW5kIG90aGVyIGluZm9ybWF0aW9uIGFyZSBub3Qgd2FycmFudGVkIGFzIHRvIGNvbXBsZXRl bmVzcyBvciBhY2N1cmFjeSBhbmQgYXJlIHN1YmplY3QgdG8gY2hhbmdlIHdpdGhvdXQgbm90 aWNlLiAgQW55IGNvbW1lbnRzIG9yIHN0YXRlbWVudHMgbWFkZSBoZXJlaW4gZG8gbm90IG5l Y2Vzc2FyaWx5IHJlZmxlY3QgdGhvc2Ugb2YgSlBNb3JnYW4gQ2hhc2UgJiBDby4sIGl0cyBz dWJzaWRpYXJpZXMgYW5kIGFmZmlsaWF0ZXMgKGNvbGxlY3RpdmVseSwgIkpQTUMiKS4NCg0K VGhpcyB0cmFuc21pc3Npb24gbWF5IGNvbnRhaW4gaW5mb3JtYXRpb24gdGhhdCBpcyBwcm9w cmlldGFyeSwgcHJpdmlsZWdlZCwgY29uZmlkZW50aWFsIGFuZC9vciBleGVtcHQgZnJvbSBk aXNjbG9zdXJlIHVuZGVyIGFwcGxpY2FibGUgbGF3LiAgSWYgeW91IGFyZSBub3QgdGhlIGlu dGVuZGVkIHJlY2lwaWVudCwgeW91IGFyZSBoZXJlYnkgbm90aWZpZWQgdGhhdCBhbnkgZGlz Y2xvc3VyZSwgY29weWluZywgZGlzdHJpYnV0aW9uLCBvciB1c2Ugb2YgdGhlIGluZm9ybWF0 aW9uIGNvbnRhaW5lZCBoZXJlaW4gKGluY2x1ZGluZyBhbnkgcmVsaWFuY2UgdGhlcmVvbikg aXMgU1RSSUNUTFkgUFJPSElCSVRFRC4gIElmIHlvdSByZWNlaXZlZCB0aGlzIHRyYW5zbWlz c2lvbiBpbiBlcnJvciwgcGxlYXNlIGltbWVkaWF0ZWx5IGNvbnRhY3QgdGhlIHNlbmRlciBh bmQgZGVzdHJveSB0aGUgbWF0ZXJpYWwgaW4gaXRzIGVudGlyZXR5LCB3aGV0aGVyIGluIGVs ZWN0cm9uaWMgb3IgaGFyZCBjb3B5IGZvcm1hdC4gIEFsdGhvdWdoIHRoaXMgdHJhbnNtaXNz aW9uIGFuZCBhbnkgYXR0YWNobWVudHMgYXJlIGJlbGlldmVkIHRvIGJlIGZyZWUgb2YgYW55 IHZpcnVzIG9yIG90aGVyIGRlZmVjdCB0aGF0IG1pZ2h0IGFmZmVjdCBhbnkgY29tcHV0ZXIg c3lzdGVtIGludG8gd2hpY2ggaXQgaXMgcmVjZWl2ZWQgYW5kIG9wZW5lZCwgaXQgaXMgdGhl IHJlc3BvbnNpYmlsaXR5IG9mIHRoZSByZWNpcGllbnQgdG8gZW5zdXJlIHRoYXQgaXQgaXMg dmlydXMgZnJlZSBhbmQgbm8gcmVzcG9uc2liaWxpdHkgaXMgYWNjZXB0ZWQgYnkgSlBNQyBm b3IgYW55IGxvc3Mgb3IgZGFtYWdlIGFyaXNpbmcgaW4gYW55IHdheSBmcm9tIGl0cyB1c2Uu ICBQbGVhc2Ugbm90ZSB0aGF0IGFueSBlbGVjdHJvbmljIGNvbW11bmljYXRpb24gdGhhdCBp cyBjb25kdWN0ZWQgd2l0aGluIG9yIHRocm91Z2ggSlBNQydzIHN5c3RlbXMgaXMgc3ViamVj dCB0byBpbnRlcmNlcHRpb24sIG1vbml0b3JpbmcsIHJldmlldywgcmV0ZW50aW9uIGFuZCBl eHRlcm5hbCBwcm9kdWN0aW9uIGluIGFjY29yZGFuY2Ugd2l0aCBKUE1DJ3MgcG9saWN5IGFu ZCBsb2NhbCBsYXdzLCBydWxlcyBhbmQgcmVndWxhdGlvbnM7IG1heSBiZSBzdG9yZWQgb3Ig b3RoZXJ3aXNlIHByb2Nlc3NlZCBpbiBjb3VudHJpZXMgb3RoZXIgdGhhbiB0aGUgY291bnRy eSBpbiB3aGljaCB5b3UgYXJlIGxvY2F0ZWQ7IGFuZCB3aWxsIGJlIHRyZWF0ZWQgaW4gYWNj b3JkYW5jZSB3aXRoIEpQTUMgcG9saWNpZXMgYW5kIGFwcGxpY2FibGUgbGF3cyBhbmQgcmVn dWxhdGlvbnMuDQoNClBsZWFzZSByZWZlciB0byBodHRwOi8vd3d3LmpwbW9yZ2FuLmNvbS9w YWdlcy9kaXNjbG9zdXJlcyBmb3IgZGlzY2xvc3VyZXMgcmVsYXRpbmcgdG8gRXVyb3BlYW4g bGVnYWwgZW50aXRpZXMuDQo=