PG5hdj4KICA8aDI+VGFibGUgb2YgQ29udGVudHM8L2gyPgogIDx1bD4KICAgIDxsaT48YSBocmVmPSIjaW50cm9kdWN0aW9uIj5JbnRyb2R1Y3Rpb248L2E+PC9saT4KICAgIDxsaT48YSBocmVmPSIjd2hhdC1pcy1jYWxvc2hhIj5XaGF0IGlzIENhbC9PU0hBPzwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9IiNjb3ZlcmFnZSI+V2hvIGlzIENvdmVyZWQgYnkgQ2FsL09TSEE/PC9hPjwvbGk+CiAgICA8bGk+PGEgaHJlZj0iI2VtcGxveWVyLWR1dGllcyI+RXNzZW50aWFsIEVtcGxveWVyIER1dGllczwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9IiNpaXBwIj5Jbmp1cnkgYW5kIElsbG5lc3MgUHJldmVudGlvbiBQcm9ncmFtIChJSVBQKTwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9IiNlbXBsb3llZS1yaWdodHMiPkVtcGxveWVlIFJpZ2h0cyBhbmQgUmVzcG9uc2liaWxpdGllczwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9IiNzcGVjaWZpYy1yZXF1aXJlbWVudHMiPlNwZWNpZmljIFNhZmV0eSBSZXF1aXJlbWVudHM8L2E+CiAgICAgIDx1bD4KICAgICAgICA8bGk+PGEgaHJlZj0iI2hlYXQtaWxsbmVzcyI+SGVhdCBJbGxuZXNzIFByZXZlbnRpb248L2E+PC9saT4KICAgICAgICA8bGk+PGEgaHJlZj0iI3dvcmtwbGFjZS12aW9sZW5jZSI+V29ya3BsYWNlIFZpb2xlbmNlIFByZXZlbnRpb248L2E+PC9saT4KICAgICAgPC91bD4KICAgIDwvbGk+CiAgICA8bGk+PGEgaHJlZj0iI2luc3BlY3Rpb25zLWVuZm9yY2VtZW50Ij5JbnNwZWN0aW9ucyBhbmQgRW5mb3JjZW1lbnQ8L2E+CiAgICAgIDx1bD4KICAgICAgICA8bGk+PGEgaHJlZj0iI2luc3BlY3Rpb24tcHJvY2VzcyI+SW5zcGVjdGlvbiBQcm9jZXNzPC9hPjwvbGk+CiAgICAgICAgPGxpPjxhIGhyZWY9IiNjaXRhdGlvbnMtcGVuYWx0aWVzIj5DaXRhdGlvbnMgYW5kIFBlbmFsdGllczwvYT48L2xpPgogICAgICAgIDxsaT48YSBocmVmPSIjY29uc3VsdGF0aW9uLXNlcnZpY2VzIj5DYWwvT1NIQSBDb25zdWx0YXRpb24gU2VydmljZXM8L2E+PC9saT4KICAgICAgICA8bGk+PGEgaHJlZj0iI3JlY29yZC1rZWVwaW5nIj5SZWNvcmQgS2VlcGluZyBSZXF1aXJlbWVudHM8L2E+PC9saT4KICAgICAgPC91bD4KICAgIDwvbGk+CiAgICA8bGk+PGEgaHJlZj0iI3JlY2VudC1kZXZlbG9wbWVudHMiPlJlY2VudCBEZXZlbG9wbWVudHM8L2E+CiAgICAgIDx1bD4KICAgICAgICA8bGk+PGEgaHJlZj0iI2NvdmlkLXJlZ3VsYXRpb25zIj5DT1ZJRC0xOSBSZWd1bGF0aW9uczwvYT48L2xpPgogICAgICAgIDxsaT48YSBocmVmPSIjdHJhaW5pbmctcmVzb3VyY2VzIj5UcmFpbmluZyBhbmQgUmVzb3VyY2VzPC9hPjwvbGk+CiAgICAgICAgPGxpPjxhIGhyZWY9IiNoZWxwLWNvbXBsYWludHMiPkdldHRpbmcgSGVscCBhbmQgRmlsaW5nIENvbXBsYWludHM8L2E+PC9saT4KICAgICAgPC91bD4KICAgIDwvbGk+CiAgPC91bD4KPC9uYXY+Cg==PHNlY3Rpb24gaWQ9ImludHJvZHVjdGlvbiI+CiAgPGgyPkludHJvZHVjdGlvbjwvaDI+CiAgPHA+CiAgICBDYWxpZm9ybmlhJ3Mgd29ya3BsYWNlIHNhZmV0eSBsYXdzIHByb3ZpZGUgY29tcHJlaGVuc2l2ZSBwcm90ZWN0aW9uIGZvciB3b3JrZXJzIHRocm91Z2ggdGhlIENhbGlmb3JuaWEgRGl2aXNpb24gb2YgT2NjdXBhdGlvbmFsIFNhZmV0eSAKICAgIGFuZCBIZWFsdGggKENhbC9PU0hBKSwgd2hpY2ggaXMgb25lIG9mIHRoZSBtb3N0IGNvbXByZWhlbnNpdmUgb2NjdXBhdGlvbmFsIHNhZmV0eSBwcm9ncmFtcyBpbiB0aGUgVW5pdGVkIFN0YXRlcy4gVGhpcyBndWlkZSBicmVha3MgZG93biAKICAgIHRoZSBlc3NlbnRpYWwgY29tcG9uZW50cyBvZiBDYWxpZm9ybmlhJ3MgT1NIQSBsYXdzIHRvIGhlbHAgYm90aCBlbXBsb3llcnMgYW5kIGVtcGxveWVlcyB1bmRlcnN0YW5kIHRoZWlyIHJpZ2h0cyBhbmQgb2JsaWdhdGlvbnMuCiAgPC9wPgo8L3NlY3Rpb24+Cg==PHNlY3Rpb24gaWQ9IndoYXQtaXMtY2Fsb3NoYSI+CiAgPGgyPldoYXQgaXMgQ2FsL09TSEE/PC9oMj4KICA8cD4KICAgIENhbC9PU0hBLCBvZmZpY2lhbGx5IGtub3duIGFzIHRoZSBEaXZpc2lvbiBvZiBPY2N1cGF0aW9uYWwgU2FmZXR5IGFuZCBIZWFsdGggKERPU0gpLCBpcyBDYWxpZm9ybmlhJ3Mgc3RhdGUgcHJvZ3JhbSByZXNwb25zaWJsZSBmb3IgCiAgICBwcm90ZWN0aW5nIHdvcmtlcnPigJkgaGVhbHRoIGFuZCBzYWZldHkuIFVubGlrZSBtYW55IHN0YXRlcyB0aGF0IG9wZXJhdGUgdW5kZXIgZmVkZXJhbCA8YSBocmVmPSJodHRwczovL2Nsb3Vkc2RzLmNvbS9jaGVtaWNhbC1oYXphcmQtYW5kLXNhZmV0eS9vc2hhLWhhemFyZC1jb21tdW5pY2F0aW9uLXN0YW5kYXJkLWtleS1zYWZldHktZ3VpZGVsaW5lcy8iIHRhcmdldD0iX2JsYW5rIj5PU0hBIGd1aWRlbGluZXM8L2E+LCBDYWxpZm9ybmlhIGhhcyBpdHMgb3duIAogICAgc3RhdGUtYXBwcm92ZWQgcHJvZ3JhbSB0aGF0IGlzICJhdCBsZWFzdCBhcyBlZmZlY3RpdmUiIGFzIGZlZGVyYWwgc3RhbmRhcmRzIGFuZCBvZnRlbiBleGNlZWRzIHRoZW0uIFRoZSBwcm9ncmFtIGlzIGhvdXNlZCB3aXRoaW4gCiAgICB0aGUgRGVwYXJ0bWVudCBvZiBJbmR1c3RyaWFsIFJlbGF0aW9ucyBhbmQgY29uc2lzdHMgb2Ygc2V2ZXJhbCBrZXkgY29tcG9uZW50czoKICA8L3A+CiAgPHVsPgogICAgPGxpPlRoZSBEaXZpc2lvbiBvZiBPY2N1cGF0aW9uYWwgU2FmZXR5IGFuZCBIZWFsdGggKERPU0gpIGVuZm9yY2VzIHJlZ3VsYXRpb25zIGFuZCBwcm92aWRlcyBjb25zdWx0YXRpb24gc2VydmljZXM8L2xpPgogICAgPGxpPlRoZSBDYWwvT1NIQSBFbmZvcmNlbWVudCBVbml0IGNvbmR1Y3RzIGluc3BlY3Rpb25zIGFuZCBpc3N1ZXMgY2l0YXRpb25zPC9saT4KICAgIDxsaT5UaGUgQ2FsL09TSEEgQ29uc3VsdGF0aW9uIFNlcnZpY2UgcHJvdmlkZXMgZnJlZSB0ZWNobmljYWwgYXNzaXN0YW5jZTwvbGk+CiAgICA8bGk+VGhlIENhbGlmb3JuaWEgT2NjdXBhdGlvbmFsIFNhZmV0eSBhbmQgSGVhbHRoIFN0YW5kYXJkcyBCb2FyZCBlc3RhYmxpc2hlcyBzYWZldHkgc3RhbmRhcmRzPC9saT4KICAgIDxsaT5UaGUgQ2FsaWZvcm5pYSBPY2N1cGF0aW9uYWwgU2FmZXR5IGFuZCBIZWFsdGggQXBwZWFscyBCb2FyZCBoYW5kbGVzIGFwcGVhbHMgZnJvbSBjaXRhdGlvbnM8L2xpPgogIDwvdWw+Cjwvc2VjdGlvbj4KPHNlY3Rpb24gaWQ9ImNvdmVyYWdlIj4KICA8aDI+V2hvIGlzIENvdmVyZWQgYnkgQ2FsL09TSEE/PC9oMj4KICA8cD4KICAgIENhbC9PU0hBIHByb3RlY3RzIGFsbW9zdCBhbGwgd29ya2VycyBpbiBDYWxpZm9ybmlhLCBpbmNsdWRpbmcgcHVibGljIGVtcGxveWVlcyBhbmQgaW1taWdyYW50IHdvcmtlcnMgcmVnYXJkbGVzcyBvZiB0aGVpciBsZWdhbCBhdXRob3JpemF0aW9uIAogICAgdG8gd29yayBpbiB0aGUgVW5pdGVkIFN0YXRlcy4gSG93ZXZlciwgc29tZSB3b3JrZXJzIGFyZSBub3QgY292ZXJlZDoKICA8L3A+CiAgPHVsPgogICAgPGxpPlNlbGYtZW1wbG95ZWQgaW5kaXZpZHVhbHM8L2xpPgogICAgPGxpPkZhbWlseSBtZW1iZXJzIG9mIGZhcm0gb3duZXJzIHdvcmtpbmcgb24gZmFtaWx5IGZhcm1zPC9saT4KICAgIDxsaT5GZWRlcmFsIGVtcGxveWVlcyAod2hvIGFyZSBjb3ZlcmVkIGJ5IGZlZGVyYWwgT1NIQSk8L2xpPgogIDwvdWw+CiAgPHA+CiAgICBBcyBvZiBKdWx5IDEsIDIwMjUsIENhbGlmb3JuaWEgZXhwYW5kZWQgT1NIQSBwcm90ZWN0aW9ucyB0byBpbmNsdWRlIGhvdXNlaG9sZCBkb21lc3RpYyB3b3JrZXJzLCBlbnN1cmluZyB0aGV5IHJlY2VpdmUgdGhlIHNhbWUgd29ya3BsYWNlIHNhZmV0eSAKICAgIHByb3RlY3Rpb25zIGFzIG90aGVyIHdvcmtlcnMuIEVtcGxveWVycyBoYXZlIGV4dGVuc2l2ZSBsZWdhbCBvYmxpZ2F0aW9ucyB1bmRlciBDYWwvT1NIQSBsYXdzLiBUaGUgZnVuZGFtZW50YWwgcmVxdWlyZW1lbnQgaXMgc3RhdGVkIGluIAogICAgQ2FsaWZvcm5pYSBMYWJvciBDb2RlIFNlY3Rpb24gNjQwMDogCiAgPC9wPgogIDxibG9ja3F1b3RlPgogICAgIkV2ZXJ5IGVtcGxveWVyIHNoYWxsIGZ1cm5pc2ggZW1wbG95bWVudCBhbmQgYSBwbGFjZSBvZiBlbXBsb3ltZW50IHRoYXQgaXMgc2FmZSBhbmQgaGVhbHRoZnVsIGZvciB0aGUgZW1wbG95ZWVzIHRoZXJlaW4uIgogIDwvYmxvY2txdW90ZT4KPC9zZWN0aW9uPgo=PHNlY3Rpb24gaWQ9ImVtcGxveWVyLWR1dGllcyI+CiAgPGgyPkVzc2VudGlhbCBFbXBsb3llciBEdXRpZXM8L2gyPgogIDxvbD4KICAgIDxsaT4KICAgICAgPHN0cm9uZz5Xb3JrcGxhY2UgU2FmZXR5IGFuZCBIYXphcmQgQ29ycmVjdGlvbjo8L3N0cm9uZz4gRW1wbG95ZXJzIG11c3QgcHJvdmlkZSBzYWZlIGFuZCBoZWFsdGh5IHdvcmtwbGFjZXMgYW5kIGltbWVkaWF0ZWx5IGNvcnJlY3QgYW55IGhhemFyZG91cyBjb25kaXRpb25zIHRoZXkga25vdyBjb3VsZCByZXN1bHQgaW4gc2VyaW91cyBpbmp1cnkuIEZhaWx1cmUgdG8gZG8gc28gY2FuIHJlc3VsdCBpbiBjcmltaW5hbCBjaGFyZ2VzLCBtb25ldGFyeSBwZW5hbHRpZXMsIGFuZCBpbXByaXNvbm1lbnQuCiAgICA8L2xpPgogICAgPGxpPgogICAgICA8c3Ryb25nPkluanVyeSBhbmQgSWxsbmVzcyBQcmV2ZW50aW9uIFByb2dyYW0gKElJUFApOjwvc3Ryb25nPiBFdmVyeSBDYWxpZm9ybmlhIGVtcGxveWVyIG11c3QgZXN0YWJsaXNoLCBpbXBsZW1lbnQsIGFuZCBtYWludGFpbiBhIHdyaXR0ZW4gSUlQUCB0aGF0IG1lZXRzIHRoZSByZXF1aXJlbWVudHMgb2YgVGl0bGUgOCwgU2VjdGlvbiAzMjAzLiBUaGlzIGlzIHRoZSBtb3N0IGZyZXF1ZW50bHkgY2l0ZWQgdmlvbGF0aW9uIGJ5IENhbC9PU0hBIGVhY2ggeWVhci4KICAgIDwvbGk+CiAgICA8bGk+CiAgICAgIDxzdHJvbmc+VHJhaW5pbmcgYW5kIENvbW11bmljYXRpb246PC9zdHJvbmc+IEVtcGxveWVycyBtdXN0IHByb3ZpZGUgc2FmZXR5IHRyYWluaW5nIGluIGEgbGFuZ3VhZ2UgZW1wbG95ZWVzIHVuZGVyc3RhbmQsIG1haW50YWluIHRyYWluaW5nIHJlY29yZHMsIGFuZCBlc3RhYmxpc2ggc3lzdGVtcyBmb3IgZW1wbG95ZWVzIHRvIHJlcG9ydCBzYWZldHkgY29uY2VybnMgd2l0aG91dCByZXRhbGlhdGlvbi4KICAgIDwvbGk+CiAgICA8bGk+CiAgICAgIDxzdHJvbmc+SW5jaWRlbnQgUmVwb3J0aW5nOjwvc3Ryb25nPiBFbXBsb3llcnMgbXVzdCBub3RpZnkgdGhlIG5lYXJlc3QgQ2FsL09TSEEgb2ZmaWNlIHdpdGhpbiA4IGhvdXJzIG9mIGFueSBzZXJpb3VzIGluanVyeSwgaWxsbmVzcywgb3IgZmF0YWxpdHkgdGhhdCBvY2N1cnMgb24gdGhlIGpvYi4gRmFpbHVyZSB0byByZXBvcnQgY2FuIHJlc3VsdCBpbiBhIG1pbmltdW0gY2l2aWwgcGVuYWx0eSBvZiAkNSwwMDAuCiAgICA8L2xpPgogICAgPGxpPgogICAgICA8c3Ryb25nPjxhIGhyZWY9Imh0dHBzOi8vY2xvdWRzZHMuY29tL2Jsb2cvaG93LXRvLXNlbGVjdC10aGUtcmlnaHQtcGVyc29uYWwtcHJvdGVjdGl2ZS1lcXVpcG1lbnQtcHBlLWZvci1hbnktam9iLyIgdGFyZ2V0PSJfYmxhbmsiPlBlcnNvbmFsIFByb3RlY3RpdmUgRXF1aXBtZW50IChQUEUpOjwvYT48L3N0cm9uZz4gRW1wbG95ZXJzIG11c3QgcHJvdmlkZSBhbmQgcGF5IGZvciB0aGUgcmVxdWlyZWQgUFBFIHdoZW4gcmVndWxhdGlvbnMgbWFuZGF0ZSBpdC4KICAgIDwvbGk+CiAgICA8bGk+CiAgICAgIDxzdHJvbmc+UmVjb3JkIEtlZXBpbmc6PC9zdHJvbmc+IEVtcGxveWVycyB3aXRoIDExIG9yIG1vcmUgZW1wbG95ZWVzIG11c3QgbWFpbnRhaW4gbG9ncyBvZiB3b3JrLXJlbGF0ZWQgaW5qdXJpZXMgYW5kIGlsbG5lc3NlcyB1c2luZyBmb3JtcyAzMDAsIDMwMEEsIGFuZCAzMDEuCiAgICA8L2xpPgogIDwvb2w+Cjwvc2VjdGlvbj4KPHNlY3Rpb24gaWQ9ImlpcHAiPgogIDxoMj5UaGUgSW5qdXJ5IGFuZCBJbGxuZXNzIFByZXZlbnRpb24gUHJvZ3JhbSAoSUlQUCk8L2gyPgogIDxwPgogICAgVGhlIElJUFAgaXMgQ2FsaWZvcm5pYSdzIGNvcm5lcnN0b25lIHdvcmtwbGFjZSBzYWZldHkgcmVxdWlyZW1lbnQgYW5kIG11c3QgaW5jbHVkZSBlaWdodCBlc3NlbnRpYWwgZWxlbWVudHM6CiAgPC9wPgogIDx1bD4KICAgIDxsaT48c3Ryb25nPlJlc3BvbnNpYmlsaXR5PC9zdHJvbmc+IOKAkyBEZXNpZ25hdGluZyBzb21lb25lIHdpdGggYXV0aG9yaXR5IHRvIGltcGxlbWVudCB0aGUgcHJvZ3JhbTwvbGk+CiAgICA8bGk+PHN0cm9uZz5Db21wbGlhbmNlPC9zdHJvbmc+IOKAkyBTeXN0ZW1zIGVuc3VyaW5nIGVtcGxveWVlcyBmb2xsb3cgc2FmZXR5IHByYWN0aWNlczwvbGk+CiAgICA8bGk+PHN0cm9uZz5Db21tdW5pY2F0aW9uPC9zdHJvbmc+IOKAkyBNZXRob2RzIGZvciBkaXNjdXNzaW5nIHNhZmV0eSBtYXR0ZXJzIHdpdGhvdXQgZmVhciBvZiByZXByaXNhbDwvbGk+CiAgICA8bGk+PHN0cm9uZz5IYXphcmQgQXNzZXNzbWVudDwvc3Ryb25nPiDigJMgUHJvY2VkdXJlcyBmb3IgaWRlbnRpZnlpbmcgYW5kIGV2YWx1YXRpbmcgd29ya3BsYWNlIGhhemFyZHM8L2xpPgogICAgPGxpPjxzdHJvbmc+QWNjaWRlbnQvRXhwb3N1cmUgSW52ZXN0aWdhdGlvbjwvc3Ryb25nPiDigJMgUHJvY2Vzc2VzIGZvciBpbnZlc3RpZ2F0aW5nIGluY2lkZW50czwvbGk+CiAgICA8bGk+PHN0cm9uZz5IYXphcmQgQ29ycmVjdGlvbjwvc3Ryb25nPiDigJMgTWV0aG9kcyBmb3IgdGltZWx5IGNvcnJlY3Rpb24gb2YgdW5zYWZlIGNvbmRpdGlvbnM8L2xpPgogICAgPGxpPjxzdHJvbmc+VHJhaW5pbmcgYW5kIEluc3RydWN0aW9uPC9zdHJvbmc+IOKAkyBTYWZldHkgdHJhaW5pbmcgcHJvZ3JhbXMgZm9yIGFsbCBlbXBsb3llZXM8L2xpPgogICAgPGxpPjxzdHJvbmc+UmVjb3Jka2VlcGluZzwvc3Ryb25nPiDigJMgRG9jdW1lbnRhdGlvbiBvZiBwcm9ncmFtIGFjdGl2aXRpZXMgYW5kIHRyYWluaW5nPC9saT4KICA8L3VsPgo8L3NlY3Rpb24+Cg==PHNlY3Rpb24gaWQ9ImVtcGxveWVlLXJpZ2h0cyI+CiAgPGgyPkVtcGxveWVlIFJpZ2h0cyBhbmQgUmVzcG9uc2liaWxpdGllczwvaDI+CgogIDxoMz4xLiBXb3JrZXIgUmlnaHRzPC9oMz4KICA8cD5DYWxpZm9ybmlhIHdvcmtlcnMgaGF2ZSBjb21wcmVoZW5zaXZlIHJpZ2h0cyB1bmRlciBDYWwvT1NIQSwgb3JnYW5pemVkIGludG8gdGhyZWUgbWFpbiBjYXRlZ29yaWVzOjwvcD4KICA8dWw+CiAgICA8bGk+CiAgICAgIDxzdHJvbmc+UmlnaHQgdG8gS25vdzo8L3N0cm9uZz4gV29ya2VycyBoYXZlIHRoZSByaWdodCB0byByZWNlaXZlIGluZm9ybWF0aW9uIGFib3V0IHdvcmtwbGFjZSBoYXphcmRzLCBpbmNsdWRpbmcgdHJhaW5pbmcgb24gY2hlbWljYWwgaGF6YXJkcywKICAgICAgYWNjZXNzIHRvIHNhZmV0eSBkYXRhIHNoZWV0cywgYW5kIGluZm9ybWF0aW9uIGFib3V0IHRoZWlyIGV4cG9zdXJlIHRvIHRveGljIHN1YnN0YW5jZXMuCiAgICA8L2xpPgogICAgPGxpPgogICAgICA8c3Ryb25nPlJpZ2h0IHRvIFByb3RlY3Rpb246PC9zdHJvbmc+IEVtcGxveWVycyBtdXN0IGVsaW1pbmF0ZSBvciByZWR1Y2UgaGF6YXJkcyB0aHJvdWdoIGVuZ2luZWVyaW5nIGNvbnRyb2xzLCBzYWZlIHdvcmsgcHJhY3RpY2VzLAogICAgICBhbmQgcHJvdGVjdGl2ZSBlcXVpcG1lbnQgd2hlbiBoYXphcmRzIGNhbm5vdCBiZSBlbGltaW5hdGVkLgogICAgPC9saT4KICAgIDxsaT4KICAgICAgPHN0cm9uZz5SaWdodCB0byBBY3Q6PC9zdHJvbmc+IFdvcmtlcnMgY2FuIHNwZWFrIHVwIGFib3V0IHNhZmV0eSBjb25jZXJucywgZmlsZSBjb21wbGFpbnRzIHdpdGggQ2FsL09TSEEsIHBhcnRpY2lwYXRlIGluIGluc3BlY3Rpb25zLCBhbmQgcmVmdXNlIHVuc2FmZSB3b3JrIHVuZGVyIHNwZWNpZmljIGNvbmRpdGlvbnMuCiAgICA8L2xpPgogICAgPGxpPgogICAgICA8c3Ryb25nPlJpZ2h0IHRvIFJlZnVzZSBVbnNhZmUgV29yazo8L3N0cm9uZz4gVW5kZXIgQ2FsaWZvcm5pYSBMYWJvciBDb2RlIFNlY3Rpb24gNjMxMSwgd29ya2VycyBtYXkgcmVmdXNlIHdvcmsgdGhhdCBwb3NlcyAicmVhbCBhbmQgYXBwYXJlbnQiIGhhemFyZHMgdGhhdCBjb3VsZCByZXN1bHQgaW4gaW5qdXJ5IG9yIGRlYXRoLAogICAgICBwcm92aWRlZCB0aGV5IGZpcnN0IGFzayB0aGVpciBlbXBsb3llciB0byBlbGltaW5hdGUgdGhlIGhhemFyZCBhbmQgaW5mb3JtIHRoZSBlbXBsb3llciB0aGV5J3JlIHdpbGxpbmcgdG8gcGVyZm9ybSBvdGhlciB3b3JrLgogICAgPC9saT4KICA8L3VsPgoKICA8aDM+Mi4gV29ya2VyIFJlc3BvbnNpYmlsaXRpZXM8L2gzPgogIDxwPldoaWxlIENhbC9PU0hBIGRvZXNuJ3QgY2l0ZSB3b3JrZXJzIGZvciB2aW9sYXRpb25zLCBlbXBsb3llZXMgYXJlIGVuY291cmFnZWQgdG86PC9wPgogIDx1bD4KICAgIDxsaT5Gb2xsb3cgYWxsIHNhZmV0eSBydWxlcyBhbmQgdXNlIHByZXNjcmliZWQgcHJvdGVjdGl2ZSBlcXVpcG1lbnQ8L2xpPgogICAgPGxpPlJlcG9ydCBoYXphcmRvdXMgY29uZGl0aW9ucyB0byBlbXBsb3llcnM8L2xpPgogICAgPGxpPlJlcG9ydCBqb2ItcmVsYXRlZCBpbmp1cmllcyBvciBpbGxuZXNzZXMgcHJvbXB0bHk8L2xpPgogICAgPGxpPkNvb3BlcmF0ZSB3aXRoIENhbC9PU0hBIGluc3BlY3Rpb25zPC9saT4KICAgIDxsaT5FeGVyY2lzZSB0aGVpciByaWdodHMgdW5kZXIgdGhlIENhbGlmb3JuaWEgT2NjdXBhdGlvbmFsIFNhZmV0eSBhbmQgSGVhbHRoIEFjdDwvbGk+CiAgPC91bD4KPC9zZWN0aW9uPgo=PHNlY3Rpb24gaWQ9InNwZWNpZmljLXJlcXVpcmVtZW50cyI+CiAgPGgyPlNwZWNpZmljIFNhZmV0eSBSZXF1aXJlbWVudHM8L2gyPgoKICA8aDM+MS4gSGVhdCBJbGxuZXNzIFByZXZlbnRpb248L2gzPgogIDxwPgogICAgQ2FsaWZvcm5pYSB3YXMgdGhlIGZpcnN0IHN0YXRlIHRvIGVuYWN0IGNvbXByZWhlbnNpdmUgaGVhdCBpbGxuZXNzIHByZXZlbnRpb24gcmVndWxhdGlvbnMuIFRoZSBvdXRkb29yIGhlYXQgc3RhbmRhcmQgKFRpdGxlIDgsIFNlY3Rpb24gMzM5NSkKICAgIHJlcXVpcmVzIGVtcGxveWVycyB0bzoKICA8L3A+CiAgPHVsPgogICAgPGxpPlByb3ZpZGUgY2xlYW4gZHJpbmtpbmcgd2F0ZXI8L2xpPgogICAgPGxpPk1ha2Ugc2hhZGUgYXZhaWxhYmxlIHdoZW4gdGVtcGVyYXR1cmVzIHJlYWNoIDgwwrBGIG9yIGhpZ2hlcjwvbGk+CiAgICA8bGk+SW1wbGVtZW50IGhpZ2gtaGVhdCBwcm9jZWR1cmVzIHdoZW4gdGVtcGVyYXR1cmVzIHJlYWNoIG9yIGV4Y2VlZCA5NcKwRjwvbGk+CiAgICA8bGk+UHJvdmlkZSB0cmFpbmluZyBvbiBoZWF0IGlsbG5lc3MgcmVjb2duaXRpb24gYW5kIHByZXZlbnRpb248L2xpPgogICAgPGxpPkRldmVsb3Agd3JpdHRlbiBoZWF0IGlsbG5lc3MgcHJldmVudGlvbiBwbGFuczwvbGk+CiAgPC91bD4KICA8cD4KICAgIEluIEp1bHkgMjAyNCwgQ2FsaWZvcm5pYSBpbXBsZW1lbnRlZCBhIG5ldyBpbmRvb3IgaGVhdCBpbGxuZXNzIHByZXZlbnRpb24gc3RhbmRhcmQgKFRpdGxlIDgsIFNlY3Rpb24gMzM5NikgY292ZXJpbmcgd29ya3BsYWNlcyB3aGVyZSBpbmRvb3IgdGVtcGVyYXR1cmVzIHJlYWNoIDgywrBGIG9yIGhpZ2hlci4KICA8L3A+CgogIDxoMz4yLiBXb3JrcGxhY2UgVmlvbGVuY2UgUHJldmVudGlvbjwvaDM+CiAgPHA+CiAgICBFZmZlY3RpdmUgSnVseSAxLCAyMDI0LCBDYWxpZm9ybmlhIGJlY2FtZSB0aGUgZmlyc3Qgc3RhdGUgdG8gcmVxdWlyZSBjb21wcmVoZW5zaXZlIHdvcmtwbGFjZSB2aW9sZW5jZSBwcmV2ZW50aW9uIHBsYW5zIGZvciBnZW5lcmFsIGluZHVzdHJ5IGVtcGxveWVycyB1bmRlciBTZW5hdGUgQmlsbCA1NTMuIENvdmVyZWQgZW1wbG95ZXJzIG11c3Q6CiAgPC9wPgogIDx1bD4KICAgIDxsaT5EZXZlbG9wIHdyaXR0ZW4gd29ya3BsYWNlIHZpb2xlbmNlIHByZXZlbnRpb24gcGxhbnM8L2xpPgogICAgPGxpPkNvbmR1Y3Qgd29ya3BsYWNlIHZpb2xlbmNlIGhhemFyZCBhc3Nlc3NtZW50czwvbGk+CiAgICA8bGk+UHJvdmlkZSBlbXBsb3llZSB0cmFpbmluZzwvbGk+CiAgICA8bGk+RXN0YWJsaXNoIHJlcG9ydGluZyBwcm9jZWR1cmVzIHdpdGhvdXQgcmV0YWxpYXRpb248L2xpPgogICAgPGxpPk1haW50YWluIHZpb2xlbnQgaW5jaWRlbnQgbG9nczwvbGk+CiAgICA8bGk+Q29uZHVjdCBhbm51YWwgcGxhbiByZXZpZXdzIGFuZCByZXRyYWluaW5nPC9saT4KICA8L3VsPgo8L3NlY3Rpb24+Cg==PHNlY3Rpb24gaWQ9Imluc3BlY3Rpb25zLWVuZm9yY2VtZW50Ij4KICA8aDI+SW5zcGVjdGlvbnMgYW5kIEVuZm9yY2VtZW50PC9oMj4KCiAgPGgzPjEuIEluc3BlY3Rpb24gUHJvY2VzczwvaDM+CiAgPHA+Q2FsL09TSEEgY29uZHVjdHMgd29ya3BsYWNlIGluc3BlY3Rpb25zIGZvciB2YXJpb3VzIHJlYXNvbnM6PC9wPgogIDx1bD4KICAgIDxsaT5FbXBsb3llZSBjb21wbGFpbnRzIGFib3V0IHNhZmV0eSBoYXphcmRzPC9saT4KICAgIDxsaT5SZXBvcnRzIG9mIHNlcmlvdXMgaW5qdXJpZXMsIGlsbG5lc3Nlcywgb3IgZmF0YWxpdGllczwvbGk+CiAgICA8bGk+U2NoZWR1bGVkIGluc3BlY3Rpb25zIG9mIGhpZ2gtaGF6YXJkIGluZHVzdHJpZXM8L2xpPgogICAgPGxpPkZvbGxvdy11cCBvbiBwcmV2aW91cyB2aW9sYXRpb25zPC9saT4KICA8L3VsPgogIDxwPkR1cmluZyBpbnNwZWN0aW9ucywgQ2FsL09TSEEgY29tcGxpYW5jZSBvZmZpY2Vyczo8L3A+CiAgPHVsPgogICAgPGxpPlByZXNlbnQgY3JlZGVudGlhbHMgYW5kIGNvbmR1Y3Qgb3BlbmluZyBjb25mZXJlbmNlczwvbGk+CiAgICA8bGk+UGVyZm9ybSB3YWxrYXJvdW5kIGluc3BlY3Rpb25zIHdpdGggZW1wbG95ZXIgcmVwcmVzZW50YXRpdmVzPC9saT4KICAgIDxsaT5JbnRlcnZpZXcgZW1wbG95ZWVzIGNvbmZpZGVudGlhbGx5PC9saT4KICAgIDxsaT5UYWtlIHBob3RvZ3JhcGhzIGFuZCBjb2xsZWN0IGV2aWRlbmNlPC9saT4KICAgIDxsaT5SZXZpZXcgcmVxdWlyZWQgZG9jdW1lbnRhdGlvbjwvbGk+CiAgICA8bGk+SG9sZCBjbG9zaW5nIGNvbmZlcmVuY2VzIHRvIGRpc2N1c3MgZmluZGluZ3M8L2xpPgogIDwvdWw+CgogIDxoMz4yLiBDaXRhdGlvbnMgYW5kIFBlbmFsdGllczwvaDM+CiAgPHA+Q2FsL09TSEEgcGVuYWx0aWVzIGFyZSBhZGp1c3RlZCBhbm51YWxseSBmb3IgaW5mbGF0aW9uLiBBcyBvZiBKYW51YXJ5IDEsIDIwMjUsIG1heGltdW0gcGVuYWx0aWVzIGFyZTo8L3A+CiAgPHVsPgogICAgPGxpPjxzdHJvbmc+R2VuZXJhbCBhbmQgUmVndWxhdG9yeSB2aW9sYXRpb25zOjwvc3Ryb25nPiAkMTYsMjg1PC9saT4KICAgIDxsaT48c3Ryb25nPlNlcmlvdXMgdmlvbGF0aW9uczo8L3N0cm9uZz4gJDI1LDAwMCAodW5jaGFuZ2VkKTwvbGk+CiAgICA8bGk+PHN0cm9uZz5XaWxsZnVsIGFuZCBSZXBlYXQgdmlvbGF0aW9uczo8L3N0cm9uZz4gJDE2Miw4NTEgKG1pbmltdW0gJDExLDYzMik8L2xpPgogIDwvdWw+CiAgPHA+RW1wbG95ZXJzIHdobyByZWNlaXZlIGNpdGF0aW9ucyBoYXZlIHRoZSByaWdodCB0byBhcHBlYWwgdGhyb3VnaCB0aGUgQ2FsaWZvcm5pYSBPY2N1cGF0aW9uYWwgU2FmZXR5IGFuZCBIZWFsdGggQXBwZWFscyBCb2FyZC48L3A+CgogIDxoMz4zLiBDYWwvT1NIQSBDb25zdWx0YXRpb24gU2VydmljZXM8L2gzPgogIDxwPkNhbC9PU0hBIHByb3ZpZGVzIGZyZWUgY29uc3VsdGF0aW9uIHNlcnZpY2VzIHRvIGhlbHAgZW1wbG95ZXJzIGNvbXBseSB3aXRoIHNhZmV0eSByZWd1bGF0aW9ucy4gVGhlc2Ugc2VydmljZXMgaW5jbHVkZTo8L3A+CiAgPHVsPgogICAgPGxpPkZyZWUgb24tc2l0ZSB2aXNpdHMgdG8gaWRlbnRpZnkgaGF6YXJkczwvbGk+CiAgICA8bGk+VGVjaG5pY2FsIGFzc2lzdGFuY2UgYW5kIHNhZmV0eSBwcm9ncmFtIGRldmVsb3BtZW50PC9saT4KICAgIDxsaT5FZHVjYXRpb25hbCBtYXRlcmlhbHMgYW5kIHRyYWluaW5nIHJlc291cmNlczwvbGk+CiAgICA8bGk+UGFydG5lcnNoaXAgcHJvZ3JhbXMgZm9yIGV4ZW1wbGFyeSBzYWZldHkgcGVyZm9ybWFuY2U8L2xpPgogICAgPGxpPlRlbGVwaG9uZSBhbmQgZW1haWwgc3VwcG9ydDwvbGk+CiAgPC91bD4KICA8cD48c3Ryb25nPk5vdGU6PC9zdHJvbmc+IENvbnN1bHRhdGlvbiBzZXJ2aWNlcyBhcmUgY29tcGxldGVseSBzZXBhcmF0ZSBmcm9tIGVuZm9yY2VtZW50IGFjdGl2aXRpZXMgYW5kIGRvIG5vdCByZXN1bHQgaW4gY2l0YXRpb25zIG9yIHBlbmFsdGllcy48L3A+CgogIDxoMz40LiBSZWNvcmQgS2VlcGluZyBSZXF1aXJlbWVudHM8L2gzPgogIDxwPkVtcGxveWVycyB3aXRoIDExIG9yIG1vcmUgZW1wbG95ZWVzIG11c3QgbWFpbnRhaW4gaW5qdXJ5IGFuZCBpbGxuZXNzIHJlY29yZHMgdXNpbmcgdGhlIENhbC9PU0hBIDMwMCBzZXJpZXMgZm9ybXM6PC9wPgogIDx1bD4KICAgIDxsaT48c3Ryb25nPkZvcm0gMzAwOjwvc3Ryb25nPiBMb2cgb2YgV29yay1SZWxhdGVkIEluanVyaWVzIGFuZCBJbGxuZXNzZXM8L2xpPgogICAgPGxpPjxzdHJvbmc+Rm9ybSAzMDBBOjwvc3Ryb25nPiBBbm51YWwgU3VtbWFyeSAobXVzdCBiZSBwb3N0ZWQgRmVicnVhcnkgMSAtIEFwcmlsIDMwKTwvbGk+CiAgICA8bGk+PHN0cm9uZz5Gb3JtIDMwMTo8L3N0cm9uZz4gSW5qdXJ5IGFuZCBJbGxuZXNzIEluY2lkZW50IFJlcG9ydDwvbGk+CiAgPC91bD4KICA8cD5SZWNvcmRzIG11c3QgYmUgbWFpbnRhaW5lZCBmb3IgZml2ZSB5ZWFycywgYW5kIGVtcGxveWVycyBtZWV0aW5nIHNwZWNpZmljIGNyaXRlcmlhIG11c3QgZWxlY3Ryb25pY2FsbHkgc3VibWl0IEZvcm0gMzAwQSBkYXRhIHRvIGZlZGVyYWwgT1NIQSBieSBNYXJjaCAyIGVhY2ggeWVhci48L3A+Cjwvc2VjdGlvbj4KPHNlY3Rpb24gaWQ9InJlY2VudC1kZXZlbG9wbWVudHMiPgogIDxoMj5SZWNlbnQgRGV2ZWxvcG1lbnRzPC9oMj4KCiAgPGgzPjEuIENPVklELTE5IFJlZ3VsYXRpb25zPC9oMz4KICA8cD4KICAgIEFzIG9mIEZlYnJ1YXJ5IDMsIDIwMjUsIG1vc3Qgb2YgQ2FsL09TSEEncyBDT1ZJRC0xOSBwcmV2ZW50aW9uIHN0YW5kYXJkcyBoYXZlIGV4cGlyZWQsIHRob3VnaCBlbXBsb3llcnMgbXVzdCBjb250aW51ZSB0cmFja2luZyBDT1ZJRC0xOSBjYXNlcwogICAgYW5kIG1haW50YWluaW5nIHJlbGF0ZWQgcmVjb3JkcyB1bnRpbCBGZWJydWFyeSAzLCAyMDI2LgogIDwvcD4KCiAgPGgzPjIuIFRyYWluaW5nIGFuZCBSZXNvdXJjZXM8L2gzPgogIDxwPgogICAgQ2FsL09TSEEgb2ZmZXJzIGV4dGVuc2l2ZSB0cmFpbmluZyByZXNvdXJjZXMgdGhyb3VnaCB0aGUgQ2FsL09TSEEgVHJhaW5pbmcgQWNhZGVteSwgcHJvdmlkaW5nIGZyZWUgb25saW5lIGNvdXJzZXMsIGd1aWRhbmNlIGRvY3VtZW50cywgYW5kCiAgICB2aWRlb3Mgb24gdmFyaW91cyBvY2N1cGF0aW9uYWwgc2FmZXR5IHRvcGljcy4gVGhlIHN0YXRlIGFsc28gc3VwcG9ydHMgdGhlIFdvcmtlciBPY2N1cGF0aW9uYWwgU2FmZXR5IGFuZCBIZWFsdGggVHJhaW5pbmcgYW5kIEVkdWNhdGlvbgogICAgUHJvZ3JhbSAoV09TSFRFUCksIHdoaWNoIHByb3ZpZGVzIGZyZWUgMjQtaG91ciB0cmFpbmluZyBjb3Vyc2VzIHRvIGRldmVsb3Agd29ya2VyIHNhZmV0eSBzcGVjaWFsaXN0cy4KICA8L3A+CgogIDxoMz4zLiBHZXR0aW5nIEhlbHAgYW5kIEZpbGluZyBDb21wbGFpbnRzPC9oMz4KICA8cD4KICAgIFdvcmtlcnMgY2FuIGZpbGUgY29uZmlkZW50aWFsIGNvbXBsYWludHMgYWJvdXQgd29ya3BsYWNlIHNhZmV0eSBoYXphcmRzIGJ5IGNhbGxpbmcgQ2FsL09TSEEgYXQgPHN0cm9uZz44MzMtNTc5LTA5Mjc8L3N0cm9uZz4gb3IgY29udGFjdGluZwogICAgbG9jYWwgZGlzdHJpY3Qgb2ZmaWNlcy4gRW1wbG95ZXJzIHNlZWtpbmcgYXNzaXN0YW5jZSBjYW4gY29udGFjdCBDYWwvT1NIQSBDb25zdWx0YXRpb24gU2VydmljZXMgYXQKICAgIDxzdHJvbmc+ODAwLTk2My05NDI0PC9zdHJvbmc+IG9yIGVtYWlsIDxhIGhyZWY9Im1haWx0bzpJbmZvQ29uc0BkaXIuY2EuZ292Ij5JbmZvQ29uc0BkaXIuY2EuZ292PC9hPi4KICA8L3A+Cjwvc2VjdGlvbj4K






