{"name":"README.md","path":"README.md","sha":"da0fb37038451413bba5447bb8c10fb49f10de9b","size":91611,"url":"https://api.github.com/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.github.com/repos/github/github-mcp-server/git/blobs/da0fb37038451413bba5447bb8c10fb49f10de9b","download_url":"https://raw.githubusercontent.com/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\nL21jcC9pbnN0YWxsP25hbWU9Z2l0aHViJmlucHV0cz0lNUIlN0IlMjJpZCUy\nMiUzQSUyMmdpdGh1Yl90b2tlbiUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwcm9t\ncHRTdHJpbmclMjIlMkMlMjJkZXNjcmlwdGlvbiUyMiUzQSUyMkdpdEh1YiUy\nMFBlcnNvbmFsJTIwQWNjZXNzJTIwVG9rZW4lMjIlMkMlMjJwYXNzd29yZCUy\nMiUzQXRydWUlN0QlNUQmY29uZmlnPSU3QiUyMmNvbW1hbmQlMjIlM0ElMjJk\nb2NrZXIlMjIlMkMlMjJhcmdzJTIyJTNBJTVCJTIycnVuJTIyJTJDJTIyLWkl\nMjIlMkMlMjItLXJtJTIyJTJDJTIyLWUlMjIlMkMlMjJHSVRIVUJfUEVSU09O\nQUxfQUNDRVNTX1RPS0VOJTIyJTJDJTIyZ2hjci5pbyUyRmdpdGh1YiUyRmdp\ndGh1Yi1tY3Atc2VydmVyJTIyJTVEJTJDJTIyZW52JTIyJTNBJTdCJTIyR0lU\nSFVCX1BFUlNPTkFMX0FDQ0VTU19UT0tFTiUyMiUzQSUyMiUyNCU3QmlucHV0\nJTNBZ2l0aHViX3Rva2VuJTdEJTIyJTdEJTdEKSBbIVtJbnN0YWxsIHdpdGgg\nRG9ja2VyIGluIFZTIENvZGUgSW5zaWRlcnNdKGh0dHBzOi8vaW1nLnNoaWVs\nZHMuaW8vYmFkZ2UvVlNfQ29kZV9JbnNpZGVycy1JbnN0YWxsX1NlcnZlci0y\nNGJmYTU/c3R5bGU9ZmxhdC1zcXVhcmUmbG9nbz12aXN1YWxzdHVkaW9jb2Rl\nJmxvZ29Db2xvcj13aGl0ZSldKGh0dHBzOi8vaW5zaWRlcnMudnNjb2RlLmRl\ndi9yZWRpcmVjdC9tY3AvaW5zdGFsbD9uYW1lPWdpdGh1YiZpbnB1dHM9JTVC\nJTdCJTIyaWQlMjIlM0ElMjJnaXRodWJfdG9rZW4lMjIlMkMlMjJ0eXBlJTIy\nJTNBJTIycHJvbXB0U3RyaW5nJTIyJTJDJTIyZGVzY3JpcHRpb24lMjIlM0El\nMjJHaXRIdWIlMjBQZXJzb25hbCUyMEFjY2VzcyUyMFRva2VuJTIyJTJDJTIy\ncGFzc3dvcmQlMjIlM0F0cnVlJTdEJTVEJmNvbmZpZz0lN0IlMjJjb21tYW5k\nJTIyJTNBJTIyZG9ja2VyJTIyJTJDJTIyYXJncyUyMiUzQSU1QiUyMnJ1biUy\nMiUyQyUyMi1pJTIyJTJDJTIyLS1ybSUyMiUyQyUyMi1lJTIyJTJDJTIyR0lU\nSFVCX1BFUlNPTkFMX0FDQ0VTU19UT0tFTiUyMiUyQyUyMmdoY3IuaW8lMkZn\naXRodWIlMkZnaXRodWItbWNwLXNlcnZlciUyMiU1RCUyQyUyMmVudiUyMiUz\nQSU3QiUyMkdJVEhVQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU4lMjIlM0ElMjIl\nMjQlN0JpbnB1dCUzQWdpdGh1Yl90b2tlbiU3RCUyMiU3RCU3RCZxdWFsaXR5\nPWluc2lkZXJzKSBbIVtJbnN0YWxsIHdpdGggRG9ja2VyIGluIFZpc3VhbCBT\ndHVkaW9dKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvVmlzdWFsX1N0\ndWRpby1JbnN0YWxsX1NlcnZlci1DMTZGREU/c3R5bGU9ZmxhdC1zcXVhcmUm\nbG9nbz12aXN1YWxzdHVkaW8mbG9nb0NvbG9yPXdoaXRlKV0oaHR0cHM6Ly9h\na2EubXMvdnMvbWNwLWluc3RhbGw/JTdCJTIybmFtZSUyMiUzQSUyMmdpdGh1\nYiUyMiUyQyUyMmNvbW1hbmQlMjIlM0ElMjJkb2NrZXIlMjIlMkMlMjJhcmdz\nJTIyJTNBJTVCJTIycnVuJTIyJTJDJTIyLWklMjIlMkMlMjItLXJtJTIyJTJD\nJTIyLWUlMjIlMkMlMjJHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOJTIy\nJTJDJTIyZ2hjci5pbyUyRmdpdGh1YiUyRmdpdGh1Yi1tY3Atc2VydmVyJTIy\nJTVEJTdEKQoKIyMjIFByZXJlcXVpc2l0ZXMKCjEuIFRvIHJ1biB0aGUgc2Vy\ndmVyIGluIGEgY29udGFpbmVyLCB5b3Ugd2lsbCBuZWVkIHRvIGhhdmUgW0Rv\nY2tlcl0oaHR0cHM6Ly93d3cuZG9ja2VyLmNvbS8pIGluc3RhbGxlZC4KMi4g\nT25jZSBEb2NrZXIgaXMgaW5zdGFsbGVkLCB5b3Ugd2lsbCBhbHNvIG5lZWQg\ndG8gZW5zdXJlIERvY2tlciBpcyBydW5uaW5nLiBUaGUgRG9ja2VyIGltYWdl\nIGlzIGF2YWlsYWJsZSBhdCBgZ2hjci5pby9naXRodWIvZ2l0aHViLW1jcC1z\nZXJ2ZXJgLiBUaGUgaW1hZ2UgaXMgcHVibGljOyBpZiB5b3UgZ2V0IGVycm9y\ncyBvbiBwdWxsLCB5b3UgbWF5IGhhdmUgYW4gZXhwaXJlZCB0b2tlbiBhbmQg\nbmVlZCB0byBgZG9ja2VyIGxvZ291dCBnaGNyLmlvYC4KMy4gTGFzdGx5IHlv\ndSB3aWxsIG5lZWQgdG8gW0NyZWF0ZSBhIEdpdEh1YiBQZXJzb25hbCBBY2Nl\nc3MgVG9rZW5dKGh0dHBzOi8vZ2l0aHViLmNvbS9zZXR0aW5ncy9wZXJzb25h\nbC1hY2Nlc3MtdG9rZW5zL25ldykuClRoZSBNQ1Agc2VydmVyIGNhbiB1c2Ug\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\nbCBTdHVkaW8sIEVjbGlwc2UsIGV0Yy4pCgpBZGQgdGhlIGZvbGxvd2luZyBK\nU09OIGJsb2NrIHRvIHlvdXIgSURFJ3MgTUNQIHNldHRpbmdzLgoKYGBganNv\nbgp7CiAgIm1jcCI6IHsKICAgICJpbnB1dHMiOiBbCiAgICAgIHsKICAgICAg\nICAidHlwZSI6ICJwcm9tcHRTdHJpbmciLAogICAgICAgICJpZCI6ICJnaXRo\ndWJfdG9rZW4iLAogICAgICAgICJkZXNjcmlwdGlvbiI6ICJHaXRIdWIgUGVy\nc29uYWwgQWNjZXNzIFRva2VuIiwKICAgICAgICAicGFzc3dvcmQiOiB0cnVl\nCiAgICAgIH0KICAgIF0sCiAgICAic2VydmVycyI6IHsKICAgICAgImdpdGh1\nYiI6IHsKICAgICAgICAiY29tbWFuZCI6ICJkb2NrZXIiLAogICAgICAgICJh\ncmdzIjogWwogICAgICAgICAgInJ1biIsCiAgICAgICAgICAiLWkiLAogICAg\nICAgICAgIi0tcm0iLAogICAgICAgICAgIi1lIiwKICAgICAgICAgICJHSVRI\nVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOIiwKICAgICAgICAgICJnaGNyLmlv\nL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlciIKICAgICAgICBdLAogICAgICAg\nICJlbnYiOiB7CiAgICAgICAgICAiR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19U\nT0tFTiI6ICIke2lucHV0OmdpdGh1Yl90b2tlbn0iCiAgICAgICAgfQogICAg\nICB9CiAgICB9CiAgfQp9CmBgYAoKT3B0aW9uYWxseSwgeW91IGNhbiBhZGQg\nYSBzaW1pbGFyIGV4YW1wbGUgKGkuZS4gd2l0aG91dCB0aGUgbWNwIGtleSkg\ndG8gYSBmaWxlIGNhbGxlZCBgLnZzY29kZS9tY3AuanNvbmAgaW4geW91ciB3\nb3Jrc3BhY2UuIFRoaXMgd2lsbCBhbGxvdyB5b3UgdG8gc2hhcmUgdGhlIGNv\nbmZpZ3VyYXRpb24gd2l0aCBvdGhlciBob3N0IGFwcGxpY2F0aW9ucyB0aGF0\nIGFjY2VwdCB0aGUgc2FtZSBmb3JtYXQuCgo8ZGV0YWlscz4KPHN1bW1hcnk+\nPGI+RXhhbXBsZSBKU09OIGJsb2NrIHdpdGhvdXQgdGhlIE1DUCBrZXkgaW5j\nbHVkZWQ8L2I+PC9zdW1tYXJ5Pgo8YnI+CgpgYGBqc29uCnsKICAiaW5wdXRz\nIjogWwogICAgewogICAgICAidHlwZSI6ICJwcm9tcHRTdHJpbmciLAogICAg\nICAiaWQiOiAiZ2l0aHViX3Rva2VuIiwKICAgICAgImRlc2NyaXB0aW9uIjog\nIkdpdEh1YiBQZXJzb25hbCBBY2Nlc3MgVG9rZW4iLAogICAgICAicGFzc3dv\ncmQiOiB0cnVlCiAgICB9CiAgXSwKICAic2VydmVycyI6IHsKICAgICJnaXRo\ndWIiOiB7CiAgICAgICJjb21tYW5kIjogImRvY2tlciIsCiAgICAgICJhcmdz\nIjogWwogICAgICAgICJydW4iLAogICAgICAgICItaSIsCiAgICAgICAgIi0t\ncm0iLAogICAgICAgICItZSIsCiAgICAgICAgIkdJVEhVQl9QRVJTT05BTF9B\nQ0NFU1NfVE9LRU4iLAogICAgICAgICJnaGNyLmlvL2dpdGh1Yi9naXRodWIt\nbWNwLXNlcnZlciIKICAgICAgXSwKICAgICAgImVudiI6IHsKICAgICAgICAi\nR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19UT0tFTiI6ICIke2lucHV0OmdpdGh1\nYl90b2tlbn0iCiAgICAgIH0KICAgIH0KICB9Cn0KYGBgCgo8L2RldGFpbHM+\nCgojIyMgSW5zdGFsbCBpbiBPdGhlciBNQ1AgSG9zdHMKCkZvciBvdGhlciBN\nQ1AgaG9zdCBhcHBsaWNhdGlvbnMsIHBsZWFzZSByZWZlciB0byBvdXIgaW5z\ndGFsbGF0aW9uIGd1aWRlczoKCi0gKipbQ29waWxvdCBDTEldKGRvY3MvaW5z\ndGFsbGF0aW9uLWd1aWRlcy9pbnN0YWxsLWNvcGlsb3QtY2xpLm1kKSoqIC0g\nSW5zdGFsbGF0aW9uIGd1aWRlIGZvciBHaXRIdWIgQ29waWxvdCBDTEkKLSAq\nKltHaXRIdWIgQ29waWxvdCBpbiBvdGhlciBJREVzXSgvZG9jcy9pbnN0YWxs\nYXRpb24tZ3VpZGVzL2luc3RhbGwtb3RoZXItY29waWxvdC1pZGVzLm1kKSoq\nIC0gSW5zdGFsbGF0aW9uIGZvciBKZXRCcmFpbnMsIFZpc3VhbCBTdHVkaW8s\nIEVjbGlwc2UsIGFuZCBYY29kZSB3aXRoIEdpdEh1YiBDb3BpbG90Ci0gKipb\nQ2xhdWRlIENvZGUgJiBDbGF1ZGUgRGVza3RvcF0oZG9jcy9pbnN0YWxsYXRp\nb24tZ3VpZGVzL2luc3RhbGwtY2xhdWRlLm1kKSoqIC0gSW5zdGFsbGF0aW9u\nIGd1aWRlIGZvciBDbGF1ZGUgQ29kZSBhbmQgQ2xhdWRlIERlc2t0b3AKLSAq\nKltDdXJzb3JdKGRvY3MvaW5zdGFsbGF0aW9uLWd1aWRlcy9pbnN0YWxsLWN1\ncnNvci5tZCkqKiAtIEluc3RhbGxhdGlvbiBndWlkZSBmb3IgQ3Vyc29yIElE\nRQotICoqW0dvb2dsZSBHZW1pbmkgQ0xJXShkb2NzL2luc3RhbGxhdGlvbi1n\ndWlkZXMvaW5zdGFsbC1nZW1pbmktY2xpLm1kKSoqIC0gSW5zdGFsbGF0aW9u\nIGd1aWRlIGZvciBHb29nbGUgR2VtaW5pIENMSQotICoqW09wZW5Db2RlXShk\nb2NzL2luc3RhbGxhdGlvbi1ndWlkZXMvaW5zdGFsbC1vcGVuY29kZS5tZCkq\nKiAtIEluc3RhbGxhdGlvbiBndWlkZSBmb3IgdGhlIE9wZW5Db2RlIHRlcm1p\nbmFsIGFnZW50Ci0gKipbV2luZHN1cmZdKGRvY3MvaW5zdGFsbGF0aW9uLWd1\naWRlcy9pbnN0YWxsLXdpbmRzdXJmLm1kKSoqIC0gSW5zdGFsbGF0aW9uIGd1\naWRlIGZvciBXaW5kc3VyZiBJREUKLSAqKltaZWRdKGRvY3MvaW5zdGFsbGF0\naW9uLWd1aWRlcy9pbnN0YWxsLXplZC5tZCkqKiAtIEluc3RhbGxhdGlvbiBn\ndWlkZSBmb3IgWmVkIGVkaXRvcgoKRm9yIGEgY29tcGxldGUgb3ZlcnZpZXcg\nb2YgYWxsIGluc3RhbGxhdGlvbiBvcHRpb25zLCBzZWUgb3VyICoqW0luc3Rh\nbGxhdGlvbiBHdWlkZXMgSW5kZXhdKGRvY3MvaW5zdGFsbGF0aW9uLWd1aWRl\ncykqKi4KCj4gKipOb3RlOioqIEFueSBob3N0IGFwcGxpY2F0aW9uIHRoYXQg\nc3VwcG9ydHMgbG9jYWwgTUNQIHNlcnZlcnMgc2hvdWxkIGJlIGFibGUgdG8g\nYWNjZXNzIHRoZSBsb2NhbCBHaXRIdWIgTUNQIHNlcnZlci4gSG93ZXZlciwg\ndGhlIHNwZWNpZmljIGNvbmZpZ3VyYXRpb24gcHJvY2Vzcywgc3ludGF4IGFu\nZCBzdGFiaWxpdHkgb2YgdGhlIGludGVncmF0aW9uIHdpbGwgdmFyeSBieSBo\nb3N0IGFwcGxpY2F0aW9uLiBXaGlsZSBtYW55IG1heSBmb2xsb3cgYSBzaW1p\nbGFyIGZvcm1hdCB0byB0aGUgZXhhbXBsZXMgYWJvdmUsIHRoaXMgaXMgbm90\nIGd1YXJhbnRlZWQuIFBsZWFzZSByZWZlciB0byB5b3VyIGhvc3QgYXBwbGlj\nYXRpb24ncyBkb2N1bWVudGF0aW9uIGZvciB0aGUgY29ycmVjdCBNQ1AgY29u\nZmlndXJhdGlvbiBzeW50YXggYW5kIHNldHVwIHByb2Nlc3MuCgojIyMgQnVp\nbGQgZnJvbSBzb3VyY2UKCklmIHlvdSBkb24ndCBoYXZlIERvY2tlciwgeW91\nIGNhbiB1c2UgYGdvIGJ1aWxkYCB0byBidWlsZCB0aGUgYmluYXJ5IGluIHRo\nZQpgY21kL2dpdGh1Yi1tY3Atc2VydmVyYCBkaXJlY3RvcnksIGFuZCB1c2Ug\ndGhlIGBnaXRodWItbWNwLXNlcnZlciBzdGRpb2AgY29tbWFuZCB3aXRoIHRo\nZSBgR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19UT0tFTmAgZW52aXJvbm1lbnQg\ndmFyaWFibGUgc2V0IHRvIHlvdXIgdG9rZW4uIFRvIHNwZWNpZnkgdGhlIG91\ndHB1dCBsb2NhdGlvbiBvZiB0aGUgYnVpbGQsIHVzZSB0aGUgYC1vYCBmbGFn\nLiBZb3Ugc2hvdWxkIGNvbmZpZ3VyZSB5b3VyIHNlcnZlciB0byB1c2UgdGhl\nIGJ1aWx0IGV4ZWN1dGFibGUgYXMgaXRzIGBjb21tYW5kYC4gRm9yIGV4YW1w\nbGU6CgpgYGBKU09OCnsKICAibWNwIjogewogICAgInNlcnZlcnMiOiB7CiAg\nICAgICJnaXRodWIiOiB7CiAgICAgICAgImNvbW1hbmQiOiAiL3BhdGgvdG8v\nZ2l0aHViLW1jcC1zZXJ2ZXIiLAogICAgICAgICJhcmdzIjogWyJzdGRpbyJd\nLAogICAgICAgICJlbnYiOiB7CiAgICAgICAgICAiR0lUSFVCX1BFUlNPTkFM\nX0FDQ0VTU19UT0tFTiI6ICI8WU9VUl9UT0tFTj4iCiAgICAgICAgfQogICAg\nICB9CiAgICB9CiAgfQp9CmBgYAoKIyMjIENMSSB1dGlsaXRpZXMKClRoZSBg\nZ2l0aHViLW1jcC1zZXJ2ZXJgIGJpbmFyeSBpbmNsdWRlcyBhIGZldyBDTEkg\nc3ViY29tbWFuZHMgdGhhdCBhcmUgaGVscGZ1bCBmb3IgZGVidWdnaW5nIGFu\nZCBleHBsb3JpbmcgdGhlIHNlcnZlci4KCi0gYGdpdGh1Yi1tY3Atc2VydmVy\nIHRvb2wtc2VhcmNoICI8cXVlcnk+ImAgc2VhcmNoZXMgdG9vbHMgYnkgbmFt\nZSwgZGVzY3JpcHRpb24sIGFuZCBpbnB1dCBwYXJhbWV0ZXIgbmFtZXMuIFVz\nZSBgLS1tYXgtcmVzdWx0c2AgdG8gcmV0dXJuIG1vcmUgbWF0Y2hlcy4KRXhh\nbXBsZSAoY29sb3Igb3V0cHV0IHJlcXVpcmVzIGEgVFRZOyB1c2UgYGRvY2tl\nciBydW4gLXRgIChvciBgLWl0YCkgd2hlbiBydW5uaW5nIGluIERvY2tlcik6\nCmBgYGJhc2gKZG9ja2VyIHJ1biAtaXQgLS1ybSBnaGNyLmlvL2dpdGh1Yi9n\naXRodWItbWNwLXNlcnZlciB0b29sLXNlYXJjaCAiaXNzdWUiIC0tbWF4LXJl\nc3VsdHMgNQpnaXRodWItbWNwLXNlcnZlciB0b29sLXNlYXJjaCAiaXNzdWUi\nIC0tbWF4LXJlc3VsdHMgNQpgYGAKCiMjIFRvb2wgQ29uZmlndXJhdGlvbgoK\nVGhlIEdpdEh1YiBNQ1AgU2VydmVyIHN1cHBvcnRzIGVuYWJsaW5nIG9yIGRp\nc2FibGluZyBzcGVjaWZpYyBncm91cHMgb2YgZnVuY3Rpb25hbGl0aWVzIHZp\nYSB0aGUgYC0tdG9vbHNldHNgIGZsYWcuIFRoaXMgYWxsb3dzIHlvdSB0byBj\nb250cm9sIHdoaWNoIEdpdEh1YiBBUEkgY2FwYWJpbGl0aWVzIGFyZSBhdmFp\nbGFibGUgdG8geW91ciBBSSB0b29scy4gRW5hYmxpbmcgb25seSB0aGUgdG9v\nbHNldHMgdGhhdCB5b3UgbmVlZCBjYW4gaGVscCB0aGUgTExNIHdpdGggdG9v\nbCBjaG9pY2UgYW5kIHJlZHVjZSB0aGUgY29udGV4dCBzaXplLgoKX1Rvb2xz\nZXRzIGFyZSBub3QgbGltaXRlZCB0byBUb29scy4gUmVsZXZhbnQgTUNQIFJl\nc291cmNlcyBhbmQgUHJvbXB0cyBhcmUgYWxzbyBpbmNsdWRlZCB3aGVyZSBh\ncHBsaWNhYmxlLl8KCldoZW4gbm8gdG9vbHNldHMgYXJlIHNwZWNpZmllZCwg\nW2RlZmF1bHQgdG9vbHNldHNdKCNkZWZhdWx0LXRvb2xzZXQpIGFyZSB1c2Vk\nLgoKPiAqKkxvb2tpbmcgZm9yIGV4YW1wbGVzPyoqIFNlZSB0aGUgW1NlcnZl\nciBDb25maWd1cmF0aW9uIEd1aWRlXSguL2RvY3Mvc2VydmVyLWNvbmZpZ3Vy\nYXRpb24ubWQpIGZvciBjb21tb24gcmVjaXBlcyBsaWtlIG1pbmltYWwgc2V0\ndXBzLCByZWFkLW9ubHkgbW9kZSwgYW5kIGNvbWJpbmluZyB0b29scyB3aXRo\nIHRvb2xzZXRzLgoKIyMjIyBTcGVjaWZ5aW5nIFRvb2xzZXRzCgpUbyBzcGVj\naWZ5IHRvb2xzZXRzIHlvdSB3YW50IGF2YWlsYWJsZSB0byB0aGUgTExNLCB5\nb3UgY2FuIHBhc3MgYW4gYWxsb3ctbGlzdCBpbiB0d28gd2F5czoKCjEuICoq\nVXNpbmcgQ29tbWFuZCBMaW5lIEFyZ3VtZW50Kio6CgogICBgYGBiYXNoCiAg\nIGdpdGh1Yi1tY3Atc2VydmVyIC0tdG9vbHNldHMgcmVwb3MsaXNzdWVzLHB1\nbGxfcmVxdWVzdHMsYWN0aW9ucyxjb2RlX3NlY3VyaXR5CiAgIGBgYAoKMi4g\nKipVc2luZyBFbnZpcm9ubWVudCBWYXJpYWJsZSoqOgoKICAgYGBgYmFzaAog\nICBHSVRIVUJfVE9PTFNFVFM9InJlcG9zLGlzc3VlcyxwdWxsX3JlcXVlc3Rz\nLGFjdGlvbnMsY29kZV9zZWN1cml0eSIgLi9naXRodWItbWNwLXNlcnZlcgog\nICBgYGAKClRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBgR0lUSFVCX1RPT0xT\nRVRTYCB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdGhlIGNvbW1hbmQgbGluZSBh\ncmd1bWVudCBpZiBib3RoIGFyZSBwcm92aWRlZC4KCiMjIyMgU3BlY2lmeWlu\nZyBJbmRpdmlkdWFsIFRvb2xzCgpZb3UgY2FuIGFsc28gY29uZmlndXJlIHNw\nZWNpZmljIHRvb2xzIHVzaW5nIHRoZSBgLS10b29sc2AgZmxhZy4gVG9vbHMg\nY2FuIGJlIHVzZWQgaW5kZXBlbmRlbnRseSBvciBjb21iaW5lZCB3aXRoIHRv\nb2xzZXRzIGZvciBmaW5lLWdyYWluZWQgY29udHJvbC4KCjEuICoqVXNpbmcg\nQ29tbWFuZCBMaW5lIEFyZ3VtZW50Kio6CgogICBgYGBiYXNoCiAgIGdpdGh1\nYi1tY3Atc2VydmVyIC0tdG9vbHMgZ2V0X2ZpbGVfY29udGVudHMsaXNzdWVf\ncmVhZCxjcmVhdGVfcHVsbF9yZXF1ZXN0CiAgIGBgYAoKMi4gKipVc2luZyBF\nbnZpcm9ubWVudCBWYXJpYWJsZSoqOgoKICAgYGBgYmFzaAogICBHSVRIVUJf\nVE9PTFM9ImdldF9maWxlX2NvbnRlbnRzLGlzc3VlX3JlYWQsY3JlYXRlX3B1\nbGxfcmVxdWVzdCIgLi9naXRodWItbWNwLXNlcnZlcgogICBgYGAKCjMuICoq\nQ29tYmluaW5nIHdpdGggVG9vbHNldHMqKiAoYWRkaXRpdmUpOgoKICAgYGBg\nYmFzaAogICBnaXRodWItbWNwLXNlcnZlciAtLXRvb2xzZXRzIHJlcG9zLGlz\nc3VlcyAtLXRvb2xzIGdldF9naXN0CiAgIGBgYAoKICAgVGhpcyByZWdpc3Rl\ncnMgYWxsIHRvb2xzIGZyb20gYHJlcG9zYCBhbmQgYGlzc3Vlc2AgdG9vbHNl\ndHMsIHBsdXMgYGdldF9naXN0YC4KCioqSW1wb3J0YW50IE5vdGVzOioqCgot\nIFRvb2xzIGFuZCB0b29sc2V0cyBjYW4gYmUgdXNlZCB0b2dldGhlcgotIFJl\nYWQtb25seSBtb2RlIHRha2VzIHByaW9yaXR5OiB3cml0ZSB0b29scyBhcmUg\nc2tpcHBlZCBpZiBgLS1yZWFkLW9ubHlgIGlzIHNldCwgZXZlbiBpZiBleHBs\naWNpdGx5IHJlcXVlc3RlZCB2aWEgYC0tdG9vbHNgCi0gVG9vbCBuYW1lcyBt\ndXN0IG1hdGNoIGV4YWN0bHkgKGUuZy4sIGBnZXRfZmlsZV9jb250ZW50c2As\nIG5vdCBgZ2V0RmlsZUNvbnRlbnRzYCkuIEludmFsaWQgdG9vbCBuYW1lcyB3\naWxsIGNhdXNlIHRoZSBzZXJ2ZXIgdG8gZmFpbCBhdCBzdGFydHVwIHdpdGgg\nYW4gZXJyb3IgbWVzc2FnZQotIFdoZW4gdG9vbHMgYXJlIHJlbmFtZWQsIG9s\nZCBuYW1lcyBhcmUgcHJlc2VydmVkIGFzIGFsaWFzZXMgZm9yIGJhY2t3YXJk\nIGNvbXBhdGliaWxpdHkuIFNlZSBbVG9vbCBSZW5hbWluZ10oZG9jcy90b29s\nLXJlbmFtaW5nLm1kKSBmb3IgZGV0YWlscy4KCiMjIyBVc2luZyBUb29sc2V0\ncyBXaXRoIERvY2tlcgoKV2hlbiB1c2luZyBEb2NrZXIsIHlvdSBjYW4gcGFz\ncyB0aGUgdG9vbHNldHMgYXMgZW52aXJvbm1lbnQgdmFyaWFibGVzOgoKYGBg\nYmFzaApkb2NrZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJTT05B\nTF9BQ0NFU1NfVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJfVE9P\nTFNFVFM9InJlcG9zLGlzc3VlcyxwdWxsX3JlcXVlc3RzLGFjdGlvbnMsY29k\nZV9zZWN1cml0eSIgXAogIGdoY3IuaW8vZ2l0aHViL2dpdGh1Yi1tY3Atc2Vy\ndmVyCmBgYAoKIyMjIFVzaW5nIFRvb2xzIFdpdGggRG9ja2VyCgpXaGVuIHVz\naW5nIERvY2tlciwgeW91IGNhbiBwYXNzIHNwZWNpZmljIHRvb2xzIGFzIGVu\ndmlyb25tZW50IHZhcmlhYmxlcy4gWW91IGNhbiBhbHNvIGNvbWJpbmUgdG9v\nbHMgd2l0aCB0b29sc2V0czoKCmBgYGJhc2gKIyBUb29scyBvbmx5CmRvY2tl\nciBydW4gLWkgLS1ybSBcCiAgLWUgR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19U\nT0tFTj08eW91ci10b2tlbj4gXAogIC1lIEdJVEhVQl9UT09MUz0iZ2V0X2Zp\nbGVfY29udGVudHMsaXNzdWVfcmVhZCxjcmVhdGVfcHVsbF9yZXF1ZXN0IiBc\nCiAgZ2hjci5pby9naXRodWIvZ2l0aHViLW1jcC1zZXJ2ZXIKCiMgVG9vbHMg\nY29tYmluZWQgd2l0aCB0b29sc2V0cyAoYWRkaXRpdmUpCmRvY2tlciBydW4g\nLWkgLS1ybSBcCiAgLWUgR0lUSFVCX1BFUlNPTkFMX0FDQ0VTU19UT0tFTj08\neW91ci10b2tlbj4gXAogIC1lIEdJVEhVQl9UT09MU0VUUz0icmVwb3MsaXNz\ndWVzIiBcCiAgLWUgR0lUSFVCX1RPT0xTPSJnZXRfZ2lzdCIgXAogIGdoY3Iu\naW8vZ2l0aHViL2dpdGh1Yi1tY3Atc2VydmVyCmBgYAoKIyMjIFNwZWNpYWwg\ndG9vbHNldHMKCiMjIyMgImFsbCIgdG9vbHNldAoKVGhlIHNwZWNpYWwgdG9v\nbHNldCBgYWxsYCBjYW4gYmUgcHJvdmlkZWQgdG8gZW5hYmxlIGFsbCBhdmFp\nbGFibGUgdG9vbHNldHMgcmVnYXJkbGVzcyBvZiBhbnkgb3RoZXIgY29uZmln\ndXJhdGlvbjoKCmBgYGJhc2gKLi9naXRodWItbWNwLXNlcnZlciAtLXRvb2xz\nZXRzIGFsbApgYGAKCk9yIHVzaW5nIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJs\nZToKCmBgYGJhc2gKR0lUSFVCX1RPT0xTRVRTPSJhbGwiIC4vZ2l0aHViLW1j\ncC1zZXJ2ZXIKYGBgCgojIyMjICJkZWZhdWx0IiB0b29sc2V0CgpUaGUgZGVm\nYXVsdCB0b29sc2V0IGBkZWZhdWx0YCBpcyB0aGUgY29uZmlndXJhdGlvbiB0\naGF0IGdldHMgcGFzc2VkIHRvIHRoZSBzZXJ2ZXIgaWYgbm8gdG9vbHNldHMg\nYXJlIHNwZWNpZmllZC4KClRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gaXM6\nCgotIGNvbnRleHQKLSByZXBvcwotIGlzc3VlcwotIHB1bGxfcmVxdWVzdHMK\nLSB1c2VycwoKVG8ga2VlcCB0aGUgZGVmYXVsdCBjb25maWd1cmF0aW9uIGFu\nZCBhZGQgYWRkaXRpb25hbCB0b29sc2V0czoKCmBgYGJhc2gKR0lUSFVCX1RP\nT0xTRVRTPSJkZWZhdWx0LHN0YXJnYXplcnMiIC4vZ2l0aHViLW1jcC1zZXJ2\nZXIKYGBgCgojIyMgSW5zaWRlcnMgTW9kZQoKVGhlIGxvY2FsIEdpdEh1YiBN\nQ1AgU2VydmVyIG9mZmVycyBhbiBpbnNpZGVycyB2ZXJzaW9uIHdpdGggZWFy\nbHkgYWNjZXNzIHRvIG5ldyBmZWF0dXJlcyBhbmQgZXhwZXJpbWVudGFsIHRv\nb2xzLgoKMS4gKipVc2luZyBDb21tYW5kIExpbmUgQXJndW1lbnQqKjoKCiAg\nIGBgYGJhc2gKICAgLi9naXRodWItbWNwLXNlcnZlciAtLWluc2lkZXJzCiAg\nIGBgYAoKMi4gKipVc2luZyBFbnZpcm9ubWVudCBWYXJpYWJsZSoqOgoKICAg\nYGBgYmFzaAogICBHSVRIVUJfSU5TSURFUlM9dHJ1ZSAuL2dpdGh1Yi1tY3At\nc2VydmVyCiAgIGBgYAoKV2hlbiB1c2luZyBEb2NrZXI6CgpgYGBiYXNoCmRv\nY2tlciBydW4gLWkgLS1ybSBcCiAgLWUgR0lUSFVCX1BFUlNPTkFMX0FDQ0VT\nU19UT0tFTj08eW91ci10b2tlbj4gXAogIC1lIEdJVEhVQl9JTlNJREVSUz10\ncnVlIFwKICBnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcgpgYGAK\nCiMjIyBBdmFpbGFibGUgVG9vbHNldHMKClRoZSBmb2xsb3dpbmcgc2V0cyBv\nZiB0b29scyBhcmUgYXZhaWxhYmxlOgoKPCEtLSBTVEFSVCBBVVRPTUFURUQg\nVE9PTFNFVFMgLS0+CnwgICAgIHwgVG9vbHNldCAgICAgICAgICAgICAgICAg\nfCBEZXNjcmlwdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgIHwKfCAtLS0gfCAtLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfAp8IDxwaWN0dXJlPjxzb3Vy\nY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL3BlcnNvbi1kYXJrLnBuZyI+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL3BlcnNvbi1saWdodC5wbmciPjxpbWcg\nc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVyc29uLWxpZ2h0LnBuZyIgd2lk\ndGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9InBlcnNvbiI+PC9waWN0dXJlPiB8\nIGBjb250ZXh0YCAgICAgICAgICAgICAgIHwgKipTdHJvbmdseSByZWNvbW1l\nbmRlZCoqOiBUb29scyB0aGF0IHByb3ZpZGUgY29udGV4dCBhYm91dCB0aGUg\nY3VycmVudCB1c2VyIGFuZCBHaXRIdWIgY29udGV4dCB5b3UgYXJlIG9wZXJh\ndGluZyBpbiB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNv\nbnMvd29ya2Zsb3ctZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJz\nLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9p\nY29ucy93b3JrZmxvdy1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNv\nbnMvaWNvbnMvd29ya2Zsb3ctbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdo\ndD0iMjAiIGFsdD0id29ya2Zsb3ciPjwvcGljdHVyZT4gfCBgYWN0aW9uc2Ag\nfCBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvd3MgYW5kIENJL0NEIG9wZXJhdGlv\nbnMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9y\nLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2Nv\nZGVzY2FuLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xv\nci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMv\nY29kZXNjYW4tbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2lj\nb25zL2NvZGVzY2FuLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIw\nIiBhbHQ9ImNvZGVzY2FuIj48L3BpY3R1cmU+IHwgYGNvZGVfc2VjdXJpdHlg\nIHwgQ29kZSBzZWN1cml0eSByZWxhdGVkIHRvb2xzLCBzdWNoIGFzIEdpdEh1\nYiBDb2RlIFNjYW5uaW5nIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlhPSIo\ncHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3Rp\nY29ucy9pY29ucy9jb3BpbG90LWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIo\ncHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0\naWNvbnMvaWNvbnMvY29waWxvdC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cv\nb2N0aWNvbnMvaWNvbnMvY29waWxvdC1saWdodC5wbmciIHdpZHRoPSIyMCIg\naGVpZ2h0PSIyMCIgYWx0PSJjb3BpbG90Ij48L3BpY3R1cmU+IHwgYGNvcGls\nb3RgIHwgQ29waWxvdCByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291\ncmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNz\nZXQ9InBrZy9vY3RpY29ucy9pY29ucy9kZXBlbmRhYm90LWRhcmsucG5nIj48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvZGVwZW5kYWJvdC1saWdodC5w\nbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvZGVwZW5kYWJvdC1s\naWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJkZXBlbmRh\nYm90Ij48L3BpY3R1cmU+IHwgYGRlcGVuZGFib3RgIHwgRGVwZW5kYWJvdCB0\nb29scyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29s\nb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMv\nY29tbWVudC1kaXNjdXNzaW9uLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIo\ncHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0\naWNvbnMvaWNvbnMvY29tbWVudC1kaXNjdXNzaW9uLWxpZ2h0LnBuZyI+PGlt\nZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9jb21tZW50LWRpc2N1c3Npb24t\nbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0iY29tbWVu\ndC1kaXNjdXNzaW9uIj48L3BpY3R1cmU+IHwgYGRpc2N1c3Npb25zYCB8IEdp\ndEh1YiBEaXNjdXNzaW9ucyByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBz\ncmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9sb2dvLWdpc3QtZGFyay5wbmci\nPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQp\nIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9sb2dvLWdpc3QtbGlnaHQu\ncG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2xvZ28tZ2lzdC1s\naWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJsb2dvLWdp\nc3QiPjwvcGljdHVyZT4gfCBgZ2lzdHNgIHwgR2l0SHViIEdpc3QgcmVsYXRl\nZCB0b29scyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNv\nbnMvZ2l0LWJyYW5jaC1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZl\ncnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25z\nL2ljb25zL2dpdC1icmFuY2gtbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29j\ndGljb25zL2ljb25zL2dpdC1icmFuY2gtbGlnaHQucG5nIiB3aWR0aD0iMjAi\nIGhlaWdodD0iMjAiIGFsdD0iZ2l0LWJyYW5jaCI+PC9waWN0dXJlPiB8IGBn\naXRgIHwgR2l0SHViIEdpdCBBUEkgcmVsYXRlZCB0b29scyBmb3IgbG93LWxl\ndmVsIEdpdCBvcGVyYXRpb25zIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9v\nY3RpY29ucy9pY29ucy9pc3N1ZS1vcGVuZWQtZGFyay5wbmciPjxzb3VyY2Ug\nbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9\nInBrZy9vY3RpY29ucy9pY29ucy9pc3N1ZS1vcGVuZWQtbGlnaHQucG5nIj48\naW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2lzc3VlLW9wZW5lZC1saWdo\ndC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJpc3N1ZS1vcGVu\nZWQiPjwvcGljdHVyZT4gfCBgaXNzdWVzYCB8IEdpdEh1YiBJc3N1ZXMgcmVs\nYXRlZCB0b29scyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZl\ncnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMv\naWNvbnMvdGFnLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1j\nb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNv\nbnMvdGFnLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29u\ncy90YWctbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0i\ndGFnIj48L3BpY3R1cmU+IHwgYGxhYmVsc2AgfCBHaXRIdWIgTGFiZWxzIHJl\nbGF0ZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVm\nZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25z\nL2ljb25zL2JlbGwtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJz\nLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9p\nY29ucy9iZWxsLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9p\nY29ucy9iZWxsLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBh\nbHQ9ImJlbGwiPjwvcGljdHVyZT4gfCBgbm90aWZpY2F0aW9uc2AgfCBHaXRI\ndWIgTm90aWZpY2F0aW9ucyByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBz\ncmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24tZGFyay5w\nbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGln\naHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24t\nbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL29yZ2Fu\naXphdGlvbi1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0\nPSJvcmdhbml6YXRpb24iPjwvcGljdHVyZT4gfCBgb3Jnc2AgfCBHaXRIdWIg\nT3JnYW5pemF0aW9uIHJlbGF0ZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3Vy\nY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL3Byb2plY3QtZGFyay5wbmciPjxzb3Vy\nY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNz\nZXQ9InBrZy9vY3RpY29ucy9pY29ucy9wcm9qZWN0LWxpZ2h0LnBuZyI+PGlt\nZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9wcm9qZWN0LWxpZ2h0LnBuZyIg\nd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9InByb2plY3QiPjwvcGljdHVy\nZT4gfCBgcHJvamVjdHNgIHwgR2l0SHViIFByb2plY3RzIHJlbGF0ZWQgdG9v\nbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9y\nLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2dp\ndC1wdWxsLXJlcXVlc3QtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVm\nZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29u\ncy9pY29ucy9naXQtcHVsbC1yZXF1ZXN0LWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy9naXQtcHVsbC1yZXF1ZXN0LWxpZ2h0LnBu\nZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImdpdC1wdWxsLXJlcXVl\nc3QiPjwvcGljdHVyZT4gfCBgcHVsbF9yZXF1ZXN0c2AgfCBHaXRIdWIgUHVs\nbCBSZXF1ZXN0IHJlbGF0ZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2Ug\nbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0i\ncGtnL29jdGljb25zL2ljb25zL3JlcG8tZGFyay5wbmciPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9yZXBvLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBr\nZy9vY3RpY29ucy9pY29ucy9yZXBvLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBo\nZWlnaHQ9IjIwIiBhbHQ9InJlcG8iPjwvcGljdHVyZT4gfCBgcmVwb3NgIHwg\nR2l0SHViIFJlcG9zaXRvcnkgcmVsYXRlZCB0b29scyB8CnwgPHBpY3R1cmU+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWxvY2stZGFyay5w\nbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGln\naHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9zaGllbGQtbG9jay1s\naWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxk\nLWxvY2stbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0i\nc2hpZWxkLWxvY2siPjwvcGljdHVyZT4gfCBgc2VjcmV0X3Byb3RlY3Rpb25g\nIHwgU2VjcmV0IHByb3RlY3Rpb24gcmVsYXRlZCB0b29scywgc3VjaCBhcyBH\naXRIdWIgU2VjcmV0IFNjYW5uaW5nIHwKfCA8cGljdHVyZT48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9zaGllbGQtZGFyay5wbmciPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9zaGllbGQtbGlnaHQucG5nIj48aW1nIHNyYz0i\ncGtnL29jdGljb25zL2ljb25zL3NoaWVsZC1saWdodC5wbmciIHdpZHRoPSIy\nMCIgaGVpZ2h0PSIyMCIgYWx0PSJzaGllbGQiPjwvcGljdHVyZT4gfCBgc2Vj\ndXJpdHlfYWR2aXNvcmllc2AgfCBTZWN1cml0eSBhZHZpc29yaWVzIHJlbGF0\nZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJz\nLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL3N0YXItZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNv\nbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29u\ncy9zdGFyLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29u\ncy9zdGFyLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9\nInN0YXIiPjwvcGljdHVyZT4gfCBgc3RhcmdhemVyc2AgfCBHaXRIdWIgU3Rh\ncmdhemVycyByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9wZW9wbGUtZGFyay5wbmciPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9wZW9wbGUtbGlnaHQucG5nIj48aW1nIHNyYz0i\ncGtnL29jdGljb25zL2ljb25zL3Blb3BsZS1saWdodC5wbmciIHdpZHRoPSIy\nMCIgaGVpZ2h0PSIyMCIgYWx0PSJwZW9wbGUiPjwvcGljdHVyZT4gfCBgdXNl\ncnNgIHwgR2l0SHViIFVzZXIgcmVsYXRlZCB0b29scyB8CjwhLS0gRU5EIEFV\nVE9NQVRFRCBUT09MU0VUUyAtLT4KCiMjIyBBZGRpdGlvbmFsIFRvb2xzZXRz\nIGluIFJlbW90ZSBHaXRIdWIgTUNQIFNlcnZlcgoKfCBUb29sc2V0ICAgICAg\nICAgICAgICAgICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IC0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8CnwgYGNvcGlsb3Rg\nIHwgQ29waWxvdCByZWxhdGVkIHRvb2xzIChlLmcuIENvcGlsb3QgQ29kaW5n\nIEFnZW50KSB8CnwgYGNvcGlsb3Rfc3BhY2VzYCB8IENvcGlsb3QgU3BhY2Vz\nIHJlbGF0ZWQgdG9vbHMgfAp8IGBnaXRodWJfc3VwcG9ydF9kb2NzX3NlYXJj\naGAgfCBTZWFyY2ggZG9jcyB0byBhbnN3ZXIgR2l0SHViIHByb2R1Y3QgYW5k\nIHN1cHBvcnQgcXVlc3Rpb25zIHwKCiMjIFRvb2xzCgo8IS0tIFNUQVJUIEFV\nVE9NQVRFRCBUT09MUyAtLT4KPGRldGFpbHM+Cgo8c3VtbWFyeT48cGljdHVy\nZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmsp\nIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy93b3JrZmxvdy1kYXJrLnBu\nZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdo\ndCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3dvcmtmbG93LWxpZ2h0\nLnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy93b3JrZmxvdy1s\naWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJ3b3JrZmxv\ndyI+PC9waWN0dXJlPiBBY3Rpb25zPC9zdW1tYXJ5PgoKLSAqKmFjdGlvbnNf\nZ2V0KiogLSBHZXQgZGV0YWlscyBvZiBHaXRIdWIgQWN0aW9ucyByZXNvdXJj\nZXMgKHdvcmtmbG93cywgd29ya2Zsb3cgcnVucywgam9icywgYW5kIGFydGlm\nYWN0cykKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYG1ldGhvZGA6IFRoZSBtZXRob2QgdG8gZXhlY3V0ZSAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGByZXNvdXJjZV9pZGA6IFRoZSB1bmlxdWUg\naWRlbnRpZmllciBvZiB0aGUgcmVzb3VyY2UuIFRoaXMgd2lsbCB2YXJ5IGJh\nc2VkIG9uIHRoZSAibWV0aG9kIiBwcm92aWRlZCwgc28gZW5zdXJlIHlvdSBw\ncm92aWRlIHRoZSBjb3JyZWN0IElEOgogICAgLSBQcm92aWRlIGEgd29ya2Zs\nb3cgSUQgb3Igd29ya2Zsb3cgZmlsZSBuYW1lIChlLmcuIGNpLnlhbWwpIGZv\nciAnZ2V0X3dvcmtmbG93JyBtZXRob2QuCiAgICAtIFByb3ZpZGUgYSB3b3Jr\nZmxvdyBydW4gSUQgZm9yICdnZXRfd29ya2Zsb3dfcnVuJywgJ2dldF93b3Jr\nZmxvd19ydW5fdXNhZ2UnLCBhbmQgJ2dldF93b3JrZmxvd19ydW5fbG9nc191\ncmwnIG1ldGhvZHMuCiAgICAtIFByb3ZpZGUgYW4gYXJ0aWZhY3QgSUQgZm9y\nICdkb3dubG9hZF93b3JrZmxvd19ydW5fYXJ0aWZhY3QnIG1ldGhvZC4KICAg\nIC0gUHJvdmlkZSBhIGpvYiBJRCBmb3IgJ2dldF93b3JrZmxvd19qb2InIG1l\ndGhvZC4KICAgICAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKiphY3Rpb25zX2xp\nc3QqKiAtIExpc3QgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIGluIGEgcmVw\nb3NpdG9yeQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9g\nCiAgLSBgbWV0aG9kYDogVGhlIGFjdGlvbiB0byBwZXJmb3JtIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBh\nZ2luYXRpb24gKGRlZmF1bHQ6IDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0g\nYHBlcl9wYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAo\nZGVmYXVsdDogMzAsIG1heDogMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYHJlc291cmNlX2lkYDogVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRo\nZSByZXNvdXJjZS4gVGhpcyB3aWxsIHZhcnkgYmFzZWQgb24gdGhlICJtZXRo\nb2QiIHByb3ZpZGVkLCBzbyBlbnN1cmUgeW91IHByb3ZpZGUgdGhlIGNvcnJl\nY3QgSUQ6CiAgICAtIERvIG5vdCBwcm92aWRlIGFueSByZXNvdXJjZSBJRCBm\nb3IgJ2xpc3Rfd29ya2Zsb3dzJyBtZXRob2QuCiAgICAtIFByb3ZpZGUgYSB3\nb3JrZmxvdyBJRCBvciB3b3JrZmxvdyBmaWxlIG5hbWUgKGUuZy4gY2kueWFt\nbCkgZm9yICdsaXN0X3dvcmtmbG93X3J1bnMnIG1ldGhvZCwgb3Igb21pdCB0\nbyBsaXN0IGFsbCB3b3JrZmxvdyBydW5zIGluIHRoZSByZXBvc2l0b3J5Lgog\nICAgLSBQcm92aWRlIGEgd29ya2Zsb3cgcnVuIElEIGZvciAnbGlzdF93b3Jr\nZmxvd19qb2JzJyBhbmQgJ2xpc3Rfd29ya2Zsb3dfcnVuX2FydGlmYWN0cycg\nbWV0aG9kcy4KICAgICAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB3b3JrZmxv\nd19qb2JzX2ZpbHRlcmA6IEZpbHRlcnMgZm9yIHdvcmtmbG93IGpvYnMuICoq\nT05MWSoqIHVzZWQgd2hlbiBtZXRob2QgaXMgJ2xpc3Rfd29ya2Zsb3dfam9i\ncycgKG9iamVjdCwgb3B0aW9uYWwpCiAgLSBgd29ya2Zsb3dfcnVuc19maWx0\nZXJgOiBGaWx0ZXJzIGZvciB3b3JrZmxvdyBydW5zLiAqKk9OTFkqKiB1c2Vk\nIHdoZW4gbWV0aG9kIGlzICdsaXN0X3dvcmtmbG93X3J1bnMnIChvYmplY3Qs\nIG9wdGlvbmFsKQoKLSAqKmFjdGlvbnNfcnVuX3RyaWdnZXIqKiAtIFRyaWdn\nZXIgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3cgYWN0aW9ucwogIC0gKipSZXF1\naXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgaW5wdXRzYDogSW5w\ndXRzIHRoZSB3b3JrZmxvdyBhY2NlcHRzLiBPbmx5IHVzZWQgZm9yICdydW5f\nd29ya2Zsb3cnIG1ldGhvZC4gKG9iamVjdCwgb3B0aW9uYWwpCiAgLSBgbWV0\naG9kYDogVGhlIG1ldGhvZCB0byBleGVjdXRlIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1\naXJlZCkKICAtIGByZWZgOiBUaGUgZ2l0IHJlZmVyZW5jZSBmb3IgdGhlIHdv\ncmtmbG93LiBUaGUgcmVmZXJlbmNlIGNhbiBiZSBhIGJyYW5jaCBvciB0YWcg\nbmFtZS4gUmVxdWlyZWQgZm9yICdydW5fd29ya2Zsb3cnIG1ldGhvZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAo\nc3RyaW5nLCByZXF1aXJlZCkKICAtIGBydW5faWRgOiBUaGUgSUQgb2YgdGhl\nIHdvcmtmbG93IHJ1bi4gUmVxdWlyZWQgZm9yIGFsbCBtZXRob2RzIGV4Y2Vw\ndCAncnVuX3dvcmtmbG93Jy4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgd29y\na2Zsb3dfaWRgOiBUaGUgd29ya2Zsb3cgSUQgKG51bWVyaWMpIG9yIHdvcmtm\nbG93IGZpbGUgbmFtZSAoZS5nLiwgbWFpbi55bWwsIGNpLnlhbWwpLiBSZXF1\naXJlZCBmb3IgJ3J1bl93b3JrZmxvdycgbWV0aG9kLiAoc3RyaW5nLCBvcHRp\nb25hbCkKCi0gKipnZXRfam9iX2xvZ3MqKiAtIEdldCBHaXRIdWIgQWN0aW9u\ncyB3b3JrZmxvdyBqb2IgbG9ncwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHJlcG9gCiAgLSBgZmFpbGVkX29ubHlgOiBXaGVuIHRydWUsIGdl\ndHMgbG9ncyBmb3IgYWxsIGZhaWxlZCBqb2JzIGluIHRoZSB3b3JrZmxvdyBy\ndW4gc3BlY2lmaWVkIGJ5IHJ1bl9pZC4gUmVxdWlyZXMgcnVuX2lkIHRvIGJl\nIHByb3ZpZGVkLiAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgam9iX2lkYDog\nVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSB3b3JrZmxvdyBqb2IuIFJl\ncXVpcmVkIHdoZW4gZ2V0dGluZyBsb2dzIGZvciBhIHNpbmdsZSBqb2IuIChu\ndW1iZXIsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25l\nciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBu\nYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJldHVybl9jb250ZW50YDog\nUmV0dXJucyBhY3R1YWwgbG9nIGNvbnRlbnQgaW5zdGVhZCBvZiBVUkxzIChi\nb29sZWFuLCBvcHRpb25hbCkKICAtIGBydW5faWRgOiBUaGUgdW5pcXVlIGlk\nZW50aWZpZXIgb2YgdGhlIHdvcmtmbG93IHJ1bi4gUmVxdWlyZWQgd2hlbiBm\nYWlsZWRfb25seSBpcyB0cnVlIHRvIGdldCBsb2dzIGZvciBhbGwgZmFpbGVk\nIGpvYnMgaW4gdGhlIHJ1bi4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgdGFp\nbF9saW5lc2A6IE51bWJlciBvZiBsaW5lcyB0byByZXR1cm4gZnJvbSB0aGUg\nZW5kIG9mIHRoZSBsb2cgKG51bWJlciwgb3B0aW9uYWwpCgo8L2RldGFpbHM+\nCgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9\nIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29j\ndGljb25zL2ljb25zL2NvZGVzY2FuLWRhcmsucG5nIj48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvY29kZXNjYW4tbGlnaHQucG5nIj48aW1nIHNyYz0i\ncGtnL29jdGljb25zL2ljb25zL2NvZGVzY2FuLWxpZ2h0LnBuZyIgd2lkdGg9\nIjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImNvZGVzY2FuIj48L3BpY3R1cmU+IENv\nZGUgU2VjdXJpdHk8L3N1bW1hcnk+CgotICoqZ2V0X2NvZGVfc2Nhbm5pbmdf\nYWxlcnQqKiAtIEdldCBjb2RlIHNjYW5uaW5nIGFsZXJ0CiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0gKipB\nY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlfZXZl\nbnRzYAogIC0gYGFsZXJ0TnVtYmVyYDogVGhlIG51bWJlciBvZiB0aGUgYWxl\ncnQuIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogVGhlIG93bmVy\nIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBy\nZXBvYDogVGhlIG5hbWUgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJl\ncXVpcmVkKQoKLSAqKmxpc3RfY29kZV9zY2FubmluZ19hbGVydHMqKiAtIExp\nc3QgY29kZSBzY2FubmluZyBhbGVydHMKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGBzZWN1cml0eV9ldmVudHNgCiAgLSAqKkFjY2VwdGVkIE9B\ndXRoIFNjb3BlcyoqOiBgcmVwb2AsIGBzZWN1cml0eV9ldmVudHNgCiAgLSBg\nb3duZXJgOiBUaGUgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5h\ndGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2Vg\nOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVmYDogVGhlIEdpdCBy\nZWZlcmVuY2UgZm9yIHRoZSByZXN1bHRzIHlvdSB3YW50IHRvIGxpc3QuIChz\ndHJpbmcsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUg\ncmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc2V2ZXJpdHlg\nOiBGaWx0ZXIgY29kZSBzY2FubmluZyBhbGVydHMgYnkgc2V2ZXJpdHkgKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgc3RhdGVgOiBGaWx0ZXIgY29kZSBzY2Fu\nbmluZyBhbGVydHMgYnkgc3RhdGUuIERlZmF1bHRzIHRvIG9wZW4gKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgdG9vbF9uYW1lYDogVGhlIG5hbWUgb2YgdGhl\nIHRvb2wgdXNlZCBmb3IgY29kZSBzY2FubmluZy4gKHN0cmluZywgb3B0aW9u\nYWwpCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJl\nPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayki\nIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3BlcnNvbi1kYXJrLnBuZyI+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCki\nIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3BlcnNvbi1saWdodC5wbmci\nPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVyc29uLWxpZ2h0LnBu\nZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9InBlcnNvbiI+PC9waWN0\ndXJlPiBDb250ZXh0PC9zdW1tYXJ5PgoKLSAqKmdldF9tZSoqIC0gR2V0IG15\nIHVzZXIgcHJvZmlsZQogIC0gTm8gcGFyYW1ldGVycyByZXF1aXJlZAoKLSAq\nKmdldF90ZWFtX21lbWJlcnMqKiAtIEdldCB0ZWFtIG1lbWJlcnMKICAtICoq\nUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZWFkOm9yZ2AKICAtICoqQWNj\nZXB0ZWQgT0F1dGggU2NvcGVzKio6IGBhZG1pbjpvcmdgLCBgcmVhZDpvcmdg\nLCBgd3JpdGU6b3JnYAogIC0gYG9yZ2A6IE9yZ2FuaXphdGlvbiBsb2dpbiAo\nb3duZXIpIHRoYXQgY29udGFpbnMgdGhlIHRlYW0uIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHRlYW1fc2x1Z2A6IFRlYW0gc2x1ZyAoc3RyaW5nLCByZXF1\naXJlZCkKCi0gKipnZXRfdGVhbXMqKiAtIEdldCB0ZWFtcwogIC0gKipSZXF1\naXJlZCBPQXV0aCBTY29wZXMqKjogYHJlYWQ6b3JnYAogIC0gKipBY2NlcHRl\nZCBPQXV0aCBTY29wZXMqKjogYGFkbWluOm9yZ2AsIGByZWFkOm9yZ2AsIGB3\ncml0ZTpvcmdgCiAgLSBgdXNlcmA6IFVzZXJuYW1lIHRvIGdldCB0ZWFtcyBm\nb3IuIElmIG5vdCBwcm92aWRlZCwgdXNlcyB0aGUgYXV0aGVudGljYXRlZCB1\nc2VyLiAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxz\nPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNv\nbnMvY29waWxvdC1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL2NvcGlsb3QtbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25z\nL2ljb25zL2NvcGlsb3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0i\nMjAiIGFsdD0iY29waWxvdCI+PC9waWN0dXJlPiBDb3BpbG90PC9zdW1tYXJ5\nPgoKLSAqKmFzc2lnbl9jb3BpbG90X3RvX2lzc3VlKiogLSBBc3NpZ24gQ29w\naWxvdCB0byBpc3N1ZQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjog\nYHJlcG9gCiAgLSBgYmFzZV9yZWZgOiBHaXQgcmVmZXJlbmNlIChlLmcuLCBi\ncmFuY2gpIHRoYXQgdGhlIGFnZW50IHdpbGwgc3RhcnQgaXRzIHdvcmsgZnJv\nbS4gSWYgbm90IHNwZWNpZmllZCwgZGVmYXVsdHMgdG8gdGhlIHJlcG9zaXRv\ncnkncyBkZWZhdWx0IGJyYW5jaCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBj\ndXN0b21faW5zdHJ1Y3Rpb25zYDogT3B0aW9uYWwgY3VzdG9tIGluc3RydWN0\naW9ucyB0byBndWlkZSB0aGUgYWdlbnQgYmV5b25kIHRoZSBpc3N1ZSBib2R5\nLiBVc2UgdGhpcyB0byBwcm92aWRlIGFkZGl0aW9uYWwgY29udGV4dCwgY29u\nc3RyYWludHMsIG9yIGd1aWRhbmNlIHRoYXQgaXMgbm90IGNhcHR1cmVkIGlu\nIHRoZSBpc3N1ZSBkZXNjcmlwdGlvbiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGBpc3N1ZV9udW1iZXJgOiBJc3N1ZSBudW1iZXIgKG51bWJlciwgcmVxdWly\nZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywg\ncmVxdWlyZWQpCgotICoqcmVxdWVzdF9jb3BpbG90X3JldmlldyoqIC0gUmVx\ndWVzdCBDb3BpbG90IHJldmlldwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChz\ndHJpbmcsIHJlcXVpcmVkKQogIC0gYHB1bGxOdW1iZXJgOiBQdWxsIHJlcXVl\nc3QgbnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBv\nc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgo8L2RldGFpbHM+Cgo8\nZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL2RlcGVuZGFib3QtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9\nIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9v\nY3RpY29ucy9pY29ucy9kZXBlbmRhYm90LWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy9kZXBlbmRhYm90LWxpZ2h0LnBuZyIgd2lk\ndGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImRlcGVuZGFib3QiPjwvcGljdHVy\nZT4gRGVwZW5kYWJvdDwvc3VtbWFyeT4KCi0gKipnZXRfZGVwZW5kYWJvdF9h\nbGVydCoqIC0gR2V0IGRlcGVuZGFib3QgYWxlcnQKICAtICoqUmVxdWlyZWQg\nT0F1dGggU2NvcGVzKio6IGBzZWN1cml0eV9ldmVudHNgCiAgLSAqKkFjY2Vw\ndGVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AsIGBzZWN1cml0eV9ldmVudHNg\nCiAgLSBgYWxlcnROdW1iZXJgOiBUaGUgbnVtYmVyIG9mIHRoZSBhbGVydC4g\nKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBUaGUgb3duZXIgb2Yg\ndGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9g\nOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWly\nZWQpCgotICoqbGlzdF9kZXBlbmRhYm90X2FsZXJ0cyoqIC0gTGlzdCBkZXBl\nbmRhYm90IGFsZXJ0cwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjog\nYHNlY3VyaXR5X2V2ZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVz\nKio6IGByZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBhZnRlcmA6IEN1\ncnNvciBmb3IgcGFnaW5hdGlvbi4gVXNlIHRoZSBjdXJzb3IgZnJvbSB0aGUg\ncHJldmlvdXMgcmVzcG9uc2UuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93\nbmVyYDogVGhlIG93bmVyIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3Ig\ncGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFs\nKQogIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgc2V2ZXJpdHlgOiBGaWx0ZXIgZGVwZW5k\nYWJvdCBhbGVydHMgYnkgc2V2ZXJpdHkgKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgc3RhdGVgOiBGaWx0ZXIgZGVwZW5kYWJvdCBhbGVydHMgYnkgc3RhdGUu\nIERlZmF1bHRzIHRvIG9wZW4gKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFp\nbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtn\nL29jdGljb25zL2ljb25zL2NvbW1lbnQtZGlzY3Vzc2lvbi1kYXJrLnBuZyI+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCki\nIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2NvbW1lbnQtZGlzY3Vzc2lv\nbi1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvY29t\nbWVudC1kaXNjdXNzaW9uLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9\nIjIwIiBhbHQ9ImNvbW1lbnQtZGlzY3Vzc2lvbiI+PC9waWN0dXJlPiBEaXNj\ndXNzaW9uczwvc3VtbWFyeT4KCi0gKipkaXNjdXNzaW9uX2NvbW1lbnRfd3Jp\ndGUqKiAtIE1hbmFnZSBkaXNjdXNzaW9uIGNvbW1lbnRzCiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBib2R5YDogQ29tbWVu\ndCBjb250ZW50IChyZXF1aXJlZCBmb3IgJ2FkZCcsICdyZXBseScsIGFuZCAn\ndXBkYXRlJyBtZXRob2RzKSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBjb21t\nZW50Tm9kZUlEYDogVGhlIE5vZGUgSUQgb2YgdGhlIGRpc2N1c3Npb24gY29t\nbWVudCAocmVxdWlyZWQgZm9yICdyZXBseScsICd1cGRhdGUnLCAnZGVsZXRl\nJywgJ21hcmtfYW5zd2VyJywgYW5kICd1bm1hcmtfYW5zd2VyJyBtZXRob2Rz\nKS4gRm9yICdyZXBseScsIHRoaXMgaXMgdGhlIHRvcC1sZXZlbCBjb21tZW50\nIHRvIHJlcGx5IHRvOyBHaXRIdWIgRGlzY3Vzc2lvbnMgb25seSBzdXBwb3J0\nIG9uZSBsZXZlbCBvZiBuZXN0aW5nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGBkaXNjdXNzaW9uTnVtYmVyYDogRGlzY3Vzc2lvbiBudW1iZXIgKHJlcXVp\ncmVkIGZvciAnYWRkJyBhbmQgJ3JlcGx5JyBtZXRob2RzKSAobnVtYmVyLCBv\ncHRpb25hbCkKICAtIGBtZXRob2RgOiBXcml0ZSBvcGVyYXRpb24gdG8gcGVy\nZm9ybSBvbiBhIGRpc2N1c3Npb24gY29tbWVudC4KICAgIE9wdGlvbnMgYXJl\nOgogICAgLSAnYWRkJyAtIGFkZHMgYSBuZXcgdG9wLWxldmVsIGNvbW1lbnQg\ndG8gYSBkaXNjdXNzaW9uLgogICAgLSAncmVwbHknIC0gcmVwbGllcyB0byBh\nIHRvcC1sZXZlbCBkaXNjdXNzaW9uIGNvbW1lbnQgKEdpdEh1YiBEaXNjdXNz\naW9ucyBvbmx5IHN1cHBvcnQgb25lIGxldmVsIG9mIG5lc3RpbmcpLgogICAg\nLSAndXBkYXRlJyAtIHVwZGF0ZXMgYW4gZXhpc3RpbmcgZGlzY3Vzc2lvbiBj\nb21tZW50LgogICAgLSAnZGVsZXRlJyAtIGRlbGV0ZXMgYSBkaXNjdXNzaW9u\nIGNvbW1lbnQuCiAgICAtICdtYXJrX2Fuc3dlcicgLSBtYXJrcyBhIGRpc2N1\nc3Npb24gY29tbWVudCBhcyB0aGUgYW5zd2VyIChRJkEgb25seSkuCiAgICAt\nICd1bm1hcmtfYW5zd2VyJyAtIHVubWFya3MgYSBkaXNjdXNzaW9uIGNvbW1l\nbnQgYXMgdGhlIGFuc3dlciAoUSZBIG9ubHkpLgogICAgIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAocmVxdWly\nZWQgZm9yICdhZGQnIGFuZCAncmVwbHknIG1ldGhvZHMpIChzdHJpbmcsIG9w\ndGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHJlcXVpcmVk\nIGZvciAnYWRkJyBhbmQgJ3JlcGx5JyBtZXRob2RzKSAoc3RyaW5nLCBvcHRp\nb25hbCkKCi0gKipnZXRfZGlzY3Vzc2lvbioqIC0gR2V0IGRpc2N1c3Npb24K\nICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGRp\nc2N1c3Npb25OdW1iZXJgOiBEaXNjdXNzaW9uIE51bWJlciAobnVtYmVyLCBy\nZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3Ry\naW5nLCByZXF1aXJlZCkKCi0gKipnZXRfZGlzY3Vzc2lvbl9jb21tZW50cyoq\nIC0gR2V0IGRpc2N1c3Npb24gY29tbWVudHMKICAtICoqUmVxdWlyZWQgT0F1\ndGggU2NvcGVzKio6IGByZXBvYAogIC0gYGFmdGVyYDogQ3Vyc29yIGZvciBw\nYWdpbmF0aW9uLiBVc2UgdGhlIGN1cnNvciBmcm9tIHRoZSBwcmV2aW91cyBy\nZXNwb25zZS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZGlzY3Vzc2lvbk51\nbWJlcmA6IERpc2N1c3Npb24gTnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQog\nIC0gYGluY2x1ZGVSZXBsaWVzYDogV2hlbiB0cnVlLCBlYWNoIHRvcC1sZXZl\nbCBjb21tZW50IHdpbGwgaW5jbHVkZSBpdHMgcmVwbGllcyBuZXN0ZWQgd2l0\naGluIGl0ICh1cCB0byAxMDAgcmVwbGllcyBwZXIgY29tbWVudCwgd2hpY2gg\naXMgdGhlIEdpdEh1YiBBUEkgbWF4aW11bSkuIERlZmF1bHRzIHRvIGZhbHNl\nLiAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5\nIG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBlclBhZ2VgOiBSZXN1\nbHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkg\nKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFt\nZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2Rpc2N1c3Npb25fY2F0\nZWdvcmllcyoqIC0gTGlzdCBkaXNjdXNzaW9uIGNhdGVnb3JpZXMKICAtICoq\nUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYG93bmVyYDog\nUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBv\nYDogUmVwb3NpdG9yeSBuYW1lLiBJZiBub3QgcHJvdmlkZWQsIGRpc2N1c3Np\nb24gY2F0ZWdvcmllcyB3aWxsIGJlIHF1ZXJpZWQgYXQgdGhlIG9yZ2FuaXNh\ndGlvbiBsZXZlbC4gKHN0cmluZywgb3B0aW9uYWwpCgotICoqbGlzdF9kaXNj\ndXNzaW9ucyoqIC0gTGlzdCBkaXNjdXNzaW9ucwogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYWZ0ZXJgOiBDdXJzb3IgZm9y\nIHBhZ2luYXRpb24uIFVzZSB0aGUgY3Vyc29yIGZyb20gdGhlIHByZXZpb3Vz\nIHJlc3BvbnNlLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBjYXRlZ29yeWA6\nIE9wdGlvbmFsIGZpbHRlciBieSBkaXNjdXNzaW9uIGNhdGVnb3J5IElELiBJ\nZiBwcm92aWRlZCwgb25seSBkaXNjdXNzaW9ucyB3aXRoIHRoaXMgY2F0ZWdv\ncnkgYXJlIGxpc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZGlyZWN0\naW9uYDogT3JkZXIgZGlyZWN0aW9uLiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGBvcmRlckJ5YDogT3JkZXIgZGlzY3Vzc2lvbnMgYnkgZmllbGQuIElmIHBy\nb3ZpZGVkLCB0aGUgJ2RpcmVjdGlvbicgYWxzbyBuZWVkcyB0byBiZSBwcm92\naWRlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0\nb3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBlclBhZ2VgOiBS\nZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEw\nMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkg\nbmFtZS4gSWYgbm90IHByb3ZpZGVkLCBkaXNjdXNzaW9ucyB3aWxsIGJlIHF1\nZXJpZWQgYXQgdGhlIG9yZ2FuaXNhdGlvbiBsZXZlbC4gKHN0cmluZywgb3B0\naW9uYWwpCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0\ndXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFy\naykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2xvZ28tZ2lzdC1kYXJr\nLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBs\naWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2xvZ28tZ2lzdC1s\naWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvbG9nby1n\naXN0LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9Imxv\nZ28tZ2lzdCI+PC9waWN0dXJlPiBHaXN0czwvc3VtbWFyeT4KCi0gKipjcmVh\ndGVfZ2lzdCoqIC0gQ3JlYXRlIEdpc3QKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGBnaXN0YAogIC0gYGNvbnRlbnRgOiBDb250ZW50IGZvciBz\naW1wbGUgc2luZ2xlLWZpbGUgZ2lzdCBjcmVhdGlvbiAoc3RyaW5nLCByZXF1\naXJlZCkKICAtIGBkZXNjcmlwdGlvbmA6IERlc2NyaXB0aW9uIG9mIHRoZSBn\naXN0IChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGZpbGVuYW1lYDogRmlsZW5h\nbWUgZm9yIHNpbXBsZSBzaW5nbGUtZmlsZSBnaXN0IGNyZWF0aW9uIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHB1YmxpY2A6IFdoZXRoZXIgdGhlIGdpc3Qg\naXMgcHVibGljIChib29sZWFuLCBvcHRpb25hbCkKCi0gKipnZXRfZ2lzdCoq\nIC0gR2V0IEdpc3QgQ29udGVudAogIC0gYGdpc3RfaWRgOiBUaGUgSUQgb2Yg\ndGhlIGdpc3QgKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9naXN0cyoq\nIC0gTGlzdCBHaXN0cwogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFn\naW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBh\nZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwg\nbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgc2luY2VgOiBPbmx5\nIGdpc3RzIHVwZGF0ZWQgYWZ0ZXIgdGhpcyB0aW1lIChJU08gODYwMSB0aW1l\nc3RhbXApIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHVzZXJuYW1lYDogR2l0\nSHViIHVzZXJuYW1lIChvbWl0IGZvciBhdXRoZW50aWNhdGVkIHVzZXIncyBn\naXN0cykgKHN0cmluZywgb3B0aW9uYWwpCgotICoqdXBkYXRlX2dpc3QqKiAt\nIFVwZGF0ZSBHaXN0CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBg\nZ2lzdGAKICAtIGBjb250ZW50YDogQ29udGVudCBmb3IgdGhlIGZpbGUgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgZGVzY3JpcHRpb25gOiBVcGRhdGVkIGRl\nc2NyaXB0aW9uIG9mIHRoZSBnaXN0IChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYGZpbGVuYW1lYDogRmlsZW5hbWUgdG8gdXBkYXRlIG9yIGNyZWF0ZSAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBnaXN0X2lkYDogSUQgb2YgdGhlIGdpc3Qg\ndG8gdXBkYXRlIChzdHJpbmcsIHJlcXVpcmVkKQoKPC9kZXRhaWxzPgoKPGRl\ndGFpbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJl\nZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29u\ncy9pY29ucy9naXQtYnJhbmNoLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIo\ncHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0\naWNvbnMvaWNvbnMvZ2l0LWJyYW5jaC1saWdodC5wbmciPjxpbWcgc3JjPSJw\na2cvb2N0aWNvbnMvaWNvbnMvZ2l0LWJyYW5jaC1saWdodC5wbmciIHdpZHRo\nPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJnaXQtYnJhbmNoIj48L3BpY3R1cmU+\nIEdpdDwvc3VtbWFyeT4KCi0gKipnZXRfcmVwb3NpdG9yeV90cmVlKiogLSBH\nZXQgcmVwb3NpdG9yeSB0cmVlCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3Bl\ncyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHVz\nZXJuYW1lIG9yIG9yZ2FuaXphdGlvbikgKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgcGF0aF9maWx0ZXJgOiBPcHRpb25hbCBwYXRoIHByZWZpeCB0byBmaWx0\nZXIgdGhlIHRyZWUgcmVzdWx0cyAoZS5nLiwgJ3NyYy8nIHRvIG9ubHkgc2hv\ndyBmaWxlcyBpbiB0aGUgc3JjIGRpcmVjdG9yeSkgKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgcmVjdXJzaXZlYDogU2V0dGluZyB0aGlzIHBhcmFtZXRlciB0\nbyB0cnVlIHJldHVybnMgdGhlIG9iamVjdHMgb3Igc3VidHJlZXMgcmVmZXJl\nbmNlZCBieSB0aGUgdHJlZS4gRGVmYXVsdCBpcyBmYWxzZSAoYm9vbGVhbiwg\nb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGB0cmVlX3NoYWA6IFRoZSBTSEExIHZhbHVlIG9y\nIHJlZiAoYnJhbmNoIG9yIHRhZykgbmFtZSBvZiB0aGUgdHJlZS4gRGVmYXVs\ndHMgdG8gdGhlIHJlcG9zaXRvcnkncyBkZWZhdWx0IGJyYW5jaCAoc3RyaW5n\nLCBvcHRpb25hbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+\nPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvaXNzdWUtb3Bl\nbmVkLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1z\nY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvaXNz\ndWUtb3BlbmVkLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9p\nY29ucy9pc3N1ZS1vcGVuZWQtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdo\ndD0iMjAiIGFsdD0iaXNzdWUtb3BlbmVkIj48L3BpY3R1cmU+IElzc3Vlczwv\nc3VtbWFyeT4KCi0gKiphZGRfaXNzdWVfY29tbWVudCoqIC0gQWRkIGNvbW1l\nbnQgdG8gaXNzdWUgb3IgcHVsbCByZXF1ZXN0CiAgLSAqKlJlcXVpcmVkIE9B\ndXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBib2R5YDogQ29tbWVudCBjb250\nZW50IChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYGlzc3VlX251bWJlcmA6IElz\nc3VlIG51bWJlciB0byBjb21tZW50IG9uIChudW1iZXIsIHJlcXVpcmVkKQog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVp\ncmVkKQoKLSAqKmdldF9sYWJlbCoqIC0gR2V0IGEgc3BlY2lmaWMgbGFiZWwg\nZnJvbSBhIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVz\nKio6IGByZXBvYAogIC0gYG5hbWVgOiBMYWJlbCBuYW1lLiAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHVzZXJu\nYW1lIG9yIG9yZ2FuaXphdGlvbiBuYW1lKSAoc3RyaW5nLCByZXF1aXJlZCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVk\nKQoKLSAqKmlzc3VlX3JlYWQqKiAtIEdldCBpc3N1ZSBkZXRhaWxzCiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBpc3N1ZV9u\ndW1iZXJgOiBUaGUgbnVtYmVyIG9mIHRoZSBpc3N1ZSAobnVtYmVyLCByZXF1\naXJlZCkKICAtIGBtZXRob2RgOiBUaGUgcmVhZCBvcGVyYXRpb24gdG8gcGVy\nZm9ybSBvbiBhIHNpbmdsZSBpc3N1ZS4KICAgIE9wdGlvbnMgYXJlOgogICAg\nMS4gZ2V0IC0gR2V0IGRldGFpbHMgb2YgYSBzcGVjaWZpYyBpc3N1ZS4KICAg\nIDIuIGdldF9jb21tZW50cyAtIEdldCBpc3N1ZSBjb21tZW50cy4KICAgIDMu\nIGdldF9zdWJfaXNzdWVzIC0gR2V0IHN1Yi1pc3N1ZXMgb2YgdGhlIGlzc3Vl\nLgogICAgNC4gZ2V0X2xhYmVscyAtIEdldCBsYWJlbHMgYXNzaWduZWQgdG8g\ndGhlIGlzc3VlLgogICAgIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG93bmVy\nYDogVGhlIG93bmVyIG9mIHRoZSByZXBvc2l0b3J5IChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlvbiAo\nbWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1\nbHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkg\nKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRo\nZSByZXBvc2l0b3J5IChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmlzc3VlX3dy\naXRlKiogLSBDcmVhdGUgb3IgdXBkYXRlIGlzc3VlL3B1bGwgcmVxdWVzdAog\nIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYXNz\naWduZWVzYDogVXNlcm5hbWVzIHRvIGFzc2lnbiB0byB0aGlzIGlzc3VlIChz\ndHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBgYm9keWA6IElzc3VlIGJvZHkgY29u\ndGVudCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBkdXBsaWNhdGVfb2ZgOiBJ\nc3N1ZSBudW1iZXIgdGhhdCB0aGlzIGlzc3VlIGlzIGEgZHVwbGljYXRlIG9m\nLiBPbmx5IHVzZWQgd2hlbiBzdGF0ZV9yZWFzb24gaXMgJ2R1cGxpY2F0ZScu\nIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYGlzc3VlX251bWJlcmA6IElzc3Vl\nIG51bWJlciB0byB1cGRhdGUgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgbGFi\nZWxzYDogTGFiZWxzIHRvIGFwcGx5IHRvIHRoaXMgaXNzdWUgKHN0cmluZ1td\nLCBvcHRpb25hbCkKICAtIGBtZXRob2RgOiBXcml0ZSBvcGVyYXRpb24gdG8g\ncGVyZm9ybSBvbiBhIHNpbmdsZSBpc3N1ZS4KICAgIE9wdGlvbnMgYXJlOgog\nICAgLSAnY3JlYXRlJyAtIGNyZWF0ZXMgYSBuZXcgaXNzdWUuCiAgICAtICd1\ncGRhdGUnIC0gdXBkYXRlcyBhbiBleGlzdGluZyBpc3N1ZS4KICAgICAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBtaWxlc3RvbmVgOiBNaWxlc3RvbmUgbnVt\nYmVyIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogUmVwb3NpdG9y\neSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3Np\ndG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHN0YXRlYDogTmV3\nIHN0YXRlIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHN0YXRlX3JlYXNvbmA6\nIFJlYXNvbiBmb3IgdGhlIHN0YXRlIGNoYW5nZS4gSWdub3JlZCB1bmxlc3Mg\nc3RhdGUgaXMgY2hhbmdlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdGl0\nbGVgOiBJc3N1ZSB0aXRsZSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB0eXBl\nYDogVHlwZSBvZiB0aGlzIGlzc3VlLiBPbmx5IHVzZSBpZiB0aGUgcmVwb3Np\ndG9yeSBoYXMgaXNzdWUgdHlwZXMgY29uZmlndXJlZC4gVXNlIGxpc3RfaXNz\ndWVfdHlwZXMgdG9vbCB0byBnZXQgdmFsaWQgdHlwZSB2YWx1ZXMgZm9yIHRo\nZSBvcmdhbml6YXRpb24uIElmIHRoZSByZXBvc2l0b3J5IGRvZXNuJ3Qgc3Vw\ncG9ydCBpc3N1ZSB0eXBlcywgb21pdCB0aGlzIHBhcmFtZXRlci4gKHN0cmlu\nZywgb3B0aW9uYWwpCgotICoqbGlzdF9pc3N1ZV90eXBlcyoqIC0gTGlzdCBh\ndmFpbGFibGUgaXNzdWUgdHlwZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2Nv\ncGVzKio6IGByZWFkOm9yZ2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVz\nKio6IGBhZG1pbjpvcmdgLCBgcmVhZDpvcmdgLCBgd3JpdGU6b3JnYAogIC0g\nYG93bmVyYDogVGhlIG9yZ2FuaXphdGlvbiBvd25lciBvZiB0aGUgcmVwb3Np\ndG9yeSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2lzc3VlcyoqIC0g\nTGlzdCBpc3N1ZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYGFmdGVyYDogQ3Vyc29yIGZvciBwYWdpbmF0aW9uLiBVc2Ug\ndGhlIGN1cnNvciBmcm9tIHRoZSBwcmV2aW91cyByZXNwb25zZS4gKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgZGlyZWN0aW9uYDogT3JkZXIgZGlyZWN0aW9u\nLiBJZiBwcm92aWRlZCwgdGhlICdvcmRlckJ5JyBhbHNvIG5lZWRzIHRvIGJl\nIHByb3ZpZGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBsYWJlbHNgOiBG\naWx0ZXIgYnkgbGFiZWxzIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBgb3Jk\nZXJCeWA6IE9yZGVyIGlzc3VlcyBieSBmaWVsZC4gSWYgcHJvdmlkZWQsIHRo\nZSAnZGlyZWN0aW9uJyBhbHNvIG5lZWRzIHRvIGJlIHByb3ZpZGVkLiAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIg\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVy\nIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVy\nLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHNpbmNlYDogRmlsdGVyIGJ5IGRhdGUgKElT\nTyA4NjAxIHRpbWVzdGFtcCkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc3Rh\ndGVgOiBGaWx0ZXIgYnkgc3RhdGUsIGJ5IGRlZmF1bHQgYm90aCBvcGVuIGFu\nZCBjbG9zZWQgaXNzdWVzIGFyZSByZXR1cm5lZCB3aGVuIG5vdCBwcm92aWRl\nZCAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipzZWFyY2hfaXNzdWVzKiogLSBT\nZWFyY2ggaXNzdWVzCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBg\ncmVwb2AKICAtIGBvcmRlcmA6IFNvcnQgb3JkZXIgKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgb3duZXJgOiBPcHRpb25hbCByZXBvc2l0b3J5IG93bmVyLiBJ\nZiBwcm92aWRlZCB3aXRoIHJlcG8sIG9ubHkgaXNzdWVzIGZvciB0aGlzIHJl\ncG9zaXRvcnkgYXJlIGxpc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\ncGFnZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51\nbWJlciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBh\nZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBv\ncHRpb25hbCkKICAtIGBxdWVyeWA6IFNlYXJjaCBxdWVyeSB1c2luZyBHaXRI\ndWIgaXNzdWVzIHNlYXJjaCBzeW50YXggKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgcmVwb2A6IE9wdGlvbmFsIHJlcG9zaXRvcnkgbmFtZS4gSWYgcHJvdmlk\nZWQgd2l0aCBvd25lciwgb25seSBpc3N1ZXMgZm9yIHRoaXMgcmVwb3NpdG9y\neSBhcmUgbGlzdGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzb3J0YDog\nU29ydCBmaWVsZCBieSBudW1iZXIgb2YgbWF0Y2hlcyBvZiBjYXRlZ29yaWVz\nLCBkZWZhdWx0cyB0byBiZXN0IG1hdGNoIChzdHJpbmcsIG9wdGlvbmFsKQoK\nLSAqKnN1Yl9pc3N1ZV93cml0ZSoqIC0gQ2hhbmdlIHN1Yi1pc3N1ZQogIC0g\nKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYWZ0ZXJf\naWRgOiBUaGUgSUQgb2YgdGhlIHN1Yi1pc3N1ZSB0byBiZSBwcmlvcml0aXpl\nZCBhZnRlciAoZWl0aGVyIGFmdGVyX2lkIE9SIGJlZm9yZV9pZCBzaG91bGQg\nYmUgc3BlY2lmaWVkKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBiZWZvcmVf\naWRgOiBUaGUgSUQgb2YgdGhlIHN1Yi1pc3N1ZSB0byBiZSBwcmlvcml0aXpl\nZCBiZWZvcmUgKGVpdGhlciBhZnRlcl9pZCBPUiBiZWZvcmVfaWQgc2hvdWxk\nIGJlIHNwZWNpZmllZCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgaXNzdWVf\nbnVtYmVyYDogVGhlIG51bWJlciBvZiB0aGUgcGFyZW50IGlzc3VlIChudW1i\nZXIsIHJlcXVpcmVkKQogIC0gYG1ldGhvZGA6IFRoZSBhY3Rpb24gdG8gcGVy\nZm9ybSBvbiBhIHNpbmdsZSBzdWItaXNzdWUKICAgIE9wdGlvbnMgYXJlOgog\nICAgLSAnYWRkJyAtIGFkZCBhIHN1Yi1pc3N1ZSB0byBhIHBhcmVudCBpc3N1\nZSBpbiBhIEdpdEh1YiByZXBvc2l0b3J5LgogICAgLSAncmVtb3ZlJyAtIHJl\nbW92ZSBhIHN1Yi1pc3N1ZSBmcm9tIGEgcGFyZW50IGlzc3VlIGluIGEgR2l0\nSHViIHJlcG9zaXRvcnkuCiAgICAtICdyZXByaW9yaXRpemUnIC0gY2hhbmdl\nIHRoZSBvcmRlciBvZiBzdWItaXNzdWVzIHdpdGhpbiBhIHBhcmVudCBpc3N1\nZSBpbiBhIEdpdEh1YiByZXBvc2l0b3J5LiBVc2UgZWl0aGVyICdhZnRlcl9p\nZCcgb3IgJ2JlZm9yZV9pZCcgdG8gc3BlY2lmeSB0aGUgbmV3IHBvc2l0aW9u\nLgogICAgCQkJCSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJl\ncG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwbGFj\nZV9wYXJlbnRgOiBXaGVuIHRydWUsIHJlcGxhY2VzIHRoZSBzdWItaXNzdWUn\ncyBjdXJyZW50IHBhcmVudCBpc3N1ZS4gVXNlIHdpdGggJ2FkZCcgbWV0aG9k\nIG9ubHkuIChib29sZWFuLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVwb3Np\ndG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHN1Yl9pc3N1ZV9p\nZGA6IFRoZSBJRCBvZiB0aGUgc3ViLWlzc3VlIHRvIGFkZC4gSUQgaXMgbm90\nIHRoZSBzYW1lIGFzIGlzc3VlIG51bWJlciAobnVtYmVyLCByZXF1aXJlZCkK\nCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNv\ndXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jj\nc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvdGFnLWRhcmsucG5nIj48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvdGFnLWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy90YWctbGlnaHQucG5nIiB3aWR0aD0iMjAi\nIGhlaWdodD0iMjAiIGFsdD0idGFnIj48L3BpY3R1cmU+IExhYmVsczwvc3Vt\nbWFyeT4KCi0gKipnZXRfbGFiZWwqKiAtIEdldCBhIHNwZWNpZmljIGxhYmVs\nIGZyb20gYSByZXBvc2l0b3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3Bl\ncyoqOiBgcmVwb2AKICAtIGBuYW1lYDogTGFiZWwgbmFtZS4gKHN0cmluZywg\ncmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyICh1c2Vy\nbmFtZSBvciBvcmdhbml6YXRpb24gbmFtZSkgKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJl\nZCkKCi0gKipsYWJlbF93cml0ZSoqIC0gV3JpdGUgb3BlcmF0aW9ucyBvbiBy\nZXBvc2l0b3J5IGxhYmVscwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gCiAgLSBgY29sb3JgOiBMYWJlbCBjb2xvciBhcyA2LWNoYXJh\nY3RlciBoZXggY29kZSB3aXRob3V0ICcjJyBwcmVmaXggKGUuZy4sICdmMjk1\nMTMnKS4gUmVxdWlyZWQgZm9yICdjcmVhdGUnLCBvcHRpb25hbCBmb3IgJ3Vw\nZGF0ZScuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGRlc2NyaXB0aW9uYDog\nTGFiZWwgZGVzY3JpcHRpb24gdGV4dC4gT3B0aW9uYWwgZm9yICdjcmVhdGUn\nIGFuZCAndXBkYXRlJy4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgbWV0aG9k\nYDogT3BlcmF0aW9uIHRvIHBlcmZvcm06ICdjcmVhdGUnLCAndXBkYXRlJywg\nb3IgJ2RlbGV0ZScgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgbmFtZWA6IExh\nYmVsIG5hbWUgLSByZXF1aXJlZCBmb3IgYWxsIG9wZXJhdGlvbnMgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgbmV3X25hbWVgOiBOZXcgbmFtZSBmb3IgdGhl\nIGxhYmVsICh1c2VkIG9ubHkgd2l0aCAndXBkYXRlJyBtZXRob2QgdG8gcmVu\nYW1lKSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRv\ncnkgb3duZXIgKHVzZXJuYW1lIG9yIG9yZ2FuaXphdGlvbiBuYW1lKSAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChz\ndHJpbmcsIHJlcXVpcmVkKQoKLSAqKmxpc3RfbGFiZWwqKiAtIExpc3QgbGFi\nZWxzIGZyb20gYSByZXBvc2l0b3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNj\nb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIg\nKHVzZXJuYW1lIG9yIG9yZ2FuaXphdGlvbiBuYW1lKSAtIHJlcXVpcmVkIGZv\nciBhbGwgb3BlcmF0aW9ucyAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBv\nYDogUmVwb3NpdG9yeSBuYW1lIC0gcmVxdWlyZWQgZm9yIGFsbCBvcGVyYXRp\nb25zIChzdHJpbmcsIHJlcXVpcmVkKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+\nCgo8c3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1j\nb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29u\ncy9iZWxsLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xv\nci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMv\nYmVsbC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMv\nYmVsbC1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJi\nZWxsIj48L3BpY3R1cmU+IE5vdGlmaWNhdGlvbnM8L3N1bW1hcnk+CgotICoq\nZGlzbWlzc19ub3RpZmljYXRpb24qKiAtIERpc21pc3Mgbm90aWZpY2F0aW9u\nCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgbm90aWZpY2F0aW9u\nc2AKICAtIGBzdGF0ZWA6IFRoZSBuZXcgc3RhdGUgb2YgdGhlIG5vdGlmaWNh\ndGlvbiAocmVhZC9kb25lKSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGB0aHJl\nYWRJRGA6IFRoZSBJRCBvZiB0aGUgbm90aWZpY2F0aW9uIHRocmVhZCAoc3Ry\naW5nLCByZXF1aXJlZCkKCi0gKipnZXRfbm90aWZpY2F0aW9uX2RldGFpbHMq\nKiAtIEdldCBub3RpZmljYXRpb24gZGV0YWlscwogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYG5vdGlmaWNhdGlvbnNgCiAgLSBgbm90aWZpY2F0\naW9uSURgOiBUaGUgSUQgb2YgdGhlIG5vdGlmaWNhdGlvbiAoc3RyaW5nLCBy\nZXF1aXJlZCkKCi0gKipsaXN0X25vdGlmaWNhdGlvbnMqKiAtIExpc3Qgbm90\naWZpY2F0aW9ucwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYG5v\ndGlmaWNhdGlvbnNgCiAgLSBgYmVmb3JlYDogT25seSBzaG93IG5vdGlmaWNh\ndGlvbnMgdXBkYXRlZCBiZWZvcmUgdGhlIGdpdmVuIHRpbWUgKElTTyA4NjAx\nIGZvcm1hdCkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZmlsdGVyYDogRmls\ndGVyIG5vdGlmaWNhdGlvbnMgdG8sIHVzZSBkZWZhdWx0IHVubGVzcyBzcGVj\naWZpZWQuIFJlYWQgbm90aWZpY2F0aW9ucyBhcmUgb25lcyB0aGF0IGhhdmUg\nYWxyZWFkeSBiZWVuIGFja25vd2xlZGdlZCBieSB0aGUgdXNlci4gUGFydGlj\naXBhdGluZyBub3RpZmljYXRpb25zIGFyZSB0aG9zZSB0aGF0IHRoZSB1c2Vy\nIGlzIGRpcmVjdGx5IGludm9sdmVkIGluLCBzdWNoIGFzIGlzc3VlcyBvciBw\ndWxsIHJlcXVlc3RzIHRoZXkgaGF2ZSBjb21tZW50ZWQgb24gb3IgY3JlYXRl\nZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBPcHRpb25hbCBy\nZXBvc2l0b3J5IG93bmVyLiBJZiBwcm92aWRlZCB3aXRoIHJlcG8sIG9ubHkg\nbm90aWZpY2F0aW9ucyBmb3IgdGhpcyByZXBvc2l0b3J5IGFyZSBsaXN0ZWQu\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBm\nb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0g\nYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uICht\naW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6\nIE9wdGlvbmFsIHJlcG9zaXRvcnkgbmFtZS4gSWYgcHJvdmlkZWQgd2l0aCBv\nd25lciwgb25seSBub3RpZmljYXRpb25zIGZvciB0aGlzIHJlcG9zaXRvcnkg\nYXJlIGxpc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc2luY2VgOiBP\nbmx5IHNob3cgbm90aWZpY2F0aW9ucyB1cGRhdGVkIGFmdGVyIHRoZSBnaXZl\nbiB0aW1lIChJU08gODYwMSBmb3JtYXQpIChzdHJpbmcsIG9wdGlvbmFsKQoK\nLSAqKm1hbmFnZV9ub3RpZmljYXRpb25fc3Vic2NyaXB0aW9uKiogLSBNYW5h\nZ2Ugbm90aWZpY2F0aW9uIHN1YnNjcmlwdGlvbgogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYG5vdGlmaWNhdGlvbnNgCiAgLSBgYWN0aW9uYDog\nQWN0aW9uIHRvIHBlcmZvcm06IGlnbm9yZSwgd2F0Y2gsIG9yIGRlbGV0ZSB0\naGUgbm90aWZpY2F0aW9uIHN1YnNjcmlwdGlvbi4gKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgbm90aWZpY2F0aW9uSURgOiBUaGUgSUQgb2YgdGhlIG5vdGlm\naWNhdGlvbiB0aHJlYWQuIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKm1hbmFn\nZV9yZXBvc2l0b3J5X25vdGlmaWNhdGlvbl9zdWJzY3JpcHRpb24qKiAtIE1h\nbmFnZSByZXBvc2l0b3J5IG5vdGlmaWNhdGlvbiBzdWJzY3JpcHRpb24KICAt\nICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBub3RpZmljYXRpb25zYAog\nIC0gYGFjdGlvbmA6IEFjdGlvbiB0byBwZXJmb3JtOiBpZ25vcmUsIHdhdGNo\nLCBvciBkZWxldGUgdGhlIHJlcG9zaXRvcnkgbm90aWZpY2F0aW9uIHN1YnNj\ncmlwdGlvbi4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBUaGUg\nYWNjb3VudCBvd25lciBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5\nLiAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKiptYXJrX2FsbF9ub3RpZmljYXRp\nb25zX3JlYWQqKiAtIE1hcmsgYWxsIG5vdGlmaWNhdGlvbnMgYXMgcmVhZAog\nIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYG5vdGlmaWNhdGlvbnNg\nCiAgLSBgbGFzdFJlYWRBdGA6IERlc2NyaWJlcyB0aGUgbGFzdCBwb2ludCB0\naGF0IG5vdGlmaWNhdGlvbnMgd2VyZSBjaGVja2VkIChvcHRpb25hbCkuIERl\nZmF1bHQ6IE5vdyAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IE9w\ndGlvbmFsIHJlcG9zaXRvcnkgb3duZXIuIElmIHByb3ZpZGVkIHdpdGggcmVw\nbywgb25seSBub3RpZmljYXRpb25zIGZvciB0aGlzIHJlcG9zaXRvcnkgYXJl\nIG1hcmtlZCBhcyByZWFkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGByZXBv\nYDogT3B0aW9uYWwgcmVwb3NpdG9yeSBuYW1lLiBJZiBwcm92aWRlZCB3aXRo\nIG93bmVyLCBvbmx5IG5vdGlmaWNhdGlvbnMgZm9yIHRoaXMgcmVwb3NpdG9y\neSBhcmUgbWFya2VkIGFzIHJlYWQuIChzdHJpbmcsIG9wdGlvbmFsKQoKPC9k\nZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9\nInBrZy9vY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24tZGFyay5wbmciPjxz\nb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBz\ncmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24tbGlnaHQu\ncG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL29yZ2FuaXphdGlv\nbi1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJvcmdh\nbml6YXRpb24iPjwvcGljdHVyZT4gT3JnYW5pemF0aW9uczwvc3VtbWFyeT4K\nCi0gKipzZWFyY2hfb3JncyoqIC0gU2VhcmNoIG9yZ2FuaXphdGlvbnMKICAt\nICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZWFkOm9yZ2AKICAtICoq\nQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGBhZG1pbjpvcmdgLCBgcmVhZDpv\ncmdgLCBgd3JpdGU6b3JnYAogIC0gYG9yZGVyYDogU29ydCBvcmRlciAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQ\nYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEs\nIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5YDogT3Jn\nYW5pemF0aW9uIHNlYXJjaCBxdWVyeS4gRXhhbXBsZXM6ICdtaWNyb3NvZnQn\nLCAnbG9jYXRpb246Y2FsaWZvcm5pYScsICdjcmVhdGVkOj49MjAyNS0wMS0w\nMScuIFNlYXJjaCBpcyBhdXRvbWF0aWNhbGx5IHNjb3BlZCB0byB0eXBlOm9y\nZy4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc29ydGA6IFNvcnQgZmllbGQg\nYnkgY2F0ZWdvcnkgKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFpbHM+Cgo8\nZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL3Byb2plY3QtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3Rp\nY29ucy9pY29ucy9wcm9qZWN0LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9v\nY3RpY29ucy9pY29ucy9wcm9qZWN0LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBo\nZWlnaHQ9IjIwIiBhbHQ9InByb2plY3QiPjwvcGljdHVyZT4gUHJvamVjdHM8\nL3N1bW1hcnk+CgotICoqcHJvamVjdHNfZ2V0KiogLSBHZXQgZGV0YWlscyBv\nZiBHaXRIdWIgUHJvamVjdHMgcmVzb3VyY2VzCiAgLSAqKlJlcXVpcmVkIE9B\ndXRoIFNjb3BlcyoqOiBgcmVhZDpwcm9qZWN0YAogIC0gKipBY2NlcHRlZCBP\nQXV0aCBTY29wZXMqKjogYHByb2plY3RgLCBgcmVhZDpwcm9qZWN0YAogIC0g\nYGZpZWxkX2lkYDogVGhlIGZpZWxkJ3MgSUQuIFJlcXVpcmVkIGZvciAnZ2V0\nX3Byb2plY3RfZmllbGQnIG1ldGhvZC4gKG51bWJlciwgb3B0aW9uYWwpCiAg\nLSBgZmllbGRzYDogU3BlY2lmaWMgbGlzdCBvZiBmaWVsZCBJRHMgdG8gaW5j\nbHVkZSBpbiB0aGUgcmVzcG9uc2Ugd2hlbiBnZXR0aW5nIGEgcHJvamVjdCBp\ndGVtIChlLmcuIFsiMTAyNTg5IiwgIjk4NTIwMSIsICIxNjk4NzUiXSkuIElm\nIG5vdCBwcm92aWRlZCwgb25seSB0aGUgdGl0bGUgZmllbGQgaXMgaW5jbHVk\nZWQuIE9ubHkgdXNlZCBmb3IgJ2dldF9wcm9qZWN0X2l0ZW0nIG1ldGhvZC4g\nKHN0cmluZ1tdLCBvcHRpb25hbCkKICAtIGBpdGVtX2lkYDogVGhlIGl0ZW0n\ncyBJRC4gUmVxdWlyZWQgZm9yICdnZXRfcHJvamVjdF9pdGVtJyBtZXRob2Qu\nIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYG1ldGhvZGA6IFRoZSBtZXRob2Qg\ndG8gZXhlY3V0ZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFRo\nZSBvd25lciAodXNlciBvciBvcmdhbml6YXRpb24gbG9naW4pLiBUaGUgbmFt\nZSBpcyBub3QgY2FzZSBzZW5zaXRpdmUuIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYG93bmVyX3R5cGVgOiBPd25lciB0eXBlICh1c2VyIG9yIG9yZykuIElm\nIG5vdCBwcm92aWRlZCwgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGRldGVjdGVk\nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwcm9qZWN0X251bWJlcmA6IFRo\nZSBwcm9qZWN0J3MgbnVtYmVyLiAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBz\ndGF0dXNfdXBkYXRlX2lkYDogVGhlIG5vZGUgSUQgb2YgdGhlIHByb2plY3Qg\nc3RhdHVzIHVwZGF0ZS4gUmVxdWlyZWQgZm9yICdnZXRfcHJvamVjdF9zdGF0\ndXNfdXBkYXRlJyBtZXRob2QuIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKnBy\nb2plY3RzX2xpc3QqKiAtIExpc3QgR2l0SHViIFByb2plY3RzIHJlc291cmNl\ncwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlYWQ6cHJvamVj\ndGAKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGBwcm9qZWN0YCwg\nYHJlYWQ6cHJvamVjdGAKICAtIGBhZnRlcmA6IEZvcndhcmQgcGFnaW5hdGlv\nbiBjdXJzb3IgZnJvbSBwcmV2aW91cyBwYWdlSW5mby5uZXh0Q3Vyc29yLiAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGBiZWZvcmVgOiBCYWNrd2FyZCBwYWdp\nbmF0aW9uIGN1cnNvciBmcm9tIHByZXZpb3VzIHBhZ2VJbmZvLnByZXZDdXJz\nb3IgKHJhcmUpLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBmaWVsZHNgOiBG\naWVsZCBJRHMgdG8gaW5jbHVkZSB3aGVuIGxpc3RpbmcgcHJvamVjdCBpdGVt\ncyAoZS5nLiBbIjEwMjU4OSIsICI5ODUyMDEiXSkuIENSSVRJQ0FMOiBBbHdh\neXMgcHJvdmlkZSB0byBnZXQgZmllbGQgdmFsdWVzLiBXaXRob3V0IHRoaXMs\nIG9ubHkgdGl0bGVzIHJldHVybmVkLiBPbmx5IHVzZWQgZm9yICdsaXN0X3By\nb2plY3RfaXRlbXMnIG1ldGhvZC4gKHN0cmluZ1tdLCBvcHRpb25hbCkKICAt\nIGBtZXRob2RgOiBUaGUgYWN0aW9uIHRvIHBlcmZvcm0gKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgb3duZXJgOiBUaGUgb3duZXIgKHVzZXIgb3Igb3JnYW5p\nemF0aW9uIGxvZ2luKS4gVGhlIG5hbWUgaXMgbm90IGNhc2Ugc2Vuc2l0aXZl\nLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcl90eXBlYDogT3duZXIg\ndHlwZSAodXNlciBvciBvcmcpLiBJZiBub3QgcHJvdmlkZWQsIHdpbGwgYXV0\nb21hdGljYWxseSB0cnkgYm90aC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\ncGVyX3BhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIChtYXggNTApIChudW1iZXIs\nIG9wdGlvbmFsKQogIC0gYHByb2plY3RfbnVtYmVyYDogVGhlIHByb2plY3Qn\ncyBudW1iZXIuIFJlcXVpcmVkIGZvciAnbGlzdF9wcm9qZWN0X2ZpZWxkcycs\nICdsaXN0X3Byb2plY3RfaXRlbXMnLCBhbmQgJ2xpc3RfcHJvamVjdF9zdGF0\ndXNfdXBkYXRlcycgbWV0aG9kcy4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\ncXVlcnlgOiBGaWx0ZXIvcXVlcnkgc3RyaW5nLiBGb3IgbGlzdF9wcm9qZWN0\nczogZmlsdGVyIGJ5IHRpdGxlIHRleHQgYW5kIHN0YXRlIChlLmcuICJyb2Fk\nbWFwIGlzOm9wZW4iKS4gRm9yIGxpc3RfcHJvamVjdF9pdGVtczogYWR2YW5j\nZWQgZmlsdGVyaW5nIHVzaW5nIEdpdEh1YidzIHByb2plY3QgZmlsdGVyaW5n\nIHN5bnRheC4gKHN0cmluZywgb3B0aW9uYWwpCgotICoqcHJvamVjdHNfd3Jp\ndGUqKiAtIE1hbmFnZSBHaXRIdWIgUHJvamVjdHMKICAtICoqUmVxdWlyZWQg\nT0F1dGggU2NvcGVzKio6IGBwcm9qZWN0YAogIC0gYGJvZHlgOiBUaGUgYm9k\neSBvZiB0aGUgc3RhdHVzIHVwZGF0ZSAobWFya2Rvd24pLiBVc2VkIGZvciAn\nY3JlYXRlX3Byb2plY3Rfc3RhdHVzX3VwZGF0ZScgbWV0aG9kLiAoc3RyaW5n\nLCBvcHRpb25hbCkKICAtIGBmaWVsZF9uYW1lYDogVGhlIG5hbWUgb2YgdGhl\nIGl0ZXJhdGlvbiBmaWVsZCAoZS5nLiAnU3ByaW50JykuIFJlcXVpcmVkIGZv\nciAnY3JlYXRlX2l0ZXJhdGlvbl9maWVsZCcgbWV0aG9kLiAoc3RyaW5nLCBv\ncHRpb25hbCkKICAtIGBpc3N1ZV9udW1iZXJgOiBUaGUgaXNzdWUgbnVtYmVy\nICh1c2Ugd2hlbiBpdGVtX3R5cGUgaXMgJ2lzc3VlJyBmb3IgJ2FkZF9wcm9q\nZWN0X2l0ZW0nIG1ldGhvZCkuIFByb3ZpZGUgZWl0aGVyIGlzc3VlX251bWJl\nciBvciBwdWxsX3JlcXVlc3RfbnVtYmVyLiAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGBpdGVtX2lkYDogVGhlIHByb2plY3QgaXRlbSBJRC4gUmVxdWlyZWQg\nZm9yICd1cGRhdGVfcHJvamVjdF9pdGVtJyBhbmQgJ2RlbGV0ZV9wcm9qZWN0\nX2l0ZW0nIG1ldGhvZHMuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYGl0ZW1f\nb3duZXJgOiBUaGUgb3duZXIgKHVzZXIgb3Igb3JnYW5pemF0aW9uKSBvZiB0\naGUgcmVwb3NpdG9yeSBjb250YWluaW5nIHRoZSBpc3N1ZSBvciBwdWxsIHJl\ncXVlc3QuIFJlcXVpcmVkIGZvciAnYWRkX3Byb2plY3RfaXRlbScgbWV0aG9k\nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBpdGVtX3JlcG9gOiBUaGUgbmFt\nZSBvZiB0aGUgcmVwb3NpdG9yeSBjb250YWluaW5nIHRoZSBpc3N1ZSBvciBw\ndWxsIHJlcXVlc3QuIFJlcXVpcmVkIGZvciAnYWRkX3Byb2plY3RfaXRlbScg\nbWV0aG9kLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBpdGVtX3R5cGVgOiBU\naGUgaXRlbSdzIHR5cGUsIGVpdGhlciBpc3N1ZSBvciBwdWxsX3JlcXVlc3Qu\nIFJlcXVpcmVkIGZvciAnYWRkX3Byb2plY3RfaXRlbScgbWV0aG9kLiAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBpdGVyYXRpb25fZHVyYXRpb25gOiBEdXJh\ndGlvbiBpbiBkYXlzIGZvciBpdGVyYXRpb25zIG9mIHRoZSBmaWVsZCAoZS5n\nLiA3IGZvciB3ZWVrbHksIDE0IGZvciBiaS13ZWVrbHkpLiBSZXF1aXJlZCBm\nb3IgJ2NyZWF0ZV9pdGVyYXRpb25fZmllbGQnIG1ldGhvZC4gKG51bWJlciwg\nb3B0aW9uYWwpCiAgLSBgaXRlcmF0aW9uc2A6IEN1c3RvbSBpdGVyYXRpb25z\nIGZvciAnY3JlYXRlX2l0ZXJhdGlvbl9maWVsZCcgbWV0aG9kLiBPbmx5IHNl\ndCB0aGlzIHdoZW4geW91IG5lZWQgaXRlcmF0aW9ucyB3aXRoIHZhcnlpbmcg\nZHVyYXRpb25zLCBicmVha3MgYmV0d2VlbiB0aGVtLCBvciBzcGVjaWZpYyB0\naXRsZXMuIE90aGVyd2lzZSBvbWl0IGl0OiBHaXRIdWIgYXV0by1jcmVhdGVz\nIHRocmVlIGl0ZXJhdGlvbnMgb2YgJ2l0ZXJhdGlvbl9kdXJhdGlvbicgZGF5\ncyBzdGFydGluZyBvbiAnc3RhcnRfZGF0ZScsIHdoaWNoIGlzIHRoZSByaWdo\ndCBjaG9pY2UgZm9yIG1vc3QgY2FzZXMuIChvYmplY3RbXSwgb3B0aW9uYWwp\nCiAgLSBgbWV0aG9kYDogVGhlIG1ldGhvZCB0byBleGVjdXRlIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYG93bmVyYDogVGhlIHByb2plY3Qgb3duZXIgKHVz\nZXIgb3Igb3JnYW5pemF0aW9uIGxvZ2luKS4gVGhlIG5hbWUgaXMgbm90IGNh\nc2Ugc2Vuc2l0aXZlLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcl90\neXBlYDogT3duZXIgdHlwZSAodXNlciBvciBvcmcpLiBSZXF1aXJlZCBmb3Ig\nJ2NyZWF0ZV9wcm9qZWN0JyBtZXRob2QuIElmIG5vdCBwcm92aWRlZCBmb3Ig\nb3RoZXIgbWV0aG9kcywgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGRldGVjdGVk\nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwcm9qZWN0X251bWJlcmA6IFRo\nZSBwcm9qZWN0J3MgbnVtYmVyLiBSZXF1aXJlZCBmb3IgYWxsIG1ldGhvZHMg\nZXhjZXB0ICdjcmVhdGVfcHJvamVjdCcuIChudW1iZXIsIG9wdGlvbmFsKQog\nIC0gYHB1bGxfcmVxdWVzdF9udW1iZXJgOiBUaGUgcHVsbCByZXF1ZXN0IG51\nbWJlciAodXNlIHdoZW4gaXRlbV90eXBlIGlzICdwdWxsX3JlcXVlc3QnIGZv\nciAnYWRkX3Byb2plY3RfaXRlbScgbWV0aG9kKS4gUHJvdmlkZSBlaXRoZXIg\naXNzdWVfbnVtYmVyIG9yIHB1bGxfcmVxdWVzdF9udW1iZXIuIChudW1iZXIs\nIG9wdGlvbmFsKQogIC0gYHN0YXJ0X2RhdGVgOiBTdGFydCBkYXRlIGluIFlZ\nWVktTU0tREQgZm9ybWF0LiBVc2VkIGZvciAnY3JlYXRlX3Byb2plY3Rfc3Rh\ndHVzX3VwZGF0ZScgYW5kICdjcmVhdGVfaXRlcmF0aW9uX2ZpZWxkJyBtZXRo\nb2RzLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0dXNgOiBUaGUgc3Rh\ndHVzIG9mIHRoZSBwcm9qZWN0LiBVc2VkIGZvciAnY3JlYXRlX3Byb2plY3Rf\nc3RhdHVzX3VwZGF0ZScgbWV0aG9kLiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGB0YXJnZXRfZGF0ZWA6IFRoZSB0YXJnZXQgZGF0ZSBvZiB0aGUgc3RhdHVz\nIHVwZGF0ZSBpbiBZWVlZLU1NLUREIGZvcm1hdC4gVXNlZCBmb3IgJ2NyZWF0\nZV9wcm9qZWN0X3N0YXR1c191cGRhdGUnIG1ldGhvZC4gKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgdGl0bGVgOiBUaGUgcHJvamVjdCB0aXRsZS4gUmVxdWly\nZWQgZm9yICdjcmVhdGVfcHJvamVjdCcgbWV0aG9kLiAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGB1cGRhdGVkX2ZpZWxkYDogT2JqZWN0IGNvbnNpc3Rpbmcg\nb2YgdGhlIElEIG9mIHRoZSBwcm9qZWN0IGZpZWxkIHRvIHVwZGF0ZSBhbmQg\ndGhlIG5ldyB2YWx1ZSBmb3IgdGhlIGZpZWxkLiBUbyBjbGVhciB0aGUgZmll\nbGQsIHNldCB2YWx1ZSB0byBudWxsLiBFeGFtcGxlOiB7ImlkIjogMTIzNDU2\nLCAidmFsdWUiOiAiTmV3IFZhbHVlIn0uIFJlcXVpcmVkIGZvciAndXBkYXRl\nX3Byb2plY3RfaXRlbScgbWV0aG9kLiAob2JqZWN0LCBvcHRpb25hbCkKCjwv\nZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvZ2l0LXB1bGwtcmVxdWVzdC1kYXJrLnBu\nZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdo\ndCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2dpdC1wdWxsLXJlcXVl\nc3QtbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2dp\ndC1wdWxsLXJlcXVlc3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0i\nMjAiIGFsdD0iZ2l0LXB1bGwtcmVxdWVzdCI+PC9waWN0dXJlPiBQdWxsIFJl\ncXVlc3RzPC9zdW1tYXJ5PgoKLSAqKmFkZF9jb21tZW50X3RvX3BlbmRpbmdf\ncmV2aWV3KiogLSBBZGQgcmV2aWV3IGNvbW1lbnQgdG8gdGhlIHJlcXVlc3Rl\ncidzIGxhdGVzdCBwZW5kaW5nIHB1bGwgcmVxdWVzdCByZXZpZXcKICAtICoq\nUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJvZHlgOiBU\naGUgdGV4dCBvZiB0aGUgcmV2aWV3IGNvbW1lbnQgKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgbGluZWA6IFRoZSBsaW5lIG9mIHRoZSBibG9iIGluIHRoZSBw\ndWxsIHJlcXVlc3QgZGlmZiB0aGF0IHRoZSBjb21tZW50IGFwcGxpZXMgdG8u\nIEZvciBtdWx0aS1saW5lIGNvbW1lbnRzLCB0aGUgbGFzdCBsaW5lIG9mIHRo\nZSByYW5nZSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9z\naXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGF0aGA6IFRo\nZSByZWxhdGl2ZSBwYXRoIHRvIHRoZSBmaWxlIHRoYXQgbmVjZXNzaXRhdGVz\nIGEgY29tbWVudCAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwdWxsTnVtYmVy\nYDogUHVsbCByZXF1ZXN0IG51bWJlciAobnVtYmVyLCByZXF1aXJlZCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYHNpZGVgOiBUaGUgc2lkZSBvZiB0aGUgZGlmZiB0byBjb21tZW50IG9u\nLiBMRUZUIGluZGljYXRlcyB0aGUgcHJldmlvdXMgc3RhdGUsIFJJR0hUIGlu\nZGljYXRlcyB0aGUgbmV3IHN0YXRlIChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYHN0YXJ0TGluZWA6IEZvciBtdWx0aS1saW5lIGNvbW1lbnRzLCB0aGUgZmly\nc3QgbGluZSBvZiB0aGUgcmFuZ2UgdGhhdCB0aGUgY29tbWVudCBhcHBsaWVz\nIHRvIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHN0YXJ0U2lkZWA6IEZvciBt\ndWx0aS1saW5lIGNvbW1lbnRzLCB0aGUgc3RhcnRpbmcgc2lkZSBvZiB0aGUg\nZGlmZiB0aGF0IHRoZSBjb21tZW50IGFwcGxpZXMgdG8uIExFRlQgaW5kaWNh\ndGVzIHRoZSBwcmV2aW91cyBzdGF0ZSwgUklHSFQgaW5kaWNhdGVzIHRoZSBu\nZXcgc3RhdGUgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc3ViamVjdFR5cGVg\nOiBUaGUgbGV2ZWwgYXQgd2hpY2ggdGhlIGNvbW1lbnQgaXMgdGFyZ2V0ZWQg\nKHN0cmluZywgcmVxdWlyZWQpCgotICoqYWRkX3JlcGx5X3RvX3B1bGxfcmVx\ndWVzdF9jb21tZW50KiogLSBBZGQgcmVwbHkgdG8gcHVsbCByZXF1ZXN0IGNv\nbW1lbnQKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYGJvZHlgOiBUaGUgdGV4dCBvZiB0aGUgcmVwbHkgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgY29tbWVudElkYDogVGhlIElEIG9mIHRoZSBjb21tZW50\nIHRvIHJlcGx5IHRvIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYG93bmVyYDog\nUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwdWxs\nTnVtYmVyYDogUHVsbCByZXF1ZXN0IG51bWJlciAobnVtYmVyLCByZXF1aXJl\nZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVp\ncmVkKQoKLSAqKmNyZWF0ZV9wdWxsX3JlcXVlc3QqKiAtIE9wZW4gbmV3IHB1\nbGwgcmVxdWVzdAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgYmFzZWA6IEJyYW5jaCB0byBtZXJnZSBpbnRvIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYGJvZHlgOiBQUiBkZXNjcmlwdGlvbiAoc3RyaW5n\nLCBvcHRpb25hbCkKICAtIGBkcmFmdGA6IENyZWF0ZSBhcyBkcmFmdCBQUiAo\nYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgaGVhZGA6IEJyYW5jaCBjb250YWlu\naW5nIGNoYW5nZXMgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgbWFpbnRhaW5l\ncl9jYW5fbW9kaWZ5YDogQWxsb3cgbWFpbnRhaW5lciBlZGl0cyAoYm9vbGVh\nbiwgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChz\ndHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUg\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmV2aWV3ZXJzYDogR2l0SHViIHVz\nZXJuYW1lcyBvciBPUkcvdGVhbS1zbHVnIHRlYW0gcmV2aWV3ZXJzIHRvIHJl\ncXVlc3QgcmV2aWV3cyBmcm9tIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBg\ndGl0bGVgOiBQUiB0aXRsZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0\nX3B1bGxfcmVxdWVzdHMqKiAtIExpc3QgcHVsbCByZXF1ZXN0cwogIC0gKipS\nZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYmFzZWA6IEZp\nbHRlciBieSBiYXNlIGJyYW5jaCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBk\naXJlY3Rpb25gOiBTb3J0IGRpcmVjdGlvbiAoc3RyaW5nLCBvcHRpb25hbCkK\nICAtIGBoZWFkYDogRmlsdGVyIGJ5IGhlYWQgdXNlci9vcmcgYW5kIGJyYW5j\naCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkg\nb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGFnZWA6IFBhZ2UgbnVt\nYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0aW9uYWwp\nCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRp\nb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBy\nZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0g\nYHNvcnRgOiBTb3J0IGJ5IChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHN0YXRl\nYDogRmlsdGVyIGJ5IHN0YXRlIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKm1l\ncmdlX3B1bGxfcmVxdWVzdCoqIC0gTWVyZ2UgcHVsbCByZXF1ZXN0CiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBjb21taXRf\nbWVzc2FnZWA6IEV4dHJhIGRldGFpbCBmb3IgbWVyZ2UgY29tbWl0IChzdHJp\nbmcsIG9wdGlvbmFsKQogIC0gYGNvbW1pdF90aXRsZWA6IFRpdGxlIGZvciBt\nZXJnZSBjb21taXQgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgbWVyZ2VfbWV0\naG9kYDogTWVyZ2UgbWV0aG9kIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93\nbmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGBwdWxsTnVtYmVyYDogUHVsbCByZXF1ZXN0IG51bWJlciAobnVtYmVyLCBy\nZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcs\nIHJlcXVpcmVkKQoKLSAqKnB1bGxfcmVxdWVzdF9yZWFkKiogLSBHZXQgZGV0\nYWlscyBmb3IgYSBzaW5nbGUgcHVsbCByZXF1ZXN0CiAgLSAqKlJlcXVpcmVk\nIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBhZnRlcmA6IEN1cnNvciBm\nb3IgcGFnaW5hdGlvbiwgdXNlZCBvbmx5IGJ5IHRoZSBnZXRfcmV2aWV3X2Nv\nbW1lbnRzIG1ldGhvZC4gUGFzcyB0aGUgZW5kQ3Vyc29yIGZyb20gdGhlIHBy\nZXZpb3VzIHBhZ2UncyBQYWdlSW5mbyB0byBmZXRjaCB0aGUgbmV4dCBwYWdl\nLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBtZXRob2RgOiBBY3Rpb24gdG8g\nc3BlY2lmeSB3aGF0IHB1bGwgcmVxdWVzdCBkYXRhIG5lZWRzIHRvIGJlIHJl\ndHJpZXZlZCBmcm9tIEdpdEh1Yi4gCiAgICBQb3NzaWJsZSBvcHRpb25zOiAK\nICAgICAxLiBnZXQgLSBHZXQgZGV0YWlscyBvZiBhIHNwZWNpZmljIHB1bGwg\ncmVxdWVzdC4KICAgICAyLiBnZXRfZGlmZiAtIEdldCB0aGUgZGlmZiBvZiBh\nIHB1bGwgcmVxdWVzdC4KICAgICAzLiBnZXRfc3RhdHVzIC0gR2V0IGNvbWJp\nbmVkIGNvbW1pdCBzdGF0dXMgb2YgYSBoZWFkIGNvbW1pdCBpbiBhIHB1bGwg\ncmVxdWVzdC4KICAgICA0LiBnZXRfZmlsZXMgLSBHZXQgdGhlIGxpc3Qgb2Yg\nZmlsZXMgY2hhbmdlZCBpbiBhIHB1bGwgcmVxdWVzdC4gVXNlIHdpdGggcGFn\naW5hdGlvbiBwYXJhbWV0ZXJzIHRvIGNvbnRyb2wgdGhlIG51bWJlciBvZiBy\nZXN1bHRzIHJldHVybmVkLgogICAgIDUuIGdldF9jb21taXRzIC0gR2V0IHRo\nZSBsaXN0IG9mIGNvbW1pdHMgb24gYSBwdWxsIHJlcXVlc3QuIFVzZSB3aXRo\nIHBhZ2luYXRpb24gcGFyYW1ldGVycyB0byBjb250cm9sIHRoZSBudW1iZXIg\nb2YgcmVzdWx0cyByZXR1cm5lZC4KICAgICA2LiBnZXRfcmV2aWV3X2NvbW1l\nbnRzIC0gR2V0IHJldmlldyB0aHJlYWRzIG9uIGEgcHVsbCByZXF1ZXN0LiBF\nYWNoIHRocmVhZCBjb250YWlucyBsb2dpY2FsbHkgZ3JvdXBlZCByZXZpZXcg\nY29tbWVudHMgbWFkZSBvbiB0aGUgc2FtZSBjb2RlIGxvY2F0aW9uIGR1cmlu\nZyBwdWxsIHJlcXVlc3QgcmV2aWV3cy4gUmV0dXJucyB0aHJlYWRzIHdpdGgg\nbWV0YWRhdGEgKGlzUmVzb2x2ZWQsIGlzT3V0ZGF0ZWQsIGlzQ29sbGFwc2Vk\nKSBhbmQgdGhlaXIgYXNzb2NpYXRlZCBjb21tZW50cy4gVXNlIGN1cnNvci1i\nYXNlZCBwYWdpbmF0aW9uIChwZXJQYWdlLCBhZnRlcikgdG8gY29udHJvbCBy\nZXN1bHRzLgogICAgIDcuIGdldF9yZXZpZXdzIC0gR2V0IHRoZSByZXZpZXdz\nIG9uIGEgcHVsbCByZXF1ZXN0LiBXaGVuIGFza2VkIGZvciByZXZpZXcgY29t\nbWVudHMsIHVzZSBnZXRfcmV2aWV3X2NvbW1lbnRzIG1ldGhvZC4gVXNlIHdp\ndGggcGFnaW5hdGlvbiBwYXJhbWV0ZXJzIHRvIGNvbnRyb2wgdGhlIG51bWJl\nciBvZiByZXN1bHRzIHJldHVybmVkLgogICAgIDguIGdldF9jb21tZW50cyAt\nIEdldCBjb21tZW50cyBvbiBhIHB1bGwgcmVxdWVzdC4gVXNlIHRoaXMgaWYg\ndXNlciBkb2Vzbid0IHNwZWNpZmljYWxseSB3YW50IHJldmlldyBjb21tZW50\ncy4gVXNlIHdpdGggcGFnaW5hdGlvbiBwYXJhbWV0ZXJzIHRvIGNvbnRyb2wg\ndGhlIG51bWJlciBvZiByZXN1bHRzIHJldHVybmVkLgogICAgIDkuIGdldF9j\naGVja19ydW5zIC0gR2V0IGNoZWNrIHJ1bnMgZm9yIHRoZSBoZWFkIGNvbW1p\ndCBvZiBhIHB1bGwgcmVxdWVzdC4gQ2hlY2sgcnVucyBhcmUgdGhlIGluZGl2\naWR1YWwgQ0kvQ0Qgam9icyBhbmQgY2hlY2tzIHRoYXQgcnVuIG9uIHRoZSBQ\nUi4KICAgICAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9z\naXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGFnZWA6IFBh\nZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGBwdWxsTnVtYmVyYDogUHVsbCByZXF1ZXN0IG51bWJlciAobnVtYmVy\nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJp\nbmcsIHJlcXVpcmVkKQoKLSAqKnB1bGxfcmVxdWVzdF9yZXZpZXdfd3JpdGUq\nKiAtIFdyaXRlIG9wZXJhdGlvbnMgKGNyZWF0ZSwgc3VibWl0LCBkZWxldGUp\nIG9uIHB1bGwgcmVxdWVzdCByZXZpZXdzCiAgLSAqKlJlcXVpcmVkIE9BdXRo\nIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBib2R5YDogUmV2aWV3IGNvbW1lbnQg\ndGV4dCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBjb21taXRJRGA6IFNIQSBv\nZiBjb21taXQgdG8gcmV2aWV3IChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGV2\nZW50YDogUmV2aWV3IGFjdGlvbiB0byBwZXJmb3JtLiAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBtZXRob2RgOiBUaGUgd3JpdGUgb3BlcmF0aW9uIHRvIHBl\ncmZvcm0gb24gcHVsbCByZXF1ZXN0IHJldmlldy4gKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYHB1bGxOdW1iZXJgOiBQdWxsIHJlcXVlc3QgbnVtYmVy\nIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgdGhyZWFkSWRgOiBUaGUgbm9k\nZSBJRCBvZiB0aGUgcmV2aWV3IHRocmVhZCAoZS5nLiwgUFJSVF9rd0RPeHh4\nKS4gUmVxdWlyZWQgZm9yIHJlc29sdmVfdGhyZWFkIGFuZCB1bnJlc29sdmVf\ndGhyZWFkIG1ldGhvZHMuIEdldCB0aHJlYWQgSURzIGZyb20gcHVsbF9yZXF1\nZXN0X3JlYWQgd2l0aCBtZXRob2QgZ2V0X3Jldmlld19jb21tZW50cy4gKHN0\ncmluZywgb3B0aW9uYWwpCgotICoqc2VhcmNoX3B1bGxfcmVxdWVzdHMqKiAt\nIFNlYXJjaCBwdWxsIHJlcXVlc3RzCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNj\nb3BlcyoqOiBgcmVwb2AKICAtIGBvcmRlcmA6IFNvcnQgb3JkZXIgKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBPcHRpb25hbCByZXBvc2l0b3J5\nIG93bmVyLiBJZiBwcm92aWRlZCB3aXRoIHJlcG8sIG9ubHkgcHVsbCByZXF1\nZXN0cyBmb3IgdGhpcyByZXBvc2l0b3J5IGFyZSBsaXN0ZWQuIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5h\ndGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2Vg\nOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcXVlcnlgOiBTZWFyY2gg\ncXVlcnkgdXNpbmcgR2l0SHViIHB1bGwgcmVxdWVzdCBzZWFyY2ggc3ludGF4\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBPcHRpb25hbCByZXBv\nc2l0b3J5IG5hbWUuIElmIHByb3ZpZGVkIHdpdGggb3duZXIsIG9ubHkgcHVs\nbCByZXF1ZXN0cyBmb3IgdGhpcyByZXBvc2l0b3J5IGFyZSBsaXN0ZWQuIChz\ndHJpbmcsIG9wdGlvbmFsKQogIC0gYHNvcnRgOiBTb3J0IGZpZWxkIGJ5IG51\nbWJlciBvZiBtYXRjaGVzIG9mIGNhdGVnb3JpZXMsIGRlZmF1bHRzIHRvIGJl\nc3QgbWF0Y2ggKHN0cmluZywgb3B0aW9uYWwpCgotICoqdXBkYXRlX3B1bGxf\ncmVxdWVzdCoqIC0gRWRpdCBwdWxsIHJlcXVlc3QKICAtICoqUmVxdWlyZWQg\nT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJhc2VgOiBOZXcgYmFzZSBi\ncmFuY2ggbmFtZSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBib2R5YDogTmV3\nIGRlc2NyaXB0aW9uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGRyYWZ0YDog\nTWFyayBwdWxsIHJlcXVlc3QgYXMgZHJhZnQgKHRydWUpIG9yIHJlYWR5IGZv\nciByZXZpZXcgKGZhbHNlKSAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgbWFp\nbnRhaW5lcl9jYW5fbW9kaWZ5YDogQWxsb3cgbWFpbnRhaW5lciBlZGl0cyAo\nYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93\nbmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHB1bGxOdW1iZXJgOiBQdWxs\nIHJlcXVlc3QgbnVtYmVyIHRvIHVwZGF0ZSAobnVtYmVyLCByZXF1aXJlZCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYHJldmlld2Vyc2A6IEdpdEh1YiB1c2VybmFtZXMgb3IgT1JHL3Rl\nYW0tc2x1ZyB0ZWFtIHJldmlld2VycyB0byByZXF1ZXN0IHJldmlld3MgZnJv\nbSAoc3RyaW5nW10sIG9wdGlvbmFsKQogIC0gYHN0YXRlYDogTmV3IHN0YXRl\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHRpdGxlYDogTmV3IHRpdGxlIChz\ndHJpbmcsIG9wdGlvbmFsKQoKLSAqKnVwZGF0ZV9wdWxsX3JlcXVlc3RfYnJh\nbmNoKiogLSBVcGRhdGUgcHVsbCByZXF1ZXN0IGJyYW5jaAogIC0gKipSZXF1\naXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgZXhwZWN0ZWRIZWFk\nU2hhYDogVGhlIGV4cGVjdGVkIFNIQSBvZiB0aGUgcHVsbCByZXF1ZXN0J3Mg\nSEVBRCByZWYgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBSZXBv\nc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHB1bGxOdW1i\nZXJgOiBQdWxsIHJlcXVlc3QgbnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQog\nIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQp\nCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxz\nb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNy\nY3NldD0icGtnL29jdGljb25zL2ljb25zL3JlcG8tZGFyay5wbmciPjxzb3Vy\nY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNz\nZXQ9InBrZy9vY3RpY29ucy9pY29ucy9yZXBvLWxpZ2h0LnBuZyI+PGltZyBz\ncmM9InBrZy9vY3RpY29ucy9pY29ucy9yZXBvLWxpZ2h0LnBuZyIgd2lkdGg9\nIjIwIiBoZWlnaHQ9IjIwIiBhbHQ9InJlcG8iPjwvcGljdHVyZT4gUmVwb3Np\ndG9yaWVzPC9zdW1tYXJ5PgoKLSAqKmNyZWF0ZV9icmFuY2gqKiAtIENyZWF0\nZSBicmFuY2gKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBv\nYAogIC0gYGJyYW5jaGA6IE5hbWUgZm9yIG5ldyBicmFuY2ggKHN0cmluZywg\ncmVxdWlyZWQpCiAgLSBgZnJvbV9icmFuY2hgOiBTb3VyY2UgYnJhbmNoIChk\nZWZhdWx0cyB0byByZXBvIGRlZmF1bHQpIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVp\ncmVkKQoKLSAqKmNyZWF0ZV9vcl91cGRhdGVfZmlsZSoqIC0gQ3JlYXRlIG9y\nIHVwZGF0ZSBmaWxlCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBg\ncmVwb2AKICAtIGBicmFuY2hgOiBCcmFuY2ggdG8gY3JlYXRlL3VwZGF0ZSB0\naGUgZmlsZSBpbiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBjb250ZW50YDog\nQ29udGVudCBvZiB0aGUgZmlsZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBt\nZXNzYWdlYDogQ29tbWl0IG1lc3NhZ2UgKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyICh1c2VybmFtZSBvciBvcmdh\nbml6YXRpb24pIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBhdGhgOiBQYXRo\nIHdoZXJlIHRvIGNyZWF0ZS91cGRhdGUgdGhlIGZpbGUgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBzaGFgOiBUaGUgYmxvYiBTSEEgb2YgdGhlIGZpbGUg\nYmVpbmcgcmVwbGFjZWQuIFJlcXVpcmVkIGlmIHRoZSBmaWxlIGFscmVhZHkg\nZXhpc3RzLiAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipjcmVhdGVfcmVwb3Np\ndG9yeSoqIC0gQ3JlYXRlIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1\ndGggU2NvcGVzKio6IGByZXBvYAogIC0gYGF1dG9Jbml0YDogSW5pdGlhbGl6\nZSB3aXRoIFJFQURNRSAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgZGVzY3Jp\ncHRpb25gOiBSZXBvc2l0b3J5IGRlc2NyaXB0aW9uIChzdHJpbmcsIG9wdGlv\nbmFsKQogIC0gYG5hbWVgOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgb3JnYW5pemF0aW9uYDogT3JnYW5pemF0aW9uIHRvIGNy\nZWF0ZSB0aGUgcmVwb3NpdG9yeSBpbiAob21pdCB0byBjcmVhdGUgaW4geW91\nciBwZXJzb25hbCBhY2NvdW50KSAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBw\ncml2YXRlYDogV2hldGhlciB0aGUgcmVwb3NpdG9yeSBzaG91bGQgYmUgcHJp\ndmF0ZS4gRGVmYXVsdHMgdG8gdHJ1ZSAocHJpdmF0ZSkgd2hlbiBvbWl0dGVk\nLiAoYm9vbGVhbiwgb3B0aW9uYWwpCgotICoqZGVsZXRlX2ZpbGUqKiAtIERl\nbGV0ZSBmaWxlCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVw\nb2AKICAtIGBicmFuY2hgOiBCcmFuY2ggdG8gZGVsZXRlIHRoZSBmaWxlIGZy\nb20gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgbWVzc2FnZWA6IENvbW1pdCBt\nZXNzYWdlIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogUmVwb3Np\ndG9yeSBvd25lciAodXNlcm5hbWUgb3Igb3JnYW5pemF0aW9uKSAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGBwYXRoYDogUGF0aCB0byB0aGUgZmlsZSB0byBk\nZWxldGUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRv\ncnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipmb3JrX3JlcG9zaXRv\ncnkqKiAtIEZvcmsgcmVwb3NpdG9yeQogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgb3JnYW5pemF0aW9uYDogT3JnYW5pemF0\naW9uIHRvIGZvcmsgdG8gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJg\nOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJl\ncG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoq\nZ2V0X2NvbW1pdCoqIC0gR2V0IGNvbW1pdCBkZXRhaWxzCiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBkZXRhaWxgOiBMZXZl\nbCBvZiBkZXRhaWwgdG8gaW5jbHVkZSBmb3IgY2hhbmdlZCBmaWxlcy4gIm5v\nbmUiIG9taXRzIHN0YXRzIGFuZCBmaWxlcyBlbnRpcmVseS4gInN0YXRzIiAo\nZGVmYXVsdCkgaW5jbHVkZXMgcGVyLWZpbGUgbWV0YWRhdGE6IGZpbGVuYW1l\nLCBzdGF0dXMsIGFuZCBsaW5lcy1vZi1jb2RlIGNvdW50cyAoYWRkaXRpb25z\nLCBkZWxldGlvbnMsIGNoYW5nZXMpLCB3aXRoIG5vIHBhdGNoIGNvbnRlbnQu\nICJmdWxsX3BhdGNoIiBhZGRpdGlvbmFsbHkgaW5jbHVkZXMgdGhlIHVuaWZp\nZWQgZGlmZiBjb250ZW50IGZvciBlYWNoIGZpbGUgYW5kIGNhbiBiZSB2ZXJ5\nIGxhcmdlLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9z\naXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGFnZWA6IFBh\nZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYHNoYWA6IENvbW1pdCBTSEEsIGJyYW5jaCBuYW1lLCBvciB0YWcg\nbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipnZXRfZmlsZV9jb250ZW50\ncyoqIC0gR2V0IGZpbGUgb3IgZGlyZWN0b3J5IGNvbnRlbnRzCiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJl\ncG9zaXRvcnkgb3duZXIgKHVzZXJuYW1lIG9yIG9yZ2FuaXphdGlvbikgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgcGF0aGA6IFBhdGggdG8gZmlsZS9kaXJl\nY3RvcnkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcmVmYDogQWNjZXB0cyBv\ncHRpb25hbCBnaXQgcmVmcyBzdWNoIGFzIGByZWZzL3RhZ3Mve3RhZ31gLCBg\ncmVmcy9oZWFkcy97YnJhbmNofWAgb3IgYHJlZnMvcHVsbC97cHJfbnVtYmVy\nfS9oZWFkYCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVwb3Np\ndG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNoYWA6IEFjY2Vw\ndHMgb3B0aW9uYWwgY29tbWl0IFNIQS4gSWYgc3BlY2lmaWVkLCBpdCB3aWxs\nIGJlIHVzZWQgaW5zdGVhZCBvZiByZWYgKHN0cmluZywgb3B0aW9uYWwpCgot\nICoqZ2V0X2xhdGVzdF9yZWxlYXNlKiogLSBHZXQgbGF0ZXN0IHJlbGVhc2UK\nICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYG93\nbmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKmdldF9yZWxlYXNlX2J5X3RhZyoqIC0gR2V0IGEgcmVsZWFzZSBieSB0\nYWcgbmFtZQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9g\nCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgdGFnYDogVGFnIG5hbWUgKGUuZy4sICd2MS4wLjAnKSAo\nc3RyaW5nLCByZXF1aXJlZCkKCi0gKipnZXRfdGFnKiogLSBHZXQgdGFnIGRl\ndGFpbHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHRhZ2A6IFRhZyBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKmxpc3RfYnJhbmNoZXMqKiAtIExpc3QgYnJhbmNoZXMKICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYG93bmVyYDogUmVw\nb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDog\nUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBv\ncHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3Ig\ncGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFs\nKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWly\nZWQpCgotICoqbGlzdF9jb21taXRzKiogLSBMaXN0IGNvbW1pdHMKICAtICoq\nUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGF1dGhvcmA6\nIEF1dGhvciB1c2VybmFtZSBvciBlbWFpbCBhZGRyZXNzIHRvIGZpbHRlciBj\nb21taXRzIGJ5IChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogUmVw\nb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDog\nUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBv\ncHRpb25hbCkKICAtIGBwYXRoYDogT25seSBjb21taXRzIGNvbnRhaW5pbmcg\ndGhpcyBmaWxlIHBhdGggd2lsbCBiZSByZXR1cm5lZCAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFn\naW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQog\nIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgc2hhYDogQ29tbWl0IFNIQSwgYnJhbmNoIG9yIHRhZyBuYW1lIHRv\nIGxpc3QgY29tbWl0cyBvZi4gSWYgbm90IHByb3ZpZGVkLCB1c2VzIHRoZSBk\nZWZhdWx0IGJyYW5jaCBvZiB0aGUgcmVwb3NpdG9yeS4gSWYgYSBjb21taXQg\nU0hBIGlzIHByb3ZpZGVkLCB3aWxsIGxpc3QgY29tbWl0cyB1cCB0byB0aGF0\nIFNIQS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc2luY2VgOiBPbmx5IGNv\nbW1pdHMgYWZ0ZXIgdGhpcyBkYXRlIHdpbGwgYmUgcmV0dXJuZWQgKElTTyA4\nNjAxIGZvcm1hdDogWVlZWS1NTS1ERFRISDpNTTpTU1ogb3IgWVlZWS1NTS1E\nRCkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdW50aWxgOiBPbmx5IGNvbW1p\ndHMgYmVmb3JlIHRoaXMgZGF0ZSB3aWxsIGJlIHJldHVybmVkIChJU08gODYw\nMSBmb3JtYXQ6IFlZWVktTU0tRERUSEg6TU06U1NaIG9yIFlZWVktTU0tREQp\nIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmxpc3RfcmVsZWFzZXMqKiAtIExp\nc3QgcmVsZWFzZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBy\nZXBvYAogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRp\nb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDog\nUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAx\nMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5\nIG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9yZXBvc2l0b3J5\nX2NvbGxhYm9yYXRvcnMqKiAtIExpc3QgcmVwb3NpdG9yeSBjb2xsYWJvcmF0\nb3JzCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAt\nIGBhZmZpbGlhdGlvbmA6IEZpbHRlciBieSBhZmZpbGlhdGlvbi4gQ2FuIGJl\nIG9uZSBvZjogJ291dHNpZGUnIChvdXRzaWRlIGNvbGxhYm9yYXRvcnMpLCAn\nZGlyZWN0JyAoYWxsIHdpdGggcGVybWlzc2lvbnMgcmVnYXJkbGVzcyBvZiBv\ncmcgbWVtYmVyc2hpcCksICdhbGwnIChhbGwgY29sbGFib3JhdG9ycykuIERl\nZmF1bHQ6ICdhbGwnIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93bmVyYDog\nUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdl\nYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKGRlZmF1bHQgMSwgbWlu\nIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRz\nIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChkZWZhdWx0IDMwLCBtaW4gMSwg\nbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9z\naXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X3RhZ3Mq\nKiAtIExpc3QgdGFncwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjog\nYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5h\ndGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2Vg\nOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRv\ncnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipwdXNoX2ZpbGVzKiog\nLSBQdXNoIGZpbGVzIHRvIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1\ndGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJyYW5jaGA6IEJyYW5jaCB0byBw\ndXNoIHRvIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYGZpbGVzYDogQXJyYXkg\nb2YgZmlsZSBvYmplY3RzIHRvIHB1c2gsIGVhY2ggb2JqZWN0IHdpdGggcGF0\naCAoc3RyaW5nKSBhbmQgY29udGVudCAoc3RyaW5nKSAob2JqZWN0W10sIHJl\ncXVpcmVkKQogIC0gYG1lc3NhZ2VgOiBDb21taXQgbWVzc2FnZSAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAo\nc3RyaW5nLCByZXF1aXJlZCkKCi0gKipzZWFyY2hfY29kZSoqIC0gU2VhcmNo\nIGNvZGUKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYG9yZGVyYDogU29ydCBvcmRlciBmb3IgcmVzdWx0cyAoc3RyaW5nLCBv\ncHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRp\nb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDog\nUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAx\nMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5YDogU2VhcmNoIHF1\nZXJ5IChHaXRIdWIgY29kZSBzZWFyY2ggUkVTVCkuIEltcGxpY2l0IEFORCBi\nZXR3ZWVuIHRlcm1zOyBzdXBwb3J0cyBgT1JgLCBgTk9UYCwgYW5kIGAicXVv\ndGVkIHBocmFzZSJgIGZvciBleGFjdCBtYXRjaC4gUXVhbGlmaWVyczogYHJl\ncG86b3duZXIvcmVwb2AsIGBvcmc6YCwgYHVzZXI6YCwgYGxhbmd1YWdlOmAs\nIGBwYXRoOmRpcmAgKHByZWZpeCBtYXRjaCksIGBmaWxlbmFtZTpleGFjdC5l\neHRgLCBgZXh0ZW5zaW9uOmAsIGBpbjpmaWxlYCwgYGluOnBhdGhgLCBgc2l6\nZTpgLCBgaXM6YXJjaGl2ZWRgLCBgaXM6Zm9ya2AuIE1heCAyNTYgY2hhcnMu\nIEV4YW1wbGVzOiBgV2l0aENvbnRleHQgbGFuZ3VhZ2U6Z28gb3JnOmdpdGh1\nYmA7IGAicGFja2FnZSBtYWluIiByZXBvOm8vcmA7IGBmdW5jIGV4dGVuc2lv\nbjpnbyBwYXRoOmNtZCByZXBvOm8vcmA7IGBOT1QgVE9ETyBsYW5ndWFnZTpn\nbyByZXBvOm8vcmAuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBT\nb3J0IGZpZWxkICgnaW5kZXhlZCcgb25seSkgKHN0cmluZywgb3B0aW9uYWwp\nCgotICoqc2VhcmNoX2NvbW1pdHMqKiAtIFNlYXJjaCBjb21taXRzCiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvcmRlcmA6\nIFNvcnQgb3JkZXIgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcGFnZWA6IFBh\nZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGBxdWVyeWA6IENvbW1pdCBzZWFyY2ggcXVlcnkgKEdpdEh1YiBjb21t\naXQgc2VhcmNoIFJFU1QpLiBTZWFyY2hlcyBjb21taXQgbWVzc2FnZXMgb24g\ndGhlIGRlZmF1bHQgYnJhbmNoIG9ubHkuIFNjb3BlIHRoZSBzZWFyY2ggd2l0\naCBgcmVwbzpvd25lci9yZXBvYCwgYG9yZzpgLCBvciBgdXNlcjpgIChxdWVy\naWVzIHdpdGhvdXQgYSBzY29wZSBxdWFsaWZpZXIgbWF0Y2ggYWNyb3NzIGFs\nbCBvZiBHaXRIdWIgYW5kIGFyZSB1c3VhbGx5IG5vdCB3aGF0IHlvdSB3YW50\nKS4gT3RoZXIgcXVhbGlmaWVyczogYGF1dGhvcjpgLCBgY29tbWl0dGVyOmAs\nIGBhdXRob3ItbmFtZTpgLCBgY29tbWl0dGVyLW5hbWU6YCwgYGF1dGhvci1l\nbWFpbDpgLCBgY29tbWl0dGVyLWVtYWlsOmAsIGBhdXRob3ItZGF0ZTpgLCBg\nY29tbWl0dGVyLWRhdGU6YCAoc3VwcG9ydHMgYD5gLCBgPGAsIGA+PWAsIGA8\nPWAsIGFuZCBgWVlZWS1NTS1ERC4uWVlZWS1NTS1ERGAgcmFuZ2VzKSwgYG1l\ncmdlOnRydWV8ZmFsc2VgLCBgaGFzaDpgLCBgdHJlZTpgLCBgcGFyZW50OmAs\nIGBpczpwdWJsaWNgLiBFeGFtcGxlczogYHJlcG86b3duZXIvcmVwbyBmaXgg\ncGFuaWNgOyBgb3JnOmdpdGh1YiBhdXRob3I6ZGVmdW5rdCBjb21taXR0ZXIt\nZGF0ZTo+PTIwMjQtMDEtMDFgOyBgInJlZmFjdG9yIGNhY2hlIiByZXBvOm8v\ncmA7IGBoYXNoOmFiYzEyMzQgcmVwbzpvL3JgLiAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGBzb3J0YDogU29ydCBieSBhdXRob3Igb3IgY29tbWl0dGVyIGRh\ndGUgKGRlZmF1bHRzIHRvIGJlc3QgbWF0Y2gpIChzdHJpbmcsIG9wdGlvbmFs\nKQoKLSAqKnNlYXJjaF9yZXBvc2l0b3JpZXMqKiAtIFNlYXJjaCByZXBvc2l0\nb3JpZXMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAog\nIC0gYG1pbmltYWxfb3V0cHV0YDogUmV0dXJuIG1pbmltYWwgcmVwb3NpdG9y\neSBpbmZvcm1hdGlvbiAoZGVmYXVsdDogdHJ1ZSkuIFdoZW4gZmFsc2UsIHJl\ndHVybnMgZnVsbCBHaXRIdWIgQVBJIHJlcG9zaXRvcnkgb2JqZWN0cy4gKGJv\nb2xlYW4sIG9wdGlvbmFsKQogIC0gYG9yZGVyYDogU29ydCBvcmRlciAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQ\nYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEs\nIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5YDogUmVw\nb3NpdG9yeSBzZWFyY2ggcXVlcnkuIEV4YW1wbGVzOiAnbWFjaGluZSBsZWFy\nbmluZyBpbjpuYW1lIHN0YXJzOj4xMDAwIGxhbmd1YWdlOnB5dGhvbicsICd0\nb3BpYzpyZWFjdCcsICd1c2VyOmZhY2Vib29rJy4gU3VwcG9ydHMgYWR2YW5j\nZWQgc2VhcmNoIHN5bnRheCBmb3IgcHJlY2lzZSBmaWx0ZXJpbmcuIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBTb3J0IHJlcG9zaXRvcmllcyBi\neSBmaWVsZCwgZGVmYXVsdHMgdG8gYmVzdCBtYXRjaCAoc3RyaW5nLCBvcHRp\nb25hbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1\ncmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJr\nKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWxvY2stZGFy\nay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTog\nbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9zaGllbGQtbG9j\nay1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hp\nZWxkLWxvY2stbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFs\ndD0ic2hpZWxkLWxvY2siPjwvcGljdHVyZT4gU2VjcmV0IFByb3RlY3Rpb248\nL3N1bW1hcnk+CgotICoqZ2V0X3NlY3JldF9zY2FubmluZ19hbGVydCoqIC0g\nR2V0IHNlY3JldCBzY2FubmluZyBhbGVydAogIC0gKipSZXF1aXJlZCBPQXV0\naCBTY29wZXMqKjogYHNlY3VyaXR5X2V2ZW50c2AKICAtICoqQWNjZXB0ZWQg\nT0F1dGggU2NvcGVzKio6IGByZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAt\nIGBhbGVydE51bWJlcmA6IFRoZSBudW1iZXIgb2YgdGhlIGFsZXJ0LiAobnVt\nYmVyLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0aGUg\ncmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFRo\nZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkK\nCi0gKipsaXN0X3NlY3JldF9zY2FubmluZ19hbGVydHMqKiAtIExpc3Qgc2Vj\ncmV0IHNjYW5uaW5nIGFsZXJ0cwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHNlY3VyaXR5X2V2ZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGgg\nU2NvcGVzKio6IGByZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBvd25l\ncmA6IFRoZSBvd25lciBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgcGFnZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9u\nIChtaW4gMSkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJl\nc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAw\nKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGByZXBvYDogVGhlIG5hbWUgb2Yg\ndGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlc29s\ndXRpb25gOiBGaWx0ZXIgYnkgcmVzb2x1dGlvbiAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGBzZWNyZXRfdHlwZWA6IEEgY29tbWEtc2VwYXJhdGVkIGxpc3Qg\nb2Ygc2VjcmV0IHR5cGVzIHRvIHJldHVybi4gQWxsIGRlZmF1bHQgc2VjcmV0\nIHBhdHRlcm5zIGFyZSByZXR1cm5lZC4gVG8gcmV0dXJuIGdlbmVyaWMgcGF0\ndGVybnMsIHBhc3MgdGhlIHRva2VuIG5hbWUocykgaW4gdGhlIHBhcmFtZXRl\nci4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc3RhdGVgOiBGaWx0ZXIgYnkg\nc3RhdGUgKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFpbHM+Cgo8ZGV0YWls\ncz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJz\nLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL3NoaWVsZC1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL3NoaWVsZC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMv\naWNvbnMvc2hpZWxkLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIw\nIiBhbHQ9InNoaWVsZCI+PC9waWN0dXJlPiBTZWN1cml0eSBBZHZpc29yaWVz\nPC9zdW1tYXJ5PgoKLSAqKmdldF9nbG9iYWxfc2VjdXJpdHlfYWR2aXNvcnkq\nKiAtIEdldCBhIGdsb2JhbCBzZWN1cml0eSBhZHZpc29yeQogIC0gKipSZXF1\naXJlZCBPQXV0aCBTY29wZXMqKjogYHNlY3VyaXR5X2V2ZW50c2AKICAtICoq\nQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYCwgYHNlY3VyaXR5X2V2\nZW50c2AKICAtIGBnaHNhSWRgOiBHaXRIdWIgU2VjdXJpdHkgQWR2aXNvcnkg\nSUQgKGZvcm1hdDogR0hTQS14eHh4LXh4eHgteHh4eCkuIChzdHJpbmcsIHJl\ncXVpcmVkKQoKLSAqKmxpc3RfZ2xvYmFsX3NlY3VyaXR5X2Fkdmlzb3JpZXMq\nKiAtIExpc3QgZ2xvYmFsIHNlY3VyaXR5IGFkdmlzb3JpZXMKICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzKio6IGBzZWN1cml0eV9ldmVudHNgCiAgLSAq\nKkFjY2VwdGVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AsIGBzZWN1cml0eV9l\ndmVudHNgCiAgLSBgYWZmZWN0c2A6IEZpbHRlciBhZHZpc29yaWVzIGJ5IGFm\nZmVjdGVkIHBhY2thZ2Ugb3IgdmVyc2lvbiAoZS5nLiAicGFja2FnZTEscGFj\na2FnZTJAMS4wLjAiKS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgY3ZlSWRg\nOiBGaWx0ZXIgYnkgQ1ZFIElELiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBj\nd2VzYDogRmlsdGVyIGJ5IENvbW1vbiBXZWFrbmVzcyBFbnVtZXJhdGlvbiBJ\nRHMgKGUuZy4gWyI3OSIsICIyODQiLCAiMjIiXSkuIChzdHJpbmdbXSwgb3B0\naW9uYWwpCiAgLSBgZWNvc3lzdGVtYDogRmlsdGVyIGJ5IHBhY2thZ2UgZWNv\nc3lzdGVtLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBnaHNhSWRgOiBGaWx0\nZXIgYnkgR2l0SHViIFNlY3VyaXR5IEFkdmlzb3J5IElEIChmb3JtYXQ6IEdI\nU0EteHh4eC14eHh4LXh4eHgpLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBp\nc1dpdGhkcmF3bmA6IFdoZXRoZXIgdG8gb25seSByZXR1cm4gd2l0aGRyYXdu\nIGFkdmlzb3JpZXMuIChib29sZWFuLCBvcHRpb25hbCkKICAtIGBtb2RpZmll\nZGA6IEZpbHRlciBieSBwdWJsaXNoIG9yIHVwZGF0ZSBkYXRlIG9yIGRhdGUg\ncmFuZ2UgKElTTyA4NjAxIGRhdGUgb3IgcmFuZ2UpLiAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBwdWJsaXNoZWRgOiBGaWx0ZXIgYnkgcHVibGlzaCBkYXRl\nIG9yIGRhdGUgcmFuZ2UgKElTTyA4NjAxIGRhdGUgb3IgcmFuZ2UpLiAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBzZXZlcml0eWA6IEZpbHRlciBieSBzZXZl\ncml0eS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdHlwZWA6IEFkdmlzb3J5\nIHR5cGUuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHVwZGF0ZWRgOiBGaWx0\nZXIgYnkgdXBkYXRlIGRhdGUgb3IgZGF0ZSByYW5nZSAoSVNPIDg2MDEgZGF0\nZSBvciByYW5nZSkuIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmxpc3Rfb3Jn\nX3JlcG9zaXRvcnlfc2VjdXJpdHlfYWR2aXNvcmllcyoqIC0gTGlzdCBvcmcg\ncmVwb3NpdG9yeSBzZWN1cml0eSBhZHZpc29yaWVzCiAgLSAqKlJlcXVpcmVk\nIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0gKipBY2Nl\ncHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlfZXZlbnRz\nYAogIC0gYGRpcmVjdGlvbmA6IFNvcnQgZGlyZWN0aW9uLiAoc3RyaW5nLCBv\ncHRpb25hbCkKICAtIGBvcmdgOiBUaGUgb3JnYW5pemF0aW9uIGxvZ2luLiAo\nc3RyaW5nLCByZXF1aXJlZCkKICAtIGBzb3J0YDogU29ydCBmaWVsZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgc3RhdGVgOiBGaWx0ZXIgYnkgYWR2aXNv\ncnkgc3RhdGUuIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmxpc3RfcmVwb3Np\ndG9yeV9zZWN1cml0eV9hZHZpc29yaWVzKiogLSBMaXN0IHJlcG9zaXRvcnkg\nc2VjdXJpdHkgYWR2aXNvcmllcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHNlY3VyaXR5X2V2ZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGgg\nU2NvcGVzKio6IGByZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBkaXJl\nY3Rpb25gOiBTb3J0IGRpcmVjdGlvbi4gKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgb3duZXJgOiBUaGUgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVw\nb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc29ydGA6IFNvcnQg\nZmllbGQuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHN0YXRlYDogRmlsdGVy\nIGJ5IGFkdmlzb3J5IHN0YXRlLiAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0\nYWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBt\nZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvc3Rhci1kYXJrLnBuZyI+PHNvdXJjZSBtZWRp\nYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtn\nL29jdGljb25zL2ljb25zL3N0YXItbGlnaHQucG5nIj48aW1nIHNyYz0icGtn\nL29jdGljb25zL2ljb25zL3N0YXItbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhl\naWdodD0iMjAiIGFsdD0ic3RhciI+PC9waWN0dXJlPiBTdGFyZ2F6ZXJzPC9z\ndW1tYXJ5PgoKLSAqKmxpc3Rfc3RhcnJlZF9yZXBvc2l0b3JpZXMqKiAtIExp\nc3Qgc3RhcnJlZCByZXBvc2l0b3JpZXMKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGByZXBvYAogIC0gYGRpcmVjdGlvbmA6IFRoZSBkaXJlY3Rp\nb24gdG8gc29ydCB0aGUgcmVzdWx0cyBieS4gKHN0cmluZywgb3B0aW9uYWwp\nCiAgLSBgcGFnZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4g\nMSkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMg\ncGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVt\nYmVyLCBvcHRpb25hbCkKICAtIGBzb3J0YDogSG93IHRvIHNvcnQgdGhlIHJl\nc3VsdHMuIENhbiBiZSBlaXRoZXIgJ2NyZWF0ZWQnICh3aGVuIHRoZSByZXBv\nc2l0b3J5IHdhcyBzdGFycmVkKSBvciAndXBkYXRlZCcgKHdoZW4gdGhlIHJl\ncG9zaXRvcnkgd2FzIGxhc3QgcHVzaGVkIHRvKS4gKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgdXNlcm5hbWVgOiBVc2VybmFtZSB0byBsaXN0IHN0YXJyZWQg\ncmVwb3NpdG9yaWVzIGZvci4gRGVmYXVsdHMgdG8gdGhlIGF1dGhlbnRpY2F0\nZWQgdXNlci4gKHN0cmluZywgb3B0aW9uYWwpCgotICoqc3Rhcl9yZXBvc2l0\nb3J5KiogLSBTdGFyIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGByZXBvYAogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25l\nciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBu\nYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKnVuc3Rhcl9yZXBvc2l0b3J5\nKiogLSBVbnN0YXIgcmVwb3NpdG9yeQogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVy\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4K\nCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNv\nbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25z\nL3Blb3BsZS1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29s\nb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25z\nL3Blb3BsZS1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNv\nbnMvcGVvcGxlLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBh\nbHQ9InBlb3BsZSI+PC9waWN0dXJlPiBVc2Vyczwvc3VtbWFyeT4KCi0gKipz\nZWFyY2hfdXNlcnMqKiAtIFNlYXJjaCB1c2VycwogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgb3JkZXJgOiBTb3J0IG9yZGVy\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBm\nb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0g\nYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uICht\naW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcXVlcnlg\nOiBVc2VyIHNlYXJjaCBxdWVyeS4gRXhhbXBsZXM6ICdqb2huIHNtaXRoJywg\nJ2xvY2F0aW9uOnNlYXR0bGUnLCAnZm9sbG93ZXJzOj4xMDAnLiBTZWFyY2gg\naXMgYXV0b21hdGljYWxseSBzY29wZWQgdG8gdHlwZTp1c2VyLiAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGBzb3J0YDogU29ydCB1c2VycyBieSBudW1iZXIg\nb2YgZm9sbG93ZXJzIG9yIHJlcG9zaXRvcmllcywgb3Igd2hlbiB0aGUgcGVy\nc29uIGpvaW5lZCBHaXRIdWIuIChzdHJpbmcsIG9wdGlvbmFsKQoKPC9kZXRh\naWxzPgo8IS0tIEVORCBBVVRPTUFURUQgVE9PTFMgLS0+CgojIyMgQWRkaXRp\nb25hbCBUb29scyBpbiBSZW1vdGUgR2l0SHViIE1DUCBTZXJ2ZXIKCjxkZXRh\naWxzPgoKPHN1bW1hcnk+Q29waWxvdDwvc3VtbWFyeT4KCi0gKipjcmVhdGVf\ncHVsbF9yZXF1ZXN0X3dpdGhfY29waWxvdCoqIC0gUGVyZm9ybSB0YXNrIHdp\ndGggR2l0SHViIENvcGlsb3QgY29kaW5nIGFnZW50CiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyLiBZb3UgY2FuIGd1ZXNzIHRoZSBvd25lciwgYnV0\nIGNvbmZpcm0gaXQgd2l0aCB0aGUgdXNlciBiZWZvcmUgcHJvY2VlZGluZy4g\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFt\nZS4gWW91IGNhbiBndWVzcyB0aGUgcmVwb3NpdG9yeSBuYW1lLCBidXQgY29u\nZmlybSBpdCB3aXRoIHRoZSB1c2VyIGJlZm9yZSBwcm9jZWVkaW5nLiAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBwcm9ibGVtX3N0YXRlbWVudGA6IERldGFp\nbGVkIGRlc2NyaXB0aW9uIG9mIHRoZSB0YXNrIHRvIGJlIHBlcmZvcm1lZCAo\nZS5nLiwgJ0ltcGxlbWVudCBhIGZlYXR1cmUgdGhhdCBkb2VzIFgnLCAnRml4\nIGJ1ZyBZJywgZXRjLikgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgdGl0bGVg\nOiBUaXRsZSBmb3IgdGhlIHB1bGwgcmVxdWVzdCB0aGF0IHdpbGwgYmUgY3Jl\nYXRlZCAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBiYXNlX3JlZmA6IEdpdCBy\nZWZlcmVuY2UgKGUuZy4sIGJyYW5jaCkgdGhhdCB0aGUgYWdlbnQgd2lsbCBz\ndGFydCBpdHMgd29yayBmcm9tLiBJZiBub3Qgc3BlY2lmaWVkLCBkZWZhdWx0\ncyB0byB0aGUgcmVwb3NpdG9yeSdzIGRlZmF1bHQgYnJhbmNoIChzdHJpbmcs\nIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT5D\nb3BpbG90IFNwYWNlczwvc3VtbWFyeT4KCi0gKipBdXRoZW50aWNhdGlvbiBu\nb3RlKioKICAtIEZpbmUtZ3JhaW5lZCBQQVRzIGFyZSBub3QgaGlkZGVuIGJ5\nIGNsYXNzaWMgUEFUIHNjb3BlIGZpbHRlcmluZywgc28gdGhlc2UgdG9vbHMg\nbWF5IHN0aWxsIGFwcGVhciBldmVuIHdoZW4gdGhlIHRva2VuIGNhbm5vdCB1\nc2UgdGhlbS4KICAtIEZvciBvcmctb3duZWQgc3BhY2VzLCBmaW5lLWdyYWlu\nZWQgUEFUcyBtdXN0IGJlIGluc3RhbGxlZCBvbiB0aGUgb3duaW5nIG9yZ2Fu\naXphdGlvbiBhbmQgaW5jbHVkZSBgb3JnYW5pemF0aW9uX2NvcGlsb3Rfc3Bh\nY2VzOiByZWFkYC4KICAtIElmIGFuIG9yZy1vd25lZCBzcGFjZSBjb250YWlu\ncyByZXBvc2l0b3J5LWJhY2tlZCByZXNvdXJjZXMsIHRoZSB0b2tlbiBtdXN0\nIGFsc28gaGF2ZSBhY2Nlc3MgdG8gZXZlcnkgcmVmZXJlbmNlZCByZXBvc2l0\nb3J5IG9yIHRoZSBzcGFjZSBtYXkgYmUgdHJlYXRlZCBhcyBub3QgZm91bmQu\nCgotICoqZ2V0X2NvcGlsb3Rfc3BhY2UqKiAtIEdldCBDb3BpbG90IFNwYWNl\nCiAgLSBgb3duZXJgOiBUaGUgb3duZXIgb2YgdGhlIHNwYWNlLiAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGBuYW1lYDogVGhlIG5hbWUgb2YgdGhlIHNwYWNl\nLiAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2NvcGlsb3Rfc3BhY2Vz\nKiogLSBMaXN0IENvcGlsb3QgU3BhY2VzCgo8L2RldGFpbHM+Cgo8ZGV0YWls\ncz4KCjxzdW1tYXJ5PkdpdEh1YiBTdXBwb3J0IERvY3MgU2VhcmNoPC9zdW1t\nYXJ5PgoKLSAqKmdpdGh1Yl9zdXBwb3J0X2RvY3Nfc2VhcmNoKiogLSBSZXRy\naWV2ZSBkb2N1bWVudGF0aW9uIHJlbGV2YW50IHRvIGFuc3dlciBHaXRIdWIg\ncHJvZHVjdCBhbmQgc3VwcG9ydCBxdWVzdGlvbnMuIFN1cHBvcnQgdG9waWNz\nIGluY2x1ZGU6IEdpdEh1YiBBY3Rpb25zIFdvcmtmbG93cywgQXV0aGVudGlj\nYXRpb24sIEdpdEh1YiBTdXBwb3J0IElucXVpcmllcywgUHVsbCBSZXF1ZXN0\nIFByYWN0aWNlcywgUmVwb3NpdG9yeSBNYWludGVuYW5jZSwgR2l0SHViIFBh\nZ2VzLCBHaXRIdWIgUGFja2FnZXMsIEdpdEh1YiBEaXNjdXNzaW9ucywgQ29w\naWxvdCBTcGFjZXMKICAtIGBxdWVyeWA6IElucHV0IGZyb20gdGhlIHVzZXIg\nYWJvdXQgdGhlIHF1ZXN0aW9uIHRoZXkgbmVlZCBhbnN3ZXJlZC4gVGhpcyBp\ncyB0aGUgbGF0ZXN0IHJhdyB1bmVkaXRlZCB1c2VyIG1lc3NhZ2UuIFlvdSBz\naG91bGQgQUxXQVlTIGxlYXZlIHRoZSB1c2VyIG1lc3NhZ2UgYXMgaXQgaXMs\nIHlvdSBzaG91bGQgbmV2ZXIgbW9kaWZ5IGl0LiAoc3RyaW5nLCByZXF1aXJl\nZCkKCjwvZGV0YWlscz4KCiMjIFJlYWQtT25seSBNb2RlCgpUbyBydW4gdGhl\nIHNlcnZlciBpbiByZWFkLW9ubHkgbW9kZSwgeW91IGNhbiB1c2UgdGhlIGAt\nLXJlYWQtb25seWAgZmxhZy4gVGhpcyB3aWxsIG9ubHkgb2ZmZXIgcmVhZC1v\nbmx5IHRvb2xzLCBwcmV2ZW50aW5nIGFueSBtb2RpZmljYXRpb25zIHRvIHJl\ncG9zaXRvcmllcywgaXNzdWVzLCBwdWxsIHJlcXVlc3RzLCBldGMuCgpgYGBi\nYXNoCi4vZ2l0aHViLW1jcC1zZXJ2ZXIgLS1yZWFkLW9ubHkKYGBgCgpXaGVu\nIHVzaW5nIERvY2tlciwgeW91IGNhbiBwYXNzIHRoZSByZWFkLW9ubHkgbW9k\nZSBhcyBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZToKCmBgYGJhc2gKZG9ja2Vy\nIHJ1biAtaSAtLXJtIFwKICAtZSBHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RP\nS0VOPTx5b3VyLXRva2VuPiBcCiAgLWUgR0lUSFVCX1JFQURfT05MWT0xIFwK\nICBnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcgpgYGAKCiMjIExv\nY2tkb3duIE1vZGUKCkxvY2tkb3duIG1vZGUgbGltaXRzIHRoZSBjb250ZW50\nIHRoYXQgdGhlIHNlcnZlciB3aWxsIHN1cmZhY2UgZnJvbSBwdWJsaWMgcmVw\nb3NpdG9yaWVzLiBXaGVuIGVuYWJsZWQsIHRoZSBzZXJ2ZXIgY2hlY2tzIHdo\nZXRoZXIgdGhlIGF1dGhvciBvZiBlYWNoIGl0ZW0gaGFzIHB1c2ggYWNjZXNz\nIHRvIHRoZSByZXBvc2l0b3J5LiBQcml2YXRlIHJlcG9zaXRvcmllcyBhcmUg\ndW5hZmZlY3RlZCwgYW5kIGNvbGxhYm9yYXRvcnMga2VlcCBmdWxsIGFjY2Vz\ncyB0byB0aGVpciBvd24gY29udGVudC4KCmBgYGJhc2gKLi9naXRodWItbWNw\nLXNlcnZlciAtLWxvY2tkb3duLW1vZGUKYGBgCgpXaGVuIHJ1bm5pbmcgd2l0\naCBEb2NrZXIsIHNldCB0aGUgY29ycmVzcG9uZGluZyBlbnZpcm9ubWVudCB2\nYXJpYWJsZToKCmBgYGJhc2gKZG9ja2VyIHJ1biAtaSAtLXJtIFwKICAtZSBH\nSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOPTx5b3VyLXRva2VuPiBcCiAg\nLWUgR0lUSFVCX0xPQ0tET1dOX01PREU9MSBcCiAgZ2hjci5pby9naXRodWIv\nZ2l0aHViLW1jcC1zZXJ2ZXIKYGBgCgpUaGUgYmVoYXZpb3Igb2YgbG9ja2Rv\nd24gbW9kZSBkZXBlbmRzIG9uIHRoZSB0b29sIGludm9rZWQuCgpGb2xsb3dp\nbmcgdG9vbHMgd2lsbCByZXR1cm4gYW4gZXJyb3Igd2hlbiB0aGUgYXV0aG9y\nIGxhY2tzIHRoZSBwdXNoIGFjY2VzczoKCi0gYGlzc3VlX3JlYWQ6Z2V0YAot\nIGBwdWxsX3JlcXVlc3RfcmVhZDpnZXRgCgpGb2xsb3dpbmcgdG9vbHMgd2ls\nbCBmaWx0ZXIgb3V0IGNvbnRlbnQgZnJvbSB1c2VycyBsYWNraW5nIHRoZSBw\ndXNoIGFjY2VzczoKCi0gYGlzc3VlX3JlYWQ6Z2V0X2NvbW1lbnRzYAotIGBp\nc3N1ZV9yZWFkOmdldF9zdWJfaXNzdWVzYAotIGBwdWxsX3JlcXVlc3RfcmVh\nZDpnZXRfY29tbWVudHNgCi0gYHB1bGxfcmVxdWVzdF9yZWFkOmdldF9yZXZp\nZXdfY29tbWVudHNgCi0gYHB1bGxfcmVxdWVzdF9yZWFkOmdldF9yZXZpZXdz\nYAoKIyMgaTE4biAvIE92ZXJyaWRpbmcgRGVzY3JpcHRpb25zCgpUaGUgZGVz\nY3JpcHRpb25zIG9mIHRoZSB0b29scyBjYW4gYmUgb3ZlcnJpZGRlbiBieSBj\ncmVhdGluZyBhCmBnaXRodWItbWNwLXNlcnZlci1jb25maWcuanNvbmAgZmls\nZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlIGJpbmFyeS4KClRoZSBm\naWxlIHNob3VsZCBjb250YWluIGEgSlNPTiBvYmplY3Qgd2l0aCB0aGUgdG9v\nbCBuYW1lcyBhcyBrZXlzIGFuZCB0aGUgbmV3CmRlc2NyaXB0aW9ucyBhcyB2\nYWx1ZXMuIEZvciBleGFtcGxlOgoKYGBganNvbgp7CiAgIlRPT0xfQUREX0lT\nU1VFX0NPTU1FTlRfREVTQ1JJUFRJT04iOiAiYW4gYWx0ZXJuYXRpdmUgZGVz\nY3JpcHRpb24iLAogICJUT09MX0NSRUFURV9CUkFOQ0hfREVTQ1JJUFRJT04i\nOiAiQ3JlYXRlIGEgbmV3IGJyYW5jaCBpbiBhIEdpdEh1YiByZXBvc2l0b3J5\nIgp9CmBgYAoKWW91IGNhbiBjcmVhdGUgYW4gZXhwb3J0IG9mIHRoZSBjdXJy\nZW50IHRyYW5zbGF0aW9ucyBieSBydW5uaW5nIHRoZSBiaW5hcnkgd2l0aAp0\naGUgYC0tZXhwb3J0LXRyYW5zbGF0aW9uc2AgZmxhZy4KClRoaXMgZmxhZyB3\naWxsIHByZXNlcnZlIGFueSB0cmFuc2xhdGlvbnMvb3ZlcnJpZGVzIHlvdSBo\nYXZlIG1hZGUsIHdoaWxlIGFkZGluZwphbnkgbmV3IHRyYW5zbGF0aW9ucyB0\naGF0IGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgYmluYXJ5IHNpbmNlIHRoZSBs\nYXN0IHRpbWUgeW91CmV4cG9ydGVkLgoKYGBgc2gKLi9naXRodWItbWNwLXNl\ncnZlciAtLWV4cG9ydC10cmFuc2xhdGlvbnMKY2F0IGdpdGh1Yi1tY3Atc2Vy\ndmVyLWNvbmZpZy5qc29uCmBgYAoKWW91IGNhbiBhbHNvIHVzZSBFTlYgdmFy\ncyB0byBvdmVycmlkZSB0aGUgZGVzY3JpcHRpb25zLiBUaGUgZW52aXJvbm1l\nbnQKdmFyaWFibGUgbmFtZXMgYXJlIHRoZSBzYW1lIGFzIHRoZSBrZXlzIGlu\nIHRoZSBKU09OIGZpbGUsIHByZWZpeGVkIHdpdGgKYEdJVEhVQl9NQ1BfYCBh\nbmQgYWxsIHVwcGVyY2FzZS4KCkZvciBleGFtcGxlLCB0byBvdmVycmlkZSB0\naGUgYFRPT0xfQUREX0lTU1VFX0NPTU1FTlRfREVTQ1JJUFRJT05gIHRvb2ws\nIHlvdSBjYW4Kc2V0IHRoZSBmb2xsb3dpbmcgZW52aXJvbm1lbnQgdmFyaWFi\nbGU6CgpgYGBzaApleHBvcnQgR0lUSFVCX01DUF9UT09MX0FERF9JU1NVRV9D\nT01NRU5UX0RFU0NSSVBUSU9OPSJhbiBhbHRlcm5hdGl2ZSBkZXNjcmlwdGlv\nbiIKYGBgCgojIyMgT3ZlcnJpZGluZyBTZXJ2ZXIgTmFtZSBhbmQgVGl0bGUK\nClRoZSBzYW1lIG92ZXJyaWRlIG1lY2hhbmlzbSBjYW4gYmUgdXNlZCB0byBj\ndXN0b21pemUgdGhlIE1DUCBzZXJ2ZXIncyBgbmFtZWAgYW5kCmB0aXRsZWAg\nZmllbGRzIGluIHRoZSBpbml0aWFsaXphdGlvbiByZXNwb25zZS4gVGhpcyBp\ncyB1c2VmdWwgd2hlbiBydW5uaW5nCm11bHRpcGxlIEdpdEh1YiBNQ1AgU2Vy\ndmVyIGluc3RhbmNlcyAoZS5nLiwgb25lIGZvciBnaXRodWIuY29tIGFuZCBv\nbmUgZm9yCkdpdEh1YiBFbnRlcnByaXNlIFNlcnZlcikgc28gdGhhdCBhZ2Vu\ndHMgY2FuIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlbS4KCnwgS2V5IHwgRW52\naXJvbm1lbnQgVmFyaWFibGUgfCBEZWZhdWx0IHwKfC0tLS0tfC0tLS0tLS0t\nLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS18CnwgYFNFUlZFUl9OQU1FYCB8IGBH\nSVRIVUJfTUNQX1NFUlZFUl9OQU1FYCB8IGBnaXRodWItbWNwLXNlcnZlcmAg\nfAp8IGBTRVJWRVJfVElUTEVgIHwgYEdJVEhVQl9NQ1BfU0VSVkVSX1RJVExF\nYCB8IGBHaXRIdWIgTUNQIFNlcnZlcmAgfAoKRm9yIGV4YW1wbGUsIHRvIGNv\nbmZpZ3VyZSBhIHNlcnZlciBpbnN0YW5jZSBmb3IgR2l0SHViIEVudGVycHJp\nc2UgU2VydmVyOgoKYGBganNvbgp7CiAgIlNFUlZFUl9OQU1FIjogImdoZXMt\nbWNwLXNlcnZlciIsCiAgIlNFUlZFUl9USVRMRSI6ICJHSEVTIE1DUCBTZXJ2\nZXIiCn0KYGBgCgpPciB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXM6Cgpg\nYGBzaApleHBvcnQgR0lUSFVCX01DUF9TRVJWRVJfTkFNRT0iZ2hlcy1tY3At\nc2VydmVyIgpleHBvcnQgR0lUSFVCX01DUF9TRVJWRVJfVElUTEU9IkdIRVMg\nTUNQIFNlcnZlciIKYGBgCgojIyBMaWJyYXJ5IFVzYWdlCgpUaGUgZXhwb3J0\nZWQgR28gQVBJIG9mIHRoaXMgbW9kdWxlIHNob3VsZCBjdXJyZW50bHkgYmUg\nY29uc2lkZXJlZCB1bnN0YWJsZSwgYW5kIHN1YmplY3QgdG8gYnJlYWtpbmcg\nY2hhbmdlcy4gSW4gdGhlIGZ1dHVyZSwgd2UgbWF5IG9mZmVyIHN0YWJpbGl0\neTsgcGxlYXNlIGZpbGUgYW4gaXNzdWUgaWYgdGhlcmUgaXMgYSB1c2UgY2Fz\nZSB3aGVyZSB0aGlzIHdvdWxkIGJlIHZhbHVhYmxlLgoKIyMgTGljZW5zZQoK\nVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0\naGUgTUlUIG9wZW4gc291cmNlIGxpY2Vuc2UuIFBsZWFzZSByZWZlciB0byBb\nTUlUXSguL0xJQ0VOU0UpIGZvciB0aGUgZnVsbCB0ZXJtcy4K\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/github/github-mcp-server/contents/README.md?ref=main","git":"https://api.github.com/repos/github/github-mcp-server/git/blobs/da0fb37038451413bba5447bb8c10fb49f10de9b","html":"https://github.com/github/github-mcp-server/blob/main/README.md"}}