PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSIgPz4KPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CjxoZWFkPgo8dGl0bGU+V1RQIFBNQyBNaW51dGVzIGZvciBNYXJjaCAyMiwgMjAwNSBDb25mZXJlbmNlIENhbGw8L3RpdGxlPgo8L2hlYWQ+Cjxib2R5CiAgICBhbGluaz0iI2ZmMDAwMCIKICAgIGJnY29sb3I9IiNmZmZmZmYiCiAgICBsaW5rPSIjMDAwMGVlIgogICAgdGV4dD0iIzAwMDAwMCIKICAgIHZsaW5rPSIjNTUxYThiIj4KPHRhYmxlCiAgICBib3JkZXI9IjAiCiAgICBjZWxscGFkZGluZz0iMiIKICAgIGNlbGxzcGFjaW5nPSI1IgogICAgd2lkdGg9IjEwMCUiPgogICAgPHRib2R5PgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkCiAgICAgICAgICAgICAgICBjb2xzcGFuPSIyIgogICAgICAgICAgICAgICAgYWxpZ249ImxlZnQiCiAgICAgICAgICAgICAgICBiZ2NvbG9yPSIjMDA4MGMwIgogICAgICAgICAgICAgICAgdmFsaWduPSJ0b3AiPjxiPiA8Zm9udAogICAgICAgICAgICAgICAgY29sb3I9IiNmZmZmZmYiCiAgICAgICAgICAgICAgICBmYWNlPSJBcmlhbCxIZWx2ZXRpY2EiPlBNQyBDb25mZXJlbmNlIENhbGwgLSBNYXJjaCAyMiwgMjAwNTwvZm9udD48L2I+PC90ZD4KICAgICAgICA8L3RyPgogICAgPC90Ym9keT4KPC90YWJsZT4KPHRhYmxlCiAgICBib3JkZXI9IjAiCiAgICBjZWxscGFkZGluZz0iMiIKICAgIGNlbGxzcGFjaW5nPSI1IgogICAgd2lkdGg9IjEwMCUiPgogICAgPHRib2R5PgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPgogICAgICAgICAgICA8aDI+V1RQIFBNQyBNaW51dGVzIGZvciBNYXJjaCAyMiwgMjAwNSBDb25mZXJlbmNlIENhbGw8L2gyPgogICAgICAgICAgICA8cD5BdHRlbmRpbmc6IFRpbSBXYWduZXIgW1RXXSwgQXJ0aHVyIFJ5bWFuIFtBUl0sIERhdmlkIFdpbGxpYW1zIFtEV10sIERvbWluaXF1ZSBEZSBWaXRvIFtEVl0sIEpvY2hlbgogICAgICAgICAgICBLcmF1c2UgW0pLXSwgTmFjaSBEYWkgW05EXSwgQmpvcm4gRnJlZW1hbi1CZW5zb24gW0JCXSwgQ2hyaXN0b3BoZSBOZXkgW0NOXTwvcD4KICAgICAgICAgICAgPHA+T3RoZXJzOiBMYXdyZW5jZSBNYW5kZWwgKHJlcHJlc2VudGluZyBXVFAgY29tbXVuaXR5KSBbTE1dPC9wPgogICAgICAgICAgICA8aDI+UHJvY2VkdXJhbCBtYXR0ZXJzPC9oMj4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPlRXOiBSZW1pbmRlciB0aGF0IHByaXZhdGUgbWFpbGluZyBsaXN0ICh3dHAtcG1jQG9iamVjdHdlYi5vcmcpIGhhcyBiZWVuIGRlY29tbWlzc2lvbmVkIGFuZCBhbGwKICAgICAgICAgICAgICAgIFBNQyBtZW1iZXJzIGFuZCBvdGhlciBpbnRlcmVzdGVkIHBhcnRpZXMgc2hvdWxkIHN1YnNjcmliZSB0byB0aGUgRWNsaXBzZS1ob3N0ZWQgb25lCiAgICAgICAgICAgICAgICAod3RwLXBtY0BlY2xpcHNlLm9yZykuPC9saT4KICAgICAgICAgICAgICAgIDxsaT5BUjogUmVxdWVzdGVkIHRoYXQgRU1PIGludmVzdGlnYXRlIElSQyBzZXJ2ZXIgZm9yIHRlbGVjb24gdXNlLjwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDxoMj5Db21tdW5pdHkgW0xNXTwvaDI+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgIDxsaT5PT1BTTEEgc3VibWlzc2lvbnMgZm9yIHR1dG9yaWFsIGFuZCBwYW5lbCBjb21wbGV0ZWQ8L2xpPgogICAgICAgICAgICAgICAgPGxpPkpLIGFuZCBEViBhbHNvIHByZXNlbnRpbmcgYXQgY29uZmVyZW5jZXM7IHdpbGwgdXBkYXRlIExhd3JlbmNlIHdpdGggaW5mbzwvbGk+CiAgICAgICAgICAgICAgICA8bGk+TWVzc2FnaW5nOiBubyByZXNwb25zZSB5ZXQgZnJvbSBXVFAgY29tbXVuaXR5OyBMTSByZXF1ZXN0ZWQgdGhhdCBQTUMgbWVtYmVycyBhcHBlYWwgdG8gdGhlaXIKICAgICAgICAgICAgICAgIHJlc3BlY3RpdmUgb3JnYW5pemF0aW9ucyBmb3Igc3VwcG9ydCBpbiB3cml0aW5nIGFydGljbGVzIGFuZCBjb21tdW5pY2F0aW5nIFdUUCBpbmZvOyBFY2xpcHNlQ29ybmVyIGluCiAgICAgICAgICAgICAgICBwYXJ0aWN1bGFyIGlzIGVhc3kgdG8gcHVibGlzaCB0byBhbmQgZWFnZXIgZm9yIG1hdGVyaWFsPC9saT4KICAgICAgICAgICAgICAgIDxsaT5UVzogQkVBIGVXb3JsZCwgZGV2MmRldiBpbnRlcnZpZXcsIGFuZCBKYXZhT25lIGNvbmZlcmVuY2UgYXJlIGxpa2VseSBjYW5kaWRhdGVzIGZvciBXVFAKICAgICAgICAgICAgICAgIHByZXNlbnRhdGlvbnM7IG1vcmUgYXMgdGhlIGV2ZW50IGRhdGVzL2FnZW5kYXMgY3J5c3RhbGxpemU8L2xpPgogICAgICAgICAgICAgICAgPGxpPkNOOiBPYmplY3RXZWIgaG9zdGluZyBjb25mZXJlbmNlIGluIFZpZXQgTmFtIGF0IHdoaWNoIFdUUCBpbmZvcm1hdGlvbiB3aWxsIGJlIHByZXNlbnRlZDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+V1RQIGhlbHAgc3lzdGVtIGluaXRpYWwgY29udGVudCBzaG91bGQgYmUgYXZhaWxhYmxlIGJ5IG5leHQgd2VlayAoZGVsYXllZCBmcm9tIHByZXZpb3VzCiAgICAgICAgICAgICAgICBlc3RpbWF0ZSk7IGN1cnJlbnRseSB3b3JraW5nIHRvd2FyZHMgc3RhYmxlIGxvY2FsIGJ1aWxkczwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDxoMj5Eb2N1bWVudGF0aW9uIFN0cmF0ZWd5PC9oMj4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPlBNQyBkaXNjdXNzZWQgdGhlIGxpa2VsaWhvb2Qgb2YgYSBsYWcgYmV0d2VlbiBjb2RlIEdBIGFuZCBkb2N1bWVudGF0aW9uIHJlYWRpbmVzcywgZXNwZWNpYWxseQogICAgICAgICAgICAgICAgaW4gbGlnaHQgb2YgdGhlIGxpbWl0ZWQgcmVzb3VyY2VzIGFuZCB0aGUgc2l6ZSBvZiB0aGUgaW5pdGlhbCBkb2N1bWVudGF0aW9uIGNvbnRlbnQgZHJvcCBmcm9tIElCTS4gSWYgd2UKICAgICAgICAgICAgICAgIHNoaXAgaW4gSnVseSwgYSBTZXB0ZW1iZXIgZG9jIHJlbGVhc2UsIHdpdGggc3Vic2VxdWVudCBxdWFydGVybHkgdXBkYXRlcywgbWlnaHQgYmUgYSB0cmFjdGFibGUgc2NoZWR1bGUuCiAgICAgICAgICAgICAgICBFeHBlY3QgdG8gdXNlIHByb2Zlc3Npb25hbCB3cml0ZXJzIChkZXZzIG1heSBhdXRob3IgaW5pdGlhbCBjb250ZW50IG9yIGVkaXQgc3Vic2VxdWVudGx5KS4gSW5pdGlhbCBjb2RlCiAgICAgICAgICAgICAgICByZWxlYXNlIHdpbGwgY29udGFpbiBzYW1wbGVzLCBKYXZhRG9jcywgYW5kIGFueXRoaW5nIGVsc2UgdGhhdJJzIHJlYWR5IGF0IHRoYXQgcG9pbnQuPC9saT4KICAgICAgICAgICAgICAgIDxsaT5Eb2N1bWVudGF0aW9uIHdpbGwgaGF2ZSBhIHNlcGFyYXRlIGJ1aWxkIHByb2Nlc3Mvc2NoZWR1bGUuIExNL0FSIHRvIHB1cnN1ZSBvZmZsaW5lLjwvbGk+CiAgICAgICAgICAgICAgICA8bGk+QVI6IElCTSBoYXMgcHJvZHVjdCBkb2N1bWVudGF0aW9uIHJlc291cmNlcyB0aGF0IHdpbGwgY29udHJpYnV0ZSB0byB0aGlzIGVmZm9ydDwvbGk+CiAgICAgICAgICAgICAgICA8bGk+VFc6IEJFQSBwcm9iYWJseSBpbiBzaW1pbGFyIHN0YXRlOyBzb21lIGZyYWN0aW9uIG9mIGEgZG9jIHJlc291cmNlIGxpa2VseSBhdmFpbGFibGUgdG8gaGVscAogICAgICAgICAgICAgICAgcG9zdCAoQkVBknMpIDkuMCBkZWxpdmVyeTwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIFtQTUMgbWVtYmVycyBvbmx5IGZvciB0aGUgcmVtYWluaW5nIHBvcnRpb24gb2YgdGhlIG1lZXRpbmddCiAgICAgICAgICAgIDxoMj5SZXF1aXJlbWVudHMgR3JvdXAgUmVwb3J0IFtKS108L2gyPgogICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICA8bGk+UmVxdWlyZW1lbnRzIGdyb3VwIGNvbXBvc2l0aW9uOgogICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgIDxsaT5QYXVsIE1laWplciAoQkVBKTwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPlRvZGQgV2lsbGlhbXMgKEdlbnVpdGVjKTwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPkFydGh1ciBSeW1hbiAoSUJNKTwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPkpvY2hlbiBLcmF1c2UgKElubm9vcHJhY3QsIGNoYWlyKTwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpPkl2ZWxpbiBJdmFub3YgKEpCb3NzKTwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgIDxsaT5GaXJzdCBtZWV0aW5nIHdpbGwgZm9sbG93IG5leHQgd2Vla5JzIFBNQyBjYWxsPC9saT4KICAgICAgICAgICAgICAgIDxsaT5WZXJzaW9uIG51bWJlcmluZyCWIFBNQyBkaXNjdXNzZWQgbWVyaXRzIG9mIG5leHQgdmVyc2lvbiBiZWluZyCTMS4xlCAoaGlzdG9yaWNhbCBjb25zaXN0ZW5jeSwKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uIG9mIG1hdHVyaXR5IG9mIHByb2plY3QpIHZlcnN1cyCTMy4ylCAoYWxpZ25tZW50IHdpdGggcGxhdGZvcm0sIGxlc3MgY29uZnVzaW9uIGZvciB1c2VycykuCiAgICAgICAgICAgICAgICBUYWJsZWQgZmluYWwgZGVjaXNpb24gcGVuZGluZyBmZWVkYmFjayBmcm9tIEVjbGlwc2UgQ291bmNpbHMgbmV4dCBtb250aC48L2xpPgogICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8aDI+QXJjaGl0ZWN0dXJlIEdyb3VwIFJlcG9ydCBbRFddPC9oMj4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPlNldmVyYWwgbmV3IGJ1Z3MgcG9zdGVkIFtzZWUgcXVlcnkgc3RyaW5nIGluIGxhc3Qgd2Vla5JzIG1pbnV0ZXMglnR3XTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+VGh1cnNkYXkgY2FsbCBhZ2VuZGE6IEJyb3dzZXIgcmVzb2x1dGlvbiAobW92ZSB0byBwbGF0Zm9ybT8pLCB0YWJiZWQgcHJvcGVydHkgcGFnZSAoc2FtZQogICAgICAgICAgICAgICAgcXVlc3Rpb24pPC9saT4KICAgICAgICAgICAgICAgIDxsaT5UVzogV2hhdCByb2xlIGlzIEFyY2hpdGVjdHVyZSBHcm91cCBwbGF5aW5nIGluIEFQSSByZXZpZXc/IERXOiBGb2N1c2luZyBvbiBXVFAgdnMuIHBsYXRmb3JtIGFuZAogICAgICAgICAgICAgICAgY3Jvc3MgY29tcG9uZW50IGlzc3VlcyBhcyBkZXRlY3RlZCBieSB0aGVtc2VsdmVzLCBjb21wb25lbnQgbGVhZHMsIG9yIG1lbWJlcnMgb2YgdGhlIGNvbW11bml0eS48L2xpPgogICAgICAgICAgICAgICAgPGxpPlRXOiBTdWdnZXN0ZWQgdGhhdCBhIGNvbW11bml0eSByZXZpZXcgb2YgdGhlIEFQSXMgaW4gdGhlIGZvcm0gb2YgMS0yIGhvdXIgcHJlc2VudGF0aW9ucyBieSBlYWNoCiAgICAgICAgICAgICAgICBjb21wb25lbnQgbGVhZCB3b3VsZCBiZSBhIGZvcnVtIGZvciBBUEkgY29tbWVudGFyeS4gQXJjaGl0ZWN0dXJlIEdyb3VwIGNvdWxkIGhlbHAgc3RydWN0dXJlIHRoZSByZXZpZXcsCiAgICAgICAgICAgICAgICBidXQgdGhlIGNvbW11bml0eSBhdCBsYXJnZSB3b3VsZCBvd24gdGhlIG91dGNvbWUuIEFSIG5vdGVkIHRoYXQgdGltZWZyYW1lIG11c3QgYmUgcG9zdCBNNCB0byBhbGxvdyBBUEkKICAgICAgICAgICAgICAgIGRlZmluaXRpb24gcHJvY2VzcyB0byBjb21wbGV0ZS48L2xpPgogICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8aDI+RGlzayBRdW90YS9CdWlsZCBJc3N1ZXMgW0FSXTwvaDI+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgIDxsaT5Qcm9ibGVtIGlzIG5vdCBzbyBtdWNoIGRpc2sgcXVvdGEgb24gb3VyIG1haW4gc2VydmVyIGFzIHRoZSBsb2FkIHdlIHBsYWNlIG9uIG1pcnJvcnM7IGlmIHdlCiAgICAgICAgICAgICAgICB0cmltIGRvd24gdGhlIG5pZ2h0bHkgc2l6ZSwgdGhhdCB3aWxsIGhhdmUgdGhlIGJpZ2dlc3QgaW1wYWN0PC9saT4KICAgICAgICAgICAgICAgIDxsaT5UaHJlZSBzdWdnZXN0aW9ucwogICAgICAgICAgICAgICAgPG9sPgogICAgICAgICAgICAgICAgICAgIDxsaT5Eb26SdCByZXRhaW4gbmlnaHRseSBidWlsZHMgYmV5b25kIHRoZSBuZXh0IGludGVncmF0aW9uIGJ1aWxkPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGk+RG9uknQgcHVibGlzaCBub24tU0RLIGJ1bmRsZSBpbiBuaWdodGxpZXMgKHRoZXmScmUgb25seSBmb3IgZGV2IHVzZSk8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaT5Eb26SdCBwdWJsaXNoIFdTVC1vbmx5IGJ1bmRsZSBpbiBuaWdodGxpZXMgKHNhbWUgcmVhc29uKTwvbGk+CiAgICAgICAgICAgICAgICA8L29sPgogICAgICAgICAgICAgICAgUE1DIHJlc29sdmVkIHRvIGFkb3B0IGFsbCB0aHJlZSBjaGFuZ2VzIHRvIHRoZSBwcm9jZXNzLCBhbmQgdGhhdCCTd2FybXVwlCAocHJlLWZpbmFsKSBJLWJ1aWxkcyBuZWVkIG5vdAogICAgICAgICAgICAgICAgYmUga2VwdCBhZnRlciB0aGUgbmV4dCBzdWNjZXNzZnVsIEktYnVpbGQuPC9saT4KICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPGgyPkludGVncmF0aW9uIEJ1aWxkcyBbTkRdPC9oMj4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgPGxpPlBsYXRmb3JtIGluc2lzdHMgdGhhdCB0ZXN0IGZhaWx1cmUgaW1wbGllcyB0aGUgcmVzdWx0IGlzIG5vdCBhbiBJLWJ1aWxkOyB3ZZJ2ZSBsYWNrZWQgdGhhdAogICAgICAgICAgICAgICAgbGV2ZWwgb2YgcXVhbGl0eSBpbiBvdXIgSS1idWlsZHM8L2xpPgogICAgICAgICAgICAgICAgPGxpPk91ciBwcmV2aW91cyBtaWxlc3RvbmUgcmVsZWFzZXMgaGF2ZSBiZWVuIHN0cmVzc2Z1bCBiZWNhdXNlIG9mIGFjY3VtdWxhdGVkIHRlc3QgZmFpbHVyZSBkZWJ0PC9saT4KICAgICAgICAgICAgICAgIDxsaT5DdXJyZW50ICh1cGRhdGVkKSBwcm9jZXNzIGlzIHRvIGF0dGVtcHQgdGhlIEktYnVpbGQgb24gVHVlc2RheSwgZm9jdXMgb24gYnVpbGQgb3IgdGVzdCBmYWlsdXJlcwogICAgICAgICAgICAgICAgbWlkd2VlayBhdHRlbXB0aW5nIHRvIHByb2R1Y2UgYSBzdWNjZXNzZnVsIGJ1aWxkIG9uIFRodXJzZGF5LiBFeHBlY3RhdGlvbiBpcyB0aGF0IHRoZXJlIGFyZSBubyBsYXJnZQogICAgICAgICAgICAgICAgY2hhbmdlcyBiZXR3ZWVuIFR1ZXNkYXkgYW5kIFRodXJzZGF5OyBjaGFuZ2VzIGNhbiBiZSByZWxlYXNlZCB0byBoZWFkLCBqdXN0IG5vdCBpbmNsdWRlZCBpbiB0aGUgSS1idWlsZAogICAgICAgICAgICAgICAgY2FuZGlkYXRlLjwvbGk+CiAgICAgICAgICAgICAgICA8bGk+QmlnZ2VzdCByZW1haW5pbmcgcHJvYmxlbSBpcyBnZXR0aW5nIHBlb3BsZSB0byBmb2N1cyBvbiB0ZXN0czsgd2lsbCBub3cgPGVtPnJlcXVpcmU8L2VtPiB0ZXN0cwogICAgICAgICAgICAgICAgdG8gcGFzcyB0byByZWxlYXNlIHRoZSBJLWJ1aWxkIChvdGhlcndpc2Ugd2UgZmFpbCBmb3IgdGhlIHdlZWsgYW5kIHRyeSBhZ2FpbiB0aGUgZm9sbG93aW5nIHdlZWsgcmF0aGVyCiAgICAgICAgICAgICAgICB0aGFuIHBvc3RpbmcgdGhlIGZhaWx1cmUpLjwvbGk+CiAgICAgICAgICAgICAgICA8bGk+W0FSXSBGb3IgbTQgd2UgaGF2ZSB0d28gYnVja2V0czogk3JlYWyUIHRlc3RzLCBhbmQgQVBJIHRlc3RzIHRoYXQgZG8gbm90IHlldCBoYXZlIGJhY2tpbmcKICAgICAgICAgICAgICAgIGltcGxlbWVudGF0aW9uIGFuZCB3aWxsIHRoZXJlZm9yZSBmYWlsLiBGb3IgdGhlIGR1cmF0aW9uIG9mIG00LCB3ZSBuZWVkIHRvIG1hbnVhbGx5IGRpZmZlcmVudGlhdGUgaW4KICAgICAgICAgICAgICAgIGRlY2xhcmluZyB0aGUgSS1idWlsZCBncmVlbi48L2xpPgogICAgICAgICAgICAgICAgPGxpPltORF0gQWxzbywgTGludXggbWFjaGluZSBzaG91bGQgYmUgdXAgdGhpcyB3ZWVrZW5kLCBzbyB3ZSB3aWxsIHN0YXJ0IGhhdmluZyBwYXJhbGxlbCBidWlsZHMgb24KICAgICAgICAgICAgICAgIExpbnV4IGFzIHdlbGwgYXMgV2luZG93cy48L2xpPgogICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8aDI+QVBJIFJldmlldzwvaDI+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgIDxsaT5QTUMgcmV2aWV3ZWQgaW5pdGlhbCBBUEkgc3RhdGlzdGljczsgd2lsbCB0cmFjayBjb21wb25lbnQgY29udmVyZ2VuY2Ugb3ZlciB0aW1lIHRvIGhlbHAgZHJpdmUKICAgICAgICAgICAgICAgIHByb2Nlc3MuPC9saT4KICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPGgyPlJEQiAvIERUUCBJc3N1ZXMgW0FSXTwvaDI+CiAgICAgICAgICAgIEFydGh1ciBwb3N0ZWQgbWludXRlcyBvZiBwcmV2aW91cyBtZWV0aW5nIHRvIG1haWxpbmcgbGlzdC4gQ29tcG9uZW50cyB3b3VsZCBsaWtlbHkgbW92ZSBpbiBBdWd1c3QgKHBlbmRpbmcKICAgICAgICAgICAgcHJvcG9zYWwgYXBwcm92YWwpOyBzdGlsbCBjb25zaWRlcmluZyB3aGV0aGVyIHRvIHJlbmFtZSB0aGVtIGluIGFkdmFuY2UgdG8gbGltaXQgbGF0ZXIgY2h1cm4gb24gb3RoZXIgV1RQCiAgICAgICAgICAgIGNvbXBvbmVudHMgdGhhdCBhcmUgZG93bnN0cmVhbS4KICAgICAgICAgICAgPGgyPkFjdGlvbiBJdGVtczo8L2gyPgogICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICA8bGk+W0pLL0RWL0NOXSB1cGRhdGUgTGF3cmVuY2Ugd2l0aCBpbmZvIG9uIHVwY29taW5nIGNvbmZlcmVuY2UgcHJlc2VudGF0aW9ucyBvZiBXVFAgaW5mbzwvbGk+CiAgICAgICAgICAgICAgICA8bGk+W1RXL0RXXSB3b3JrIG9uIHNjaGVkdWxpbmcgQVBJIHJldmlldyBieSBjb21wb25lbnQgbGVhZHM8L2xpPgogICAgICAgICAgICAgICAgPGxpPltORF0gdXBkYXRlIGJ1aWxkIHNjcmlwdHMgYmFzZWQgb24gdGhlIJNRdW90YZQgcmVzb2x1dGlvbnMgKHNlZSBhYm92ZSk8L2xpPgogICAgICAgICAgICAgICAgPGxpPltORF0gdXBkYXRlIGJ1aWxkIHBhZ2Ugd2l0aCBwcm9jZXNzIGNoYW5nZSAodGVzdCBwYXNzIHJlcXVpcmVtZW50KSBmb3IgSS1idWlsZHM8L2xpPgogICAgICAgICAgICAgICAgPGxpPltBUl0gYXNrIEplZmZyZXkgdG8gYWRkIHRpbWUgc2VyaWVzIHRyYWNraW5nIHRvIEFQSSBzdGF0aXN0aWNzIHBhZ2VzIHNvIHdlIGNhbiB0cmFjayB0cmVuZHMgYXQKICAgICAgICAgICAgICAgIHRoZSBjb21wb25lbnQgbGV2ZWw8L2xpPgogICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8c21hbGw+TWludXRlcyB0YWtlbiBieSBUaW0gV2FnbmVyLCBNYXJjaCAyMiwgMjAwNTwvc21hbGw+PC90ZD4KICAgICAgICA8L3RyPgogICAgICAgIDx0cj4KICAgICAgICAgICAgPHRkPiYjMTYwOzwvdGQ+CiAgICAgICAgPC90cj4KICAgIDwvdGJvZHk+CjwvdGFibGU+CjwvYm9keT4KPC9odG1sPgo=