Return-Path: Delivered-To: apmail-cocoon-docs-archive@www.apache.org Received: (qmail 31899 invoked from network); 30 Mar 2005 15:14:39 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 30 Mar 2005 15:14:39 -0000 Received: (qmail 96365 invoked by uid 500); 30 Mar 2005 15:14:38 -0000 Delivered-To: apmail-cocoon-docs-archive@cocoon.apache.org Received: (qmail 96328 invoked by uid 500); 30 Mar 2005 15:14:37 -0000 Mailing-List: contact docs-help@cocoon.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: docs@cocoon.apache.org Delivered-To: mailing list docs@cocoon.apache.org Received: (qmail 96301 invoked by uid 99); 30 Mar 2005 15:14:37 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from ajax-1.apache.org (HELO ajax.apache.org) (192.87.106.226) by apache.org (qpsmtpd/0.28) with ESMTP; Wed, 30 Mar 2005 07:14:36 -0800 Received: from ajax.apache.org (ajax.apache.org [127.0.0.1]) by ajax.apache.org (Postfix) with ESMTP id 5E776288 for ; Wed, 30 Mar 2005 17:14:33 +0200 (CEST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Apache Wiki To: Apache Wiki Date: Wed, 30 Mar 2005 15:14:33 -0000 Message-ID: <20050330151433.7617.73367@ajax.apache.org> Subject: [Cocoon Wiki] Update of "WebServiceServer" by JanHinzmann X-Virus-Checked: Checked X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N RGVhciBXaWtpIHVzZXIsDQoNCllvdSBoYXZlIHN1YnNjcmliZWQgdG8gYSB3aWtpIHBhZ2Ugb3Ig d2lraSBjYXRlZ29yeSBvbiAiQ29jb29uIFdpa2kiIGZvciBjaGFuZ2Ugbm90aWZpY2F0aW9uLg0K DQpUaGUgZm9sbG93aW5nIHBhZ2UgaGFzIGJlZW4gY2hhbmdlZCBieSBKYW5IaW56bWFubjoNCmh0 dHA6Ly93aWtpLmFwYWNoZS5vcmcvY29jb29uL1dlYlNlcnZpY2VTZXJ2ZXINCg0KTmV3IHBhZ2U6 DQo9IFVzaW5nIENvY29vbiBhcyBXZWJTZXJ2aWNlU2VydmVyID0NCmFuIGFwcHJvYWNoIHdpdGgg Rmxvd2NvbnRyb2wsIENvbnRpbnVhdGlvbnMgIGFuZCBKWFRlbXBsYXRlcyBiYXNlZCBvbiBpZGVh cyBvZg0KDQogKmh0dHA6Ly93d3cubWFpbC1hcmNoaXZlLmNvbS91c2Vyc0Bjb2Nvb24uYXBhY2hl Lm9yZy9tc2cyMDgzMi5odG1sDQogKmpvb3NlIGFuZCB1Z29jZWkgKGlyYy5mcmVlbm9kZS5uZXQj Y29jb29uKSBCaWcgVGhhbmtzIHRvIHlvdSBib3RoIQ0KDQonJydTdGF0dXM6JycnIERyYWZ0DQot LS0tDQpQbGVhc2UgYWRkIGNvbW1lbnRzIGFuZCBjb3JyZWN0aW9ucyAtLUphbkhpbnptYW5uDQoN Cj09PT0gTW90aXZhdGlvbi9JZGVhID09PT0NCg0KVGhlIGFwcHJvYWNoIGlzIHRvIGdlbmVyYXRl IGEgcmVjZWl2ZWQgU09BUC1FbnZlbG9wZSB3aXRoIGEgU3RyZWFtR2VuZXJhdG9yIGFuZCBleHRy YWN0aW5nIHRoZSBjYWxsZWQgbWV0aG9kIGFuZCB0aGUgYXJndW1lbnRzIHVzaW5nIFhTTFQsIEZs b3cgYW5kIEpYVGVtcGxhdGVzLg0KDQpUaGUgZmxvd3NjcmlwdCB3aWxsIGNvbXB1dGUgdGhlIHJl cXVlc3QgYW5kIGZpbmFsbHkgYW4gYW5zd2VyLWVudmVsb3BlIHdpbGwgYmUgc2VyaWFsaXplZCB0 byB0aGUgY2xpZW50Lg0KDQo9PT09IEV4YW1wbGUgPT09PQ0KSGVyZSBpcyBhbiBleGFtcGxlIG9m IGEgcG9zc2libGUgc2V0dXAsIGJ1aWxkaW5nIGEgd2Vic2VydmljZSB3aGljaCBwcm92aWRlcyBh biBlY2hvLW1ldGhvZDoNCg0Ke3t7DQpwdWJsaWMgY2xhc3MgV2Vic2VydmljZSgpew0KICAgIHB1 YmxpYyBzeW5jaHJvbmlzZWQgU3RyaW5nIGVjaG8oU3RyaW5nIGVjaG8pew0KICAgICAgICByZXR1 cm4gZWNobzsNCiAgICB9DQp9DQp9fX0NCg0KTm93IGN1c3RvbWVycyBhcmUgc2VuZGluZyBTT0FQ LWVudmVsb3BlcyAodXNpbmcgYSBtaWRkbGV3YXJlIGxpa2UgYXhpcykgbGlrZSB0aGUgZm9sbG93 aW5nOg0Ke3t7DQogIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IklTTy04ODU5LTEiPz4N CiAgPHNvYXBlbnY6RW52ZWxvcGUgeG1sbnM6c29hcGVudj0iaHR0cDovL3NjaGVtYXMueG1sc29h cC5vcmcvc29hcC9lbnZlbG9wZS8iDQp4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEv WE1MU2NoZW1hIg0KeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1p bnN0YW5jZSI+DQogICAgPHNvYXBlbnY6Qm9keT4NCiAgICAgIDxuczE6ZWNobyBzb2FwZW52OmVu Y29kaW5nU3R5bGU9Imh0dHA6Ly9zY2hlbWFzLnhtbHNvYXAub3JnL3NvYXAvZW5jb2RpbmcvIg0K eG1sbnM6bnMxPSJDb2RhdGFXUyI+DQogICAgICAgIDxuczE6YXJnMCB4c2k6dHlwZT0ieHNkOnN0 cmluZyI+SGVsbG8gRWNobyE/PC9uczE6YXJnMD4NCiAgICAgIDwvbnMxOmVjaG8+DQogICAgPC9z b2FwZW52OkJvZHk+DQogIDwvc29hcGVudjpFbnZlbG9wZT4NCn19fQ0KDQpUaGlzIHdpbGwgYmUg Z2VuZXJhdGVkIHdpdGggYSAnJ29yZy5hcGFjaGUuY29jb29uLmdlbmVyYXRpb24uU3RyZWFtR2Vu ZXJhdG9yJycgYW5kDQpmb3J3YXJkZWQgZnJvbSB0aGUgc2l0ZW1hcCB0byB0aGUgZmxvd3Njcmlw dCB3aXRoIChiZSBzdXJlIHRvIGhhdmUgYW4gWE1MU2VyaWFsaXplciB3aG8gd2lsbCBub3QgaW5j bHVkZSB0aGUgPD94bWwgLi4uLWRlY2xhcmF0aW9uKToNCnt7ew0KLi4uDQogICAgICA8bWFwOnNl cmlhbGl6ZXIgbmFtZT0ieG1sbm9wZSIgDQoJCSAgbG9nZ2VyPSJzaXRlbWFwLnNlcmlhbGl6ZXIu eG1sIiBtaW1lLXR5cGU9InRleHQveG1sIiANCgkJICBzcmM9Im9yZy5hcGFjaGUuY29jb29uLnNl cmlhbGl6YXRpb24uWE1MU2VyaWFsaXplciI+DQogICAgICAgICAgPG9taXQteG1sLWRlY2xhcmF0 aW9uPnllczwvb21pdC14bWwtZGVjbGFyYXRpb24+DQogICAgICAgIDwvbWFwOnNlcmlhbGl6ZXI+ DQoNCjwhLS0gPT0gV2Vic2VydmljZSBieSBDb2Nvb24gPT0gLS0+DQogICAgICA8bWFwOnBpcGVs aW5lPg0KICAgICAgICAgIDxtYXA6bWF0Y2ggcGF0dGVybj0id2Vic2VydmljZSI+DQogICAgICAg ICAgICAgIDxtYXA6Y2FsbCBmdW5jdGlvbj0ibWFpbldTIi8+DQogICAgICAgICAgPC9tYXA6bWF0 Y2g+DQogICAgDQogICAgICAgPCEtLSBnZXR0aW5nIHRoZSBzb2FwLWVudmVsb3BlIC0tPg0KICAg ICAgIDxtYXA6bWF0Y2ggcGF0dGVybj0ic29hcERhdGEiPg0KICAgICAgICAgICA8bWFwOmdlbmVy YXRlIHR5cGU9InN0cmVhbSIvPg0KICAgICAgICAgICA8bWFwOnNlcmlhbGl6ZSB0eXBlPSJ4bWxu b3BlIi8+DQogICAgICAgPC9tYXA6bWF0Y2g+DQouLi4NCn19fQ0KDQpUaGUgZmlyc3QgbWF0Y2hl ciBjYWxscyBhIGZsb3dzY3JpcHQsIHdoaWNoIHdpbGwgcmVxdWVzdCB0aGUgZW52ZWxvcGUgYW5k IHNhdmUgaXQgaW4gYW4gJydCeXRlQXJyYXlPdXRwdXRTdHJlYW0nJyB1c2luZyB0aGUgc2Vjb25k IG1hdGNoZXIuIEhlcmUgaXMgdGhlIHJlbGV2YW50IHBhcnQgZnJvbSB0aGUgZmxvd3NjcmlwdDoN Cg0Ke3t7DQogIGZ1bmN0aW9uIG1haW5XUygpew0KICAgIHZhciBzb2FwRGF0YSAgPSBuZXcgamF2 YS5pby5CeXRlQXJyYXlPdXRwdXRTdHJlYW0oKTsNCiAgICANCiAgICAvL2dldHRpbmcgdGhlIGVu dmVsb3BlIG91dCBvZiB0aGUgcmVxdWVzdCAoY2FuIGJlIGRvbmUgb25seSBvbmNlKQ0KICAgIGNv Y29vbi5wcm9jZXNzUGlwZWxpbmVUbygic29hcERhdGEiLCBudWxsLCBzb2FwRGF0YSk7DQogIC4u Lg0KfX19DQoNCk5vdyB0aGF0IHdlIGhhdmUgc2F2ZWQgdGhlIHNvYXBEYXRhIGluIGFuICcnQnl0 ZUFycmF5T3V0cHV0U3RyZWFtJycsIHdlIGFyZSBzZW5kaW5nIGl0DQpiYWNrIHRvIHRoZSBTaXRl bWFwLCB0byBnZXQgdGhlIE1ldGhvZCBvdXQgb2YgdGhlIGVudmVsb3BlICgnZWNobycgaW4gdGhp cyBjYXNlKS4gVGhlcmVmb3JlIHdlIGFyZSB1c2luZyBhbiBKWFRlbXBsYXRlIHdpdGggYSBtYWNy byBhbmQgYSBmdW5jdGlvbiBpbiB0aGUgZmxvd3NjcmlwdCB3aGljaCBjb252ZXJ0cyB0aGUgc3Ry aW5nIGludG8gU0FYICh0aGlzIGlzIGZyb20gdGhlIG1haWxpbmdsaXN0LCBJIGhhdmUgZm91bmQg YW4gZXJyb3IgaW4gaXQgYXQgbGluZSA2ICguLi5zZXRSb290RWxlbWVudChpZ25vcmUpIE5PVCAu Li5zZXRSb290RUxlbWVudCh0cnVlKSByaWdodCBqb29zZT8pOg0Ke3t7DQovKioNCiAqIGZ1bmN0 aW9uIGZyb20gam9vc2U6IGh0dHA6Ly9qb29zZS5pa2kuZmkvY29jb29uL3NheEluSlgudHh0DQog Ki8NCmZ1bmN0aW9uIHN0cmluZ1RvU0FYKCBzdHIsIGNvbnN1bWVyLCBpZ25vcmVSb290RWxlbWVu dCApIHsNCiAgICAgICAgdmFyIGlzID0gbmV3IFBhY2thZ2VzLm9yZy54bWwuc2F4LklucHV0U291 cmNlKCBuZXcgamF2YS5pby5TdHJpbmdSZWFkZXIoIHN0ciApICk7DQogICAgICAgIHZhciBpZ25v cmUgPSAoIGlnbm9yZVJvb3RFbGVtZW50ID09ICJ0cnVlIiApOw0KICAgICAgICB2YXIgcGFyc2Vy ID0gbnVsbDsNCiAgICAgICAgdmFyIGluY2x1ZGVDb25zdW1lciA9IG5ldyBvcmcuYXBhY2hlLmNv Y29vbi54bWwuSW5jbHVkZVhNTENvbnN1bWVyKGNvbnN1bWVyLCBjb25zdW1lciApOw0KICAgICAg ICBpbmNsdWRlQ29uc3VtZXIuc2V0SWdub3JlUm9vdEVsZW1lbnQoIGlnbm9yZSApOw0KICAgICAg ICB0cnkgeyAgIA0KICAgICAgICAgICAgICAgIHBhcnNlciA9IGNvY29vbi5nZXRDb21wb25lbnQo UGFja2FnZXMub3JnLmFwYWNoZS5leGNhbGlidXIueG1sLnNheC5TQVhQYXJzZXIuUk9MRSApOw0K ICAgICAgICAgICAgICAgIHBhcnNlci5wYXJzZSggaXMsIGluY2x1ZGVDb25zdW1lciApOyAgICAN CiAgICAgICAgfSBmaW5hbGx5IHsNCiAgICAgICAgICAgICAgICBpZiAoIHBhcnNlciAhPSBudWxs ICkgY29jb29uLnJlbGVhc2VDb21wb25lbnQoIHBhcnNlciApOw0KICAgICAgICB9DQp9DQp9fX0N Cg0Kbm93IGxldHMgZ28gYmFjayBpbiB0aGUgZmxvd3NjcmlwdCByaWdodCB0byB0aGUgcG9pbnQs IGFmdGVyIHdlIGhhdmUgY2FsbGVkIHRoZSAgInNvYXBEYXRhIiBtYXRjaGVyOg0Ke3t7DQpmdW5j dGlvbiBtYWluV1MoKXsNCiAgICB2YXIgc29hcERhdGEgID0gbmV3IGphdmEuaW8uQnl0ZUFycmF5 T3V0cHV0U3RyZWFtKCk7DQogICAgDQogICAgLy9nZXR0aW5nIHRoZSBlbnZlbG9wZSBvdXQgb2Yg dGhlIHJlcXVlc3QgKGNhbiBiZSBkb25lIG9ubHkgb25jZSkNCiAgICBjb2Nvb24ucHJvY2Vzc1Bp cGVsaW5lVG8oInNvYXBEYXRhIiwgbnVsbCwgc29hcERhdGEpOw0KICAuLi4NCi8vaGVyZSB3ZSBn bzoNCg0KICAgIC8vZ2V0dGluZyB0aGUgbWV0aG9kIG91dCBvZiB0aGUgc29hcC1jb250ZW50DQog ICAgY29jb29uLnNlc3Npb24uc2V0QXR0cmlidXRlKCAic2F4ZXIiLCBzdHJpbmdUb1NBWCAgKTsN CiAgICB2YXIgc29hcE1ldGhvZCAgID0gbmV3IGphdmEuaW8uQnl0ZUFycmF5T3V0cHV0U3RyZWFt KCk7CQ0KICAgIGNvY29vbi5wcm9jZXNzUGlwZWxpbmVUbygic29hcE1ldGhvZCIsIHsic29hcERh dGEiOnNvYXBEYXRhfSwgc29hcE1ldGhvZCk7CQ0KICAgIGNsb2coInNvYXBNZXRob2Q6XG4gIiAr IHNvYXBNZXRob2QgKyAiXG4iKTsNCn19fQ0KDQpCYWNrIGluIHRoZSBzaXRlbWFwIHdlIGdlbmVy YXRlIHRoZSBjb250ZW50IHdpdGggdGhlIEpYR2VuZXJhdG9yIGFuZCBhIFRlbXBsYXRlIGFzIGZv bGxvd3MgKGJlIGF3YXJlLCB0aGF0IGxpbmVicmVha3MgYW5kIGJsYW5rcyBhZnRlciB0aGUgPC9q eDptYWNybz4gYXJlIGdvaW5nIHJpZ2h0IGluIHRoZSB4bWxjb250ZW50KToNCnt7ew0KPD94bWwg dmVyc2lvbj0iMS4wIj8+DQo8c29hcCB4bWxuczpqeD0iaHR0cDovL2FwYWNoZS5vcmcvY29jb29u L3RlbXBsYXRlcy9qeC8xLjAiPg0KIDxqeDptYWNybyBuYW1lPSJpbmplY3QiPg0KICA8ang6cGFy YW1ldGVyIG5hbWU9InZhbHVlIi8+DQogIDxqeDpwYXJhbWV0ZXIgbmFtZT0iaWdub3JlUm9vdEVs ZW1lbnQiIGRlZmF1bHQ9ImZhbHNlIi8+DQogIDxqeDpzZXQgdmFyPSJpZ25vcmVkIiB2YWx1ZT0i JHtjb2Nvb24uc2Vzc2lvbi5zYXhlciggdmFsdWUsIGNvY29vbi5jb25zdW1lciwgaWdub3JlUm9v dEVsZW1lbnQgKX0iLz4NCiA8L2p4Om1hY3JvPjxpbmplY3QgdmFsdWU9IiR7c29hcERhdGF9IiBp Z25vcmVSb290RWxlbWVudD0iZmFsc2UiLz48L3NvYXA+DQp9fX0NCg0KVGhlIG1hdGNoZXIgaW4g dGhlIFNpdGVtYXAgbG9va3MgbGlrZToNCnt7ew0KICAgIDwhLS0gd2hpY2ggTWV0aG9kIGlzIGNh bGxlZD8gLS0+DQogICAgPG1hcDptYXRjaCBwYXR0ZXJuPSJzb2FwTWV0aG9kIj4NCiAgICAJPG1h cDpnZW5lcmF0ZSB0eXBlPSJqeCIgc3JjPSJ4bWwvZHVtbXkuangiPg0KICAgIAkJPG1hcDpwYXJh bWV0ZXIgbmFtZT0ic29hcERhdGEiIHZhbHVlPSJ7Zmxvdy1hdHRyaWJ1dGU6c29hcERhdGF9Ii8+ DQogICAgCTwvbWFwOmdlbmVyYXRlPg0KICAgICAgICA8IS0tPG1hcDp0cmFuc2Zvcm0gc3JjPSJ4 c2wvc29hcE1ldGhvZC54c2wiLz4tLT4NCiAgICAgICAgICAgIDxtYXA6c2VyaWFsaXplIHR5cGU9 InhtbCIvPg0KICAgICAgCTwvbWFwOm1hdGNoPg0KfX19DQoNCicnJ05vdGUnJyc6IHRoZSBzb2Fw TWV0aG9kLnhzbCBzaG91bGQgbm93IHRyYW5zZm9ybSB0aGUgbWV0aG9kbmFtZSBvdXQgb2YgdGhl IGVudmVsb3BlLiAod29yayBpbiBwcm9ncmVzcykgaXQgY291bGQgYmUgc29tZXRoaW5nIGxpa2U6 DQp7e3sNCjw/eG1sIHZlcnNpb249IjEuMCI/Pg0KPHhzbDpzdHlsZXNoZWV0IHZlcnNpb249IjEu MCIgeG1sbnM6eHNsPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L1hTTC9UcmFuc2Zvcm0iPg0KICAg IDx4c2w6b3V0cHV0IG1ldGhvZD0idGV4dCIvPg0KICAgIA0KICAgIDx4c2w6dGVtcGxhdGUgbWF0 Y2g9Ii9zb2FwL0VudmVsb3BlL0JvZHkiPg0KICAgICAgICA8eHNsOmFwcGx5LXRlbXBsYXRlcy8+ DQogICAgPC94c2w6dGVtcGxhdGU+DQogICAgDQogICAgPHhzbDp0ZW1wbGF0ZSBtYXRjaD0iKlsx XSI+DQogICAgICAgIDx4c2wgdmFsdWUtb2Ygc2VsZWN0PSJsb2NhbC1uYW1lKCkiLz4NCiAgICA8 L3hzbDp0ZW1wbGF0ZT4NCg0KPC94c2w6c3R5bGVzaGVldD4NCn19fQ0KDQpUT0RPOiBkaXNwYXRj aCB0aGUgbWV0aG9kIGFuZCBnZW5lcmF0ZSBldmVudHVhbGx5IHBhc3NlZCBwYXJhbWV0ZXJzIHdp dGggbWF0Y2hlcnMgbGlrZSAnJ3NvYXBNZXRob2QnJw0KDQoNClRoZSBhbnN3ZXIgY2FuIHRoZW4g YmUgc2VyaWFsaXplZCB3aXRoIGFuIG90aGVyIG1hdGNoZXIgbGlrZToNCnt7ew0KICAgICAgCTxt YXA6bWF0Y2ggcGF0dGVybj0iYW5zd2VyIj4NCiAgICAgICAgICAgIDxtYXA6Z2VuZXJhdGUgc3Jj PSJ4bWwvZHVtbXkueG1sIiAvPg0KICAgICAgICAgICAgPG1hcDp0cmFuc2Zvcm0gc3JjPSJ4c2wv c29hcC54c2wiPg0KICAgICAgICAgICAgICA8bWFwOnBhcmFtZXRlciBuYW1lPSJyZXQiIHZhbHVl PSJ7Zmxvdy1hdHRyaWJ1dGU6cmV0fSIvPg0KICAgICAgICAgICAgPC9tYXA6dHJhbnNmb3JtPg0K ICAgICAgICAgICAgPG1hcDpzZXJpYWxpemUgdHlwZT0ieG1sIi8+DQogICAgICAgICA8L21hcDpt YXRjaD4gICAgICAgICANCn19fQ0KYW5kIGEgc29hcC54c2wgbGlrZToNCnt7ew0KPD94bWwgdmVy c2lvbj0iMS4wIj8+DQo8eHNsOnN0eWxlc2hlZXQgdmVyc2lvbj0iMS4wIiB4bWxuczp4c2w9Imh0 dHA6Ly93d3cudzMub3JnLzE5OTkvWFNML1RyYW5zZm9ybSI+DQo8eHNsOnBhcmFtIG5hbWU9InJl dCIvPg0KDQo8eHNsOnRlbXBsYXRlIG1hdGNoPSIvIj4NCg0KPHNvYXBlbnY6RW52ZWxvcGUgeG1s bnM6c29hcGVudj0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIA0K CSAJeG1sbnM6eHNkPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSIgDQoJIAl4bWxu czp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIj4NCiAgPHNv YXBlbnY6Qm9keT4NCiAgICAgPG5zMTpoZWxsb1Jlc3BvbnNlIHNvYXBlbnY6ZW5jb2RpbmdTdHls ZT0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbmNvZGluZy8iIA0KICAgIAl4bWxu czpuczE9IkNvZGF0YVdTIj4NCiAgICAJPG5zMTpoZWxsb1JldHVybiB4c2k6dHlwZT0ieHNkOnN0 cmluZyI+DQogICAgCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iJHJldCIvPg0KICAgIAk8L25zMTpo ZWxsb1JldHVybj4NCiAgICA8L25zMTpoZWxsb1Jlc3BvbnNlPg0KICA8L3NvYXBlbnY6Qm9keT4N Cjwvc29hcGVudjpFbnZlbG9wZT4NCiAgDQo8L3hzbDp0ZW1wbGF0ZT4NCjwveHNsOnN0eWxlc2hl ZXQ+DQp9fX0NCg0KVGhlIHJldHVybnBhcmFtZXRlciB3b3VsZCBiZSBwYXNzZWQgZnJvbSB0aGUg Zmxvd3NjcmlwdCBhcyBmb2xsb3dzOg0Ke3t7DQovL3NlbmRpbmcgdGhlIGFuc3dlcg0KCWNvY29v bi5zZW5kUGFnZSgiYW5zd2VyIiwgeyJyZXQiOnJldH0pOw0KfS8vZW5kIG9mIG1haW5XUw0KfX19 DQoNCldoZXJlIHRoaXMgc2hvdWxkIGJlIHJlZmFjdG9yZWQgdG8gYSBKWFRlbXBsYXRlIG1heWJl DQotLS0tDQoNCjopIE9rLCB0aGF0cyBteSBmaXJzdCB3aWtpcGFnZS4gSWYgaXRzIGFsbCBjcmFw LCBqdXN0IGRlbGV0ZSBpdCA7KQ0KDQpXaGF0IGRvIHlvdSB0aGluayBhYm91dCB0aGlzIGFwcHJv YWNoPw0KDQpBbnkgc3VnZ2VzdGlvbnMgYXJlIHdlbGNvbWUuDQo=