diff --git a/lib/src/commands/create/templates/very_good_dart_cli/very_good_dart_cli_bundle.dart b/lib/src/commands/create/templates/very_good_dart_cli/very_good_dart_cli_bundle.dart index 93ac69438..c52727794 100644 --- a/lib/src/commands/create/templates/very_good_dart_cli/very_good_dart_cli_bundle.dart +++ b/lib/src/commands/create/templates/very_good_dart_cli/very_good_dart_cli_bundle.dart @@ -127,7 +127,7 @@ final veryGoodDartCliBundle = MasonBundle.fromJson({ { "path": "pubspec.yaml", "data": - "bmFtZToge3twcm9qZWN0X25hbWUuc25ha2VDYXNlKCl9fQpkZXNjcmlwdGlvbjoge3tkZXNjcmlwdGlvbn19CnZlcnNpb246IDAuMC4xCnt7XnB1Ymxpc2hhYmxlfX1wdWJsaXNoX3RvOiBub25le3svcHVibGlzaGFibGV9fXt7I3dvcmtzcGFjZX19CnJlc29sdXRpb246IHdvcmtzcGFjZXt7L3dvcmtzcGFjZX19CgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjEyLjAKCmRlcGVuZGVuY2llczoKICBhcmdzOiBeMi43LjAKICBjbGlfY29tcGxldGlvbjogXjAuNS4xCiAgbWFzb25fbG9nZ2VyOiBeMC4zLjUKICBwdWJfdXBkYXRlcjogXjAuNS4wCgpkZXZfZGVwZW5kZW5jaWVzOgogIGJ1aWxkX3J1bm5lcjogXjIuMTUuMgogIGJ1aWxkX3ZlcmlmeTogXjMuMS4xCiAgYnVpbGRfdmVyc2lvbjogXjIuMS4zCiAgbW9ja3RhaWw6IF4xLjAuNQogIHRlc3Q6IF4xLjMxLjIKICB2ZXJ5X2dvb2RfYW5hbHlzaXM6IF4xMC4zLjAKCmV4ZWN1dGFibGVzOgogIHt7ZXhlY3V0YWJsZV9uYW1lLnNuYWtlQ2FzZSgpfX06Cg==", + "bmFtZToge3twcm9qZWN0X25hbWUuc25ha2VDYXNlKCl9fQpkZXNjcmlwdGlvbjoge3tkZXNjcmlwdGlvbn19CnZlcnNpb246IDAuMC4xCnt7XnB1Ymxpc2hhYmxlfX1wdWJsaXNoX3RvOiBub25le3svcHVibGlzaGFibGV9fXt7I3dvcmtzcGFjZX19CnJlc29sdXRpb246IHdvcmtzcGFjZXt7L3dvcmtzcGFjZX19CgplbnZpcm9ubWVudDoKICBzZGs6IF4zLjEyLjAKCmRlcGVuZGVuY2llczoKICBhcmdzOiBeMi43LjAKICBjbGlfY29tcGxldGlvbjogXjAuNS4xCiAgbWFzb25fbG9nZ2VyOiBeMC4zLjUKICBwdWJfdXBkYXRlcjogXjAuNS4wCgpkZXZfZGVwZW5kZW5jaWVzOgogIGJ1aWxkX3J1bm5lcjogXjIuMTYuMAogIGJ1aWxkX3ZlcmlmeTogXjMuMS4xCiAgYnVpbGRfdmVyc2lvbjogXjIuMS4zCiAgbW9ja3RhaWw6IF4xLjAuNQogIHRlc3Q6IF4xLjMxLjIKICB2ZXJ5X2dvb2RfYW5hbHlzaXM6IF4xMC4zLjAKCmV4ZWN1dGFibGVzOgogIHt7ZXhlY3V0YWJsZV9uYW1lLnNuYWtlQ2FzZSgpfX06Cg==", "type": "text", }, { @@ -201,7 +201,7 @@ final veryGoodDartCliBundle = MasonBundle.fromJson({ ], "name": "very_good_dart_cli", "description": "A Very Good Dart CLI created by Very Good Ventures.", - "version": "1.5.0", + "version": "1.5.1", "environment": {"mason": "^0.1.0"}, "repository": "https://github.com/VeryGoodOpenSource/very_good_templates/tree/main/very_good_dart_cli", @@ -214,7 +214,7 @@ final veryGoodDartCliBundle = MasonBundle.fromJson({ "changelog": { "path": "CHANGELOG.md", "data": - "IyBDaGFuZ2Vsb2cKCiMjIFsxLjUuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjQuMC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS41LjApICgyMDI2LTA3LTI3KQoKCiMjIyBGZWF0dXJlcwoKKiBhZGQgd29ya3NwYWNlIGZsYWcgc3VwcG9ydCB0byBtb25vcmVwbyBwYWNrYWdlIHRlbXBsYXRlcyAoWyM1NjNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTYzKSkgKFs2NGIxMmY2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzY0YjEyZjZhZGQ3MDE0ODBjOTFjMjUwZjg2OWZkNWI3MjFiZThkZmIpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1NjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTYxKSkgKFswZmYwZDJmXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzBmZjBkMmYxZmFkOGVmZWRlYjE4ZWU1YTk2NjM2NzdjMTA4MDQ5YTEpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzU3N10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NzcpKSAoWzQ4YWI5ZGRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDhhYjlkZDU5NmE3ODU4YTk4NzY5M2QyZTM4NWJmM2M1ZjJlNmU5ZCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTgzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU4MykpIChbMTdjZGVjYl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8xN2NkZWNiYjM3ZDE0MWY1NjMzNTg3OGVhY2VlM2Y0ZTllNzNjMDc5KSkKCiMjIFsxLjQuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuNC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS40LjApICgyMDI2LTA2LTE5KQoKCiMjIyBGZWF0dXJlcwoKKiB1cGdyYWRlIHRvIEZsdXR0ZXIgMy40NCBhbmQgRGFydCAzLjEyIChbIzUzNl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81MzYpKSAoWzkwMjZkYWZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvOTAyNmRhZmE3NzRlMTc2ZTU1MTE1NGRjMjVlNmJlOGQ4MzU4ZjQwZikpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIGFkZCBTRUNVUklUWS5tZCBwb2xpY3kgKFsjNTQ2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU0NikpIChbN2NiYmE4MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC83Y2JiYTgwYWFiMGViYmY4OTFmMTdhMjA3ZWUxYjZmNDQ1OTMyZjQzKSkKKiB1cGdyYWRlIHZlcnlfZ29vZF9hbmFseXNpcyB0byAxMC4zLjAgKFsjNTQ1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU0NSkpIChbYTgyODVkYl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9hODI4NWRiNDk3ZjNjNGE4ZjE4ZGM4NTg4OTNlMTRkY2ViOTdiOTA1KSkKCiMjIFsxLjMuNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuMy4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS4zLjQpICgyMDI2LTA1LTA1KQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1MjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTIyKSkgKFs5ZjAwNzMwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzlmMDA3MzBhYzUyZGNiZTNhMzJlYzQ1YWVhOGM1YjhmOWVmOWU0MzcpKQoKIyMgWzEuMy4zXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy4yLi4udmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuMykgKDIwMjYtMDQtMTMpCgoKIyMjIEJ1ZyBGaXhlcwoKKiBhZGQgbWlzc2luZyB2YXJpYWJsZXMgZm9yIExJQ0VOU0UgZmlsZXMgKFsjNTAzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUwMykpIChbMjAzYjhiMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8yMDNiOGIwMzNiMjllNjgyMDIxMzU0MWIxMTFhMTEyYTA0MWY0YTY1KSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogKipjaToqKiBmaXggd29ya2Zsb3dzIChbIzUwMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81MDIpKSAoW2MwODgxOTldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYzA4ODE5OTY1ODgxYjJmMDlkN2MwZTAzYmZjNDg0MzA5NmJmZGJiOSkpCiogcmVtb3ZlIHJlbGVhc2UtcmVhZHkgc2NyaXB0cyAoWyM0ODhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDg4KSkgKFsxZjEzMjYxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzFmMTMyNjE2MTcyZWNiMWU0OWJjYTY0NzEyYzEzZmQ3NjczNzhjMGUpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzUwNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81MDQpKSAoWzM2ODQ1ZDBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMzY4NDVkMGUzMDBkOTU2NWRkN2RhOGIxMGVkNjJhMzRiNWVjZDhmOCkpCgojIyBbMS4zLjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9kYXJ0X2NsaS12MS4zLjEuLi52ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy4yKSAoMjAyNi0wMy0zMCkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDczXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQ3MykpIChbMDBmMTI3MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wMGYxMjcxZTZlNDhlMDk0MjliNmE4ZTcxODBiNzc4ZWI0YjM4YTBmKSkKCiMjIFsxLjMuMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuMC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS4zLjEpICgyMDI2LTAzLTE3KQoKCiMjIyBCdWcgRml4ZXMKCiogYWRkIG1pc3NpbmcgTElDRU5TRSBmaWxlcyB0byB0ZW1wbGF0ZXMgKFsjNDQ4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQ0OCkpIChbYmMzYzBhOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iYzNjMGE5N2QxNmZmYTNiMTViMzI2NDU0ZTI1ZmIzNzA3MGNkOGNjKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogKipkZXBzOioqIGJ1bXAgdGVzdCBmcm9tIDEuMjYuMyB0byAxLjMwLjAgaW4gL3ZlcnlfZ29vZF9kYXJ0X2NsaS9ob29rcyAoWyM0NDRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDQ0KSkgKFs0MzA1ZTUyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzQzMDVlNTIwYzQxYWJhNzc2NGZiZjkyMjE3N2ExMGQ4NjIyNzAwYzQpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzQ0MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80NDApKSAoW2VmOGI3NDJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZWY4Yjc0MmYyZTAyNzQ2OTljNzM3MzQ5N2M3MDU1ODI1NGVmOWUyNykpCgojIyBbMS4zLjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9kYXJ0X2NsaS12MS4yLjAuLi52ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy4wKSAoMjAyNi0wMi0xNykKCgojIyMgRmVhdHVyZXMKCiogdXBncmFkZSB0byBkYXJ0IDMuMTEgYW5kIGZsdXR0ZXIgMy40MSAoWyM0MjldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDI5KSkgKFs0NmFlNDkwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzQ2YWU0OTA4MjNlZjZmNWYzYWRkZWY2MTU5YTI0ODcwZjY2ZTkzMWUpKQoqIHVwZ3JhZGUgdG8gdmVyeV9nb29kX2FuYWx5c2lzIDEwLjIuMCAoWyM0MzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDM3KSkgKFtiZTE2MTgzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2JlMTYxODM0ZTkwZjAzODFkMzUzNWM5YmQzYjVmNDRiYTZlYTE5YmEpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM0MjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDI1KSkgKFtjNGZlZWI2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2M0ZmVlYjYwMzFiNmJmMjExNTQ2YmNlOWY0Nzk3ZDI1NTQzNjM0ODgpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzQzNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MzUpKSAoWzU5MzdjNDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNTkzN2M0NjlhZTJjMjhhZDQyMzBkMmNlMDBmZGY4ZDc4NjM5YzBkOCkpCgojIyBbMS4yLjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9kYXJ0X2NsaS12MS4xLjAuLi52ZXJ5X2dvb2RfZGFydF9jbGktdjEuMi4wKSAoMjAyNi0wMi0wNikKCgojIyMgRmVhdHVyZXMKCiogYWRkIGxpY2Vuc2UgY2hlY2sgd29ya2Zsb3cgdG8gdGVtcGxhdGVzIChbIzQyMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjIpKSAoW2JkMjgwYzBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYmQyODBjMDBmOTAxMjY4NTZhNWZlNzBkNjQxN2UxYzgzZDIwZjc0YikpCiogdXBncmFkZSB0byBmbHV0dGVyIDMuMzguMSAoWyMzOTRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzk0KSkgKFtlNDM2ZDc2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2U0MzZkNzYwNmIwOTk4ZmM1MjMxZDNiZDFmZDBjNDY1MGQwYzhhZTgpKQoKCiMjIyBCdWcgRml4ZXMKCiogdXBkYXRlIGNoYW5nZWxvZydzIGZvcm1hdCAoWyMzNzFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzcxKSkgKFs2YzVkNTNkXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzZjNWQ1M2Q1MGQzN2RiZDRmYzg4ZTMxNTRmMDVhYjI4MzEyMGU1OWYpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiBidW1wIHZlcnlfZ29vZF9hbmFseXNpcyB0byAxMC4xLjAgKFsjNDAwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwMCkpIChbMGM0NTRjNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYzQ1NGM0MTY2Y2Y0ZTAxYzY1OWFiNzIzYzVmOTRmYzFhMmVkYWE2KSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzNzJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzcyKSkgKFtlOGM5YTdkXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2U4YzlhN2RkNWM3MWE2MmI4ZTg1NmMwNWU0MjI0OTkwMWE1ZDJiYzcpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM4NV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zODUpKSAoWzEwZWQ1NzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMTBlZDU3MzU3ZTY3ZGM4YTllYjBkMTMyZTllNzI3MmM3NDNmNjc4MSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDAxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwMSkpIChbMzFiODUyY10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8zMWI4NTJjMThlMmIwMGU1MTgyZmU5OTZmZTk1MzRlNTVjY2U2ODMyKSkKCiMjIFsxLjEuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjAuMC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS4xLjApICgyMDI1LTA5LTIyKQoKCiMjIyBGZWF0dXJlcwoKKiB1cGdyYWRlIHRvIGZsdXR0ZXIgMy4zNS4wIChbIzM0Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNDIpKSAoWzY4MTgwNDFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNjgxODA0MTk4YzAzYTZhYjI1NTgwMmNlZGMxNTI0MjgzMjkyOGU1NCkpCiogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgMTAuMC4wIChbIzM0Nl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNDYpKSAoWzVhN2QwZGNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNWE3ZDBkYzczMjNhNzc1ODMxNThhY2ZiYmU5MzNhNjAzMDJlZDUzMikpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIGF1dG9tYXRlIHJlbGVhc2VzIChbIzMxOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMTkpKSAoWzE3ZmIzYTVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMTdmYjNhNWM3NDJhNDJlN2ZmZjcwYjI2OWRlZWE5NjFlNGExNWI0ZikpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMzEyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMxMikpIChbMjg3NWNkOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8yODc1Y2Q5YWVjYzI0OWZjMGQyYTRjZDY0ZWZiM2JlMjA2MDNmMWRhKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzMjBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzIwKSkgKFs4ZjQ0MWMzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzhmNDQxYzNmNTQ2ODE3MDdkZWQzZGRhOGFlZmQ1Nzg3NjM5NzlkNzMpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzMzM10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMzMpKSAoWzQ2MGY3ZGVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDYwZjdkZTA5M2Q5NzZlNDA2NzliZTA3MTBjMmQwMjcwZmE3MTkxOCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMzUzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM1MykpIChbYTdmMjRhN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9hN2YyNGE3Yjk1MmFiMmY1OWI2ZmI2OTAyM2YzMTljZDdhNGYwYTNmKSkKCiMjIDEuMC4wCgpyZWZhY3Rvcih2ZXJ5X2dvb2RfZGFydF9jbGkpITogcmVtb3ZlIHJvb3QtbGV2ZWwgcHJvamVjdF9uYW1lIGZvbGRlciBmcm9tIGJyaWNrIHN0cnVjdHVyZS4KCiMjIyBNaWdyYXRpb24gZGV0YWlscwoKVGhlIGB2ZXJ5X2dvb2RfZGFydF9jbGlgIGJyaWNrIG5vIGxvbmdlciBpbmNsdWRlcyBhIHRvcC1sZXZlbCBwcm9qZWN0IG5hbWUgZm9sZGVyLgpUaGlzIGFsbG93cyBnZW5lcmF0aW5nIHRoZSBwcm9qZWN0IGRpcmVjdGx5IGludG8gdGhlIGN1cnJlbnQgb3IgYSBjdXN0b20gZGlyZWN0b3J5LgoKSWYgeW91IHByZWZlciB0byBrZWVwIHRoZSBvdXRwdXQgaW5zaWRlIGl0cyBvd24gZm9sZGVyIChhcyBiZWZvcmUpLCB1c2UgdGhlIC1vIGZsYWc6CgpgYGBkYXJ0Ci8vIEJlZm9yZToKbWFzb24gbWFrZSB2ZXJ5X2dvb2RfZGFydF9jbGkKCi8vIEFmdGVyOgptYXNvbiBtYWtlIHZlcnlfZ29vZF9kYXJ0X2NsaSAtbyAuL291dHB1dF9mb2xkZXIKYGBgCgojIyAwLjEwLjEKCi0gdGVzdDogYWRkIG1pc3NpbmcgdGVzdCBbIzI3OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8yNzgpCgojIyAwLjEwLjAKCi0gY2hvcmUoZGVwcyk6IGJ1bXAgdmVyeV9nb29kX2FuYWx5c2lzIGZyb20gNi4wLjAgdG8gNy4wLjAgaW4gL3ZlcnlfZ29vZF9kYXJ0X2NsaS9ob29rcyBbIzIzNl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8yMzYpCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIFsjMjM3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzIzNykKLSBmaXg6IGV2YWx1YXRlIGJyaWNrIG91dHB1dCBjb3JyZWN0bHkgb24gY2kgWyMyNDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMjQ4KQotIGNob3JlOiB1cGRhdGUgdG8gRmx1dHRlciAzLjI5IGFuZCBEYXJ0IDMuNyBbIzI1MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8yNTApCi0gY2hvcmU6IHVwZGF0ZSBmbHV0dGVyIDMuMzIuMCBhbmQgZGFydCAzLjguMCBbIzI1M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8yNTMpCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIFsjMjQzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzI0MykKLSBjaG9yZTogYnVtcCB2ZXJ5X2dvb2RfYW5hbHlzaXMgdG8gOS4wLjAgWyMyNjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMjYxKQoKIyMgMC45LjAKCi0gY2hvcmU6IHVwZGF0ZSB0byBGbHV0dGVyIDMuMjcgYW5kIERhcnQgMy42IChbIzIyM10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjIzKSkKLSBmZWF0OiB1cGRhdGUgcHVsbCByZXF1ZXN0IHRlbXBsYXRlcyB0byBhZGQgYHRlc3RgIHR5cGUgb3B0aW9uIChbIzIxNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjE0KSkKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMTk0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xOTQpLCBbIzE5OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTk4KSwgWyMyMDNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIwMyksIFsjMjExXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMTEpLCBbIzIyMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjIwKSwgWyMyMjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIyMSkpCgojIyAwLjguMAoKLSBmZWF0OiB1cGRhdGUgdG8gRmx1dHRlciAzLjI0IGFuZCBEYXJ0IDMuNSAoWyMxNzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzE3NykpCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzE3M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTczKSwgWyMxNzhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzE3OCkpCgojIyAwLjcuMgoKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMTQ2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xNDYpLCBbIzE0OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTQ5KSkKCiMjIDAuNy4xCgotIGNob3JlOiB1cGRhdGUgdG8gVmVyeSBHb29kIEFuYWx5c2lzIDYuMC4wIChbIzEzNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTM1KSkKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMTM3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xMzcpKQoKIyMgMC43LjAKCi0gZmVhdCE6IGVuc3VyZSB0ZW1wbGF0ZSB1c2VzIERhcnQgMy40IChbIzk5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC85OSkpCgojIyAwLjYuMQoKLSByZWZhY3RvcjogcmVtb3ZlIGV4cGxpY2l0bHkgbmFtZWQgbGlicmFyaWVzIChbIzc3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC83NykpCgojIyAwLjYuMAoKLSBidWlsZChkZXBzKTogYnVtcCBwdWJfdXBkYXRlciBmcm9tIDAuMy4xIHRvIDAuNC4wIChbIzExNl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8xMTYpKQotIGJ1aWxkKGRlcHMpOiBidW1wIGNsaV9jb21wbGV0aW9uIGZyb20gMC4zLjAgdG8gMC40LjAgKFsjMTE1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzExNSkpCi0gZml4OiBzb3J0IGRpcmVjdGl2ZSBvcmRlcmluZyBvbiBwb3N0IGdlbmVyYXRpb24gKFsjMTIyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzEyMikpCi0gZmVhdDogaG9vayBwZXJmb3JtcyBkYXJ0IHB1YiBnZXQgKFsjMTIzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzEyMykpCi0gcmVmYWN0b3I6IHJlbW92ZSBnZW5lcmF0b3Igc2NyaXB0IChbIzEyMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8xMjApKQotIGNob3JlOiBtaWdyYXRlIHZlcnlfZ29vZF9kYXJ0X2NsaSAoWyMzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8zKSkKLSBmZWF0ITogdXBkYXRlIHRvIERhcnQgMy4zLjAgKFsjMjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIyKSkKLSBjaG9yZTogdXBkYXRlIGJyaWNrcyB0byBNYXNvbiAwLjEuMC1kZXYuNTIgKFsjMjhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzI4KSkKCiMjIDAuNS4xCgotIGZlYXQ6IHVwZ3JhZGUgdG8gdmVyeV9nb29kX2FuYWx5c2lzIF41LjEuMAoKIyMgMC41LjAKCi0gZmVhdDogdXBkYXRlIHZlcnkgZ29vZCBhbmFseXNpcyB0byB2NSBhbmQgZml4IHBhdGNoCi0gZmVhdDogYnVtcCBEYXJ0IFNESyB0byA+PTMuMC4wIDw0LjAuMAoKIyMgMC40LjAKCi0gZmVhdCE6IGJ1bXAgbWluIERhcnQgU0RLIHRvIDIuMTkuMAoKIyMgMC4zLjMKCi0gY2hvcmU6IHN1cHBvcnQgZGFydCBzZGsgMi4xOC4wCgojIyAwLjMuMgoKLSBmZWF0OiB1cGRhdGUgd29ya2Zsb3dzLCBhZGQgc3BlbGxjaGVjawotIGZpeDogcmVtb3ZlIHVudXNlZCBwdWIgdXBkYXRlciBmcm9tIHRlc3QKCiMjIDAuMy4xCgotIGZlYXQ6IHVwZ3JhZGUgdG8gYHZlcnlfZ29vZF9hbmFseXNpcyA0LjAuMGAKCiMjIDAuMy4wCgotIGZlYXQ6IGFkZCBjb21wbGV0aW9uCgojIyAwLjIuMwoKLSBmZWF0OiB1cGdyYWRlIHRvIERhcnQgMi4xOQoKIyMgMC4yLjIKCi0gZml4OiB1cGRhdGUgc2lsZW50bHkgZmFpbHMgd2hlbiB0aGUgc2RrIGRvZXNuJ3Qgc3VwcG9ydCBtb3N0IHJlY2VudCB2ZXJzaW9uCgojIyAwLjIuMQoKLSBmaXg6IHdpbmRvd3MgcGF0aCByZXNvbHV0aW9uCi0gZmVhdDogYWRkIGNpIGNvbmN1cnJlbmN5IGdyb3VwIHRvIHdvcmtmbG93CgojIyAwLjIuMAoKLSAqKkJSRUFLSU5HKiogZmVhdDogYWRkIGBwdWJsaXNoYWJsZWAgZmxhZyAoZGVmYXVsdHMgdG8gYGZhbHNlYCkKCiMjIDAuMS40CgotIGRvY3M6IHJlbW92ZSBjb3B5cmlnaHQgaGVhZGVyIGFuZCBsaWNlbnNlIGZyb20gZ2VuZXJhdGVkIGNvZGUKCiMjIDAuMS4zCgotIGZpeDogdXBkYXRlIHByb21wdCBvbiB1cGRhdGUKCiMjIDAuMS4yCgotIGNob3JlKGRlcHMpOiB1cGdyYWRlIHRvIG1hc29uX2xvZ2dlciAwLjIuMAotIGZpeDogdXNlIGF2YWlsYWJsZSBnbG9iYWwgY29uc3RhbnQgZm9yIGV4ZWN1dGFibGUgbmFtZQoKIyMgMC4xLjEKCi0gZmVhdDogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgMy4xLjAKCiMjIDAuMS4wCgotIGZlYXQ6IHVwZ3JhZGUgdG8gRGFydCAyLjE4Ci0gZmVhdDogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgMy4wLjIKLSBmZWF0OiBhZGQgZGVwZW5kYWJvdCBpbnRlZ3JhdGlvbgoKIyMgMC4wLjEKCi0gZmVhdDogaW5pdGlhbCByZWxlYXNlIPCfjokK", + "IyBDaGFuZ2Vsb2cKCiMjIFsxLjUuMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjUuMC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS41LjEpICgyMDI2LTA4LTEwKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1OTBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTkwKSkgKFtmOTYwZGJlXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2Y5NjBkYmVhYmNkMzk0MWI4ZGZmYzI1N2Q3OTk0ZDJhODFjNGU3ZTgpKQoKIyMgWzEuNS4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZGFydF9jbGktdjEuNC4wLi4udmVyeV9nb29kX2RhcnRfY2xpLXYxLjUuMCkgKDIwMjYtMDctMjcpCgoKIyMjIEZlYXR1cmVzCgoqIGFkZCB3b3Jrc3BhY2UgZmxhZyBzdXBwb3J0IHRvIG1vbm9yZXBvIHBhY2thZ2UgdGVtcGxhdGVzIChbIzU2M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjMpKSAoWzY0YjEyZjZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNjRiMTJmNmFkZDcwMTQ4MGM5MWMyNTBmODY5ZmQ1YjcyMWJlOGRmYikpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzU2MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjEpKSAoWzBmZjBkMmZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMGZmMGQyZjFmYWQ4ZWZlZGViMThlZTVhOTY2MzY3N2MxMDgwNDlhMSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTc3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU3NykpIChbNDhhYjlkZF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC80OGFiOWRkNTk2YTc4NThhOTg3NjkzZDJlMzg1YmYzYzVmMmU2ZTlkKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1ODNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTgzKSkgKFsxN2NkZWNiXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzE3Y2RlY2JiMzdkMTQxZjU2MzM1ODc4ZWFjZWUzZjRlOWU3M2MwNzkpKQoKIyMgWzEuNC4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy40Li4udmVyeV9nb29kX2RhcnRfY2xpLXYxLjQuMCkgKDIwMjYtMDYtMTkpCgoKIyMjIEZlYXR1cmVzCgoqIHVwZ3JhZGUgdG8gRmx1dHRlciAzLjQ0IGFuZCBEYXJ0IDMuMTIgKFsjNTM2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUzNikpIChbOTAyNmRhZl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC85MDI2ZGFmYTc3NGUxNzZlNTUxMTU0ZGMyNWU2YmU4ZDgzNThmNDBmKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogYWRkIFNFQ1VSSVRZLm1kIHBvbGljeSAoWyM1NDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ2KSkgKFs3Y2JiYTgwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzdjYmJhODBhYWIwZWJiZjg5MWYxN2EyMDdlZTFiNmY0NDU5MzJmNDMpKQoqIHVwZ3JhZGUgdmVyeV9nb29kX2FuYWx5c2lzIHRvIDEwLjMuMCAoWyM1NDVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ1KSkgKFthODI4NWRiXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2E4Mjg1ZGI0OTdmM2M0YThmMThkYzg1ODg5M2UxNGRjZWI5N2I5MDUpKQoKIyMgWzEuMy40XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy4zLi4udmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuNCkgKDIwMjYtMDUtMDUpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzUyMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81MjIpKSAoWzlmMDA3MzBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvOWYwMDczMGFjNTJkY2JlM2EzMmVjNDVhZWE4YzViOGY5ZWY5ZTQzNykpCgojIyBbMS4zLjNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9kYXJ0X2NsaS12MS4zLjIuLi52ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy4zKSAoMjAyNi0wNC0xMykKCgojIyMgQnVnIEZpeGVzCgoqIGFkZCBtaXNzaW5nIHZhcmlhYmxlcyBmb3IgTElDRU5TRSBmaWxlcyAoWyM1MDNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTAzKSkgKFsyMDNiOGIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzIwM2I4YjAzM2IyOWU2ODIwMjEzNTQxYjExMWExMTJhMDQxZjRhNjUpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiAqKmNpOioqIGZpeCB3b3JrZmxvd3MgKFsjNTAyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUwMikpIChbYzA4ODE5OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9jMDg4MTk5NjU4ODFiMmYwOWQ3YzBlMDNiZmM0ODQzMDk2YmZkYmI5KSkKKiByZW1vdmUgcmVsZWFzZS1yZWFkeSBzY3JpcHRzIChbIzQ4OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80ODgpKSAoWzFmMTMyNjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMWYxMzI2MTYxNzJlY2IxZTQ5YmNhNjQ3MTJjMTNmZDc2NzM3OGMwZSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTA0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUwNCkpIChbMzY4NDVkMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8zNjg0NWQwZTMwMGQ5NTY1ZGQ3ZGE4YjEwZWQ2MmEzNGI1ZWNkOGY4KSkKCiMjIFsxLjMuMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuMS4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS4zLjIpICgyMDI2LTAzLTMwKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM0NzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDczKSkgKFswMGYxMjcxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzAwZjEyNzFlNmU0OGUwOTQyOWI2YThlNzE4MGI3NzhlYjRiMzhhMGYpKQoKIyMgWzEuMy4xXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZGFydF9jbGktdjEuMy4wLi4udmVyeV9nb29kX2RhcnRfY2xpLXYxLjMuMSkgKDIwMjYtMDMtMTcpCgoKIyMjIEJ1ZyBGaXhlcwoKKiBhZGQgbWlzc2luZyBMSUNFTlNFIGZpbGVzIHRvIHRlbXBsYXRlcyAoWyM0NDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDQ4KSkgKFtiYzNjMGE5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2JjM2MwYTk3ZDE2ZmZhM2IxNWIzMjY0NTRlMjVmYjM3MDcwY2Q4Y2MpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiAqKmRlcHM6KiogYnVtcCB0ZXN0IGZyb20gMS4yNi4zIHRvIDEuMzAuMCBpbiAvdmVyeV9nb29kX2RhcnRfY2xpL2hvb2tzIChbIzQ0NF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80NDQpKSAoWzQzMDVlNTJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDMwNWU1MjBjNDFhYmE3NzY0ZmJmOTIyMTc3YTEwZDg2MjI3MDBjNCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDQwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQ0MCkpIChbZWY4Yjc0Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9lZjhiNzQyZjJlMDI3NDY5OWM3MzczNDk3YzcwNTU4MjU0ZWY5ZTI3KSkKCiMjIFsxLjMuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjIuMC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS4zLjApICgyMDI2LTAyLTE3KQoKCiMjIyBGZWF0dXJlcwoKKiB1cGdyYWRlIHRvIGRhcnQgMy4xMSBhbmQgZmx1dHRlciAzLjQxIChbIzQyOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjkpKSAoWzQ2YWU0OTBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDZhZTQ5MDgyM2VmNmY1ZjNhZGRlZjYxNTlhMjQ4NzBmNjZlOTMxZSkpCiogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgMTAuMi4wIChbIzQzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MzcpKSAoW2JlMTYxODNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYmUxNjE4MzRlOTBmMDM4MWQzNTM1YzliZDNiNWY0NGJhNmVhMTliYSkpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzQyNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjUpKSAoW2M0ZmVlYjZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYzRmZWViNjAzMWI2YmYyMTE1NDZiY2U5ZjQ3OTdkMjU1NDM2MzQ4OCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDM1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQzNSkpIChbNTkzN2M0Nl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC81OTM3YzQ2OWFlMmMyOGFkNDIzMGQyY2UwMGZkZjhkNzg2MzljMGQ4KSkKCiMjIFsxLjIuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2RhcnRfY2xpLXYxLjEuMC4uLnZlcnlfZ29vZF9kYXJ0X2NsaS12MS4yLjApICgyMDI2LTAyLTA2KQoKCiMjIyBGZWF0dXJlcwoKKiBhZGQgbGljZW5zZSBjaGVjayB3b3JrZmxvdyB0byB0ZW1wbGF0ZXMgKFsjNDIyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQyMikpIChbYmQyODBjMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iZDI4MGMwMGY5MDEyNjg1NmE1ZmU3MGQ2NDE3ZTFjODNkMjBmNzRiKSkKKiB1cGdyYWRlIHRvIGZsdXR0ZXIgMy4zOC4xIChbIzM5NF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zOTQpKSAoW2U0MzZkNzZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZTQzNmQ3NjA2YjA5OThmYzUyMzFkM2JkMWZkMGM0NjUwZDBjOGFlOCkpCgoKIyMjIEJ1ZyBGaXhlcwoKKiB1cGRhdGUgY2hhbmdlbG9nJ3MgZm9ybWF0IChbIzM3MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNzEpKSAoWzZjNWQ1M2RdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNmM1ZDUzZDUwZDM3ZGJkNGZjODhlMzE1NGYwNWFiMjgzMTIwZTU5ZikpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIGJ1bXAgdmVyeV9nb29kX2FuYWx5c2lzIHRvIDEwLjEuMCAoWyM0MDBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDAwKSkgKFswYzQ1NGM0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzBjNDU0YzQxNjZjZjRlMDFjNjU5YWI3MjNjNWY5NGZjMWEyZWRhYTYpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM3Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNzIpKSAoW2U4YzlhN2RdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZThjOWE3ZGQ1YzcxYTYyYjhlODU2YzA1ZTQyMjQ5OTAxYTVkMmJjNykpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMzg1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM4NSkpIChbMTBlZDU3M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8xMGVkNTczNTdlNjdkYzhhOWViMGQxMzJlOWU3MjcyYzc0M2Y2NzgxKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM0MDFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDAxKSkgKFszMWI4NTJjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzMxYjg1MmMxOGUyYjAwZTUxODJmZTk5NmZlOTUzNGU1NWNjZTY4MzIpKQoKIyMgWzEuMS4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZGFydF9jbGktdjEuMC4wLi4udmVyeV9nb29kX2RhcnRfY2xpLXYxLjEuMCkgKDIwMjUtMDktMjIpCgoKIyMjIEZlYXR1cmVzCgoqIHVwZ3JhZGUgdG8gZmx1dHRlciAzLjM1LjAgKFsjMzQyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM0MikpIChbNjgxODA0MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC82ODE4MDQxOThjMDNhNmFiMjU1ODAyY2VkYzE1MjQyODMyOTI4ZTU0KSkKKiB1cGdyYWRlIHRvIHZlcnlfZ29vZF9hbmFseXNpcyAxMC4wLjAgKFsjMzQ2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM0NikpIChbNWE3ZDBkY10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC81YTdkMGRjNzMyM2E3NzU4MzE1OGFjZmJiZTkzM2E2MDMwMmVkNTMyKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogYXV0b21hdGUgcmVsZWFzZXMgKFsjMzE5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMxOSkpIChbMTdmYjNhNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8xN2ZiM2E1Yzc0MmE0MmU3ZmZmNzBiMjY5ZGVlYTk2MWU0YTE1YjRmKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzMTJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzEyKSkgKFsyODc1Y2Q5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzI4NzVjZDlhZWNjMjQ5ZmMwZDJhNGNkNjRlZmIzYmUyMDYwM2YxZGEpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzMyMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMjApKSAoWzhmNDQxYzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvOGY0NDFjM2Y1NDY4MTcwN2RlZDNkZGE4YWVmZDU3ODc2Mzk3OWQ3MykpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMzMzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzMykpIChbNDYwZjdkZV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC80NjBmN2RlMDkzZDk3NmU0MDY3OWJlMDcxMGMyZDAyNzBmYTcxOTE4KSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzNTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzUzKSkgKFthN2YyNGE3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2E3ZjI0YTdiOTUyYWIyZjU5YjZmYjY5MDIzZjMxOWNkN2E0ZjBhM2YpKQoKIyMgMS4wLjAKCnJlZmFjdG9yKHZlcnlfZ29vZF9kYXJ0X2NsaSkhOiByZW1vdmUgcm9vdC1sZXZlbCBwcm9qZWN0X25hbWUgZm9sZGVyIGZyb20gYnJpY2sgc3RydWN0dXJlLgoKIyMjIE1pZ3JhdGlvbiBkZXRhaWxzCgpUaGUgYHZlcnlfZ29vZF9kYXJ0X2NsaWAgYnJpY2sgbm8gbG9uZ2VyIGluY2x1ZGVzIGEgdG9wLWxldmVsIHByb2plY3QgbmFtZSBmb2xkZXIuClRoaXMgYWxsb3dzIGdlbmVyYXRpbmcgdGhlIHByb2plY3QgZGlyZWN0bHkgaW50byB0aGUgY3VycmVudCBvciBhIGN1c3RvbSBkaXJlY3RvcnkuCgpJZiB5b3UgcHJlZmVyIHRvIGtlZXAgdGhlIG91dHB1dCBpbnNpZGUgaXRzIG93biBmb2xkZXIgKGFzIGJlZm9yZSksIHVzZSB0aGUgLW8gZmxhZzoKCmBgYGRhcnQKLy8gQmVmb3JlOgptYXNvbiBtYWtlIHZlcnlfZ29vZF9kYXJ0X2NsaQoKLy8gQWZ0ZXI6Cm1hc29uIG1ha2UgdmVyeV9nb29kX2RhcnRfY2xpIC1vIC4vb3V0cHV0X2ZvbGRlcgpgYGAKCiMjIDAuMTAuMQoKLSB0ZXN0OiBhZGQgbWlzc2luZyB0ZXN0IFsjMjc4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzI3OCkKCiMjIDAuMTAuMAoKLSBjaG9yZShkZXBzKTogYnVtcCB2ZXJ5X2dvb2RfYW5hbHlzaXMgZnJvbSA2LjAuMCB0byA3LjAuMCBpbiAvdmVyeV9nb29kX2RhcnRfY2xpL2hvb2tzIFsjMjM2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzIzNikKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgWyMyMzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMjM3KQotIGZpeDogZXZhbHVhdGUgYnJpY2sgb3V0cHV0IGNvcnJlY3RseSBvbiBjaSBbIzI0OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8yNDgpCi0gY2hvcmU6IHVwZGF0ZSB0byBGbHV0dGVyIDMuMjkgYW5kIERhcnQgMy43IFsjMjUwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzI1MCkKLSBjaG9yZTogdXBkYXRlIGZsdXR0ZXIgMy4zMi4wIGFuZCBkYXJ0IDMuOC4wIFsjMjUzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzI1MykKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgWyMyNDNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMjQzKQotIGNob3JlOiBidW1wIHZlcnlfZ29vZF9hbmFseXNpcyB0byA5LjAuMCBbIzI2MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZGFydF9jbGkvcHVsbC8yNjEpCgojIyAwLjkuMAoKLSBjaG9yZTogdXBkYXRlIHRvIEZsdXR0ZXIgMy4yNyBhbmQgRGFydCAzLjYgKFsjMjIzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMjMpKQotIGZlYXQ6IHVwZGF0ZSBwdWxsIHJlcXVlc3QgdGVtcGxhdGVzIHRvIGFkZCBgdGVzdGAgdHlwZSBvcHRpb24gKFsjMjE0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMTQpKQotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMxOTRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzE5NCksIFsjMTk4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xOTgpLCBbIzIwM10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjAzKSwgWyMyMTFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIxMSksIFsjMjIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMjApLCBbIzIyMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjIxKSkKCiMjIDAuOC4wCgotIGZlYXQ6IHVwZGF0ZSB0byBGbHV0dGVyIDMuMjQgYW5kIERhcnQgMy41IChbIzE3N10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTc3KSkKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMTczXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xNzMpLCBbIzE3OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTc4KSkKCiMjIDAuNy4yCgotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMxNDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzE0NiksIFsjMTQ5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xNDkpKQoKIyMgMC43LjEKCi0gY2hvcmU6IHVwZGF0ZSB0byBWZXJ5IEdvb2QgQW5hbHlzaXMgNi4wLjAgKFsjMTM1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xMzUpKQotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMxMzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEzNykpCgojIyAwLjcuMAoKLSBmZWF0ITogZW5zdXJlIHRlbXBsYXRlIHVzZXMgRGFydCAzLjQgKFsjOTldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzk5KSkKCiMjIDAuNi4xCgotIHJlZmFjdG9yOiByZW1vdmUgZXhwbGljaXRseSBuYW1lZCBsaWJyYXJpZXMgKFsjNzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzc3KSkKCiMjIDAuNi4wCgotIGJ1aWxkKGRlcHMpOiBidW1wIHB1Yl91cGRhdGVyIGZyb20gMC4zLjEgdG8gMC40LjAgKFsjMTE2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzExNikpCi0gYnVpbGQoZGVwcyk6IGJ1bXAgY2xpX2NvbXBsZXRpb24gZnJvbSAwLjMuMCB0byAwLjQuMCAoWyMxMTVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMTE1KSkKLSBmaXg6IHNvcnQgZGlyZWN0aXZlIG9yZGVyaW5nIG9uIHBvc3QgZ2VuZXJhdGlvbiAoWyMxMjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMTIyKSkKLSBmZWF0OiBob29rIHBlcmZvcm1zIGRhcnQgcHViIGdldCAoWyMxMjNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2RhcnRfY2xpL3B1bGwvMTIzKSkKLSByZWZhY3RvcjogcmVtb3ZlIGdlbmVyYXRvciBzY3JpcHQgKFsjMTIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9kYXJ0X2NsaS9wdWxsLzEyMCkpCi0gY2hvcmU6IG1pZ3JhdGUgdmVyeV9nb29kX2RhcnRfY2xpIChbIzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzMpKQotIGZlYXQhOiB1cGRhdGUgdG8gRGFydCAzLjMuMCAoWyMyMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjIpKQotIGNob3JlOiB1cGRhdGUgYnJpY2tzIHRvIE1hc29uIDAuMS4wLWRldi41MiAoWyMyOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjgpKQoKIyMgMC41LjEKCi0gZmVhdDogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgXjUuMS4wCgojIyAwLjUuMAoKLSBmZWF0OiB1cGRhdGUgdmVyeSBnb29kIGFuYWx5c2lzIHRvIHY1IGFuZCBmaXggcGF0Y2gKLSBmZWF0OiBidW1wIERhcnQgU0RLIHRvID49My4wLjAgPDQuMC4wCgojIyAwLjQuMAoKLSBmZWF0ITogYnVtcCBtaW4gRGFydCBTREsgdG8gMi4xOS4wCgojIyAwLjMuMwoKLSBjaG9yZTogc3VwcG9ydCBkYXJ0IHNkayAyLjE4LjAKCiMjIDAuMy4yCgotIGZlYXQ6IHVwZGF0ZSB3b3JrZmxvd3MsIGFkZCBzcGVsbGNoZWNrCi0gZml4OiByZW1vdmUgdW51c2VkIHB1YiB1cGRhdGVyIGZyb20gdGVzdAoKIyMgMC4zLjEKCi0gZmVhdDogdXBncmFkZSB0byBgdmVyeV9nb29kX2FuYWx5c2lzIDQuMC4wYAoKIyMgMC4zLjAKCi0gZmVhdDogYWRkIGNvbXBsZXRpb24KCiMjIDAuMi4zCgotIGZlYXQ6IHVwZ3JhZGUgdG8gRGFydCAyLjE5CgojIyAwLjIuMgoKLSBmaXg6IHVwZGF0ZSBzaWxlbnRseSBmYWlscyB3aGVuIHRoZSBzZGsgZG9lc24ndCBzdXBwb3J0IG1vc3QgcmVjZW50IHZlcnNpb24KCiMjIDAuMi4xCgotIGZpeDogd2luZG93cyBwYXRoIHJlc29sdXRpb24KLSBmZWF0OiBhZGQgY2kgY29uY3VycmVuY3kgZ3JvdXAgdG8gd29ya2Zsb3cKCiMjIDAuMi4wCgotICoqQlJFQUtJTkcqKiBmZWF0OiBhZGQgYHB1Ymxpc2hhYmxlYCBmbGFnIChkZWZhdWx0cyB0byBgZmFsc2VgKQoKIyMgMC4xLjQKCi0gZG9jczogcmVtb3ZlIGNvcHlyaWdodCBoZWFkZXIgYW5kIGxpY2Vuc2UgZnJvbSBnZW5lcmF0ZWQgY29kZQoKIyMgMC4xLjMKCi0gZml4OiB1cGRhdGUgcHJvbXB0IG9uIHVwZGF0ZQoKIyMgMC4xLjIKCi0gY2hvcmUoZGVwcyk6IHVwZ3JhZGUgdG8gbWFzb25fbG9nZ2VyIDAuMi4wCi0gZml4OiB1c2UgYXZhaWxhYmxlIGdsb2JhbCBjb25zdGFudCBmb3IgZXhlY3V0YWJsZSBuYW1lCgojIyAwLjEuMQoKLSBmZWF0OiB1cGdyYWRlIHRvIHZlcnlfZ29vZF9hbmFseXNpcyAzLjEuMAoKIyMgMC4xLjAKCi0gZmVhdDogdXBncmFkZSB0byBEYXJ0IDIuMTgKLSBmZWF0OiB1cGdyYWRlIHRvIHZlcnlfZ29vZF9hbmFseXNpcyAzLjAuMgotIGZlYXQ6IGFkZCBkZXBlbmRhYm90IGludGVncmF0aW9uCgojIyAwLjAuMQoKLSBmZWF0OiBpbml0aWFsIHJlbGVhc2Ug8J+OiQo=", "type": "text", }, "license": { diff --git a/lib/src/commands/create/templates/very_good_flame_game/very_good_flame_game_bundle.dart b/lib/src/commands/create/templates/very_good_flame_game/very_good_flame_game_bundle.dart index f9a244fba..2348f650e 100644 --- a/lib/src/commands/create/templates/very_good_flame_game/very_good_flame_game_bundle.dart +++ b/lib/src/commands/create/templates/very_good_flame_game/very_good_flame_game_bundle.dart @@ -386,7 +386,7 @@ final veryGoodFlameGameBundle = MasonBundle.fromJson({ { "path": "pubspec.yaml", "data": - "bmFtZToge3twcm9qZWN0X25hbWUuc25ha2VDYXNlKCl9fQpkZXNjcmlwdGlvbjoge3t7ZGVzY3JpcHRpb259fX0KdmVyc2lvbjogMS4wLjArMQp7e15wdWJsaXNoYWJsZX19cHVibGlzaF90bzogbm9uZXt7L3B1Ymxpc2hhYmxlfX17eyN3b3Jrc3BhY2V9fQpyZXNvbHV0aW9uOiB3b3Jrc3BhY2V7ey93b3Jrc3BhY2V9fQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy4xMi4wCiAgZmx1dHRlcjogXjMuNDQuMAoKZGVwZW5kZW5jaWVzOgogIGF1ZGlvcGxheWVyczogXjYuOC4xCiAgYmxvYzogXjkuMi4xCiAgZXF1YXRhYmxlOiBeMi4xLjAKICBmbGFtZTogXjEuMzguMAogIGZsYW1lX2F1ZGlvOiBeMi4xMi4yCiAgZmxhbWVfYmVoYXZpb3JzOiBeMS40LjAKICBmbHV0dGVyOgogICAgc2RrOiBmbHV0dGVyCiAgZmx1dHRlcl9ibG9jOiBeOS4xLjEKICBmbHV0dGVyX2xvY2FsaXphdGlvbnM6CiAgICBzZGs6IGZsdXR0ZXIKICBnb29nbGVfZm9udHM6IF44LjIuMAogIGludGw6IF4wLjIwLjIKCmRldl9kZXBlbmRlbmNpZXM6CiAgYmxvY19saW50OiBeMC40LjEKICBibG9jX3Rlc3Q6IF4xMC4wLjAKICBibG9jX3Rvb2xzOiBeMC4xLjAtZGV2LjI0CiAgZmxhbWVfdGVzdDogXjIuMy4wCiAgZmx1dHRlcl90ZXN0OgogICAgc2RrOiBmbHV0dGVyCiAgbW9ja2luZ2pheTogXjIuMS4wCiAgbW9ja3RhaWw6IF4xLjAuNQogIHZlcnlfZ29vZF9hbmFseXNpczogXjEwLjMuMAoKZmx1dHRlcjoKICBnZW5lcmF0ZTogdHJ1ZQogIHVzZXMtbWF0ZXJpYWwtZGVzaWduOiB0cnVlCiAgYXNzZXRzOgogICAgLSBhc3NldHMvYXVkaW8vCiAgICAtIGFzc2V0cy9pbWFnZXMvCiAgICAtIGFzc2V0cy9saWNlbnNlcy9wb3BwaW5zLwo=", + "bmFtZToge3twcm9qZWN0X25hbWUuc25ha2VDYXNlKCl9fQpkZXNjcmlwdGlvbjoge3t7ZGVzY3JpcHRpb259fX0KdmVyc2lvbjogMS4wLjArMQp7e15wdWJsaXNoYWJsZX19cHVibGlzaF90bzogbm9uZXt7L3B1Ymxpc2hhYmxlfX17eyN3b3Jrc3BhY2V9fQpyZXNvbHV0aW9uOiB3b3Jrc3BhY2V7ey93b3Jrc3BhY2V9fQoKZW52aXJvbm1lbnQ6CiAgc2RrOiBeMy4xMi4wCiAgZmx1dHRlcjogXjMuNDQuMAoKZGVwZW5kZW5jaWVzOgogIGF1ZGlvcGxheWVyczogXjYuOC4xCiAgYmxvYzogXjkuMi4xCiAgZXF1YXRhYmxlOiBeMi4xLjAKICBmbGFtZTogXjEuMzguMAogIGZsYW1lX2F1ZGlvOiBeMi4xMi4yCiAgZmxhbWVfYmVoYXZpb3JzOiBeMS40LjAKICBmbHV0dGVyOgogICAgc2RrOiBmbHV0dGVyCiAgZmx1dHRlcl9ibG9jOiBeOS4xLjEKICBmbHV0dGVyX2xvY2FsaXphdGlvbnM6CiAgICBzZGs6IGZsdXR0ZXIKICBnb29nbGVfZm9udHM6IF44LjIuMQogIGludGw6IF4wLjIwLjIKCmRldl9kZXBlbmRlbmNpZXM6CiAgYmxvY19saW50OiBeMC40LjEKICBibG9jX3Rlc3Q6IF4xMC4wLjAKICBibG9jX3Rvb2xzOiBeMC4xLjAtZGV2LjI0CiAgZmxhbWVfdGVzdDogXjIuMy4wCiAgZmx1dHRlcl90ZXN0OgogICAgc2RrOiBmbHV0dGVyCiAgbW9ja2luZ2pheTogXjIuMS4wCiAgbW9ja3RhaWw6IF4xLjAuNQogIHZlcnlfZ29vZF9hbmFseXNpczogXjEwLjMuMAoKZmx1dHRlcjoKICBnZW5lcmF0ZTogdHJ1ZQogIHVzZXMtbWF0ZXJpYWwtZGVzaWduOiB0cnVlCiAgYXNzZXRzOgogICAgLSBhc3NldHMvYXVkaW8vCiAgICAtIGFzc2V0cy9pbWFnZXMvCiAgICAtIGFzc2V0cy9saWNlbnNlcy9wb3BwaW5zLwo=", "type": "text", }, { @@ -1676,7 +1676,7 @@ final veryGoodFlameGameBundle = MasonBundle.fromJson({ ], "name": "very_good_flame_game", "description": "A Very Good Flame Game created by Very Good Ventures.", - "version": "1.7.0", + "version": "1.7.1", "environment": {"mason": "^0.1.0"}, "repository": "https://github.com/VeryGoodOpenSource/very_good_templates/tree/main/very_good_flame_game", @@ -1689,7 +1689,7 @@ final veryGoodFlameGameBundle = MasonBundle.fromJson({ "changelog": { "path": "CHANGELOG.md", "data": - "IyBDaGFuZ2Vsb2cKCiMjIFsxLjcuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNi4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNy4wKSAoMjAyNi0wNy0yNykKCgojIyMgRmVhdHVyZXMKCiogYWRkIFZTIENvZGUgZGVidWcgY29uZmlndXJhdGlvbnMgZm9yIHRlc3RzIChbIzU2NF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjQpKSAoW2ZlODA3ODVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZmU4MDc4NTE3ZDU4OWE1NzUyNWZhZjM1ZjRjYTM3NDFmMGM4MTZkOSkpCiogYWRkIHdvcmtzcGFjZSBmbGFnIHN1cHBvcnQgdG8gbW9ub3JlcG8gcGFja2FnZSB0ZW1wbGF0ZXMgKFsjNTYzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU2MykpIChbNjRiMTJmNl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC82NGIxMmY2YWRkNzAxNDgwYzkxYzI1MGY4NjlmZDViNzIxYmU4ZGZiKSkKCgojIyMgQnVnIEZpeGVzCgoqIGFkZCBtYWNPUyBhbmQgTGludXggcGxhdGZvcm0gc3VwcG9ydCB0byBmbGFtZV9nYW1lIHRlbXBsYXRlIChbIzU2NV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjUpKSAoWzQ3MmM0YzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDcyYzRjNzI5MTljYTA3NTAzYWI1N2Y5Y2M3ZTE0NmMxZjk2NzQ3YykpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzU2MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjEpKSAoWzBmZjBkMmZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMGZmMGQyZjFmYWQ4ZWZlZGViMThlZTVhOTY2MzY3N2MxMDgwNDlhMSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTgxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU4MSkpIChbNDhkZDQ0OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC80OGRkNDQ5NWIzM2ZiNWMzYjdmMjU4ZTFlMGE2Y2I3NjkyNGQwNzIwKSkKCiMjIFsxLjYuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNS4xLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNi4wKSAoMjAyNi0wNi0xOSkKCgojIyMgRmVhdHVyZXMKCiogYWRkIHB1Ymxpc2hhYmxlIGZsYWcgdG8gYWxsIHRlbXBsYXRlcyAoWyM1NTBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTUwKSkgKFtlMmZlMWNlXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2UyZmUxY2VmNDU5MzViMzNmZmRiNjE5YmNjNGUwN2Y2MzY0MTM4NDIpKQoqIHVwZ3JhZGUgdG8gRmx1dHRlciAzLjQ0IGFuZCBEYXJ0IDMuMTIgKFsjNTM2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUzNikpIChbOTAyNmRhZl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC85MDI2ZGFmYTc3NGUxNzZlNTUxMTU0ZGMyNWU2YmU4ZDgzNThmNDBmKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogYWRkIFNFQ1VSSVRZLm1kIHBvbGljeSAoWyM1NDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ2KSkgKFs3Y2JiYTgwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzdjYmJhODBhYWIwZWJiZjg5MWYxN2EyMDdlZTFiNmY0NDU5MzJmNDMpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzUzMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81MzIpKSAoW2QwM2YzMmFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZDAzZjMyYWIxZTk4NmU3NTM5YzY0ZDJkZjc3ODY2MmZjOTcyY2YwNikpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTM3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUzNykpIChbMGNkY2QxZV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wY2RjZDFlMzkxMzMzODI5NjNmMDRlNWJmNGE4MjUwYzljYzIyNjFmKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1NDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ4KSkgKFs0ZmI0YzBmXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzRmYjRjMGZlYWVjMjIwYjM5ZWM3N2JkNWI4Mjk2MWUwZThmMWY2NzgpKQoqIHVwZ3JhZGUgdmVyeV9nb29kX2FuYWx5c2lzIHRvIDEwLjMuMCAoWyM1NDVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ1KSkgKFthODI4NWRiXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2E4Mjg1ZGI0OTdmM2M0YThmMThkYzg1ODg5M2UxNGRjZWI5N2I5MDUpKQoKIyMgWzEuNS4xXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS41LjAuLi52ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS41LjEpICgyMDI2LTA1LTA1KQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1MjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTIyKSkgKFs5ZjAwNzMwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzlmMDA3MzBhYzUyZGNiZTNhMzJlYzQ1YWVhOGM1YjhmOWVmOWU0MzcpKQoKIyMgWzEuNS4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS40LjEuLi52ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS41LjApICgyMDI2LTA0LTE2KQoKCiMjIyBGZWF0dXJlcwoKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIGFkZCBsaW51eCBwbGF0Zm9ybSBvcHRpb24gKFsjMzUwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM1MCkpIChbYjg3YjBkOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iODdiMGQ4Y2EwMDc3ZjBmZDAxY2FmYzRjODZjMmU5OGZiYTNlOTE4KSkKCiMjIFsxLjQuMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNC4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNC4xKSAoMjAyNi0wNC0xMykKCgojIyMgQnVnIEZpeGVzCgoqIGFkZCBtaXNzaW5nIHZhcmlhYmxlcyBmb3IgTElDRU5TRSBmaWxlcyAoWyM1MDNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTAzKSkgKFsyMDNiOGIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzIwM2I4YjAzM2IyOWU2ODIwMjEzNTQxYjExMWExMTJhMDQxZjRhNjUpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiByZW1vdmUgcmVsZWFzZS1yZWFkeSBzY3JpcHRzIChbIzQ4OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80ODgpKSAoWzFmMTMyNjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMWYxMzI2MTYxNzJlY2IxZTQ5YmNhNjQ3MTJjMTNmZDc2NzM3OGMwZSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTA0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUwNCkpIChbMzY4NDVkMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8zNjg0NWQwZTMwMGQ5NTY1ZGQ3ZGE4YjEwZWQ2MmEzNGI1ZWNkOGY4KSkKCiMjIFsxLjQuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMy4xLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNC4wKSAoMjAyNi0wMy0zMCkKCgojIyMgRmVhdHVyZXMKCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBhZGQgYXNzZXQgcHJlbG9hZGVyIChbIzQ2OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80NjkpKSAoWzg1NmMzNDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvODU2YzM0ODZjZWRmN2I4NzIxMmE3NTljYzk4MWI4MmFhYjY4N2ZlMCkpCgojIyBbMS4zLjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjMuMC4uLnZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjMuMSkgKDIwMjYtMDMtMTcpCgoKIyMjIEJ1ZyBGaXhlcwoKKiBhZGQgbWlzc2luZyBMSUNFTlNFIGZpbGVzIHRvIHRlbXBsYXRlcyAoWyM0NDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDQ4KSkgKFtiYzNjMGE5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2JjM2MwYTk3ZDE2ZmZhM2IxNWIzMjY0NTRlMjVmYjM3MDcwY2Q4Y2MpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM0NDBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDQwKSkgKFtlZjhiNzQyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2VmOGI3NDJmMmUwMjc0Njk5YzczNzM0OTdjNzA1NTgyNTRlZjllMjcpKQoKIyMgWzEuMy4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS4yLjAuLi52ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS4zLjApICgyMDI2LTAyLTE3KQoKCiMjIyBGZWF0dXJlcwoKKiB1cGdyYWRlIHRvIGRhcnQgMy4xMSBhbmQgZmx1dHRlciAzLjQxIChbIzQyOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjkpKSAoWzQ2YWU0OTBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDZhZTQ5MDgyM2VmNmY1ZjNhZGRlZjYxNTlhMjQ4NzBmNjZlOTMxZSkpCiogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgMTAuMi4wIChbIzQzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MzcpKSAoW2JlMTYxODNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYmUxNjE4MzRlOTBmMDM4MWQzNTM1YzliZDNiNWY0NGJhNmVhMTliYSkpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzQyNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjUpKSAoW2M0ZmVlYjZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYzRmZWViNjAzMWI2YmYyMTE1NDZiY2U5ZjQ3OTdkMjU1NDM2MzQ4OCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDM1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQzNSkpIChbNTkzN2M0Nl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC81OTM3YzQ2OWFlMmMyOGFkNDIzMGQyY2UwMGZkZjhkNzg2MzljMGQ4KSkKCiMjIFsxLjIuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMS4yLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMi4wKSAoMjAyNi0wMi0wNikKCgojIyMgRmVhdHVyZXMKCiogYWRkIGJsb2MgbGludCB0byB0ZW1wbGF0ZXMgd2l0aCBibG9jIChbIzM4Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zODIpKSAoWzUxMmVkZjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNTEyZWRmMjExN2U5ZTFhODYzNWEwMmJjNzRhYzMxOWIwMWRlZWQ1NCkpCiogYWRkIGljb24gY29tcG9zZXIgc3VwcG9ydCBmb3IgaU9TIChbIzQwOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MDgpKSAoW2QzZmEzMjddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZDNmYTMyNzkxNjliMWQ2YjNjZjM3YzYxM2Q2NWE1ZWQxOTQzZTU1OSkpCiogYWRkIGljb24gY29tcG9zZXIgc3VwcG9ydCBmb3IgTWFjT1MgKFsjNDA5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwOSkpIChbYmQwOTAwN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iZDA5MDA3MDUzZTRlMTQxMDkxYjNiOThhNDI0NDc5ZGZmNGYxZDM5KSkKKiBhZGQgbGljZW5zZSBjaGVjayB3b3JrZmxvdyB0byB0ZW1wbGF0ZXMgKFsjNDIyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQyMikpIChbYmQyODBjMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iZDI4MGMwMGY5MDEyNjg1NmE1ZmU3MGQ2NDE3ZTFjODNkMjBmNzRiKSkKKiB1cGRhdGUgaU9TIHRlbXBsYXRlcyB0byB1c2UgVUlTY2VuZSBsaWZlY3ljbGUgKFsjNDE2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQxNikpIChbMjMzZjAyZV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8yMzNmMDJlMjIxMmZjMDRmOWRkZmU1NGM4ZGZmMDE5YTlhZTE1NjBmKSkKKiB1cGdyYWRlIHRvIGZsdXR0ZXIgMy4zOC4xIChbIzM5NF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zOTQpKSAoW2U0MzZkNzZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZTQzNmQ3NjA2YjA5OThmYzUyMzFkM2JkMWZkMGM0NjUwZDBjOGFlOCkpCgoKIyMjIEJ1ZyBGaXhlcwoKKiB0aWdodGVuIGJsb2NfbGludCB2ZXJzaW9uIChbIzQyNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjQpKSAoWzY3ZjM1ZGVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNjdmMzVkZTdjZGZiZTFmN2NmMzRlNDY1NGNiM2NiOTE5MThlZDkzNCkpCiogdXBkYXRlIGNoYW5nZWxvZydzIGZvcm1hdCAoWyMzNzFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzcxKSkgKFs2YzVkNTNkXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzZjNWQ1M2Q1MGQzN2RiZDRmYzg4ZTMxNTRmMDVhYjI4MzEyMGU1OWYpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiBidW1wIHZlcnlfZ29vZF9hbmFseXNpcyB0byAxMC4xLjAgKFsjNDAwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwMCkpIChbMGM0NTRjNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYzQ1NGM0MTY2Y2Y0ZTAxYzY1OWFiNzIzYzVmOTRmYzFhMmVkYWE2KSkKKiAqKmlvczoqKiBtaWdyYXRlIGRlcHJlY2F0ZWQgVUlBcHBsaWNhdGlvbk1haW4gdG8gW0BtYWluXShodHRwczovL2dpdGh1Yi5jb20vbWFpbikgKFsjNDA2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwNikpIChbMGMxYjVhMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYzFiNWEwOGIxYzA3MjViODI4YTE2MDhjYTUzZDBhZmQxZDZjNTY3KSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzODRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzg0KSkgKFs5MjJiZjAwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzkyMmJmMDAxNTdlZjA3ZTZlOTk3MWExZWI5MzhhMGQxODdlMWJkOGQpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM4NV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zODUpKSAoWzEwZWQ1NzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMTBlZDU3MzU3ZTY3ZGM4YTllYjBkMTMyZTllNzI3MmM3NDNmNjc4MSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDAxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwMSkpIChbMzFiODUyY10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8zMWI4NTJjMThlMmIwMGU1MTgyZmU5OTZmZTk1MzRlNTVjY2U2ODMyKSkKKiB1cGdyYWRlIGlPUyB0YXJnZXQgdmVyc2lvbiB0byAxMy4wIChbIzQwN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MDcpKSAoWzBjMzNlNzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMGMzM2U3MzM1MDUwNzU5MGU2YzY3ZWNhMDk1Zjc4MjhhZDQyZjE0MCkpCgojIyBbMS4xLjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMS4uLnZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMikgKDIwMjUtMDktMzApCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM2M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNjMpKSAoWzAxMzA3YTddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMDEzMDdhN2JkOTU1ZmE5ZDY3M2NiNTM0NzQ2Y2IyNjU2ODU1MzBjMSkpCgojIyBbMS4xLjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMC4uLnZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMSkgKDIwMjUtMDktMjUpCgoKIyMjIEJ1ZyBGaXhlcwoKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIHNlbGVjdGVkIHBsYXRmb3JtcyBjYW4gYmUgbnVsbGFibGUgKFsjMzYwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM2MCkpIChbNWNkNWU4Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC81Y2Q1ZTgyYzE2Zjg0MzEzNDhlNDM1NDk4MDllNTRmODM2NzkyZmRjKSkKCiMjIFsxLjEuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMC4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMS4wKSAoMjAyNS0wOS0yMikKCgojIyMgRmVhdHVyZXMKCiogdXBncmFkZSB0byBmbHV0dGVyIDMuMzUuMCAoWyMzNDJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzQyKSkgKFs2ODE4MDQxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzY4MTgwNDE5OGMwM2E2YWIyNTU4MDJjZWRjMTUyNDI4MzI5MjhlNTQpKQoqIHVwZ3JhZGUgdG8gdmVyeV9nb29kX2FuYWx5c2lzIDEwLjAuMCAoWyMzNDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzQ2KSkgKFs1YTdkMGRjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzVhN2QwZGM3MzIzYTc3NTgzMTU4YWNmYmJlOTMzYTYwMzAyZWQ1MzIpKQoqIHVwZ3JhZGVkIHBsdWdpbiB2ZXJzaW9uIGFuZCByZW1vdmVkIGpkazcgZGVwZW5kZW5jeSBvbiBidWlsZC5rdHMgKFsjMzM5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzOSkpIChbOGU2MDk3MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC84ZTYwOTcxNTIxNzQzNjhlODkyMzAyNGVmMWIyYmYzNWY0YTY3NWFjKSkKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIGFkZCBwbGF0Zm9ybSBvcHRpb25zIChbIzM0MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNDApKSAoW2YzYTY3OTJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZjNhNjc5MmFmNzBjNjAwNmJmYmY0YjMwZDkyZTBkOTFiNjI0NjIwNSkpCiogKip2ZXJ5X2dvb2RfZmxhbWU6KiogdXBkYXRlIGFzc2V0cy5nZW4uZGFydCAoWyMzNDldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzQ5KSkgKFsyZjlkYThjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzJmOWRhOGMzYmJiNDIzODc2ZmYxMjVhMDY3NzU1OTMyYTc0YTJiMzgpKQoKCiMjIyBCdWcgRml4ZXMKCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBDaGFuZ2Ugc28gInRhcCBjb3VudCIgbWVzc2FnZSBpcyByZXNwb25zaXZlIHRvIHdpbmRvdyBzaXplIChbIzMzOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMzgpKSAoWzNiOGMxMWVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvM2I4YzExZTVjNzcxMjQ2NDVjNzQyYjE0NzVlYmY5YTkyMDk2ODBlYikpCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBkZXByZWNhdGVkIGFuZHJvaWQgZ3JhZGxlIHBsdWdpbiB2ZXJzaW9uIChbIzMxNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMTUpKSAoW2ZiNDM4NWRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZmI0Mzg1ZGQ1YWNiM2M3ZWFhZTNiMWExYmRjMGE0ZmFjNWU5MTQ0OSkpCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBJbXByb3ZlIHRleHQgcmVhZGFiaWxpdHkgYnkgY2hhbmdpbmcgY29sb3LigKYgKFsjMzM1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzNSkpIChbMGE0MmVlMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYTQyZWUyOTIyMzhiZGE3Yzg2YjkyMjBhNjQwYjMxMTU0MDcwZGNkKSkKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIHRyaW0gYXVkaW8gdG8gbm90IHJlcGVhdCBzb3VuZCBlZmZlY3QgKFsjMzM2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzNikpIChbOWI0MjNhY10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC85YjQyM2FjN2FiNzA3YTgzZmFjNGE0NTZlYTc5OGQ1MjU1MTNmYWMyKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogYXV0b21hdGUgcmVsZWFzZXMgKFsjMzE5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMxOSkpIChbMTdmYjNhNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8xN2ZiM2E1Yzc0MmE0MmU3ZmZmNzBiMjY5ZGVlYTk2MWU0YTE1YjRmKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzMThdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzE4KSkgKFs3MGExZjBjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzcwYTFmMGNlZDJlYzY2M2JjYWNlODYxNjZjYTMxZGU2MTZiOGRlNTkpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM0OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNDgpKSAoWzQxNjdhMjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDE2N2EyNTVjM2IxMjY0MThmZWZiYWRiZWI2OTY4YzdiZDg2MWVkOCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMzUxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM1MSkpIChbNjhiNjY1MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC82OGI2NjUxMzlhNzg5M2E1ZWM3NjBmMjA3NDkyOGY5OTBlZTQ1MDQ1KSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzNTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzUzKSkgKFthN2YyNGE3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2E3ZjI0YTdiOTUyYWIyZjU5YjZmYjY5MDIzZjMxOWNkN2E0ZjBhM2YpKQoqICoqdmVyeV9nb29kX2ZsYW1lX2dhbWU6KiogbWlncmF0ZXMgR3Jvb3Z5IHNjcmlwdHMgdG8gS290bGluIERTTCAoWyMzMTRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzE0KSkgKFtlMzg0YmVkXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2UzODRiZWRhZDljNGYzMmNiOTdlZDEzOTVjZWIwMmFkODUyMDBkZTkpKQoKIyMgMS4wLjAKCnJlZmFjdG9yKHZlcnlfZ29vZF9mbGFtZV9nYW1lKSE6IHJlbW92ZSByb290LWxldmVsIHByb2plY3RfbmFtZSBmb2xkZXIgZnJvbSBicmljayBzdHJ1Y3R1cmUuCgojIyMgTWlncmF0aW9uIGRldGFpbHMKClRoZSBgdmVyeV9nb29kX2ZsYW1lX2dhbWVgIGJyaWNrIG5vIGxvbmdlciBpbmNsdWRlcyBhIHRvcC1sZXZlbCBwcm9qZWN0IG5hbWUgZm9sZGVyLgpUaGlzIGFsbG93cyBnZW5lcmF0aW5nIHRoZSBwcm9qZWN0IGRpcmVjdGx5IGludG8gdGhlIGN1cnJlbnQgb3IgYSBjdXN0b20gZGlyZWN0b3J5LgoKSWYgeW91IHByZWZlciB0byBrZWVwIHRoZSBvdXRwdXQgaW5zaWRlIGl0cyBvd24gZm9sZGVyIChhcyBiZWZvcmUpLCB1c2UgdGhlIC1vIGZsYWc6CgpgYGBkYXJ0Ci8vIEJlZm9yZToKbWFzb24gbWFrZSB2ZXJ5X2dvb2RfZmxhbWVfZ2FtZQoKLy8gQWZ0ZXI6Cm1hc29uIG1ha2UgdmVyeV9nb29kX2ZsYW1lX2dhbWUgLW8gLi9vdXRwdXRfZm9sZGVyCmBgYAoKIyMgMC4xMS4wCgotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyBbIzIzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjM3KQotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyBbIzI0MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjQwKQotIGZpeDogZXZhbHVhdGUgYnJpY2sgb3V0cHV0IGNvcnJlY3RseSBvbiBjaSBbIzI0OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjQ4KQotIGNob3JlOiB1cGRhdGUgdG8gRmx1dHRlciAzLjI5IGFuZCBEYXJ0IDMuNyBbIzI1MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjUwKQotIGNob3JlOiB1cGRhdGUgZmx1dHRlciAzLjMyLjAgYW5kIGRhcnQgMy44LjAgWyMyNTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzI1MykKLSBjaG9yZSh2ZXJ5X2dvb2RfZmxhbWVfZ2FtZSk6IHVwZGF0ZSB0byBtb2NraW5namF5IDIuMC4wIFsjMjYwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yNjApCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIFsjMjQzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yNDMpCi0gY2hvcmU6IGJ1bXAgdmVyeV9nb29kX2FuYWx5c2lzIHRvIDkuMC4wIFsjMjYxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yNjEpCgojIyAwLjEwLjAKCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzIxMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjExKSwgWyMyMTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIxMyksIFsjMjIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMjApKQotIGZlYXQ6IHVwZGF0ZSBwdWxsIHJlcXVlc3QgdGVtcGxhdGVzIHRvIGFkZCBgdGVzdGAgdHlwZSBvcHRpb24gKFsjMjE0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMTQpKQotIGNob3JlOiB1cGRhdGUgdG8gRmx1dHRlciAzLjI3IGFuZCBEYXJ0IDMuNiAoWyMyMjNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIyMykpCgojIyAwLjkuMAoKLSBmaXg6IHNldCBjdXJyZW50IHllYXIgY29weXJpZ2h0IChbIzE5Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTkyKSkKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMjA0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMDQpKQotIGZpeDogdXBkYXRlIGFuZHJvaWQgYnVpbGQgdmVyc2lvbnMgKFsjMjA1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMDUpKQoKIyMgMC44LjEKCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzE5MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTkwKSkKLSBmaXg6IGFkZCBjbG9zaW5nIH0gaW4gYnVpbGQuZ3JhZGxlIChbIzE4OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTg5KSkKCiMjIDAuOC4wCgotIGZlYXQ6IHVwZGF0ZSB0byBGbHV0dGVyIDMuMjQgYW5kIERhcnQgMy41IChbIzE3N10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTc3KSkKCiMjIDAuNy4zCgotIGNob3JlOiB1c2UgZ2l0IGRlcGVuZGVuY3kgb3ZlciBwYXRoIGRlcGVuZGVuY3kgKFsjMTcxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xNzEpKQoKIyMgMC43LjIKCi0gZmVhdDogdXBkYXRlIHVzYWdlIG9mIGFwcGxpY2F0aW9uX2lkIHZhciAoWyMxNTddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzE1NykpCgojIyAwLjcuMQoKLSBzdHlsZTogQWRkaW5nIGV4dHJhIHNwYWNlIHRvIHRoZSBhcHBsaWNhdGlvbiBvcGVuaW5nIHRhZyAoWyMxMjZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEyNikpCi0gY2hvcmU6IHVwZGF0ZSBKYXZhIHZlcnNpb24gZm9yIFZlcnkgR29vZCBGbGFtZSBHYW1lIChbIzEyOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTI5KSkKLSBjaG9yZTogdXBkYXRlIHRvIFZlcnkgR29vZCBBbmFseXNpcyA2LjAuMCAoWyMxMzVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEzNSkpCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzEzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTM3KSkKCiMjIDAuNy4wCgotIGZlYXQhOiBlbnN1cmUgdGVtcGxhdGUgdXNlcyBGbHV0dGVyIDMuMjIgd2l0aCBEYXJ0IDMuNCAoWyMxMDJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEwMikpCi0gZml4OiB1cGRhdGUgaW5kZXguaHRtbCB0byBzdXBwb3J0IGxhdGVzdCBjb252ZW50aW9uIChbIzEwN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTA3KSkKCiMjIDAuNi4xCgotIGZpeDogZGVwcmVjYXRlZCBpbXBlcmF0aXZlIGFwcGx5IG9mIEZsdXR0ZXIncyBHcmFkbGUgcGx1Z2lucyAoWyM3OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvNzgpKQoKIyMgMC42LjAKCi0gZG9jczogZml4ZWQgY29weSBmb3JtYXQgYW5kIGNvbW1hbmQgKFsjMTQ2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTQ2KSkKLSBmaXg6IHJlc29sdmUgaW1hZ2UgY2FjaGluZyBpc3N1ZSBvbiBmbGFtZV9nYW1lIHRlbXBsYXRlIChbIzE0M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS9wdWxsLzE0MykpCi0gY2hvcmU6IG1pZ3JhdGUgdmVyeV9nb29kX2ZsYW1lX2dhbWUgdG8gdmVyeV9nb29kX3RlbXBsYXRlcyAoWyM3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC83KSkKLSBmZWF0ITogdXBkYXRlIHRvIEZsdXR0ZXIgMy4xOS4wIChbIzIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMCkpCi0gY2hvcmU6IHVwZGF0ZSBicmlja3MgdG8gTWFzb24gMC4xLjAtZGV2LjUyIChbIzI4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzlkY2E0NzJmYjhjOTdhMmZkMDhkYmVlYTEwZWFmOTNkMzIwYWM1NTApKQoKIyMgMC41LjEKCi0gZml4OiByZW1vdmUgZXBoZW1lcmFsIGFuZCBpZ25vcmVkIGZpbGVzIGZyb20gdGVtcGxhdGUgKFsjMTQxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL2lzc3Vlcy8xNDEpKQoKIyMgMC41LjAKCi0gYnVpbGQoZGVwcyk6IGJ1bXAgZ29vZ2xlX2ZvbnRzIGluIC9zcmMvdmVyeV9nb29kX2ZsYW1lX2dhbWUgKFsjMTE4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTE4KSkKLSBidWlsZChkZXBzKTogYnVtcCBhY3Rpb25zL2NoZWNrb3V0IGZyb20gNC4wLjAgdG8gNC4xLjAgKFsjMTIxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTIxKSkKLSBidWlsZChkZXBzKTogYnVtcCBhY3Rpb25zL2NoZWNrb3V0IGZyb20gNC4xLjAgdG8gNC4xLjEgKFsjMTIzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTIzKSkKLSBmZWF0OiBhZGQgbWFjT1MgcGxhdGZvcm0gc3VwcG9ydCAoWyMxMjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2ZsYW1lX2dhbWUvcHVsbC8xMjUpKQotIGZpeDogcmVwbGFjZSBgVmVyeUdvb2RGbGFtZUdhbWVgIHdpdGggdGVtcGxhdGUgKFsjMTMwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTMwKSkKLSBmZWF0OiB1cGRhdGUgdG8gZmxhbWUgMS4xMCAoWyMxMjldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2ZsYW1lX2dhbWUvcHVsbC8xMjkpKQotIGJ1aWxkKGRlcHMpOiBidW1wIG1vY2tpbmdqYXkgZnJvbSAwLjQuMCB0byAwLjUuMCBpbiAvc3JjL3ZlcnlfZ29vZF9mbGFtZV9nYW1lIChbIzEzM10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS9wdWxsLzEzMykpCi0gZml4OiByZWdlbmVyYXRlIGlvcyBwbGF0Zm9ybSBkaXIgKFsjMTM0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTM0KSkKCiMjIDAuNC4wCgotIGZlYXQhOiB1cGRhdGUgdG8gRmxhbWUgMS44LjIKLSBmZWF0ITogYnVtcCBtaW4gRGFydCBTREsgdG8gMy4xLjAKLSBmZWF0ITogdXBkYXRlIHRvIEZsdXR0ZXIgMy4xMy4yCi0gZml4OiBhZGRlZCBSdW5uZXJUZXN0cyBpT1MgU2NoZW1hCi0gZml4OiB2ZXJ5X2dvb2QgY3JlYXRlIGZsdXR0ZXJfYXBwIGRvZXNuJ3QgY3JlYXRlIC5ncmFkbGV3IGZpbGVzCi0gZmVhdDogdXBncmFkZSB0byBgdmVyeV9nb29kX2FuYWx5c2lzIF41LjEuMGAKLSBmaXg6IHRleHQgc3R5bGUgdGVzdHMgZm9yIGBDb3VudGVyQ29tcG9uZW50YAoKIyMgMC4zLjAKCi0gZmVhdCE6IHVwZGF0ZSB0byBEYXJ0IDMuMC4wCgojIyAwLjIuMAoKLSBmZWF0ITogYnVtcCBtaW4gRGFydCBTREsgdG8gMi4xOS4wCgojIyAwLjEuMwoKLSBjaG9yZTogc3VwcG9ydCBkYXJ0IHNkayAyLjE4LjAKCiMjIDAuMS4yCgotIGZlYXQ6IHVwZGF0ZSB3b3JrZmxvd3MsIGFkZCBzcGVsbGNoZWNrCi0gYnVpbGQoZGVwcyk6IHVwZGF0ZSBnb29nbGVfZm9udHMKCiMjIDAuMS4xCgotIGZlYXQ6IHVwZGF0ZSBgdmVyeV9nb29kX2FuYWx5c2lzIHRvIF40LjAuMGAKCiMjIDAuMS4wCgotIGZlYXQ6IHVwZ3JhZGUgYmxvYwogIC0gYmxvYyBeOC4xLjEKICAtIGZsdXR0ZXJfYmxvYyBeOC4xLjIKICAtIGJsb2NfdGVzdCBeOS4xLjEKLSBmZWF0OiB1cGdyYWRlIHRvIEZsdXR0ZXIgMy43LjEKCiMjIDAuMC41CgotIGZpeDogZ29vZ2xlIGZvbnRzIHRlc3QgaXNzdWUKCiMjIDAuMC40CgotIGZlYXQ6IHVwZ3JhZGUgdG8gRmx1dHRlciAzLjcuMCBhbmQgRmxhbWUgMS42LjAKCiMjIDAuMC4zCgotIGRvY3M6IHJlbW92ZSBjb3B5cmlnaHQgaGVhZGVyIGFuZCBsaWNlbnNlIGZyb20gZ2VuZXJhdGVkIGNvZGUKCiMjIDAuMC4yCgotIGZpeDogYWRkIHN1cHBvcnQgZm9yIEdsb2JhbEN1cGVydGlub0xvY2FsaXphdGlvbnMKCiMjIDAuMC4xCgotIGZlYXQ6IGluaXRpYWwgcmVsZWFzZSDwn46JCg==", + "IyBDaGFuZ2Vsb2cKCiMjIFsxLjcuMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNy4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNy4xKSAoMjAyNi0wOC0xMCkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTkwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU5MCkpIChbZjk2MGRiZV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9mOTYwZGJlYWJjZDM5NDFiOGRmZmMyNTdkNzk5NGQyYTgxYzRlN2U4KSkKCiMjIFsxLjcuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNi4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNy4wKSAoMjAyNi0wNy0yNykKCgojIyMgRmVhdHVyZXMKCiogYWRkIFZTIENvZGUgZGVidWcgY29uZmlndXJhdGlvbnMgZm9yIHRlc3RzIChbIzU2NF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjQpKSAoW2ZlODA3ODVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZmU4MDc4NTE3ZDU4OWE1NzUyNWZhZjM1ZjRjYTM3NDFmMGM4MTZkOSkpCiogYWRkIHdvcmtzcGFjZSBmbGFnIHN1cHBvcnQgdG8gbW9ub3JlcG8gcGFja2FnZSB0ZW1wbGF0ZXMgKFsjNTYzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU2MykpIChbNjRiMTJmNl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC82NGIxMmY2YWRkNzAxNDgwYzkxYzI1MGY4NjlmZDViNzIxYmU4ZGZiKSkKCgojIyMgQnVnIEZpeGVzCgoqIGFkZCBtYWNPUyBhbmQgTGludXggcGxhdGZvcm0gc3VwcG9ydCB0byBmbGFtZV9nYW1lIHRlbXBsYXRlIChbIzU2NV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjUpKSAoWzQ3MmM0YzddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDcyYzRjNzI5MTljYTA3NTAzYWI1N2Y5Y2M3ZTE0NmMxZjk2NzQ3YykpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzU2MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81NjEpKSAoWzBmZjBkMmZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMGZmMGQyZjFmYWQ4ZWZlZGViMThlZTVhOTY2MzY3N2MxMDgwNDlhMSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTgxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzU4MSkpIChbNDhkZDQ0OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC80OGRkNDQ5NWIzM2ZiNWMzYjdmMjU4ZTFlMGE2Y2I3NjkyNGQwNzIwKSkKCiMjIFsxLjYuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNS4xLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNi4wKSAoMjAyNi0wNi0xOSkKCgojIyMgRmVhdHVyZXMKCiogYWRkIHB1Ymxpc2hhYmxlIGZsYWcgdG8gYWxsIHRlbXBsYXRlcyAoWyM1NTBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTUwKSkgKFtlMmZlMWNlXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2UyZmUxY2VmNDU5MzViMzNmZmRiNjE5YmNjNGUwN2Y2MzY0MTM4NDIpKQoqIHVwZ3JhZGUgdG8gRmx1dHRlciAzLjQ0IGFuZCBEYXJ0IDMuMTIgKFsjNTM2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUzNikpIChbOTAyNmRhZl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC85MDI2ZGFmYTc3NGUxNzZlNTUxMTU0ZGMyNWU2YmU4ZDgzNThmNDBmKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogYWRkIFNFQ1VSSVRZLm1kIHBvbGljeSAoWyM1NDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ2KSkgKFs3Y2JiYTgwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzdjYmJhODBhYWIwZWJiZjg5MWYxN2EyMDdlZTFiNmY0NDU5MzJmNDMpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzUzMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy81MzIpKSAoW2QwM2YzMmFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZDAzZjMyYWIxZTk4NmU3NTM5YzY0ZDJkZjc3ODY2MmZjOTcyY2YwNikpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTM3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUzNykpIChbMGNkY2QxZV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wY2RjZDFlMzkxMzMzODI5NjNmMDRlNWJmNGE4MjUwYzljYzIyNjFmKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1NDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ4KSkgKFs0ZmI0YzBmXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzRmYjRjMGZlYWVjMjIwYjM5ZWM3N2JkNWI4Mjk2MWUwZThmMWY2NzgpKQoqIHVwZ3JhZGUgdmVyeV9nb29kX2FuYWx5c2lzIHRvIDEwLjMuMCAoWyM1NDVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTQ1KSkgKFthODI4NWRiXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2E4Mjg1ZGI0OTdmM2M0YThmMThkYzg1ODg5M2UxNGRjZWI5N2I5MDUpKQoKIyMgWzEuNS4xXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS41LjAuLi52ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS41LjEpICgyMDI2LTA1LTA1KQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM1MjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTIyKSkgKFs5ZjAwNzMwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzlmMDA3MzBhYzUyZGNiZTNhMzJlYzQ1YWVhOGM1YjhmOWVmOWU0MzcpKQoKIyMgWzEuNS4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS40LjEuLi52ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS41LjApICgyMDI2LTA0LTE2KQoKCiMjIyBGZWF0dXJlcwoKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIGFkZCBsaW51eCBwbGF0Zm9ybSBvcHRpb24gKFsjMzUwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM1MCkpIChbYjg3YjBkOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iODdiMGQ4Y2EwMDc3ZjBmZDAxY2FmYzRjODZjMmU5OGZiYTNlOTE4KSkKCiMjIFsxLjQuMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNC4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNC4xKSAoMjAyNi0wNC0xMykKCgojIyMgQnVnIEZpeGVzCgoqIGFkZCBtaXNzaW5nIHZhcmlhYmxlcyBmb3IgTElDRU5TRSBmaWxlcyAoWyM1MDNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNTAzKSkgKFsyMDNiOGIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzIwM2I4YjAzM2IyOWU2ODIwMjEzNTQxYjExMWExMTJhMDQxZjRhNjUpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiByZW1vdmUgcmVsZWFzZS1yZWFkeSBzY3JpcHRzIChbIzQ4OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80ODgpKSAoWzFmMTMyNjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMWYxMzI2MTYxNzJlY2IxZTQ5YmNhNjQ3MTJjMTNmZDc2NzM3OGMwZSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNTA0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzUwNCkpIChbMzY4NDVkMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8zNjg0NWQwZTMwMGQ5NTY1ZGQ3ZGE4YjEwZWQ2MmEzNGI1ZWNkOGY4KSkKCiMjIFsxLjQuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMy4xLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuNC4wKSAoMjAyNi0wMy0zMCkKCgojIyMgRmVhdHVyZXMKCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBhZGQgYXNzZXQgcHJlbG9hZGVyIChbIzQ2OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80NjkpKSAoWzg1NmMzNDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvODU2YzM0ODZjZWRmN2I4NzIxMmE3NTljYzk4MWI4MmFhYjY4N2ZlMCkpCgojIyBbMS4zLjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjMuMC4uLnZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjMuMSkgKDIwMjYtMDMtMTcpCgoKIyMjIEJ1ZyBGaXhlcwoKKiBhZGQgbWlzc2luZyBMSUNFTlNFIGZpbGVzIHRvIHRlbXBsYXRlcyAoWyM0NDhdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDQ4KSkgKFtiYzNjMGE5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2JjM2MwYTk3ZDE2ZmZhM2IxNWIzMjY0NTRlMjVmYjM3MDcwY2Q4Y2MpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyM0NDBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvNDQwKSkgKFtlZjhiNzQyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2VmOGI3NDJmMmUwMjc0Njk5YzczNzM0OTdjNzA1NTgyNTRlZjllMjcpKQoKIyMgWzEuMy4wXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tcGFyZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS4yLjAuLi52ZXJ5X2dvb2RfZmxhbWVfZ2FtZS12MS4zLjApICgyMDI2LTAyLTE3KQoKCiMjIyBGZWF0dXJlcwoKKiB1cGdyYWRlIHRvIGRhcnQgMy4xMSBhbmQgZmx1dHRlciAzLjQxIChbIzQyOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjkpKSAoWzQ2YWU0OTBdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDZhZTQ5MDgyM2VmNmY1ZjNhZGRlZjYxNTlhMjQ4NzBmNjZlOTMxZSkpCiogdXBncmFkZSB0byB2ZXJ5X2dvb2RfYW5hbHlzaXMgMTAuMi4wIChbIzQzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MzcpKSAoW2JlMTYxODNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYmUxNjE4MzRlOTBmMDM4MWQzNTM1YzliZDNiNWY0NGJhNmVhMTliYSkpCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzQyNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjUpKSAoW2M0ZmVlYjZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvYzRmZWViNjAzMWI2YmYyMTE1NDZiY2U5ZjQ3OTdkMjU1NDM2MzQ4OCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDM1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQzNSkpIChbNTkzN2M0Nl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC81OTM3YzQ2OWFlMmMyOGFkNDIzMGQyY2UwMGZkZjhkNzg2MzljMGQ4KSkKCiMjIFsxLjIuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMS4yLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMi4wKSAoMjAyNi0wMi0wNikKCgojIyMgRmVhdHVyZXMKCiogYWRkIGJsb2MgbGludCB0byB0ZW1wbGF0ZXMgd2l0aCBibG9jIChbIzM4Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zODIpKSAoWzUxMmVkZjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNTEyZWRmMjExN2U5ZTFhODYzNWEwMmJjNzRhYzMxOWIwMWRlZWQ1NCkpCiogYWRkIGljb24gY29tcG9zZXIgc3VwcG9ydCBmb3IgaU9TIChbIzQwOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MDgpKSAoW2QzZmEzMjddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZDNmYTMyNzkxNjliMWQ2YjNjZjM3YzYxM2Q2NWE1ZWQxOTQzZTU1OSkpCiogYWRkIGljb24gY29tcG9zZXIgc3VwcG9ydCBmb3IgTWFjT1MgKFsjNDA5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwOSkpIChbYmQwOTAwN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iZDA5MDA3MDUzZTRlMTQxMDkxYjNiOThhNDI0NDc5ZGZmNGYxZDM5KSkKKiBhZGQgbGljZW5zZSBjaGVjayB3b3JrZmxvdyB0byB0ZW1wbGF0ZXMgKFsjNDIyXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQyMikpIChbYmQyODBjMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC9iZDI4MGMwMGY5MDEyNjg1NmE1ZmU3MGQ2NDE3ZTFjODNkMjBmNzRiKSkKKiB1cGRhdGUgaU9TIHRlbXBsYXRlcyB0byB1c2UgVUlTY2VuZSBsaWZlY3ljbGUgKFsjNDE2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQxNikpIChbMjMzZjAyZV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8yMzNmMDJlMjIxMmZjMDRmOWRkZmU1NGM4ZGZmMDE5YTlhZTE1NjBmKSkKKiB1cGdyYWRlIHRvIGZsdXR0ZXIgMy4zOC4xIChbIzM5NF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zOTQpKSAoW2U0MzZkNzZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZTQzNmQ3NjA2YjA5OThmYzUyMzFkM2JkMWZkMGM0NjUwZDBjOGFlOCkpCgoKIyMjIEJ1ZyBGaXhlcwoKKiB0aWdodGVuIGJsb2NfbGludCB2ZXJzaW9uIChbIzQyNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MjQpKSAoWzY3ZjM1ZGVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNjdmMzVkZTdjZGZiZTFmN2NmMzRlNDY1NGNiM2NiOTE5MThlZDkzNCkpCiogdXBkYXRlIGNoYW5nZWxvZydzIGZvcm1hdCAoWyMzNzFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzcxKSkgKFs2YzVkNTNkXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzZjNWQ1M2Q1MGQzN2RiZDRmYzg4ZTMxNTRmMDVhYjI4MzEyMGU1OWYpKQoKCiMjIyBNaXNjZWxsYW5lb3VzIENob3JlcwoKKiBidW1wIHZlcnlfZ29vZF9hbmFseXNpcyB0byAxMC4xLjAgKFsjNDAwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwMCkpIChbMGM0NTRjNF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYzQ1NGM0MTY2Y2Y0ZTAxYzY1OWFiNzIzYzVmOTRmYzFhMmVkYWE2KSkKKiAqKmlvczoqKiBtaWdyYXRlIGRlcHJlY2F0ZWQgVUlBcHBsaWNhdGlvbk1haW4gdG8gW0BtYWluXShodHRwczovL2dpdGh1Yi5jb20vbWFpbikgKFsjNDA2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwNikpIChbMGMxYjVhMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYzFiNWEwOGIxYzA3MjViODI4YTE2MDhjYTUzZDBhZmQxZDZjNTY3KSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzODRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzg0KSkgKFs5MjJiZjAwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzkyMmJmMDAxNTdlZjA3ZTZlOTk3MWExZWI5MzhhMGQxODdlMWJkOGQpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM4NV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zODUpKSAoWzEwZWQ1NzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMTBlZDU3MzU3ZTY3ZGM4YTllYjBkMTMyZTllNzI3MmM3NDNmNjc4MSkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjNDAxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzQwMSkpIChbMzFiODUyY10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8zMWI4NTJjMThlMmIwMGU1MTgyZmU5OTZmZTk1MzRlNTVjY2U2ODMyKSkKKiB1cGdyYWRlIGlPUyB0YXJnZXQgdmVyc2lvbiB0byAxMy4wIChbIzQwN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy80MDcpKSAoWzBjMzNlNzNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMGMzM2U3MzM1MDUwNzU5MGU2YzY3ZWNhMDk1Zjc4MjhhZDQyZjE0MCkpCgojIyBbMS4xLjJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMS4uLnZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMikgKDIwMjUtMDktMzApCgoKIyMjIE1pc2NlbGxhbmVvdXMgQ2hvcmVzCgoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM2M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNjMpKSAoWzAxMzA3YTddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvMDEzMDdhN2JkOTU1ZmE5ZDY3M2NiNTM0NzQ2Y2IyNjU2ODU1MzBjMSkpCgojIyBbMS4xLjFdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21wYXJlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMC4uLnZlcnlfZ29vZF9mbGFtZV9nYW1lLXYxLjEuMSkgKDIwMjUtMDktMjUpCgoKIyMjIEJ1ZyBGaXhlcwoKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIHNlbGVjdGVkIHBsYXRmb3JtcyBjYW4gYmUgbnVsbGFibGUgKFsjMzYwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM2MCkpIChbNWNkNWU4Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC81Y2Q1ZTgyYzE2Zjg0MzEzNDhlNDM1NDk4MDllNTRmODM2NzkyZmRjKSkKCiMjIFsxLjEuMF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbXBhcmUvdmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMC4wLi4udmVyeV9nb29kX2ZsYW1lX2dhbWUtdjEuMS4wKSAoMjAyNS0wOS0yMikKCgojIyMgRmVhdHVyZXMKCiogdXBncmFkZSB0byBmbHV0dGVyIDMuMzUuMCAoWyMzNDJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzQyKSkgKFs2ODE4MDQxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzY4MTgwNDE5OGMwM2E2YWIyNTU4MDJjZWRjMTUyNDI4MzI5MjhlNTQpKQoqIHVwZ3JhZGUgdG8gdmVyeV9nb29kX2FuYWx5c2lzIDEwLjAuMCAoWyMzNDZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzQ2KSkgKFs1YTdkMGRjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzVhN2QwZGM3MzIzYTc3NTgzMTU4YWNmYmJlOTMzYTYwMzAyZWQ1MzIpKQoqIHVwZ3JhZGVkIHBsdWdpbiB2ZXJzaW9uIGFuZCByZW1vdmVkIGpkazcgZGVwZW5kZW5jeSBvbiBidWlsZC5rdHMgKFsjMzM5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzOSkpIChbOGU2MDk3MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC84ZTYwOTcxNTIxNzQzNjhlODkyMzAyNGVmMWIyYmYzNWY0YTY3NWFjKSkKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIGFkZCBwbGF0Zm9ybSBvcHRpb25zIChbIzM0MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNDApKSAoW2YzYTY3OTJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZjNhNjc5MmFmNzBjNjAwNmJmYmY0YjMwZDkyZTBkOTFiNjI0NjIwNSkpCiogKip2ZXJ5X2dvb2RfZmxhbWU6KiogdXBkYXRlIGFzc2V0cy5nZW4uZGFydCAoWyMzNDldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzQ5KSkgKFsyZjlkYThjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzJmOWRhOGMzYmJiNDIzODc2ZmYxMjVhMDY3NzU1OTMyYTc0YTJiMzgpKQoKCiMjIyBCdWcgRml4ZXMKCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBDaGFuZ2Ugc28gInRhcCBjb3VudCIgbWVzc2FnZSBpcyByZXNwb25zaXZlIHRvIHdpbmRvdyBzaXplIChbIzMzOF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMzgpKSAoWzNiOGMxMWVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvM2I4YzExZTVjNzcxMjQ2NDVjNzQyYjE0NzVlYmY5YTkyMDk2ODBlYikpCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBkZXByZWNhdGVkIGFuZHJvaWQgZ3JhZGxlIHBsdWdpbiB2ZXJzaW9uIChbIzMxNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zMTUpKSAoW2ZiNDM4NWRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvZmI0Mzg1ZGQ1YWNiM2M3ZWFhZTNiMWExYmRjMGE0ZmFjNWU5MTQ0OSkpCiogKip2ZXJ5X2dvb2RfZmxhbWVfZ2FtZToqKiBJbXByb3ZlIHRleHQgcmVhZGFiaWxpdHkgYnkgY2hhbmdpbmcgY29sb3LigKYgKFsjMzM1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzNSkpIChbMGE0MmVlMl0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8wYTQyZWUyOTIyMzhiZGE3Yzg2YjkyMjBhNjQwYjMxMTU0MDcwZGNkKSkKKiAqKnZlcnlfZ29vZF9mbGFtZV9nYW1lOioqIHRyaW0gYXVkaW8gdG8gbm90IHJlcGVhdCBzb3VuZCBlZmZlY3QgKFsjMzM2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMzNikpIChbOWI0MjNhY10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC85YjQyM2FjN2FiNzA3YTgzZmFjNGE0NTZlYTc5OGQ1MjU1MTNmYWMyKSkKCgojIyMgTWlzY2VsbGFuZW91cyBDaG9yZXMKCiogYXV0b21hdGUgcmVsZWFzZXMgKFsjMzE5XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzMxOSkpIChbMTdmYjNhNV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC8xN2ZiM2E1Yzc0MmE0MmU3ZmZmNzBiMjY5ZGVlYTk2MWU0YTE1YjRmKSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzMThdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzE4KSkgKFs3MGExZjBjXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzcwYTFmMGNlZDJlYzY2M2JjYWNlODYxNjZjYTMxZGU2MTZiOGRlNTkpKQoqIHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzM0OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2lzc3Vlcy8zNDgpKSAoWzQxNjdhMjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9jb21taXQvNDE2N2EyNTVjM2IxMjY0MThmZWZiYWRiZWI2OTY4YzdiZDg2MWVkOCkpCiogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMzUxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvaXNzdWVzLzM1MSkpIChbNjhiNjY1MV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL2NvbW1pdC82OGI2NjUxMzlhNzg5M2E1ZWM3NjBmMjA3NDkyOGY5OTBlZTQ1MDQ1KSkKKiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyAoWyMzNTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzUzKSkgKFthN2YyNGE3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2E3ZjI0YTdiOTUyYWIyZjU5YjZmYjY5MDIzZjMxOWNkN2E0ZjBhM2YpKQoqICoqdmVyeV9nb29kX2ZsYW1lX2dhbWU6KiogbWlncmF0ZXMgR3Jvb3Z5IHNjcmlwdHMgdG8gS290bGluIERTTCAoWyMzMTRdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9pc3N1ZXMvMzE0KSkgKFtlMzg0YmVkXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0L2UzODRiZWRhZDljNGYzMmNiOTdlZDEzOTVjZWIwMmFkODUyMDBkZTkpKQoKIyMgMS4wLjAKCnJlZmFjdG9yKHZlcnlfZ29vZF9mbGFtZV9nYW1lKSE6IHJlbW92ZSByb290LWxldmVsIHByb2plY3RfbmFtZSBmb2xkZXIgZnJvbSBicmljayBzdHJ1Y3R1cmUuCgojIyMgTWlncmF0aW9uIGRldGFpbHMKClRoZSBgdmVyeV9nb29kX2ZsYW1lX2dhbWVgIGJyaWNrIG5vIGxvbmdlciBpbmNsdWRlcyBhIHRvcC1sZXZlbCBwcm9qZWN0IG5hbWUgZm9sZGVyLgpUaGlzIGFsbG93cyBnZW5lcmF0aW5nIHRoZSBwcm9qZWN0IGRpcmVjdGx5IGludG8gdGhlIGN1cnJlbnQgb3IgYSBjdXN0b20gZGlyZWN0b3J5LgoKSWYgeW91IHByZWZlciB0byBrZWVwIHRoZSBvdXRwdXQgaW5zaWRlIGl0cyBvd24gZm9sZGVyIChhcyBiZWZvcmUpLCB1c2UgdGhlIC1vIGZsYWc6CgpgYGBkYXJ0Ci8vIEJlZm9yZToKbWFzb24gbWFrZSB2ZXJ5X2dvb2RfZmxhbWVfZ2FtZQoKLy8gQWZ0ZXI6Cm1hc29uIG1ha2UgdmVyeV9nb29kX2ZsYW1lX2dhbWUgLW8gLi9vdXRwdXRfZm9sZGVyCmBgYAoKIyMgMC4xMS4wCgotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyBbIzIzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjM3KQotIGNob3JlOiB0aWdodGVuIHRlbXBsYXRlIGRlcGVuZGVuY2llcyBbIzI0MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjQwKQotIGZpeDogZXZhbHVhdGUgYnJpY2sgb3V0cHV0IGNvcnJlY3RseSBvbiBjaSBbIzI0OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjQ4KQotIGNob3JlOiB1cGRhdGUgdG8gRmx1dHRlciAzLjI5IGFuZCBEYXJ0IDMuNyBbIzI1MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjUwKQotIGNob3JlOiB1cGRhdGUgZmx1dHRlciAzLjMyLjAgYW5kIGRhcnQgMy44LjAgWyMyNTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzI1MykKLSBjaG9yZSh2ZXJ5X2dvb2RfZmxhbWVfZ2FtZSk6IHVwZGF0ZSB0byBtb2NraW5namF5IDIuMC4wIFsjMjYwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yNjApCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIFsjMjQzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yNDMpCi0gY2hvcmU6IGJ1bXAgdmVyeV9nb29kX2FuYWx5c2lzIHRvIDkuMC4wIFsjMjYxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yNjEpCgojIyAwLjEwLjAKCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzIxMV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMjExKSwgWyMyMTNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIxMyksIFsjMjIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMjApKQotIGZlYXQ6IHVwZGF0ZSBwdWxsIHJlcXVlc3QgdGVtcGxhdGVzIHRvIGFkZCBgdGVzdGAgdHlwZSBvcHRpb24gKFsjMjE0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMTQpKQotIGNob3JlOiB1cGRhdGUgdG8gRmx1dHRlciAzLjI3IGFuZCBEYXJ0IDMuNiAoWyMyMjNdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzIyMykpCgojIyAwLjkuMAoKLSBmaXg6IHNldCBjdXJyZW50IHllYXIgY29weXJpZ2h0IChbIzE5Ml0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTkyKSkKLSBjaG9yZTogdGlnaHRlbiB0ZW1wbGF0ZSBkZXBlbmRlbmNpZXMgKFsjMjA0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMDQpKQotIGZpeDogdXBkYXRlIGFuZHJvaWQgYnVpbGQgdmVyc2lvbnMgKFsjMjA1XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMDUpKQoKIyMgMC44LjEKCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzE5MF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTkwKSkKLSBmaXg6IGFkZCBjbG9zaW5nIH0gaW4gYnVpbGQuZ3JhZGxlIChbIzE4OV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTg5KSkKCiMjIDAuOC4wCgotIGZlYXQ6IHVwZGF0ZSB0byBGbHV0dGVyIDMuMjQgYW5kIERhcnQgMy41IChbIzE3N10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTc3KSkKCiMjIDAuNy4zCgotIGNob3JlOiB1c2UgZ2l0IGRlcGVuZGVuY3kgb3ZlciBwYXRoIGRlcGVuZGVuY3kgKFsjMTcxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8xNzEpKQoKIyMgMC43LjIKCi0gZmVhdDogdXBkYXRlIHVzYWdlIG9mIGFwcGxpY2F0aW9uX2lkIHZhciAoWyMxNTddKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzE1NykpCgojIyAwLjcuMQoKLSBzdHlsZTogQWRkaW5nIGV4dHJhIHNwYWNlIHRvIHRoZSBhcHBsaWNhdGlvbiBvcGVuaW5nIHRhZyAoWyMxMjZdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEyNikpCi0gY2hvcmU6IHVwZGF0ZSBKYXZhIHZlcnNpb24gZm9yIFZlcnkgR29vZCBGbGFtZSBHYW1lIChbIzEyOV0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTI5KSkKLSBjaG9yZTogdXBkYXRlIHRvIFZlcnkgR29vZCBBbmFseXNpcyA2LjAuMCAoWyMxMzVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEzNSkpCi0gY2hvcmU6IHRpZ2h0ZW4gdGVtcGxhdGUgZGVwZW5kZW5jaWVzIChbIzEzN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTM3KSkKCiMjIDAuNy4wCgotIGZlYXQhOiBlbnN1cmUgdGVtcGxhdGUgdXNlcyBGbHV0dGVyIDMuMjIgd2l0aCBEYXJ0IDMuNCAoWyMxMDJdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX3RlbXBsYXRlcy9wdWxsLzEwMikpCi0gZml4OiB1cGRhdGUgaW5kZXguaHRtbCB0byBzdXBwb3J0IGxhdGVzdCBjb252ZW50aW9uIChbIzEwN10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvMTA3KSkKCiMjIDAuNi4xCgotIGZpeDogZGVwcmVjYXRlZCBpbXBlcmF0aXZlIGFwcGx5IG9mIEZsdXR0ZXIncyBHcmFkbGUgcGx1Z2lucyAoWyM3OF0oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfdGVtcGxhdGVzL3B1bGwvNzgpKQoKIyMgMC42LjAKCi0gZG9jczogZml4ZWQgY29weSBmb3JtYXQgYW5kIGNvbW1hbmQgKFsjMTQ2XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTQ2KSkKLSBmaXg6IHJlc29sdmUgaW1hZ2UgY2FjaGluZyBpc3N1ZSBvbiBmbGFtZV9nYW1lIHRlbXBsYXRlIChbIzE0M10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS9wdWxsLzE0MykpCi0gY2hvcmU6IG1pZ3JhdGUgdmVyeV9nb29kX2ZsYW1lX2dhbWUgdG8gdmVyeV9nb29kX3RlbXBsYXRlcyAoWyM3XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC83KSkKLSBmZWF0ITogdXBkYXRlIHRvIEZsdXR0ZXIgMy4xOS4wIChbIzIwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvcHVsbC8yMCkpCi0gY2hvcmU6IHVwZGF0ZSBicmlja3MgdG8gTWFzb24gMC4xLjAtZGV2LjUyIChbIzI4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF90ZW1wbGF0ZXMvY29tbWl0LzlkY2E0NzJmYjhjOTdhMmZkMDhkYmVlYTEwZWFmOTNkMzIwYWM1NTApKQoKIyMgMC41LjEKCi0gZml4OiByZW1vdmUgZXBoZW1lcmFsIGFuZCBpZ25vcmVkIGZpbGVzIGZyb20gdGVtcGxhdGUgKFsjMTQxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL2lzc3Vlcy8xNDEpKQoKIyMgMC41LjAKCi0gYnVpbGQoZGVwcyk6IGJ1bXAgZ29vZ2xlX2ZvbnRzIGluIC9zcmMvdmVyeV9nb29kX2ZsYW1lX2dhbWUgKFsjMTE4XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTE4KSkKLSBidWlsZChkZXBzKTogYnVtcCBhY3Rpb25zL2NoZWNrb3V0IGZyb20gNC4wLjAgdG8gNC4xLjAgKFsjMTIxXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTIxKSkKLSBidWlsZChkZXBzKTogYnVtcCBhY3Rpb25zL2NoZWNrb3V0IGZyb20gNC4xLjAgdG8gNC4xLjEgKFsjMTIzXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTIzKSkKLSBmZWF0OiBhZGQgbWFjT1MgcGxhdGZvcm0gc3VwcG9ydCAoWyMxMjVdKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2ZsYW1lX2dhbWUvcHVsbC8xMjUpKQotIGZpeDogcmVwbGFjZSBgVmVyeUdvb2RGbGFtZUdhbWVgIHdpdGggdGVtcGxhdGUgKFsjMTMwXShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTMwKSkKLSBmZWF0OiB1cGRhdGUgdG8gZmxhbWUgMS4xMCAoWyMxMjldKGh0dHBzOi8vZ2l0aHViLmNvbS9WZXJ5R29vZE9wZW5Tb3VyY2UvdmVyeV9nb29kX2ZsYW1lX2dhbWUvcHVsbC8xMjkpKQotIGJ1aWxkKGRlcHMpOiBidW1wIG1vY2tpbmdqYXkgZnJvbSAwLjQuMCB0byAwLjUuMCBpbiAvc3JjL3ZlcnlfZ29vZF9mbGFtZV9nYW1lIChbIzEzM10oaHR0cHM6Ly9naXRodWIuY29tL1ZlcnlHb29kT3BlblNvdXJjZS92ZXJ5X2dvb2RfZmxhbWVfZ2FtZS9wdWxsLzEzMykpCi0gZml4OiByZWdlbmVyYXRlIGlvcyBwbGF0Zm9ybSBkaXIgKFsjMTM0XShodHRwczovL2dpdGh1Yi5jb20vVmVyeUdvb2RPcGVuU291cmNlL3ZlcnlfZ29vZF9mbGFtZV9nYW1lL3B1bGwvMTM0KSkKCiMjIDAuNC4wCgotIGZlYXQhOiB1cGRhdGUgdG8gRmxhbWUgMS44LjIKLSBmZWF0ITogYnVtcCBtaW4gRGFydCBTREsgdG8gMy4xLjAKLSBmZWF0ITogdXBkYXRlIHRvIEZsdXR0ZXIgMy4xMy4yCi0gZml4OiBhZGRlZCBSdW5uZXJUZXN0cyBpT1MgU2NoZW1hCi0gZml4OiB2ZXJ5X2dvb2QgY3JlYXRlIGZsdXR0ZXJfYXBwIGRvZXNuJ3QgY3JlYXRlIC5ncmFkbGV3IGZpbGVzCi0gZmVhdDogdXBncmFkZSB0byBgdmVyeV9nb29kX2FuYWx5c2lzIF41LjEuMGAKLSBmaXg6IHRleHQgc3R5bGUgdGVzdHMgZm9yIGBDb3VudGVyQ29tcG9uZW50YAoKIyMgMC4zLjAKCi0gZmVhdCE6IHVwZGF0ZSB0byBEYXJ0IDMuMC4wCgojIyAwLjIuMAoKLSBmZWF0ITogYnVtcCBtaW4gRGFydCBTREsgdG8gMi4xOS4wCgojIyAwLjEuMwoKLSBjaG9yZTogc3VwcG9ydCBkYXJ0IHNkayAyLjE4LjAKCiMjIDAuMS4yCgotIGZlYXQ6IHVwZGF0ZSB3b3JrZmxvd3MsIGFkZCBzcGVsbGNoZWNrCi0gYnVpbGQoZGVwcyk6IHVwZGF0ZSBnb29nbGVfZm9udHMKCiMjIDAuMS4xCgotIGZlYXQ6IHVwZGF0ZSBgdmVyeV9nb29kX2FuYWx5c2lzIHRvIF40LjAuMGAKCiMjIDAuMS4wCgotIGZlYXQ6IHVwZ3JhZGUgYmxvYwogIC0gYmxvYyBeOC4xLjEKICAtIGZsdXR0ZXJfYmxvYyBeOC4xLjIKICAtIGJsb2NfdGVzdCBeOS4xLjEKLSBmZWF0OiB1cGdyYWRlIHRvIEZsdXR0ZXIgMy43LjEKCiMjIDAuMC41CgotIGZpeDogZ29vZ2xlIGZvbnRzIHRlc3QgaXNzdWUKCiMjIDAuMC40CgotIGZlYXQ6IHVwZ3JhZGUgdG8gRmx1dHRlciAzLjcuMCBhbmQgRmxhbWUgMS42LjAKCiMjIDAuMC4zCgotIGRvY3M6IHJlbW92ZSBjb3B5cmlnaHQgaGVhZGVyIGFuZCBsaWNlbnNlIGZyb20gZ2VuZXJhdGVkIGNvZGUKCiMjIDAuMC4yCgotIGZpeDogYWRkIHN1cHBvcnQgZm9yIEdsb2JhbEN1cGVydGlub0xvY2FsaXphdGlvbnMKCiMjIDAuMC4xCgotIGZlYXQ6IGluaXRpYWwgcmVsZWFzZSDwn46JCg==", "type": "text", }, "license": {