ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gICBfIF9fX18gIF8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX19ffCB8IHwgfCAgXyBcfCB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyBfX3wgfCB8IHwgfF8pIHwgfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoX198IHxffCB8ICBfIDx8IHxfX18KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX19ffFxfX18vfF98IFxfXF9fX19ffAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYmN1cmwgYmluZGluZ3MKCkNyZWF0aXZlIHBlb3BsZSBoYXZlIHdyaXR0ZW4gYmluZGluZ3Mgb3IgaW50ZXJmYWNlcyBmb3IgdmFyaW91cyBlbnZpcm9ubWVudHMKYW5kIHByb2dyYW1taW5nIGxhbmd1YWdlcy4gVXNpbmcgb25lIG9mIHRoZXNlIGFsbG93cyB5b3UgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YKY3VybCBwb3dlcnMgZnJvbSB3aXRoaW4geW91ciBmYXZvdXJpdGUgbGFuZ3VhZ2Ugb3Igc3lzdGVtLgoKVGhpcyBpcyBhIGxpc3Qgb2YgYWxsIGtub3duIGludGVyZmFjZXMgYXMgb2YgdGhpcyB3cml0aW5nLgoKVGhlIGJpbmRpbmdzIGxpc3RlZCBiZWxvdyBhcmUgbm90IHBhcnQgb2YgdGhlIGN1cmwvbGliY3VybCBkaXN0cmlidXRpb24KYXJjaGl2ZXMsIGJ1dCBtdXN0IGJlIGRvd25sb2FkZWQgYW5kIGluc3RhbGxlZCBzZXBhcmF0ZWx5LgoKQWRhOTUKCiAgV3JpdHR0ZW4gYnkgQW5kcmVhcyBBbG1yb3RoCiAgaHR0cDovL3d3dy5hbG1yb3RoLmNvbS9hZGFjdXJsL2luZGV4Lmh0bWwKCkJhc2ljCgogIFNjcmlwdEJhc2ljIGJpbmRpbmdzIHRvIGxpYmN1cmwuIFdyaXR0dGVuIGJ5IFBldGVyIFZlcmhhcwogIGh0dHA6Ly9zY3JpcHRiYXNpYy5jb20vCgpDCiAgbGliY3VybCBpcyBhIEMgbGlicmFyeSBpbiBpdHNlbGYhCiAgaHR0cDovL2N1cmwuaGF4eC5zZS9saWJjdXJsLwoKQysrCgogIFdyaXR0ZW4gYnkgSmVhbi1QaGlsaXBwZSBCYXJyZXR0ZS1MYVBpZXJyZQogIGh0dHA6Ly9ycmV0dGUuY29tL3RleHRwYXR0ZXJuL2luZGV4LnBocD9zPWNVUkxwcAoKQ2gKCiAgV3JpdHRlbiBieSBTdGVwaGVuIE5lc3RpbmdlciBhbmQgSm9uYXRoYW4gUm9nYWRvCiAgaHR0cDovL2NoY3VybC5zb3VyY2Vmb3JnZS5uZXQvCgpDb2NvYQoKICBXcml0dGVuIGJ5IERhbiBXb29kCiAgaHR0cDovL2N1cmxoYW5kbGUuc291cmNlZm9yZ2UubmV0LwoKRAoKICBXcml0dGVuIGJ5IEtlbm5ldGggQm9nZXJ0CiAgaHR0cDovL2N1cmwuaGF4eC5zZS9saWJjdXJsL2QvCgpEeWxhbgoKICBXcml0dGVuIGJ5IENocmlzIERvdWJsZQogIGh0dHA6Ly9keWxhbmxpYnMuc291cmNlZm9yZ2UubmV0LwoKRXVwaG9yaWEKCiAgV3JpdHRlbiBieSBSYXkgU21pdGgKICBodHRwOi8vcmF5cy13ZWIuY29tL2V1bGliY3VybC5odG0KCkZlcml0ZQoKICBXcml0dGVuIGJ5IFBhdWwgUXVlcm5hCiAgaHR0cDovL3d3dy5mZXJpdGUub3JnLwoKR2FtYmFzCgogIGh0dHA6Ly9nYW1iYXMuc291cmNlZm9yZ2UubmV0CgpnbGliL0dUSysKCiAgV3JpdHRlbiBieSBSaWNoYXJkIEF0dGVyZXIKICBodHRwOi8vYXR0ZXJlci5uZXQvZ2xpYmN1cmwvCgpIYXNrZWxsCgogIFdyaXR0ZW4gYnkgR2Fsb2lzLCBJbmMKICBodHRwOi8vaGFja2FnZS5oYXNrZWxsLm9yZy9jZ2ktYmluL2hhY2thZ2Utc2NyaXB0cy9wYWNrYWdlL2N1cmwKCkphdmEKCiAgTWFpbnRhaW5lZCBieSBbYmxhbmtdCiAgaHR0cDovL2N1cmwuaGF4eC5zZS9saWJjdXJsL2phdmEvCgpMaXNwCgogIFdyaXR0ZW4gYnkgTGlhbSBIZWFseQogIGh0dHA6Ly9jb21tb24tbGlzcC5uZXQvcHJvamVjdC9jbC1jdXJsLwoKTHVhCgogIGx1YWN1cmwgYnkgQWxleGFuZGVyIE1hcmlub3YKICBodHRwOi8vbHVhY3VybC5sdWFmb3JnZS5uZXQvCgogIEx1YS1jVVJMIGJ5IEr8cmdlbiBI9nR6ZWwKICBodHRwOi8vbHVhZm9yZ2UubmV0L3Byb2plY3RzL2x1YS1jdXJsLwoKTW9ubwoKICBXcml0dGVuIGJ5IEplZmZyZXkgUGhpbGxpcHMKICBodHRwOi8vZm9yZ2Uubm92ZWxsLmNvbS9tb2R1bGVzL3hmbW9kL3Byb2plY3QvP2xpYmN1cmwtbW9ubwoKLk5FVAoKICBsaWJjdXJsLW5ldCBieSBKZWZmcmV5IFBoaWxsaXBzCiAgaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy9saWJjdXJsLW5ldC8KCk9iamVjdC1QYXNjYWwKCiAgRnJlZSBQYXNjYWwsIERlbHBoaSBhbmQgS3lsaXggYmluZGluZyB3cml0dGVuIGJ5IENocmlzdG9waGUgRXNwZXJuLgogIGh0dHA6Ly93d3cudGVrb29sLmNvbS9vcGN1cmwKCk8nQ2FtbAoKICBXcml0dGVuIGJ5IExhcnMgTmlsc3NvbgogIGh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvb2N1cmwvCgpQYXNjYWwKCiAgRnJlZSBQYXNjYWwsIERlbHBoaSBhbmQgS3lsaXggYmluZGluZyB3cml0dGVuIGJ5IEplZmZyZXkgUG9obG1leWVyLgogIGh0dHA6Ly9ob3VzdG9uLnF1aWsuY29tL2prcC9jdXJscGFzLwoKUGVybAoKICBNYWludGFpbmVkIGJ5IENyaXMgQmFpbGlmZgogIGh0dHA6Ly9jdXJsLmhheHguc2UvbGliY3VybC9wZXJsLwoKUEhQCgogIFdyaXR0ZW4gYnkgU3RlcmxpbmcgSHVnaGVzCiAgaHR0cDovL2N1cmwuaGF4eC5zZS9saWJjdXJsL3BocC8KClBvc3RncmVTUUwKCiAgV3JpdHRlbiBieSBHaWFuIFBhb2xvIENpY2VyaQogIGh0dHA6Ly9nYm9yZy5wb3N0Z3Jlc3FsLm9yZy9wcm9qZWN0L3BnY3VybC9wcm9qZGlzcGxheS5waHAKClB5dGhvbgoKICBQeWNVUkwgYnkgS2pldGlsIEphY29ic2VuCiAgaHR0cDovL3B5Y3VybC5zb3VyY2Vmb3JnZS5uZXQvCgpSCgogIFJDdXJsIGJ5IER1bmNhbiBUZW1wbGUgTGFuZwogIGh0dHA6Ly93d3cub21lZ2FoYXQub3JnL1JDdXJsLwoKUmV4eAoKICBXcml0dGVuIE1hcmsgSGVzc2xpbmcKICBodHRwOi8vcmV4eGN1cmwuc291cmNlZm9yZ2UubmV0LwoKUlBHCgogIFN1cHBvcnQgZm9yIElMRS9SUEcgb24gT1MvNDAwIGlzIGluY2x1ZGVkIGluIHNvdXJjZSBkaXN0cmlidXRpb24KICBodHRwOi8vY3VybC5oYXh4LnNlL2xpYmN1cmwvCiAgU2VlIHBhY2thZ2VzL09TNDAwL1JFQURNRS5PUzQwMCBhbmQgcGFja2FnZXMvT1M0MDAvY3VybC5pbmMuaW4KClJ1YnkKCiAgY3VyYiAtIHdyaXR0ZW4gYnkgUm9zcyBCYW1mb3JkCiAgaHR0cDovL2N1cmIucnVieWZvcmdlLm9yZy8KCiAgcnVieS1jdXJsLW11bHRpIC0gd3JpdHRlbiBieSBLcmlzdGphbiBQZXR1cnNzb24gYW5kIEtlaXRoIFJhcmljawogIGh0dHA6Ly9jdXJsLW11bHRpLnJ1Ynlmb3JnZS5vcmcvCgpTY2hlbWUKCiAgQmlnbG9vIGJpbmRpbmcgYnkgS2lyaWxsIExpc292c2t5CiAgaHR0cDovL2N1cmwuaGF4eC5zZS9saWJjdXJsL3NjaGVtZS8KClMtTGFuZwoKICBTLUxhbmcgYmluZGluZyBieSBKb2huIEUgRGF2aXMKICBodHRwOi8vd3d3LmplZHNvZnQub3JnL3NsYW5nL21vZHVsZXMvY3VybC5odG1sCgpTbWFsbHRhbGsKCiAgU21hbGx0YWxrIGJpbmRpbmcgYnkgRGFuaWwgT3NpcGNodWsKICBodHRwOi8vd3d3LnNxdWVha3NvdXJjZS5jb20vQ3VybFBsdWdpbi8KClNQLUZvcnRoCiAgU1AtRm9ydGggYmluZGluZyBieSB5Z3JlawogIGh0dHA6Ly93d3cuZm9ydGgub3JnLnJ1L35hYy9saWIvbGluL2N1cmwvCgpTUEwKCiAgU1BMIGJpbmRpbmcgYnkgQ2xpZmZvcmQgV29sZgogIGh0dHA6Ly93d3cuY2xpZmZvcmQuYXQvc3BsLwoKVGNsCgogIFRjbGN1cmwgYnkgQW5kculzIEdhcmPtYQogIGh0dHA6Ly9wZXJzb25hbDEuaWRkZW8uZXMvYW5kcmVzZ2FyY2kvdGNsY3VybC9lbmdsaXNoL2RvY3MuaHRtbAoKVmlzdWFsIEJhc2ljCgogIGxpYmN1cmwtdmIgYnkgSmVmZnJleSBQaGlsbGlwcwogIGh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvbGliY3VybC12Yi8KClEKICBUaGUgbGliY3VybCBtb2R1bGUgaXMgcGFydCBvZiB0aGUgZGVmYXVsdCBpbnN0YWxsCiAgaHR0cDovL3EtbGFuZy5zb3VyY2Vmb3JnZS5uZXQvCgp3eFdpZGdldHMKCiAgV3JpdHRlbiBieSBDYXNleSBPJ0Rvbm5lbGwKICBodHRwOi8vd3hjb2RlLnNvdXJjZWZvcmdlLm5ldC9jb21wb25lbnRzL3d4Y3VybC8KClhCTGl0ZQoKICBXcml0dGVuIGJ5IERhdmlkIFN6YWZyYW5za2kKICBodHRwOi8vcGVyc28ud2FuYWRvby5mci94YmxpdGUvbGlicmFyaWVzLmh0bWwK