{"name":"README.md","path":"README.md","sha":"9527478a0fe7a36f37fc9856ea840275a72bebab","size":106004,"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/9527478a0fe7a36f37fc9856ea840275a72bebab","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\nL21jcC9pbnN0YWxsP25hbWU9Z2l0aHViJmNvbmZpZz0lN0IlMjJjb21tYW5k\nJTIyJTNBJTIyZG9ja2VyJTIyJTJDJTIyYXJncyUyMiUzQSU1QiUyMnJ1biUy\nMiUyQyUyMi1pJTIyJTJDJTIyLS1ybSUyMiUyQyUyMi1wJTIyJTJDJTIyMTI3\nLjAuMC4xJTNBODA4NSUzQTgwODUlMjIlMkMlMjItZSUyMiUyQyUyMkdJVEhV\nQl9PQVVUSF9DQUxMQkFDS19QT1JUJTIyJTJDJTIyZ2hjci5pbyUyRmdpdGh1\nYiUyRmdpdGh1Yi1tY3Atc2VydmVyJTIyJTVEJTJDJTIyZW52JTIyJTNBJTdC\nJTIyR0lUSFVCX09BVVRIX0NBTExCQUNLX1BPUlQlMjIlM0ElMjI4MDg1JTIy\nJTdEJTdEKSBbIVtJbnN0YWxsIHdpdGggRG9ja2VyIGluIFZTIENvZGUgSW5z\naWRlcnNdKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvVlNfQ29kZV9J\nbnNpZGVycy1JbnN0YWxsX1NlcnZlci0yNGJmYTU/c3R5bGU9ZmxhdC1zcXVh\ncmUmbG9nbz12aXN1YWxzdHVkaW9jb2RlJmxvZ29Db2xvcj13aGl0ZSldKGh0\ndHBzOi8vaW5zaWRlcnMudnNjb2RlLmRldi9yZWRpcmVjdC9tY3AvaW5zdGFs\nbD9uYW1lPWdpdGh1YiZjb25maWc9JTdCJTIyY29tbWFuZCUyMiUzQSUyMmRv\nY2tlciUyMiUyQyUyMmFyZ3MlMjIlM0ElNUIlMjJydW4lMjIlMkMlMjItaSUy\nMiUyQyUyMi0tcm0lMjIlMkMlMjItcCUyMiUyQyUyMjEyNy4wLjAuMSUzQTgw\nODUlM0E4MDg1JTIyJTJDJTIyLWUlMjIlMkMlMjJHSVRIVUJfT0FVVEhfQ0FM\nTEJBQ0tfUE9SVCUyMiUyQyUyMmdoY3IuaW8lMkZnaXRodWIlMkZnaXRodWIt\nbWNwLXNlcnZlciUyMiU1RCUyQyUyMmVudiUyMiUzQSU3QiUyMkdJVEhVQl9P\nQVVUSF9DQUxMQkFDS19QT1JUJTIyJTNBJTIyODA4NSUyMiU3RCU3RCZxdWFs\naXR5PWluc2lkZXJzKSBbIVtJbnN0YWxsIHdpdGggRG9ja2VyIGluIFZpc3Vh\nbCBTdHVkaW9dKGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vYmFkZ2UvVmlzdWFs\nX1N0dWRpby1JbnN0YWxsX1NlcnZlci1DMTZGREU/c3R5bGU9ZmxhdC1zcXVh\ncmUmbG9nbz12aXN1YWxzdHVkaW8mbG9nb0NvbG9yPXdoaXRlKV0oaHR0cHM6\nLy9ha2EubXMvdnMvbWNwLWluc3RhbGw/JTdCJTIybmFtZSUyMiUzQSUyMmdp\ndGh1YiUyMiUyQyUyMmNvbW1hbmQlMjIlM0ElMjJkb2NrZXIlMjIlMkMlMjJh\ncmdzJTIyJTNBJTVCJTIycnVuJTIyJTJDJTIyLWklMjIlMkMlMjItLXJtJTIy\nJTJDJTIyLXAlMjIlMkMlMjIxMjcuMC4wLjElM0E4MDg1JTNBODA4NSUyMiUy\nQyUyMi1lJTIyJTJDJTIyR0lUSFVCX09BVVRIX0NBTExCQUNLX1BPUlQlM0Q4\nMDg1JTIyJTJDJTIyZ2hjci5pbyUyRmdpdGh1YiUyRmdpdGh1Yi1tY3Atc2Vy\ndmVyJTIyJTVEJTdEKQoKIyMjIFByZXJlcXVpc2l0ZXMKCjEuIFRvIHJ1biB0\naGUgc2VydmVyIGluIGEgY29udGFpbmVyLCB5b3Ugd2lsbCBuZWVkIHRvIGhh\ndmUgW0RvY2tlcl0oaHR0cHM6Ly93d3cuZG9ja2VyLmNvbS8pIGluc3RhbGxl\nZC4KMi4gT25jZSBEb2NrZXIgaXMgaW5zdGFsbGVkLCB5b3Ugd2lsbCBhbHNv\nIG5lZWQgdG8gZW5zdXJlIERvY2tlciBpcyBydW5uaW5nLiBUaGUgRG9ja2Vy\nIGltYWdlIGlzIGF2YWlsYWJsZSBhdCBgZ2hjci5pby9naXRodWIvZ2l0aHVi\nLW1jcC1zZXJ2ZXJgLiBUaGUgaW1hZ2UgaXMgcHVibGljOyBpZiB5b3UgZ2V0\nIGVycm9ycyBvbiBwdWxsLCB5b3UgbWF5IGhhdmUgYW4gZXhwaXJlZCB0b2tl\nbiBhbmQgbmVlZCB0byBgZG9ja2VyIGxvZ291dCBnaGNyLmlvYC4KMy4gKipB\ndXRoZW50aWNhdGlvbi4qKiBPbiBnaXRodWIuY29tIHlvdSBkb24ndCBuZWVk\nIHRvIGNyZWF0ZSBhbnl0aGluZyB1cCBmcm9udCDigJQgdGhlIG9uZS1jbGlj\nayBidXR0b25zIGFib3ZlIGxvZyB5b3UgaW4gd2l0aCBPQXV0aCBvbiBmaXJz\ndCB1c2UgKGEgYnJvd3Nlci1iYXNlZCBmbG93OyB0aGUgdG9rZW4gaXMga2Vw\ndCBpbiBtZW1vcnkgb25seSkuIFRoZSBEb2NrZXIgYnV0dG9ucyBwdWJsaXNo\nIGEgZml4ZWQgY2FsbGJhY2sgcG9ydCAoYDEyNy4wLjAuMTo4MDg1YCkgc28g\ndGhlIGNvbnRhaW5lcidzIGxvZ2luIGNhbGxiYWNrIGlzIHJlYWNoYWJsZS4g\nU2VlICoqW0xvY2FsIFNlcnZlciBPQXV0aCBMb2dpbl0oZG9jcy9vYXV0aC1s\nb2dpbi5tZCkqKiBmb3IgaG93IGl0IHdvcmtzLCBoZWFkbGVzcy9kZXZpY2Ut\nY29kZSBmYWxsYmFjaywgYW5kIGJyaW5naW5nIHlvdXIgb3duIE9BdXRoIG9y\nIEdpdEh1YiBBcHAgKHJlcXVpcmVkIGZvciBHaXRIdWIgRW50ZXJwcmlzZSBT\nZXJ2ZXIgYW5kIGBnaGUuY29tYCkuCgogICBQcmVmZXIgYSB0b2tlbj8gWW91\nIGNhbiBzdGlsbCBhdXRoZW50aWNhdGUgd2l0aCBhIFtHaXRIdWIgUGVyc29u\nYWwgQWNjZXNzIFRva2VuXShodHRwczovL2dpdGh1Yi5jb20vc2V0dGluZ3Mv\ncGVyc29uYWwtYWNjZXNzLXRva2Vucy9uZXcpIGJ5IHNldHRpbmcgYEdJVEhV\nQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU5gIGluc3RlYWQgKGl0IHRha2VzIHBy\nZWNlZGVuY2Ugb3ZlciBPQXV0aCkuIFRoZSBNQ1Agc2VydmVyIGNhbiB1c2Ug\nbWFueSBvZiB0aGUgR2l0SHViIEFQSXMsIHNvIGVuYWJsZSB0aGUgcGVybWlz\nc2lvbnMgdGhhdCB5b3UgZmVlbCBjb21mb3J0YWJsZSBncmFudGluZyB5b3Vy\nIEFJIHRvb2xzICh0byBsZWFybiBtb3JlIGFib3V0IGFjY2VzcyB0b2tlbnMs\nIHBsZWFzZSBjaGVjayBvdXQgdGhlIFtkb2N1bWVudGF0aW9uXShodHRwczov\nL2RvY3MuZ2l0aHViLmNvbS9lbi9hdXRoZW50aWNhdGlvbi9rZWVwaW5nLXlv\ndXItYWNjb3VudC1hbmQtZGF0YS1zZWN1cmUvbWFuYWdpbmcteW91ci1wZXJz\nb25hbC1hY2Nlc3MtdG9rZW5zKSkuCgo8ZGV0YWlscz48c3VtbWFyeT48Yj5I\nYW5kbGluZyBQQVRzIFNlY3VyZWx5PC9iPjwvc3VtbWFyeT4KCiMjIyBFbnZp\ncm9ubWVudCBWYXJpYWJsZXMgKFJlY29tbWVuZGVkKQoKVG8ga2VlcCB5b3Vy\nIEdpdEh1YiBQQVQgc2VjdXJlIGFuZCByZXVzYWJsZSBhY3Jvc3MgZGlmZmVy\nZW50IE1DUCBob3N0czoKCjEuICoqU3RvcmUgeW91ciBQQVQgaW4gZW52aXJv\nbm1lbnQgdmFyaWFibGVzKioKCiAgIGBgYGJhc2gKICAgZXhwb3J0IEdJVEhV\nQl9QQVQ9eW91cl90b2tlbl9oZXJlCiAgIGBgYAoKICAgT3IgY3JlYXRlIGEg\nYC5lbnZgIGZpbGU6CgogICBgYGBlbnYKICAgR0lUSFVCX1BBVD15b3VyX3Rv\na2VuX2hlcmUKICAgYGBgCgoyLiAqKlByb3RlY3QgeW91ciBgLmVudmAgZmls\nZSoqCgogICBgYGBiYXNoCiAgICMgQWRkIHRvIC5naXRpZ25vcmUgdG8gcHJl\ndmVudCBhY2NpZGVudGFsIGNvbW1pdHMKICAgZWNobyAiLmVudiIgPj4gLmdp\ndGlnbm9yZQogICBgYGAKCjMuICoqUmVmZXJlbmNlIHRoZSB0b2tlbiBpbiBj\nb25maWd1cmF0aW9ucyoqCgogICBgYGBiYXNoCiAgICMgQ0xJIHVzYWdlCiAg\nIGNsYXVkZSBtY3AgYWRkIGdpdGh1YiAtZSBHSVRIVUJfUEVSU09OQUxfQUND\nRVNTX1RPS0VOPSRHSVRIVUJfUEFUIC0tIGRvY2tlciBydW4gLWkgLS1ybSAt\nZSBHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOIGdoY3IuaW8vZ2l0aHVi\nL2dpdGh1Yi1tY3Atc2VydmVyCgogICAjIEluIGNvbmZpZyBmaWxlcyAod2hl\ncmUgc3VwcG9ydGVkKQogICAiZW52IjogewogICAgICJHSVRIVUJfUEVSU09O\nQUxfQUNDRVNTX1RPS0VOIjogIiRHSVRIVUJfUEFUIgogICB9CiAgIGBgYAoK\nPiAqKk5vdGUqKjogRW52aXJvbm1lbnQgdmFyaWFibGUgc3VwcG9ydCB2YXJp\nZXMgYnkgaG9zdCBhcHAgYW5kIElERS4gU29tZSBhcHBsaWNhdGlvbnMgKGxp\na2UgV2luZHN1cmYpIHJlcXVpcmUgaGFyZGNvZGVkIHRva2VucyBpbiBjb25m\naWcgZmlsZXMuCgojIyMgVG9rZW4gU2VjdXJpdHkgQmVzdCBQcmFjdGljZXMK\nCi0gKipNaW5pbXVtIHNjb3BlcyoqOiBPbmx5IGdyYW50IG5lY2Vzc2FyeSBw\nZXJtaXNzaW9ucwogIC0gYHJlcG9gIC0gUmVwb3NpdG9yeSBvcGVyYXRpb25z\nCiAgLSBgcmVhZDpwYWNrYWdlc2AgLSBEb2NrZXIgaW1hZ2UgYWNjZXNzCiAg\nLSBgcmVhZDpvcmdgIC0gT3JnYW5pemF0aW9uIHRlYW0gYWNjZXNzCi0gKipT\nZXBhcmF0ZSB0b2tlbnMqKjogVXNlIGRpZmZlcmVudCBQQVRzIGZvciBkaWZm\nZXJlbnQgcHJvamVjdHMvZW52aXJvbm1lbnRzCi0gKipSZWd1bGFyIHJvdGF0\naW9uKio6IFVwZGF0ZSB0b2tlbnMgcGVyaW9kaWNhbGx5Ci0gKipOZXZlciBj\nb21taXQqKjogS2VlcCB0b2tlbnMgb3V0IG9mIHZlcnNpb24gY29udHJvbAot\nICoqRmlsZSBwZXJtaXNzaW9ucyoqOiBSZXN0cmljdCBhY2Nlc3MgdG8gY29u\nZmlnIGZpbGVzIGNvbnRhaW5pbmcgdG9rZW5zCgogIGBgYGJhc2gKICBjaG1v\nZCA2MDAgfi8ueW91ci1hcHAvY29uZmlnLmpzb24KICBgYGAKCjwvZGV0YWls\ncz4KCiMjIyBHaXRIdWIgRW50ZXJwcmlzZSBTZXJ2ZXIgYW5kIEVudGVycHJp\nc2UgQ2xvdWQgd2l0aCBkYXRhIHJlc2lkZW5jeSAoZ2hlLmNvbSkKClRoZSBm\nbGFnIGAtLWdoLWhvc3RgIGFuZCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUg\nYEdJVEhVQl9IT1NUYCBjYW4gYmUgdXNlZCB0byBzZXQKdGhlIGhvc3RuYW1l\nIGZvciBHaXRIdWIgRW50ZXJwcmlzZSBTZXJ2ZXIgb3IgR2l0SHViIEVudGVy\ncHJpc2UgQ2xvdWQgd2l0aCBkYXRhIHJlc2lkZW5jeS4KCi0gRm9yIEdpdEh1\nYiBFbnRlcnByaXNlIFNlcnZlciwgcHJlZml4IHRoZSBob3N0bmFtZSB3aXRo\nIHRoZSBgaHR0cHM6Ly9gIFVSSSBzY2hlbWUuIEhUVFBTIGlzIHJlcXVpcmVk\nIGFuZCBlbmZvcmNlZDogbm9uLUhUVFBTIGhvc3RzIGFyZSByZWZ1c2VkIHNv\nIHRoYXQgY3JlZGVudGlhbHMgYXJlIG5ldmVyIHNlbnQgb3ZlciBjbGVhcnRl\neHQgKHRoZSBvbmx5IGV4Y2VwdGlvbiBpcyBhIGxvb3BiYWNrIGhvc3Qgc3Vj\naCBhcyBgaHR0cDovL2xvY2FsaG9zdGAgZm9yIGxvY2FsIGRldmVsb3BtZW50\nKS4KLSBGb3IgR2l0SHViIEVudGVycHJpc2UgQ2xvdWQgd2l0aCBkYXRhIHJl\nc2lkZW5jeSwgdXNlIGBodHRwczovL1lPVVJTVUJET01BSU4uZ2hlLmNvbWAg\nYXMgdGhlIGhvc3RuYW1lLgoKYGBgIGpzb24KImdpdGh1YiI6IHsKICAgICJj\nb21tYW5kIjogImRvY2tlciIsCiAgICAiYXJncyI6IFsKICAgICJydW4iLAog\nICAgIi1pIiwKICAgICItLXJtIiwKICAgICItZSIsCiAgICAiR0lUSFVCX1BF\nUlNPTkFMX0FDQ0VTU19UT0tFTiIsCiAgICAiLWUiLAogICAgIkdJVEhVQl9I\nT1NUIiwKICAgICJnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlciIK\nICAgIF0sCiAgICAiZW52IjogewogICAgICAgICJHSVRIVUJfUEVSU09OQUxf\nQUNDRVNTX1RPS0VOIjogIiR7aW5wdXQ6Z2l0aHViX3Rva2VufSIsCiAgICAg\nICAgIkdJVEhVQl9IT1NUIjogImh0dHBzOi8vPHlvdXIgR0hFUyBvciBnaGUu\nY29tIGRvbWFpbiBuYW1lPiIKICAgIH0KfQpgYGAKCiMjIEluc3RhbGxhdGlv\nbgoKIyMjIEluc3RhbGwgaW4gR2l0SHViIENvcGlsb3Qgb24gVlMgQ29kZQoK\nRm9yIHF1aWNrIGluc3RhbGxhdGlvbiwgdXNlIG9uZSBvZiB0aGUgb25lLWNs\naWNrIGluc3RhbGwgYnV0dG9ucyBhYm92ZS4gT25jZSB5b3UgY29tcGxldGUg\ndGhhdCBmbG93LCB0b2dnbGUgQWdlbnQgbW9kZSAobG9jYXRlZCBieSB0aGUg\nQ29waWxvdCBDaGF0IHRleHQgaW5wdXQpIGFuZCB0aGUgc2VydmVyIHdpbGwg\nc3RhcnQuCgpNb3JlIGFib3V0IHVzaW5nIE1DUCBzZXJ2ZXIgdG9vbHMgaW4g\nVlMgQ29kZSdzIFthZ2VudCBtb2RlIGRvY3VtZW50YXRpb25dKGh0dHBzOi8v\nY29kZS52aXN1YWxzdHVkaW8uY29tL2RvY3MvY29waWxvdC9jaGF0L21jcC1z\nZXJ2ZXJzKS4KCkluc3RhbGwgaW4gR2l0SHViIENvcGlsb3Qgb24gb3RoZXIg\nSURFcyAoSmV0QnJhaW5zLCBWaXN1YWwgU3R1ZGlvLCBFY2xpcHNlLCBldGMu\nKQoKQWRkIG9uZSBvZiB0aGUgZm9sbG93aW5nIEpTT04gYmxvY2tzIHRvIHlv\ndXIgSURFJ3MgTUNQIHNldHRpbmdzLgoKKipMb2cgaW4gd2l0aCBPQXV0aCAo\nbm8gdG9rZW4gdG8gY3JlYXRlIG9yIHN0b3JlKS4qKiBPbiBnaXRodWIuY29t\nIHRoZSBvZmZpY2lhbCBpbWFnZSBhbHJlYWR5IGluY2x1ZGVzIHRoZSBhcHAg\nY3JlZGVudGlhbHMsIHNvIHlvdSBwcm92aWRlIG5vbmUgeW91cnNlbGY6IGl0\nIHJ1bnMgYSBicm93c2VyLWJhc2VkIGxvZ2luIG9uIGZpcnN0IHVzZSBhbmQg\na2VlcHMgdGhlIHJlc3VsdGluZyB0b2tlbiAqKmluIG1lbW9yeSBvbmx5Kiou\nIEluIERvY2tlciB0aGlzIG5lZWRzIGEgZml4ZWQgY2FsbGJhY2sgcG9ydCBw\ndWJsaXNoZWQgdG8gbG9vcGJhY2sgc28gdGhlIGNvbnRhaW5lcidzIGxvZ2lu\nIGNhbGxiYWNrIGlzIHJlYWNoYWJsZToKCmBgYGpzb24KewogICJtY3AiOiB7\nCiAgICAic2VydmVycyI6IHsKICAgICAgImdpdGh1YiI6IHsKICAgICAgICAi\nY29tbWFuZCI6ICJkb2NrZXIiLAogICAgICAgICJhcmdzIjogWwogICAgICAg\nICAgInJ1biIsCiAgICAgICAgICAiLWkiLAogICAgICAgICAgIi0tcm0iLAog\nICAgICAgICAgIi1wIiwKICAgICAgICAgICIxMjcuMC4wLjE6ODA4NTo4MDg1\nIiwKICAgICAgICAgICItZSIsCiAgICAgICAgICAiR0lUSFVCX09BVVRIX0NB\nTExCQUNLX1BPUlQiLAogICAgICAgICAgImdoY3IuaW8vZ2l0aHViL2dpdGh1\nYi1tY3Atc2VydmVyIgogICAgICAgIF0sCiAgICAgICAgImVudiI6IHsKICAg\nICAgICAgICJHSVRIVUJfT0FVVEhfQ0FMTEJBQ0tfUE9SVCI6ICI4MDg1Igog\nICAgICAgIH0KICAgICAgfQogICAgfQogIH0KfQpgYGAKClNlZSAqKltMb2Nh\nbCBTZXJ2ZXIgT0F1dGggTG9naW5dKGRvY3Mvb2F1dGgtbG9naW4ubWQpKiog\nZm9yIHRoZSBuYXRpdmUtYmluYXJ5IGZsb3cgKG5vIGZpeGVkIHBvcnQgbmVl\nZGVkKSwgdGhlIGhlYWRsZXNzL2RldmljZS1jb2RlIGZhbGxiYWNrLCBHaXRI\ndWIgRW50ZXJwcmlzZSBTZXJ2ZXIgLyBgZ2hlLmNvbWAsIGFuZCBicmluZ2lu\nZyB5b3VyIG93biBPQXV0aCBvciBHaXRIdWIgQXBwLgoKRm9yIG5vbi1pbnRl\ncmFjdGl2ZSBzdGRpbyBkZXBsb3ltZW50cywgc2VlICoqW0dpdEh1YiBBcHAg\nQXV0aGVudGljYXRpb25dKGRvY3MvZ2l0aHViLWFwcC1hdXRoLm1kKSoqLgoK\nKipPciBhdXRoZW50aWNhdGUgd2l0aCBhIFBlcnNvbmFsIEFjY2VzcyBUb2tl\nbi4qKiBTZXQgYEdJVEhVQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU5gIGluc3Rl\nYWQgKGl0IHRha2VzIHByZWNlZGVuY2Ugb3ZlciBPQXV0aCk6CgpgYGBqc29u\nCnsKICAibWNwIjogewogICAgImlucHV0cyI6IFsKICAgICAgewogICAgICAg\nICJ0eXBlIjogInByb21wdFN0cmluZyIsCiAgICAgICAgImlkIjogImdpdGh1\nYl90b2tlbiIsCiAgICAgICAgImRlc2NyaXB0aW9uIjogIkdpdEh1YiBQZXJz\nb25hbCBBY2Nlc3MgVG9rZW4iLAogICAgICAgICJwYXNzd29yZCI6IHRydWUK\nICAgICAgfQogICAgXSwKICAgICJzZXJ2ZXJzIjogewogICAgICAiZ2l0aHVi\nIjogewogICAgICAgICJjb21tYW5kIjogImRvY2tlciIsCiAgICAgICAgImFy\nZ3MiOiBbCiAgICAgICAgICAicnVuIiwKICAgICAgICAgICItaSIsCiAgICAg\nICAgICAiLS1ybSIsCiAgICAgICAgICAiLWUiLAogICAgICAgICAgIkdJVEhV\nQl9QRVJTT05BTF9BQ0NFU1NfVE9LRU4iLAogICAgICAgICAgImdoY3IuaW8v\nZ2l0aHViL2dpdGh1Yi1tY3Atc2VydmVyIgogICAgICAgIF0sCiAgICAgICAg\nImVudiI6IHsKICAgICAgICAgICJHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RP\nS0VOIjogIiR7aW5wdXQ6Z2l0aHViX3Rva2VufSIKICAgICAgICB9CiAgICAg\nIH0KICAgIH0KICB9Cn0KYGBgCgpPcHRpb25hbGx5LCB5b3UgY2FuIGFkZCBh\nIHNpbWlsYXIgZXhhbXBsZSAoaS5lLiB3aXRob3V0IHRoZSBtY3Aga2V5KSB0\nbyBhIGZpbGUgY2FsbGVkIGAudnNjb2RlL21jcC5qc29uYCBpbiB5b3VyIHdv\ncmtzcGFjZS4gVGhpcyB3aWxsIGFsbG93IHlvdSB0byBzaGFyZSB0aGUgY29u\nZmlndXJhdGlvbiB3aXRoIG90aGVyIGhvc3QgYXBwbGljYXRpb25zIHRoYXQg\nYWNjZXB0IHRoZSBzYW1lIGZvcm1hdC4KCjxkZXRhaWxzPgo8c3VtbWFyeT48\nYj5FeGFtcGxlIEpTT04gYmxvY2sgd2l0aG91dCB0aGUgTUNQIGtleSBpbmNs\ndWRlZDwvYj48L3N1bW1hcnk+Cjxicj4KCmBgYGpzb24KewogICJpbnB1dHMi\nOiBbCiAgICB7CiAgICAgICJ0eXBlIjogInByb21wdFN0cmluZyIsCiAgICAg\nICJpZCI6ICJnaXRodWJfdG9rZW4iLAogICAgICAiZGVzY3JpcHRpb24iOiAi\nR2l0SHViIFBlcnNvbmFsIEFjY2VzcyBUb2tlbiIsCiAgICAgICJwYXNzd29y\nZCI6IHRydWUKICAgIH0KICBdLAogICJzZXJ2ZXJzIjogewogICAgImdpdGh1\nYiI6IHsKICAgICAgImNvbW1hbmQiOiAiZG9ja2VyIiwKICAgICAgImFyZ3Mi\nOiBbCiAgICAgICAgInJ1biIsCiAgICAgICAgIi1pIiwKICAgICAgICAiLS1y\nbSIsCiAgICAgICAgIi1lIiwKICAgICAgICAiR0lUSFVCX1BFUlNPTkFMX0FD\nQ0VTU19UT0tFTiIsCiAgICAgICAgImdoY3IuaW8vZ2l0aHViL2dpdGh1Yi1t\nY3Atc2VydmVyIgogICAgICBdLAogICAgICAiZW52IjogewogICAgICAgICJH\nSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOIjogIiR7aW5wdXQ6Z2l0aHVi\nX3Rva2VufSIKICAgICAgfQogICAgfQogIH0KfQpgYGAKCjwvZGV0YWlscz4K\nCiMjIyBJbnN0YWxsIGluIE90aGVyIE1DUCBIb3N0cwoKRm9yIG90aGVyIE1D\nUCBob3N0IGFwcGxpY2F0aW9ucywgcGxlYXNlIHJlZmVyIHRvIG91ciBpbnN0\nYWxsYXRpb24gZ3VpZGVzOgoKLSAqKltDb3BpbG90IENMSV0oZG9jcy9pbnN0\nYWxsYXRpb24tZ3VpZGVzL2luc3RhbGwtY29waWxvdC1jbGkubWQpKiogLSBJ\nbnN0YWxsYXRpb24gZ3VpZGUgZm9yIEdpdEh1YiBDb3BpbG90IENMSQotICoq\nW0dpdEh1YiBDb3BpbG90IGluIG90aGVyIElERXNdKC9kb2NzL2luc3RhbGxh\ndGlvbi1ndWlkZXMvaW5zdGFsbC1vdGhlci1jb3BpbG90LWlkZXMubWQpKiog\nLSBJbnN0YWxsYXRpb24gZm9yIEpldEJyYWlucywgVmlzdWFsIFN0dWRpbywg\nRWNsaXBzZSwgYW5kIFhjb2RlIHdpdGggR2l0SHViIENvcGlsb3QKLSAqKltD\nbGF1ZGUgQ29kZSAmIENsYXVkZSBEZXNrdG9wXShkb2NzL2luc3RhbGxhdGlv\nbi1ndWlkZXMvaW5zdGFsbC1jbGF1ZGUubWQpKiogLSBJbnN0YWxsYXRpb24g\nZ3VpZGUgZm9yIENsYXVkZSBDb2RlIGFuZCBDbGF1ZGUgRGVza3RvcAotICoq\nW0N1cnNvcl0oZG9jcy9pbnN0YWxsYXRpb24tZ3VpZGVzL2luc3RhbGwtY3Vy\nc29yLm1kKSoqIC0gSW5zdGFsbGF0aW9uIGd1aWRlIGZvciBDdXJzb3IgSURF\nCi0gKipbR29vZ2xlIEdlbWluaSBDTEldKGRvY3MvaW5zdGFsbGF0aW9uLWd1\naWRlcy9pbnN0YWxsLWdlbWluaS1jbGkubWQpKiogLSBJbnN0YWxsYXRpb24g\nZ3VpZGUgZm9yIEdvb2dsZSBHZW1pbmkgQ0xJCi0gKipbT3BlbkNvZGVdKGRv\nY3MvaW5zdGFsbGF0aW9uLWd1aWRlcy9pbnN0YWxsLW9wZW5jb2RlLm1kKSoq\nIC0gSW5zdGFsbGF0aW9uIGd1aWRlIGZvciB0aGUgT3BlbkNvZGUgdGVybWlu\nYWwgYWdlbnQKLSAqKltXaW5kc3VyZl0oZG9jcy9pbnN0YWxsYXRpb24tZ3Vp\nZGVzL2luc3RhbGwtd2luZHN1cmYubWQpKiogLSBJbnN0YWxsYXRpb24gZ3Vp\nZGUgZm9yIFdpbmRzdXJmIElERQotICoqW1plZF0oZG9jcy9pbnN0YWxsYXRp\nb24tZ3VpZGVzL2luc3RhbGwtemVkLm1kKSoqIC0gSW5zdGFsbGF0aW9uIGd1\naWRlIGZvciBaZWQgZWRpdG9yCgpGb3IgYSBjb21wbGV0ZSBvdmVydmlldyBv\nZiBhbGwgaW5zdGFsbGF0aW9uIG9wdGlvbnMsIHNlZSBvdXIgKipbSW5zdGFs\nbGF0aW9uIEd1aWRlcyBJbmRleF0oZG9jcy9pbnN0YWxsYXRpb24tZ3VpZGVz\nKSoqLgoKPiAqKk5vdGU6KiogQW55IGhvc3QgYXBwbGljYXRpb24gdGhhdCBz\ndXBwb3J0cyBsb2NhbCBNQ1Agc2VydmVycyBzaG91bGQgYmUgYWJsZSB0byBh\nY2Nlc3MgdGhlIGxvY2FsIEdpdEh1YiBNQ1Agc2VydmVyLiBIb3dldmVyLCB0\naGUgc3BlY2lmaWMgY29uZmlndXJhdGlvbiBwcm9jZXNzLCBzeW50YXggYW5k\nIHN0YWJpbGl0eSBvZiB0aGUgaW50ZWdyYXRpb24gd2lsbCB2YXJ5IGJ5IGhv\nc3QgYXBwbGljYXRpb24uIFdoaWxlIG1hbnkgbWF5IGZvbGxvdyBhIHNpbWls\nYXIgZm9ybWF0IHRvIHRoZSBleGFtcGxlcyBhYm92ZSwgdGhpcyBpcyBub3Qg\nZ3VhcmFudGVlZC4gUGxlYXNlIHJlZmVyIHRvIHlvdXIgaG9zdCBhcHBsaWNh\ndGlvbidzIGRvY3VtZW50YXRpb24gZm9yIHRoZSBjb3JyZWN0IE1DUCBjb25m\naWd1cmF0aW9uIHN5bnRheCBhbmQgc2V0dXAgcHJvY2Vzcy4KCiMjIyBCdWls\nZCBmcm9tIHNvdXJjZQoKSWYgeW91IGRvbid0IGhhdmUgRG9ja2VyLCB5b3Ug\nY2FuIHVzZSBgZ28gYnVpbGRgIHRvIGJ1aWxkIHRoZSBiaW5hcnkgaW4gdGhl\nCmBjbWQvZ2l0aHViLW1jcC1zZXJ2ZXJgIGRpcmVjdG9yeSwgYW5kIHVzZSB0\naGUgYGdpdGh1Yi1tY3Atc2VydmVyIHN0ZGlvYCBjb21tYW5kIHdpdGggdGhl\nIGBHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOYCBlbnZpcm9ubWVudCB2\nYXJpYWJsZSBzZXQgdG8geW91ciB0b2tlbi4gVG8gc3BlY2lmeSB0aGUgb3V0\ncHV0IGxvY2F0aW9uIG9mIHRoZSBidWlsZCwgdXNlIHRoZSBgLW9gIGZsYWcu\nIFlvdSBzaG91bGQgY29uZmlndXJlIHlvdXIgc2VydmVyIHRvIHVzZSB0aGUg\nYnVpbHQgZXhlY3V0YWJsZSBhcyBpdHMgYGNvbW1hbmRgLiBGb3IgZXhhbXBs\nZToKCmBgYEpTT04KewogICJtY3AiOiB7CiAgICAic2VydmVycyI6IHsKICAg\nICAgImdpdGh1YiI6IHsKICAgICAgICAiY29tbWFuZCI6ICIvcGF0aC90by9n\naXRodWItbWNwLXNlcnZlciIsCiAgICAgICAgImFyZ3MiOiBbInN0ZGlvIl0s\nCiAgICAgICAgImVudiI6IHsKICAgICAgICAgICJHSVRIVUJfUEVSU09OQUxf\nQUNDRVNTX1RPS0VOIjogIjxZT1VSX1RPS0VOPiIKICAgICAgICB9CiAgICAg\nIH0KICAgIH0KICB9Cn0KYGBgCgojIyMgQ0xJIHV0aWxpdGllcwoKVGhlIGBn\naXRodWItbWNwLXNlcnZlcmAgYmluYXJ5IGluY2x1ZGVzIGEgZmV3IENMSSBz\ndWJjb21tYW5kcyB0aGF0IGFyZSBoZWxwZnVsIGZvciBkZWJ1Z2dpbmcgYW5k\nIGV4cGxvcmluZyB0aGUgc2VydmVyLgoKLSBgZ2l0aHViLW1jcC1zZXJ2ZXIg\ndG9vbC1zZWFyY2ggIjxxdWVyeT4iYCBzZWFyY2hlcyB0b29scyBieSBuYW1l\nLCBkZXNjcmlwdGlvbiwgYW5kIGlucHV0IHBhcmFtZXRlciBuYW1lcy4gVXNl\nIGAtLW1heC1yZXN1bHRzYCB0byByZXR1cm4gbW9yZSBtYXRjaGVzLgpFeGFt\ncGxlIChjb2xvciBvdXRwdXQgcmVxdWlyZXMgYSBUVFk7IHVzZSBgZG9ja2Vy\nIHJ1biAtdGAgKG9yIGAtaXRgKSB3aGVuIHJ1bm5pbmcgaW4gRG9ja2VyKToK\nYGBgYmFzaApkb2NrZXIgcnVuIC1pdCAtLXJtIGdoY3IuaW8vZ2l0aHViL2dp\ndGh1Yi1tY3Atc2VydmVyIHRvb2wtc2VhcmNoICJpc3N1ZSIgLS1tYXgtcmVz\ndWx0cyA1CmdpdGh1Yi1tY3Atc2VydmVyIHRvb2wtc2VhcmNoICJpc3N1ZSIg\nLS1tYXgtcmVzdWx0cyA1CmBgYAoKIyMgVG9vbCBDb25maWd1cmF0aW9uCgpU\naGUgR2l0SHViIE1DUCBTZXJ2ZXIgc3VwcG9ydHMgZW5hYmxpbmcgb3IgZGlz\nYWJsaW5nIHNwZWNpZmljIGdyb3VwcyBvZiBmdW5jdGlvbmFsaXRpZXMgdmlh\nIHRoZSBgLS10b29sc2V0c2AgZmxhZy4gVGhpcyBhbGxvd3MgeW91IHRvIGNv\nbnRyb2wgd2hpY2ggR2l0SHViIEFQSSBjYXBhYmlsaXRpZXMgYXJlIGF2YWls\nYWJsZSB0byB5b3VyIEFJIHRvb2xzLiBFbmFibGluZyBvbmx5IHRoZSB0b29s\nc2V0cyB0aGF0IHlvdSBuZWVkIGNhbiBoZWxwIHRoZSBMTE0gd2l0aCB0b29s\nIGNob2ljZSBhbmQgcmVkdWNlIHRoZSBjb250ZXh0IHNpemUuCgpfVG9vbHNl\ndHMgYXJlIG5vdCBsaW1pdGVkIHRvIFRvb2xzLiBSZWxldmFudCBNQ1AgUmVz\nb3VyY2VzIGFuZCBQcm9tcHRzIGFyZSBhbHNvIGluY2x1ZGVkIHdoZXJlIGFw\ncGxpY2FibGUuXwoKV2hlbiBubyB0b29sc2V0cyBhcmUgc3BlY2lmaWVkLCBb\nZGVmYXVsdCB0b29sc2V0c10oI2RlZmF1bHQtdG9vbHNldCkgYXJlIHVzZWQu\nCgo+ICoqTG9va2luZyBmb3IgZXhhbXBsZXM/KiogU2VlIHRoZSBbU2VydmVy\nIENvbmZpZ3VyYXRpb24gR3VpZGVdKC4vZG9jcy9zZXJ2ZXItY29uZmlndXJh\ndGlvbi5tZCkgZm9yIGNvbW1vbiByZWNpcGVzIGxpa2UgbWluaW1hbCBzZXR1\ncHMsIHJlYWQtb25seSBtb2RlLCBhbmQgY29tYmluaW5nIHRvb2xzIHdpdGgg\ndG9vbHNldHMuCgojIyMjIFNwZWNpZnlpbmcgVG9vbHNldHMKClRvIHNwZWNp\nZnkgdG9vbHNldHMgeW91IHdhbnQgYXZhaWxhYmxlIHRvIHRoZSBMTE0sIHlv\ndSBjYW4gcGFzcyBhbiBhbGxvdy1saXN0IGluIHR3byB3YXlzOgoKMS4gKipV\nc2luZyBDb21tYW5kIExpbmUgQXJndW1lbnQqKjoKCiAgIGBgYGJhc2gKICAg\nZ2l0aHViLW1jcC1zZXJ2ZXIgLS10b29sc2V0cyByZXBvcyxpc3N1ZXMscHVs\nbF9yZXF1ZXN0cyxhY3Rpb25zLGNvZGVfc2VjdXJpdHkKICAgYGBgCgoyLiAq\nKlVzaW5nIEVudmlyb25tZW50IFZhcmlhYmxlKio6CgogICBgYGBiYXNoCiAg\nIEdJVEhVQl9UT09MU0VUUz0icmVwb3MsaXNzdWVzLHB1bGxfcmVxdWVzdHMs\nYWN0aW9ucyxjb2RlX3NlY3VyaXR5IiAuL2dpdGh1Yi1tY3Atc2VydmVyCiAg\nIGBgYAoKVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGBHSVRIVUJfVE9PTFNF\nVFNgIHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0aGUgY29tbWFuZCBsaW5lIGFy\nZ3VtZW50IGlmIGJvdGggYXJlIHByb3ZpZGVkLgoKIyMjIyBTcGVjaWZ5aW5n\nIEluZGl2aWR1YWwgVG9vbHMKCllvdSBjYW4gYWxzbyBjb25maWd1cmUgc3Bl\nY2lmaWMgdG9vbHMgdXNpbmcgdGhlIGAtLXRvb2xzYCBmbGFnLiBUb29scyBj\nYW4gYmUgdXNlZCBpbmRlcGVuZGVudGx5IG9yIGNvbWJpbmVkIHdpdGggdG9v\nbHNldHMgZm9yIGZpbmUtZ3JhaW5lZCBjb250cm9sLgoKMS4gKipVc2luZyBD\nb21tYW5kIExpbmUgQXJndW1lbnQqKjoKCiAgIGBgYGJhc2gKICAgZ2l0aHVi\nLW1jcC1zZXJ2ZXIgLS10b29scyBnZXRfZmlsZV9jb250ZW50cyxpc3N1ZV9y\nZWFkLGNyZWF0ZV9wdWxsX3JlcXVlc3QKICAgYGBgCgoyLiAqKlVzaW5nIEVu\ndmlyb25tZW50IFZhcmlhYmxlKio6CgogICBgYGBiYXNoCiAgIEdJVEhVQl9U\nT09MUz0iZ2V0X2ZpbGVfY29udGVudHMsaXNzdWVfcmVhZCxjcmVhdGVfcHVs\nbF9yZXF1ZXN0IiAuL2dpdGh1Yi1tY3Atc2VydmVyCiAgIGBgYAoKMy4gKipD\nb21iaW5pbmcgd2l0aCBUb29sc2V0cyoqIChhZGRpdGl2ZSk6CgogICBgYGBi\nYXNoCiAgIGdpdGh1Yi1tY3Atc2VydmVyIC0tdG9vbHNldHMgcmVwb3MsaXNz\ndWVzIC0tdG9vbHMgZ2V0X2dpc3QKICAgYGBgCgogICBUaGlzIHJlZ2lzdGVy\ncyBhbGwgdG9vbHMgZnJvbSBgcmVwb3NgIGFuZCBgaXNzdWVzYCB0b29sc2V0\ncywgcGx1cyBgZ2V0X2dpc3RgLgoKKipJbXBvcnRhbnQgTm90ZXM6KioKCi0g\nVG9vbHMgYW5kIHRvb2xzZXRzIGNhbiBiZSB1c2VkIHRvZ2V0aGVyCi0gUmVh\nZC1vbmx5IG1vZGUgdGFrZXMgcHJpb3JpdHk6IHdyaXRlIHRvb2xzIGFyZSBz\na2lwcGVkIGlmIGAtLXJlYWQtb25seWAgaXMgc2V0LCBldmVuIGlmIGV4cGxp\nY2l0bHkgcmVxdWVzdGVkIHZpYSBgLS10b29sc2AKLSBUb29sIG5hbWVzIG11\nc3QgbWF0Y2ggZXhhY3RseSAoZS5nLiwgYGdldF9maWxlX2NvbnRlbnRzYCwg\nbm90IGBnZXRGaWxlQ29udGVudHNgKS4gSW52YWxpZCB0b29sIG5hbWVzIHdp\nbGwgY2F1c2UgdGhlIHNlcnZlciB0byBmYWlsIGF0IHN0YXJ0dXAgd2l0aCBh\nbiBlcnJvciBtZXNzYWdlCi0gV2hlbiB0b29scyBhcmUgcmVuYW1lZCwgb2xk\nIG5hbWVzIGFyZSBwcmVzZXJ2ZWQgYXMgYWxpYXNlcyBmb3IgYmFja3dhcmQg\nY29tcGF0aWJpbGl0eS4gU2VlIFtUb29sIFJlbmFtaW5nXShkb2NzL3Rvb2wt\ncmVuYW1pbmcubWQpIGZvciBkZXRhaWxzLgoKIyMjIFVzaW5nIFRvb2xzZXRz\nIFdpdGggRG9ja2VyCgpXaGVuIHVzaW5nIERvY2tlciwgeW91IGNhbiBwYXNz\nIHRoZSB0b29sc2V0cyBhcyBlbnZpcm9ubWVudCB2YXJpYWJsZXM6CgpgYGBi\nYXNoCmRvY2tlciBydW4gLWkgLS1ybSBcCiAgLWUgR0lUSFVCX1BFUlNPTkFM\nX0FDQ0VTU19UT0tFTj08eW91ci10b2tlbj4gXAogIC1lIEdJVEhVQl9UT09M\nU0VUUz0icmVwb3MsaXNzdWVzLHB1bGxfcmVxdWVzdHMsYWN0aW9ucyxjb2Rl\nX3NlY3VyaXR5IiBcCiAgZ2hjci5pby9naXRodWIvZ2l0aHViLW1jcC1zZXJ2\nZXIKYGBgCgojIyMgVXNpbmcgVG9vbHMgV2l0aCBEb2NrZXIKCldoZW4gdXNp\nbmcgRG9ja2VyLCB5b3UgY2FuIHBhc3Mgc3BlY2lmaWMgdG9vbHMgYXMgZW52\naXJvbm1lbnQgdmFyaWFibGVzLiBZb3UgY2FuIGFsc28gY29tYmluZSB0b29s\ncyB3aXRoIHRvb2xzZXRzOgoKYGBgYmFzaAojIFRvb2xzIG9ubHkKZG9ja2Vy\nIHJ1biAtaSAtLXJtIFwKICAtZSBHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RP\nS0VOPTx5b3VyLXRva2VuPiBcCiAgLWUgR0lUSFVCX1RPT0xTPSJnZXRfZmls\nZV9jb250ZW50cyxpc3N1ZV9yZWFkLGNyZWF0ZV9wdWxsX3JlcXVlc3QiIFwK\nICBnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcgoKIyBUb29scyBj\nb21iaW5lZCB3aXRoIHRvb2xzZXRzIChhZGRpdGl2ZSkKZG9ja2VyIHJ1biAt\naSAtLXJtIFwKICAtZSBHSVRIVUJfUEVSU09OQUxfQUNDRVNTX1RPS0VOPTx5\nb3VyLXRva2VuPiBcCiAgLWUgR0lUSFVCX1RPT0xTRVRTPSJyZXBvcyxpc3N1\nZXMiIFwKICAtZSBHSVRIVUJfVE9PTFM9ImdldF9naXN0IiBcCiAgZ2hjci5p\nby9naXRodWIvZ2l0aHViLW1jcC1zZXJ2ZXIKYGBgCgojIyMgU3BlY2lhbCB0\nb29sc2V0cwoKIyMjIyAiYWxsIiB0b29sc2V0CgpUaGUgc3BlY2lhbCB0b29s\nc2V0IGBhbGxgIGNhbiBiZSBwcm92aWRlZCB0byBlbmFibGUgYWxsIGF2YWls\nYWJsZSB0b29sc2V0cyByZWdhcmRsZXNzIG9mIGFueSBvdGhlciBjb25maWd1\ncmF0aW9uOgoKYGBgYmFzaAouL2dpdGh1Yi1tY3Atc2VydmVyIC0tdG9vbHNl\ndHMgYWxsCmBgYAoKT3IgdXNpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxl\nOgoKYGBgYmFzaApHSVRIVUJfVE9PTFNFVFM9ImFsbCIgLi9naXRodWItbWNw\nLXNlcnZlcgpgYGAKCiMjIyMgImRlZmF1bHQiIHRvb2xzZXQKClRoZSBkZWZh\ndWx0IHRvb2xzZXQgYGRlZmF1bHRgIGlzIHRoZSBjb25maWd1cmF0aW9uIHRo\nYXQgZ2V0cyBwYXNzZWQgdG8gdGhlIHNlcnZlciBpZiBubyB0b29sc2V0cyBh\ncmUgc3BlY2lmaWVkLgoKVGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbiBpczoK\nCi0gY29udGV4dAotIHJlcG9zCi0gaXNzdWVzCi0gcHVsbF9yZXF1ZXN0cwot\nIHVzZXJzCgpUbyBrZWVwIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gYW5k\nIGFkZCBhZGRpdGlvbmFsIHRvb2xzZXRzOgoKYGBgYmFzaApHSVRIVUJfVE9P\nTFNFVFM9ImRlZmF1bHQsc3RhcmdhemVycyIgLi9naXRodWItbWNwLXNlcnZl\ncgpgYGAKCiMjIyBJbnNpZGVycyBNb2RlCgpUaGUgbG9jYWwgR2l0SHViIE1D\nUCBTZXJ2ZXIgb2ZmZXJzIGFuIGluc2lkZXJzIHZlcnNpb24gd2l0aCBlYXJs\neSBhY2Nlc3MgdG8gbmV3IGZlYXR1cmVzIGFuZCBleHBlcmltZW50YWwgdG9v\nbHMuCgoxLiAqKlVzaW5nIENvbW1hbmQgTGluZSBBcmd1bWVudCoqOgoKICAg\nYGBgYmFzaAogICAuL2dpdGh1Yi1tY3Atc2VydmVyIC0taW5zaWRlcnMKICAg\nYGBgCgoyLiAqKlVzaW5nIEVudmlyb25tZW50IFZhcmlhYmxlKio6CgogICBg\nYGBiYXNoCiAgIEdJVEhVQl9JTlNJREVSUz10cnVlIC4vZ2l0aHViLW1jcC1z\nZXJ2ZXIKICAgYGBgCgpXaGVuIHVzaW5nIERvY2tlcjoKCmBgYGJhc2gKZG9j\na2VyIHJ1biAtaSAtLXJtIFwKICAtZSBHSVRIVUJfUEVSU09OQUxfQUNDRVNT\nX1RPS0VOPTx5b3VyLXRva2VuPiBcCiAgLWUgR0lUSFVCX0lOU0lERVJTPXRy\ndWUgXAogIGdoY3IuaW8vZ2l0aHViL2dpdGh1Yi1tY3Atc2VydmVyCmBgYAoK\nIyMjIEF2YWlsYWJsZSBUb29sc2V0cwoKVGhlIGZvbGxvd2luZyBzZXRzIG9m\nIHRvb2xzIGFyZSBhdmFpbGFibGU6Cgo8IS0tIFNUQVJUIEFVVE9NQVRFRCBU\nT09MU0VUUyAtLT4KfCAgICAgfCBUb29sc2V0ICAgICAgICAgICAgICAgICB8\nIERlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgfAp8IC0tLSB8IC0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSB8CnwgPHBpY3R1cmU+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVyc29uLWRhcmsucG5nIj48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVyc29uLWxpZ2h0LnBuZyI+PGltZyBz\ncmM9InBrZy9vY3RpY29ucy9pY29ucy9wZXJzb24tbGlnaHQucG5nIiB3aWR0\naD0iMjAiIGhlaWdodD0iMjAiIGFsdD0icGVyc29uIj48L3BpY3R1cmU+IHwg\nYGNvbnRleHRgICAgICAgICAgICAgICAgfCAqKlN0cm9uZ2x5IHJlY29tbWVu\nZGVkKio6IFRvb2xzIHRoYXQgcHJvdmlkZSBjb250ZXh0IGFib3V0IHRoZSBj\ndXJyZW50IHVzZXIgYW5kIEdpdEh1YiBjb250ZXh0IHlvdSBhcmUgb3BlcmF0\naW5nIGluIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1j\nb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29u\ncy93b3JrZmxvdy1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL3dvcmtmbG93LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29u\ncy9pY29ucy93b3JrZmxvdy1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0\nPSIyMCIgYWx0PSJ3b3JrZmxvdyI+PC9waWN0dXJlPiB8IGBhY3Rpb25zYCB8\nIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cyBhbmQgQ0kvQ0Qgb3BlcmF0aW9u\ncyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3It\nc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29k\nZS1zcXVhcmUtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNv\nbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29u\ncy9jb2RlLXNxdWFyZS1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNv\nbnMvaWNvbnMvY29kZS1zcXVhcmUtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhl\naWdodD0iMjAiIGFsdD0iY29kZS1zcXVhcmUiPjwvcGljdHVyZT4gfCBgY29k\nZV9xdWFsaXR5YCB8IEdpdEh1YiBDb2RlIFF1YWxpdHkgcmVsYXRlZCB0b29s\ncyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3It\nc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29k\nZXNjYW4tZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9y\nLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9j\nb2Rlc2Nhbi1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNv\nbnMvY29kZXNjYW4tbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAi\nIGFsdD0iY29kZXNjYW4iPjwvcGljdHVyZT4gfCBgY29kZV9zZWN1cml0eWAg\nfCBDb2RlIHNlY3VyaXR5IHJlbGF0ZWQgdG9vbHMsIHN1Y2ggYXMgR2l0SHVi\nIENvZGUgU2Nhbm5pbmcgfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL2NvcGlsb3QtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3Rp\nY29ucy9pY29ucy9jb3BpbG90LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9v\nY3RpY29ucy9pY29ucy9jb3BpbG90LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBo\nZWlnaHQ9IjIwIiBhbHQ9ImNvcGlsb3QiPjwvcGljdHVyZT4gfCBgY29waWxv\ndGAgfCBDb3BpbG90IHJlbGF0ZWQgdG9vbHMgfAp8IDxwaWN0dXJlPjxzb3Vy\nY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL2NvcGlsb3QtZGFyay5wbmciPjxzb3Vy\nY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNz\nZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb3BpbG90LWxpZ2h0LnBuZyI+PGlt\nZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9jb3BpbG90LWxpZ2h0LnBuZyIg\nd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImNvcGlsb3QiPjwvcGljdHVy\nZT4gfCBgY29waWxvdF9pc3N1ZV9pbnRlbnRzYCB8IE9wdC1pbiBDb3BpbG90\nIGlzc3VlIGFzc2lnbm1lbnQgdG9vbHMgdGhhdCBjYXJyeSBpbnRlbnQgbWV0\nYWRhdGEgKHJhdGlvbmFsZSwgY29uZmlkZW5jZSwgc3VnZ2VzdGlvbikgfAp8\nIDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVt\nZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2RlcGVuZGFi\nb3QtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNj\naGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9kZXBl\nbmRhYm90LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29u\ncy9kZXBlbmRhYm90LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIw\nIiBhbHQ9ImRlcGVuZGFib3QiPjwvcGljdHVyZT4gfCBgZGVwZW5kYWJvdGAg\nfCBEZXBlbmRhYm90IHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9v\nY3RpY29ucy9pY29ucy9jb21tZW50LWRpc2N1c3Npb24tZGFyay5wbmciPjxz\nb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBz\ncmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb21tZW50LWRpc2N1c3Npb24t\nbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2NvbW1l\nbnQtZGlzY3Vzc2lvbi1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIy\nMCIgYWx0PSJjb21tZW50LWRpc2N1c3Npb24iPjwvcGljdHVyZT4gfCBgZGlz\nY3Vzc2lvbnNgIHwgR2l0SHViIERpc2N1c3Npb25zIHJlbGF0ZWQgdG9vbHMg\nfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNj\naGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2xvZ28t\nZ2lzdC1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3It\nc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2xv\nZ28tZ2lzdC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNv\nbnMvbG9nby1naXN0LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIw\nIiBhbHQ9ImxvZ28tZ2lzdCI+PC9waWN0dXJlPiB8IGBnaXN0c2AgfCBHaXRI\ndWIgR2lzdCByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy9naXQtYnJhbmNoLWRhcmsucG5nIj48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvZ2l0LWJyYW5jaC1saWdodC5wbmciPjxp\nbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvZ2l0LWJyYW5jaC1saWdodC5w\nbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJnaXQtYnJhbmNoIj48\nL3BpY3R1cmU+IHwgYGdpdGAgfCBHaXRIdWIgR2l0IEFQSSByZWxhdGVkIHRv\nb2xzIGZvciBsb3ctbGV2ZWwgR2l0IG9wZXJhdGlvbnMgfAp8IDxwaWN0dXJl\nPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayki\nIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2lzc3VlLW9wZW5lZC1kYXJr\nLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBs\naWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2lzc3VlLW9wZW5l\nZC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvaXNz\ndWUtb3BlbmVkLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBh\nbHQ9Imlzc3VlLW9wZW5lZCI+PC9waWN0dXJlPiB8IGBpc3N1ZXNgIHwgR2l0\nSHViIElzc3VlcyByZWxhdGVkIHRvb2xzIHwKfCA8cGljdHVyZT48c291cmNl\nIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9\nInBrZy9vY3RpY29ucy9pY29ucy90YWctZGFyay5wbmciPjxzb3VyY2UgbWVk\naWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBr\nZy9vY3RpY29ucy9pY29ucy90YWctbGlnaHQucG5nIj48aW1nIHNyYz0icGtn\nL29jdGljb25zL2ljb25zL3RhZy1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVp\nZ2h0PSIyMCIgYWx0PSJ0YWciPjwvcGljdHVyZT4gfCBgbGFiZWxzYCB8IEdp\ndEh1YiBMYWJlbHMgcmVsYXRlZCB0b29scyB8CnwgPHBpY3R1cmU+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0\nPSJwa2cvb2N0aWNvbnMvaWNvbnMvYmVsbC1kYXJrLnBuZyI+PHNvdXJjZSBt\nZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0i\ncGtnL29jdGljb25zL2ljb25zL2JlbGwtbGlnaHQucG5nIj48aW1nIHNyYz0i\ncGtnL29jdGljb25zL2ljb25zL2JlbGwtbGlnaHQucG5nIiB3aWR0aD0iMjAi\nIGhlaWdodD0iMjAiIGFsdD0iYmVsbCI+PC9waWN0dXJlPiB8IGBub3RpZmlj\nYXRpb25zYCB8IEdpdEh1YiBOb3RpZmljYXRpb25zIHJlbGF0ZWQgdG9vbHMg\nfAp8IDxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNj\naGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL29yZ2Fu\naXphdGlvbi1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29s\nb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25z\nL29yZ2FuaXphdGlvbi1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNv\nbnMvaWNvbnMvb3JnYW5pemF0aW9uLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBo\nZWlnaHQ9IjIwIiBhbHQ9Im9yZ2FuaXphdGlvbiI+PC9waWN0dXJlPiB8IGBv\ncmdzYCB8IEdpdEh1YiBPcmdhbml6YXRpb24gcmVsYXRlZCB0b29scyB8Cnwg\nPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcHJvamVjdC1k\nYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1l\nOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3Byb2plY3Qt\nbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL3Byb2pl\nY3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0icHJv\namVjdCI+PC9waWN0dXJlPiB8IGBwcm9qZWN0c2AgfCBHaXRIdWIgUHJvamVj\ndHMgcmVsYXRlZCB0b29scyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0i\nKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0\naWNvbnMvaWNvbnMvZ2l0LXB1bGwtcmVxdWVzdC1kYXJrLnBuZyI+PHNvdXJj\nZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3Nl\ndD0icGtnL29jdGljb25zL2ljb25zL2dpdC1wdWxsLXJlcXVlc3QtbGlnaHQu\ncG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2dpdC1wdWxsLXJl\ncXVlc3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0i\nZ2l0LXB1bGwtcmVxdWVzdCI+PC9waWN0dXJlPiB8IGBwdWxsX3JlcXVlc3Rz\nYCB8IEdpdEh1YiBQdWxsIFJlcXVlc3QgcmVsYXRlZCB0b29scyB8CnwgPHBp\nY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBk\nYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvcmVwby1kYXJrLnBu\nZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdo\ndCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3JlcG8tbGlnaHQucG5n\nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL3JlcG8tbGlnaHQucG5n\nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0icmVwbyI+PC9waWN0dXJl\nPiB8IGByZXBvc2AgfCBHaXRIdWIgUmVwb3NpdG9yeSByZWxhdGVkIHRvb2xz\nIHwKfCA8cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1z\nY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9zaGll\nbGQtbG9jay1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29s\nb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25z\nL3NoaWVsZC1sb2NrLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29u\ncy9pY29ucy9zaGllbGQtbG9jay1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVp\nZ2h0PSIyMCIgYWx0PSJzaGllbGQtbG9jayI+PC9waWN0dXJlPiB8IGBzZWNy\nZXRfcHJvdGVjdGlvbmAgfCBTZWNyZXQgcHJvdGVjdGlvbiByZWxhdGVkIHRv\nb2xzLCBzdWNoIGFzIEdpdEh1YiBTZWNyZXQgU2Nhbm5pbmcgfAp8IDxwaWN0\ndXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFy\naykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3NoaWVsZC1kYXJrLnBu\nZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdo\ndCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3NoaWVsZC1saWdodC5w\nbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWxpZ2h0\nLnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9InNoaWVsZCI+PC9w\naWN0dXJlPiB8IGBzZWN1cml0eV9hZHZpc29yaWVzYCB8IFNlY3VyaXR5IGFk\ndmlzb3JpZXMgcmVsYXRlZCB0b29scyB8CnwgPHBpY3R1cmU+PHNvdXJjZSBt\nZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvc3Rhci1kYXJrLnBuZyI+PHNvdXJjZSBtZWRp\nYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtn\nL29jdGljb25zL2ljb25zL3N0YXItbGlnaHQucG5nIj48aW1nIHNyYz0icGtn\nL29jdGljb25zL2ljb25zL3N0YXItbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhl\naWdodD0iMjAiIGFsdD0ic3RhciI+PC9waWN0dXJlPiB8IGBzdGFyZ2F6ZXJz\nYCB8IEdpdEh1YiBTdGFyZ2F6ZXJzIHJlbGF0ZWQgdG9vbHMgfAp8IDxwaWN0\ndXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFy\naykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3Blb3BsZS1kYXJrLnBu\nZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdo\ndCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3Blb3BsZS1saWdodC5w\nbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWxpZ2h0\nLnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9InBlb3BsZSI+PC9w\naWN0dXJlPiB8IGB1c2Vyc2AgfCBHaXRIdWIgVXNlciByZWxhdGVkIHRvb2xz\nIHwKPCEtLSBFTkQgQVVUT01BVEVEIFRPT0xTRVRTIC0tPgoKIyMjIEFkZGl0\naW9uYWwgVG9vbHNldHMgaW4gUmVtb3RlIEdpdEh1YiBNQ1AgU2VydmVyCgp8\nIFRvb2xzZXQgICAgICAgICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8\nCnwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nIHwKfCBgY29waWxvdGAgfCBDb3BpbG90IHJlbGF0ZWQgdG9vbHMgKGUuZy4g\nQ29waWxvdCBDb2RpbmcgQWdlbnQpIHwKfCBgY29waWxvdF9zcGFjZXNgIHwg\nQ29waWxvdCBTcGFjZXMgcmVsYXRlZCB0b29scyB8CnwgYGdpdGh1Yl9zdXBw\nb3J0X2RvY3Nfc2VhcmNoYCB8IFNlYXJjaCBkb2NzIHRvIGFuc3dlciBHaXRI\ndWIgcHJvZHVjdCBhbmQgc3VwcG9ydCBxdWVzdGlvbnMgfAoKIyMgVG9vbHMK\nCjwhLS0gU1RBUlQgQVVUT01BVEVEIFRPT0xTIC0tPgo8ZGV0YWlscz4KCjxz\ndW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9y\nLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL3dv\ncmtmbG93LWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xv\nci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMv\nd29ya2Zsb3ctbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2lj\nb25zL3dvcmtmbG93LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIw\nIiBhbHQ9IndvcmtmbG93Ij48L3BpY3R1cmU+IEFjdGlvbnM8L3N1bW1hcnk+\nCgotICoqYWN0aW9uc19nZXQqKiAtIEdldCBkZXRhaWxzIG9mIEdpdEh1YiBB\nY3Rpb25zIHJlc291cmNlcyAod29ya2Zsb3dzLCB3b3JrZmxvdyBydW5zLCBq\nb2JzLCBhbmQgYXJ0aWZhY3RzKQogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHJlcG9gCiAgLSBgbWV0aG9kYDogVGhlIG1ldGhvZCB0byBleGVj\ndXRlIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogUmVwb3NpdG9y\neSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3Np\ndG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlc291cmNlX2lk\nYDogVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSByZXNvdXJjZS4gVGhp\ncyB3aWxsIHZhcnkgYmFzZWQgb24gdGhlICJtZXRob2QiIHByb3ZpZGVkLCBz\nbyBlbnN1cmUgeW91IHByb3ZpZGUgdGhlIGNvcnJlY3QgSUQ6CiAgICAtIFBy\nb3ZpZGUgYSB3b3JrZmxvdyBJRCBvciB3b3JrZmxvdyBmaWxlIG5hbWUgKGUu\nZy4gY2kueWFtbCkgZm9yICdnZXRfd29ya2Zsb3cnIG1ldGhvZC4KICAgIC0g\nUHJvdmlkZSBhIHdvcmtmbG93IHJ1biBJRCBmb3IgJ2dldF93b3JrZmxvd19y\ndW4nLCAnZ2V0X3dvcmtmbG93X3J1bl91c2FnZScsIGFuZCAnZ2V0X3dvcmtm\nbG93X3J1bl9sb2dzX3VybCcgbWV0aG9kcy4KICAgIC0gUHJvdmlkZSBhbiBh\ncnRpZmFjdCBJRCBmb3IgJ2Rvd25sb2FkX3dvcmtmbG93X3J1bl9hcnRpZmFj\ndCcgbWV0aG9kLgogICAgLSBQcm92aWRlIGEgam9iIElEIGZvciAnZ2V0X3dv\ncmtmbG93X2pvYicgbWV0aG9kLgogICAgIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKmFjdGlvbnNfbGlzdCoqIC0gTGlzdCBHaXRIdWIgQWN0aW9ucyB3b3Jr\nZmxvd3MgaW4gYSByZXBvc2l0b3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNj\nb3BlcyoqOiBgcmVwb2AKICAtIGBtZXRob2RgOiBUaGUgYWN0aW9uIHRvIHBl\ncmZvcm0gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0\nb3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdl\nIG51bWJlciBmb3IgcGFnaW5hdGlvbiAoZGVmYXVsdDogMSkgKG51bWJlciwg\nb3B0aW9uYWwpCiAgLSBgcGVyX3BhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZv\nciBwYWdpbmF0aW9uIChkZWZhdWx0OiAzMCwgbWF4OiAxMDApIChudW1iZXIs\nIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcmVzb3VyY2VfaWRgOiBUaGUgdW5pcXVlIGlk\nZW50aWZpZXIgb2YgdGhlIHJlc291cmNlLiBUaGlzIHdpbGwgdmFyeSBiYXNl\nZCBvbiB0aGUgIm1ldGhvZCIgcHJvdmlkZWQsIHNvIGVuc3VyZSB5b3UgcHJv\ndmlkZSB0aGUgY29ycmVjdCBJRDoKICAgIC0gRG8gbm90IHByb3ZpZGUgYW55\nIHJlc291cmNlIElEIGZvciAnbGlzdF93b3JrZmxvd3MnIG1ldGhvZC4KICAg\nIC0gUHJvdmlkZSBhIHdvcmtmbG93IElEIG9yIHdvcmtmbG93IGZpbGUgbmFt\nZSAoZS5nLiBjaS55YW1sKSBmb3IgJ2xpc3Rfd29ya2Zsb3dfcnVucycgbWV0\naG9kLCBvciBvbWl0IHRvIGxpc3QgYWxsIHdvcmtmbG93IHJ1bnMgaW4gdGhl\nIHJlcG9zaXRvcnkuCiAgICAtIFByb3ZpZGUgYSB3b3JrZmxvdyBydW4gSUQg\nZm9yICdsaXN0X3dvcmtmbG93X2pvYnMnIGFuZCAnbGlzdF93b3JrZmxvd19y\ndW5fYXJ0aWZhY3RzJyBtZXRob2RzLgogICAgIChzdHJpbmcsIG9wdGlvbmFs\nKQogIC0gYHdvcmtmbG93X2pvYnNfZmlsdGVyYDogRmlsdGVycyBmb3Igd29y\na2Zsb3cgam9icy4gKipPTkxZKiogdXNlZCB3aGVuIG1ldGhvZCBpcyAnbGlz\ndF93b3JrZmxvd19qb2JzJyAob2JqZWN0LCBvcHRpb25hbCkKICAtIGB3b3Jr\nZmxvd19ydW5zX2ZpbHRlcmA6IEZpbHRlcnMgZm9yIHdvcmtmbG93IHJ1bnMu\nICoqT05MWSoqIHVzZWQgd2hlbiBtZXRob2QgaXMgJ2xpc3Rfd29ya2Zsb3df\ncnVucycgKG9iamVjdCwgb3B0aW9uYWwpCgotICoqYWN0aW9uc19ydW5fdHJp\nZ2dlcioqIC0gVHJpZ2dlciBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvdyBhY3Rp\nb25zCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAt\nIGBpbnB1dHNgOiBJbnB1dHMgdGhlIHdvcmtmbG93IGFjY2VwdHMuIE9ubHkg\ndXNlZCBmb3IgJ3J1bl93b3JrZmxvdycgbWV0aG9kLiAob2JqZWN0LCBvcHRp\nb25hbCkKICAtIGBtZXRob2RgOiBUaGUgbWV0aG9kIHRvIGV4ZWN1dGUgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVy\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlZmA6IFRoZSBnaXQgcmVmZXJl\nbmNlIGZvciB0aGUgd29ya2Zsb3cuIFRoZSByZWZlcmVuY2UgY2FuIGJlIGEg\nYnJhbmNoIG9yIHRhZyBuYW1lLiBSZXF1aXJlZCBmb3IgJ3J1bl93b3JrZmxv\ndycgbWV0aG9kLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVw\nb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJ1bl9pZGA6\nIFRoZSBJRCBvZiB0aGUgd29ya2Zsb3cgcnVuLiBSZXF1aXJlZCBmb3IgYWxs\nIG1ldGhvZHMgZXhjZXB0ICdydW5fd29ya2Zsb3cnLiAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGB3b3JrZmxvd19pZGA6IFRoZSB3b3JrZmxvdyBJRCAobnVt\nZXJpYykgb3Igd29ya2Zsb3cgZmlsZSBuYW1lIChlLmcuLCBtYWluLnltbCwg\nY2kueWFtbCkuIFJlcXVpcmVkIGZvciAncnVuX3dvcmtmbG93JyBtZXRob2Qu\nIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmdldF9qb2JfbG9ncyoqIC0gR2V0\nIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93IGpvYiBsb2dzCiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBmYWlsZWRfb25seWA6\nIFdoZW4gdHJ1ZSwgZ2V0cyBsb2dzIGZvciBhbGwgZmFpbGVkIGpvYnMgaW4g\ndGhlIHdvcmtmbG93IHJ1biBzcGVjaWZpZWQgYnkgcnVuX2lkLiBSZXF1aXJl\ncyBydW5faWQgdG8gYmUgcHJvdmlkZWQuIChib29sZWFuLCBvcHRpb25hbCkK\nICAtIGBqb2JfaWRgOiBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHdv\ncmtmbG93IGpvYi4gUmVxdWlyZWQgd2hlbiBnZXR0aW5nIGxvZ3MgZm9yIGEg\nc2luZ2xlIGpvYi4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9g\nOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmV0\ndXJuX2NvbnRlbnRgOiBSZXR1cm5zIGFjdHVhbCBsb2cgY29udGVudCBpbnN0\nZWFkIG9mIFVSTHMgKGJvb2xlYW4sIG9wdGlvbmFsKQogIC0gYHJ1bl9pZGA6\nIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgd29ya2Zsb3cgcnVuLiBS\nZXF1aXJlZCB3aGVuIGZhaWxlZF9vbmx5IGlzIHRydWUgdG8gZ2V0IGxvZ3Mg\nZm9yIGFsbCBmYWlsZWQgam9icyBpbiB0aGUgcnVuLiAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGB0YWlsX2xpbmVzYDogTnVtYmVyIG9mIGxpbmVzIHRvIHJl\ndHVybiBmcm9tIHRoZSBlbmQgb2YgdGhlIGxvZyAobnVtYmVyLCBvcHRpb25h\nbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+\nPHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29kZS1zcXVhcmUtZGFyay5w\nbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGln\naHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb2RlLXNxdWFyZS1s\naWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvY29kZS1z\ncXVhcmUtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0i\nY29kZS1zcXVhcmUiPjwvcGljdHVyZT4gQ29kZSBRdWFsaXR5PC9zdW1tYXJ5\nPgoKLSAqKmdldF9jb2RlX3F1YWxpdHlfZmluZGluZyoqIC0gR2V0IGNvZGUg\ncXVhbGl0eSBmaW5kaW5nCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3Blcyoq\nOiBgcmVwb2AKICAtIGBmaW5kaW5nTnVtYmVyYDogVGhlIG51bWJlciBvZiB0\naGUgZmluZGluZy4gKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBU\naGUgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0\ncmluZywgcmVxdWlyZWQpCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1t\nYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNj\naGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2NvZGVz\nY2FuLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1z\nY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29k\nZXNjYW4tbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25z\nL2NvZGVzY2FuLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBh\nbHQ9ImNvZGVzY2FuIj48L3BpY3R1cmU+IENvZGUgU2VjdXJpdHk8L3N1bW1h\ncnk+CgotICoqZ2V0X2NvZGVfc2Nhbm5pbmdfYWxlcnQqKiAtIEdldCBjb2Rl\nIHNjYW5uaW5nIGFsZXJ0CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3Blcyoq\nOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29w\nZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlfZXZlbnRzYAogIC0gYGFsZXJ0TnVt\nYmVyYDogVGhlIG51bWJlciBvZiB0aGUgYWxlcnQuIChudW1iZXIsIHJlcXVp\ncmVkKQogIC0gYG93bmVyYDogVGhlIG93bmVyIG9mIHRoZSByZXBvc2l0b3J5\nLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogVGhlIG5hbWUgb2Yg\ndGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmxpc3Rf\nY29kZV9zY2FubmluZ19hbGVydHMqKiAtIExpc3QgY29kZSBzY2FubmluZyBh\nbGVydHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBzZWN1cml0\neV9ldmVudHNgCiAgLSAqKkFjY2VwdGVkIE9BdXRoIFNjb3BlcyoqOiBgcmVw\nb2AsIGBzZWN1cml0eV9ldmVudHNgCiAgLSBgb3duZXJgOiBUaGUgb3duZXIg\nb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHBh\nZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1i\nZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdl\nIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgcmVmYDogVGhlIEdpdCByZWZlcmVuY2UgZm9yIHRoZSBy\nZXN1bHRzIHlvdSB3YW50IHRvIGxpc3QuIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYHJlcG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgc2V2ZXJpdHlgOiBGaWx0ZXIgY29kZSBzY2Fu\nbmluZyBhbGVydHMgYnkgc2V2ZXJpdHkgKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgc3RhdGVgOiBGaWx0ZXIgY29kZSBzY2FubmluZyBhbGVydHMgYnkgc3Rh\ndGUuIERlZmF1bHRzIHRvIG9wZW4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\ndG9vbF9uYW1lYDogVGhlIG5hbWUgb2YgdGhlIHRvb2wgdXNlZCBmb3IgY29k\nZSBzY2FubmluZy4gKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFpbHM+Cgo8\nZGV0YWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL3BlcnNvbi1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHBy\nZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGlj\nb25zL2ljb25zL3BlcnNvbi1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0\naWNvbnMvaWNvbnMvcGVyc29uLWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWln\naHQ9IjIwIiBhbHQ9InBlcnNvbiI+PC9waWN0dXJlPiBDb250ZXh0PC9zdW1t\nYXJ5PgoKLSAqKmdldF9tZSoqIC0gR2V0IG15IHVzZXIgcHJvZmlsZQogIC0g\nTm8gcGFyYW1ldGVycyByZXF1aXJlZAoKLSAqKmdldF90ZWFtX21lbWJlcnMq\nKiAtIEdldCB0ZWFtIG1lbWJlcnMKICAtICoqUmVxdWlyZWQgT0F1dGggU2Nv\ncGVzKio6IGByZWFkOm9yZ2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVz\nKio6IGBhZG1pbjpvcmdgLCBgcmVhZDpvcmdgLCBgd3JpdGU6b3JnYAogIC0g\nYG9yZ2A6IE9yZ2FuaXphdGlvbiBsb2dpbiAob3duZXIpIHRoYXQgY29udGFp\nbnMgdGhlIHRlYW0uIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHRlYW1fc2x1\nZ2A6IFRlYW0gc2x1ZyAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipnZXRfdGVh\nbXMqKiAtIEdldCB0ZWFtcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlYWQ6b3JnYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjog\nYGFkbWluOm9yZ2AsIGByZWFkOm9yZ2AsIGB3cml0ZTpvcmdgCiAgLSBgdXNl\ncmA6IFVzZXJuYW1lIHRvIGdldCB0ZWFtcyBmb3IuIElmIG5vdCBwcm92aWRl\nZCwgdXNlcyB0aGUgYXV0aGVudGljYXRlZCB1c2VyLiAoc3RyaW5nLCBvcHRp\nb25hbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1\ncmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJr\nKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29waWxvdC1kYXJrLnBu\nZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdo\ndCkiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2NvcGlsb3QtbGlnaHQu\ncG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL2NvcGlsb3QtbGln\naHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0iY29waWxvdCI+\nPC9waWN0dXJlPiBDb3BpbG90PC9zdW1tYXJ5PgoKLSAqKmFzc2lnbl9jb3Bp\nbG90X3RvX2lzc3VlKiogLSBBc3NpZ24gQ29waWxvdCB0byBpc3N1ZQogIC0g\nKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYmFzZV9y\nZWZgOiBHaXQgcmVmZXJlbmNlIChlLmcuLCBicmFuY2gpIHRoYXQgdGhlIGFn\nZW50IHdpbGwgc3RhcnQgaXRzIHdvcmsgZnJvbS4gSWYgbm90IHNwZWNpZmll\nZCwgZGVmYXVsdHMgdG8gdGhlIHJlcG9zaXRvcnkncyBkZWZhdWx0IGJyYW5j\naCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBjdXN0b21faW5zdHJ1Y3Rpb25z\nYDogT3B0aW9uYWwgY3VzdG9tIGluc3RydWN0aW9ucyB0byBndWlkZSB0aGUg\nYWdlbnQgYmV5b25kIHRoZSBpc3N1ZSBib2R5LiBVc2UgdGhpcyB0byBwcm92\naWRlIGFkZGl0aW9uYWwgY29udGV4dCwgY29uc3RyYWludHMsIG9yIGd1aWRh\nbmNlIHRoYXQgaXMgbm90IGNhcHR1cmVkIGluIHRoZSBpc3N1ZSBkZXNjcmlw\ndGlvbiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBpc3N1ZV9udW1iZXJgOiBJ\nc3N1ZSBudW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9g\nOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqcmVx\ndWVzdF9jb3BpbG90X3JldmlldyoqIC0gUmVxdWVzdCBDb3BpbG90IHJldmll\ndwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBg\nb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYHB1bGxOdW1iZXJgOiBQdWxsIHJlcXVlc3QgbnVtYmVyIChudW1iZXIs\nIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmlu\nZywgcmVxdWlyZWQpCgo8L2RldGFpbHM+Cgo8ZGV0YWlscz4KCjxzdW1tYXJ5\nPjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVt\nZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2ljb25zL2NvcGlsb3Qt\nZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVt\nZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9jb3BpbG90\nLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9jb3Bp\nbG90LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImNv\ncGlsb3QiPjwvcGljdHVyZT4gQ29waWxvdCBJc3N1ZSBJbnRlbnRzPC9zdW1t\nYXJ5PgoKLSAqKmFzc2lnbl9jb3BpbG90X3RvX2lzc3VlX3dpdGhfaW50ZW50\nKiogLSBBc3NpZ24gQ29waWxvdCB0byBpc3N1ZSB3aXRoIGludGVudAogIC0g\nKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYmFzZV9y\nZWZgOiBHaXQgcmVmZXJlbmNlIChlLmcuLCBicmFuY2gpIHRoYXQgdGhlIGFn\nZW50IHdpbGwgc3RhcnQgaXRzIHdvcmsgZnJvbS4gSWYgbm90IHNwZWNpZmll\nZCwgZGVmYXVsdHMgdG8gdGhlIHJlcG9zaXRvcnkncyBkZWZhdWx0IGJyYW5j\naC4gSWdub3JlZCB3aGVuIGlzX3N1Z2dlc3Rpb24gaXMgdHJ1ZSAoc3RyaW5n\nLCBvcHRpb25hbCkKICAtIGBjb25maWRlbmNlYDogSG93IGNvbmZpZGVudCB5\nb3UgYXJlIGluIHRoaXMgY2hvaWNlLiAnSElHSCcgZm9yIGNsZWFyIHNpZ25h\nbCBvciBleHBsaWNpdCB1c2VyIHJlcXVlc3QsICdNRURJVU0nIGZvciByZWFz\nb25hYmxlIGluZmVyZW5jZSB3aXRoIHNvbWUgYW1iaWd1aXR5LCAnTE9XJyBm\nb3IgYmVzdCBndWVzcyB3aXRoIGxpbWl0ZWQgc2lnbmFsLiAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBjdXN0b21faW5zdHJ1Y3Rpb25zYDogT3B0aW9uYWwg\nY3VzdG9tIGluc3RydWN0aW9ucyB0byBndWlkZSB0aGUgYWdlbnQgYmV5b25k\nIHRoZSBpc3N1ZSBib2R5LiBJZ25vcmVkIHdoZW4gaXNfc3VnZ2VzdGlvbiBp\ncyB0cnVlIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGlzX3N1Z2dlc3Rpb25g\nOiBJZiB0cnVlLCByZWNvcmRzIGEgcGVuZGluZyBDb3BpbG90IGFzc2lnbm1l\nbnQgaW50ZW50IHJhdGhlciB0aGFuIGxhdW5jaGluZyB0aGUgYWdlbnQuIEFw\ncHJvdmFsIGxhdGVyIHN1cHBsaWVzIHRoZSBsYXVuY2ggY29udGV4dDsgYmFz\nZV9yZWYgYW5kIGN1c3RvbV9pbnN0cnVjdGlvbnMgYXJlIGlnbm9yZWQgaW4g\ndGhpcyBjYXNlLiAoYm9vbGVhbiwgcmVxdWlyZWQpCiAgLSBgaXNzdWVfbnVt\nYmVyYDogSXNzdWUgbnVtYmVyIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYG93\nbmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGByYXRpb25hbGVgOiBPbmUgY29uY2lzZSBzZW50ZW5jZSBleHBsYWluaW5n\nIHdoYXQgc3BlY2lmaWNhbGx5IGFib3V0IHRoZSBpc3N1ZSBsZWQgdG8gY2hv\nb3NpbmcgQ29waWxvdC4gU3RhdGUgdGhlIGNvbmNyZXRlIHNpZ25hbCAoZS5n\nLiAnV2VsbC1zY29wZWQgdGFzayB3aXRoIGNsZWFyIGFjY2VwdGFuY2UgY3Jp\ndGVyaWEnKS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9z\naXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCjwvZGV0YWlscz4KCjxk\nZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRpYT0iKHBy\nZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cvb2N0aWNv\nbnMvaWNvbnMvZGVwZW5kYWJvdC1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0i\nKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29j\ndGljb25zL2ljb25zL2RlcGVuZGFib3QtbGlnaHQucG5nIj48aW1nIHNyYz0i\ncGtnL29jdGljb25zL2ljb25zL2RlcGVuZGFib3QtbGlnaHQucG5nIiB3aWR0\naD0iMjAiIGhlaWdodD0iMjAiIGFsdD0iZGVwZW5kYWJvdCI+PC9waWN0dXJl\nPiBEZXBlbmRhYm90PC9zdW1tYXJ5PgoKLSAqKmdldF9kZXBlbmRhYm90X2Fs\nZXJ0KiogLSBHZXQgZGVwZW5kYWJvdCBhbGVydAogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYHNlY3VyaXR5X2V2ZW50c2AKICAtICoqQWNjZXB0\nZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYCwgYHNlY3VyaXR5X2V2ZW50c2AK\nICAtIGBhbGVydE51bWJlcmA6IFRoZSBudW1iZXIgb2YgdGhlIGFsZXJ0LiAo\nbnVtYmVyLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0\naGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6\nIFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJl\nZCkKCi0gKipsaXN0X2RlcGVuZGFib3RfYWxlcnRzKiogLSBMaXN0IGRlcGVu\nZGFib3QgYWxlcnRzCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBg\nc2VjdXJpdHlfZXZlbnRzYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gLCBgc2VjdXJpdHlfZXZlbnRzYAogIC0gYGFmdGVyYDogQ3Vy\nc29yIGZvciBwYWdpbmF0aW9uLiBVc2UgdGhlIGN1cnNvciBmcm9tIHRoZSBw\ncmV2aW91cyByZXNwb25zZS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgb3du\nZXJgOiBUaGUgb3duZXIgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBw\nYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwp\nCiAgLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBzZXZlcml0eWA6IEZpbHRlciBkZXBlbmRh\nYm90IGFsZXJ0cyBieSBzZXZlcml0eSAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGBzdGF0ZWA6IEZpbHRlciBkZXBlbmRhYm90IGFsZXJ0cyBieSBzdGF0ZS4g\nRGVmYXVsdHMgdG8gb3BlbiAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0YWls\ncz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRp\nYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvY29tbWVudC1kaXNjdXNzaW9uLWRhcmsucG5nIj48\nc291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIg\nc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvY29tbWVudC1kaXNjdXNzaW9u\nLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9jb21t\nZW50LWRpc2N1c3Npb24tbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0i\nMjAiIGFsdD0iY29tbWVudC1kaXNjdXNzaW9uIj48L3BpY3R1cmU+IERpc2N1\nc3Npb25zPC9zdW1tYXJ5PgoKLSAqKmRpc2N1c3Npb25fY29tbWVudF93cml0\nZSoqIC0gTWFuYWdlIGRpc2N1c3Npb24gY29tbWVudHMKICAtICoqUmVxdWly\nZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJvZHlgOiBDb21tZW50\nIGNvbnRlbnQgKHJlcXVpcmVkIGZvciAnYWRkJywgJ3JlcGx5JywgYW5kICd1\ncGRhdGUnIG1ldGhvZHMpIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGNvbW1l\nbnROb2RlSURgOiBUaGUgTm9kZSBJRCBvZiB0aGUgZGlzY3Vzc2lvbiBjb21t\nZW50IChyZXF1aXJlZCBmb3IgJ3JlcGx5JywgJ3VwZGF0ZScsICdkZWxldGUn\nLCAnbWFya19hbnN3ZXInLCBhbmQgJ3VubWFya19hbnN3ZXInIG1ldGhvZHMp\nLiBGb3IgJ3JlcGx5JywgdGhpcyBpcyB0aGUgdG9wLWxldmVsIGNvbW1lbnQg\ndG8gcmVwbHkgdG87IEdpdEh1YiBEaXNjdXNzaW9ucyBvbmx5IHN1cHBvcnQg\nb25lIGxldmVsIG9mIG5lc3RpbmcuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYGRpc2N1c3Npb25OdW1iZXJgOiBEaXNjdXNzaW9uIG51bWJlciAocmVxdWly\nZWQgZm9yICdhZGQnIGFuZCAncmVwbHknIG1ldGhvZHMpIChudW1iZXIsIG9w\ndGlvbmFsKQogIC0gYG1ldGhvZGA6IFdyaXRlIG9wZXJhdGlvbiB0byBwZXJm\nb3JtIG9uIGEgZGlzY3Vzc2lvbiBjb21tZW50LgogICAgT3B0aW9ucyBhcmU6\nCiAgICAtICdhZGQnIC0gYWRkcyBhIG5ldyB0b3AtbGV2ZWwgY29tbWVudCB0\nbyBhIGRpc2N1c3Npb24uCiAgICAtICdyZXBseScgLSByZXBsaWVzIHRvIGEg\ndG9wLWxldmVsIGRpc2N1c3Npb24gY29tbWVudCAoR2l0SHViIERpc2N1c3Np\nb25zIG9ubHkgc3VwcG9ydCBvbmUgbGV2ZWwgb2YgbmVzdGluZykuCiAgICAt\nICd1cGRhdGUnIC0gdXBkYXRlcyBhbiBleGlzdGluZyBkaXNjdXNzaW9uIGNv\nbW1lbnQuCiAgICAtICdkZWxldGUnIC0gZGVsZXRlcyBhIGRpc2N1c3Npb24g\nY29tbWVudC4KICAgIC0gJ21hcmtfYW5zd2VyJyAtIG1hcmtzIGEgZGlzY3Vz\nc2lvbiBjb21tZW50IGFzIHRoZSBhbnN3ZXIgKFEmQSBvbmx5KS4KICAgIC0g\nJ3VubWFya19hbnN3ZXInIC0gdW5tYXJrcyBhIGRpc2N1c3Npb24gY29tbWVu\ndCBhcyB0aGUgYW5zd2VyIChRJkEgb25seSkuCiAgICAgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChyZXF1aXJl\nZCBmb3IgJ2FkZCcgYW5kICdyZXBseScgbWV0aG9kcykgKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAocmVxdWlyZWQg\nZm9yICdhZGQnIGFuZCAncmVwbHknIG1ldGhvZHMpIChzdHJpbmcsIG9wdGlv\nbmFsKQoKLSAqKmdldF9kaXNjdXNzaW9uKiogLSBHZXQgZGlzY3Vzc2lvbgog\nIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgZGlz\nY3Vzc2lvbk51bWJlcmA6IERpc2N1c3Npb24gTnVtYmVyIChudW1iZXIsIHJl\ncXVpcmVkKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJp\nbmcsIHJlcXVpcmVkKQoKLSAqKmdldF9kaXNjdXNzaW9uX2NvbW1lbnRzKiog\nLSBHZXQgZGlzY3Vzc2lvbiBjb21tZW50cwogIC0gKipSZXF1aXJlZCBPQXV0\naCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYWZ0ZXJgOiBDdXJzb3IgZm9yIHBh\nZ2luYXRpb24uIFVzZSB0aGUgY3Vyc29yIGZyb20gdGhlIHByZXZpb3VzIHJl\nc3BvbnNlLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBkaXNjdXNzaW9uTnVt\nYmVyYDogRGlzY3Vzc2lvbiBOdW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCiAg\nLSBgaW5jbHVkZVJlcGxpZXNgOiBXaGVuIHRydWUsIGVhY2ggdG9wLWxldmVs\nIGNvbW1lbnQgd2lsbCBpbmNsdWRlIGl0cyByZXBsaWVzIG5lc3RlZCB3aXRo\naW4gaXQgKHVwIHRvIDEwMCByZXBsaWVzIHBlciBjb21tZW50LCB3aGljaCBp\ncyB0aGUgR2l0SHViIEFQSSBtYXhpbXVtKS4gRGVmYXVsdHMgdG8gZmFsc2Uu\nIChib29sZWFuLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkg\nb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGVyUGFnZWA6IFJlc3Vs\ndHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAo\nbnVtYmVyLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1l\nIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmxpc3RfZGlzY3Vzc2lvbl9jYXRl\nZ29yaWVzKiogLSBMaXN0IGRpc2N1c3Npb24gY2F0ZWdvcmllcwogIC0gKipS\nZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9g\nOiBSZXBvc2l0b3J5IG5hbWUuIElmIG5vdCBwcm92aWRlZCwgZGlzY3Vzc2lv\nbiBjYXRlZ29yaWVzIHdpbGwgYmUgcXVlcmllZCBhdCB0aGUgb3JnYW5pc2F0\naW9uIGxldmVsLiAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipsaXN0X2Rpc2N1\nc3Npb25zKiogLSBMaXN0IGRpc2N1c3Npb25zCiAgLSAqKlJlcXVpcmVkIE9B\ndXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBhZnRlcmA6IEN1cnNvciBmb3Ig\ncGFnaW5hdGlvbi4gVXNlIHRoZSBjdXJzb3IgZnJvbSB0aGUgcHJldmlvdXMg\ncmVzcG9uc2UuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGNhdGVnb3J5YDog\nT3B0aW9uYWwgZmlsdGVyIGJ5IGRpc2N1c3Npb24gY2F0ZWdvcnkgSUQuIElm\nIHByb3ZpZGVkLCBvbmx5IGRpc2N1c3Npb25zIHdpdGggdGhpcyBjYXRlZ29y\neSBhcmUgbGlzdGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBkaXJlY3Rp\nb25gOiBPcmRlciBkaXJlY3Rpb24uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYG9yZGVyQnlgOiBPcmRlciBkaXNjdXNzaW9ucyBieSBmaWVsZC4gSWYgcHJv\ndmlkZWQsIHRoZSAnZGlyZWN0aW9uJyBhbHNvIG5lZWRzIHRvIGJlIHByb3Zp\nZGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRv\ncnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcGVyUGFnZWA6IFJl\nc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAw\nKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBu\nYW1lLiBJZiBub3QgcHJvdmlkZWQsIGRpc2N1c3Npb25zIHdpbGwgYmUgcXVl\ncmllZCBhdCB0aGUgb3JnYW5pc2F0aW9uIGxldmVsLiAoc3RyaW5nLCBvcHRp\nb25hbCkKCjwvZGV0YWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1\ncmU+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJr\nKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvbG9nby1naXN0LWRhcmsu\ncG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxp\nZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvbG9nby1naXN0LWxp\nZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29ucy9pY29ucy9sb2dvLWdp\nc3QtbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGFsdD0ibG9n\nby1naXN0Ij48L3BpY3R1cmU+IEdpc3RzPC9zdW1tYXJ5PgoKLSAqKmNyZWF0\nZV9naXN0KiogLSBDcmVhdGUgR2lzdAogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYGdpc3RgCiAgLSBgY29udGVudGA6IENvbnRlbnQgZm9yIHNp\nbXBsZSBzaW5nbGUtZmlsZSBnaXN0IGNyZWF0aW9uIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYGRlc2NyaXB0aW9uYDogRGVzY3JpcHRpb24gb2YgdGhlIGdp\nc3QgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZmlsZW5hbWVgOiBGaWxlbmFt\nZSBmb3Igc2ltcGxlIHNpbmdsZS1maWxlIGdpc3QgY3JlYXRpb24gKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcHVibGljYDogV2hldGhlciB0aGUgZ2lzdCBp\ncyBwdWJsaWMgKGJvb2xlYW4sIG9wdGlvbmFsKQoKLSAqKmdldF9naXN0Kiog\nLSBHZXQgR2lzdCBDb250ZW50CiAgLSBgZ2lzdF9pZGA6IFRoZSBJRCBvZiB0\naGUgZ2lzdCAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2dpc3RzKiog\nLSBMaXN0IEdpc3RzCiAgLSBgcGFnZWA6IFBhZ2UgbnVtYmVyIGZvciBwYWdp\nbmF0aW9uIChtaW4gMSkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcGVyUGFn\nZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1pbiAxLCBt\nYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBzaW5jZWA6IE9ubHkg\nZ2lzdHMgdXBkYXRlZCBhZnRlciB0aGlzIHRpbWUgKElTTyA4NjAxIHRpbWVz\ndGFtcCkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdXNlcm5hbWVgOiBHaXRI\ndWIgdXNlcm5hbWUgKG9taXQgZm9yIGF1dGhlbnRpY2F0ZWQgdXNlcidzIGdp\nc3RzKSAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKip1cGRhdGVfZ2lzdCoqIC0g\nVXBkYXRlIEdpc3QKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBn\naXN0YAogIC0gYGNvbnRlbnRgOiBDb250ZW50IGZvciB0aGUgZmlsZSAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBkZXNjcmlwdGlvbmA6IFVwZGF0ZWQgZGVz\nY3JpcHRpb24gb2YgdGhlIGdpc3QgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\nZmlsZW5hbWVgOiBGaWxlbmFtZSB0byB1cGRhdGUgb3IgY3JlYXRlIChzdHJp\nbmcsIHJlcXVpcmVkKQogIC0gYGdpc3RfaWRgOiBJRCBvZiB0aGUgZ2lzdCB0\nbyB1cGRhdGUgKHN0cmluZywgcmVxdWlyZWQpCgo8L2RldGFpbHM+Cgo8ZGV0\nYWlscz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVm\nZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25z\nL2ljb25zL2dpdC1icmFuY2gtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9Iihw\ncmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3Rp\nY29ucy9pY29ucy9naXQtYnJhbmNoLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBr\nZy9vY3RpY29ucy9pY29ucy9naXQtYnJhbmNoLWxpZ2h0LnBuZyIgd2lkdGg9\nIjIwIiBoZWlnaHQ9IjIwIiBhbHQ9ImdpdC1icmFuY2giPjwvcGljdHVyZT4g\nR2l0PC9zdW1tYXJ5PgoKLSAqKmdldF9yZXBvc2l0b3J5X3RyZWUqKiAtIEdl\ndCByZXBvc2l0b3J5IHRyZWUKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVz\nKio6IGByZXBvYAogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAodXNl\ncm5hbWUgb3Igb3JnYW5pemF0aW9uKSAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGBwYXRoX2ZpbHRlcmA6IE9wdGlvbmFsIHBhdGggcHJlZml4IHRvIGZpbHRl\nciB0aGUgdHJlZSByZXN1bHRzIChlLmcuLCAnc3JjLycgdG8gb25seSBzaG93\nIGZpbGVzIGluIHRoZSBzcmMgZGlyZWN0b3J5KSAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGByZWN1cnNpdmVgOiBTZXR0aW5nIHRoaXMgcGFyYW1ldGVyIHRv\nIHRydWUgcmV0dXJucyB0aGUgb2JqZWN0cyBvciBzdWJ0cmVlcyByZWZlcmVu\nY2VkIGJ5IHRoZSB0cmVlLiBEZWZhdWx0IGlzIGZhbHNlIChib29sZWFuLCBv\ncHRpb25hbCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYHRyZWVfc2hhYDogVGhlIFNIQTEgdmFsdWUgb3Ig\ncmVmIChicmFuY2ggb3IgdGFnKSBuYW1lIG9mIHRoZSB0cmVlLiBEZWZhdWx0\ncyB0byB0aGUgcmVwb3NpdG9yeSdzIGRlZmF1bHQgYnJhbmNoIChzdHJpbmcs\nIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48\ncGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6\nIGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9pc3N1ZS1vcGVu\nZWQtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNj\naGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9pc3N1\nZS1vcGVuZWQtbGlnaHQucG5nIj48aW1nIHNyYz0icGtnL29jdGljb25zL2lj\nb25zL2lzc3VlLW9wZW5lZC1saWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0\nPSIyMCIgYWx0PSJpc3N1ZS1vcGVuZWQiPjwvcGljdHVyZT4gSXNzdWVzPC9z\ndW1tYXJ5PgoKLSAqKmFkZF9pc3N1ZV9jb21tZW50KiogLSBBZGQgY29tbWVu\ndCB0byBpc3N1ZSBvciBwdWxsIHJlcXVlc3QKICAtICoqUmVxdWlyZWQgT0F1\ndGggU2NvcGVzKio6IGByZXBvYAogIC0gYGJvZHlgOiBDb21tZW50IGNvbnRl\nbnQuIFJlcXVpcmVkIHVubGVzcyByZWFjdGlvbiBpcyBwcm92aWRlZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgY29tbWVudF9pZGA6IFRoZSBudW1lcmlj\nIElEIG9mIHRoZSBpc3N1ZSBvciBwdWxsIHJlcXVlc3QgY29tbWVudCB0byBy\nZWFjdCB0by4gVXNlIHRoaXMgZm9yIHJlYWN0aW9ucyB0byBjb21tZW50czsg\nb21pdCBpdCB0byByZWFjdCB0byB0aGUgaXNzdWUgb3IgcHVsbCByZXF1ZXN0\nIGl0c2VsZi4gQ2Fubm90IGJlIGNvbWJpbmVkIHdpdGggYm9keS4gKGludGVn\nZXIsIG9wdGlvbmFsKQogIC0gYGlzc3VlX251bWJlcmA6IElzc3VlIG9yIHB1\nbGwgcmVxdWVzdCBudW1iZXIgdG8gY29tbWVudCBvbiBvciByZWFjdCB0by4g\nKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93\nbmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlYWN0aW9uYDogRW1vamkg\ncmVhY3Rpb24gdG8gYWRkLiBSZXF1aXJlZCB1bmxlc3MgYm9keSBpcyBwcm92\naWRlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRv\ncnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipnZXRfbGFiZWwqKiAt\nIEdldCBhIHNwZWNpZmljIGxhYmVsIGZyb20gYSByZXBvc2l0b3J5CiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBuYW1lYDog\nTGFiZWwgbmFtZS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyICh1c2VybmFtZSBvciBvcmdhbml6YXRpb24gbmFt\nZSkgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkg\nbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKippc3N1ZV9yZWFkKiogLSBH\nZXQgaXNzdWUgZGV0YWlscwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gCiAgLSBgaXNzdWVfbnVtYmVyYDogVGhlIG51bWJlciBvZiB0\naGUgaXNzdWUgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgbWV0aG9kYDogVGhl\nIHJlYWQgb3BlcmF0aW9uIHRvIHBlcmZvcm0gb24gYSBzaW5nbGUgaXNzdWUu\nCiAgICBPcHRpb25zIGFyZToKICAgIDEuIGdldCAtIEdldCBpc3N1ZSBkZXRh\naWxzLiBBbHNvIHJldHVybnMgYmVzdC1lZmZvcnQgaGllcmFyY2h5IGZsYWdz\nIChgaGFzX3BhcmVudGAsIGBoYXNfY2hpbGRyZW5gKTsgYHBhcmVudGAgYW5k\nIGBzdWJfaXNzdWVzX3N1bW1hcnlgIGFyZSBvcHRpb25hbCByZWxhdGlvbnNo\naXAgc3VtbWFyaWVzLCBhbmQgYGNsb3NlZF9ieV9wdWxsX3JlcXVlc3RzYCBz\ndW1tYXJpemVzIHRoZSBwdWxsIHJlcXVlc3RzIGNvbmZpZ3VyZWQgdG8gY2xv\nc2UgdGhlIGlzc3VlIGFzIGB0b3RhbF9jb3VudGAgcGx1cyB1cCB0byA1IGBy\nZWZlcmVuY2VzYC4KICAgIDIuIGdldF9jb21tZW50cyAtIEdldCBpc3N1ZSBj\nb21tZW50cy4KICAgIDMuIGdldF9zdWJfaXNzdWVzIC0gR2V0IHN1Yi1pc3N1\nZXMgKGNoaWxkcmVuKSBvZiB0aGUgaXNzdWUuCiAgICA0LiBnZXRfcGFyZW50\nIC0gR2V0IHRoZSBwYXJlbnQgaXNzdWUsIGlmIHRoaXMgaXNzdWUgaXMgYSBz\ndWItaXNzdWUgb2YgYW5vdGhlci4KICAgIDUuIGdldF9sYWJlbHMgLSBHZXQg\nbGFiZWxzIGFzc2lnbmVkIHRvIHRoZSBpc3N1ZS4KICAgICAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0aGUgcmVwb3Np\ndG9yeSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1i\nZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkK\nICAtIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlv\nbiAobWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJl\ncG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeSAoc3RyaW5nLCByZXF1\naXJlZCkKCi0gKippc3N1ZV93cml0ZSoqIC0gQ3JlYXRlIG9yIHVwZGF0ZSBp\nc3N1ZS9wdWxsIHJlcXVlc3QKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVz\nKio6IGByZXBvYAogIC0gYGFzc2lnbmVlc2A6IFVzZXJuYW1lcyB0byBhc3Np\nZ24gdG8gdGhpcyBpc3N1ZSAoc3RyaW5nW10sIG9wdGlvbmFsKQogIC0gYGJv\nZHlgOiBJc3N1ZSBib2R5IGNvbnRlbnQgKHN0cmluZywgb3B0aW9uYWwpCiAg\nLSBgZHVwbGljYXRlX29mYDogSXNzdWUgbnVtYmVyIHRoYXQgdGhpcyBpc3N1\nZSBpcyBhIGR1cGxpY2F0ZSBvZi4gUmVxdWlyZWQgd2hlbiBzdGF0ZV9yZWFz\nb24gaXMgJ2R1cGxpY2F0ZScuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYGlz\nc3VlX2ZpZWxkc2A6IElzc3VlIGZpZWxkIHZhbHVlcyB0byBzZXQgb3IgY2xl\nYXIuIEVhY2ggaXRlbSByZXF1aXJlcyAnZmllbGRfbmFtZScgYW5kIGV4YWN0\nbHkgb25lIG9mICd2YWx1ZScsICdmaWVsZF9vcHRpb25fbmFtZScsIG9yICdk\nZWxldGU6IHRydWUnLiAob2JqZWN0W10sIG9wdGlvbmFsKQogIC0gYGlzc3Vl\nX251bWJlcmA6IElzc3VlIG51bWJlciB0byB1cGRhdGUgKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgbGFiZWxzYDogTGFiZWxzIHRvIGFwcGx5IHRvIHRoaXMg\naXNzdWUgKHN0cmluZ1tdLCBvcHRpb25hbCkKICAtIGBtZXRob2RgOiBXcml0\nZSBvcGVyYXRpb24gdG8gcGVyZm9ybSBvbiBhIHNpbmdsZSBpc3N1ZS4KICAg\nIE9wdGlvbnMgYXJlOgogICAgLSAnY3JlYXRlJyAtIGNyZWF0ZXMgYSBuZXcg\naXNzdWUuCiAgICAtICd1cGRhdGUnIC0gdXBkYXRlcyBhbiBleGlzdGluZyBp\nc3N1ZS4KICAgICAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBtaWxlc3RvbmVg\nOiBNaWxlc3RvbmUgbnVtYmVyIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYG93\nbmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQog\nIC0gYHN0YXRlYDogTmV3IHN0YXRlIChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYHN0YXRlX3JlYXNvbmA6IFJlYXNvbiBmb3IgdGhlIHN0YXRlIGNoYW5nZS4g\nSWdub3JlZCB1bmxlc3Mgc3RhdGUgaXMgY2hhbmdlZC4gKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgdGl0bGVgOiBJc3N1ZSB0aXRsZSAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGB0eXBlYDogVHlwZSBvZiB0aGlzIGlzc3VlLiBGb3IgdXBk\nYXRlcywgcGFzcyBudWxsIHRvIHJlbW92ZSB0aGUgY3VycmVudCB0eXBlLiBP\nbmx5IHVzZSBpZiBpc3N1ZSB0eXBlcyBhcmUgZW5hYmxlZCBmb3IgdGhpcyBy\nZXBvc2l0b3J5LiBVc2UgbGlzdF9pc3N1ZV90eXBlcyB0byBnZXQgdmFsaWQg\ndHlwZSB2YWx1ZXMgZm9yIHRoaXMgcmVwb3NpdG9yeSBvciBpdHMgb3duZXIg\nb3JnYW5pemF0aW9uLiBJZiB0aGUgcmVwb3NpdG9yeSBkb2Vzbid0IHN1cHBv\ncnQgaXNzdWUgdHlwZXMsIG9taXQgdGhpcyBwYXJhbWV0ZXIuIChzdHJpbmcg\nfCBudWxsLCBvcHRpb25hbCkKCi0gKipsaXN0X2lzc3VlX2ZpZWxkcyoqIC0g\nTGlzdCBpc3N1ZSBmaWVsZHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVz\nIChhbnkgb2YpKio6IGByZXBvYCwgYHJlYWQ6b3JnYAogIC0gKipBY2NlcHRl\nZCBPQXV0aCBTY29wZXMqKjogYGFkbWluOm9yZ2AsIGByZWFkOm9yZ2AsIGBy\nZXBvYCwgYHdyaXRlOm9yZ2AKICAtIGBvd25lcmA6IFRoZSBhY2NvdW50IG93\nbmVyIG9mIHRoZSByZXBvc2l0b3J5IG9yIG9yZ2FuaXphdGlvbi4gVGhlIG5h\nbWUgaXMgbm90IGNhc2Ugc2Vuc2l0aXZlLiAoc3RyaW5nLCByZXF1aXJlZCkK\nICAtIGByZXBvYDogVGhlIG5hbWUgb2YgdGhlIHJlcG9zaXRvcnkuIFdoZW4g\ncHJvdmlkZWQsIHJldHVybnMgZmllbGRzIGZvciB0aGlzIHNwZWNpZmljIHJl\ncG9zaXRvcnkgKGluaGVyaXRlZCBmcm9tIGl0cyBvcmdhbml6YXRpb24pLiBX\naGVuIG9taXR0ZWQsIHJldHVybnMgb3JnLWxldmVsIGZpZWxkcyBkaXJlY3Rs\neS4gKHN0cmluZywgb3B0aW9uYWwpCgotICoqbGlzdF9pc3N1ZV90eXBlcyoq\nIC0gTGlzdCBhdmFpbGFibGUgaXNzdWUgdHlwZXMKICAtICoqUmVxdWlyZWQg\nT0F1dGggU2NvcGVzIChhbnkgb2YpKio6IGByZXBvYCwgYHJlYWQ6b3JnYAog\nIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYGFkbWluOm9yZ2AsIGBy\nZWFkOm9yZ2AsIGByZXBvYCwgYHdyaXRlOm9yZ2AKICAtIGBvd25lcmA6IFRo\nZSBhY2NvdW50IG93bmVyIG9mIHRoZSByZXBvc2l0b3J5IG9yIG9yZ2FuaXph\ndGlvbi4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFRoZSBuYW1l\nIG9mIHRoZSByZXBvc2l0b3J5LiBXaGVuIHByb3ZpZGVkLCByZXR1cm5zIGlz\nc3VlIHR5cGVzIGZvciB0aGlzIHNwZWNpZmljIHJlcG9zaXRvcnkuIFdoZW4g\nb21pdHRlZCwgcmV0dXJucyBvcmctbGV2ZWwgaXNzdWUgdHlwZXMgZGlyZWN0\nbHkuIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmxpc3RfaXNzdWVzKiogLSBM\naXN0IGlzc3VlcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgYWZ0ZXJgOiBDdXJzb3IgZm9yIHBhZ2luYXRpb24uIFVzZSB0\naGUgY3Vyc29yIGZyb20gdGhlIHByZXZpb3VzIHJlc3BvbnNlLiAoc3RyaW5n\nLCBvcHRpb25hbCkKICAtIGBkaXJlY3Rpb25gOiBPcmRlciBkaXJlY3Rpb24u\nIElmIHByb3ZpZGVkLCB0aGUgJ29yZGVyQnknIGFsc28gbmVlZHMgdG8gYmUg\ncHJvdmlkZWQuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGZpZWxkX2ZpbHRl\ncnNgOiBGaWx0ZXIgYnkgY3VzdG9tIGlzc3VlIGZpZWxkIHZhbHVlcy4gRWFj\naCBlbnRyeSB0YWtlcyBhIGZpZWxkX25hbWUgYW5kIGEgdmFsdWU7IHRoZSBz\nZXJ2ZXIgbG9va3MgdXAgdGhlIGZpZWxkIGFuZCBjb2VyY2VzIHRoZSB2YWx1\nZSB0byBpdHMgdHlwZSAoc2luZ2xlLXNlbGVjdCBvcHRpb24gbmFtZSwgdGV4\ndCwgbnVtYmVyLCBvciBZWVlZLU1NLUREIGRhdGUpLiAob2JqZWN0W10sIG9w\ndGlvbmFsKQogIC0gYGZpZWxkc2A6IFN1YnNldCBvZiBmaWVsZHMgdG8gcmV0\ndXJuIGZvciBlYWNoIGlzc3VlLiBJZiBvbWl0dGVkLCBhbGwgZmllbGRzIGFy\nZSByZXR1cm5lZC4gVXNlIHRoaXMgdG8gcmVkdWNlIHJlc3BvbnNlIHNpemUg\nd2hlbiB5b3Ugb25seSBuZWVkIHNwZWNpZmljIGZpZWxkczsgb21pdHRpbmcg\nJ2JvZHknIGFuZCAnZmllbGRfdmFsdWVzJyBpbiBwYXJ0aWN1bGFyIGRyb3Bz\nIHRoZSBsYXJnZXN0IHBlci1yZXN1bHQgZGF0YS4gKHN0cmluZ1tdLCBvcHRp\nb25hbCkKICAtIGBsYWJlbHNgOiBGaWx0ZXIgYnkgbGFiZWxzIChzdHJpbmdb\nXSwgb3B0aW9uYWwpCiAgLSBgb3JkZXJCeWA6IE9yZGVyIGlzc3VlcyBieSBm\naWVsZC4gSWYgcHJvdmlkZWQsIHRoZSAnZGlyZWN0aW9uJyBhbHNvIG5lZWRz\nIHRvIGJlIHByb3ZpZGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25l\ncmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBg\ncGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9yIHBhZ2luYXRpb24gKG1p\nbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGByZXBvYDog\nUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNpbmNl\nYDogRmlsdGVyIGJ5IGRhdGUgKElTTyA4NjAxIHRpbWVzdGFtcCkgKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgc3RhdGVgOiBGaWx0ZXIgYnkgc3RhdGUsIGJ5\nIGRlZmF1bHQgYm90aCBvcGVuIGFuZCBjbG9zZWQgaXNzdWVzIGFyZSByZXR1\ncm5lZCB3aGVuIG5vdCBwcm92aWRlZCAoc3RyaW5nLCBvcHRpb25hbCkKCi0g\nKipzZWFyY2hfaXNzdWVzKiogLSBTZWFyY2ggaXNzdWVzCiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBmaWVsZHNgOiBTdWJz\nZXQgb2YgZmllbGRzIHRvIHJldHVybiBmb3IgZWFjaCBpc3N1ZSByZXN1bHQu\nIElmIG9taXR0ZWQsIGFsbCBmaWVsZHMgYXJlIHJldHVybmVkLiBVc2UgdGhp\ncyB0byByZWR1Y2UgcmVzcG9uc2Ugc2l6ZSB3aGVuIHlvdSBvbmx5IG5lZWQg\nc3BlY2lmaWMgZmllbGRzOyBvbWl0dGluZyAnYm9keScsICdyZWFjdGlvbnMn\nLCBhbmQgJ2xhYmVscycgaW4gcGFydGljdWxhciBkcm9wcyB0aGUgbGFyZ2Vz\ndCBwZXItcmVzdWx0IGRhdGEuIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBg\nb3JkZXJgOiBTb3J0IG9yZGVyIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93\nbmVyYDogT3B0aW9uYWwgcmVwb3NpdG9yeSBvd25lci4gSWYgcHJvdmlkZWQg\nd2l0aCByZXBvLCBvbmx5IGlzc3VlcyBmb3IgdGhpcyByZXBvc2l0b3J5IGFy\nZSBsaXN0ZWQuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdl\nIG51bWJlciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlv\nbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdp\nbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAg\nLSBgcXVlcnlgOiBUaGUgc2VhcmNoIHF1ZXJ5LCBhcyBuYXR1cmFsIGxhbmd1\nYWdlLiBXaGVuIHRoZSB1c2VyIGdpdmVzIGFsdGVybmF0aXZlIHdvcmRpbmdz\nLCBpbmNsdWRlIHRoZW0gYXMgcGxhaW4gd29yZHMgcmF0aGVyIHRoYW4gam9p\nbmluZyB0aGVtIHdpdGggT1IuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJl\ncG9gOiBPcHRpb25hbCByZXBvc2l0b3J5IG5hbWUuIElmIHByb3ZpZGVkIHdp\ndGggb3duZXIsIG9ubHkgaXNzdWVzIGZvciB0aGlzIHJlcG9zaXRvcnkgYXJl\nIGxpc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc29ydGA6IFNvcnQg\nZmllbGQgYnkgbnVtYmVyIG9mIG1hdGNoZXMgb2YgY2F0ZWdvcmllcywgZGVm\nYXVsdHMgdG8gYmVzdCBtYXRjaCAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipz\ndWJfaXNzdWVfd3JpdGUqKiAtIENoYW5nZSBzdWItaXNzdWUKICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0gYGFmdGVyX2lkYDog\nVGhlIElEIG9mIHRoZSBzdWItaXNzdWUgdG8gYmUgcHJpb3JpdGl6ZWQgYWZ0\nZXIgKGVpdGhlciBhZnRlcl9pZCBPUiBiZWZvcmVfaWQgc2hvdWxkIGJlIHNw\nZWNpZmllZCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgYmVmb3JlX2lkYDog\nVGhlIElEIG9mIHRoZSBzdWItaXNzdWUgdG8gYmUgcHJpb3JpdGl6ZWQgYmVm\nb3JlIChlaXRoZXIgYWZ0ZXJfaWQgT1IgYmVmb3JlX2lkIHNob3VsZCBiZSBz\ncGVjaWZpZWQpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYGlzc3VlX251bWJl\ncmA6IFRoZSBudW1iZXIgb2YgdGhlIHBhcmVudCBpc3N1ZSAobnVtYmVyLCBy\nZXF1aXJlZCkKICAtIGBtZXRob2RgOiBUaGUgYWN0aW9uIHRvIHBlcmZvcm0g\nb24gYSBzaW5nbGUgc3ViLWlzc3VlCiAgICBPcHRpb25zIGFyZToKICAgIC0g\nJ2FkZCcgLSBhZGQgYSBzdWItaXNzdWUgdG8gYSBwYXJlbnQgaXNzdWUgaW4g\nYSBHaXRIdWIgcmVwb3NpdG9yeS4KICAgIC0gJ3JlbW92ZScgLSByZW1vdmUg\nYSBzdWItaXNzdWUgZnJvbSBhIHBhcmVudCBpc3N1ZSBpbiBhIEdpdEh1YiBy\nZXBvc2l0b3J5LgogICAgLSAncmVwcmlvcml0aXplJyAtIGNoYW5nZSB0aGUg\nb3JkZXIgb2Ygc3ViLWlzc3VlcyB3aXRoaW4gYSBwYXJlbnQgaXNzdWUgaW4g\nYSBHaXRIdWIgcmVwb3NpdG9yeS4gVXNlIGVpdGhlciAnYWZ0ZXJfaWQnIG9y\nICdiZWZvcmVfaWQnIHRvIHNwZWNpZnkgdGhlIG5ldyBwb3NpdGlvbi4KICAg\nIFdyaXRlcyBpc3N1ZSBoaWVyYXJjaHkuIFRvIG1vdmUgYSBzdWItaXNzdWUg\ndG8gYSBuZXcgcGFyZW50LCB1c2UgYGFkZGAgd2l0aCBgcmVwbGFjZV9wYXJl\nbnQ9dHJ1ZWA7IHRoZXJlIGlzIG5vIHdyaXRhYmxlIHBhcmVudCBmaWVsZC4K\nICAgICAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRv\ncnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwbGFjZV9wYXJl\nbnRgOiBXaGVuIHRydWUsIHJlcGxhY2VzIHRoZSBzdWItaXNzdWUncyBjdXJy\nZW50IHBhcmVudCBpc3N1ZS4gVXNlIHdpdGggJ2FkZCcgbWV0aG9kIG9ubHku\nIChib29sZWFuLCBvcHRpb25hbCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBu\nYW1lIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHN1Yl9pc3N1ZV9pZGA6IFRo\nZSBJRCBvZiB0aGUgc3ViLWlzc3VlIHRvIGFkZC4gSUQgaXMgbm90IHRoZSBz\nYW1lIGFzIGlzc3VlIG51bWJlciAobnVtYmVyLCByZXF1aXJlZCkKCjwvZGV0\nYWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBt\nZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvdGFnLWRhcmsucG5nIj48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvdGFnLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9v\nY3RpY29ucy9pY29ucy90YWctbGlnaHQucG5nIiB3aWR0aD0iMjAiIGhlaWdo\ndD0iMjAiIGFsdD0idGFnIj48L3BpY3R1cmU+IExhYmVsczwvc3VtbWFyeT4K\nCi0gKipnZXRfbGFiZWwqKiAtIEdldCBhIHNwZWNpZmljIGxhYmVsIGZyb20g\nYSByZXBvc2l0b3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBg\ncmVwb2AKICAtIGBuYW1lYDogTGFiZWwgbmFtZS4gKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyICh1c2VybmFtZSBv\nciBvcmdhbml6YXRpb24gbmFtZSkgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBg\ncmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0g\nKipsYWJlbF93cml0ZSoqIC0gV3JpdGUgb3BlcmF0aW9ucyBvbiByZXBvc2l0\nb3J5IGxhYmVscwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgY29sb3JgOiBMYWJlbCBjb2xvciBhcyA2LWNoYXJhY3RlciBo\nZXggY29kZSB3aXRob3V0ICcjJyBwcmVmaXggKGUuZy4sICdmMjk1MTMnKS4g\nUmVxdWlyZWQgZm9yICdjcmVhdGUnLCBvcHRpb25hbCBmb3IgJ3VwZGF0ZScu\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGRlc2NyaXB0aW9uYDogTGFiZWwg\nZGVzY3JpcHRpb24gdGV4dC4gT3B0aW9uYWwgZm9yICdjcmVhdGUnIGFuZCAn\ndXBkYXRlJy4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgbWV0aG9kYDogT3Bl\ncmF0aW9uIHRvIHBlcmZvcm06ICdjcmVhdGUnLCAndXBkYXRlJywgb3IgJ2Rl\nbGV0ZScgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgbmFtZWA6IExhYmVsIG5h\nbWUgLSByZXF1aXJlZCBmb3IgYWxsIG9wZXJhdGlvbnMgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgbmV3X25hbWVgOiBOZXcgbmFtZSBmb3IgdGhlIGxhYmVs\nICh1c2VkIG9ubHkgd2l0aCAndXBkYXRlJyBtZXRob2QgdG8gcmVuYW1lKSAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3du\nZXIgKHVzZXJuYW1lIG9yIG9yZ2FuaXphdGlvbiBuYW1lKSAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcs\nIHJlcXVpcmVkKQoKLSAqKmxpc3RfbGFiZWwqKiAtIExpc3QgbGFiZWxzIGZy\nb20gYSByZXBvc2l0b3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3Blcyoq\nOiBgcmVwb2AKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHVzZXJu\nYW1lIG9yIG9yZ2FuaXphdGlvbiBuYW1lKSAtIHJlcXVpcmVkIGZvciBhbGwg\nb3BlcmF0aW9ucyAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVw\nb3NpdG9yeSBuYW1lIC0gcmVxdWlyZWQgZm9yIGFsbCBvcGVyYXRpb25zIChz\ndHJpbmcsIHJlcXVpcmVkKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3Vt\nbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1z\nY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9iZWxs\nLWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hl\nbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvYmVsbC1s\naWdodC5wbmciPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvYmVsbC1s\naWdodC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJiZWxsIj48\nL3BpY3R1cmU+IE5vdGlmaWNhdGlvbnM8L3N1bW1hcnk+CgotICoqZGlzbWlz\nc19ub3RpZmljYXRpb24qKiAtIERpc21pc3Mgbm90aWZpY2F0aW9uCiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgbm90aWZpY2F0aW9uc2AKICAt\nIGBzdGF0ZWA6IFRoZSBuZXcgc3RhdGUgb2YgdGhlIG5vdGlmaWNhdGlvbiAo\ncmVhZC9kb25lKSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGB0aHJlYWRJRGA6\nIFRoZSBJRCBvZiB0aGUgbm90aWZpY2F0aW9uIHRocmVhZCAoc3RyaW5nLCBy\nZXF1aXJlZCkKCi0gKipnZXRfbm90aWZpY2F0aW9uX2RldGFpbHMqKiAtIEdl\ndCBub3RpZmljYXRpb24gZGV0YWlscwogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYG5vdGlmaWNhdGlvbnNgCiAgLSBgbm90aWZpY2F0aW9uSURg\nOiBUaGUgSUQgb2YgdGhlIG5vdGlmaWNhdGlvbiAoc3RyaW5nLCByZXF1aXJl\nZCkKCi0gKipsaXN0X25vdGlmaWNhdGlvbnMqKiAtIExpc3Qgbm90aWZpY2F0\naW9ucwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYG5vdGlmaWNh\ndGlvbnNgCiAgLSBgYmVmb3JlYDogT25seSBzaG93IG5vdGlmaWNhdGlvbnMg\ndXBkYXRlZCBiZWZvcmUgdGhlIGdpdmVuIHRpbWUgKElTTyA4NjAxIGZvcm1h\ndCkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgZmlsdGVyYDogRmlsdGVyIG5v\ndGlmaWNhdGlvbnMgdG8sIHVzZSBkZWZhdWx0IHVubGVzcyBzcGVjaWZpZWQu\nIFJlYWQgbm90aWZpY2F0aW9ucyBhcmUgb25lcyB0aGF0IGhhdmUgYWxyZWFk\neSBiZWVuIGFja25vd2xlZGdlZCBieSB0aGUgdXNlci4gUGFydGljaXBhdGlu\nZyBub3RpZmljYXRpb25zIGFyZSB0aG9zZSB0aGF0IHRoZSB1c2VyIGlzIGRp\ncmVjdGx5IGludm9sdmVkIGluLCBzdWNoIGFzIGlzc3VlcyBvciBwdWxsIHJl\ncXVlc3RzIHRoZXkgaGF2ZSBjb21tZW50ZWQgb24gb3IgY3JlYXRlZC4gKHN0\ncmluZywgb3B0aW9uYWwpCiAgLSBgb3duZXJgOiBPcHRpb25hbCByZXBvc2l0\nb3J5IG93bmVyLiBJZiBwcm92aWRlZCB3aXRoIHJlcG8sIG9ubHkgbm90aWZp\nY2F0aW9ucyBmb3IgdGhpcyByZXBvc2l0b3J5IGFyZSBsaXN0ZWQuIChzdHJp\nbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFn\naW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBh\nZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwg\nbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IE9wdGlv\nbmFsIHJlcG9zaXRvcnkgbmFtZS4gSWYgcHJvdmlkZWQgd2l0aCBvd25lciwg\nb25seSBub3RpZmljYXRpb25zIGZvciB0aGlzIHJlcG9zaXRvcnkgYXJlIGxp\nc3RlZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgc2luY2VgOiBPbmx5IHNo\nb3cgbm90aWZpY2F0aW9ucyB1cGRhdGVkIGFmdGVyIHRoZSBnaXZlbiB0aW1l\nIChJU08gODYwMSBmb3JtYXQpIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKm1h\nbmFnZV9ub3RpZmljYXRpb25fc3Vic2NyaXB0aW9uKiogLSBNYW5hZ2Ugbm90\naWZpY2F0aW9uIHN1YnNjcmlwdGlvbgogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYG5vdGlmaWNhdGlvbnNgCiAgLSBgYWN0aW9uYDogQWN0aW9u\nIHRvIHBlcmZvcm06IGlnbm9yZSwgd2F0Y2gsIG9yIGRlbGV0ZSB0aGUgbm90\naWZpY2F0aW9uIHN1YnNjcmlwdGlvbi4gKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgbm90aWZpY2F0aW9uSURgOiBUaGUgSUQgb2YgdGhlIG5vdGlmaWNhdGlv\nbiB0aHJlYWQuIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKm1hbmFnZV9yZXBv\nc2l0b3J5X25vdGlmaWNhdGlvbl9zdWJzY3JpcHRpb24qKiAtIE1hbmFnZSBy\nZXBvc2l0b3J5IG5vdGlmaWNhdGlvbiBzdWJzY3JpcHRpb24KICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzKio6IGBub3RpZmljYXRpb25zYAogIC0gYGFj\ndGlvbmA6IEFjdGlvbiB0byBwZXJmb3JtOiBpZ25vcmUsIHdhdGNoLCBvciBk\nZWxldGUgdGhlIHJlcG9zaXRvcnkgbm90aWZpY2F0aW9uIHN1YnNjcmlwdGlv\nbi4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBUaGUgYWNjb3Vu\ndCBvd25lciBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgcmVwb2A6IFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3Ry\naW5nLCByZXF1aXJlZCkKCi0gKiptYXJrX2FsbF9ub3RpZmljYXRpb25zX3Jl\nYWQqKiAtIE1hcmsgYWxsIG5vdGlmaWNhdGlvbnMgYXMgcmVhZAogIC0gKipS\nZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYG5vdGlmaWNhdGlvbnNgCiAgLSBg\nbGFzdFJlYWRBdGA6IERlc2NyaWJlcyB0aGUgbGFzdCBwb2ludCB0aGF0IG5v\ndGlmaWNhdGlvbnMgd2VyZSBjaGVja2VkIChvcHRpb25hbCkuIERlZmF1bHQ6\nIE5vdyAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IE9wdGlvbmFs\nIHJlcG9zaXRvcnkgb3duZXIuIElmIHByb3ZpZGVkIHdpdGggcmVwbywgb25s\neSBub3RpZmljYXRpb25zIGZvciB0aGlzIHJlcG9zaXRvcnkgYXJlIG1hcmtl\nZCBhcyByZWFkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGByZXBvYDogT3B0\naW9uYWwgcmVwb3NpdG9yeSBuYW1lLiBJZiBwcm92aWRlZCB3aXRoIG93bmVy\nLCBvbmx5IG5vdGlmaWNhdGlvbnMgZm9yIHRoaXMgcmVwb3NpdG9yeSBhcmUg\nbWFya2VkIGFzIHJlYWQuIChzdHJpbmcsIG9wdGlvbmFsKQoKPC9kZXRhaWxz\nPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9v\nY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24tZGFyay5wbmciPjxzb3VyY2Ug\nbWVkaWE9IihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9\nInBrZy9vY3RpY29ucy9pY29ucy9vcmdhbml6YXRpb24tbGlnaHQucG5nIj48\naW1nIHNyYz0icGtnL29jdGljb25zL2ljb25zL29yZ2FuaXphdGlvbi1saWdo\ndC5wbmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJvcmdhbml6YXRp\nb24iPjwvcGljdHVyZT4gT3JnYW5pemF0aW9uczwvc3VtbWFyeT4KCi0gKipz\nZWFyY2hfb3JncyoqIC0gU2VhcmNoIG9yZ2FuaXphdGlvbnMKICAtICoqUmVx\ndWlyZWQgT0F1dGggU2NvcGVzKio6IGByZWFkOm9yZ2AKICAtICoqQWNjZXB0\nZWQgT0F1dGggU2NvcGVzKio6IGBhZG1pbjpvcmdgLCBgcmVhZDpvcmdgLCBg\nd3JpdGU6b3JnYAogIC0gYG9yZGVyYDogU29ydCBvcmRlciAoc3RyaW5nLCBv\ncHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRp\nb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDog\nUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAx\nMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5YDogT3JnYW5pemF0\naW9uIHNlYXJjaCBxdWVyeS4gRXhhbXBsZXM6ICdtaWNyb3NvZnQnLCAnbG9j\nYXRpb246Y2FsaWZvcm5pYScsICdjcmVhdGVkOj49MjAyNS0wMS0wMScuIFNl\nYXJjaCBpcyBhdXRvbWF0aWNhbGx5IHNjb3BlZCB0byB0eXBlOm9yZy4gKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgc29ydGA6IFNvcnQgZmllbGQgYnkgY2F0\nZWdvcnkgKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFpbHM+Cgo8ZGV0YWls\ncz4KCjxzdW1tYXJ5PjxwaWN0dXJlPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJz\nLWNvbG9yLXNjaGVtZTogZGFyaykiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL3Byb2plY3QtZGFyay5wbmciPjxzb3VyY2UgbWVkaWE9IihwcmVmZXJz\nLWNvbG9yLXNjaGVtZTogbGlnaHQpIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9p\nY29ucy9wcm9qZWN0LWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3RpY29u\ncy9pY29ucy9wcm9qZWN0LWxpZ2h0LnBuZyIgd2lkdGg9IjIwIiBoZWlnaHQ9\nIjIwIiBhbHQ9InByb2plY3QiPjwvcGljdHVyZT4gUHJvamVjdHM8L3N1bW1h\ncnk+CgotICoqcHJvamVjdHNfZ2V0KiogLSBHZXQgZGV0YWlscyBvZiBHaXRI\ndWIgUHJvamVjdHMgcmVzb3VyY2VzCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNj\nb3BlcyoqOiBgcmVhZDpwcm9qZWN0YAogIC0gKipBY2NlcHRlZCBPQXV0aCBT\nY29wZXMqKjogYHByb2plY3RgLCBgcmVhZDpwcm9qZWN0YAogIC0gYGZpZWxk\nX2lkYDogVGhlIGZpZWxkJ3MgSUQuIFJlcXVpcmVkIGZvciAnZ2V0X3Byb2pl\nY3RfZmllbGQnIG1ldGhvZC4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgZmll\nbGRfbmFtZXNgOiBTcGVjaWZpYyBsaXN0IG9mIGZpZWxkIG5hbWVzIHRvIGlu\nY2x1ZGUgaW4gdGhlIHJlc3BvbnNlIHdoZW4gZ2V0dGluZyBhIHByb2plY3Qg\naXRlbSAoZS5nLiBbIlN0YXR1cyIsICJQcmlvcml0eSJdKS4gUmVzb2x2ZWQg\nc2VydmVyLXNpZGUgdG8gZmllbGQgSURzIOKAlCBwYXNzIHRoaXMgaW5zdGVh\nZCBvZiAnZmllbGRzJyB3aGVuIHlvdSBvbmx5IGtub3cgdGhlIGh1bWFuLXJl\nYWRhYmxlIG5hbWVzLiBNdXR1YWxseSBleGNsdXNpdmUgd2l0aCAnZmllbGRz\nJyDigJQgcHJvdmlkZSBvbmUsIG5vdCBib3RoLiBPbmx5IHVzZWQgZm9yICdn\nZXRfcHJvamVjdF9pdGVtJyBtZXRob2QuIChzdHJpbmdbXSwgb3B0aW9uYWwp\nCiAgLSBgZmllbGRzYDogU3BlY2lmaWMgbGlzdCBvZiBmaWVsZCBJRHMgdG8g\naW5jbHVkZSBpbiB0aGUgcmVzcG9uc2Ugd2hlbiBnZXR0aW5nIGEgcHJvamVj\ndCBpdGVtIChlLmcuIFsiMTAyNTg5IiwgIjk4NTIwMSIsICIxNjk4NzUiXSku\nIElmIG5laXRoZXIgJ2ZpZWxkcycgbm9yICdmaWVsZF9uYW1lcycgaXMgcHJv\ndmlkZWQsIG9ubHkgdGhlIHRpdGxlIGZpZWxkIGlzIGluY2x1ZGVkLiBNdXR1\nYWxseSBleGNsdXNpdmUgd2l0aCAnZmllbGRfbmFtZXMnIOKAlCBwcm92aWRl\nIG9uZSwgbm90IGJvdGguIE9ubHkgdXNlZCBmb3IgJ2dldF9wcm9qZWN0X2l0\nZW0nIG1ldGhvZC4gKHN0cmluZ1tdLCBvcHRpb25hbCkKICAtIGBpdGVtX2lk\nYDogVGhlIGl0ZW0ncyBJRC4gUmVxdWlyZWQgZm9yICdnZXRfcHJvamVjdF9p\ndGVtJyBtZXRob2QuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYG1ldGhvZGA6\nIFRoZSBtZXRob2QgdG8gZXhlY3V0ZSAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGBvd25lcmA6IFRoZSBvd25lciAodXNlciBvciBvcmdhbml6YXRpb24gbG9n\naW4pLiBUaGUgbmFtZSBpcyBub3QgY2FzZSBzZW5zaXRpdmUuIChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYG93bmVyX3R5cGVgOiBPd25lciB0eXBlICh1c2Vy\nIG9yIG9yZykuIElmIG5vdCBwcm92aWRlZCwgd2lsbCBiZSBhdXRvbWF0aWNh\nbGx5IGRldGVjdGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwcm9qZWN0\nX251bWJlcmA6IFRoZSBwcm9qZWN0J3MgbnVtYmVyLiAobnVtYmVyLCBvcHRp\nb25hbCkKICAtIGBzdGF0dXNfdXBkYXRlX2lkYDogVGhlIG5vZGUgSUQgb2Yg\ndGhlIHByb2plY3Qgc3RhdHVzIHVwZGF0ZS4gUmVxdWlyZWQgZm9yICdnZXRf\ncHJvamVjdF9zdGF0dXNfdXBkYXRlJyBtZXRob2QuIChzdHJpbmcsIG9wdGlv\nbmFsKQogIC0gYHZpZXdfaWRgOiBUaGUgbm9kZSBJRCBvZiB0aGUgcHJvamVj\ndCB2aWV3LiBSZXF1aXJlZCBmb3IgJ2dldF9wcm9qZWN0X3ZpZXcnIG1ldGhv\nZC4gKHN0cmluZywgb3B0aW9uYWwpCgotICoqcHJvamVjdHNfbGlzdCoqIC0g\nTGlzdCBHaXRIdWIgUHJvamVjdHMgcmVzb3VyY2VzCiAgLSAqKlJlcXVpcmVk\nIE9BdXRoIFNjb3BlcyoqOiBgcmVhZDpwcm9qZWN0YAogIC0gKipBY2NlcHRl\nZCBPQXV0aCBTY29wZXMqKjogYHByb2plY3RgLCBgcmVhZDpwcm9qZWN0YAog\nIC0gYGFmdGVyYDogRm9yd2FyZCBwYWdpbmF0aW9uIGN1cnNvciBmcm9tIHBy\nZXZpb3VzIHBhZ2VJbmZvLm5leHRDdXJzb3IuIChzdHJpbmcsIG9wdGlvbmFs\nKQogIC0gYGJlZm9yZWA6IEJhY2t3YXJkIHBhZ2luYXRpb24gY3Vyc29yIGZy\nb20gcHJldmlvdXMgcGFnZUluZm8ucHJldkN1cnNvciAocmFyZSkuIChzdHJp\nbmcsIG9wdGlvbmFsKQogIC0gYGZpZWxkX25hbWVzYDogRmllbGQgbmFtZXMg\ndG8gaW5jbHVkZSB3aGVuIGxpc3RpbmcgcHJvamVjdCBpdGVtcyAoZS5nLiBb\nIlN0YXR1cyIsICJQcmlvcml0eSJdKS4gUmVzb2x2ZWQgc2VydmVyLXNpZGUg\ndG8gZmllbGQgSURzIOKAlCBwYXNzIHRoaXMgaW5zdGVhZCBvZiAnZmllbGRz\nJyB3aGVuIHlvdSBvbmx5IGtub3cgdGhlIGh1bWFuLXJlYWRhYmxlIG5hbWVz\nLiBOYW1lcyB0aGF0IGZhaWwgdG8gcmVzb2x2ZSByZXR1cm4gYSBzdHJ1Y3R1\ncmVkIGVycm9yLiBNdXR1YWxseSBleGNsdXNpdmUgd2l0aCAnZmllbGRzJyDi\ngJQgcHJvdmlkZSBvbmUsIG5vdCBib3RoLiBPbmx5IHVzZWQgZm9yICdsaXN0\nX3Byb2plY3RfaXRlbXMnIG1ldGhvZC4gKHN0cmluZ1tdLCBvcHRpb25hbCkK\nICAtIGBmaWVsZHNgOiBGaWVsZCBJRHMgdG8gaW5jbHVkZSB3aGVuIGxpc3Rp\nbmcgcHJvamVjdCBpdGVtcyAoZS5nLiBbIjEwMjU4OSIsICI5ODUyMDEiXSku\nIENSSVRJQ0FMOiBBbHdheXMgcHJvdmlkZSB0byBnZXQgZmllbGQgdmFsdWVz\nLiBXaXRob3V0IHRoaXMgKGFuZCB3aXRob3V0ICdmaWVsZF9uYW1lcycpLCBv\nbmx5IHRpdGxlcyByZXR1cm5lZC4gTXV0dWFsbHkgZXhjbHVzaXZlIHdpdGgg\nJ2ZpZWxkX25hbWVzJyDigJQgcHJvdmlkZSBvbmUsIG5vdCBib3RoLiBPbmx5\nIHVzZWQgZm9yICdsaXN0X3Byb2plY3RfaXRlbXMnIG1ldGhvZC4gKHN0cmlu\nZ1tdLCBvcHRpb25hbCkKICAtIGBtZXRob2RgOiBUaGUgYWN0aW9uIHRvIHBl\ncmZvcm0gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBUaGUgb3du\nZXIgKHVzZXIgb3Igb3JnYW5pemF0aW9uIGxvZ2luKS4gVGhlIG5hbWUgaXMg\nbm90IGNhc2Ugc2Vuc2l0aXZlLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBv\nd25lcl90eXBlYDogT3duZXIgdHlwZSAodXNlciBvciBvcmcpLiBJZiBub3Qg\ncHJvdmlkZWQsIHdpbGwgYXV0b21hdGljYWxseSB0cnkgYm90aC4gKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgcGVyX3BhZ2VgOiBSZXN1bHRzIHBlciBwYWdl\nIChtYXggNTApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHByb2plY3RfbnVt\nYmVyYDogVGhlIHByb2plY3QncyBudW1iZXIuIFJlcXVpcmVkIGZvciAnbGlz\ndF9wcm9qZWN0X2ZpZWxkcycsICdsaXN0X3Byb2plY3RfaXRlbXMnLCAnbGlz\ndF9wcm9qZWN0X3ZpZXdzJywgYW5kICdsaXN0X3Byb2plY3Rfc3RhdHVzX3Vw\nZGF0ZXMnIG1ldGhvZHMuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5\nYDogRmlsdGVyL3F1ZXJ5IHN0cmluZy4gRm9yIGxpc3RfcHJvamVjdHM6IGZp\nbHRlciBieSB0aXRsZSB0ZXh0IGFuZCBzdGF0ZSAoZS5nLiAicm9hZG1hcCBp\nczpvcGVuIikuIEZvciBsaXN0X3Byb2plY3RfaXRlbXM6IGFkdmFuY2VkIGZp\nbHRlcmluZyB1c2luZyBHaXRIdWIncyBwcm9qZWN0IGZpbHRlcmluZyBzeW50\nYXguIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKnByb2plY3RzX3dyaXRlKiog\nLSBNYW5hZ2UgR2l0SHViIFByb2plY3RzCiAgLSAqKlJlcXVpcmVkIE9BdXRo\nIFNjb3BlcyoqOiBgcHJvamVjdGAKICAtIGBib2R5YDogVGhlIGJvZHkgb2Yg\ndGhlIHN0YXR1cyB1cGRhdGUgKG1hcmtkb3duKS4gVXNlZCBmb3IgJ2NyZWF0\nZV9wcm9qZWN0X3N0YXR1c191cGRhdGUnIG1ldGhvZC4gKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgZmllbGRfbmFtZWA6IFRoZSBuYW1lIG9mIHRoZSBpdGVy\nYXRpb24gZmllbGQgKGUuZy4gJ1NwcmludCcpLiBSZXF1aXJlZCBmb3IgJ2Ny\nZWF0ZV9pdGVyYXRpb25fZmllbGQnIG1ldGhvZC4gKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgZmlsdGVyYDogU2F2ZWQgdmlldyBmaWx0ZXI7IG9taXQgb24g\ndXBkYXRlIHRvIHByZXNlcnZlIGl0LCBvciBwYXNzIG51bGwgdG8gY2xlYXIg\naXQuIChzdHJpbmcgfCBudWxsLCBvcHRpb25hbCkKICAtIGBpc3N1ZV9udW1i\nZXJgOiBUaGUgaXNzdWUgbnVtYmVyLiBSZXF1aXJlZCBmb3IgJ2FkZF9wcm9q\nZWN0X2l0ZW0nIHdoZW4gaXRlbV90eXBlIGlzICdpc3N1ZScuIEFsc28gYWNj\nZXB0ZWQgYnkgJ3VwZGF0ZV9wcm9qZWN0X2l0ZW0nIHRvIHJlc29sdmUgdGhl\nIGl0ZW0gYnkgaXNzdWUgbnVtYmVyIChjb21iaW5lIHdpdGggaXRlbV9vd25l\nciBhbmQgaXRlbV9yZXBvKS4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgaXRl\nbV9pZGA6IFRoZSBwcm9qZWN0IGl0ZW0gSUQuIFJlcXVpcmVkIGZvciAnZGVs\nZXRlX3Byb2plY3RfaXRlbScuIEZvciAndXBkYXRlX3Byb2plY3RfaXRlbScs\nIHByb3ZpZGUgZWl0aGVyIGl0ZW1faWQsIG9yIChpdGVtX293bmVyICsgaXRl\nbV9yZXBvICsgaXNzdWVfbnVtYmVyKSB0byByZXNvbHZlIHRoZSBpdGVtIGJ5\nIGlzc3VlLiAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBpdGVtX293bmVyYDog\nVGhlIG93bmVyICh1c2VyIG9yIG9yZ2FuaXphdGlvbikgb2YgdGhlIHJlcG9z\naXRvcnkgY29udGFpbmluZyB0aGUgaXNzdWUgb3IgcHVsbCByZXF1ZXN0LiBS\nZXF1aXJlZCBmb3IgJ2FkZF9wcm9qZWN0X2l0ZW0nIG1ldGhvZC4gQWxzbyBh\nY2NlcHRlZCBieSAndXBkYXRlX3Byb2plY3RfaXRlbScgd2hlbiByZXNvbHZp\nbmcgdGhlIGl0ZW0gYnkgaXNzdWUgbnVtYmVyLiAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGBpdGVtX3JlcG9gOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9y\neSBjb250YWluaW5nIHRoZSBpc3N1ZSBvciBwdWxsIHJlcXVlc3QuIFJlcXVp\ncmVkIGZvciAnYWRkX3Byb2plY3RfaXRlbScgbWV0aG9kLiBBbHNvIGFjY2Vw\ndGVkIGJ5ICd1cGRhdGVfcHJvamVjdF9pdGVtJyB3aGVuIHJlc29sdmluZyB0\naGUgaXRlbSBieSBpc3N1ZSBudW1iZXIuIChzdHJpbmcsIG9wdGlvbmFsKQog\nIC0gYGl0ZW1fdHlwZWA6IFRoZSBpdGVtJ3MgdHlwZSwgZWl0aGVyIGlzc3Vl\nIG9yIHB1bGxfcmVxdWVzdC4gUmVxdWlyZWQgZm9yICdhZGRfcHJvamVjdF9p\ndGVtJyBtZXRob2QuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYGl0ZW1zYDog\nVGhlIGl0ZW1zIHRvIHVwZGF0ZSB3aXRoIHRoZSB0b3AtbGV2ZWwgJ3VwZGF0\nZWRfZmllbGQnLiBSZXF1aXJlZCBmb3IgJ3VwZGF0ZV9wcm9qZWN0X2l0ZW1z\nJzsgcHJlZmVyIGl0IG92ZXIgY2FsbGluZyAndXBkYXRlX3Byb2plY3RfaXRl\nbScgaW4gYSBsb29wLiBFYWNoIGVudHJ5IG11c3QgbWF0Y2ggZXhhY3RseSBv\nbmUgcmVmZXJlbmNlIHZhcmlhbnQ6ICdub2RlX2lkJywgbnVtZXJpYyAnaXRl\nbV9pZCcsIG9yICdpdGVtX293bmVyJyArICdpdGVtX3JlcG8nICsgJ2lzc3Vl\nX251bWJlcicuIExpbWl0OiA1MCBpdGVtcyBwZXIgY2FsbC4gKG9iamVjdFtd\nLCBvcHRpb25hbCkKICAtIGBpdGVyYXRpb25fZHVyYXRpb25gOiBEdXJhdGlv\nbiBpbiBkYXlzIGZvciBpdGVyYXRpb25zIG9mIHRoZSBmaWVsZCAoZS5nLiA3\nIGZvciB3ZWVrbHksIDE0IGZvciBiaS13ZWVrbHkpLiBSZXF1aXJlZCBmb3Ig\nJ2NyZWF0ZV9pdGVyYXRpb25fZmllbGQnIG1ldGhvZC4gKG51bWJlciwgb3B0\naW9uYWwpCiAgLSBgaXRlcmF0aW9uc2A6IEN1c3RvbSBpdGVyYXRpb25zIGZv\nciAnY3JlYXRlX2l0ZXJhdGlvbl9maWVsZCcgbWV0aG9kLiBPbmx5IHNldCB0\naGlzIHdoZW4geW91IG5lZWQgaXRlcmF0aW9ucyB3aXRoIHZhcnlpbmcgZHVy\nYXRpb25zLCBicmVha3MgYmV0d2VlbiB0aGVtLCBvciBzcGVjaWZpYyB0aXRs\nZXMuIE90aGVyd2lzZSBvbWl0IGl0OiBHaXRIdWIgYXV0by1jcmVhdGVzIHRo\ncmVlIGl0ZXJhdGlvbnMgb2YgJ2l0ZXJhdGlvbl9kdXJhdGlvbicgZGF5cyBz\ndGFydGluZyBvbiAnc3RhcnRfZGF0ZScsIHdoaWNoIGlzIHRoZSByaWdodCBj\naG9pY2UgZm9yIG1vc3QgY2FzZXMuIChvYmplY3RbXSwgb3B0aW9uYWwpCiAg\nLSBgbGF5b3V0YDogVmlldyBsYXlvdXQ7IHJlcXVpcmVkIHdoZW4gY3JlYXRp\nbmcgYSB2aWV3LiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBtZXRob2RgOiBU\naGUgbWV0aG9kIHRvIGV4ZWN1dGUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBg\nbmFtZWA6IFZpZXcgbmFtZTsgcmVxdWlyZWQgd2hlbiBjcmVhdGluZyBhIHZp\nZXcuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogVGhlIHByb2pl\nY3Qgb3duZXIgKHVzZXIgb3Igb3JnYW5pemF0aW9uIGxvZ2luKS4gVGhlIG5h\nbWUgaXMgbm90IGNhc2Ugc2Vuc2l0aXZlLiAoc3RyaW5nLCByZXF1aXJlZCkK\nICAtIGBvd25lcl90eXBlYDogT3duZXIgdHlwZSAodXNlciBvciBvcmcpLiBS\nZXF1aXJlZCBmb3IgJ2NyZWF0ZV9wcm9qZWN0JyBtZXRob2QuIElmIG5vdCBw\ncm92aWRlZCBmb3Igb3RoZXIgbWV0aG9kcywgd2lsbCBiZSBhdXRvbWF0aWNh\nbGx5IGRldGVjdGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwcm9qZWN0\nX251bWJlcmA6IFRoZSBwcm9qZWN0J3MgbnVtYmVyLiBSZXF1aXJlZCBmb3Ig\nYWxsIG1ldGhvZHMgZXhjZXB0ICdjcmVhdGVfcHJvamVjdCcuIChudW1iZXIs\nIG9wdGlvbmFsKQogIC0gYHB1bGxfcmVxdWVzdF9udW1iZXJgOiBUaGUgcHVs\nbCByZXF1ZXN0IG51bWJlciAodXNlIHdoZW4gaXRlbV90eXBlIGlzICdwdWxs\nX3JlcXVlc3QnIGZvciAnYWRkX3Byb2plY3RfaXRlbScgbWV0aG9kKS4gUHJv\ndmlkZSBlaXRoZXIgaXNzdWVfbnVtYmVyIG9yIHB1bGxfcmVxdWVzdF9udW1i\nZXIuIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHN0YXJ0X2RhdGVgOiBTdGFy\ndCBkYXRlIGluIFlZWVktTU0tREQgZm9ybWF0LiBVc2VkIGZvciAnY3JlYXRl\nX3Byb2plY3Rfc3RhdHVzX3VwZGF0ZScgYW5kICdjcmVhdGVfaXRlcmF0aW9u\nX2ZpZWxkJyBtZXRob2RzLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0\ndXNgOiBUaGUgc3RhdHVzIG9mIHRoZSBwcm9qZWN0LiBVc2VkIGZvciAnY3Jl\nYXRlX3Byb2plY3Rfc3RhdHVzX3VwZGF0ZScgbWV0aG9kLiAoc3RyaW5nLCBv\ncHRpb25hbCkKICAtIGB0YXJnZXRfZGF0ZWA6IFRoZSB0YXJnZXQgZGF0ZSBv\nZiB0aGUgc3RhdHVzIHVwZGF0ZSBpbiBZWVlZLU1NLUREIGZvcm1hdC4gVXNl\nZCBmb3IgJ2NyZWF0ZV9wcm9qZWN0X3N0YXR1c191cGRhdGUnIG1ldGhvZC4g\nKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdGl0bGVgOiBUaGUgcHJvamVjdCB0\naXRsZS4gUmVxdWlyZWQgZm9yICdjcmVhdGVfcHJvamVjdCcgbWV0aG9kLiAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGB1cGRhdGVkX2ZpZWxkYDogVGhlIGZp\nZWxkL3ZhbHVlIHRvIGFwcGx5LCB1c2luZyB7ImlkIjogMTIzLCAidmFsdWUi\nOiAuLi59IG9yIHsibmFtZSI6ICJTdGF0dXMiLCAidmFsdWUiOiAuLi59OyBu\ndWxsIGNsZWFycyB0aGUgZmllbGQuIFJlcXVpcmVkIGZvciAndXBkYXRlX3By\nb2plY3RfaXRlbScgYW5kICd1cGRhdGVfcHJvamVjdF9pdGVtcycsIHdoZXJl\nIG9uZSB0b3AtbGV2ZWwgZmllbGQvdmFsdWUgYXBwbGllcyB0byBldmVyeSBp\ndGVtIGluIGEgYmF0Y2guIEZvciAndXBkYXRlX3Byb2plY3RfaXRlbScgU0lO\nR0xFX1NFTEVDVCBmaWVsZHMsIHRoZSBuYW1lIGZvcm0gYWNjZXB0cyBvcHRp\nb24gbmFtZXM7IHRoZSBJRCBmb3JtIGV4cGVjdHMgYW4gb3B0aW9uIElELiAo\nb2JqZWN0LCBvcHRpb25hbCkKICAtIGB2aWV3X2lkYDogUHJvamVjdCB2aWV3\nIG5vZGUgSUQgZm9yIHVwZGF0ZSBvciBkZWxldGU7IG11c3QgYmVsb25nIHRv\nIG93bmVyL3Byb2plY3RfbnVtYmVyLiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGB2aXNpYmxlX2ZpZWxkX25hbWVzYDogT3JkZXJlZCBwcm9qZWN0IGZpZWxk\nIG5hbWVzIHRvIHNob3cgb24gY3JlYXRlIG9yIHJlcGxhY2Ugb24gdXBkYXRl\nOyBvbWl0IG9uIHVwZGF0ZSB0byBwcmVzZXJ2ZSwgb3IgcGFzcyBbXSB0byBy\nZXNldC4gTXV0dWFsbHkgZXhjbHVzaXZlIHdpdGggdmlzaWJsZV9maWVsZHMu\nIFJvYWRtYXAgYWNjZXB0cyBvbmx5IFtdLiAoc3RyaW5nW10sIG9wdGlvbmFs\nKQogIC0gYHZpc2libGVfZmllbGRzYDogT3JkZXJlZCBwcm9qZWN0IGZpZWxk\nIGRhdGFiYXNlIElEcyB0byBzaG93IG9uIGNyZWF0ZSBvciByZXBsYWNlIG9u\nIHVwZGF0ZTsgb21pdCBvbiB1cGRhdGUgdG8gcHJlc2VydmUsIG9yIHBhc3Mg\nW10gdG8gcmVzZXQuIE11dHVhbGx5IGV4Y2x1c2l2ZSB3aXRoIHZpc2libGVf\nZmllbGRfbmFtZXMuIFJvYWRtYXAgYWNjZXB0cyBvbmx5IFtdLiAoc3RyaW5n\nW10sIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFy\neT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hl\nbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9naXQtcHVs\nbC1yZXF1ZXN0LWRhcmsucG5nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1j\nb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNv\nbnMvZ2l0LXB1bGwtcmVxdWVzdC1saWdodC5wbmciPjxpbWcgc3JjPSJwa2cv\nb2N0aWNvbnMvaWNvbnMvZ2l0LXB1bGwtcmVxdWVzdC1saWdodC5wbmciIHdp\nZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJnaXQtcHVsbC1yZXF1ZXN0Ij48\nL3BpY3R1cmU+IFB1bGwgUmVxdWVzdHM8L3N1bW1hcnk+CgotICoqYWRkX2Nv\nbW1lbnRfdG9fcGVuZGluZ19yZXZpZXcqKiAtIEFkZCByZXZpZXcgY29tbWVu\ndCB0byB0aGUgcmVxdWVzdGVyJ3MgbGF0ZXN0IHBlbmRpbmcgcHVsbCByZXF1\nZXN0IHJldmlldwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgYm9keWA6IFRoZSB0ZXh0IG9mIHRoZSByZXZpZXcgY29tbWVu\ndCAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBsaW5lYDogVGhlIGxpbmUgb2Yg\ndGhlIGJsb2IgaW4gdGhlIHB1bGwgcmVxdWVzdCBkaWZmIHRoYXQgdGhlIGNv\nbW1lbnQgYXBwbGllcyB0by4gRm9yIG11bHRpLWxpbmUgY29tbWVudHMsIHRo\nZSBsYXN0IGxpbmUgb2YgdGhlIHJhbmdlIChudW1iZXIsIG9wdGlvbmFsKQog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGBwYXRoYDogVGhlIHJlbGF0aXZlIHBhdGggdG8gdGhlIGZpbGUg\ndGhhdCBuZWNlc3NpdGF0ZXMgYSBjb21tZW50IChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYHB1bGxOdW1iZXJgOiBQdWxsIHJlcXVlc3QgbnVtYmVyIChudW1i\nZXIsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgc2lkZWA6IFRoZSBzaWRlIG9mIHRoZSBk\naWZmIHRvIGNvbW1lbnQgb24uIExFRlQgaW5kaWNhdGVzIHRoZSBwcmV2aW91\ncyBzdGF0ZSwgUklHSFQgaW5kaWNhdGVzIHRoZSBuZXcgc3RhdGUgKHN0cmlu\nZywgb3B0aW9uYWwpCiAgLSBgc3RhcnRMaW5lYDogRm9yIG11bHRpLWxpbmUg\nY29tbWVudHMsIHRoZSBmaXJzdCBsaW5lIG9mIHRoZSByYW5nZSB0aGF0IHRo\nZSBjb21tZW50IGFwcGxpZXMgdG8gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\nc3RhcnRTaWRlYDogRm9yIG11bHRpLWxpbmUgY29tbWVudHMsIHRoZSBzdGFy\ndGluZyBzaWRlIG9mIHRoZSBkaWZmIHRoYXQgdGhlIGNvbW1lbnQgYXBwbGll\ncyB0by4gTEVGVCBpbmRpY2F0ZXMgdGhlIHByZXZpb3VzIHN0YXRlLCBSSUdI\nVCBpbmRpY2F0ZXMgdGhlIG5ldyBzdGF0ZSAoc3RyaW5nLCBvcHRpb25hbCkK\nICAtIGBzdWJqZWN0VHlwZWA6IFRoZSBsZXZlbCBhdCB3aGljaCB0aGUgY29t\nbWVudCBpcyB0YXJnZXRlZCAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKiphZGRf\ncmVwbHlfdG9fcHVsbF9yZXF1ZXN0X2NvbW1lbnQqKiAtIEFkZCByZXBseSB0\nbyBwdWxsIHJlcXVlc3QgY29tbWVudAogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgYm9keWA6IFRoZSB0ZXh0IG9mIHRoZSBy\nZXBseS4gUmVxdWlyZWQgdW5sZXNzIHJlYWN0aW9uIGlzIHByb3ZpZGVkLiAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGBjb21tZW50SWRgOiBUaGUgbnVtZXJp\nYyBJRCBvZiB0aGUgcHVsbCByZXF1ZXN0IHJldmlldyBjb21tZW50IHRvIHJl\ncGx5IG9yIHJlYWN0IHRvLiBVc2UgdGhlIG51bWJlciBmcm9tIGEgI2Rpc2N1\nc3Npb25fci4uLiBhbmNob3IsIG5vdCB0aGUgR3JhcGhRTCB0aHJlYWQgbm9k\nZSBJRCAoUFJSVF8uLi4pLiAobnVtYmVyLCByZXF1aXJlZCkKICAtIGBvd25l\ncmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBg\ncHVsbE51bWJlcmA6IFB1bGwgcmVxdWVzdCBudW1iZXIuIFJlcXVpcmVkIHdo\nZW4gYm9keSBpcyBwcm92aWRlZC4gKG51bWJlciwgb3B0aW9uYWwpCiAgLSBg\ncmVhY3Rpb25gOiBFbW9qaSByZWFjdGlvbiB0byBhZGQuIFJlcXVpcmVkIHVu\nbGVzcyBib2R5IGlzIHByb3ZpZGVkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAt\nIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVkKQoK\nLSAqKmNyZWF0ZV9wdWxsX3JlcXVlc3QqKiAtIE9wZW4gbmV3IHB1bGwgcmVx\ndWVzdAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAg\nLSBgYmFzZWA6IEJyYW5jaCB0byBtZXJnZSBpbnRvIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYGJvZHlgOiBQUiBkZXNjcmlwdGlvbiAoc3RyaW5nLCBvcHRp\nb25hbCkKICAtIGBkcmFmdGA6IENyZWF0ZSBhcyBkcmFmdCBQUiAoYm9vbGVh\nbiwgb3B0aW9uYWwpCiAgLSBgaGVhZGA6IEJyYW5jaCBjb250YWluaW5nIGNo\nYW5nZXMgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgbWFpbnRhaW5lcl9jYW5f\nbW9kaWZ5YDogQWxsb3cgbWFpbnRhaW5lciBlZGl0cyAoYm9vbGVhbiwgb3B0\naW9uYWwpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcmV2aWV3ZXJzYDogR2l0SHViIHVzZXJuYW1l\ncyBvciBPUkcvdGVhbS1zbHVnIHRlYW0gcmV2aWV3ZXJzIHRvIHJlcXVlc3Qg\ncmV2aWV3cyBmcm9tIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBgdGl0bGVg\nOiBQUiB0aXRsZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X3B1bGxf\ncmVxdWVzdHMqKiAtIExpc3QgcHVsbCByZXF1ZXN0cwogIC0gKipSZXF1aXJl\nZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgYmFzZWA6IEZpbHRlciBi\neSBiYXNlIGJyYW5jaCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBkaXJlY3Rp\nb25gOiBTb3J0IGRpcmVjdGlvbiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBm\naWVsZHNgOiBTdWJzZXQgb2YgZmllbGRzIHRvIHJldHVybiBmb3IgZWFjaCBw\ndWxsIHJlcXVlc3QuIElmIG9taXR0ZWQsIGFsbCBmaWVsZHMgYXJlIHJldHVy\nbmVkLiBVc2UgdGhpcyB0byByZWR1Y2UgcmVzcG9uc2Ugc2l6ZSB3aGVuIHlv\ndSBvbmx5IG5lZWQgc3BlY2lmaWMgZmllbGRzOyBvbWl0dGluZyAnYm9keScg\naW4gcGFydGljdWxhciBkcm9wcyB0aGUgbGFyZ2VzdCBwZXItcmVzdWx0IGRh\ndGEuIChzdHJpbmdbXSwgb3B0aW9uYWwpCiAgLSBgaGVhZGA6IEZpbHRlciBi\neSBoZWFkIHVzZXIvb3JnIGFuZCBicmFuY2ggKHN0cmluZywgb3B0aW9uYWwp\nCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlvbiAo\nbWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1\nbHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkg\nKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFt\nZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBzb3J0YDogU29ydCBieSAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBzdGF0ZWA6IEZpbHRlciBieSBzdGF0ZSAo\nc3RyaW5nLCBvcHRpb25hbCkKCi0gKiptZXJnZV9wdWxsX3JlcXVlc3QqKiAt\nIE1lcmdlIHB1bGwgcmVxdWVzdAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHJlcG9gCiAgLSBgY29tbWl0X21lc3NhZ2VgOiBFeHRyYSBkZXRh\naWwgZm9yIG1lcmdlIGNvbW1pdCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBj\nb21taXRfdGl0bGVgOiBUaXRsZSBmb3IgbWVyZ2UgY29tbWl0IChzdHJpbmcs\nIG9wdGlvbmFsKQogIC0gYG1lcmdlX21ldGhvZGA6IE1lcmdlIG1ldGhvZCAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3du\nZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcHVsbE51bWJlcmA6IFB1bGwg\ncmVxdWVzdCBudW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgcmVwb2A6\nIFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipwdWxs\nX3JlcXVlc3RfcmVhZCoqIC0gR2V0IGRldGFpbHMgZm9yIGEgc2luZ2xlIHB1\nbGwgcmVxdWVzdAogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgYWZ0ZXJgOiBDdXJzb3IgZm9yIHBhZ2luYXRpb24sIHVzZWQg\nb25seSBieSB0aGUgZ2V0X3Jldmlld19jb21tZW50cyBtZXRob2QuIFBhc3Mg\ndGhlIGVuZEN1cnNvciBmcm9tIHRoZSBwcmV2aW91cyBwYWdlJ3MgUGFnZUlu\nZm8gdG8gZmV0Y2ggdGhlIG5leHQgcGFnZS4gKHN0cmluZywgb3B0aW9uYWwp\nCiAgLSBgbWV0aG9kYDogQWN0aW9uIHRvIHNwZWNpZnkgd2hhdCBwdWxsIHJl\ncXVlc3QgZGF0YSBuZWVkcyB0byBiZSByZXRyaWV2ZWQgZnJvbSBHaXRIdWIu\nIAogICAgUG9zc2libGUgb3B0aW9uczogCiAgICAgMS4gZ2V0IC0gR2V0IGRl\ndGFpbHMgb2YgYSBzcGVjaWZpYyBwdWxsIHJlcXVlc3QuCiAgICAgMi4gZ2V0\nX2RpZmYgLSBHZXQgdGhlIGRpZmYgb2YgYSBwdWxsIHJlcXVlc3QuCiAgICAg\nMy4gZ2V0X3N0YXR1cyAtIEdldCBjb21iaW5lZCBjb21taXQgc3RhdHVzIG9m\nIGEgaGVhZCBjb21taXQgaW4gYSBwdWxsIHJlcXVlc3QuCiAgICAgNC4gZ2V0\nX2ZpbGVzIC0gR2V0IHRoZSBsaXN0IG9mIGZpbGVzIGNoYW5nZWQgaW4gYSBw\ndWxsIHJlcXVlc3QuIFVzZSB3aXRoIHBhZ2luYXRpb24gcGFyYW1ldGVycyB0\nbyBjb250cm9sIHRoZSBudW1iZXIgb2YgcmVzdWx0cyByZXR1cm5lZC4KICAg\nICA1LiBnZXRfY29tbWl0cyAtIEdldCB0aGUgbGlzdCBvZiBjb21taXRzIG9u\nIGEgcHVsbCByZXF1ZXN0LiBVc2Ugd2l0aCBwYWdpbmF0aW9uIHBhcmFtZXRl\ncnMgdG8gY29udHJvbCB0aGUgbnVtYmVyIG9mIHJlc3VsdHMgcmV0dXJuZWQu\nCiAgICAgNi4gZ2V0X3Jldmlld19jb21tZW50cyAtIEdldCByZXZpZXcgdGhy\nZWFkcyBvbiBhIHB1bGwgcmVxdWVzdC4gRWFjaCB0aHJlYWQgY29udGFpbnMg\nbG9naWNhbGx5IGdyb3VwZWQgcmV2aWV3IGNvbW1lbnRzIG1hZGUgb24gdGhl\nIHNhbWUgY29kZSBsb2NhdGlvbiBkdXJpbmcgcHVsbCByZXF1ZXN0IHJldmll\nd3MuIFJldHVybnMgdGhyZWFkcyB3aXRoIG1ldGFkYXRhIChpc1Jlc29sdmVk\nLCBpc091dGRhdGVkLCBpc0NvbGxhcHNlZCkgYW5kIHRoZWlyIGFzc29jaWF0\nZWQgY29tbWVudHMuIFVzZSBjdXJzb3ItYmFzZWQgcGFnaW5hdGlvbiAocGVy\nUGFnZSwgYWZ0ZXIpIHRvIGNvbnRyb2wgcmVzdWx0cy4KICAgICA3LiBnZXRf\ncmV2aWV3cyAtIEdldCB0aGUgcmV2aWV3cyBvbiBhIHB1bGwgcmVxdWVzdC4g\nV2hlbiBhc2tlZCBmb3IgcmV2aWV3IGNvbW1lbnRzLCB1c2UgZ2V0X3Jldmll\nd19jb21tZW50cyBtZXRob2QuIFVzZSB3aXRoIHBhZ2luYXRpb24gcGFyYW1l\ndGVycyB0byBjb250cm9sIHRoZSBudW1iZXIgb2YgcmVzdWx0cyByZXR1cm5l\nZC4KICAgICA4LiBnZXRfY29tbWVudHMgLSBHZXQgY29tbWVudHMgb24gYSBw\ndWxsIHJlcXVlc3QuIFVzZSB0aGlzIGlmIHVzZXIgZG9lc24ndCBzcGVjaWZp\nY2FsbHkgd2FudCByZXZpZXcgY29tbWVudHMuIFVzZSB3aXRoIHBhZ2luYXRp\nb24gcGFyYW1ldGVycyB0byBjb250cm9sIHRoZSBudW1iZXIgb2YgcmVzdWx0\ncyByZXR1cm5lZC4KICAgICA5LiBnZXRfY2hlY2tfcnVucyAtIEdldCBjaGVj\nayBydW5zIGZvciB0aGUgaGVhZCBjb21taXQgb2YgYSBwdWxsIHJlcXVlc3Qu\nIENoZWNrIHJ1bnMgYXJlIHRoZSBpbmRpdmlkdWFsIENJL0NEIGpvYnMgYW5k\nIGNoZWNrcyB0aGF0IHJ1biBvbiB0aGUgUFIuCiAgICAgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5h\ndGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2Vg\nOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcHVsbE51bWJlcmA6IFB1\nbGwgcmVxdWVzdCBudW1iZXIgKG51bWJlciwgcmVxdWlyZWQpCiAgLSBgcmVw\nb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipw\ndWxsX3JlcXVlc3RfcmV2aWV3X3dyaXRlKiogLSBXcml0ZSBvcGVyYXRpb25z\nIChjcmVhdGUsIHN1Ym1pdCwgZGVsZXRlKSBvbiBwdWxsIHJlcXVlc3QgcmV2\naWV3cwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAg\nLSBgYm9keWA6IFJldmlldyBjb21tZW50IHRleHQgKHN0cmluZywgb3B0aW9u\nYWwpCiAgLSBgY29tbWl0SURgOiBTSEEgb2YgY29tbWl0IHRvIHJldmlldyAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGBldmVudGA6IFJldmlldyBhY3Rpb24g\ndG8gcGVyZm9ybS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgbWV0aG9kYDog\nVGhlIHdyaXRlIG9wZXJhdGlvbiB0byBwZXJmb3JtIG9uIHB1bGwgcmVxdWVz\ndCByZXZpZXcuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogUmVw\nb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwdWxsTnVt\nYmVyYDogUHVsbCByZXF1ZXN0IG51bWJlciAobnVtYmVyLCByZXF1aXJlZCkK\nICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYHRocmVhZElkYDogVGhlIG5vZGUgSUQgb2YgdGhlIHJldmlldyB0\naHJlYWQgKGUuZy4sIFBSUlRfa3dET3h4eCkuIFJlcXVpcmVkIGZvciByZXNv\nbHZlX3RocmVhZCBhbmQgdW5yZXNvbHZlX3RocmVhZCBtZXRob2RzLiBHZXQg\ndGhyZWFkIElEcyBmcm9tIHB1bGxfcmVxdWVzdF9yZWFkIHdpdGggbWV0aG9k\nIGdldF9yZXZpZXdfY29tbWVudHMuIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAq\nKnNlYXJjaF9wdWxsX3JlcXVlc3RzKiogLSBTZWFyY2ggcHVsbCByZXF1ZXN0\ncwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBg\nZmllbGRzYDogU3Vic2V0IG9mIGZpZWxkcyB0byByZXR1cm4gZm9yIGVhY2gg\ncHVsbCByZXF1ZXN0IHJlc3VsdC4gSWYgb21pdHRlZCwgYWxsIGZpZWxkcyBh\ncmUgcmV0dXJuZWQuIFVzZSB0aGlzIHRvIHJlZHVjZSByZXNwb25zZSBzaXpl\nIHdoZW4geW91IG9ubHkgbmVlZCBzcGVjaWZpYyBmaWVsZHM7IG9taXR0aW5n\nICdib2R5JywgJ3JlYWN0aW9ucycsIGFuZCAnbGFiZWxzJyBpbiBwYXJ0aWN1\nbGFyIGRyb3BzIHRoZSBsYXJnZXN0IHBlci1yZXN1bHQgZGF0YS4gKHN0cmlu\nZ1tdLCBvcHRpb25hbCkKICAtIGBvcmRlcmA6IFNvcnQgb3JkZXIgKHN0cmlu\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\ncmVwb2AKICAtIGBhbGxvd19zeW1saW5rX3dyaXRlYDogU2V0IHRydWUgdG8g\ndXBkYXRlIGEgc3ltYm9saWMgbGluayBpdHNlbGY7IGNvbnRlbnQgbXVzdCBi\nZSBpdHMgbmV3IHRhcmdldCBwYXRoLiAoYm9vbGVhbiwgb3B0aW9uYWwpCiAg\nLSBgYnJhbmNoYDogQnJhbmNoIHRvIGNyZWF0ZS91cGRhdGUgdGhlIGZpbGUg\naW4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgY29udGVudGA6IENvbnRlbnQg\nb2YgdGhlIGZpbGUsIGV4YWN0bHkgYXMgaXQgc2hvdWxkIGFwcGVhciBvbmNl\nIHdyaXR0ZW4uIERvIG5vdCBiYXNlNjQtZW5jb2RlIGl0OyB0aGlzIHNlcnZl\nciBkb2VzIHRoYXQgYmVmb3JlIGNhbGxpbmcgdGhlIFJFU1QgQVBJLiAoc3Ry\naW5nLCByZXF1aXJlZCkKICAtIGBtZXNzYWdlYDogQ29tbWl0IG1lc3NhZ2Ug\nKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93\nbmVyICh1c2VybmFtZSBvciBvcmdhbml6YXRpb24pIChzdHJpbmcsIHJlcXVp\ncmVkKQogIC0gYHBhdGhgOiBQYXRoIHdoZXJlIHRvIGNyZWF0ZS91cGRhdGUg\ndGhlIGZpbGUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9z\naXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBzaGFgOiBUaGUg\nYmxvYiBTSEEgb2YgdGhlIGZpbGUgYmVpbmcgcmVwbGFjZWQuIFJlcXVpcmVk\nIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3RzLiAoc3RyaW5nLCBvcHRpb25h\nbCkKCi0gKipjcmVhdGVfcmVwb3NpdG9yeSoqIC0gQ3JlYXRlIHJlcG9zaXRv\ncnkKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0g\nYGF1dG9Jbml0YDogSW5pdGlhbGl6ZSB3aXRoIFJFQURNRSAoYm9vbGVhbiwg\nb3B0aW9uYWwpCiAgLSBgZGVzY3JpcHRpb25gOiBSZXBvc2l0b3J5IGRlc2Ny\naXB0aW9uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG5hbWVgOiBSZXBvc2l0\nb3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgb3JnYW5pemF0aW9u\nYDogT3JnYW5pemF0aW9uIHRvIGNyZWF0ZSB0aGUgcmVwb3NpdG9yeSBpbiAo\nb21pdCB0byBjcmVhdGUgaW4geW91ciBwZXJzb25hbCBhY2NvdW50KSAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBwcml2YXRlYDogV2hldGhlciB0aGUgcmVw\nb3NpdG9yeSBzaG91bGQgYmUgcHJpdmF0ZS4gRGVmYXVsdHMgdG8gdHJ1ZSAo\ncHJpdmF0ZSkgd2hlbiBvbWl0dGVkLiAoYm9vbGVhbiwgb3B0aW9uYWwpCgot\nICoqZGVsZXRlX2ZpbGUqKiAtIERlbGV0ZSBmaWxlCiAgLSAqKlJlcXVpcmVk\nIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBicmFuY2hgOiBCcmFuY2gg\ndG8gZGVsZXRlIHRoZSBmaWxlIGZyb20gKHN0cmluZywgcmVxdWlyZWQpCiAg\nLSBgbWVzc2FnZWA6IENvbW1pdCBtZXNzYWdlIChzdHJpbmcsIHJlcXVpcmVk\nKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAodXNlcm5hbWUgb3Ig\nb3JnYW5pemF0aW9uKSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYXRoYDog\nUGF0aCB0byB0aGUgZmlsZSB0byBkZWxldGUgKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJl\nZCkKCi0gKipkZWxldGVfcmVwb3NpdG9yeSoqIC0gRGVsZXRlIHJlcG9zaXRv\ncnkKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzIChhbGwgcmVxdWlyZWQp\nKio6IGBkZWxldGVfcmVwb2AsIGByZXBvYAogIC0gYG93bmVyYDogUmVwb3Np\ndG9yeSBvd25lciAodXNlcm5hbWUgb3Igb3JnYW5pemF0aW9uKSAoc3RyaW5n\nLCByZXF1aXJlZCkKICAtIGByZXBvYDogUmVwb3NpdG9yeSBuYW1lIChzdHJp\nbmcsIHJlcXVpcmVkKQoKLSAqKmZvcmtfcmVwb3NpdG9yeSoqIC0gRm9yayBy\nZXBvc2l0b3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVw\nb2AKICAtIGBvcmdhbml6YXRpb25gOiBPcmdhbml6YXRpb24gdG8gZm9yayB0\nbyAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkg\nb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRv\ncnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipnZXRfY29tbWl0Kiog\nLSBHZXQgY29tbWl0IGRldGFpbHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2Nv\ncGVzKio6IGByZXBvYAogIC0gYGRldGFpbGA6IExldmVsIG9mIGRldGFpbCB0\nbyBpbmNsdWRlIGZvciBjaGFuZ2VkIGZpbGVzLiAibm9uZSIgb21pdHMgc3Rh\ndHMgYW5kIGZpbGVzIGVudGlyZWx5LiAic3RhdHMiIChkZWZhdWx0KSBpbmNs\ndWRlcyBwZXItZmlsZSBtZXRhZGF0YTogZmlsZW5hbWUsIHN0YXR1cywgYW5k\nIGxpbmVzLW9mLWNvZGUgY291bnRzIChhZGRpdGlvbnMsIGRlbGV0aW9ucywg\nY2hhbmdlcyksIHdpdGggbm8gcGF0Y2ggY29udGVudC4gImZ1bGxfcGF0Y2gi\nIGFkZGl0aW9uYWxseSBpbmNsdWRlcyB0aGUgdW5pZmllZCBkaWZmIGNvbnRl\nbnQgZm9yIGVhY2ggZmlsZSBhbmQgY2FuIGJlIHZlcnkgbGFyZ2UuIChzdHJp\nbmcsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAo\nc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9y\nIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBw\nZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWlu\nIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBS\nZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc2hhYDog\nQ29tbWl0IFNIQSwgYnJhbmNoIG5hbWUsIG9yIHRhZyBuYW1lIChzdHJpbmcs\nIHJlcXVpcmVkKQoKLSAqKmdldF9maWxlX2NvbnRlbnRzKiogLSBHZXQgZmls\nZSBvciBkaXJlY3RvcnkgY29udGVudHMKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGByZXBvYAogIC0gYGZpZWxkc2A6IFN1YnNldCBvZiBmaWVs\nZHMgdG8gcmV0dXJuIGZvciBlYWNoIGVudHJ5IHdoZW4gdGhlIHBhdGggaXMg\nYSBkaXJlY3RvcnkuIElmIG9taXR0ZWQsIGFsbCBmaWVsZHMgYXJlIHJldHVy\nbmVkLiBJZ25vcmVkIHdoZW4gdGhlIHBhdGggaXMgYSBzaW5nbGUgZmlsZS4g\nVXNlIHRoaXMgdG8gcmVkdWNlIHJlc3BvbnNlIHNpemUgd2hlbiBsaXN0aW5n\nIGRpcmVjdG9yaWVzIGFuZCB5b3Ugb25seSBuZWVkIHNwZWNpZmljIGZpZWxk\ncywgZS5nLiBqdXN0ICduYW1lJyBhbmQgJ3R5cGUnLiAoc3RyaW5nW10sIG9w\ndGlvbmFsKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAodXNlcm5h\nbWUgb3Igb3JnYW5pemF0aW9uKSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBw\nYXRoYDogUGF0aCB0byBmaWxlL2RpcmVjdG9yeSAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGByZWZgOiBBY2NlcHRzIG9wdGlvbmFsIGdpdCByZWZzIHN1Y2gg\nYXMgYHJlZnMvdGFncy97dGFnfWAsIGByZWZzL2hlYWRzL3ticmFuY2h9YCBv\nciBgcmVmcy9wdWxsL3twcl9udW1iZXJ9L2hlYWRgIChzdHJpbmcsIG9wdGlv\nbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVx\ndWlyZWQpCiAgLSBgc2hhYDogQWNjZXB0cyBvcHRpb25hbCBjb21taXQgU0hB\nLiBJZiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCBpbnN0ZWFkIG9mIHJl\nZiAoc3RyaW5nLCBvcHRpb25hbCkKCi0gKipnZXRfbGF0ZXN0X3JlbGVhc2Uq\nKiAtIEdldCBsYXRlc3QgcmVsZWFzZQogIC0gKipSZXF1aXJlZCBPQXV0aCBT\nY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVy\nIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqZ2V0X3JlbGVhc2VfYnlfdGFn\nKiogLSBHZXQgYSByZWxlYXNlIGJ5IHRhZyBuYW1lCiAgLSAqKlJlcXVpcmVk\nIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJlcG9zaXRv\ncnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9z\naXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGB0YWdgOiBUYWcg\nbmFtZSAoZS5nLiwgJ3YxLjAuMCcpIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAq\nKmdldF90YWcqKiAtIEdldCB0YWcgZGV0YWlscwogIC0gKipSZXF1aXJlZCBP\nQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5\nIG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9gOiBSZXBvc2l0\nb3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgdGFnYDogVGFnIG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9icmFuY2hlcyoqIC0g\nTGlzdCBicmFuY2hlcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjog\nYHJlcG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcs\nIHJlcXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5h\ndGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2Vg\nOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRv\ncnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X2NvbW1pdHMq\nKiAtIExpc3QgY29tbWl0cwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMq\nKjogYHJlcG9gCiAgLSBgYXV0aG9yYDogQXV0aG9yIHVzZXJuYW1lIG9yIGVt\nYWlsIGFkZHJlc3MgdG8gZmlsdGVyIGNvbW1pdHMgYnkgKHN0cmluZywgb3B0\naW9uYWwpCiAgLSBgZmllbGRzYDogU3Vic2V0IG9mIGZpZWxkcyB0byByZXR1\ncm4gZm9yIGVhY2ggY29tbWl0LiBJZiBvbWl0dGVkLCBhbGwgZmllbGRzIGFy\nZSByZXR1cm5lZC4gVXNlIHRoaXMgdG8gcmVkdWNlIHJlc3BvbnNlIHNpemUg\nd2hlbiB5b3Ugb25seSBuZWVkIHNwZWNpZmljIGZpZWxkcywgZS5nLiBqdXN0\nICdzaGEnIGFuZCAnaHRtbF91cmwnLiAoc3RyaW5nW10sIG9wdGlvbmFsKQog\nIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1p\nbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwYXRoYDogT25seSBjb21t\naXRzIGNvbnRhaW5pbmcgdGhpcyBmaWxlIHBhdGggd2lsbCBiZSByZXR1cm5l\nZCAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBw\nZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1i\nZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5hbWUgKHN0\ncmluZywgcmVxdWlyZWQpCiAgLSBgc2hhYDogQ29tbWl0IFNIQSwgYnJhbmNo\nIG9yIHRhZyBuYW1lIHRvIGxpc3QgY29tbWl0cyBvZi4gSWYgbm90IHByb3Zp\nZGVkLCB1c2VzIHRoZSBkZWZhdWx0IGJyYW5jaCBvZiB0aGUgcmVwb3NpdG9y\neS4gSWYgYSBjb21taXQgU0hBIGlzIHByb3ZpZGVkLCB3aWxsIGxpc3QgY29t\nbWl0cyB1cCB0byB0aGF0IFNIQS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\nc2luY2VgOiBPbmx5IGNvbW1pdHMgYWZ0ZXIgdGhpcyBkYXRlIHdpbGwgYmUg\ncmV0dXJuZWQgKElTTyA4NjAxIGZvcm1hdDogWVlZWS1NTS1ERFRISDpNTTpT\nU1ogb3IgWVlZWS1NTS1ERCkgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgdW50\naWxgOiBPbmx5IGNvbW1pdHMgYmVmb3JlIHRoaXMgZGF0ZSB3aWxsIGJlIHJl\ndHVybmVkIChJU08gODYwMSBmb3JtYXQ6IFlZWVktTU0tRERUSEg6TU06U1Na\nIG9yIFlZWVktTU0tREQpIChzdHJpbmcsIG9wdGlvbmFsKQoKLSAqKmxpc3Rf\ncmVsZWFzZXMqKiAtIExpc3QgcmVsZWFzZXMKICAtICoqUmVxdWlyZWQgT0F1\ndGggU2NvcGVzKio6IGByZXBvYAogIC0gYGZpZWxkc2A6IFN1YnNldCBvZiBm\naWVsZHMgdG8gcmV0dXJuIGZvciBlYWNoIHJlbGVhc2UuIElmIG9taXR0ZWQs\nIGFsbCBmaWVsZHMgYXJlIHJldHVybmVkLiBVc2UgdGhpcyB0byByZWR1Y2Ug\ncmVzcG9uc2Ugc2l6ZSB3aGVuIHlvdSBvbmx5IG5lZWQgc3BlY2lmaWMgZmll\nbGRzOyBvbWl0dGluZyAnYm9keScgaW4gcGFydGljdWxhciBkcm9wcyB0aGUg\nbGFyZ2VzdCBwZXItcmVsZWFzZSBkYXRhLiAoc3RyaW5nW10sIG9wdGlvbmFs\nKQogIC0gYG93bmVyYDogUmVwb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1\naXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24g\nKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVz\ndWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDAp\nIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9gOiBSZXBvc2l0b3J5IG5h\nbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9yZXBvc2l0b3J5X2Nv\nbGxhYm9yYXRvcnMqKiAtIExpc3QgcmVwb3NpdG9yeSBjb2xsYWJvcmF0b3Jz\nCiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBh\nZmZpbGlhdGlvbmA6IEZpbHRlciBieSBhZmZpbGlhdGlvbi4gQ2FuIGJlIG9u\nZSBvZjogJ291dHNpZGUnIChvdXRzaWRlIGNvbGxhYm9yYXRvcnMpLCAnZGly\nZWN0JyAoYWxsIHdpdGggcGVybWlzc2lvbnMgcmVnYXJkbGVzcyBvZiBvcmcg\nbWVtYmVyc2hpcCksICdhbGwnIChhbGwgY29sbGFib3JhdG9ycykuIERlZmF1\nbHQ6ICdhbGwnIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG93bmVyYDogUmVw\nb3NpdG9yeSBvd25lciAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDog\nUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKGRlZmF1bHQgMSwgbWluIDEp\nIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBl\nciBwYWdlIGZvciBwYWdpbmF0aW9uIChkZWZhdWx0IDMwLCBtaW4gMSwgbWF4\nIDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRv\ncnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipsaXN0X3RhZ3MqKiAt\nIExpc3QgdGFncwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJl\ncG9gCiAgLSBgb3duZXJgOiBSZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJl\ncXVpcmVkKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJlciBmb3IgcGFnaW5hdGlv\nbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHBlclBhZ2VgOiBS\nZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9uIChtaW4gMSwgbWF4IDEw\nMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkg\nbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCi0gKipwdXNoX2ZpbGVzKiogLSBQ\ndXNoIGZpbGVzIHRvIHJlcG9zaXRvcnkKICAtICoqUmVxdWlyZWQgT0F1dGgg\nU2NvcGVzKio6IGByZXBvYAogIC0gYGJyYW5jaGA6IEJyYW5jaCB0byBwdXNo\nIHRvIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYGZpbGVzYDogQXJyYXkgb2Yg\nZmlsZSBvYmplY3RzIHRvIHB1c2gsIGVhY2ggb2JqZWN0IHdpdGggcGF0aCAo\nc3RyaW5nKSBhbmQgY29udGVudCAoc3RyaW5nKSAob2JqZWN0W10sIHJlcXVp\ncmVkKQogIC0gYG1lc3NhZ2VgOiBDb21taXQgbWVzc2FnZSAoc3RyaW5nLCBy\nZXF1aXJlZCkKICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIgKHN0cmlu\nZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFJlcG9zaXRvcnkgbmFtZSAoc3Ry\naW5nLCByZXF1aXJlZCkKCi0gKipzZWFyY2hfY29kZSoqIC0gU2VhcmNoIGNv\nZGUKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBvYAogIC0g\nYGZpZWxkc2A6IFN1YnNldCBvZiBmaWVsZHMgdG8gcmV0dXJuIGZvciBlYWNo\nIGNvZGUgc2VhcmNoIHJlc3VsdC4gSWYgb21pdHRlZCwgYWxsIGZpZWxkcyBh\ncmUgcmV0dXJuZWQuIFVzZSB0aGlzIHRvIHJlZHVjZSByZXNwb25zZSBzaXpl\nIHdoZW4geW91IG9ubHkgbmVlZCBzcGVjaWZpYyBmaWVsZHM7IG9taXR0aW5n\nICdyZXBvc2l0b3J5JyBhbmQgJ3RleHRfbWF0Y2hlcycgaW4gcGFydGljdWxh\nciBkcm9wcyB0aGUgbGFyZ2VzdCBwZXItcmVzdWx0IGRhdGEuIChzdHJpbmdb\nXSwgb3B0aW9uYWwpCiAgLSBgb3JkZXJgOiBTb3J0IG9yZGVyIGZvciByZXN1\nbHRzIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdlIG51bWJl\nciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlvbmFsKQog\nIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdpbmF0aW9u\nIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAgLSBgcXVl\ncnlgOiBTZWFyY2ggcXVlcnkgKEdpdEh1YiBjb2RlIHNlYXJjaCBSRVNUKS4g\nSW1wbGljaXQgQU5EIGJldHdlZW4gdGVybXM7IHN1cHBvcnRzIGBPUmAsIGBO\nT1RgLCBhbmQgYCJxdW90ZWQgcGhyYXNlImAgZm9yIGV4YWN0IG1hdGNoLiBR\ndWFsaWZpZXJzOiBgcmVwbzpvd25lci9yZXBvYCwgYG9yZzpgLCBgdXNlcjpg\nLCBgbGFuZ3VhZ2U6YCwgYHBhdGg6ZGlyYCAocHJlZml4IG1hdGNoKSwgYGZp\nbGVuYW1lOmV4YWN0LmV4dGAsIGBleHRlbnNpb246YCwgYGluOmZpbGVgLCBg\naW46cGF0aGAsIGBzaXplOmAsIGBpczphcmNoaXZlZGAsIGBpczpmb3JrYC4g\nTWF4IDI1NiBjaGFycy4gRXhhbXBsZXM6IGBXaXRoQ29udGV4dCBsYW5ndWFn\nZTpnbyBvcmc6Z2l0aHViYDsgYCJwYWNrYWdlIG1haW4iIHJlcG86by9yYDsg\nYGZ1bmMgZXh0ZW5zaW9uOmdvIHBhdGg6Y21kIHJlcG86by9yYDsgYE5PVCBU\nT0RPIGxhbmd1YWdlOmdvIHJlcG86by9yYC4gKHN0cmluZywgcmVxdWlyZWQp\nCiAgLSBgc29ydGA6IFNvcnQgZmllbGQgKCdpbmRleGVkJyBvbmx5KSAoc3Ry\naW5nLCBvcHRpb25hbCkKCi0gKipzZWFyY2hfY29tbWl0cyoqIC0gU2VhcmNo\nIGNvbW1pdHMKICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGByZXBv\nYAogIC0gYG9yZGVyYDogU29ydCBvcmRlciAoc3RyaW5nLCBvcHRpb25hbCkK\nICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBhZ2luYXRpb24gKG1pbiAx\nKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQYWdlYDogUmVzdWx0cyBw\nZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEsIG1heCAxMDApIChudW1i\nZXIsIG9wdGlvbmFsKQogIC0gYHF1ZXJ5YDogQ29tbWl0IHNlYXJjaCBxdWVy\neSAoR2l0SHViIGNvbW1pdCBzZWFyY2ggUkVTVCkuIFNlYXJjaGVzIGNvbW1p\ndCBtZXNzYWdlcyBvbiB0aGUgZGVmYXVsdCBicmFuY2ggb25seS4gU2NvcGUg\ndGhlIHNlYXJjaCB3aXRoIGByZXBvOm93bmVyL3JlcG9gLCBgb3JnOmAsIG9y\nIGB1c2VyOmAgKHF1ZXJpZXMgd2l0aG91dCBhIHNjb3BlIHF1YWxpZmllciBt\nYXRjaCBhY3Jvc3MgYWxsIG9mIEdpdEh1YiBhbmQgYXJlIHVzdWFsbHkgbm90\nIHdoYXQgeW91IHdhbnQpLiBPdGhlciBxdWFsaWZpZXJzOiBgYXV0aG9yOmAs\nIGBjb21taXR0ZXI6YCwgYGF1dGhvci1uYW1lOmAsIGBjb21taXR0ZXItbmFt\nZTpgLCBgYXV0aG9yLWVtYWlsOmAsIGBjb21taXR0ZXItZW1haWw6YCwgYGF1\ndGhvci1kYXRlOmAsIGBjb21taXR0ZXItZGF0ZTpgIChzdXBwb3J0cyBgPmAs\nIGA8YCwgYD49YCwgYDw9YCwgYW5kIGBZWVlZLU1NLURELi5ZWVlZLU1NLURE\nYCByYW5nZXMpLCBgbWVyZ2U6dHJ1ZXxmYWxzZWAsIGBoYXNoOmAsIGB0cmVl\nOmAsIGBwYXJlbnQ6YCwgYGlzOnB1YmxpY2AuIEV4YW1wbGVzOiBgcmVwbzpv\nd25lci9yZXBvIGZpeCBwYW5pY2A7IGBvcmc6Z2l0aHViIGF1dGhvcjpkZWZ1\nbmt0IGNvbW1pdHRlci1kYXRlOj49MjAyNC0wMS0wMWA7IGAicmVmYWN0b3Ig\nY2FjaGUiIHJlcG86by9yYDsgYGhhc2g6YWJjMTIzNCByZXBvOm8vcmAuIChz\ndHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBTb3J0IGJ5IGF1dGhvciBv\nciBjb21taXR0ZXIgZGF0ZSAoZGVmYXVsdHMgdG8gYmVzdCBtYXRjaCkgKHN0\ncmluZywgb3B0aW9uYWwpCgotICoqc2VhcmNoX3JlcG9zaXRvcmllcyoqIC0g\nU2VhcmNoIHJlcG9zaXRvcmllcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29w\nZXMqKjogYHJlcG9gCiAgLSBgbWluaW1hbF9vdXRwdXRgOiBSZXR1cm4gbWlu\naW1hbCByZXBvc2l0b3J5IGluZm9ybWF0aW9uIChkZWZhdWx0OiB0cnVlKS4g\nV2hlbiBmYWxzZSwgcmV0dXJucyBmdWxsIEdpdEh1YiBBUEkgcmVwb3NpdG9y\neSBvYmplY3RzLiAoYm9vbGVhbiwgb3B0aW9uYWwpCiAgLSBgb3JkZXJgOiBT\nb3J0IG9yZGVyIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHBhZ2VgOiBQYWdl\nIG51bWJlciBmb3IgcGFnaW5hdGlvbiAobWluIDEpIChudW1iZXIsIG9wdGlv\nbmFsKQogIC0gYHBlclBhZ2VgOiBSZXN1bHRzIHBlciBwYWdlIGZvciBwYWdp\nbmF0aW9uIChtaW4gMSwgbWF4IDEwMCkgKG51bWJlciwgb3B0aW9uYWwpCiAg\nLSBgcXVlcnlgOiBSZXBvc2l0b3J5IHNlYXJjaCBxdWVyeS4gRXhhbXBsZXM6\nICdtYWNoaW5lIGxlYXJuaW5nIGluOm5hbWUgc3RhcnM6PjEwMDAgbGFuZ3Vh\nZ2U6cHl0aG9uJywgJ3RvcGljOnJlYWN0JywgJ3VzZXI6ZmFjZWJvb2snLiBT\ndXBwb3J0cyBhZHZhbmNlZCBzZWFyY2ggc3ludGF4IGZvciBwcmVjaXNlIGZp\nbHRlcmluZy4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgc29ydGA6IFNvcnQg\ncmVwb3NpdG9yaWVzIGJ5IGZpZWxkLCBkZWZhdWx0cyB0byBiZXN0IG1hdGNo\nIChzdHJpbmcsIG9wdGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8\nc3VtbWFyeT48cGljdHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xv\nci1zY2hlbWU6IGRhcmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9z\naGllbGQtbG9jay1kYXJrLnBuZyI+PHNvdXJjZSBtZWRpYT0iKHByZWZlcnMt\nY29sb3Itc2NoZW1lOiBsaWdodCkiIHNyY3NldD0icGtnL29jdGljb25zL2lj\nb25zL3NoaWVsZC1sb2NrLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBrZy9vY3Rp\nY29ucy9pY29ucy9zaGllbGQtbG9jay1saWdodC5wbmciIHdpZHRoPSIyMCIg\naGVpZ2h0PSIyMCIgYWx0PSJzaGllbGQtbG9jayI+PC9waWN0dXJlPiBTZWNy\nZXQgUHJvdGVjdGlvbjwvc3VtbWFyeT4KCi0gKipnZXRfc2VjcmV0X3NjYW5u\naW5nX2FsZXJ0KiogLSBHZXQgc2VjcmV0IHNjYW5uaW5nIGFsZXJ0CiAgLSAq\nKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAog\nIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJp\ndHlfZXZlbnRzYAogIC0gYGFsZXJ0TnVtYmVyYDogVGhlIG51bWJlciBvZiB0\naGUgYWxlcnQuIChudW1iZXIsIHJlcXVpcmVkKQogIC0gYG93bmVyYDogVGhl\nIG93bmVyIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkK\nICAtIGByZXBvYDogVGhlIG5hbWUgb2YgdGhlIHJlcG9zaXRvcnkuIChzdHJp\nbmcsIHJlcXVpcmVkKQoKLSAqKmxpc3Rfc2VjcmV0X3NjYW5uaW5nX2FsZXJ0\ncyoqIC0gTGlzdCBzZWNyZXQgc2Nhbm5pbmcgYWxlcnRzCiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0gKipB\nY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlfZXZl\nbnRzYAogIC0gYG93bmVyYDogVGhlIG93bmVyIG9mIHRoZSByZXBvc2l0b3J5\nLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIg\nZm9yIHBhZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAt\nIGBwZXJQYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAo\nbWluIDEsIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHJlcG9g\nOiBUaGUgbmFtZSBvZiB0aGUgcmVwb3NpdG9yeS4gKHN0cmluZywgcmVxdWly\nZWQpCiAgLSBgcmVzb2x1dGlvbmA6IEZpbHRlciBieSByZXNvbHV0aW9uIChz\ndHJpbmcsIG9wdGlvbmFsKQogIC0gYHNlY3JldF90eXBlYDogQSBjb21tYS1z\nZXBhcmF0ZWQgbGlzdCBvZiBzZWNyZXQgdHlwZXMgdG8gcmV0dXJuLiBBbGwg\nZGVmYXVsdCBzZWNyZXQgcGF0dGVybnMgYXJlIHJldHVybmVkLiBUbyByZXR1\ncm4gZ2VuZXJpYyBwYXR0ZXJucywgcGFzcyB0aGUgdG9rZW4gbmFtZShzKSBp\nbiB0aGUgcGFyYW1ldGVyLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0\nZWA6IEZpbHRlciBieSBzdGF0ZSAoc3RyaW5nLCBvcHRpb25hbCkKCjwvZGV0\nYWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBt\nZWRpYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWRhcmsucG5nIj48c291cmNlIG1l\nZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJw\na2cvb2N0aWNvbnMvaWNvbnMvc2hpZWxkLWxpZ2h0LnBuZyI+PGltZyBzcmM9\nInBrZy9vY3RpY29ucy9pY29ucy9zaGllbGQtbGlnaHQucG5nIiB3aWR0aD0i\nMjAiIGhlaWdodD0iMjAiIGFsdD0ic2hpZWxkIj48L3BpY3R1cmU+IFNlY3Vy\naXR5IEFkdmlzb3JpZXM8L3N1bW1hcnk+CgotICoqZ2V0X2dsb2JhbF9zZWN1\ncml0eV9hZHZpc29yeSoqIC0gR2V0IGEgZ2xvYmFsIHNlY3VyaXR5IGFkdmlz\nb3J5CiAgLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlf\nZXZlbnRzYAogIC0gKipBY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9g\nLCBgc2VjdXJpdHlfZXZlbnRzYAogIC0gYGdoc2FJZGA6IEdpdEh1YiBTZWN1\ncml0eSBBZHZpc29yeSBJRCAoZm9ybWF0OiBHSFNBLXh4eHgteHh4eC14eHh4\nKS4gKHN0cmluZywgcmVxdWlyZWQpCgotICoqbGlzdF9nbG9iYWxfc2VjdXJp\ndHlfYWR2aXNvcmllcyoqIC0gTGlzdCBnbG9iYWwgc2VjdXJpdHkgYWR2aXNv\ncmllcwogIC0gKipSZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHNlY3VyaXR5\nX2V2ZW50c2AKICAtICoqQWNjZXB0ZWQgT0F1dGggU2NvcGVzKio6IGByZXBv\nYCwgYHNlY3VyaXR5X2V2ZW50c2AKICAtIGBhZmZlY3RzYDogRmlsdGVyIGFk\ndmlzb3JpZXMgYnkgYWZmZWN0ZWQgcGFja2FnZSBvciB2ZXJzaW9uIChlLmcu\nICJwYWNrYWdlMSxwYWNrYWdlMkAxLjAuMCIpLiAoc3RyaW5nLCBvcHRpb25h\nbCkKICAtIGBjdmVJZGA6IEZpbHRlciBieSBDVkUgSUQuIChzdHJpbmcsIG9w\ndGlvbmFsKQogIC0gYGN3ZXNgOiBGaWx0ZXIgYnkgQ29tbW9uIFdlYWtuZXNz\nIEVudW1lcmF0aW9uIElEcyAoZS5nLiBbIjc5IiwgIjI4NCIsICIyMiJdKS4g\nKHN0cmluZ1tdLCBvcHRpb25hbCkKICAtIGBlY29zeXN0ZW1gOiBGaWx0ZXIg\nYnkgcGFja2FnZSBlY29zeXN0ZW0uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0g\nYGdoc2FJZGA6IEZpbHRlciBieSBHaXRIdWIgU2VjdXJpdHkgQWR2aXNvcnkg\nSUQgKGZvcm1hdDogR0hTQS14eHh4LXh4eHgteHh4eCkuIChzdHJpbmcsIG9w\ndGlvbmFsKQogIC0gYGlzV2l0aGRyYXduYDogV2hldGhlciB0byBvbmx5IHJl\ndHVybiB3aXRoZHJhd24gYWR2aXNvcmllcy4gKGJvb2xlYW4sIG9wdGlvbmFs\nKQogIC0gYG1vZGlmaWVkYDogRmlsdGVyIGJ5IHB1Ymxpc2ggb3IgdXBkYXRl\nIGRhdGUgb3IgZGF0ZSByYW5nZSAoSVNPIDg2MDEgZGF0ZSBvciByYW5nZSku\nIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHB1Ymxpc2hlZGA6IEZpbHRlciBi\neSBwdWJsaXNoIGRhdGUgb3IgZGF0ZSByYW5nZSAoSVNPIDg2MDEgZGF0ZSBv\nciByYW5nZSkuIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYHNldmVyaXR5YDog\nRmlsdGVyIGJ5IHNldmVyaXR5LiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGB0\neXBlYDogQWR2aXNvcnkgdHlwZS4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\ndXBkYXRlZGA6IEZpbHRlciBieSB1cGRhdGUgZGF0ZSBvciBkYXRlIHJhbmdl\nIChJU08gODYwMSBkYXRlIG9yIHJhbmdlKS4gKHN0cmluZywgb3B0aW9uYWwp\nCgotICoqbGlzdF9vcmdfcmVwb3NpdG9yeV9zZWN1cml0eV9hZHZpc29yaWVz\nKiogLSBMaXN0IG9yZyByZXBvc2l0b3J5IHNlY3VyaXR5IGFkdmlzb3JpZXMK\nICAtICoqUmVxdWlyZWQgT0F1dGggU2NvcGVzKio6IGBzZWN1cml0eV9ldmVu\ndHNgCiAgLSAqKkFjY2VwdGVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AsIGBz\nZWN1cml0eV9ldmVudHNgCiAgLSBgZGlyZWN0aW9uYDogU29ydCBkaXJlY3Rp\nb24uIChzdHJpbmcsIG9wdGlvbmFsKQogIC0gYG9yZ2A6IFRoZSBvcmdhbml6\nYXRpb24gbG9naW4uIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBT\nb3J0IGZpZWxkLiAoc3RyaW5nLCBvcHRpb25hbCkKICAtIGBzdGF0ZWA6IEZp\nbHRlciBieSBhZHZpc29yeSBzdGF0ZS4gKHN0cmluZywgb3B0aW9uYWwpCgot\nICoqbGlzdF9yZXBvc2l0b3J5X3NlY3VyaXR5X2Fkdmlzb3JpZXMqKiAtIExp\nc3QgcmVwb3NpdG9yeSBzZWN1cml0eSBhZHZpc29yaWVzCiAgLSAqKlJlcXVp\ncmVkIE9BdXRoIFNjb3BlcyoqOiBgc2VjdXJpdHlfZXZlbnRzYAogIC0gKipB\nY2NlcHRlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gLCBgc2VjdXJpdHlfZXZl\nbnRzYAogIC0gYGRpcmVjdGlvbmA6IFNvcnQgZGlyZWN0aW9uLiAoc3RyaW5n\nLCBvcHRpb25hbCkKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0aGUgcmVw\nb3NpdG9yeS4gKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6IFRoZSBu\nYW1lIG9mIHRoZSByZXBvc2l0b3J5LiAoc3RyaW5nLCByZXF1aXJlZCkKICAt\nIGBzb3J0YDogU29ydCBmaWVsZC4gKHN0cmluZywgb3B0aW9uYWwpCiAgLSBg\nc3RhdGVgOiBGaWx0ZXIgYnkgYWR2aXNvcnkgc3RhdGUuIChzdHJpbmcsIG9w\ndGlvbmFsKQoKPC9kZXRhaWxzPgoKPGRldGFpbHM+Cgo8c3VtbWFyeT48cGlj\ndHVyZT48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGRh\ncmspIiBzcmNzZXQ9InBrZy9vY3RpY29ucy9pY29ucy9zdGFyLWRhcmsucG5n\nIj48c291cmNlIG1lZGlhPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0\nKSIgc3Jjc2V0PSJwa2cvb2N0aWNvbnMvaWNvbnMvc3Rhci1saWdodC5wbmci\nPjxpbWcgc3JjPSJwa2cvb2N0aWNvbnMvaWNvbnMvc3Rhci1saWdodC5wbmci\nIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgYWx0PSJzdGFyIj48L3BpY3R1cmU+\nIFN0YXJnYXplcnM8L3N1bW1hcnk+CgotICoqbGlzdF9zdGFycmVkX3JlcG9z\naXRvcmllcyoqIC0gTGlzdCBzdGFycmVkIHJlcG9zaXRvcmllcwogIC0gKipS\nZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgZGlyZWN0aW9u\nYDogVGhlIGRpcmVjdGlvbiB0byBzb3J0IHRoZSByZXN1bHRzIGJ5LiAoc3Ry\naW5nLCBvcHRpb25hbCkKICAtIGBwYWdlYDogUGFnZSBudW1iZXIgZm9yIHBh\nZ2luYXRpb24gKG1pbiAxKSAobnVtYmVyLCBvcHRpb25hbCkKICAtIGBwZXJQ\nYWdlYDogUmVzdWx0cyBwZXIgcGFnZSBmb3IgcGFnaW5hdGlvbiAobWluIDEs\nIG1heCAxMDApIChudW1iZXIsIG9wdGlvbmFsKQogIC0gYHNvcnRgOiBIb3cg\ndG8gc29ydCB0aGUgcmVzdWx0cy4gQ2FuIGJlIGVpdGhlciAnY3JlYXRlZCcg\nKHdoZW4gdGhlIHJlcG9zaXRvcnkgd2FzIHN0YXJyZWQpIG9yICd1cGRhdGVk\nJyAod2hlbiB0aGUgcmVwb3NpdG9yeSB3YXMgbGFzdCBwdXNoZWQgdG8pLiAo\nc3RyaW5nLCBvcHRpb25hbCkKICAtIGB1c2VybmFtZWA6IFVzZXJuYW1lIHRv\nIGxpc3Qgc3RhcnJlZCByZXBvc2l0b3JpZXMgZm9yLiBEZWZhdWx0cyB0byB0\naGUgYXV0aGVudGljYXRlZCB1c2VyLiAoc3RyaW5nLCBvcHRpb25hbCkKCi0g\nKipzdGFyX3JlcG9zaXRvcnkqKiAtIFN0YXIgcmVwb3NpdG9yeQogIC0gKipS\nZXF1aXJlZCBPQXV0aCBTY29wZXMqKjogYHJlcG9gCiAgLSBgb3duZXJgOiBS\nZXBvc2l0b3J5IG93bmVyIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHJlcG9g\nOiBSZXBvc2l0b3J5IG5hbWUgKHN0cmluZywgcmVxdWlyZWQpCgotICoqdW5z\ndGFyX3JlcG9zaXRvcnkqKiAtIFVuc3RhciByZXBvc2l0b3J5CiAgLSAqKlJl\ncXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvd25lcmA6IFJl\ncG9zaXRvcnkgb3duZXIgKHN0cmluZywgcmVxdWlyZWQpCiAgLSBgcmVwb2A6\nIFJlcG9zaXRvcnkgbmFtZSAoc3RyaW5nLCByZXF1aXJlZCkKCjwvZGV0YWls\ncz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+PHBpY3R1cmU+PHNvdXJjZSBtZWRp\nYT0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWRhcmsucG5nIj48c291cmNlIG1lZGlh\nPSIocHJlZmVycy1jb2xvci1zY2hlbWU6IGxpZ2h0KSIgc3Jjc2V0PSJwa2cv\nb2N0aWNvbnMvaWNvbnMvcGVvcGxlLWxpZ2h0LnBuZyI+PGltZyBzcmM9InBr\nZy9vY3RpY29ucy9pY29ucy9wZW9wbGUtbGlnaHQucG5nIiB3aWR0aD0iMjAi\nIGhlaWdodD0iMjAiIGFsdD0icGVvcGxlIj48L3BpY3R1cmU+IFVzZXJzPC9z\ndW1tYXJ5PgoKLSAqKnNlYXJjaF91c2VycyoqIC0gU2VhcmNoIHVzZXJzCiAg\nLSAqKlJlcXVpcmVkIE9BdXRoIFNjb3BlcyoqOiBgcmVwb2AKICAtIGBvcmRl\ncmA6IFNvcnQgb3JkZXIgKHN0cmluZywgb3B0aW9uYWwpCiAgLSBgcGFnZWA6\nIFBhZ2UgbnVtYmVyIGZvciBwYWdpbmF0aW9uIChtaW4gMSkgKG51bWJlciwg\nb3B0aW9uYWwpCiAgLSBgcGVyUGFnZWA6IFJlc3VsdHMgcGVyIHBhZ2UgZm9y\nIHBhZ2luYXRpb24gKG1pbiAxLCBtYXggMTAwKSAobnVtYmVyLCBvcHRpb25h\nbCkKICAtIGBxdWVyeWA6IFVzZXIgc2VhcmNoIHF1ZXJ5LiBFeGFtcGxlczog\nJ2pvaG4gc21pdGgnLCAnbG9jYXRpb246c2VhdHRsZScsICdmb2xsb3dlcnM6\nPjEwMCcuIFNlYXJjaCBpcyBhdXRvbWF0aWNhbGx5IHNjb3BlZCB0byB0eXBl\nOnVzZXIuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHNvcnRgOiBTb3J0IHVz\nZXJzIGJ5IG51bWJlciBvZiBmb2xsb3dlcnMgb3IgcmVwb3NpdG9yaWVzLCBv\nciB3aGVuIHRoZSBwZXJzb24gam9pbmVkIEdpdEh1Yi4gKHN0cmluZywgb3B0\naW9uYWwpCgo8L2RldGFpbHM+CjwhLS0gRU5EIEFVVE9NQVRFRCBUT09MUyAt\nLT4KCiMjIyBBZGRpdGlvbmFsIFRvb2xzIGluIFJlbW90ZSBHaXRIdWIgTUNQ\nIFNlcnZlcgoKPGRldGFpbHM+Cgo8c3VtbWFyeT5Db3BpbG90PC9zdW1tYXJ5\nPgoKLSAqKmNyZWF0ZV9wdWxsX3JlcXVlc3Rfd2l0aF9jb3BpbG90KiogLSBQ\nZXJmb3JtIHRhc2sgd2l0aCBHaXRIdWIgQ29waWxvdCBjb2RpbmcgYWdlbnQK\nICAtIGBvd25lcmA6IFJlcG9zaXRvcnkgb3duZXIuIFlvdSBjYW4gZ3Vlc3Mg\ndGhlIG93bmVyLCBidXQgY29uZmlybSBpdCB3aXRoIHRoZSB1c2VyIGJlZm9y\nZSBwcm9jZWVkaW5nLiAoc3RyaW5nLCByZXF1aXJlZCkKICAtIGByZXBvYDog\nUmVwb3NpdG9yeSBuYW1lLiBZb3UgY2FuIGd1ZXNzIHRoZSByZXBvc2l0b3J5\nIG5hbWUsIGJ1dCBjb25maXJtIGl0IHdpdGggdGhlIHVzZXIgYmVmb3JlIHBy\nb2NlZWRpbmcuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYHByb2JsZW1fc3Rh\ndGVtZW50YDogRGV0YWlsZWQgZGVzY3JpcHRpb24gb2YgdGhlIHRhc2sgdG8g\nYmUgcGVyZm9ybWVkIChlLmcuLCAnSW1wbGVtZW50IGEgZmVhdHVyZSB0aGF0\nIGRvZXMgWCcsICdGaXggYnVnIFknLCBldGMuKSAoc3RyaW5nLCByZXF1aXJl\nZCkKICAtIGB0aXRsZWA6IFRpdGxlIGZvciB0aGUgcHVsbCByZXF1ZXN0IHRo\nYXQgd2lsbCBiZSBjcmVhdGVkIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYGJh\nc2VfcmVmYDogR2l0IHJlZmVyZW5jZSAoZS5nLiwgYnJhbmNoKSB0aGF0IHRo\nZSBhZ2VudCB3aWxsIHN0YXJ0IGl0cyB3b3JrIGZyb20uIElmIG5vdCBzcGVj\naWZpZWQsIGRlZmF1bHRzIHRvIHRoZSByZXBvc2l0b3J5J3MgZGVmYXVsdCBi\ncmFuY2ggKHN0cmluZywgb3B0aW9uYWwpCgo8L2RldGFpbHM+Cgo8ZGV0YWls\ncz4KCjxzdW1tYXJ5PkNvcGlsb3QgU3BhY2VzPC9zdW1tYXJ5PgoKLSAqKkF1\ndGhlbnRpY2F0aW9uIG5vdGUqKgogIC0gRmluZS1ncmFpbmVkIFBBVHMgYXJl\nIG5vdCBoaWRkZW4gYnkgY2xhc3NpYyBQQVQgc2NvcGUgZmlsdGVyaW5nLCBz\nbyB0aGVzZSB0b29scyBtYXkgc3RpbGwgYXBwZWFyIGV2ZW4gd2hlbiB0aGUg\ndG9rZW4gY2Fubm90IHVzZSB0aGVtLgogIC0gRm9yIG9yZy1vd25lZCBzcGFj\nZXMsIGZpbmUtZ3JhaW5lZCBQQVRzIG11c3QgYmUgaW5zdGFsbGVkIG9uIHRo\nZSBvd25pbmcgb3JnYW5pemF0aW9uIGFuZCBpbmNsdWRlIGBvcmdhbml6YXRp\nb25fY29waWxvdF9zcGFjZXM6IHJlYWRgLgogIC0gSWYgYW4gb3JnLW93bmVk\nIHNwYWNlIGNvbnRhaW5zIHJlcG9zaXRvcnktYmFja2VkIHJlc291cmNlcywg\ndGhlIHRva2VuIG11c3QgYWxzbyBoYXZlIGFjY2VzcyB0byBldmVyeSByZWZl\ncmVuY2VkIHJlcG9zaXRvcnkgb3IgdGhlIHNwYWNlIG1heSBiZSB0cmVhdGVk\nIGFzIG5vdCBmb3VuZC4KCi0gKipnZXRfY29waWxvdF9zcGFjZSoqIC0gR2V0\nIENvcGlsb3QgU3BhY2UKICAtIGBvd25lcmA6IFRoZSBvd25lciBvZiB0aGUg\nc3BhY2UuIChzdHJpbmcsIHJlcXVpcmVkKQogIC0gYG5hbWVgOiBUaGUgbmFt\nZSBvZiB0aGUgc3BhY2UuIChzdHJpbmcsIHJlcXVpcmVkKQoKLSAqKmxpc3Rf\nY29waWxvdF9zcGFjZXMqKiAtIExpc3QgQ29waWxvdCBTcGFjZXMKCjwvZGV0\nYWlscz4KCjxkZXRhaWxzPgoKPHN1bW1hcnk+R2l0SHViIFN1cHBvcnQgRG9j\ncyBTZWFyY2g8L3N1bW1hcnk+CgotICoqZ2l0aHViX3N1cHBvcnRfZG9jc19z\nZWFyY2gqKiAtIFJldHJpZXZlIGRvY3VtZW50YXRpb24gcmVsZXZhbnQgdG8g\nYW5zd2VyIEdpdEh1YiBwcm9kdWN0IGFuZCBzdXBwb3J0IHF1ZXN0aW9ucy4g\nU3VwcG9ydCB0b3BpY3MgaW5jbHVkZTogR2l0SHViIEFjdGlvbnMgV29ya2Zs\nb3dzLCBBdXRoZW50aWNhdGlvbiwgR2l0SHViIFN1cHBvcnQgSW5xdWlyaWVz\nLCBQdWxsIFJlcXVlc3QgUHJhY3RpY2VzLCBSZXBvc2l0b3J5IE1haW50ZW5h\nbmNlLCBHaXRIdWIgUGFnZXMsIEdpdEh1YiBQYWNrYWdlcywgR2l0SHViIERp\nc2N1c3Npb25zLCBDb3BpbG90IFNwYWNlcwogIC0gYHF1ZXJ5YDogSW5wdXQg\nZnJvbSB0aGUgdXNlciBhYm91dCB0aGUgcXVlc3Rpb24gdGhleSBuZWVkIGFu\nc3dlcmVkLiBUaGlzIGlzIHRoZSBsYXRlc3QgcmF3IHVuZWRpdGVkIHVzZXIg\nbWVzc2FnZS4gWW91IHNob3VsZCBBTFdBWVMgbGVhdmUgdGhlIHVzZXIgbWVz\nc2FnZSBhcyBpdCBpcywgeW91IHNob3VsZCBuZXZlciBtb2RpZnkgaXQuIChz\ndHJpbmcsIHJlcXVpcmVkKQoKPC9kZXRhaWxzPgoKIyMgUmVhZC1Pbmx5IE1v\nZGUKClRvIHJ1biB0aGUgc2VydmVyIGluIHJlYWQtb25seSBtb2RlLCB5b3Ug\nY2FuIHVzZSB0aGUgYC0tcmVhZC1vbmx5YCBmbGFnLiBUaGlzIHdpbGwgb25s\neSBvZmZlciByZWFkLW9ubHkgdG9vbHMsIHByZXZlbnRpbmcgYW55IG1vZGlm\naWNhdGlvbnMgdG8gcmVwb3NpdG9yaWVzLCBpc3N1ZXMsIHB1bGwgcmVxdWVz\ndHMsIGV0Yy4KCmBgYGJhc2gKLi9naXRodWItbWNwLXNlcnZlciAtLXJlYWQt\nb25seQpgYGAKCldoZW4gdXNpbmcgRG9ja2VyLCB5b3UgY2FuIHBhc3MgdGhl\nIHJlYWQtb25seSBtb2RlIGFzIGFuIGVudmlyb25tZW50IHZhcmlhYmxlOgoK\nYGBgYmFzaApkb2NrZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJT\nT05BTF9BQ0NFU1NfVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJf\nUkVBRF9PTkxZPTEgXAogIGdoY3IuaW8vZ2l0aHViL2dpdGh1Yi1tY3Atc2Vy\ndmVyCmBgYAoKIyMgTG9ja2Rvd24gTW9kZQoKTG9ja2Rvd24gbW9kZSBsaW1p\ndHMgdGhlIGNvbnRlbnQgdGhhdCB0aGUgc2VydmVyIHdpbGwgc3VyZmFjZSBm\ncm9tIHB1YmxpYyByZXBvc2l0b3JpZXMuIFdoZW4gZW5hYmxlZCwgdGhlIHNl\ncnZlciBjaGVja3Mgd2hldGhlciB0aGUgYXV0aG9yIG9mIGVhY2ggaXRlbSBo\nYXMgcHVzaCBhY2Nlc3MgdG8gdGhlIHJlcG9zaXRvcnkuIFByaXZhdGUgcmVw\nb3NpdG9yaWVzIGFyZSB1bmFmZmVjdGVkLCBhbmQgY29sbGFib3JhdG9ycyBr\nZWVwIGZ1bGwgYWNjZXNzIHRvIHRoZWlyIG93biBjb250ZW50LgoKTG9ja2Rv\nd24gbW9kZSBpcyBhIGJlc3QtZWZmb3J0IGNvbnRlbnQgZmlsdGVyIGludGVu\nZGVkIHRvIHJlZHVjZSB0aGUgcmlzayBvZiBwcm9tcHQgaW5qZWN0aW9uIGZy\nb20gdW50cnVzdGVkIHJlcG9zaXRvcnkgY29udGVudCAoaXNzdWVzLCBwdWxs\nIHJlcXVlc3RzLCBjb21tZW50cywgY29tbWl0cywgZXRjLikuIEl0IGlzICoq\nbm90KiogYW4gYXV0aG9yaXphdGlvbiBib3VuZGFyeTogaXQgZG9lcyBub3Qg\nY2hhbmdlIHdoYXQgdGhlIHVuZGVybHlpbmcgR2l0SHViIGNyZWRlbnRpYWwg\nY2FuIHJlYWQgb3Igd3JpdGUsIGFuZCBjb250ZW50IHdpdGhoZWxkIGZyb20g\nYSBmaWx0ZXJlZCB0b29sIHJlc3BvbnNlIG1heSBzdGlsbCBiZSByZWFjaGFi\nbGUgdGhyb3VnaCBvdGhlciB0b29scyBvciBkaXJlY3QgR2l0SHViIEFQSSBh\nY2Nlc3Mgd2l0aCB0aGUgc2FtZSBjcmVkZW50aWFsLgoKQXMgYW4gaW50ZW50\naW9uYWwgZXhjZXB0aW9uLCBjb250ZW50IGF1dGhvcmVkIGJ5IGEgc21hbGwg\nc2V0IG9mIHRydXN0ZWQgYm90IGFjY291bnRzIChjdXJyZW50bHkgYGdpdGh1\nYi1hY3Rpb25zW2JvdF1gIGFuZCBgY29waWxvdGApIGlzIGFsd2F5cyB0cmVh\ndGVkIGFzIHNhZmUsIHJlZ2FyZGxlc3Mgb2YgcHVzaCBhY2Nlc3MuIFRoaXMg\nYXZvaWRzIGZpbHRlcmluZyByb3V0aW5lIGF1dG9tYXRpb24gb3V0cHV0IChl\nLmcuIENJLWdlbmVyYXRlZCBjb21taXRzIG9yIGNvbW1lbnRzKSB0aGF0IHdv\ndWxkIG90aGVyd2lzZSBiZSB3aXRoaGVsZCB1bmRlciBsb2NrZG93biBtb2Rl\nLgoKYGBgYmFzaAouL2dpdGh1Yi1tY3Atc2VydmVyIC0tbG9ja2Rvd24tbW9k\nZQpgYGAKCldoZW4gcnVubmluZyB3aXRoIERvY2tlciwgc2V0IHRoZSBjb3Jy\nZXNwb25kaW5nIGVudmlyb25tZW50IHZhcmlhYmxlOgoKYGBgYmFzaApkb2Nr\nZXIgcnVuIC1pIC0tcm0gXAogIC1lIEdJVEhVQl9QRVJTT05BTF9BQ0NFU1Nf\nVE9LRU49PHlvdXItdG9rZW4+IFwKICAtZSBHSVRIVUJfTE9DS0RPV05fTU9E\nRT0xIFwKICBnaGNyLmlvL2dpdGh1Yi9naXRodWItbWNwLXNlcnZlcgpgYGAK\nCkluIEhUVFAgbW9kZSwgdGhpcyBmbGFnIChvciBgR0lUSFVCX0xPQ0tET1dO\nX01PREVgKSBpcyBhbiB1cHBlciBib3VuZDogdGhlIGBYLU1DUC1Mb2NrZG93\nbmAgcmVxdWVzdCBoZWFkZXIgY2FuIGVuYWJsZSBsb2NrZG93biBtb2RlIHdo\nZW4gdGhlIG9wZXJhdG9yIGhhcyBub3QsIGJ1dCBpdCBjYW5ub3QgZGlzYWJs\nZSBsb2NrZG93biBtb2RlIHRoZSBvcGVyYXRvciBoYXMgYWxyZWFkeSBlbmFi\nbGVkLiBTZWUgdGhlIFtTZXJ2ZXIgQ29uZmlndXJhdGlvbiBHdWlkZV0oZG9j\ncy9zZXJ2ZXItY29uZmlndXJhdGlvbi5tZCNsb2NrZG93bi1tb2RlKSBmb3Ig\nZGV0YWlscy4KClRoZSBiZWhhdmlvciBvZiBsb2NrZG93biBtb2RlIGRlcGVu\nZHMgb24gdGhlIHRvb2wgaW52b2tlZC4KCkZvbGxvd2luZyB0b29scyB3aWxs\nIHJldHVybiBhbiBlcnJvciB3aGVuIHRoZSBhdXRob3IgbGFja3MgdGhlIHB1\nc2ggYWNjZXNzOgoKLSBgaXNzdWVfcmVhZDpnZXRgCi0gYHB1bGxfcmVxdWVz\ndF9yZWFkOmdldGAKLSBgcHVsbF9yZXF1ZXN0X3JlYWQ6Z2V0X2RpZmZgCi0g\nYHB1bGxfcmVxdWVzdF9yZWFkOmdldF9maWxlc2AKLSBgcHVsbF9yZXF1ZXN0\nX3JlYWQ6Z2V0X2NvbW1pdHNgCgpGb2xsb3dpbmcgdG9vbHMgd2lsbCBmaWx0\nZXIgb3V0IGNvbnRlbnQgZnJvbSB1c2VycyBsYWNraW5nIHRoZSBwdXNoIGFj\nY2VzczoKCi0gYGlzc3VlX3JlYWQ6Z2V0X2NvbW1lbnRzYAotIGBpc3N1ZV9y\nZWFkOmdldF9zdWJfaXNzdWVzYAotIGBwdWxsX3JlcXVlc3RfcmVhZDpnZXRf\nY29tbWVudHNgCi0gYHB1bGxfcmVxdWVzdF9yZWFkOmdldF9yZXZpZXdfY29t\nbWVudHNgCi0gYHB1bGxfcmVxdWVzdF9yZWFkOmdldF9yZXZpZXdzYAoKIyMg\naTE4biAvIE92ZXJyaWRpbmcgRGVzY3JpcHRpb25zCgpUaGUgZGVzY3JpcHRp\nb25zIG9mIHRoZSB0b29scyBjYW4gYmUgb3ZlcnJpZGRlbiBieSBjcmVhdGlu\nZyBhCmBnaXRodWItbWNwLXNlcnZlci1jb25maWcuanNvbmAgZmlsZSBpbiB0\naGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlIGJpbmFyeS4KClRoZSBmaWxlIHNo\nb3VsZCBjb250YWluIGEgSlNPTiBvYmplY3Qgd2l0aCB0aGUgdG9vbCBuYW1l\ncyBhcyBrZXlzIGFuZCB0aGUgbmV3CmRlc2NyaXB0aW9ucyBhcyB2YWx1ZXMu\nIEZvciBleGFtcGxlOgoKYGBganNvbgp7CiAgIlRPT0xfQUREX0lTU1VFX0NP\nTU1FTlRfREVTQ1JJUFRJT04iOiAiYW4gYWx0ZXJuYXRpdmUgZGVzY3JpcHRp\nb24iLAogICJUT09MX0NSRUFURV9CUkFOQ0hfREVTQ1JJUFRJT04iOiAiQ3Jl\nYXRlIGEgbmV3IGJyYW5jaCBpbiBhIEdpdEh1YiByZXBvc2l0b3J5Igp9CmBg\nYAoKWW91IGNhbiBjcmVhdGUgYW4gZXhwb3J0IG9mIHRoZSBjdXJyZW50IHRy\nYW5zbGF0aW9ucyBieSBydW5uaW5nIHRoZSBiaW5hcnkgd2l0aAp0aGUgYC0t\nZXhwb3J0LXRyYW5zbGF0aW9uc2AgZmxhZy4KClRoaXMgZmxhZyB3aWxsIHBy\nZXNlcnZlIGFueSB0cmFuc2xhdGlvbnMvb3ZlcnJpZGVzIHlvdSBoYXZlIG1h\nZGUsIHdoaWxlIGFkZGluZwphbnkgbmV3IHRyYW5zbGF0aW9ucyB0aGF0IGhh\ndmUgYmVlbiBhZGRlZCB0byB0aGUgYmluYXJ5IHNpbmNlIHRoZSBsYXN0IHRp\nbWUgeW91CmV4cG9ydGVkLgoKYGBgc2gKLi9naXRodWItbWNwLXNlcnZlciAt\nLWV4cG9ydC10cmFuc2xhdGlvbnMKY2F0IGdpdGh1Yi1tY3Atc2VydmVyLWNv\nbmZpZy5qc29uCmBgYAoKWW91IGNhbiBhbHNvIHVzZSBFTlYgdmFycyB0byBv\ndmVycmlkZSB0aGUgZGVzY3JpcHRpb25zLiBUaGUgZW52aXJvbm1lbnQKdmFy\naWFibGUgbmFtZXMgYXJlIHRoZSBzYW1lIGFzIHRoZSBrZXlzIGluIHRoZSBK\nU09OIGZpbGUsIHByZWZpeGVkIHdpdGgKYEdJVEhVQl9NQ1BfYCBhbmQgYWxs\nIHVwcGVyY2FzZS4KCkZvciBleGFtcGxlLCB0byBvdmVycmlkZSB0aGUgYFRP\nT0xfQUREX0lTU1VFX0NPTU1FTlRfREVTQ1JJUFRJT05gIHRvb2wsIHlvdSBj\nYW4Kc2V0IHRoZSBmb2xsb3dpbmcgZW52aXJvbm1lbnQgdmFyaWFibGU6Cgpg\nYGBzaApleHBvcnQgR0lUSFVCX01DUF9UT09MX0FERF9JU1NVRV9DT01NRU5U\nX0RFU0NSSVBUSU9OPSJhbiBhbHRlcm5hdGl2ZSBkZXNjcmlwdGlvbiIKYGBg\nCgojIyMgT3ZlcnJpZGluZyBTZXJ2ZXIgTmFtZSBhbmQgVGl0bGUKClRoZSBz\nYW1lIG92ZXJyaWRlIG1lY2hhbmlzbSBjYW4gYmUgdXNlZCB0byBjdXN0b21p\nemUgdGhlIE1DUCBzZXJ2ZXIncyBgbmFtZWAgYW5kCmB0aXRsZWAgZmllbGRz\nIGluIHRoZSBpbml0aWFsaXphdGlvbiByZXNwb25zZS4gVGhpcyBpcyB1c2Vm\ndWwgd2hlbiBydW5uaW5nCm11bHRpcGxlIEdpdEh1YiBNQ1AgU2VydmVyIGlu\nc3RhbmNlcyAoZS5nLiwgb25lIGZvciBnaXRodWIuY29tIGFuZCBvbmUgZm9y\nCkdpdEh1YiBFbnRlcnByaXNlIFNlcnZlcikgc28gdGhhdCBhZ2VudHMgY2Fu\nIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlbS4KCnwgS2V5IHwgRW52aXJvbm1l\nbnQgVmFyaWFibGUgfCBEZWZhdWx0IHwKfC0tLS0tfC0tLS0tLS0tLS0tLS0t\nLS0tLS0tLXwtLS0tLS0tLS18CnwgYFNFUlZFUl9OQU1FYCB8IGBHSVRIVUJf\nTUNQX1NFUlZFUl9OQU1FYCB8IGBnaXRodWItbWNwLXNlcnZlcmAgfAp8IGBT\nRVJWRVJfVElUTEVgIHwgYEdJVEhVQl9NQ1BfU0VSVkVSX1RJVExFYCB8IGBH\naXRIdWIgTUNQIFNlcnZlcmAgfAoKRm9yIGV4YW1wbGUsIHRvIGNvbmZpZ3Vy\nZSBhIHNlcnZlciBpbnN0YW5jZSBmb3IgR2l0SHViIEVudGVycHJpc2UgU2Vy\ndmVyOgoKYGBganNvbgp7CiAgIlNFUlZFUl9OQU1FIjogImdoZXMtbWNwLXNl\ncnZlciIsCiAgIlNFUlZFUl9USVRMRSI6ICJHSEVTIE1DUCBTZXJ2ZXIiCn0K\nYGBgCgpPciB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXM6CgpgYGBzaApl\neHBvcnQgR0lUSFVCX01DUF9TRVJWRVJfTkFNRT0iZ2hlcy1tY3Atc2VydmVy\nIgpleHBvcnQgR0lUSFVCX01DUF9TRVJWRVJfVElUTEU9IkdIRVMgTUNQIFNl\ncnZlciIKYGBgCgojIyBMaWJyYXJ5IFVzYWdlCgpUaGUgZXhwb3J0ZWQgR28g\nQVBJIG9mIHRoaXMgbW9kdWxlIHNob3VsZCBjdXJyZW50bHkgYmUgY29uc2lk\nZXJlZCB1bnN0YWJsZSwgYW5kIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdl\ncy4gSW4gdGhlIGZ1dHVyZSwgd2UgbWF5IG9mZmVyIHN0YWJpbGl0eTsgcGxl\nYXNlIGZpbGUgYW4gaXNzdWUgaWYgdGhlcmUgaXMgYSB1c2UgY2FzZSB3aGVy\nZSB0aGlzIHdvdWxkIGJlIHZhbHVhYmxlLgoKIyMgQ29udHJpYnV0aW5nCgpD\nb250cmlidXRpb25zIGFyZSB3ZWxjb21lLiBCZWZvcmUgb3BlbmluZyBhIHB1\nbGwgcmVxdWVzdCwgcGxlYXNlIHJlYWQgdGhlIFtjb250cmlidXRpbmcgZ3Vp\nZGVdKENPTlRSSUJVVElORy5tZCkgZm9yIHNldHVwLCB0ZXN0aW5nLCBsaW50\naW5nLCBhbmQgZG9jdW1lbnRhdGlvbiBnZW5lcmF0aW9uIGluc3RydWN0aW9u\ncy4KCiMjIFN1cHBvcnQKCkZvciBoZWxwIHVzaW5nIHRoZSBHaXRIdWIgTUNQ\nIFNlcnZlciwgc2VlIHRoZSBbc3VwcG9ydCBndWlkZV0oU1VQUE9SVC5tZCku\nIElmIHlvdSBoYXZlIGZvdW5kIGEgYnVnIG9yIHdhbnQgdG8gcmVxdWVzdCBh\nIGZlYXR1cmUsIHBsZWFzZSBzZWFyY2ggZXhpc3RpbmcgaXNzdWVzIGJlZm9y\nZSBvcGVuaW5nIGEgbmV3IG9uZS4KCiMjIFNlY3VyaXR5CgpQbGVhc2UgZG8g\nbm90IHJlcG9ydCBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMgdGhyb3VnaCBw\ndWJsaWMgaXNzdWVzLiBGb2xsb3cgdGhlIGluc3RydWN0aW9ucyBpbiB0aGUg\nW3NlY3VyaXR5IHBvbGljeV0oU0VDVVJJVFkubWQpIHRvIHJlcG9ydCB2dWxu\nZXJhYmlsaXRpZXMgcmVzcG9uc2libHkuCgojIyBMaWNlbnNlCgpUaGlzIHBy\nb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQg\nb3BlbiBzb3VyY2UgbGljZW5zZS4gUGxlYXNlIHJlZmVyIHRvIFtNSVRdKC4v\nTElDRU5TRSkgZm9yIHRoZSBmdWxsIHRlcm1zLgo=\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/9527478a0fe7a36f37fc9856ea840275a72bebab","html":"https://github.com/github/github-mcp-server/blob/main/README.md"}}